diff --git a/.golangci.yml b/.golangci.yml index d679ee99..cd3bcde3 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -47,6 +47,7 @@ ], "disabled-checks": [ "hugeParam", + "unnamedResult", ] } }, diff --git a/Makefile b/Makefile index 4492bf96..a1a3d099 100644 --- a/Makefile +++ b/Makefile @@ -1,74 +1,154 @@ all: -copy-exchange-client: +clone-injective-indexer: + git clone https://github.com/InjectiveLabs/injective-indexer.git -b v1.13.117_RC1 --depth 1 --single-branch + +clone-injective-core: + git clone https://github.com/InjectiveLabs/injective-core.git -b testnet --depth 1 --single-branch + +copy-exchange-client: clone-injective-indexer rm -rf exchange/* - mkdir -p exchange/health_rpc - mkdir -p exchange/accounts_rpc - mkdir -p exchange/auction_rpc - mkdir -p exchange/campaign_rpc - mkdir -p exchange/derivative_exchange_rpc - mkdir -p exchange/exchange_rpc - mkdir -p exchange/explorer_rpc - mkdir -p exchange/insurance_rpc - mkdir -p exchange/meta_rpc - mkdir -p exchange/oracle_rpc - mkdir -p exchange/portfolio_rpc - mkdir -p exchange/spot_exchange_rpc - mkdir -p exchange/trading_rpc + mkdir -p exchange/event_provider_api/pb + mkdir -p exchange/health_rpc/pb + mkdir -p exchange/accounts_rpc/pb + mkdir -p exchange/auction_rpc/pb + mkdir -p exchange/campaign_rpc/pb + mkdir -p exchange/derivative_exchange_rpc/pb + mkdir -p exchange/exchange_rpc/pb + mkdir -p exchange/explorer_rpc/pb + mkdir -p exchange/insurance_rpc/pb + mkdir -p exchange/meta_rpc/pb + mkdir -p exchange/oracle_rpc/pb + mkdir -p exchange/portfolio_rpc/pb + mkdir -p exchange/spot_exchange_rpc/pb + mkdir -p exchange/trading_rpc/pb - cp -r ../injective-indexer/api/gen/grpc/health/pb exchange/health_rpc/pb - cp -r ../injective-indexer/api/gen/grpc/injective_accounts_rpc/pb exchange/accounts_rpc/pb - cp -r ../injective-indexer/api/gen/grpc/injective_accounts_rpc/pb exchange/accounts_rpc/pb - cp -r ../injective-indexer/api/gen/grpc/injective_auction_rpc/pb exchange/auction_rpc/pb - cp -r ../injective-indexer/api/gen/grpc/injective_campaign_rpc/pb exchange/campaign_rpc/pb - cp -r ../injective-indexer/api/gen/grpc/injective_derivative_exchange_rpc/pb exchange/derivative_exchange_rpc/pb - cp -r ../injective-indexer/api/gen/grpc/injective_exchange_rpc/pb exchange/exchange_rpc/pb - cp -r ../injective-indexer/api/gen/grpc/injective_explorer_rpc/pb exchange/explorer_rpc/pb - cp -r ../injective-indexer/api/gen/grpc/injective_insurance_rpc/pb exchange/insurance_rpc/pb - cp -r ../injective-indexer/api/gen/grpc/injective_meta_rpc/pb exchange/meta_rpc/pb - cp -r ../injective-indexer/api/gen/grpc/injective_oracle_rpc/pb exchange/oracle_rpc/pb - cp -r ../injective-indexer/api/gen/grpc/injective_portfolio_rpc/pb exchange/portfolio_rpc/pb - cp -r ../injective-indexer/api/gen/grpc/injective_spot_exchange_rpc/pb exchange/spot_exchange_rpc/pb - cp -r ../injective-indexer/api/gen/grpc/injective_trading_rpc/pb exchange/trading_rpc/pb + cp -r injective-indexer/api/gen/grpc/event_provider_api/pb/*.pb.go exchange/event_provider_api/pb + cp -r injective-indexer/api/gen/grpc/health/pb/*.pb.go exchange/health_rpc/pb + cp -r injective-indexer/api/gen/grpc/injective_accounts_rpc/pb/*.pb.go exchange/accounts_rpc/pb + cp -r injective-indexer/api/gen/grpc/injective_auction_rpc/pb/*.pb.go exchange/auction_rpc/pb + cp -r injective-indexer/api/gen/grpc/injective_campaign_rpc/pb/*.pb.go exchange/campaign_rpc/pb + cp -r injective-indexer/api/gen/grpc/injective_derivative_exchange_rpc/pb/*.pb.go exchange/derivative_exchange_rpc/pb + cp -r injective-indexer/api/gen/grpc/injective_exchange_rpc/pb/*.pb.go exchange/exchange_rpc/pb + cp -r injective-indexer/api/gen/grpc/injective_explorer_rpc/pb/*.pb.go exchange/explorer_rpc/pb + cp -r injective-indexer/api/gen/grpc/injective_insurance_rpc/pb/*.pb.go exchange/insurance_rpc/pb + cp -r injective-indexer/api/gen/grpc/injective_meta_rpc/pb/*.pb.go exchange/meta_rpc/pb + cp -r injective-indexer/api/gen/grpc/injective_oracle_rpc/pb/*.pb.go exchange/oracle_rpc/pb + cp -r injective-indexer/api/gen/grpc/injective_portfolio_rpc/pb/*.pb.go exchange/portfolio_rpc/pb + cp -r injective-indexer/api/gen/grpc/injective_spot_exchange_rpc/pb/*.pb.go exchange/spot_exchange_rpc/pb + cp -r injective-indexer/api/gen/grpc/injective_trading_rpc/pb/*.pb.go exchange/trading_rpc/pb -.PHONY: copy-exchange-client tests coverage + rm -rf injective-indexer -copy-chain-types: - cp ../injective-core/injective-chain/crypto/ethsecp256k1/*.go chain/crypto/ethsecp256k1 +copy-chain-types: clone-injective-core + cp -r injective-core/injective-chain/codec chain + mkdir -p chain/crypto/codec && cp injective-core/injective-chain/crypto/codec/*.go chain/crypto/codec + rm -rf chain/crypto/codec/*test.go rm -rf chain/crypto/codec/*gw.go + mkdir -p chain/crypto/ethsecp256k1 && cp injective-core/injective-chain/crypto/ethsecp256k1/*.go chain/crypto/ethsecp256k1 rm -rf chain/crypto/ethsecp256k1/*test.go rm -rf chain/crypto/ethsecp256k1/*gw.go - cp ../injective-core/injective-chain/codec/types/*.go chain/codec/types - rm -rf chain/codec/types/*test.go rm -rf chain/codec/types/*gw.go - cp ../injective-core/injective-chain/modules/auction/types/*.go chain/auction/types - rm -rf chain/auction/types/*test.go rm -rf chain/auction/types/*gw.go - cp ../injective-core/injective-chain/modules/exchange/types/*.go chain/exchange/types - rm -rf chain/exchange/types/*test.go rm -rf chain/exchange/types/*gw.go - cp ../injective-core/injective-chain/modules/insurance/types/*.go chain/insurance/types - rm -rf chain/insurance/types/*test.go rm -rf chain/insurance/types/*gw.go - cp ../injective-core/injective-chain/modules/ocr/types/*.go chain/ocr/types - rm -rf chain/ocr/types/*test.go rm -rf chain/ocr/types/*gw.go - cp ../injective-core/injective-chain/modules/oracle/types/*.go chain/oracle/types - cp -r ../injective-core/injective-chain/modules/oracle/bandchain chain/oracle - rm -rf chain/oracle/types/*test.go rm -rf chain/oracle/types/*gw.go - cp ../injective-core/injective-chain/modules/peggy/types/*.go chain/peggy/types - rm -rf chain/peggy/types/*test.go rm -rf chain/peggy/types/*gw.go - cp ../injective-core/injective-chain/modules/permissions/types/*.go chain/permissions/types - rm -rf chain/permissions/types/*test.go rm -rf chain/permissions/types/*gw.go - cp ../injective-core/injective-chain/modules/tokenfactory/types/*.go chain/tokenfactory/types - rm -rf chain/tokenfactory/types/*test.go rm -rf chain/tokenfactory/types/*gw.go - cp ../injective-core/injective-chain/modules/wasmx/types/*.go chain/wasmx/types - rm -rf chain/wasmx/types/*test.go rm -rf chain/wasmx/types/*gw.go - cp ../injective-core/injective-chain/stream/types/*.go chain/stream/types - rm -rf chain/stream/types/*test.go rm -rf chain/stream/types/*gw.go - cp ../injective-core/injective-chain/types/*.go chain/types - rm -rf chain/types/*test.go rm -rf chain/types/*gw.go + mkdir -p chain/crypto/hd && cp injective-core/injective-chain/crypto/hd/*.go chain/crypto/hd + rm -rf chain/crypto/hd/*test.go rm -rf chain/crypto/hd/*gw.go + mkdir -p chain/auction/types && \ + cp injective-core/injective-chain/modules/auction/types/*.pb.go chain/auction/types && \ + cp injective-core/injective-chain/modules/auction/types/codec.go chain/auction/types + mkdir -p chain/exchange/types && \ + cp injective-core/injective-chain/modules/exchange/types/*.go chain/exchange/types && \ + rm -rf chain/exchange/types/*test.go && rm -rf chain/exchange/types/*gw.go + mkdir -p chain/insurance/types && \ + cp injective-core/injective-chain/modules/insurance/types/*.pb.go chain/insurance/types && \ + cp injective-core/injective-chain/modules/insurance/types/codec.go chain/insurance/types + mkdir -p chain/ocr/types && \ + cp injective-core/injective-chain/modules/ocr/types/*.pb.go chain/ocr/types && \ + cp injective-core/injective-chain/modules/ocr/types/errors.go chain/ocr/types && \ + cp injective-core/injective-chain/modules/ocr/types/key.go chain/ocr/types && \ + cp injective-core/injective-chain/modules/ocr/types/params.go chain/ocr/types && \ + cp injective-core/injective-chain/modules/ocr/types/proposal.go chain/ocr/types && \ + cp injective-core/injective-chain/modules/ocr/types/types.go chain/ocr/types && \ + cp injective-core/injective-chain/modules/ocr/types/codec.go chain/ocr/types + mkdir -p chain/oracle/types && \ + cp injective-core/injective-chain/modules/oracle/types/*.pb.go chain/oracle/types && \ + cp injective-core/injective-chain/modules/oracle/types/codec.go chain/oracle/types && \ + cp injective-core/injective-chain/modules/oracle/types/errors.go chain/oracle/types && \ + cp injective-core/injective-chain/modules/oracle/types/msgs.go chain/oracle/types && \ + cp injective-core/injective-chain/modules/oracle/types/oracle.go chain/oracle/types && \ + cp injective-core/injective-chain/modules/oracle/types/params.go chain/oracle/types && \ + cp injective-core/injective-chain/modules/oracle/types/proposal.go chain/oracle/types && \ + cp injective-core/injective-chain/modules/oracle/types/stork_oracle.go chain/oracle/types && \ + cp -r injective-core/injective-chain/modules/oracle/bandchain chain/oracle + mkdir -p chain/peggy/types && \ + cp injective-core/injective-chain/modules/peggy/types/*.pb.go chain/peggy/types && \ + cp injective-core/injective-chain/modules/peggy/types/abi_json.go chain/peggy/types && \ + cp injective-core/injective-chain/modules/peggy/types/codec.go chain/peggy/types && \ + cp injective-core/injective-chain/modules/peggy/types/ethereum.go chain/peggy/types && \ + cp injective-core/injective-chain/modules/peggy/types/ethereum_signer.go chain/peggy/types && \ + cp injective-core/injective-chain/modules/peggy/types/errors.go chain/peggy/types && \ + cp injective-core/injective-chain/modules/peggy/types/key.go chain/peggy/types && \ + cp injective-core/injective-chain/modules/peggy/types/msgs.go chain/peggy/types && \ + cp injective-core/injective-chain/modules/peggy/types/params.go chain/peggy/types && \ + cp injective-core/injective-chain/modules/peggy/types/types.go chain/peggy/types + mkdir -p chain/permissions/types && \ + cp injective-core/injective-chain/modules/permissions/types/*.pb.go chain/permissions/types && \ + cp injective-core/injective-chain/modules/permissions/types/codec.go chain/permissions/types + mkdir -p chain/tokenfactory/types && \ + cp injective-core/injective-chain/modules/tokenfactory/types/*.pb.go chain/tokenfactory/types && \ + cp injective-core/injective-chain/modules/tokenfactory/types/codec.go chain/tokenfactory/types + mkdir -p chain/wasmx/types && \ + cp injective-core/injective-chain/modules/wasmx/types/*.pb.go chain/wasmx/types && \ + cp injective-core/injective-chain/modules/wasmx/types/authz.go chain/wasmx/types && \ + cp injective-core/injective-chain/modules/wasmx/types/codec.go chain/wasmx/types && \ + cp injective-core/injective-chain/modules/wasmx/types/custom_execution.go chain/wasmx/types && \ + cp injective-core/injective-chain/modules/wasmx/types/errors.go chain/wasmx/types && \ + cp injective-core/injective-chain/modules/wasmx/types/key.go chain/wasmx/types && \ + cp injective-core/injective-chain/modules/wasmx/types/msgs.go chain/wasmx/types && \ + cp injective-core/injective-chain/modules/wasmx/types/params.go chain/wasmx/types && \ + cp injective-core/injective-chain/modules/wasmx/types/proposal.go chain/wasmx/types + mkdir -p chain/stream/types && \ + cp injective-core/injective-chain/stream/types/*.pb.go chain/stream/types + mkdir -p chain/types && \ + cp injective-core/injective-chain/types/*.pb.go injective-core/injective-chain/types/config.go chain/types && \ + cp injective-core/injective-chain/types/codec.go chain/types && \ + cp injective-core/injective-chain/types/util.go chain/types + + @find ./chain -type f -name "*.go" -exec sed -i "" -e "s|github.com/InjectiveLabs/injective-core/injective-chain/modules|github.com/InjectiveLabs/sdk-go/chain|g" {} \; + @find ./chain -type f -name "*.go" -exec sed -i "" -e "s|github.com/InjectiveLabs/injective-core/injective-chain|github.com/InjectiveLabs/sdk-go/chain|g" {} \; - @echo "👉 Replace injective-core/injective-chain/modules with sdk-go/chain" - @echo "👉 Replace injective-core/injective-chain/codec with sdk-go/chain/codec" - @echo "👉 Replace injective-core/injective-chain/codec/types with sdk-go/chain/codec/types" - @echo "👉 Replace injective-core/injective-chain/types with sdk-go/chain/types" - @echo "👉 Replace injective-core/injective-chain/crypto with sdk-go/chain/crypto" + rm -rf proto + cp -r injective-core/proto ./ + + rm -rf injective-core + +#gen: gen-proto +# +#gen-proto: clone-all copy-proto +# buf generate --template buf.gen.chain.yaml +# buf generate --template buf.gen.indexer.yaml +# rm -rf local_proto +# $(call clean_repos) +# +#define clean_repos +# rm -Rf injective-indexer +#endef +# +#clean-all: +# $(call clean_repos) +# +#clone-injective-indexer: +# git clone https://github.com/InjectiveLabs/injective-indexer.git -b v1.13.4 --depth 1 --single-branch +# +#clone-all: clone-injective-indexer +# +#copy-proto: +# rm -rf local_proto +# mkdir -p local_proto +# find ./injective-indexer/api/gen/grpc -type f -name "*.proto" | while read -r file; do \ +# dest="local_proto/$$(basename $$(dirname $$(dirname "$$file")))/$$(basename $$(dirname "$$file"))"; \ +# mkdir -p "$$dest"; \ +# cp "$$file" "$$dest"; \ +# done tests: go test -race ./client/... ./ethereum/... coverage: go test -race -coverprofile=coverage.out -covermode=atomic ./client/... ./ethereum/... + +.PHONY: copy-exchange-client tests coverage diff --git a/buf.gen.chain.yaml b/buf.gen.chain.yaml new file mode 100644 index 00000000..6f848993 --- /dev/null +++ b/buf.gen.chain.yaml @@ -0,0 +1,20 @@ +version: v2 +managed: + enabled: true + disable: + - module: buf.build/googleapis/googleapis + file_option: go_package_prefix +plugins: + - local: protoc-gen-go-grpc + out: ./chain/ + opt: paths=source_relative + - local: protoc-gen-gogo + out: ./chain/ + opt: paths=source_relative +inputs: +# - git_repo: https://github.com/InjectiveLabs/injective-core +# tag: v1.13.0 +# subdir: proto + - git_repo: https://github.com/InjectiveLabs/injective-core + branch: f/permissions-rework + subdir: proto diff --git a/buf.gen.indexer.yaml b/buf.gen.indexer.yaml new file mode 100644 index 00000000..81c925e6 --- /dev/null +++ b/buf.gen.indexer.yaml @@ -0,0 +1,21 @@ +version: v2 +managed: + enabled: true + disable: + - module: buf.build/googleapis/googleapis + file_option: go_package_prefix +plugins: + - remote: buf.build/protocolbuffers/go:v1.34.0 + out: ./exchange/ + opt: paths=source_relative + - remote: buf.build/grpc/go:v1.3.0 + out: ./exchange/ + opt: paths=source_relative +# - local: protoc-gen-go +# out: ./exchange/ +# opt: paths=source_relative +# - local: protoc-gen-go-grpc +# out: ./exchange/ +# opt: paths=source_relative +inputs: + - directory: local_proto diff --git a/chain/auction/types/auction.pb.go b/chain/auction/types/auction.pb.go index 164a7820..25703a53 100644 --- a/chain/auction/types/auction.pb.go +++ b/chain/auction/types/auction.pb.go @@ -32,6 +32,9 @@ type Params struct { AuctionPeriod int64 `protobuf:"varint,1,opt,name=auction_period,json=auctionPeriod,proto3" json:"auction_period,omitempty"` // min_next_bid_increment_rate defines the minimum increment rate for new bids MinNextBidIncrementRate cosmossdk_io_math.LegacyDec `protobuf:"bytes,2,opt,name=min_next_bid_increment_rate,json=minNextBidIncrementRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_next_bid_increment_rate"` + // inj_basket_max_cap defines the maximum cap for INJ contained in an auction + // basket + InjBasketMaxCap cosmossdk_io_math.Int `protobuf:"bytes,3,opt,name=inj_basket_max_cap,json=injBasketMaxCap,proto3,customtype=cosmossdk.io/math.Int" json:"inj_basket_max_cap"` } func (m *Params) Reset() { *m = Params{} } @@ -365,43 +368,45 @@ func init() { } var fileDescriptor_49edfee5f1ef4b5a = []byte{ - // 567 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x94, 0xbf, 0x6f, 0xd3, 0x40, - 0x14, 0xc7, 0x73, 0x18, 0x22, 0x7a, 0xa8, 0x40, 0xad, 0x8a, 0xa6, 0xad, 0x64, 0x47, 0x46, 0xa8, - 0x01, 0xa9, 0x3e, 0x4a, 0xb7, 0x6e, 0x18, 0x10, 0xaa, 0x14, 0x50, 0x65, 0x98, 0x58, 0xac, 0xb3, - 0xfd, 0xe4, 0x5c, 0x93, 0xbb, 0x8b, 0x7c, 0xe7, 0xa4, 0x19, 0x11, 0x5b, 0x59, 0xf8, 0x13, 0x98, - 0x61, 0xe1, 0x4f, 0x60, 0xec, 0xd8, 0x11, 0x31, 0x04, 0x94, 0x0c, 0x20, 0x46, 0xfe, 0x02, 0x14, - 0xff, 0x88, 0xbc, 0x20, 0x31, 0x74, 0x60, 0x49, 0xfc, 0xbe, 0xf7, 0xee, 0xfb, 0x3e, 0xef, 0x49, - 0xf7, 0xf0, 0x0e, 0x13, 0xc7, 0x10, 0x69, 0x36, 0x02, 0x42, 0xb3, 0x48, 0x33, 0x29, 0xc8, 0x68, - 0x2f, 0x04, 0x4d, 0xf7, 0xaa, 0xd8, 0x1d, 0xa6, 0x52, 0x4b, 0x73, 0x73, 0x99, 0xe8, 0x56, 0x07, - 0x65, 0xe2, 0xd6, 0x7a, 0x22, 0x13, 0x99, 0x67, 0x91, 0xc5, 0x57, 0x71, 0x61, 0xcb, 0x8a, 0xa4, - 0xe2, 0x52, 0x91, 0x90, 0x2a, 0x58, 0x7a, 0x46, 0x92, 0x95, 0x86, 0x5b, 0x6b, 0x94, 0x33, 0x21, - 0x49, 0xfe, 0x5b, 0x48, 0xce, 0x47, 0x84, 0x9b, 0x47, 0x34, 0xa5, 0x5c, 0x99, 0x77, 0xf0, 0xf5, - 0xb2, 0x4c, 0x30, 0x84, 0x94, 0xc9, 0xb8, 0x85, 0xda, 0xa8, 0x63, 0xf8, 0xab, 0xa5, 0x7a, 0x94, - 0x8b, 0x26, 0xc5, 0xdb, 0x9c, 0x89, 0x40, 0xc0, 0x89, 0x0e, 0x42, 0x16, 0x07, 0x4c, 0x44, 0x29, - 0x70, 0x10, 0x3a, 0x48, 0xa9, 0x86, 0xd6, 0xa5, 0x36, 0xea, 0xac, 0x78, 0xb7, 0xcf, 0xa6, 0x76, - 0xe3, 0xeb, 0xd4, 0xde, 0x2e, 0x88, 0x54, 0xdc, 0x77, 0x99, 0x24, 0x9c, 0xea, 0x9e, 0xdb, 0x85, - 0x84, 0x46, 0x93, 0xc7, 0x10, 0xf9, 0x1b, 0x9c, 0x89, 0xe7, 0x70, 0xa2, 0x3d, 0x16, 0x1f, 0x56, - 0x26, 0x3e, 0xd5, 0x70, 0xb0, 0xf1, 0xf3, 0xbd, 0x8d, 0x4e, 0x7f, 0x7c, 0xba, 0x57, 0x01, 0x91, - 0x02, 0xd1, 0x79, 0x83, 0xb0, 0xe1, 0xb1, 0xd8, 0xdc, 0xc7, 0xcd, 0x90, 0xc5, 0x31, 0xa4, 0x39, - 0xe2, 0x8a, 0xb7, 0xfd, 0x6b, 0x6a, 0x97, 0xca, 0xef, 0xa9, 0xbd, 0x3a, 0xa1, 0x7c, 0x70, 0xe0, - 0x14, 0xb1, 0xe3, 0x97, 0x07, 0xe6, 0x53, 0xdc, 0xa4, 0x5c, 0x66, 0x42, 0x97, 0x8c, 0xa4, 0x64, - 0xdc, 0x49, 0x98, 0xee, 0x65, 0xa1, 0x1b, 0x49, 0x4e, 0xca, 0x01, 0x16, 0x7f, 0xbb, 0x2a, 0xee, - 0x13, 0x3d, 0x19, 0x82, 0x72, 0x1f, 0x49, 0x26, 0xfc, 0xf2, 0xba, 0x73, 0x8a, 0xf0, 0x5a, 0x97, - 0x2a, 0xfd, 0xb0, 0x80, 0xf3, 0x41, 0x65, 0x03, 0x6d, 0xde, 0xc2, 0xcd, 0x31, 0x13, 0xa2, 0x62, - 0xf2, 0xcb, 0xe8, 0xc2, 0xca, 0x9a, 0xeb, 0xf8, 0x4a, 0x2a, 0x33, 0x11, 0xb7, 0x8c, 0x36, 0xea, - 0x5c, 0xf6, 0x8b, 0xc0, 0x79, 0x8d, 0xf0, 0xd5, 0x27, 0x23, 0x10, 0x8b, 0x29, 0x2e, 0x18, 0xea, - 0x73, 0xb9, 0xf0, 0xd6, 0xff, 0xc2, 0xf0, 0x16, 0x61, 0x33, 0x67, 0xf8, 0x2f, 0x26, 0xf2, 0x19, - 0xe1, 0xb5, 0x3a, 0xcd, 0x0b, 0x4d, 0xd3, 0x5a, 0x2e, 0xaa, 0xe5, 0x9a, 0x77, 0xf1, 0x4d, 0x10, - 0x31, 0x13, 0x49, 0xa0, 0x19, 0x07, 0xa5, 0x29, 0x1f, 0xe6, 0x50, 0x86, 0x7f, 0xa3, 0xd0, 0x5f, - 0x56, 0xb2, 0x79, 0x8c, 0xb1, 0x80, 0x71, 0x10, 0x52, 0xd5, 0x07, 0xdd, 0x32, 0xda, 0x46, 0xe7, - 0xda, 0x83, 0x4d, 0xb7, 0x00, 0x74, 0x17, 0x2f, 0xae, 0x7a, 0x9c, 0x39, 0xa3, 0x77, 0x7f, 0xd1, - 0xd4, 0x87, 0x6f, 0x76, 0xe7, 0x1f, 0x9b, 0x52, 0xfe, 0x8a, 0x80, 0xb1, 0x97, 0xbb, 0x7b, 0xc9, - 0xd9, 0xcc, 0x42, 0xe7, 0x33, 0x0b, 0x7d, 0x9f, 0x59, 0xe8, 0xdd, 0xdc, 0x6a, 0x9c, 0xcf, 0xad, - 0xc6, 0x97, 0xb9, 0xd5, 0x78, 0xf5, 0xac, 0x66, 0x77, 0x58, 0xad, 0x87, 0x2e, 0x0d, 0x15, 0x59, - 0x2e, 0x8b, 0xdd, 0x48, 0xa6, 0x50, 0x0f, 0x7b, 0x94, 0x09, 0xc2, 0x65, 0x9c, 0x0d, 0x40, 0x2d, - 0x57, 0x4e, 0x5e, 0x39, 0x6c, 0xe6, 0x5b, 0x60, 0xff, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x65, - 0x8c, 0x47, 0xe7, 0x94, 0x04, 0x00, 0x00, + // 607 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x54, 0xb1, 0x4f, 0x14, 0x4f, + 0x14, 0xbe, 0xf9, 0xdd, 0xcf, 0x8b, 0x8c, 0x41, 0x64, 0x82, 0x72, 0x40, 0xdc, 0x23, 0x67, 0x0c, + 0x68, 0xc2, 0x8e, 0x48, 0x47, 0xe7, 0xa2, 0x05, 0x06, 0x0c, 0x59, 0xad, 0x6c, 0x36, 0xb3, 0xbb, + 0x2f, 0xc7, 0x1c, 0xcc, 0xcc, 0x66, 0x67, 0x16, 0x8e, 0x7f, 0xc1, 0xca, 0x3f, 0xc0, 0x18, 0x1b, + 0x2d, 0xac, 0xfc, 0x13, 0x2c, 0x29, 0x29, 0x8d, 0xc5, 0x69, 0xa0, 0xd0, 0x58, 0xda, 0xd8, 0x9a, + 0x9b, 0x9d, 0xbd, 0x6c, 0x62, 0x34, 0x56, 0xc4, 0xe6, 0x6e, 0xdf, 0x37, 0xef, 0x7d, 0xf3, 0x7d, + 0xef, 0x65, 0x1e, 0x5e, 0xe2, 0xb2, 0x0f, 0x89, 0xe1, 0x07, 0x40, 0x59, 0x91, 0x18, 0xae, 0x24, + 0x3d, 0x58, 0x8d, 0xc1, 0xb0, 0xd5, 0x2a, 0xf6, 0xb3, 0x5c, 0x19, 0x45, 0xe6, 0xc6, 0x89, 0x7e, + 0x75, 0xe0, 0x12, 0xe7, 0x67, 0x7a, 0xaa, 0xa7, 0x6c, 0x16, 0x1d, 0x7d, 0x95, 0x05, 0xf3, 0x5e, + 0xa2, 0xb4, 0x50, 0x9a, 0xc6, 0x4c, 0xc3, 0x98, 0x33, 0x51, 0xdc, 0x11, 0xce, 0x4f, 0x33, 0xc1, + 0xa5, 0xa2, 0xf6, 0xb7, 0x84, 0xba, 0x3f, 0x10, 0x6e, 0xed, 0xb0, 0x9c, 0x09, 0x4d, 0x6e, 0xe2, + 0xcb, 0xee, 0x9a, 0x28, 0x83, 0x9c, 0xab, 0xb4, 0x8d, 0x16, 0xd1, 0x72, 0x33, 0x9c, 0x74, 0xe8, + 0x8e, 0x05, 0x09, 0xc3, 0x0b, 0x82, 0xcb, 0x48, 0xc2, 0xc0, 0x44, 0x31, 0x4f, 0x23, 0x2e, 0x93, + 0x1c, 0x04, 0x48, 0x13, 0xe5, 0xcc, 0x40, 0xfb, 0xbf, 0x45, 0xb4, 0x3c, 0x11, 0xdc, 0x38, 0x1e, + 0x76, 0x1a, 0x1f, 0x87, 0x9d, 0x85, 0x52, 0x91, 0x4e, 0xf7, 0x7c, 0xae, 0xa8, 0x60, 0x66, 0xd7, + 0xdf, 0x82, 0x1e, 0x4b, 0x8e, 0xee, 0x43, 0x12, 0xce, 0x0a, 0x2e, 0x1f, 0xc1, 0xc0, 0x04, 0x3c, + 0xdd, 0xac, 0x48, 0x42, 0x66, 0x80, 0x3c, 0xc4, 0x84, 0xcb, 0x7e, 0x14, 0x33, 0xbd, 0x07, 0x26, + 0x12, 0x6c, 0x10, 0x25, 0x2c, 0x6b, 0x37, 0x2d, 0xf3, 0x75, 0xc7, 0x7c, 0xf5, 0x57, 0xe6, 0x4d, + 0x69, 0xc2, 0x29, 0x2e, 0xfb, 0x81, 0xad, 0xdb, 0x66, 0x83, 0x0d, 0x96, 0xad, 0xcf, 0x7e, 0x7d, + 0xd5, 0x41, 0xcf, 0xbe, 0xbc, 0xbb, 0x5d, 0x99, 0xa3, 0xa5, 0xdd, 0xee, 0x4b, 0x84, 0x9b, 0x01, + 0x4f, 0xc9, 0x1a, 0x6e, 0xc5, 0x3c, 0x4d, 0x21, 0xb7, 0x76, 0x27, 0x82, 0x85, 0x6f, 0xc3, 0x8e, + 0x43, 0xbe, 0x0f, 0x3b, 0x93, 0x47, 0x4c, 0xec, 0xaf, 0x77, 0xcb, 0xb8, 0x1b, 0xba, 0x03, 0x12, + 0xe3, 0x16, 0x13, 0xaa, 0x90, 0xc6, 0xfa, 0xbd, 0x74, 0x77, 0xce, 0x2f, 0xe5, 0xf8, 0xa3, 0xd6, + 0x57, 0x53, 0xf2, 0x37, 0x14, 0x97, 0x01, 0x75, 0x82, 0x97, 0x7a, 0xdc, 0xec, 0x16, 0xb1, 0x9f, + 0x28, 0x41, 0xdd, 0x9c, 0xca, 0xbf, 0x15, 0x9d, 0xee, 0x51, 0x73, 0x94, 0x81, 0xb6, 0x05, 0xa1, + 0x63, 0xee, 0xbe, 0x46, 0x78, 0x7a, 0x8b, 0x69, 0x73, 0xaf, 0xd4, 0x1d, 0x82, 0x2e, 0xf6, 0x0d, + 0xb9, 0x86, 0x5b, 0x87, 0x5c, 0xca, 0x4a, 0x6e, 0xe8, 0xa2, 0xf3, 0x50, 0x44, 0x66, 0xf0, 0x85, + 0x5c, 0x15, 0x32, 0xb5, 0xa3, 0xf8, 0x3f, 0x2c, 0x83, 0xee, 0x0b, 0x84, 0x2f, 0x3e, 0x38, 0x00, + 0x39, 0x9a, 0xe3, 0x48, 0x5e, 0xbd, 0x9b, 0xe7, 0xd9, 0xb0, 0xdf, 0xc8, 0x7b, 0x83, 0x30, 0xb1, + 0xf2, 0xfe, 0xf5, 0x3e, 0xbe, 0x47, 0x78, 0xba, 0x2e, 0xf4, 0xb1, 0x61, 0x79, 0x2d, 0x17, 0xd5, + 0x72, 0xc9, 0x2d, 0x7c, 0x05, 0x64, 0xca, 0x65, 0x2f, 0x32, 0x5c, 0x80, 0x36, 0x4c, 0x64, 0x56, + 0x6f, 0x33, 0x9c, 0x2a, 0xf1, 0x27, 0x15, 0x4c, 0xfa, 0x18, 0x4b, 0x38, 0x74, 0x8f, 0xa9, 0xdd, + 0x5c, 0x6c, 0xfe, 0xd9, 0xd4, 0x9d, 0x91, 0xa9, 0xb7, 0x9f, 0x3a, 0xcb, 0x7f, 0x69, 0x4a, 0x87, + 0x13, 0x12, 0x0e, 0xcb, 0x27, 0x17, 0xf4, 0x8e, 0x4f, 0x3d, 0x74, 0x72, 0xea, 0xa1, 0xcf, 0xa7, + 0x1e, 0x7a, 0x7e, 0xe6, 0x35, 0x4e, 0xce, 0xbc, 0xc6, 0x87, 0x33, 0xaf, 0xf1, 0x74, 0xbb, 0x46, + 0xb7, 0x59, 0xad, 0xb5, 0x2d, 0x16, 0x6b, 0x3a, 0x5e, 0x72, 0x2b, 0x89, 0xca, 0xa1, 0x1e, 0xee, + 0x32, 0x2e, 0xa9, 0x50, 0x69, 0xb1, 0x0f, 0x7a, 0xbc, 0x2a, 0xed, 0xcd, 0x71, 0xcb, 0x6e, 0xaf, + 0xb5, 0x9f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x60, 0x2e, 0x41, 0x2d, 0x4c, 0x05, 0x00, 0x00, } func (this *Params) Equal(that interface{}) bool { @@ -429,6 +434,9 @@ func (this *Params) Equal(that interface{}) bool { if !this.MinNextBidIncrementRate.Equal(that1.MinNextBidIncrementRate) { return false } + if !this.InjBasketMaxCap.Equal(that1.InjBasketMaxCap) { + return false + } return true } func (m *Params) Marshal() (dAtA []byte, err error) { @@ -451,6 +459,16 @@ func (m *Params) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + { + size := m.InjBasketMaxCap.Size() + i -= size + if _, err := m.InjBasketMaxCap.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintAuction(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a { size := m.MinNextBidIncrementRate.Size() i -= size @@ -713,6 +731,8 @@ func (m *Params) Size() (n int) { } l = m.MinNextBidIncrementRate.Size() n += 1 + l + sovAuction(uint64(l)) + l = m.InjBasketMaxCap.Size() + n += 1 + l + sovAuction(uint64(l)) return n } @@ -894,6 +914,40 @@ func (m *Params) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field InjBasketMaxCap", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAuction + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthAuction + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthAuction + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.InjBasketMaxCap.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipAuction(dAtA[iNdEx:]) @@ -980,7 +1034,7 @@ func (m *Bid) Unmarshal(dAtA []byte) error { if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowAuction @@ -990,16 +1044,15 @@ func (m *Bid) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthAuction } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthAuction } @@ -1096,7 +1149,7 @@ func (m *LastAuctionResult) Unmarshal(dAtA []byte) error { if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowAuction @@ -1106,16 +1159,15 @@ func (m *LastAuctionResult) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthAuction } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthAuction } @@ -1231,7 +1283,7 @@ func (m *EventBid) Unmarshal(dAtA []byte) error { if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowAuction @@ -1241,16 +1293,15 @@ func (m *EventBid) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthAuction } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthAuction } @@ -1366,7 +1417,7 @@ func (m *EventAuctionResult) Unmarshal(dAtA []byte) error { if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowAuction @@ -1376,16 +1427,15 @@ func (m *EventAuctionResult) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthAuction } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthAuction } diff --git a/chain/auction/types/errors.go b/chain/auction/types/errors.go deleted file mode 100644 index c8e7ba2e..00000000 --- a/chain/auction/types/errors.go +++ /dev/null @@ -1,8 +0,0 @@ -package types - -import "cosmossdk.io/errors" - -var ( - ErrBidInvalid = errors.Register(ModuleName, 1, "invalid bid denom") - ErrBidRound = errors.Register(ModuleName, 2, "invalid bid round") -) diff --git a/chain/auction/types/events.go b/chain/auction/types/events.go deleted file mode 100644 index 2789dc3c..00000000 --- a/chain/auction/types/events.go +++ /dev/null @@ -1,6 +0,0 @@ -package types - -// Auction module event types -const ( - EventTypeNewBid = "new_bid" -) diff --git a/chain/auction/types/expected_keepers.go b/chain/auction/types/expected_keepers.go deleted file mode 100644 index e9b959b5..00000000 --- a/chain/auction/types/expected_keepers.go +++ /dev/null @@ -1,16 +0,0 @@ -package types - -import ( - "context" - - sdk "github.com/cosmos/cosmos-sdk/types" -) - -// BankKeeper defines the expected bank keeper methods -type BankKeeper interface { - GetAllBalances(ctx context.Context, addr sdk.AccAddress) sdk.Coins - SendCoinsFromModuleToModule(ctx context.Context, senderModule, recipientModule string, amt sdk.Coins) error - SendCoinsFromModuleToAccount(ctx context.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error - SendCoinsFromAccountToModule(ctx context.Context, senderAddr sdk.AccAddress, recipientModule string, amt sdk.Coins) error - BurnCoins(ctx context.Context, moduleName string, amt sdk.Coins) error -} diff --git a/chain/auction/types/genesis.go b/chain/auction/types/genesis.go deleted file mode 100644 index 4e5fbf60..00000000 --- a/chain/auction/types/genesis.go +++ /dev/null @@ -1,21 +0,0 @@ -package types - -func NewGenesisState() GenesisState { - return GenesisState{} -} - -func (gs GenesisState) Validate() error { - if err := gs.Params.Validate(); err != nil { - return err - } - return nil -} - -func DefaultGenesisState() *GenesisState { - return &GenesisState{ - Params: DefaultParams(), - AuctionRound: 0, - HighestBid: nil, - AuctionEndingTimestamp: 0, - } -} diff --git a/chain/auction/types/key.go b/chain/auction/types/key.go deleted file mode 100644 index 0b151360..00000000 --- a/chain/auction/types/key.go +++ /dev/null @@ -1,16 +0,0 @@ -package types - -const ( - ModuleName = "auction" - StoreKey = ModuleName - TStoreKey = "transient_auction" -) - -var ( - // Keys for store prefixes - BidsKey = []byte{0x01} - AuctionRoundKey = []byte{0x03} - KeyEndingTimeStamp = []byte{0x04} - KeyLastAuctionResult = []byte{0x05} - ParamsKey = []byte{0x10} -) diff --git a/chain/auction/types/msgs.go b/chain/auction/types/msgs.go deleted file mode 100644 index 987533e0..00000000 --- a/chain/auction/types/msgs.go +++ /dev/null @@ -1,95 +0,0 @@ -package types - -import ( - "cosmossdk.io/errors" - sdk "github.com/cosmos/cosmos-sdk/types" - sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" - - chaintypes "github.com/InjectiveLabs/sdk-go/chain/types" -) - -const ( - RouterKey = ModuleName - - TypeMsgBid = "bid" - TypeMsgUpdateParams = "updateParams" -) - -var ( - _ sdk.Msg = &MsgBid{} - _ sdk.Msg = &MsgUpdateParams{} -) - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgUpdateParams) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgUpdateParams) Type() string { return TypeMsgUpdateParams } - -// ValidateBasic implements the sdk.Msg interface. It runs stateless checks on the message -func (msg MsgUpdateParams) ValidateBasic() error { - if _, err := sdk.AccAddressFromBech32(msg.Authority); err != nil { - return errors.Wrap(err, "invalid authority address") - } - - if err := msg.Params.Validate(); err != nil { - return err - } - - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgUpdateParams) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgUpdateParams) GetSigners() []sdk.AccAddress { - sender, err := sdk.AccAddressFromBech32(msg.Authority) - if err != nil { - panic(err) - } - return []sdk.AccAddress{sender} -} - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgBid) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgBid) Type() string { return TypeMsgBid } - -// ValidateBasic implements the sdk.Msg interface. It runs stateless checks on the message -func (msg MsgBid) ValidateBasic() error { - if msg.Sender == "" { - return errors.Wrap(sdkerrors.ErrInvalidAddress, msg.Sender) - } - - if !msg.BidAmount.IsValid() { - return errors.Wrap(sdkerrors.ErrInvalidCoins, msg.BidAmount.String()) - } - - if !msg.BidAmount.IsPositive() { - return errors.Wrap(sdkerrors.ErrInvalidCoins, msg.BidAmount.String()) - } - - if msg.BidAmount.Denom != chaintypes.InjectiveCoin { - return errors.Wrap(ErrBidInvalid, msg.BidAmount.Denom) - } - - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgBid) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgBid) GetSigners() []sdk.AccAddress { - sender, err := sdk.AccAddressFromBech32(msg.Sender) - if err != nil { - panic(err) - } - return []sdk.AccAddress{sender} -} diff --git a/chain/auction/types/params.go b/chain/auction/types/params.go deleted file mode 100644 index fe3f865b..00000000 --- a/chain/auction/types/params.go +++ /dev/null @@ -1,103 +0,0 @@ -package types - -import ( - "fmt" - - "cosmossdk.io/math" - paramtypes "github.com/cosmos/cosmos-sdk/x/params/types" -) - -var _ paramtypes.ParamSet = &Params{} - -// Auction params default values -var ( - // DefaultAuctionPeriod represents the number of seconds in 1 week - DefaultAuctionPeriod int64 = 60 * 60 * 24 * 7 - // DefaultMinNextBidIncrementRate represents default min increment rate 0.25% - DefaultMinNextBidIncrementRate = math.LegacyNewDecWithPrec(25, 4) -) - -// Parameter keys -var ( - KeyAuctionPeriod = []byte("AuctionPeriod") - KeyMinNextBidIncrementRate = []byte("MinNextBidIncrementRate") -) - -// ParamKeyTable returns the parameter key table. -func ParamKeyTable() paramtypes.KeyTable { - return paramtypes.NewKeyTable().RegisterParamSet(&Params{}) -} - -// NewParams creates a new Params instance -func NewParams( - auctionPeriod int64, - minNextBidIncrementRate math.LegacyDec, -) Params { - return Params{ - AuctionPeriod: auctionPeriod, - MinNextBidIncrementRate: minNextBidIncrementRate, - } -} - -// ParamSetPairs returns the parameter set pairs. -func (p *Params) ParamSetPairs() paramtypes.ParamSetPairs { - return paramtypes.ParamSetPairs{ - paramtypes.NewParamSetPair(KeyAuctionPeriod, &p.AuctionPeriod, validateAuctionPeriodDuration), - paramtypes.NewParamSetPair(KeyMinNextBidIncrementRate, &p.MinNextBidIncrementRate, validateMinNextBidIncrementRate), - } -} - -// DefaultParams returns a default set of parameters. -func DefaultParams() Params { - return Params{ - AuctionPeriod: DefaultAuctionPeriod, - MinNextBidIncrementRate: DefaultMinNextBidIncrementRate, - } -} - -// Validate performs basic validation on auction parameters. -func (p Params) Validate() error { - if err := validateAuctionPeriodDuration(p.AuctionPeriod); err != nil { - return err - } - - if err := validateMinNextBidIncrementRate(p.MinNextBidIncrementRate); err != nil { - return err - } - - return nil -} - -func validateAuctionPeriodDuration(i interface{}) error { - v, ok := i.(int64) - if !ok { - return fmt.Errorf("invalid parameter type: %T", i) - } - - if v == 0 { - return fmt.Errorf("AuctionPeriodDuration must be positive: %d", v) - } - - return nil -} - -func validateMinNextBidIncrementRate(i interface{}) error { - v, ok := i.(math.LegacyDec) - if !ok { - return fmt.Errorf("invalid parameter type: %T", i) - } - - if v.IsNil() { - return fmt.Errorf("MinNextBidIncrementRate cannot be nil") - } - - if v.Equal(math.LegacyZeroDec()) { - return fmt.Errorf("MinNextBidIncrementRate must be positive: %s", v.String()) - } - - if v.GT(math.LegacyNewDecWithPrec(2, 1)) { // > 20% - return fmt.Errorf("MinNextBidIncrementRate must be equal or less than 20 percent: %s", v.String()) - } - - return nil -} diff --git a/chain/auction/types/paramset.go b/chain/auction/types/paramset.go deleted file mode 100644 index 80d0852b..00000000 --- a/chain/auction/types/paramset.go +++ /dev/null @@ -1,26 +0,0 @@ -package types - -type ( - ValueValidatorFn func(value interface{}) error - - // ParamSetPair is used for associating paramsubspace key and field of param - // structs. - ParamSetPair struct { - Key []byte - Value interface{} - ValidatorFn ValueValidatorFn - } -) - -// NewParamSetPair creates a new ParamSetPair instance. -func NewParamSetPair(key []byte, value interface{}, vfn ValueValidatorFn) ParamSetPair { - return ParamSetPair{key, value, vfn} -} - -// ParamSetPairs Slice of KeyFieldPair -type ParamSetPairs []ParamSetPair - -// ParamSet defines an interface for structs containing parameters for a module -type ParamSet interface { - ParamSetPairs() ParamSetPairs -} diff --git a/chain/codec/codec.go b/chain/codec/codec.go index cd1e4e12..a557203b 100644 --- a/chain/codec/codec.go +++ b/chain/codec/codec.go @@ -14,6 +14,7 @@ import ( func RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) { sdk.RegisterLegacyAminoCodec(cdc) cryptocodec.RegisterCrypto(cdc) + codec.RegisterEvidences(cdc) } // RegisterInterfaces registers Interfaces from types, crypto, and SDK std. diff --git a/chain/crypto/codec/amino.go b/chain/crypto/codec/amino.go index f611be2c..7f5b9963 100644 --- a/chain/crypto/codec/amino.go +++ b/chain/crypto/codec/amino.go @@ -3,7 +3,6 @@ package codec import ( "github.com/cosmos/cosmos-sdk/codec" "github.com/cosmos/cosmos-sdk/codec/legacy" - cryptocodec "github.com/cosmos/cosmos-sdk/crypto/codec" "github.com/cosmos/cosmos-sdk/crypto/keyring" cryptotypes "github.com/cosmos/cosmos-sdk/crypto/types" diff --git a/chain/crypto/keyring/options.go b/chain/crypto/keyring/options.go deleted file mode 100644 index 333bc4f9..00000000 --- a/chain/crypto/keyring/options.go +++ /dev/null @@ -1,44 +0,0 @@ -package keyring - -import ( - "github.com/cosmos/cosmos-sdk/crypto/keyring" - "github.com/cosmos/cosmos-sdk/crypto/types" - - cosmoshd "github.com/cosmos/cosmos-sdk/crypto/hd" - - "github.com/InjectiveLabs/sdk-go/chain/crypto/ethsecp256k1" - "github.com/InjectiveLabs/sdk-go/chain/crypto/hd" -) - -// AppName defines the Ledger app used for signing. Evmos uses the Ethereum app -const AppName = "Ethereum" - -var ( - // SupportedAlgorithms defines the list of signing algorithms used on Injective: - // - eth_secp256k1 (Ethereum) - // - secp256k1 (Tendermint) - SupportedAlgorithms = keyring.SigningAlgoList{hd.EthSecp256k1, cosmoshd.Secp256k1} - // SupportedAlgorithmsLedger defines the list of signing algorithms used on Evmos for the Ledger device: - // - secp256k1 (in order to comply with Cosmos SDK) - // The Ledger derivation function is responsible for all signing and address generation. - SupportedAlgorithmsLedger = keyring.SigningAlgoList{hd.EthSecp256k1} - // LedgerDerivation defines the Evmos Ledger Go derivation (Ethereum app with EIP-712 signing) - // LedgerDerivation = ledger.EvmosLedgerDerivation() - // CreatePubkey uses the ethsecp256k1 pubkey with Ethereum address generation and keccak hashing - CreatePubkey = func(key []byte) types.PubKey { return ðsecp256k1.PubKey{Key: key} } - // SkipDERConversion represents whether the signed Ledger output should skip conversion from DER to BER. - // This is set to true for signing performed by the Ledger Ethereum app. - SkipDERConversion = true -) - -// EthSecp256k1Option defines a function keys options for the ethereum Secp256k1 curve. -// It supports eth_secp256k1 keys for accounts. -func EthSecp256k1Option() keyring.Option { - return func(options *keyring.Options) { - options.SupportedAlgos = SupportedAlgorithms - options.SupportedAlgosLedger = SupportedAlgorithmsLedger - options.LedgerCreateKey = CreatePubkey - options.LedgerAppName = AppName - options.LedgerSigSkipDERConv = SkipDERConversion - } -} diff --git a/chain/exchange/types/codec.go b/chain/exchange/types/codec.go index 34f6f1e5..9c99c2b2 100644 --- a/chain/exchange/types/codec.go +++ b/chain/exchange/types/codec.go @@ -46,6 +46,7 @@ func RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) { cdc.RegisterConcrete(&MsgUpdateParams{}, "exchange/MsgUpdateParams", nil) cdc.RegisterConcrete(&MsgUpdateSpotMarket{}, "exchange/MsgUpdateSpotMarket", nil) cdc.RegisterConcrete(&MsgUpdateDerivativeMarket{}, "exchange/MsgUpdateDerivativeMarket", nil) + cdc.RegisterConcrete(&MsgBatchExchangeModification{}, "exchange/MsgBatchExchangeModification", nil) cdc.RegisterConcrete(&ExchangeEnableProposal{}, "exchange/ExchangeEnableProposal", nil) cdc.RegisterConcrete(&BatchExchangeModificationProposal{}, "exchange/BatchExchangeModificationProposal", nil) @@ -64,6 +65,7 @@ func RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) { cdc.RegisterConcrete(&BinaryOptionsMarketParamUpdateProposal{}, "exchange/BinaryOptionsMarketParamUpdateProposal", nil) cdc.RegisterConcrete(&BinaryOptionsMarketLaunchProposal{}, "exchange/BinaryOptionsMarketLaunchProposal", nil) cdc.RegisterConcrete(&AtomicMarketOrderFeeMultiplierScheduleProposal{}, "exchange/AtomicMarketOrderFeeMultiplierScheduleProposal", nil) + cdc.RegisterConcrete(&MsgReclaimLockedFunds{}, "exchange/MsgReclaimLockedFunds", nil) cdc.RegisterConcrete(&CreateSpotLimitOrderAuthz{}, "exchange/CreateSpotLimitOrderAuthz", nil) cdc.RegisterConcrete(&CreateSpotMarketOrderAuthz{}, "exchange/CreateSpotMarketOrderAuthz", nil) @@ -113,6 +115,8 @@ func RegisterInterfaces(registry types.InterfaceRegistry) { &MsgUpdateParams{}, &MsgUpdateSpotMarket{}, &MsgUpdateDerivativeMarket{}, + &MsgBatchExchangeModification{}, + &MsgReclaimLockedFunds{}, ) registry.RegisterImplementations( @@ -147,6 +151,7 @@ func RegisterInterfaces(registry types.InterfaceRegistry) { &BinaryOptionsMarketParamUpdateProposal{}, &BinaryOptionsMarketLaunchProposal{}, &AtomicMarketOrderFeeMultiplierScheduleProposal{}, + &DenomMinNotionalProposal{}, ) registry.RegisterImplementations( diff --git a/chain/exchange/types/common_utils.go b/chain/exchange/types/common_utils.go index c949b754..4c6d0ac0 100644 --- a/chain/exchange/types/common_utils.go +++ b/chain/exchange/types/common_utils.go @@ -302,11 +302,49 @@ func EthAddressToSubaccountID(addr common.Address) common.Hash { return common.BytesToHash(common.RightPadBytes(addr.Bytes(), 32)) } -func DecToDecBytes(dec math.LegacyDec) []byte { +// SignedDecToSignedDecBytes encodes a Dec to a signed byte slice +func SignedDecToSignedDecBytes(dec math.LegacyDec) []byte { + if dec.IsNil() || dec.IsZero() { + return []byte{} + } + + sign := byte(0) + + // use sign of 1 for negative numbers + if dec.BigInt().Sign() < 0 { + sign = 1 + } + + return append([]byte{sign}, dec.BigInt().Bytes()...) +} + +// SignedDecBytesToDec decodes a signed byte slice back to a Dec. +func SignedDecBytesToDec(data []byte) math.LegacyDec { + if len(data) == 0 { + return math.LegacyZeroDec() + } + + sign := data[0] + magnitude := data[1:] + i := new(big.Int).SetBytes(magnitude) + if sign == 1 { + i = i.Neg(i) + } + + dec := math.LegacyNewDecFromBigIntWithPrec(i, math.LegacyPrecision) + if dec.IsNil() { + return math.LegacyZeroDec() + } + return dec +} + +// UnsignedDecToUnsignedDecBytes encodes an unsigned Dec to an unsigned byte slice +func UnsignedDecToUnsignedDecBytes(dec math.LegacyDec) []byte { return dec.BigInt().Bytes() } -func DecBytesToDec(bz []byte) math.LegacyDec { +// UnsignedDecBytesToDec decodes an unsigned byte slice back to a Dec. +func UnsignedDecBytesToDec(bz []byte) math.LegacyDec { dec := math.LegacyNewDecFromBigIntWithPrec(new(big.Int).SetBytes(bz), math.LegacyPrecision) if dec.IsNil() { return math.LegacyZeroDec() @@ -322,39 +360,6 @@ func IntBytesToInt(bz []byte) math.Int { return math.NewIntFromBigInt(new(big.Int).SetBytes(bz)) } -func HasDuplicates(slice []string) bool { - seen := make(map[string]struct{}) - for _, item := range slice { - if _, ok := seen[item]; ok { - return true - } - seen[item] = struct{}{} - } - return false -} - -func HasDuplicatesHexHash(slice []string) bool { - seen := make(map[common.Hash]struct{}) - for _, item := range slice { - if _, ok := seen[common.HexToHash(item)]; ok { - return true - } - seen[common.HexToHash(item)] = struct{}{} - } - return false -} - -func HasDuplicatesCoin(slice []sdk.Coin) bool { - seen := make(map[string]struct{}) - for _, item := range slice { - if _, ok := seen[item.Denom]; ok { - return true - } - seen[item.Denom] = struct{}{} - } - return false -} - func HasDuplicatesOrder(slice []*OrderData) bool { seenHashes := make(map[string]struct{}) seenCids := make(map[string]struct{}) diff --git a/chain/exchange/types/derivative_orders.go b/chain/exchange/types/derivative_orders.go index 630b470a..e5f9fa42 100644 --- a/chain/exchange/types/derivative_orders.go +++ b/chain/exchange/types/derivative_orders.go @@ -52,6 +52,14 @@ func (m *DerivativeLimitOrder) ToTrimmed() *TrimmedDerivativeLimitOrder { Cid: m.Cid(), } } +func (m *DerivativeLimitOrder) ToStandardized() *TrimmedLimitOrder { + return &TrimmedLimitOrder{ + Price: m.OrderInfo.Price, + Quantity: m.OrderInfo.Quantity, + OrderHash: common.BytesToHash(m.OrderHash).Hex(), + SubaccountId: m.OrderInfo.SubaccountId, + } +} func (o *DerivativeMarketOrderCancel) GetCancelDepositDelta() *DepositDelta { order := o.MarketOrder diff --git a/chain/exchange/types/errors.go b/chain/exchange/types/errors.go index b7b6035b..f3e6b006 100644 --- a/chain/exchange/types/errors.go +++ b/chain/exchange/types/errors.go @@ -81,7 +81,7 @@ var ( ErrSenderIsNotAnAdmin = errors.Register(ModuleName, 74, "sender should be a market admin") ErrMarketAlreadyScheduledToSettle = errors.Register(ModuleName, 75, "market is already scheduled to settle") ErrGenericMarketNotFound = errors.Register(ModuleName, 76, "market not found") - ErrInvalidDenomDecimal = errors.Register(ModuleName, 77, "denom decimal cannot be below 1 or above max scale factor") + ErrInvalidDenomDecimal = errors.Register(ModuleName, 77, "denom decimal cannot be higher than max scale factor") ErrInvalidState = errors.Register(ModuleName, 78, "state is invalid") ErrTransientOrdersUpToCancelNotSupported = errors.Register(ModuleName, 79, "transient orders up to cancellation not supported") ErrInvalidTrade = errors.Register(ModuleName, 80, "invalid trade") @@ -109,4 +109,6 @@ var ( ErrInvalidStakeGrant = errors.Register(ModuleName, 102, "invalid stake grant") ErrInsufficientStake = errors.Register(ModuleName, 103, "insufficient stake for grant") ErrInvalidPermissions = errors.Register(ModuleName, 104, "invalid permissions") + ErrDenomDecimalsDoNotMatch = errors.Register(ModuleName, 105, "the decimals specified for the denom is incorrect") + ErrInsufficientMarketBalance = errors.Register(ModuleName, 106, "insufficient market balance") ) diff --git a/chain/exchange/types/events.pb.go b/chain/exchange/types/events.pb.go index 4e09ca34..0bf022d7 100644 --- a/chain/exchange/types/events.pb.go +++ b/chain/exchange/types/events.pb.go @@ -346,6 +346,110 @@ func (m *EventDerivativeMarketPaused) GetMissingFundsRate() string { return "" } +type EventSettledMarketBalance struct { + MarketId string `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` + Amount string `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"` +} + +func (m *EventSettledMarketBalance) Reset() { *m = EventSettledMarketBalance{} } +func (m *EventSettledMarketBalance) String() string { return proto.CompactTextString(m) } +func (*EventSettledMarketBalance) ProtoMessage() {} +func (*EventSettledMarketBalance) Descriptor() ([]byte, []int) { + return fileDescriptor_20dda602b6b13fd3, []int{5} +} +func (m *EventSettledMarketBalance) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *EventSettledMarketBalance) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_EventSettledMarketBalance.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *EventSettledMarketBalance) XXX_Merge(src proto.Message) { + xxx_messageInfo_EventSettledMarketBalance.Merge(m, src) +} +func (m *EventSettledMarketBalance) XXX_Size() int { + return m.Size() +} +func (m *EventSettledMarketBalance) XXX_DiscardUnknown() { + xxx_messageInfo_EventSettledMarketBalance.DiscardUnknown(m) +} + +var xxx_messageInfo_EventSettledMarketBalance proto.InternalMessageInfo + +func (m *EventSettledMarketBalance) GetMarketId() string { + if m != nil { + return m.MarketId + } + return "" +} + +func (m *EventSettledMarketBalance) GetAmount() string { + if m != nil { + return m.Amount + } + return "" +} + +type EventNotSettledMarketBalance struct { + MarketId string `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` + Amount string `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"` +} + +func (m *EventNotSettledMarketBalance) Reset() { *m = EventNotSettledMarketBalance{} } +func (m *EventNotSettledMarketBalance) String() string { return proto.CompactTextString(m) } +func (*EventNotSettledMarketBalance) ProtoMessage() {} +func (*EventNotSettledMarketBalance) Descriptor() ([]byte, []int) { + return fileDescriptor_20dda602b6b13fd3, []int{6} +} +func (m *EventNotSettledMarketBalance) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *EventNotSettledMarketBalance) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_EventNotSettledMarketBalance.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *EventNotSettledMarketBalance) XXX_Merge(src proto.Message) { + xxx_messageInfo_EventNotSettledMarketBalance.Merge(m, src) +} +func (m *EventNotSettledMarketBalance) XXX_Size() int { + return m.Size() +} +func (m *EventNotSettledMarketBalance) XXX_DiscardUnknown() { + xxx_messageInfo_EventNotSettledMarketBalance.DiscardUnknown(m) +} + +var xxx_messageInfo_EventNotSettledMarketBalance proto.InternalMessageInfo + +func (m *EventNotSettledMarketBalance) GetMarketId() string { + if m != nil { + return m.MarketId + } + return "" +} + +func (m *EventNotSettledMarketBalance) GetAmount() string { + if m != nil { + return m.Amount + } + return "" +} + type EventMarketBeyondBankruptcy struct { MarketId string `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` SettlePrice string `protobuf:"bytes,2,opt,name=settle_price,json=settlePrice,proto3" json:"settle_price,omitempty"` @@ -356,7 +460,7 @@ func (m *EventMarketBeyondBankruptcy) Reset() { *m = EventMarketBeyondBa func (m *EventMarketBeyondBankruptcy) String() string { return proto.CompactTextString(m) } func (*EventMarketBeyondBankruptcy) ProtoMessage() {} func (*EventMarketBeyondBankruptcy) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{5} + return fileDescriptor_20dda602b6b13fd3, []int{7} } func (m *EventMarketBeyondBankruptcy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -416,7 +520,7 @@ func (m *EventAllPositionsHaircut) Reset() { *m = EventAllPositionsHairc func (m *EventAllPositionsHaircut) String() string { return proto.CompactTextString(m) } func (*EventAllPositionsHaircut) ProtoMessage() {} func (*EventAllPositionsHaircut) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{6} + return fileDescriptor_20dda602b6b13fd3, []int{8} } func (m *EventAllPositionsHaircut) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -474,7 +578,7 @@ func (m *EventBinaryOptionsMarketUpdate) Reset() { *m = EventBinaryOptio func (m *EventBinaryOptionsMarketUpdate) String() string { return proto.CompactTextString(m) } func (*EventBinaryOptionsMarketUpdate) ProtoMessage() {} func (*EventBinaryOptionsMarketUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{7} + return fileDescriptor_20dda602b6b13fd3, []int{9} } func (m *EventBinaryOptionsMarketUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -520,7 +624,7 @@ func (m *EventNewSpotOrders) Reset() { *m = EventNewSpotOrders{} } func (m *EventNewSpotOrders) String() string { return proto.CompactTextString(m) } func (*EventNewSpotOrders) ProtoMessage() {} func (*EventNewSpotOrders) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{8} + return fileDescriptor_20dda602b6b13fd3, []int{10} } func (m *EventNewSpotOrders) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -580,7 +684,7 @@ func (m *EventNewDerivativeOrders) Reset() { *m = EventNewDerivativeOrde func (m *EventNewDerivativeOrders) String() string { return proto.CompactTextString(m) } func (*EventNewDerivativeOrders) ProtoMessage() {} func (*EventNewDerivativeOrders) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{9} + return fileDescriptor_20dda602b6b13fd3, []int{11} } func (m *EventNewDerivativeOrders) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -639,7 +743,7 @@ func (m *EventCancelSpotOrder) Reset() { *m = EventCancelSpotOrder{} } func (m *EventCancelSpotOrder) String() string { return proto.CompactTextString(m) } func (*EventCancelSpotOrder) ProtoMessage() {} func (*EventCancelSpotOrder) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{10} + return fileDescriptor_20dda602b6b13fd3, []int{12} } func (m *EventCancelSpotOrder) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -690,7 +794,7 @@ func (m *EventSpotMarketUpdate) Reset() { *m = EventSpotMarketUpdate{} } func (m *EventSpotMarketUpdate) String() string { return proto.CompactTextString(m) } func (*EventSpotMarketUpdate) ProtoMessage() {} func (*EventSpotMarketUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{11} + return fileDescriptor_20dda602b6b13fd3, []int{13} } func (m *EventSpotMarketUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -736,7 +840,7 @@ func (m *EventPerpetualMarketUpdate) Reset() { *m = EventPerpetualMarket func (m *EventPerpetualMarketUpdate) String() string { return proto.CompactTextString(m) } func (*EventPerpetualMarketUpdate) ProtoMessage() {} func (*EventPerpetualMarketUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{12} + return fileDescriptor_20dda602b6b13fd3, []int{14} } func (m *EventPerpetualMarketUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -795,7 +899,7 @@ func (m *EventExpiryFuturesMarketUpdate) Reset() { *m = EventExpiryFutur func (m *EventExpiryFuturesMarketUpdate) String() string { return proto.CompactTextString(m) } func (*EventExpiryFuturesMarketUpdate) ProtoMessage() {} func (*EventExpiryFuturesMarketUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{13} + return fileDescriptor_20dda602b6b13fd3, []int{15} } func (m *EventExpiryFuturesMarketUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -850,7 +954,7 @@ func (m *EventPerpetualMarketFundingUpdate) Reset() { *m = EventPerpetua func (m *EventPerpetualMarketFundingUpdate) String() string { return proto.CompactTextString(m) } func (*EventPerpetualMarketFundingUpdate) ProtoMessage() {} func (*EventPerpetualMarketFundingUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{14} + return fileDescriptor_20dda602b6b13fd3, []int{16} } func (m *EventPerpetualMarketFundingUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -910,7 +1014,7 @@ func (m *EventSubaccountDeposit) Reset() { *m = EventSubaccountDeposit{} func (m *EventSubaccountDeposit) String() string { return proto.CompactTextString(m) } func (*EventSubaccountDeposit) ProtoMessage() {} func (*EventSubaccountDeposit) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{15} + return fileDescriptor_20dda602b6b13fd3, []int{17} } func (m *EventSubaccountDeposit) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -970,7 +1074,7 @@ func (m *EventSubaccountWithdraw) Reset() { *m = EventSubaccountWithdraw func (m *EventSubaccountWithdraw) String() string { return proto.CompactTextString(m) } func (*EventSubaccountWithdraw) ProtoMessage() {} func (*EventSubaccountWithdraw) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{16} + return fileDescriptor_20dda602b6b13fd3, []int{18} } func (m *EventSubaccountWithdraw) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1030,7 +1134,7 @@ func (m *EventSubaccountBalanceTransfer) Reset() { *m = EventSubaccountB func (m *EventSubaccountBalanceTransfer) String() string { return proto.CompactTextString(m) } func (*EventSubaccountBalanceTransfer) ProtoMessage() {} func (*EventSubaccountBalanceTransfer) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{17} + return fileDescriptor_20dda602b6b13fd3, []int{19} } func (m *EventSubaccountBalanceTransfer) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1088,7 +1192,7 @@ func (m *EventBatchDepositUpdate) Reset() { *m = EventBatchDepositUpdate func (m *EventBatchDepositUpdate) String() string { return proto.CompactTextString(m) } func (*EventBatchDepositUpdate) ProtoMessage() {} func (*EventBatchDepositUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{18} + return fileDescriptor_20dda602b6b13fd3, []int{20} } func (m *EventBatchDepositUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1133,7 +1237,7 @@ func (m *DerivativeMarketOrderCancel) Reset() { *m = DerivativeMarketOrd func (m *DerivativeMarketOrderCancel) String() string { return proto.CompactTextString(m) } func (*DerivativeMarketOrderCancel) ProtoMessage() {} func (*DerivativeMarketOrderCancel) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{19} + return fileDescriptor_20dda602b6b13fd3, []int{21} } func (m *DerivativeMarketOrderCancel) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1180,7 +1284,7 @@ func (m *EventCancelDerivativeOrder) Reset() { *m = EventCancelDerivativ func (m *EventCancelDerivativeOrder) String() string { return proto.CompactTextString(m) } func (*EventCancelDerivativeOrder) ProtoMessage() {} func (*EventCancelDerivativeOrder) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{20} + return fileDescriptor_20dda602b6b13fd3, []int{22} } func (m *EventCancelDerivativeOrder) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1245,7 +1349,7 @@ func (m *EventFeeDiscountSchedule) Reset() { *m = EventFeeDiscountSchedu func (m *EventFeeDiscountSchedule) String() string { return proto.CompactTextString(m) } func (*EventFeeDiscountSchedule) ProtoMessage() {} func (*EventFeeDiscountSchedule) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{21} + return fileDescriptor_20dda602b6b13fd3, []int{23} } func (m *EventFeeDiscountSchedule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1290,7 +1394,7 @@ func (m *EventTradingRewardCampaignUpdate) Reset() { *m = EventTradingRe func (m *EventTradingRewardCampaignUpdate) String() string { return proto.CompactTextString(m) } func (*EventTradingRewardCampaignUpdate) ProtoMessage() {} func (*EventTradingRewardCampaignUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{22} + return fileDescriptor_20dda602b6b13fd3, []int{24} } func (m *EventTradingRewardCampaignUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1341,7 +1445,7 @@ func (m *EventTradingRewardDistribution) Reset() { *m = EventTradingRewa func (m *EventTradingRewardDistribution) String() string { return proto.CompactTextString(m) } func (*EventTradingRewardDistribution) ProtoMessage() {} func (*EventTradingRewardDistribution) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{23} + return fileDescriptor_20dda602b6b13fd3, []int{25} } func (m *EventTradingRewardDistribution) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1388,7 +1492,7 @@ func (m *EventNewConditionalDerivativeOrder) Reset() { *m = EventNewCond func (m *EventNewConditionalDerivativeOrder) String() string { return proto.CompactTextString(m) } func (*EventNewConditionalDerivativeOrder) ProtoMessage() {} func (*EventNewConditionalDerivativeOrder) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{24} + return fileDescriptor_20dda602b6b13fd3, []int{26} } func (m *EventNewConditionalDerivativeOrder) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1456,7 +1560,7 @@ func (m *EventCancelConditionalDerivativeOrder) Reset() { *m = EventCanc func (m *EventCancelConditionalDerivativeOrder) String() string { return proto.CompactTextString(m) } func (*EventCancelConditionalDerivativeOrder) ProtoMessage() {} func (*EventCancelConditionalDerivativeOrder) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{25} + return fileDescriptor_20dda602b6b13fd3, []int{27} } func (m *EventCancelConditionalDerivativeOrder) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1527,7 +1631,7 @@ func (m *EventConditionalDerivativeOrderTrigger) Reset() { func (m *EventConditionalDerivativeOrderTrigger) String() string { return proto.CompactTextString(m) } func (*EventConditionalDerivativeOrderTrigger) ProtoMessage() {} func (*EventConditionalDerivativeOrderTrigger) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{26} + return fileDescriptor_20dda602b6b13fd3, []int{28} } func (m *EventConditionalDerivativeOrderTrigger) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1602,7 +1706,7 @@ func (m *EventOrderFail) Reset() { *m = EventOrderFail{} } func (m *EventOrderFail) String() string { return proto.CompactTextString(m) } func (*EventOrderFail) ProtoMessage() {} func (*EventOrderFail) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{27} + return fileDescriptor_20dda602b6b13fd3, []int{29} } func (m *EventOrderFail) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1671,7 +1775,7 @@ func (m *EventAtomicMarketOrderFeeMultipliersUpdated) String() string { } func (*EventAtomicMarketOrderFeeMultipliersUpdated) ProtoMessage() {} func (*EventAtomicMarketOrderFeeMultipliersUpdated) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{28} + return fileDescriptor_20dda602b6b13fd3, []int{30} } func (m *EventAtomicMarketOrderFeeMultipliersUpdated) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1716,7 +1820,7 @@ func (m *EventOrderbookUpdate) Reset() { *m = EventOrderbookUpdate{} } func (m *EventOrderbookUpdate) String() string { return proto.CompactTextString(m) } func (*EventOrderbookUpdate) ProtoMessage() {} func (*EventOrderbookUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{29} + return fileDescriptor_20dda602b6b13fd3, []int{31} } func (m *EventOrderbookUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1768,7 +1872,7 @@ func (m *OrderbookUpdate) Reset() { *m = OrderbookUpdate{} } func (m *OrderbookUpdate) String() string { return proto.CompactTextString(m) } func (*OrderbookUpdate) ProtoMessage() {} func (*OrderbookUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{30} + return fileDescriptor_20dda602b6b13fd3, []int{32} } func (m *OrderbookUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1821,7 +1925,7 @@ func (m *Orderbook) Reset() { *m = Orderbook{} } func (m *Orderbook) String() string { return proto.CompactTextString(m) } func (*Orderbook) ProtoMessage() {} func (*Orderbook) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{31} + return fileDescriptor_20dda602b6b13fd3, []int{33} } func (m *Orderbook) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1880,7 +1984,7 @@ func (m *EventGrantAuthorizations) Reset() { *m = EventGrantAuthorizatio func (m *EventGrantAuthorizations) String() string { return proto.CompactTextString(m) } func (*EventGrantAuthorizations) ProtoMessage() {} func (*EventGrantAuthorizations) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{32} + return fileDescriptor_20dda602b6b13fd3, []int{34} } func (m *EventGrantAuthorizations) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1933,7 +2037,7 @@ func (m *EventGrantActivation) Reset() { *m = EventGrantActivation{} } func (m *EventGrantActivation) String() string { return proto.CompactTextString(m) } func (*EventGrantActivation) ProtoMessage() {} func (*EventGrantActivation) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{33} + return fileDescriptor_20dda602b6b13fd3, []int{35} } func (m *EventGrantActivation) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1985,7 +2089,7 @@ func (m *EventInvalidGrant) Reset() { *m = EventInvalidGrant{} } func (m *EventInvalidGrant) String() string { return proto.CompactTextString(m) } func (*EventInvalidGrant) ProtoMessage() {} func (*EventInvalidGrant) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{34} + return fileDescriptor_20dda602b6b13fd3, []int{36} } func (m *EventInvalidGrant) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2040,7 +2144,7 @@ func (m *EventOrderCancelFail) Reset() { *m = EventOrderCancelFail{} } func (m *EventOrderCancelFail) String() string { return proto.CompactTextString(m) } func (*EventOrderCancelFail) ProtoMessage() {} func (*EventOrderCancelFail) Descriptor() ([]byte, []int) { - return fileDescriptor_20dda602b6b13fd3, []int{35} + return fileDescriptor_20dda602b6b13fd3, []int{37} } func (m *EventOrderCancelFail) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2110,6 +2214,8 @@ func init() { proto.RegisterType((*EventLostFundsFromLiquidation)(nil), "injective.exchange.v1beta1.EventLostFundsFromLiquidation") proto.RegisterType((*EventBatchDerivativePosition)(nil), "injective.exchange.v1beta1.EventBatchDerivativePosition") proto.RegisterType((*EventDerivativeMarketPaused)(nil), "injective.exchange.v1beta1.EventDerivativeMarketPaused") + proto.RegisterType((*EventSettledMarketBalance)(nil), "injective.exchange.v1beta1.EventSettledMarketBalance") + proto.RegisterType((*EventNotSettledMarketBalance)(nil), "injective.exchange.v1beta1.EventNotSettledMarketBalance") proto.RegisterType((*EventMarketBeyondBankruptcy)(nil), "injective.exchange.v1beta1.EventMarketBeyondBankruptcy") proto.RegisterType((*EventAllPositionsHaircut)(nil), "injective.exchange.v1beta1.EventAllPositionsHaircut") proto.RegisterType((*EventBinaryOptionsMarketUpdate)(nil), "injective.exchange.v1beta1.EventBinaryOptionsMarketUpdate") @@ -2148,138 +2254,139 @@ func init() { } var fileDescriptor_20dda602b6b13fd3 = []byte{ - // 2082 bytes of a gzipped FileDescriptorProto + // 2111 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x59, 0xcd, 0x6f, 0x1c, 0x49, - 0x15, 0x77, 0xfb, 0x6b, 0x3d, 0x6f, 0xc6, 0x76, 0xdc, 0xb6, 0xb3, 0x5e, 0x87, 0x38, 0x4e, 0xef, + 0x15, 0x77, 0xfb, 0x6b, 0x3d, 0x6f, 0xc6, 0xf6, 0xba, 0x6d, 0x67, 0x1d, 0x87, 0x38, 0x4e, 0xef, 0x26, 0x9b, 0x64, 0x97, 0x99, 0x8d, 0x57, 0xab, 0xbd, 0x70, 0xc0, 0x63, 0x67, 0x36, 0x66, 0x9d, - 0xc4, 0x5b, 0x0e, 0x5a, 0x29, 0x12, 0x6a, 0xd5, 0x74, 0x97, 0x67, 0x8a, 0x74, 0x77, 0x75, 0xba, + 0xc4, 0xdb, 0x0e, 0x5a, 0x29, 0x12, 0x6a, 0xd5, 0x74, 0x97, 0x67, 0x8a, 0x74, 0x77, 0x75, 0xba, 0xaa, 0x9d, 0x0c, 0x70, 0xe1, 0x06, 0x27, 0x38, 0x20, 0xc1, 0x8d, 0x23, 0x07, 0x24, 0x24, 0x0e, 0x9c, 0xb8, 0xed, 0x85, 0x45, 0xe2, 0xb0, 0x47, 0x04, 0x68, 0x85, 0x12, 0x24, 0xfe, 0x08, 0x2e, - 0xa8, 0x3e, 0x7a, 0xba, 0xe7, 0x23, 0xe3, 0x99, 0x38, 0x88, 0x5b, 0x77, 0xf5, 0xab, 0xdf, 0xfb, - 0xd5, 0xaf, 0x5e, 0xbd, 0x7a, 0x55, 0x0d, 0xef, 0xd2, 0xe8, 0xfb, 0xc4, 0x13, 0xf4, 0x94, 0xd4, - 0xc8, 0x33, 0xaf, 0x8d, 0xa3, 0x16, 0xa9, 0x9d, 0xde, 0x6e, 0x12, 0x81, 0x6f, 0xd7, 0xc8, 0x29, - 0x89, 0x04, 0xaf, 0xc6, 0x09, 0x13, 0xcc, 0xde, 0xec, 0x1a, 0x56, 0x33, 0xc3, 0xaa, 0x31, 0xdc, - 0x5c, 0x6b, 0xb1, 0x16, 0x53, 0x66, 0x35, 0xf9, 0xa4, 0x7b, 0x6c, 0x6e, 0x79, 0x8c, 0x87, 0x8c, - 0xd7, 0x9a, 0x98, 0xe7, 0x98, 0x1e, 0xa3, 0x91, 0xf9, 0x7e, 0x2d, 0x77, 0xcd, 0x12, 0xec, 0x05, - 0xb9, 0x91, 0x7e, 0x35, 0x66, 0x37, 0x47, 0x31, 0xcc, 0x98, 0x28, 0x53, 0xe7, 0x1f, 0x16, 0xbc, - 0x79, 0x47, 0x92, 0xae, 0x63, 0xe1, 0xb5, 0x8f, 0x63, 0x26, 0xee, 0x3c, 0x23, 0x5e, 0x2a, 0x28, - 0x8b, 0xec, 0x4b, 0x50, 0x0a, 0x71, 0xf2, 0x98, 0x08, 0x97, 0xfa, 0x1b, 0xd6, 0xb6, 0x75, 0xa3, - 0x84, 0x16, 0x74, 0xc3, 0x81, 0x6f, 0xaf, 0xc3, 0x3c, 0xe5, 0x6e, 0x33, 0xed, 0x6c, 0x4c, 0x6f, - 0x5b, 0x37, 0x16, 0xd0, 0x1c, 0xe5, 0xf5, 0xb4, 0x63, 0x3f, 0x80, 0x45, 0x92, 0x01, 0x3c, 0xec, - 0xc4, 0x64, 0x63, 0x66, 0xdb, 0xba, 0xb1, 0xb4, 0x73, 0xb3, 0xfa, 0x72, 0x2d, 0xaa, 0x77, 0x8a, - 0x1d, 0x50, 0x6f, 0x7f, 0xfb, 0x5b, 0x30, 0x2f, 0x12, 0xec, 0x13, 0xbe, 0x31, 0xbb, 0x3d, 0x73, - 0xa3, 0xbc, 0xf3, 0xce, 0x28, 0xa4, 0x87, 0xd2, 0xf2, 0x90, 0xb5, 0x90, 0xe9, 0xe3, 0xfc, 0x7b, - 0x1a, 0x2e, 0xe7, 0xc3, 0xdb, 0x27, 0x09, 0x3d, 0xc5, 0xb2, 0xeb, 0xf9, 0x06, 0x79, 0x0d, 0x96, - 0x28, 0x77, 0x03, 0xfa, 0x24, 0xa5, 0x3e, 0x96, 0x28, 0x6a, 0x94, 0x0b, 0x68, 0x91, 0xf2, 0xc3, - 0xbc, 0xd1, 0x46, 0x60, 0x7b, 0x69, 0x98, 0x06, 0xca, 0xa3, 0x7b, 0x92, 0x46, 0x3e, 0x8d, 0x5a, - 0x1b, 0xb3, 0xd2, 0x47, 0xfd, 0xed, 0x2f, 0xbf, 0xbe, 0x62, 0xfd, 0xed, 0xeb, 0x2b, 0x97, 0xf4, - 0x8c, 0x73, 0xff, 0x71, 0x95, 0xb2, 0x5a, 0x88, 0x45, 0xbb, 0x7a, 0x48, 0x5a, 0xd8, 0xeb, 0xec, - 0x13, 0x0f, 0xad, 0xe4, 0xdd, 0x1b, 0xba, 0xf7, 0xa0, 0xbe, 0x73, 0xe7, 0xd4, 0xb7, 0xd1, 0xd5, - 0x77, 0x5e, 0xe9, 0x5b, 0x1d, 0x85, 0x94, 0x0b, 0x38, 0xa0, 0xf4, 0x17, 0x99, 0xd2, 0x87, 0x8c, - 0x0b, 0xc9, 0x96, 0x37, 0x12, 0x16, 0x16, 0xe5, 0x18, 0xa9, 0xf4, 0xdb, 0xb0, 0xc8, 0xd3, 0x26, - 0xf6, 0x3c, 0x96, 0x46, 0xca, 0x40, 0x0a, 0x5e, 0x41, 0x95, 0xbc, 0xf1, 0xc0, 0xb7, 0x9f, 0xc1, - 0xbb, 0x01, 0xe3, 0x42, 0x49, 0xc9, 0xdd, 0x93, 0x84, 0x85, 0x2e, 0x3e, 0xc5, 0x34, 0xc0, 0xcd, - 0x80, 0xb8, 0x7e, 0x9a, 0xd0, 0xa8, 0xe5, 0xc6, 0xb8, 0xc3, 0x52, 0xa1, 0x26, 0x44, 0xab, 0x3c, - 0x75, 0x96, 0xca, 0x4e, 0x50, 0x64, 0xbc, 0x9b, 0x01, 0xee, 0x2b, 0xbc, 0x23, 0x05, 0x67, 0x13, - 0xb8, 0xdc, 0xef, 0x99, 0x25, 0x3e, 0x49, 0x5c, 0x0f, 0x47, 0x1e, 0x09, 0x78, 0x61, 0x56, 0xcf, - 0xf4, 0xf7, 0x56, 0x8f, 0xbf, 0x07, 0x12, 0x66, 0x4f, 0xa3, 0x38, 0x3f, 0xb5, 0xe0, 0x1b, 0xc3, - 0xc2, 0xf5, 0x88, 0x71, 0x7a, 0xb6, 0x86, 0x87, 0x50, 0x8a, 0x8d, 0x21, 0xdf, 0x98, 0x3e, 0x7b, - 0x36, 0x8f, 0xbb, 0xda, 0x66, 0xf8, 0x28, 0x07, 0x70, 0xfe, 0x68, 0xc1, 0x25, 0xc5, 0x25, 0xa7, - 0x71, 0x4f, 0x79, 0x3a, 0xc2, 0x29, 0x27, 0xfe, 0x68, 0x2a, 0x57, 0xa1, 0xc2, 0x89, 0x10, 0x01, - 0x71, 0xe3, 0x84, 0x7a, 0x44, 0xcd, 0x66, 0x09, 0x95, 0x75, 0xdb, 0x91, 0x6c, 0xb2, 0xab, 0xb0, - 0x2a, 0x98, 0xc0, 0x81, 0x1b, 0x52, 0xce, 0xe5, 0xcc, 0x29, 0x6d, 0xf5, 0xc4, 0xa1, 0x15, 0xf5, - 0xe9, 0x9e, 0xfe, 0xa2, 0xb4, 0xb2, 0xdf, 0x07, 0xbb, 0xc7, 0xd2, 0x4d, 0xb0, 0x20, 0x5a, 0x77, - 0x74, 0x21, 0x2c, 0x58, 0x22, 0x2c, 0x88, 0xf3, 0xb3, 0x8c, 0xbd, 0xe6, 0x5c, 0x27, 0x1d, 0x16, - 0xf9, 0x75, 0x1c, 0x3d, 0x4e, 0xd2, 0x58, 0x78, 0x9d, 0x73, 0xb3, 0xff, 0x00, 0xd6, 0x32, 0x36, - 0x06, 0xa7, 0x48, 0x3f, 0x63, 0xaa, 0x9d, 0x2b, 0x56, 0xce, 0x4f, 0x2c, 0xd8, 0x50, 0x8c, 0x76, - 0x83, 0x20, 0xd3, 0x9b, 0xdf, 0xc5, 0x34, 0xf1, 0x52, 0x71, 0x6e, 0x3a, 0xc3, 0xc5, 0x99, 0x79, - 0x89, 0x38, 0x0c, 0xb6, 0x74, 0x94, 0xd1, 0x08, 0x27, 0x9d, 0x07, 0xb1, 0xa2, 0xa2, 0xb9, 0x7e, - 0x37, 0xf6, 0xb1, 0x20, 0xf6, 0x3d, 0x98, 0xd7, 0xee, 0x15, 0x99, 0xf2, 0x4e, 0x6d, 0x54, 0x1c, - 0x0d, 0x81, 0xa9, 0xcf, 0xca, 0x95, 0x80, 0x0c, 0x88, 0xf3, 0x67, 0x0b, 0x6c, 0xe5, 0xf1, 0x3e, - 0x79, 0x2a, 0xf7, 0x18, 0x15, 0xf4, 0x7c, 0xf4, 0xa8, 0x0f, 0x00, 0x9a, 0x69, 0x47, 0x2f, 0xb3, - 0x2c, 0x9c, 0x6f, 0x8d, 0x0c, 0xe7, 0x98, 0x89, 0x43, 0x1a, 0x52, 0x8d, 0x8e, 0x4a, 0xcd, 0xb4, - 0x63, 0xfc, 0x7c, 0x0a, 0x65, 0x4e, 0x82, 0x20, 0xc3, 0x9a, 0x99, 0x18, 0x0b, 0x64, 0x77, 0x0d, - 0xe6, 0xfc, 0x3d, 0x9b, 0xc7, 0xfb, 0xe4, 0x69, 0xbe, 0x34, 0xc6, 0x19, 0xd1, 0x83, 0x21, 0x23, - 0xfa, 0x60, 0xbc, 0x74, 0x3b, 0x7c, 0x5c, 0x9f, 0x0d, 0x1b, 0xd7, 0xe4, 0x88, 0xc5, 0xd1, 0xfd, - 0x10, 0xd6, 0xd4, 0xe0, 0x74, 0x46, 0xea, 0xce, 0xd5, 0xe8, 0x81, 0x35, 0x60, 0x4e, 0x51, 0x50, - 0x91, 0x39, 0x91, 0xb2, 0x26, 0x4e, 0x74, 0x77, 0xe7, 0x7b, 0xb0, 0xae, 0x9c, 0x4b, 0x9b, 0x9e, - 0x70, 0xdc, 0xef, 0x0b, 0xc7, 0xeb, 0x67, 0x79, 0x18, 0x1a, 0x85, 0xbf, 0x99, 0x86, 0x4d, 0x85, - 0x7f, 0x44, 0x92, 0x98, 0x88, 0x14, 0x07, 0x3d, 0x4e, 0xbe, 0xd3, 0xe7, 0xe4, 0xfd, 0xf1, 0x84, - 0x1c, 0xe6, 0xca, 0xa6, 0xb0, 0x1e, 0x67, 0x4e, 0xb2, 0x04, 0x41, 0xa3, 0x13, 0x66, 0x14, 0x1a, - 0xb9, 0x9c, 0xfa, 0xd8, 0x1d, 0x44, 0x27, 0x4c, 0xa1, 0x5b, 0x68, 0x35, 0x1e, 0xfc, 0x64, 0x23, - 0x78, 0x23, 0x2b, 0x2d, 0x66, 0x14, 0xf8, 0xce, 0x04, 0xe0, 0xa6, 0xac, 0x30, 0xf8, 0x19, 0x90, - 0xf3, 0x2f, 0xcb, 0x64, 0x88, 0x3b, 0xcf, 0x62, 0x9a, 0x74, 0x1a, 0xa9, 0x48, 0x13, 0xc2, 0xff, - 0x67, 0x6a, 0x9d, 0xc2, 0x26, 0x51, 0x8e, 0xdc, 0x13, 0xed, 0xa9, 0x47, 0x32, 0x3d, 0xaa, 0x0f, - 0x47, 0x57, 0x38, 0x03, 0x34, 0x0b, 0xb2, 0xbd, 0x49, 0x86, 0x7f, 0x76, 0xfe, 0x32, 0x0d, 0x57, - 0x87, 0x05, 0x84, 0x51, 0xc5, 0x8c, 0x74, 0x64, 0xe8, 0x17, 0xd4, 0x9f, 0x3e, 0x97, 0xfa, 0x53, - 0x5d, 0xf5, 0xed, 0x5b, 0xb0, 0x42, 0xb9, 0xdb, 0x66, 0x69, 0x12, 0x74, 0xdc, 0xe2, 0xdc, 0x2e, - 0xa0, 0x65, 0xca, 0xef, 0xaa, 0xf6, 0xac, 0x1e, 0x6c, 0x40, 0xc5, 0x58, 0x14, 0xf6, 0xc3, 0xf1, - 0xaa, 0xcb, 0xb2, 0xe9, 0x28, 0xb7, 0x04, 0xbb, 0x0e, 0x20, 0xc7, 0x64, 0x76, 0x98, 0xb9, 0xf1, - 0x51, 0x94, 0x36, 0x6a, 0x13, 0x72, 0x7e, 0x69, 0xc1, 0x45, 0xbd, 0x7e, 0xbb, 0x85, 0xc5, 0x3e, - 0x51, 0x05, 0x85, 0x7d, 0x05, 0xca, 0x3c, 0xf1, 0x5c, 0xec, 0xfb, 0x09, 0xe1, 0xdc, 0xa8, 0x08, - 0x3c, 0xf1, 0x76, 0x75, 0xcb, 0x78, 0xf5, 0xdf, 0xc7, 0x30, 0x8f, 0x43, 0xf9, 0x6c, 0x62, 0xe2, - 0xad, 0xaa, 0x66, 0x56, 0x95, 0xe7, 0xa5, 0xae, 0xc8, 0x7b, 0x8c, 0x46, 0x59, 0x80, 0x69, 0x73, - 0xe7, 0x57, 0xd9, 0x29, 0x27, 0x67, 0xf6, 0x39, 0x15, 0x6d, 0x3f, 0xc1, 0x4f, 0x07, 0x3d, 0x5b, - 0x43, 0x3c, 0x5f, 0x81, 0xb2, 0xcf, 0x45, 0x97, 0xbf, 0xde, 0x81, 0xc1, 0xe7, 0x22, 0xe3, 0xff, - 0xca, 0xd4, 0x7e, 0x9f, 0x2d, 0xb5, 0x9c, 0x5a, 0x1d, 0x07, 0x32, 0xfb, 0x3e, 0x4c, 0x70, 0xc4, - 0x4f, 0x48, 0x22, 0xe3, 0x41, 0x8a, 0x37, 0xc8, 0xb2, 0x84, 0x96, 0x79, 0xe2, 0x1d, 0x17, 0x89, - 0xde, 0x82, 0x15, 0x49, 0x74, 0x50, 0xcb, 0x12, 0x5a, 0xf6, 0xb9, 0x38, 0x7e, 0x2d, 0x72, 0x86, - 0xc5, 0x33, 0xa3, 0x99, 0x62, 0xb3, 0x58, 0x10, 0x2c, 0xfb, 0xba, 0xc1, 0x4d, 0x55, 0x8b, 0x9c, - 0x6c, 0xb9, 0x2d, 0xdd, 0x1c, 0x9d, 0x1f, 0x0a, 0x18, 0x68, 0xc9, 0x2f, 0xbe, 0x72, 0xe7, 0x4f, - 0x16, 0x5c, 0xea, 0xcf, 0x20, 0x85, 0xb2, 0xd9, 0x7e, 0x04, 0x15, 0xb3, 0x40, 0xf5, 0x2e, 0xa4, - 0x13, 0xd2, 0xed, 0x49, 0x12, 0x52, 0xbe, 0x19, 0x59, 0xa8, 0x1c, 0xe6, 0x4d, 0xf6, 0x21, 0x2c, - 0xeb, 0x12, 0xdf, 0x7d, 0x92, 0xe2, 0x48, 0x50, 0xa1, 0x8f, 0x82, 0x63, 0x96, 0xfa, 0x4b, 0xba, - 0xef, 0x67, 0xa6, 0x6b, 0xbe, 0x03, 0x69, 0xe6, 0x7d, 0xe5, 0xc3, 0xe8, 0x4c, 0xf3, 0x0e, 0xa8, - 0xe3, 0x65, 0x48, 0x4d, 0x67, 0x73, 0x24, 0xed, 0x6d, 0xb4, 0x3f, 0x87, 0x72, 0x20, 0x5f, 0x8d, - 0x14, 0x7a, 0x62, 0x27, 0x2e, 0x09, 0x8c, 0x12, 0x10, 0x74, 0x5b, 0xec, 0x10, 0x56, 0x8b, 0x22, - 0x9b, 0x83, 0x8f, 0xca, 0x37, 0xe5, 0x9d, 0x8f, 0x27, 0xd6, 0x5a, 0xd3, 0x35, 0x7e, 0x56, 0xc2, - 0xfe, 0x0f, 0x4e, 0xcb, 0x14, 0x59, 0x0d, 0x42, 0xf6, 0x29, 0x57, 0x11, 0x7b, 0xec, 0xb5, 0x89, - 0x9f, 0x06, 0xc4, 0xfe, 0x14, 0x16, 0xb8, 0x79, 0x1e, 0xa7, 0x3c, 0x1d, 0x02, 0x81, 0xba, 0x00, - 0xce, 0x73, 0x0b, 0xb6, 0x95, 0x27, 0x79, 0xa2, 0x95, 0xd9, 0x90, 0x3c, 0xc5, 0x89, 0xbf, 0x87, - 0xc3, 0x18, 0xd3, 0x56, 0x64, 0xa2, 0xfa, 0x11, 0x2c, 0x7a, 0xa6, 0x45, 0xef, 0x49, 0xda, 0xed, - 0x47, 0x67, 0xdd, 0x45, 0x0c, 0xe0, 0xc9, 0x6d, 0x07, 0x55, 0xbc, 0xc2, 0x9b, 0xdd, 0x84, 0xf5, - 0x2e, 0x76, 0xa2, 0x8c, 0xdd, 0x98, 0xb1, 0x60, 0xac, 0x13, 0x5c, 0x06, 0xab, 0x9d, 0x1c, 0x31, - 0x16, 0xa0, 0x55, 0x6f, 0xa0, 0x8d, 0x3b, 0xa9, 0xc9, 0x31, 0x3d, 0x9c, 0xf6, 0x29, 0x17, 0x09, - 0x6d, 0xea, 0x6b, 0x90, 0x63, 0x58, 0xce, 0x12, 0x86, 0x26, 0x91, 0xad, 0xdb, 0x91, 0xc5, 0xdc, - 0xae, 0xee, 0xa2, 0xf1, 0x38, 0x5a, 0xc2, 0x3d, 0xef, 0xce, 0x1f, 0x2c, 0x70, 0xb2, 0x52, 0x79, - 0x8f, 0x45, 0xbe, 0x3a, 0xf3, 0xe0, 0xc9, 0xc2, 0x7e, 0xb7, 0xb7, 0xb6, 0x7c, 0x6f, 0xbc, 0x48, - 0xd3, 0x85, 0xad, 0xee, 0x69, 0xdb, 0x30, 0xdb, 0xc6, 0xbc, 0xad, 0x16, 0x43, 0x05, 0xa9, 0x67, - 0xe9, 0x93, 0x66, 0x65, 0x86, 0x0a, 0xe2, 0x05, 0xb4, 0x40, 0x4d, 0x6d, 0xe0, 0xfc, 0x7a, 0x1a, - 0xae, 0x15, 0x96, 0xe9, 0xab, 0x52, 0xff, 0x3f, 0xaf, 0xd8, 0xfe, 0xb4, 0x38, 0xfb, 0xfa, 0xd2, - 0xa2, 0xf3, 0x1f, 0x0b, 0xae, 0x6b, 0x85, 0x5e, 0xaa, 0xcd, 0xc3, 0x84, 0xb6, 0x5a, 0xc3, 0x24, - 0xaa, 0x14, 0x24, 0xba, 0x0e, 0x4b, 0x46, 0x0d, 0x63, 0x6e, 0x34, 0xea, 0x6b, 0x95, 0xc7, 0x6d, - 0xa1, 0x1f, 0x89, 0x6f, 0x12, 0x50, 0x61, 0x4a, 0xed, 0xee, 0x37, 0xe5, 0xf9, 0xae, 0x9c, 0xe0, - 0x5b, 0xb0, 0x12, 0x07, 0xd8, 0xeb, 0x35, 0x9f, 0x55, 0xe6, 0xcb, 0xfa, 0x43, 0x6e, 0x5b, 0x85, - 0xd5, 0x7e, 0x74, 0x8f, 0xfa, 0xba, 0x0a, 0x42, 0x2b, 0xbd, 0xe0, 0x7b, 0xd4, 0x77, 0x02, 0x58, - 0x52, 0x83, 0x57, 0x0d, 0x0d, 0x4c, 0x03, 0x7b, 0x03, 0xde, 0x30, 0xb1, 0x6f, 0x86, 0x98, 0xbd, - 0xda, 0x17, 0x61, 0x5e, 0xba, 0x26, 0x7a, 0x3d, 0x57, 0x90, 0x79, 0xb3, 0xd7, 0x60, 0xee, 0x24, - 0xc0, 0x2d, 0x7d, 0x6a, 0x5b, 0x44, 0xfa, 0x45, 0x86, 0xaa, 0x47, 0x7d, 0x7d, 0xd7, 0x59, 0x42, - 0xea, 0xd9, 0xf9, 0x85, 0x05, 0xef, 0xe9, 0x8b, 0x03, 0xc1, 0x42, 0xea, 0x15, 0x66, 0xa6, 0x41, - 0xc8, 0xbd, 0x34, 0x10, 0x34, 0x0e, 0x28, 0x49, 0xb8, 0xce, 0x55, 0xbe, 0x4d, 0xe0, 0x62, 0x76, - 0x25, 0x41, 0x88, 0x1b, 0xe6, 0x06, 0x66, 0x45, 0x8f, 0x4c, 0x96, 0xa6, 0x30, 0x2d, 0x02, 0xa3, - 0xb5, 0x70, 0xb0, 0x91, 0x3b, 0x5f, 0x58, 0xe6, 0xa8, 0xa8, 0xa8, 0x34, 0x19, 0x7b, 0x6c, 0x92, - 0xe5, 0x7d, 0xa8, 0xf0, 0x98, 0xf5, 0xef, 0xff, 0x23, 0x17, 0x6e, 0x1f, 0x04, 0x2a, 0x4b, 0x00, - 0xb3, 0xfd, 0xdb, 0x8f, 0xc0, 0xf6, 0xbb, 0xa1, 0xd5, 0x45, 0x9d, 0x9e, 0x1c, 0x75, 0x25, 0x87, - 0xc9, 0x4a, 0x8b, 0x36, 0x2c, 0xf7, 0xd3, 0xbf, 0x00, 0x33, 0x9c, 0x3c, 0x51, 0xd3, 0x38, 0x8b, - 0xe4, 0xa3, 0xbd, 0x07, 0x25, 0x96, 0x19, 0x99, 0x34, 0x74, 0x6d, 0x2c, 0xbf, 0x28, 0xef, 0xe7, - 0xfc, 0xce, 0x82, 0x52, 0xf7, 0xc3, 0xe8, 0x45, 0xf1, 0x6d, 0x7d, 0x4f, 0x10, 0x90, 0x53, 0xd2, - 0xdd, 0x06, 0xae, 0x8e, 0x72, 0x78, 0x28, 0x2d, 0xd5, 0xc5, 0x80, 0x7a, 0xe2, 0x76, 0xdd, 0x5c, - 0x0c, 0x18, 0x88, 0x99, 0x71, 0x21, 0xd4, 0x4d, 0x80, 0xc6, 0x70, 0x7e, 0x64, 0x76, 0xe0, 0x4f, - 0x12, 0x1c, 0x89, 0xdd, 0x54, 0xb4, 0x59, 0x42, 0x7f, 0xa0, 0x6e, 0x72, 0xb9, 0x0c, 0xf7, 0x96, - 0x6c, 0x36, 0xc5, 0x56, 0x09, 0x65, 0xaf, 0x76, 0x03, 0xe6, 0xd5, 0xe3, 0x58, 0xdb, 0xd7, 0x20, - 0x34, 0x32, 0xbd, 0x9d, 0x1f, 0x67, 0xd1, 0xa5, 0x6d, 0x24, 0x80, 0xbe, 0x45, 0xee, 0xba, 0x26, - 0xbd, 0xae, 0x49, 0x91, 0xd4, 0x74, 0x2f, 0xa9, 0x8f, 0x7a, 0x0a, 0xdd, 0x52, 0xfd, 0xb2, 0xa9, - 0xdd, 0xd6, 0x07, 0x6b, 0xb7, 0x83, 0x48, 0x74, 0xcb, 0xdc, 0x4f, 0x60, 0x45, 0x51, 0x38, 0x88, - 0x4e, 0x71, 0x40, 0x7d, 0xc5, 0xe4, 0x55, 0xfc, 0x3b, 0xbf, 0xed, 0x59, 0x2a, 0x3a, 0xef, 0xab, - 0xb4, 0x31, 0xf9, 0x95, 0x78, 0xa9, 0xef, 0x60, 0x72, 0x19, 0xa0, 0x2f, 0x1d, 0x96, 0x4c, 0xd4, - 0xa9, 0xcc, 0x76, 0x01, 0x66, 0x64, 0x26, 0xd3, 0xb7, 0xa4, 0xf2, 0xd1, 0xde, 0x86, 0xb2, 0x4f, - 0xb8, 0x97, 0x50, 0x75, 0x5d, 0x67, 0x72, 0x5c, 0xb1, 0xa9, 0xde, 0xfe, 0xf2, 0xf9, 0x96, 0xf5, - 0xd5, 0xf3, 0x2d, 0xeb, 0x9f, 0xcf, 0xb7, 0xac, 0x9f, 0xbf, 0xd8, 0x9a, 0xfa, 0xea, 0xc5, 0xd6, - 0xd4, 0x5f, 0x5f, 0x6c, 0x4d, 0x3d, 0xba, 0xdf, 0xa2, 0xa2, 0x9d, 0x36, 0xab, 0x1e, 0x0b, 0x6b, - 0x07, 0xd9, 0xb4, 0x1e, 0xe2, 0x26, 0xaf, 0x75, 0x27, 0xf9, 0x9b, 0x1e, 0x4b, 0x48, 0xf1, 0xb5, - 0x8d, 0x69, 0x54, 0x0b, 0x99, 0xac, 0xb5, 0x78, 0xfe, 0x37, 0x4a, 0x74, 0x62, 0xc2, 0x9b, 0xf3, - 0xea, 0x1f, 0xd4, 0x87, 0xff, 0x0d, 0x00, 0x00, 0xff, 0xff, 0xc9, 0x62, 0x4f, 0x5a, 0x52, 0x1b, - 0x00, 0x00, + 0xa8, 0x3e, 0xfa, 0x63, 0x3e, 0xd2, 0x9e, 0x89, 0x83, 0xb8, 0x4d, 0x55, 0xbf, 0xfa, 0xbd, 0x57, + 0xbf, 0xf7, 0x51, 0xaf, 0x6a, 0xe0, 0x5d, 0x12, 0x7e, 0x1f, 0xbb, 0x9c, 0x9c, 0xe2, 0x06, 0x7e, + 0xe6, 0x76, 0x51, 0xd8, 0xc1, 0x8d, 0xd3, 0xdb, 0x6d, 0xcc, 0xd1, 0xed, 0x06, 0x3e, 0xc5, 0x21, + 0x67, 0xf5, 0x28, 0xa6, 0x9c, 0x9a, 0x9b, 0x99, 0x60, 0x3d, 0x15, 0xac, 0x6b, 0xc1, 0xcd, 0xb5, + 0x0e, 0xed, 0x50, 0x29, 0xd6, 0x10, 0xbf, 0xd4, 0x8a, 0xcd, 0x2d, 0x97, 0xb2, 0x80, 0xb2, 0x46, + 0x1b, 0xb1, 0x1c, 0xd3, 0xa5, 0x24, 0xd4, 0xdf, 0xaf, 0xe5, 0xaa, 0x69, 0x8c, 0x5c, 0x3f, 0x17, + 0x52, 0x43, 0x2d, 0x76, 0xb3, 0xcc, 0xc2, 0xd4, 0x12, 0x29, 0x6a, 0xfd, 0xc3, 0x80, 0xb7, 0xee, + 0x08, 0xa3, 0x9b, 0x88, 0xbb, 0xdd, 0xe3, 0x88, 0xf2, 0x3b, 0xcf, 0xb0, 0x9b, 0x70, 0x42, 0x43, + 0xf3, 0x12, 0x54, 0x02, 0x14, 0x3f, 0xc6, 0xdc, 0x21, 0xde, 0x86, 0xb1, 0x6d, 0xdc, 0xa8, 0xd8, + 0x0b, 0x6a, 0xe2, 0xc0, 0x33, 0xd7, 0x61, 0x9e, 0x30, 0xa7, 0x9d, 0xf4, 0x36, 0xa6, 0xb7, 0x8d, + 0x1b, 0x0b, 0xf6, 0x1c, 0x61, 0xcd, 0xa4, 0x67, 0x3e, 0x80, 0x45, 0x9c, 0x02, 0x3c, 0xec, 0x45, + 0x78, 0x63, 0x66, 0xdb, 0xb8, 0xb1, 0xb4, 0x73, 0xb3, 0xfe, 0x72, 0x2e, 0xea, 0x77, 0x8a, 0x0b, + 0xec, 0xfe, 0xf5, 0xe6, 0xb7, 0x60, 0x9e, 0xc7, 0xc8, 0xc3, 0x6c, 0x63, 0x76, 0x7b, 0xe6, 0x46, + 0x75, 0xe7, 0x9d, 0x32, 0xa4, 0x87, 0x42, 0xf2, 0x90, 0x76, 0x6c, 0xbd, 0xc6, 0xfa, 0xf7, 0x34, + 0x5c, 0xce, 0xb7, 0xb7, 0x8f, 0x63, 0x72, 0x8a, 0xc4, 0xd2, 0xf3, 0x6d, 0xf2, 0x1a, 0x2c, 0x11, + 0xe6, 0xf8, 0xe4, 0x49, 0x42, 0x3c, 0x24, 0x50, 0xe4, 0x2e, 0x17, 0xec, 0x45, 0xc2, 0x0e, 0xf3, + 0x49, 0xd3, 0x06, 0xd3, 0x4d, 0x82, 0xc4, 0x97, 0x1a, 0x9d, 0x93, 0x24, 0xf4, 0x48, 0xd8, 0xd9, + 0x98, 0x15, 0x3a, 0x9a, 0x6f, 0x7f, 0xf9, 0xf5, 0x15, 0xe3, 0x6f, 0x5f, 0x5f, 0xb9, 0xa4, 0x3c, + 0xce, 0xbc, 0xc7, 0x75, 0x42, 0x1b, 0x01, 0xe2, 0xdd, 0xfa, 0x21, 0xee, 0x20, 0xb7, 0xb7, 0x8f, + 0x5d, 0x7b, 0x25, 0x5f, 0xde, 0x52, 0xab, 0x87, 0xf9, 0x9d, 0x3b, 0x27, 0xbf, 0xad, 0x8c, 0xdf, + 0x79, 0xc9, 0x6f, 0xbd, 0x0c, 0x29, 0x27, 0x70, 0x88, 0xe9, 0x2f, 0x52, 0xa6, 0x0f, 0x29, 0xe3, + 0xc2, 0x5a, 0xd6, 0x8a, 0x69, 0x50, 0xa4, 0xa3, 0x94, 0xe9, 0xb7, 0x61, 0x91, 0x25, 0x6d, 0xe4, + 0xba, 0x34, 0x09, 0xa5, 0x80, 0x20, 0xbc, 0x66, 0xd7, 0xf2, 0xc9, 0x03, 0xcf, 0x7c, 0x06, 0xef, + 0xfa, 0x94, 0x71, 0x49, 0x25, 0x73, 0x4e, 0x62, 0x1a, 0x38, 0xe8, 0x14, 0x11, 0x1f, 0xb5, 0x7d, + 0xec, 0x78, 0x49, 0x4c, 0xc2, 0x8e, 0x13, 0xa1, 0x1e, 0x4d, 0xb8, 0x74, 0x88, 0x62, 0x79, 0xea, + 0x2c, 0x96, 0x2d, 0xbf, 0x68, 0xf1, 0x6e, 0x0a, 0xb8, 0x2f, 0xf1, 0x8e, 0x24, 0x9c, 0x89, 0xe1, + 0xf2, 0xa0, 0x66, 0x1a, 0x7b, 0x38, 0x76, 0x5c, 0x14, 0xba, 0xd8, 0x67, 0x05, 0xaf, 0x9e, 0xa9, + 0xef, 0x62, 0x9f, 0xbe, 0x07, 0x02, 0x66, 0x4f, 0xa1, 0x58, 0x3f, 0x35, 0xe0, 0x1b, 0xa3, 0xc2, + 0xf5, 0x88, 0x32, 0x72, 0x36, 0x87, 0x87, 0x50, 0x89, 0xb4, 0x20, 0xdb, 0x98, 0x3e, 0xdb, 0x9b, + 0xc7, 0x19, 0xb7, 0x29, 0xbe, 0x9d, 0x03, 0x58, 0x7f, 0x34, 0xe0, 0x92, 0xb4, 0x25, 0x37, 0xe3, + 0x9e, 0xd4, 0x74, 0x84, 0x12, 0x86, 0xbd, 0x72, 0x53, 0xae, 0x42, 0x8d, 0x61, 0xce, 0x7d, 0xec, + 0x44, 0x31, 0x71, 0xb1, 0xf4, 0x66, 0xc5, 0xae, 0xaa, 0xb9, 0x23, 0x31, 0x65, 0xd6, 0x61, 0x95, + 0x53, 0x8e, 0x7c, 0x27, 0x20, 0x8c, 0x09, 0xcf, 0x49, 0x6e, 0x95, 0xe3, 0xec, 0x15, 0xf9, 0xe9, + 0x9e, 0xfa, 0x22, 0xb9, 0x32, 0xdf, 0x07, 0xb3, 0x4f, 0xd2, 0x89, 0x11, 0xc7, 0x8a, 0x77, 0xfb, + 0xcd, 0xa0, 0x20, 0x69, 0x23, 0x8e, 0xad, 0x23, 0xb8, 0x28, 0x8d, 0x3f, 0x96, 0x1a, 0x3d, 0x65, + 0x79, 0x13, 0xf9, 0x82, 0xe8, 0x72, 0xd3, 0x2f, 0xc0, 0x3c, 0x0a, 0x04, 0x29, 0xda, 0x68, 0x3d, + 0xb2, 0x8e, 0xb5, 0x6b, 0xee, 0xd3, 0xd7, 0x08, 0xfa, 0xb3, 0x94, 0x64, 0x8d, 0x85, 0x7b, 0x34, + 0xf4, 0x9a, 0x28, 0x7c, 0x1c, 0x27, 0x11, 0x77, 0x7b, 0xe7, 0x26, 0xf9, 0x03, 0x58, 0x4b, 0x49, + 0xd3, 0x38, 0x45, 0x96, 0x53, 0x42, 0x95, 0x72, 0x49, 0x9e, 0xf5, 0x13, 0x03, 0x36, 0xa4, 0x45, + 0xbb, 0xbe, 0x9f, 0x86, 0x05, 0xbb, 0x8b, 0x48, 0xec, 0x26, 0xfc, 0xdc, 0xe6, 0x8c, 0xf6, 0xe1, + 0xcc, 0x4b, 0x7c, 0x48, 0x61, 0x4b, 0x25, 0x03, 0x09, 0x51, 0xdc, 0x7b, 0x10, 0x49, 0x53, 0x94, + 0xad, 0xdf, 0x8d, 0x3c, 0xc4, 0xb1, 0x79, 0x0f, 0xe6, 0x95, 0x7a, 0x69, 0x4c, 0x75, 0xa7, 0x51, + 0x16, 0xee, 0x23, 0x60, 0x9a, 0xb3, 0x22, 0x61, 0x6d, 0x0d, 0x62, 0xfd, 0xd9, 0x00, 0x53, 0xf9, + 0x18, 0x3f, 0x15, 0x47, 0xa1, 0xcc, 0x4d, 0x56, 0xbe, 0xeb, 0x03, 0x80, 0x76, 0xd2, 0x53, 0xd5, + 0x20, 0xcd, 0xba, 0x5b, 0xa5, 0x59, 0x17, 0x51, 0x7e, 0x48, 0x02, 0xa2, 0xd0, 0xed, 0x4a, 0x3b, + 0xe9, 0x69, 0x3d, 0x9f, 0x42, 0x95, 0x61, 0xdf, 0x4f, 0xb1, 0x66, 0x26, 0xc6, 0x02, 0xb1, 0x5c, + 0x81, 0x59, 0x7f, 0x4f, 0xfd, 0x78, 0x1f, 0x3f, 0xcd, 0x33, 0x78, 0x9c, 0x1d, 0x3d, 0x18, 0xb1, + 0xa3, 0x0f, 0xc6, 0x3b, 0x15, 0x46, 0xef, 0xeb, 0xb3, 0x51, 0xfb, 0x9a, 0x1c, 0xb1, 0xb8, 0xbb, + 0x1f, 0xc2, 0x9a, 0xdc, 0x9c, 0x2a, 0x9c, 0x99, 0xaf, 0xca, 0x37, 0xd6, 0x82, 0x39, 0x69, 0x82, + 0x8c, 0xcc, 0x89, 0x98, 0xd5, 0x71, 0xa2, 0x96, 0x5b, 0xdf, 0x83, 0x75, 0x55, 0x5b, 0x22, 0xca, + 0xfb, 0xc2, 0x71, 0x7f, 0x20, 0x1c, 0xaf, 0x9f, 0xa5, 0x61, 0x64, 0x14, 0xfe, 0x66, 0x1a, 0x36, + 0x25, 0xfe, 0x11, 0x8e, 0x23, 0xcc, 0x13, 0xe4, 0xf7, 0x29, 0xf9, 0xce, 0x80, 0x92, 0xf7, 0xc7, + 0x23, 0x72, 0x94, 0x2a, 0x93, 0xc0, 0x7a, 0x94, 0x2a, 0x49, 0x0b, 0x04, 0x09, 0x4f, 0xa8, 0x66, + 0xa8, 0x34, 0x9d, 0x06, 0xac, 0x3b, 0x08, 0x4f, 0xa8, 0x44, 0x37, 0xec, 0xd5, 0x68, 0xf8, 0x93, + 0x69, 0xc3, 0x1b, 0x69, 0x07, 0x34, 0x23, 0xc1, 0x77, 0x26, 0x00, 0xd7, 0xdd, 0x8f, 0xc6, 0x4f, + 0x81, 0xac, 0x7f, 0x19, 0xba, 0x42, 0xdc, 0x79, 0x16, 0x91, 0xb8, 0xd7, 0x4a, 0x78, 0x12, 0x63, + 0xf6, 0x3f, 0x63, 0xeb, 0x14, 0x36, 0xb1, 0x54, 0xe4, 0x9c, 0x28, 0x4d, 0x7d, 0x94, 0xa9, 0x5d, + 0x7d, 0x58, 0xde, 0x88, 0x0d, 0x99, 0x59, 0xa0, 0xed, 0x2d, 0x3c, 0xfa, 0xb3, 0xf5, 0x97, 0x69, + 0xb8, 0x3a, 0x2a, 0x20, 0x34, 0x2b, 0x7a, 0xa7, 0xa5, 0xa1, 0x5f, 0x60, 0x7f, 0xfa, 0x5c, 0xec, + 0x4f, 0x65, 0xec, 0x9b, 0xb7, 0x60, 0x85, 0x30, 0xa7, 0x4b, 0x93, 0xd8, 0xef, 0x39, 0x45, 0xdf, + 0x2e, 0xd8, 0xcb, 0x84, 0xdd, 0x95, 0xf3, 0x69, 0xdb, 0xda, 0x82, 0x9a, 0x96, 0x28, 0x1c, 0xdb, + 0xe3, 0x35, 0xc1, 0x55, 0xbd, 0x50, 0x1c, 0x09, 0x66, 0x13, 0x40, 0xec, 0x49, 0x9f, 0x30, 0x73, + 0xe3, 0xa3, 0x48, 0x6e, 0xe4, 0x21, 0x64, 0xfd, 0xd2, 0x80, 0x0b, 0x2a, 0x7f, 0xb3, 0xfe, 0x67, + 0x1f, 0xcb, 0xbe, 0xc7, 0xbc, 0x02, 0x55, 0x16, 0xbb, 0x0e, 0xf2, 0xbc, 0x18, 0x33, 0xa6, 0x59, + 0x04, 0x16, 0xbb, 0xbb, 0x6a, 0x66, 0xbc, 0x36, 0xf5, 0xe3, 0xec, 0xb0, 0x57, 0x31, 0x71, 0xb1, + 0xae, 0x2c, 0xab, 0x8b, 0x6b, 0x5d, 0x46, 0xf2, 0x1e, 0x25, 0x61, 0x1a, 0x60, 0xba, 0x1b, 0xf8, + 0x55, 0x7a, 0x19, 0xcb, 0x2d, 0xfb, 0x9c, 0xf0, 0xae, 0x17, 0xa3, 0xa7, 0xc3, 0x9a, 0x8d, 0x11, + 0x9a, 0xaf, 0x40, 0xd5, 0x63, 0x3c, 0xb3, 0x5f, 0x9d, 0xc0, 0xe0, 0x31, 0x9e, 0xda, 0xff, 0xca, + 0xa6, 0xfd, 0x3e, 0x4d, 0xb5, 0xdc, 0x34, 0xdd, 0xf8, 0x3c, 0x8c, 0x51, 0xc8, 0x4e, 0x70, 0x2c, + 0xe2, 0x41, 0x90, 0x37, 0x6c, 0x65, 0xc5, 0x5e, 0x66, 0xb1, 0x7b, 0x5c, 0x34, 0xf4, 0x16, 0xac, + 0x08, 0x43, 0x87, 0xb9, 0xac, 0xd8, 0xcb, 0x1e, 0xe3, 0xc7, 0xaf, 0x85, 0xce, 0xa0, 0x78, 0xb5, + 0xd5, 0x2e, 0xd6, 0xc9, 0x62, 0xc3, 0xb2, 0xa7, 0x26, 0x9c, 0x44, 0xce, 0x08, 0x67, 0x8b, 0x63, + 0xe9, 0x66, 0x79, 0x7d, 0x28, 0x60, 0xd8, 0x4b, 0x5e, 0x71, 0xc8, 0xac, 0x3f, 0x19, 0x70, 0x69, + 0xb0, 0x82, 0x14, 0xba, 0x7b, 0xf3, 0x11, 0xd4, 0x74, 0x82, 0xaa, 0x53, 0x48, 0x15, 0xa4, 0xdb, + 0x93, 0x14, 0xa4, 0xfc, 0x30, 0x32, 0xec, 0x6a, 0x90, 0x4f, 0x99, 0x87, 0xb0, 0xac, 0x6e, 0x22, + 0xce, 0x93, 0x04, 0x85, 0x9c, 0x70, 0x75, 0x63, 0x1d, 0xf3, 0x46, 0xb2, 0xa4, 0xd6, 0x7e, 0xa6, + 0x97, 0xe6, 0x27, 0x90, 0xb2, 0x7c, 0xa0, 0x7d, 0x28, 0xaf, 0x34, 0xef, 0x80, 0xbc, 0x05, 0x07, + 0x44, 0x2f, 0xd6, 0x37, 0xe7, 0xfe, 0x49, 0xf3, 0x73, 0xa8, 0xfa, 0x62, 0xa8, 0xa9, 0x50, 0x8e, + 0x9d, 0xb8, 0x25, 0xd0, 0x4c, 0x80, 0x9f, 0xcd, 0x98, 0x01, 0xac, 0x16, 0x49, 0xd6, 0xf7, 0x33, + 0x59, 0x6f, 0xaa, 0x3b, 0x1f, 0x4f, 0xcc, 0xb5, 0x32, 0x57, 0xeb, 0x59, 0x09, 0x06, 0x3f, 0x58, + 0x1d, 0xdd, 0x64, 0xb5, 0x30, 0xde, 0x27, 0x4c, 0x46, 0xec, 0xb1, 0xdb, 0xc5, 0x5e, 0xe2, 0x63, + 0xf3, 0x53, 0x58, 0x60, 0xfa, 0xf7, 0x38, 0xed, 0xe9, 0x08, 0x08, 0x3b, 0x03, 0xb0, 0x9e, 0x1b, + 0xb0, 0x2d, 0x35, 0x89, 0x8b, 0xb7, 0xa8, 0x86, 0xf8, 0x29, 0x8a, 0xbd, 0x3d, 0x14, 0x44, 0x88, + 0x74, 0x42, 0x1d, 0xd5, 0x8f, 0x60, 0xd1, 0xd5, 0x33, 0xea, 0x4c, 0x52, 0x6a, 0x3f, 0x3a, 0xeb, + 0xc9, 0x64, 0x08, 0x4f, 0x1c, 0x3b, 0x76, 0xcd, 0x2d, 0x8c, 0xcc, 0x36, 0xac, 0x67, 0xd8, 0xb1, + 0x14, 0x76, 0x22, 0x4a, 0xfd, 0xb1, 0x2e, 0x9a, 0x29, 0xac, 0x52, 0x72, 0x44, 0xa9, 0x6f, 0xaf, + 0xba, 0x43, 0x73, 0xcc, 0x4a, 0x74, 0x8d, 0xe9, 0xb3, 0x69, 0x9f, 0x30, 0x1e, 0x93, 0xb6, 0x7a, + 0xad, 0x39, 0x86, 0xe5, 0xb4, 0x60, 0x28, 0x23, 0xd2, 0xbc, 0x2d, 0x6d, 0xe6, 0x76, 0xd5, 0x12, + 0x85, 0xc7, 0xec, 0x25, 0xd4, 0x37, 0xb6, 0xfe, 0x60, 0x80, 0x95, 0xb6, 0xca, 0x7b, 0x34, 0xf4, + 0xe4, 0x9d, 0x07, 0x4d, 0x16, 0xf6, 0xbb, 0xfd, 0xbd, 0xe5, 0x7b, 0xe3, 0x45, 0x9a, 0x6a, 0x6c, + 0xd5, 0x4a, 0xd3, 0x84, 0xd9, 0x2e, 0x62, 0x5d, 0x99, 0x0c, 0x35, 0x5b, 0xfe, 0x16, 0x3a, 0x49, + 0xda, 0x66, 0xc8, 0x20, 0x5e, 0xb0, 0x17, 0x88, 0xee, 0x0d, 0xac, 0x5f, 0x4f, 0xc3, 0xb5, 0x42, + 0x9a, 0xbe, 0xaa, 0xe9, 0xff, 0xe7, 0x8c, 0x1d, 0x2c, 0x8b, 0xb3, 0xaf, 0xaf, 0x2c, 0x5a, 0xff, + 0x31, 0xe0, 0xba, 0x62, 0xe8, 0xa5, 0xdc, 0x3c, 0x8c, 0x49, 0xa7, 0x33, 0x8a, 0xa2, 0x5a, 0x81, + 0xa2, 0xeb, 0xb0, 0xa4, 0xd9, 0xd0, 0xe2, 0x9a, 0xa3, 0x81, 0x59, 0x71, 0xdd, 0xe6, 0xea, 0x27, + 0xf6, 0x74, 0x01, 0x2a, 0xb8, 0xd4, 0xcc, 0xbe, 0x49, 0xcd, 0x77, 0x85, 0x83, 0x6f, 0xc1, 0x4a, + 0xe4, 0x23, 0xb7, 0x5f, 0x7c, 0x56, 0x8a, 0x2f, 0xab, 0x0f, 0xb9, 0x6c, 0x1d, 0x56, 0x07, 0xd1, + 0x5d, 0xe2, 0xa9, 0x2e, 0xc8, 0x5e, 0xe9, 0x07, 0xdf, 0x23, 0x9e, 0xe5, 0xc3, 0x92, 0xdc, 0xbc, + 0x9c, 0x68, 0x21, 0xe2, 0x9b, 0x1b, 0xf0, 0x86, 0x8e, 0x7d, 0xbd, 0xc5, 0x74, 0x68, 0x5e, 0x80, + 0x79, 0xa1, 0x1a, 0xab, 0x7c, 0xae, 0xd9, 0x7a, 0x64, 0xae, 0xc1, 0xdc, 0x89, 0x8f, 0x3a, 0xea, + 0xd6, 0xb6, 0x68, 0xab, 0x81, 0x08, 0x55, 0x97, 0x78, 0xea, 0x49, 0xb6, 0x62, 0xcb, 0xdf, 0xd6, + 0x2f, 0x0c, 0x78, 0x4f, 0x3d, 0x1c, 0x70, 0x1a, 0x10, 0xb7, 0xe0, 0x99, 0x16, 0xc6, 0xf7, 0x12, + 0x9f, 0x93, 0xc8, 0x27, 0x38, 0x66, 0xaa, 0x56, 0x79, 0x26, 0x86, 0x0b, 0xe9, 0x93, 0x04, 0xc6, + 0x4e, 0x90, 0x0b, 0xe8, 0x8c, 0x2e, 0x2d, 0x96, 0xba, 0x31, 0x2d, 0x02, 0xdb, 0x6b, 0xc1, 0xf0, + 0x24, 0xb3, 0xbe, 0x30, 0xf4, 0x55, 0x51, 0x9a, 0xd2, 0xa6, 0xf4, 0xb1, 0x2e, 0x96, 0xf7, 0xa1, + 0xc6, 0x22, 0x3a, 0x78, 0xfe, 0x97, 0x26, 0xee, 0x00, 0x84, 0x5d, 0x15, 0x00, 0xfa, 0xf8, 0x37, + 0x1f, 0x81, 0xe9, 0x65, 0xa1, 0x95, 0xa1, 0x4e, 0x4f, 0x8e, 0xba, 0x92, 0xc3, 0xa4, 0xad, 0x45, + 0x17, 0x96, 0x07, 0xcd, 0x7f, 0x13, 0x66, 0x18, 0x7e, 0x22, 0xdd, 0x38, 0x6b, 0x8b, 0x9f, 0xe6, + 0x1e, 0x54, 0x68, 0x2a, 0xa4, 0xcb, 0xd0, 0xb5, 0xb1, 0xf4, 0xda, 0xf9, 0x3a, 0xeb, 0x77, 0x06, + 0x54, 0xb2, 0x0f, 0xe5, 0x49, 0xf1, 0x6d, 0xf5, 0x4e, 0xe0, 0xe3, 0x53, 0x9c, 0x1d, 0x03, 0x57, + 0xcb, 0x14, 0x1e, 0x0a, 0x49, 0xf9, 0x30, 0x20, 0x7f, 0x31, 0xb3, 0xa9, 0x1f, 0x06, 0x34, 0xc4, + 0xcc, 0xb8, 0x10, 0xf2, 0x25, 0x40, 0x61, 0x58, 0x3f, 0xd2, 0x27, 0xf0, 0x27, 0x31, 0x0a, 0xf9, + 0x6e, 0xc2, 0xbb, 0x34, 0x26, 0x3f, 0x90, 0x0f, 0xce, 0x4c, 0x84, 0x7b, 0x47, 0x4c, 0xeb, 0x66, + 0xab, 0x62, 0xa7, 0x43, 0xb3, 0x05, 0xf3, 0xf2, 0xe7, 0x58, 0xc7, 0xd7, 0x30, 0xb4, 0xad, 0x57, + 0x5b, 0x3f, 0x4e, 0xa3, 0x4b, 0xc9, 0x08, 0x00, 0xf5, 0xd8, 0x9d, 0xa9, 0xc6, 0xfd, 0xaa, 0x71, + 0xd1, 0xa8, 0xe9, 0x7e, 0xa3, 0x3e, 0xea, 0x6b, 0x74, 0x2b, 0xcd, 0xcb, 0xba, 0x77, 0x5b, 0x1f, + 0xee, 0xdd, 0x0e, 0x42, 0x9e, 0xb5, 0xb9, 0x9f, 0xc0, 0x8a, 0x34, 0xe1, 0x20, 0x3c, 0x45, 0x3e, + 0xf1, 0xa4, 0x25, 0xaf, 0xa2, 0xdf, 0xfa, 0x6d, 0x5f, 0xaa, 0xa8, 0xba, 0x2f, 0xcb, 0xc6, 0xe4, + 0x2f, 0xf7, 0x95, 0x81, 0x8b, 0xc9, 0x65, 0x80, 0x81, 0x72, 0x58, 0xd1, 0x51, 0x27, 0x2b, 0xdb, + 0x9b, 0x30, 0x23, 0x2a, 0x99, 0x7a, 0xcc, 0x15, 0x3f, 0xcd, 0x6d, 0xa8, 0x7a, 0x98, 0xb9, 0x31, + 0x91, 0xcf, 0x75, 0xba, 0xc6, 0x15, 0xa7, 0x9a, 0xdd, 0x2f, 0x9f, 0x6f, 0x19, 0x5f, 0x3d, 0xdf, + 0x32, 0xfe, 0xf9, 0x7c, 0xcb, 0xf8, 0xf9, 0x8b, 0xad, 0xa9, 0xaf, 0x5e, 0x6c, 0x4d, 0xfd, 0xf5, + 0xc5, 0xd6, 0xd4, 0xa3, 0xfb, 0x1d, 0xc2, 0xbb, 0x49, 0xbb, 0xee, 0xd2, 0xa0, 0x71, 0x90, 0xba, + 0xf5, 0x10, 0xb5, 0x59, 0x23, 0x73, 0xf2, 0x37, 0x5d, 0x1a, 0xe3, 0xe2, 0xb0, 0x8b, 0x48, 0xd8, + 0x08, 0xa8, 0xe8, 0xb5, 0x58, 0xfe, 0xa7, 0x19, 0xef, 0x45, 0x98, 0xb5, 0xe7, 0xe5, 0x5f, 0x65, + 0x1f, 0xfe, 0x37, 0x00, 0x00, 0xff, 0xff, 0xcb, 0x77, 0x27, 0x4e, 0xf9, 0x1b, 0x00, 0x00, } func (m *EventBatchSpotExecution) Marshal() (dAtA []byte, err error) { @@ -2574,6 +2681,80 @@ func (m *EventDerivativeMarketPaused) MarshalToSizedBuffer(dAtA []byte) (int, er return len(dAtA) - i, nil } +func (m *EventSettledMarketBalance) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *EventSettledMarketBalance) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EventSettledMarketBalance) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Amount) > 0 { + i -= len(m.Amount) + copy(dAtA[i:], m.Amount) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Amount))) + i-- + dAtA[i] = 0x12 + } + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintEvents(dAtA, i, uint64(len(m.MarketId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *EventNotSettledMarketBalance) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *EventNotSettledMarketBalance) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EventNotSettledMarketBalance) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Amount) > 0 { + i -= len(m.Amount) + copy(dAtA[i:], m.Amount) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Amount))) + i-- + dAtA[i] = 0x12 + } + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintEvents(dAtA, i, uint64(len(m.MarketId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *EventMarketBeyondBankruptcy) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -4223,6 +4404,40 @@ func (m *EventDerivativeMarketPaused) Size() (n int) { return n } +func (m *EventSettledMarketBalance) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.MarketId) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.Amount) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + return n +} + +func (m *EventNotSettledMarketBalance) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.MarketId) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.Amount) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + return n +} + func (m *EventMarketBeyondBankruptcy) Size() (n int) { if m == nil { return 0 @@ -5689,6 +5904,234 @@ func (m *EventDerivativeMarketPaused) Unmarshal(dAtA []byte) error { } return nil } +func (m *EventSettledMarketBalance) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: EventSettledMarketBalance: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: EventSettledMarketBalance: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MarketId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Amount = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *EventNotSettledMarketBalance) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: EventNotSettledMarketBalance: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: EventNotSettledMarketBalance: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MarketId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Amount = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *EventMarketBeyondBankruptcy) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/chain/exchange/types/exchange.pb.go b/chain/exchange/types/exchange.pb.go index ff40e9d8..47a75900 100644 --- a/chain/exchange/types/exchange.pb.go +++ b/chain/exchange/types/exchange.pb.go @@ -512,6 +512,8 @@ type DerivativeMarket struct { Admin string `protobuf:"bytes,18,opt,name=admin,proto3" json:"admin,omitempty"` // level of admin permissions AdminPermissions uint32 `protobuf:"varint,19,opt,name=admin_permissions,json=adminPermissions,proto3" json:"admin_permissions,omitempty"` + // quote token decimals + QuoteDecimals uint32 `protobuf:"varint,20,opt,name=quote_decimals,json=quoteDecimals,proto3" json:"quote_decimals,omitempty"` } func (m *DerivativeMarket) Reset() { *m = DerivativeMarket{} } @@ -590,6 +592,8 @@ type BinaryOptionsMarket struct { MinNotional cosmossdk_io_math.LegacyDec `protobuf:"bytes,18,opt,name=min_notional,json=minNotional,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_notional"` // level of admin permissions AdminPermissions uint32 `protobuf:"varint,19,opt,name=admin_permissions,json=adminPermissions,proto3" json:"admin_permissions,omitempty"` + // quote token decimals + QuoteDecimals uint32 `protobuf:"varint,20,opt,name=quote_decimals,json=quoteDecimals,proto3" json:"quote_decimals,omitempty"` } func (m *BinaryOptionsMarket) Reset() { *m = BinaryOptionsMarket{} } @@ -981,6 +985,10 @@ type SpotMarket struct { Admin string `protobuf:"bytes,12,opt,name=admin,proto3" json:"admin,omitempty"` // level of admin permissions AdminPermissions uint32 `protobuf:"varint,13,opt,name=admin_permissions,json=adminPermissions,proto3" json:"admin_permissions,omitempty"` + // base token decimals + BaseDecimals uint32 `protobuf:"varint,14,opt,name=base_decimals,json=baseDecimals,proto3" json:"base_decimals,omitempty"` + // quote token decimals + QuoteDecimals uint32 `protobuf:"varint,15,opt,name=quote_decimals,json=quoteDecimals,proto3" json:"quote_decimals,omitempty"` } func (m *SpotMarket) Reset() { *m = SpotMarket{} } @@ -1065,6 +1073,20 @@ func (m *SpotMarket) GetAdminPermissions() uint32 { return 0 } +func (m *SpotMarket) GetBaseDecimals() uint32 { + if m != nil { + return m.BaseDecimals + } + return 0 +} + +func (m *SpotMarket) GetQuoteDecimals() uint32 { + if m != nil { + return m.QuoteDecimals + } + return 0 +} + // A subaccount's deposit for a given base currency type Deposit struct { AvailableBalance cosmossdk_io_math.LegacyDec `protobuf:"bytes,1,opt,name=available_balance,json=availableBalance,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"available_balance"` @@ -3280,6 +3302,51 @@ func (m *EffectiveGrant) GetIsValid() bool { return false } +type DenomMinNotional struct { + Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` + MinNotional cosmossdk_io_math.LegacyDec `protobuf:"bytes,2,opt,name=min_notional,json=minNotional,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_notional"` +} + +func (m *DenomMinNotional) Reset() { *m = DenomMinNotional{} } +func (m *DenomMinNotional) String() string { return proto.CompactTextString(m) } +func (*DenomMinNotional) ProtoMessage() {} +func (*DenomMinNotional) Descriptor() ([]byte, []int) { + return fileDescriptor_2116e2804e9c53f9, []int{51} +} +func (m *DenomMinNotional) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *DenomMinNotional) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_DenomMinNotional.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *DenomMinNotional) XXX_Merge(src proto.Message) { + xxx_messageInfo_DenomMinNotional.Merge(m, src) +} +func (m *DenomMinNotional) XXX_Size() int { + return m.Size() +} +func (m *DenomMinNotional) XXX_DiscardUnknown() { + xxx_messageInfo_DenomMinNotional.DiscardUnknown(m) +} + +var xxx_messageInfo_DenomMinNotional proto.InternalMessageInfo + +func (m *DenomMinNotional) GetDenom() string { + if m != nil { + return m.Denom + } + return "" +} + func init() { proto.RegisterEnum("injective.exchange.v1beta1.AtomicMarketOrderAccessLevel", AtomicMarketOrderAccessLevel_name, AtomicMarketOrderAccessLevel_value) proto.RegisterEnum("injective.exchange.v1beta1.MarketStatus", MarketStatus_name, MarketStatus_value) @@ -3337,6 +3404,7 @@ func init() { proto.RegisterType((*GrantAuthorization)(nil), "injective.exchange.v1beta1.GrantAuthorization") proto.RegisterType((*ActiveGrant)(nil), "injective.exchange.v1beta1.ActiveGrant") proto.RegisterType((*EffectiveGrant)(nil), "injective.exchange.v1beta1.EffectiveGrant") + proto.RegisterType((*DenomMinNotional)(nil), "injective.exchange.v1beta1.DenomMinNotional") } func init() { @@ -3344,285 +3412,288 @@ func init() { } var fileDescriptor_2116e2804e9c53f9 = []byte{ - // 4438 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x7c, 0xdb, 0x6f, 0x63, 0x59, - 0x56, 0x77, 0x1d, 0x3b, 0x17, 0x7b, 0xf9, 0x12, 0xe7, 0xe4, 0xe6, 0x24, 0x55, 0x89, 0xdb, 0xd5, - 0x35, 0x9d, 0xae, 0xee, 0x4e, 0xa6, 0xfa, 0xfb, 0x7a, 0xd4, 0xd3, 0xa3, 0xd1, 0xb4, 0x13, 0x27, - 0x55, 0xa6, 0x73, 0x9b, 0xe3, 0xa4, 0xa1, 0x66, 0x34, 0x73, 0xb4, 0x73, 0xce, 0x4e, 0xbc, 0x2b, - 0xe7, 0xe2, 0x3a, 0xfb, 0x38, 0x95, 0x34, 0x42, 0xe2, 0xa1, 0x85, 0x98, 0x00, 0x62, 0x78, 0x40, - 0x48, 0x48, 0x41, 0xc3, 0x03, 0x42, 0xf0, 0x02, 0xef, 0xf0, 0x80, 0x84, 0x80, 0x79, 0x18, 0xa4, - 0x79, 0x40, 0x02, 0x21, 0x31, 0xa0, 0x6e, 0x24, 0x10, 0x9a, 0x3f, 0x01, 0x21, 0xb4, 0x2f, 0xe7, - 0x62, 0x3b, 0x71, 0xec, 0x24, 0x03, 0x03, 0xbc, 0x54, 0x79, 0x5f, 0xd6, 0x6f, 0xed, 0xbd, 0xd6, - 0xda, 0x6b, 0xad, 0x7d, 0x39, 0x81, 0x37, 0x89, 0xf3, 0x02, 0x1b, 0x3e, 0x39, 0xc1, 0x2b, 0xf8, - 0xd4, 0x68, 0x20, 0xe7, 0x08, 0xaf, 0x9c, 0x3c, 0x39, 0xc0, 0x3e, 0x7a, 0x12, 0x56, 0x2c, 0x37, - 0x3d, 0xd7, 0x77, 0xd5, 0xb9, 0xb0, 0xeb, 0x72, 0xd8, 0x22, 0xbb, 0xce, 0x4d, 0x1e, 0xb9, 0x47, - 0x2e, 0xef, 0xb6, 0xc2, 0x7e, 0x09, 0x8a, 0xb9, 0x05, 0xc3, 0xa5, 0xb6, 0x4b, 0x57, 0x0e, 0x10, - 0x8d, 0x50, 0x0d, 0x97, 0x38, 0xb2, 0xfd, 0x51, 0xc4, 0xdc, 0xf5, 0x90, 0x61, 0x45, 0x9d, 0x44, - 0x51, 0x76, 0x1b, 0x47, 0x36, 0x71, 0xdc, 0x15, 0xfe, 0xaf, 0xa8, 0x2a, 0xff, 0xc3, 0x14, 0x8c, - 0xec, 0x22, 0x0f, 0xd9, 0x54, 0xc5, 0xb0, 0x48, 0x9b, 0xae, 0xaf, 0xdb, 0xc8, 0x3b, 0xc6, 0xbe, - 0x4e, 0x1c, 0xea, 0x23, 0xc7, 0xd7, 0x2d, 0x42, 0x7d, 0xe2, 0x1c, 0xe9, 0x87, 0x18, 0x17, 0x95, - 0x92, 0xb2, 0x94, 0x79, 0x77, 0x76, 0x59, 0x0c, 0x67, 0x99, 0x0d, 0x27, 0x18, 0xf9, 0xf2, 0x9a, - 0x4b, 0x9c, 0xd5, 0xa1, 0xef, 0xff, 0x68, 0xf1, 0x9e, 0x36, 0xcf, 0x70, 0xb6, 0x38, 0x4c, 0x4d, - 0xa0, 0x6c, 0x0a, 0x90, 0x0d, 0x8c, 0xd5, 0x97, 0xf0, 0xc8, 0xc4, 0x1e, 0x39, 0x41, 0x6c, 0xb8, - 0xbd, 0x98, 0x25, 0xfa, 0x63, 0xf6, 0x5a, 0x84, 0x76, 0x15, 0x4b, 0x04, 0xf3, 0x26, 0x3e, 0x44, - 0x2d, 0xcb, 0xd7, 0xe5, 0x0c, 0x8f, 0xb1, 0xc7, 0x78, 0xe8, 0x1e, 0xf2, 0x71, 0x31, 0x59, 0x52, - 0x96, 0xd2, 0xab, 0x0f, 0x19, 0xda, 0xdf, 0xff, 0x68, 0x71, 0x5e, 0xf0, 0xa3, 0xe6, 0xf1, 0x32, - 0x71, 0x57, 0x6c, 0xe4, 0x37, 0x96, 0x37, 0xf1, 0x11, 0x32, 0xce, 0xaa, 0xd8, 0xd0, 0x66, 0x24, - 0x4e, 0x9d, 0x4f, 0xf0, 0x18, 0x7b, 0x1b, 0x18, 0x6b, 0xc8, 0xef, 0x66, 0xe1, 0xb7, 0xb3, 0x18, - 0xba, 0x19, 0x8b, 0xbd, 0x38, 0x0b, 0x1b, 0x5e, 0x0b, 0x58, 0xb4, 0x09, 0xb0, 0x8d, 0xd1, 0x70, - 0xff, 0x8c, 0x1e, 0x48, 0xb4, 0x6a, 0x4c, 0x7e, 0xd7, 0xb2, 0xeb, 0x98, 0xd7, 0xc8, 0x6d, 0xd8, - 0xb5, 0xcd, 0xce, 0x84, 0xfb, 0x01, 0x3b, 0xe2, 0x10, 0x9f, 0x20, 0x8b, 0xd9, 0xc6, 0x11, 0x71, - 0x18, 0x23, 0xe2, 0x16, 0x47, 0xfb, 0xe7, 0x34, 0x2b, 0x81, 0x6a, 0x02, 0x67, 0x8b, 0xc3, 0x68, - 0x0c, 0x45, 0xb5, 0xa0, 0x14, 0x70, 0xb1, 0x11, 0x71, 0x7c, 0xec, 0x20, 0xc7, 0xc0, 0xed, 0x9c, - 0x52, 0x83, 0xcf, 0x69, 0x2b, 0xc2, 0x8a, 0x73, 0x7b, 0x1f, 0x8a, 0x01, 0xb7, 0xc3, 0x96, 0x63, - 0x32, 0xc3, 0x66, 0xfd, 0xbc, 0x13, 0x64, 0x15, 0xd3, 0x25, 0x65, 0x29, 0xa9, 0x4d, 0xcb, 0xf6, - 0x0d, 0xd1, 0x5c, 0x93, 0xad, 0xea, 0x9b, 0x50, 0x08, 0x28, 0xec, 0x96, 0xe5, 0x93, 0xa6, 0x85, - 0x8b, 0xc0, 0x29, 0xc6, 0x64, 0xfd, 0x96, 0xac, 0x56, 0x7f, 0x0e, 0xa6, 0x3d, 0x6c, 0xa1, 0x33, - 0xa9, 0x16, 0xda, 0x40, 0x9e, 0x54, 0x4e, 0xa6, 0xff, 0x89, 0x4c, 0x48, 0x88, 0x0d, 0x8c, 0xeb, - 0x0c, 0x80, 0xab, 0x84, 0xc0, 0x62, 0x30, 0xfc, 0x86, 0xdb, 0xf2, 0xac, 0xb3, 0x70, 0x16, 0x0c, - 0x5e, 0x37, 0x50, 0xb3, 0x98, 0xed, 0x9f, 0x45, 0xb0, 0x3e, 0x9e, 0x71, 0x28, 0x39, 0x61, 0xc6, - 0x67, 0x0d, 0x35, 0xe3, 0xda, 0x97, 0xac, 0xb8, 0xa0, 0x30, 0xf5, 0xc5, 0x54, 0x72, 0x83, 0x6b, - 0x5f, 0xf0, 0xa9, 0x49, 0x18, 0x3e, 0xa1, 0x2a, 0x2c, 0xda, 0xe8, 0x34, 0x6e, 0xce, 0xae, 0x67, - 0x62, 0x4f, 0xa7, 0xc4, 0xc4, 0xba, 0xe1, 0xb6, 0x1c, 0xbf, 0x98, 0x2f, 0x29, 0x4b, 0x39, 0x6d, - 0xde, 0x46, 0xa7, 0x91, 0x9d, 0xee, 0xb0, 0x4e, 0x75, 0x62, 0xe2, 0x35, 0xd6, 0x45, 0xa5, 0xf0, - 0x06, 0x71, 0x5e, 0xe8, 0x1e, 0x7e, 0x85, 0x3c, 0x53, 0xa7, 0x6c, 0x45, 0x98, 0xba, 0x87, 0x5f, - 0xb6, 0x88, 0x87, 0x6d, 0xec, 0xf8, 0xba, 0xdf, 0xf0, 0x30, 0x6d, 0xb8, 0x96, 0x59, 0x1c, 0xe3, - 0xc3, 0x7e, 0x20, 0x87, 0x3d, 0xd5, 0x3d, 0xec, 0x9a, 0xe3, 0x6b, 0x0f, 0x89, 0xf3, 0x42, 0xe3, - 0x60, 0x75, 0x8e, 0xa5, 0x45, 0x50, 0x7b, 0x01, 0x92, 0xfa, 0x14, 0x4a, 0xbe, 0x87, 0x84, 0xf0, - 0x79, 0x5f, 0xaa, 0x9f, 0x60, 0xe1, 0x2b, 0xcd, 0x16, 0xb7, 0x5b, 0xa7, 0x58, 0xe0, 0x06, 0xf2, - 0x40, 0xf6, 0x13, 0x90, 0xf4, 0x63, 0xd1, 0xab, 0x2a, 0x3b, 0x31, 0x49, 0x5b, 0xe4, 0x65, 0x8b, - 0x98, 0xc8, 0x77, 0xbd, 0x70, 0x12, 0x91, 0xd1, 0x8c, 0x0f, 0x20, 0xe9, 0x08, 0x48, 0x8e, 0x3f, - 0x34, 0x9d, 0x53, 0x78, 0xf3, 0x80, 0x38, 0xc8, 0x3b, 0xd3, 0xdd, 0x26, 0x63, 0x4b, 0x7b, 0x39, - 0x7a, 0xb5, 0x3f, 0x47, 0xff, 0xba, 0x40, 0xdc, 0x11, 0x80, 0x57, 0xf9, 0xfa, 0x5f, 0x54, 0xa0, - 0x84, 0x7c, 0xd7, 0x26, 0x46, 0xc0, 0x52, 0xe8, 0x18, 0x19, 0x06, 0xa6, 0x54, 0xb7, 0xf0, 0x09, - 0xb6, 0x8a, 0x13, 0x25, 0x65, 0x29, 0xff, 0xee, 0xfb, 0xcb, 0x57, 0x07, 0xe2, 0xe5, 0x0a, 0xc7, - 0x10, 0x5c, 0xb8, 0x01, 0x54, 0x38, 0xc0, 0x26, 0xa3, 0xd7, 0xee, 0xa3, 0x1e, 0xad, 0xea, 0x29, - 0xbc, 0xc1, 0x63, 0xc0, 0x65, 0xc3, 0x60, 0x4b, 0x54, 0xae, 0x68, 0x82, 0xbd, 0xe2, 0x64, 0xff, - 0xd2, 0x2e, 0x33, 0xcc, 0xae, 0x51, 0x6d, 0x60, 0xbc, 0x15, 0xc2, 0xa9, 0x9f, 0x2a, 0xf0, 0x4e, - 0xcc, 0xba, 0xfb, 0x18, 0xc0, 0x54, 0xff, 0x03, 0x58, 0x8a, 0x90, 0xaf, 0x19, 0xc6, 0xaf, 0x28, - 0xf0, 0xa4, 0x43, 0xfd, 0x7d, 0x0c, 0x65, 0xba, 0xff, 0xa1, 0xbc, 0xd5, 0x66, 0x0a, 0xd7, 0x8c, - 0xe6, 0xdb, 0x30, 0x6b, 0x13, 0x87, 0xd8, 0xc8, 0xd2, 0x79, 0xce, 0x63, 0xb8, 0x56, 0x14, 0xc0, - 0x66, 0xfa, 0x67, 0x3a, 0x2d, 0x51, 0x76, 0x25, 0x48, 0x10, 0xb9, 0xbe, 0x09, 0x6f, 0x11, 0x1a, - 0x1a, 0x76, 0x77, 0x6e, 0x63, 0xa1, 0x96, 0x63, 0x34, 0x74, 0xec, 0xa0, 0x03, 0x0b, 0x9b, 0xc5, - 0x62, 0x49, 0x59, 0x4a, 0x69, 0x5f, 0x20, 0x54, 0xda, 0x6e, 0xb5, 0x23, 0x7d, 0xd9, 0xe4, 0xdd, - 0xd7, 0x45, 0x6f, 0xe6, 0xb2, 0x9a, 0x2e, 0xf5, 0x75, 0xd7, 0xb1, 0xce, 0x74, 0xdb, 0x35, 0xb1, - 0xde, 0xc0, 0xe4, 0xa8, 0x11, 0x77, 0x32, 0xb3, 0x7c, 0xd9, 0xcf, 0xb3, 0x6e, 0x3b, 0x8e, 0x75, - 0xb6, 0xe5, 0x9a, 0xf8, 0x19, 0xef, 0x13, 0x79, 0x8f, 0x23, 0x78, 0x22, 0x43, 0x9c, 0x89, 0x0d, - 0x0f, 0x23, 0x8a, 0xf5, 0xa6, 0x47, 0x0c, 0xac, 0xfb, 0xc4, 0xc6, 0xd4, 0x47, 0x76, 0x33, 0xc2, - 0xd3, 0x29, 0x36, 0x5c, 0xc7, 0xa4, 0xc5, 0x39, 0x8e, 0xfb, 0xb6, 0x20, 0xac, 0x4a, 0xba, 0x5d, - 0x46, 0xb6, 0x17, 0x50, 0x85, 0x1c, 0xea, 0x82, 0x46, 0x7d, 0x03, 0xc6, 0x82, 0x95, 0xa4, 0x23, - 0xd3, 0x26, 0x0e, 0x2d, 0xce, 0x97, 0x92, 0x4b, 0x69, 0x2d, 0x1f, 0x54, 0x57, 0x78, 0xad, 0xba, - 0x09, 0x13, 0xcc, 0x89, 0xa2, 0x96, 0xc1, 0x54, 0xa8, 0x33, 0xb7, 0xcc, 0xe2, 0xc9, 0xfd, 0x7e, - 0x1c, 0x66, 0x81, 0x38, 0x2f, 0x2a, 0x82, 0x70, 0x0b, 0x9d, 0xae, 0xa1, 0xe6, 0x07, 0xc5, 0x7f, - 0xfd, 0xde, 0xa2, 0x72, 0xfe, 0x2f, 0x7f, 0xfc, 0x38, 0xe4, 0xbe, 0x22, 0x92, 0xda, 0xf2, 0xa7, - 0x0a, 0x4c, 0x08, 0xb9, 0xb6, 0x1b, 0xc5, 0x3c, 0xa4, 0x03, 0x8f, 0x64, 0xf2, 0xb4, 0x36, 0xad, - 0xa5, 0x44, 0x45, 0xcd, 0x54, 0x7f, 0x06, 0xf2, 0x1d, 0xb6, 0x99, 0xe8, 0xdf, 0x4c, 0x72, 0x87, - 0x71, 0x46, 0x1f, 0x0c, 0xfd, 0xf2, 0xf7, 0x16, 0xef, 0x95, 0x7f, 0x9c, 0x82, 0x42, 0xa7, 0xa2, - 0xd5, 0x69, 0x18, 0xf1, 0x89, 0x71, 0x8c, 0x3d, 0x39, 0x00, 0x59, 0x52, 0x17, 0x21, 0x23, 0xd2, - 0x76, 0x9d, 0xb9, 0x42, 0xc1, 0x5b, 0x03, 0x51, 0xb5, 0x8a, 0x28, 0x56, 0x5f, 0x83, 0xac, 0xec, - 0xf0, 0xb2, 0xe5, 0x06, 0x09, 0xac, 0x26, 0x89, 0xbe, 0xce, 0xaa, 0xd4, 0xf5, 0x10, 0xc3, 0x3f, - 0x6b, 0x8a, 0xfc, 0x33, 0xff, 0xee, 0xeb, 0x31, 0x87, 0x27, 0x37, 0x06, 0x81, 0xbb, 0xdb, 0xe1, - 0xc5, 0xbd, 0xb3, 0x26, 0x0e, 0x38, 0xb1, 0xdf, 0xea, 0x32, 0x4c, 0x48, 0x18, 0x6a, 0x20, 0x0b, - 0xeb, 0x87, 0xc8, 0xf0, 0x5d, 0x8f, 0x67, 0x99, 0x39, 0x6d, 0x5c, 0x34, 0xd5, 0x59, 0xcb, 0x06, - 0x6f, 0x60, 0x43, 0xe7, 0x43, 0xd2, 0x4d, 0xec, 0xb8, 0xb6, 0x48, 0x0f, 0x35, 0xe0, 0x55, 0x55, - 0x56, 0xd3, 0x2e, 0xf7, 0xd1, 0x0e, 0xb9, 0xef, 0xc3, 0xe4, 0xa5, 0xb9, 0xdf, 0x00, 0x19, 0x99, - 0x4a, 0xba, 0x93, 0xbe, 0x6f, 0x41, 0xf1, 0xca, 0x64, 0x2f, 0x3d, 0xc8, 0xfa, 0xbf, 0x3c, 0xcb, - 0xab, 0x41, 0xbe, 0x23, 0x09, 0x87, 0xfe, 0x41, 0xb3, 0x76, 0x3c, 0x09, 0xae, 0x41, 0xbe, 0x23, - 0xc1, 0x1e, 0x20, 0x87, 0xcb, 0xfa, 0x71, 0xa8, 0xab, 0xd3, 0xc2, 0xec, 0x2d, 0xd3, 0xc2, 0x12, - 0x64, 0x08, 0xdd, 0xc5, 0x5e, 0x13, 0xfb, 0x2d, 0x64, 0xf1, 0xd4, 0x2c, 0xa5, 0xc5, 0xab, 0xd4, - 0x0f, 0x61, 0x84, 0xfa, 0xc8, 0x6f, 0x51, 0x9e, 0x4e, 0xe5, 0xdf, 0x5d, 0xea, 0x15, 0x68, 0xc5, - 0x62, 0xa8, 0xf3, 0xfe, 0x9a, 0xa4, 0x53, 0x35, 0x98, 0xb0, 0x89, 0x13, 0x3a, 0x29, 0xe3, 0x58, - 0xa7, 0xe4, 0x13, 0x2c, 0xf3, 0xa9, 0xbe, 0x86, 0x5e, 0xb0, 0x89, 0x23, 0x9d, 0x95, 0x71, 0x5c, - 0x27, 0x9f, 0x70, 0x89, 0x30, 0xcc, 0x97, 0x2d, 0xe4, 0xf8, 0xc4, 0x3f, 0x8b, 0xc1, 0x16, 0x06, - 0x90, 0x88, 0x4d, 0x9c, 0xaf, 0x4b, 0x84, 0x10, 0x79, 0x03, 0xb2, 0x0c, 0xd9, 0x71, 0x99, 0x4b, - 0x42, 0xd6, 0x20, 0x39, 0x54, 0xc6, 0x26, 0xce, 0xb6, 0xa4, 0x53, 0x27, 0x61, 0x98, 0x3b, 0x4d, - 0x9e, 0x11, 0xa5, 0x35, 0x51, 0x50, 0xdf, 0x82, 0x71, 0xfe, 0x43, 0x6f, 0x62, 0xcf, 0x26, 0x94, - 0xb2, 0x90, 0xc7, 0x33, 0x98, 0x9c, 0x56, 0xe0, 0x0d, 0xbb, 0x51, 0xbd, 0x74, 0x37, 0x7f, 0x9b, - 0x82, 0x89, 0xd5, 0xee, 0x6c, 0xe9, 0x4a, 0x8f, 0xf3, 0x10, 0x72, 0xc1, 0x32, 0x3f, 0xb3, 0x0f, - 0x5c, 0x4b, 0xfa, 0x1c, 0xe9, 0x65, 0xea, 0xbc, 0x8e, 0xf9, 0x76, 0xd9, 0xa9, 0xe9, 0xb9, 0x27, - 0xc4, 0xc4, 0x9e, 0x74, 0x3c, 0x79, 0x51, 0xbd, 0x2b, 0x6b, 0xff, 0xbb, 0x7c, 0xcf, 0x13, 0x98, - 0xc4, 0xa7, 0x4d, 0x22, 0xf2, 0xdc, 0x28, 0xb2, 0x71, 0x27, 0x94, 0xd4, 0x26, 0xa2, 0xb6, 0x30, - 0x7c, 0x31, 0x12, 0x8a, 0x7d, 0xdf, 0x92, 0x79, 0x7b, 0x48, 0x32, 0x2a, 0x48, 0xa2, 0xb6, 0x88, - 0x24, 0xd4, 0x51, 0x2a, 0xae, 0xa3, 0x0e, 0xbf, 0x97, 0xee, 0xed, 0xf7, 0xa0, 0xc3, 0xef, 0x75, - 0x7b, 0x90, 0xcc, 0xdd, 0x79, 0x90, 0xec, 0xdd, 0x7b, 0x90, 0xdc, 0x2d, 0x3d, 0xc8, 0xff, 0x35, - 0xff, 0xb0, 0x0d, 0x85, 0x98, 0x99, 0xf1, 0x41, 0xc7, 0x7c, 0x84, 0x72, 0x1d, 0xe6, 0x58, 0x44, - 0xcc, 0x47, 0xdc, 0xe5, 0x6f, 0xd4, 0x1b, 0xfa, 0x9b, 0x1b, 0x78, 0x96, 0x7f, 0x4e, 0xc0, 0xcc, - 0x3a, 0x5b, 0x49, 0x67, 0x1b, 0x2d, 0xbf, 0xe5, 0xe1, 0x70, 0x1f, 0x76, 0xe8, 0xf6, 0xce, 0xa9, - 0xae, 0x5a, 0x9d, 0x89, 0xab, 0x57, 0xe7, 0x17, 0x61, 0xd2, 0x7f, 0x85, 0x9a, 0x6c, 0x8b, 0xed, - 0xc5, 0x57, 0x67, 0x92, 0x93, 0xa8, 0xac, 0xad, 0xce, 0x9a, 0x22, 0x8a, 0x57, 0xf0, 0x85, 0x38, - 0x93, 0x88, 0x58, 0x18, 0x8a, 0xd1, 0xb2, 0x5b, 0x16, 0xcf, 0xc0, 0x06, 0x39, 0x90, 0x2b, 0xc7, - 0xc6, 0x16, 0xb0, 0xe4, 0x7a, 0x58, 0x0b, 0xe1, 0x2e, 0xd5, 0xf0, 0x00, 0x47, 0x71, 0x9d, 0x1a, - 0x2e, 0xff, 0x65, 0x02, 0x26, 0xc2, 0x78, 0xda, 0xaf, 0x88, 0xbf, 0x01, 0x33, 0x57, 0x9d, 0xd3, - 0x0c, 0x90, 0xbf, 0x4e, 0x36, 0x2e, 0x3b, 0xa0, 0xd9, 0x87, 0xc9, 0x4b, 0x0f, 0x66, 0x06, 0x38, - 0x3b, 0x55, 0x1b, 0xdd, 0x27, 0x32, 0xff, 0x1f, 0xa6, 0x1d, 0x7c, 0x1a, 0x1d, 0x8f, 0x45, 0x4a, - 0x1e, 0xe2, 0x4a, 0x9e, 0x64, 0xad, 0x72, 0x28, 0x91, 0x9a, 0x63, 0xa7, 0x63, 0xe1, 0x79, 0xda, - 0x70, 0xdb, 0xe9, 0x58, 0x70, 0x90, 0x56, 0xfe, 0x5c, 0x81, 0xe9, 0x0e, 0x41, 0x4a, 0x38, 0x55, - 0x03, 0x35, 0x32, 0x88, 0x60, 0x04, 0x42, 0xa8, 0xfd, 0x4d, 0x68, 0x3c, 0x22, 0x0f, 0x30, 0xb7, - 0xa1, 0x10, 0xc3, 0x14, 0x76, 0x30, 0x80, 0xec, 0xc7, 0x22, 0x62, 0xb1, 0xd2, 0x1f, 0x41, 0xde, - 0x42, 0xb4, 0xdb, 0xf8, 0x73, 0xac, 0x36, 0x14, 0x48, 0xf9, 0xd7, 0x14, 0x58, 0xe8, 0xdc, 0x5e, - 0xd4, 0x43, 0x93, 0xba, 0xde, 0x72, 0x2e, 0x33, 0xdf, 0xc4, 0x2d, 0xcc, 0xf7, 0xab, 0x30, 0xb9, - 0x7d, 0x99, 0xe2, 0x1e, 0x41, 0x9e, 0xab, 0x3b, 0x9a, 0x8e, 0x22, 0xa6, 0xc3, 0x6a, 0xa3, 0xe9, - 0xfc, 0x9b, 0x02, 0xf9, 0x2d, 0x62, 0x72, 0xac, 0x8a, 0x63, 0xee, 0xed, 0xac, 0xaa, 0x1f, 0x42, - 0xda, 0x26, 0xa6, 0x1c, 0x9a, 0xd2, 0xbf, 0xef, 0x4c, 0xd9, 0x12, 0x87, 0x45, 0xc6, 0x03, 0x66, - 0xb6, 0x07, 0xad, 0xb3, 0xae, 0x19, 0x5e, 0x0b, 0x93, 0x65, 0xa4, 0xab, 0xad, 0x33, 0x01, 0xf5, - 0x11, 0x8c, 0x71, 0x28, 0x8a, 0x2d, 0x4b, 0x62, 0x25, 0xfb, 0xc7, 0xca, 0x31, 0xda, 0x3a, 0xb6, - 0x2c, 0x21, 0xab, 0x1f, 0x0f, 0x03, 0xd4, 0xc3, 0xfb, 0x92, 0x2b, 0x53, 0xb4, 0x07, 0x00, 0x6c, - 0x37, 0x28, 0x13, 0x0c, 0x91, 0x9f, 0xa5, 0x59, 0x8d, 0xc8, 0x2f, 0x3a, 0x12, 0x90, 0x64, 0x57, - 0x02, 0xd2, 0x9d, 0x63, 0x0c, 0xdd, 0x5d, 0x8e, 0x31, 0x7c, 0xf7, 0x39, 0xc6, 0xc8, 0x2d, 0x73, - 0x8c, 0x9e, 0x1b, 0xcd, 0x28, 0x01, 0x49, 0xdd, 0x6d, 0x02, 0x92, 0xfe, 0xc9, 0x24, 0x20, 0x70, - 0xc7, 0x1b, 0x94, 0xcc, 0x6d, 0x37, 0x28, 0xd9, 0x6b, 0x37, 0x28, 0xb9, 0xcb, 0xd3, 0x88, 0xf2, - 0xef, 0x29, 0x30, 0x5a, 0xc5, 0x4d, 0x97, 0x12, 0x5f, 0xdd, 0x85, 0x71, 0x74, 0x82, 0x88, 0x85, - 0x0e, 0xf8, 0x59, 0x87, 0xc5, 0x76, 0xd6, 0x83, 0x38, 0xe0, 0x42, 0x48, 0xbd, 0x2a, 0x88, 0xd5, - 0x67, 0x90, 0xf3, 0x5d, 0x1f, 0x59, 0x21, 0x5a, 0x62, 0x10, 0xcb, 0x64, 0x94, 0x12, 0xa9, 0xfc, - 0x36, 0x4c, 0xd6, 0x5b, 0x07, 0xc8, 0xe0, 0xd7, 0x02, 0x7b, 0x1e, 0x32, 0xf1, 0xb6, 0xcb, 0x38, - 0x4c, 0xc2, 0xb0, 0xe3, 0x06, 0xe3, 0xcc, 0x69, 0xa2, 0xc0, 0xc2, 0x4c, 0x9a, 0x1f, 0x3d, 0x72, - 0x5f, 0xfb, 0x10, 0x72, 0x34, 0xa4, 0x8d, 0xfc, 0x6d, 0x36, 0xaa, 0xac, 0x99, 0xac, 0x13, 0x5f, - 0x3f, 0xd8, 0x20, 0x4d, 0x82, 0x1d, 0x3f, 0xd8, 0x73, 0x1d, 0x62, 0xac, 0x05, 0x75, 0xea, 0x97, - 0x61, 0xb8, 0xd3, 0xbf, 0x5c, 0x3b, 0x0f, 0x41, 0xa1, 0x7e, 0x0d, 0x52, 0x81, 0x25, 0x0d, 0xb2, - 0xd4, 0x43, 0x22, 0xb5, 0x00, 0x49, 0x83, 0x98, 0x62, 0x6d, 0x6b, 0xec, 0x67, 0xf9, 0xd3, 0x04, - 0xa4, 0x99, 0xab, 0xe2, 0x33, 0xbd, 0xee, 0x08, 0x0d, 0xc4, 0x21, 0x2f, 0x71, 0x0e, 0x5d, 0x79, - 0x95, 0xfb, 0xa8, 0xd7, 0x2a, 0x0b, 0xa5, 0x27, 0x4f, 0xfb, 0xd3, 0x6e, 0x28, 0xce, 0x6a, 0x80, - 0xc5, 0xb7, 0x93, 0x49, 0xbe, 0x62, 0xaf, 0xc7, 0xe2, 0xfb, 0x49, 0x81, 0xc2, 0xb7, 0x93, 0xcc, - 0x34, 0x3c, 0x72, 0x74, 0x84, 0x3d, 0xe9, 0xb2, 0x87, 0x06, 0x70, 0xff, 0x92, 0x52, 0x78, 0xec, - 0x1f, 0x24, 0x20, 0xcf, 0xc4, 0xb0, 0x49, 0x6c, 0x22, 0x65, 0xd1, 0x3e, 0x5d, 0xe5, 0x0e, 0xa7, - 0x9b, 0xb8, 0xe1, 0x74, 0xbf, 0x06, 0xa9, 0x43, 0x62, 0xf1, 0xc5, 0x31, 0x88, 0xf1, 0x84, 0x44, - 0x77, 0x27, 0x2f, 0x16, 0xba, 0xc4, 0x84, 0x1a, 0x88, 0x36, 0xb8, 0x3d, 0x65, 0xe5, 0x48, 0x9f, - 0x21, 0xda, 0x28, 0xff, 0x4d, 0x02, 0xc6, 0xa2, 0x00, 0x78, 0xf7, 0xf2, 0xdc, 0x80, 0xac, 0xf4, - 0x06, 0x3a, 0x3f, 0x2f, 0x1f, 0xc0, 0x25, 0x64, 0x24, 0xe1, 0x33, 0xd7, 0x32, 0x3b, 0xa6, 0x91, - 0xec, 0x98, 0x46, 0x87, 0xda, 0x86, 0xee, 0xca, 0x4a, 0x87, 0x6f, 0x6a, 0xa5, 0x7f, 0x95, 0x80, - 0xb1, 0x8e, 0x3b, 0xcc, 0xff, 0x69, 0x4b, 0xf6, 0x2b, 0x30, 0x22, 0x0e, 0x6b, 0x07, 0x71, 0x60, - 0x92, 0xe4, 0x0e, 0x25, 0xf9, 0xef, 0x49, 0x98, 0x8f, 0x62, 0x01, 0x1f, 0xe9, 0x81, 0xeb, 0x1e, - 0x6f, 0x61, 0x1f, 0x99, 0xc8, 0x47, 0xea, 0x97, 0x61, 0xf6, 0x04, 0x39, 0x6c, 0xdd, 0xe8, 0x16, - 0x73, 0x09, 0xf2, 0x7a, 0x4b, 0x5c, 0x28, 0x8b, 0x30, 0x31, 0x2d, 0x3b, 0x44, 0x2e, 0x43, 0xdc, - 0x25, 0x7f, 0x08, 0x0f, 0x3c, 0x6c, 0xb6, 0x0c, 0x2c, 0x2e, 0x78, 0xba, 0xc9, 0x13, 0x9c, 0x7c, - 0x56, 0x74, 0xda, 0x71, 0xac, 0xb3, 0x4e, 0x84, 0x06, 0x2c, 0xa0, 0xa3, 0x23, 0x0f, 0x1f, 0xb1, - 0xad, 0x5e, 0x1c, 0x2b, 0x74, 0xfe, 0x03, 0xac, 0xfe, 0xf9, 0x10, 0x4a, 0x0b, 0x19, 0x06, 0xc9, - 0x84, 0x8a, 0x60, 0x2e, 0xe2, 0x14, 0x4c, 0xf8, 0x26, 0x21, 0xa6, 0x18, 0xc2, 0x7c, 0x2c, 0x50, - 0x42, 0x16, 0xeb, 0xb0, 0x18, 0x00, 0x1b, 0xae, 0x63, 0x12, 0x91, 0x76, 0xb4, 0x09, 0x44, 0x1c, - 0xff, 0xdd, 0x97, 0xdd, 0xd6, 0xa2, 0x5e, 0x31, 0x99, 0x6c, 0xc2, 0xc3, 0xb8, 0x24, 0xae, 0x82, - 0x1a, 0xe1, 0x50, 0x8b, 0x91, 0x6c, 0x2f, 0x45, 0x2b, 0xff, 0xb9, 0x02, 0x63, 0x1d, 0xea, 0x8f, - 0xe2, 0xb2, 0x72, 0xab, 0xb8, 0x9c, 0xb8, 0x49, 0x5c, 0x2e, 0x43, 0x96, 0xd0, 0x48, 0x3f, 0x5c, - 0xbf, 0x29, 0xad, 0xad, 0x2e, 0x88, 0xdd, 0x43, 0x51, 0xec, 0x7e, 0x05, 0x13, 0x1d, 0x93, 0xa8, - 0x32, 0xdb, 0xad, 0xc0, 0x30, 0x17, 0x89, 0xf4, 0xb1, 0x6f, 0xf5, 0x5a, 0xa3, 0x1d, 0xf4, 0x9a, - 0xa0, 0xec, 0xf0, 0x8b, 0x89, 0x4e, 0xf7, 0xfe, 0xeb, 0x49, 0x98, 0x8c, 0xfc, 0xd0, 0x4f, 0x75, - 0xcc, 0x8c, 0xfc, 0x4d, 0x72, 0x70, 0x7f, 0x13, 0x0f, 0xb8, 0x43, 0x77, 0x12, 0x70, 0x87, 0xef, - 0x26, 0xe0, 0x8e, 0x74, 0x6a, 0xe4, 0x37, 0x93, 0x30, 0xd5, 0x79, 0x5a, 0xf0, 0xbf, 0x52, 0x25, - 0x55, 0xc8, 0xc8, 0xcb, 0x3e, 0x1e, 0xf8, 0x07, 0xd0, 0x0a, 0x08, 0x3a, 0x1e, 0xf7, 0xff, 0xcb, - 0xf4, 0xf2, 0x17, 0x09, 0x48, 0xed, 0xb2, 0x8d, 0x11, 0x71, 0x1d, 0x75, 0x1a, 0x46, 0x08, 0xdd, - 0x74, 0xe5, 0x89, 0x54, 0x4a, 0x93, 0xa5, 0xdb, 0xbb, 0x8f, 0x2a, 0x64, 0xb0, 0xe3, 0x7b, 0x67, - 0xfa, 0xc0, 0x1b, 0x0b, 0xe0, 0x74, 0x62, 0x2a, 0xb7, 0x0a, 0xcd, 0xdf, 0x82, 0x62, 0xf7, 0xc9, - 0x9b, 0xce, 0xd1, 0x07, 0x39, 0x4a, 0x98, 0xee, 0x3a, 0x7f, 0x5b, 0x67, 0x10, 0xe5, 0x1a, 0x4c, - 0xc6, 0x8c, 0xba, 0xe6, 0x98, 0xc4, 0x40, 0xbe, 0x7b, 0x4d, 0xf6, 0x33, 0x09, 0xc3, 0x84, 0xae, - 0xb6, 0x84, 0x50, 0x53, 0x9a, 0x28, 0x94, 0xff, 0x3a, 0x01, 0x29, 0xbe, 0xf9, 0xdb, 0x74, 0xdb, - 0x45, 0xaf, 0xdc, 0x44, 0xf4, 0x61, 0xd4, 0x48, 0x0c, 0x1c, 0x35, 0xba, 0xb6, 0x94, 0x22, 0xff, - 0x6c, 0xdf, 0x52, 0xbe, 0x07, 0xc9, 0x43, 0x3c, 0x90, 0xf7, 0x61, 0xfd, 0xaf, 0xc9, 0xcf, 0xd5, - 0xf7, 0x61, 0xaa, 0x6d, 0xa3, 0xaa, 0x23, 0xd3, 0xf4, 0x30, 0xa5, 0xc2, 0x80, 0xf9, 0xc2, 0x57, - 0xb4, 0x89, 0xf8, 0xb6, 0xb5, 0x22, 0x3a, 0x04, 0x51, 0x68, 0x34, 0x8a, 0x42, 0xbf, 0x9d, 0x80, - 0x5c, 0x60, 0xe2, 0x55, 0x6c, 0xf9, 0x48, 0x9d, 0x81, 0x51, 0x42, 0x75, 0xab, 0xdb, 0xd0, 0x35, - 0x50, 0xf1, 0x29, 0x36, 0x5a, 0xfc, 0x28, 0xff, 0x26, 0x26, 0x3f, 0x1e, 0x92, 0x87, 0xf9, 0xc5, - 0x36, 0x14, 0x22, 0xcc, 0xc1, 0xfd, 0xca, 0x58, 0x48, 0x2c, 0xee, 0xff, 0xd5, 0x4d, 0x88, 0xaa, - 0xba, 0x76, 0x49, 0xd7, 0xc2, 0xe5, 0x43, 0x5a, 0x91, 0x67, 0xfe, 0x6e, 0x12, 0xd4, 0xd8, 0xeb, - 0xd8, 0xc0, 0xec, 0x2e, 0x3d, 0x4d, 0xe8, 0x54, 0xfd, 0x2e, 0xe4, 0x9b, 0x52, 0xae, 0xba, 0xc9, - 0x04, 0x2b, 0x13, 0xf8, 0x37, 0x7b, 0x79, 0xdc, 0x36, 0x4d, 0x68, 0xb9, 0x66, 0x9b, 0x62, 0xbe, - 0x02, 0x23, 0x4d, 0x74, 0xe6, 0xb6, 0xfc, 0x81, 0x3c, 0xaf, 0x20, 0xf9, 0xe9, 0xb7, 0x44, 0x36, - 0xc2, 0xa6, 0x63, 0x0d, 0xf2, 0xb4, 0x84, 0xf5, 0x2f, 0xff, 0x3c, 0xa8, 0x51, 0x1a, 0x14, 0x3a, - 0xeb, 0x0f, 0x21, 0x15, 0x08, 0x4f, 0x46, 0xcd, 0xd7, 0xfb, 0x91, 0xbb, 0x16, 0x52, 0x75, 0x2b, - 0x39, 0xd1, 0xad, 0xe4, 0xf2, 0x2b, 0x18, 0x8f, 0x98, 0x07, 0x87, 0x68, 0x7d, 0x99, 0xc7, 0x57, - 0x61, 0xd4, 0x14, 0xfd, 0xa5, 0x5d, 0x3c, 0xec, 0x35, 0x3e, 0x09, 0xad, 0x05, 0x34, 0xe5, 0x26, - 0xe4, 0x64, 0xdd, 0x7e, 0xd3, 0x44, 0x3e, 0x3f, 0x05, 0x13, 0x07, 0xcd, 0xc2, 0x8d, 0x8a, 0x82, - 0x5a, 0x83, 0x94, 0xa4, 0xa0, 0xc5, 0x44, 0x29, 0xb9, 0x94, 0x79, 0xf7, 0x9d, 0xfe, 0xf2, 0xc9, - 0x80, 0x61, 0x48, 0x5e, 0xfe, 0x81, 0x02, 0x85, 0x5d, 0x97, 0x38, 0x3e, 0x8d, 0x3d, 0xda, 0xfa, - 0x26, 0xcc, 0x88, 0x33, 0xec, 0x26, 0x6f, 0x89, 0x3f, 0xd0, 0x1a, 0xc0, 0x1f, 0x4f, 0x71, 0x8c, - 0xcb, 0xc0, 0xfd, 0x2b, 0xc0, 0x07, 0x70, 0x3a, 0x53, 0xfe, 0x65, 0xe0, 0xe5, 0xff, 0x48, 0xc0, - 0xc2, 0x5e, 0xfc, 0x5d, 0xee, 0x1a, 0xb2, 0x9b, 0x88, 0x1c, 0x39, 0xab, 0xae, 0x4b, 0xc5, 0x05, - 0xcd, 0x7b, 0x30, 0x73, 0xc0, 0x0a, 0xd8, 0xd4, 0xdb, 0x3e, 0xc3, 0x30, 0x69, 0x51, 0xe1, 0x4f, - 0xe8, 0x26, 0x65, 0x73, 0x74, 0x56, 0x52, 0x33, 0xa9, 0xfa, 0x02, 0x66, 0xe2, 0xdd, 0xa3, 0x51, - 0x07, 0x2a, 0x78, 0xbb, 0xb7, 0x25, 0xb6, 0x0f, 0x54, 0xa6, 0x71, 0x53, 0xd1, 0x07, 0x1c, 0x51, - 0x1b, 0x55, 0x2b, 0xf0, 0x20, 0x18, 0xe2, 0x25, 0x9f, 0x70, 0x98, 0xb4, 0x98, 0xe4, 0x03, 0x9d, - 0x93, 0x9d, 0x3a, 0x73, 0x4c, 0x36, 0xdc, 0x13, 0x78, 0xd0, 0x4d, 0x1a, 0x1f, 0xf4, 0xd0, 0x8d, - 0x07, 0x3d, 0xdf, 0xf9, 0x21, 0x48, 0x6c, 0xe8, 0xe5, 0x3f, 0x55, 0x40, 0x0d, 0x64, 0x2e, 0x34, - 0xb0, 0xeb, 0x8a, 0x37, 0x2d, 0x9d, 0xb7, 0xcb, 0xe2, 0x46, 0x2a, 0x4f, 0xdb, 0x6f, 0x96, 0x7f, - 0x01, 0x26, 0xc5, 0x1b, 0x45, 0x01, 0x11, 0x3c, 0xc2, 0x96, 0x32, 0xee, 0xf1, 0x76, 0xf9, 0x8b, - 0x6c, 0x6c, 0x7f, 0xf8, 0x8f, 0x8b, 0x4b, 0x47, 0xc4, 0x6f, 0xb4, 0x0e, 0x96, 0x0d, 0xd7, 0x5e, - 0x91, 0x5f, 0xf3, 0x88, 0xff, 0xde, 0xa1, 0xe6, 0xf1, 0x0a, 0xcb, 0x91, 0x29, 0x27, 0xa0, 0x9a, - 0x6a, 0xa3, 0xd3, 0xf6, 0xa1, 0xd2, 0xf2, 0x1f, 0x24, 0x60, 0xf6, 0x52, 0xfb, 0xe1, 0xa6, 0xf3, - 0x01, 0xcc, 0x86, 0x03, 0x0b, 0x5e, 0x83, 0x87, 0xcf, 0x38, 0xc5, 0x7c, 0x66, 0x82, 0x0e, 0xc1, - 0x43, 0xf0, 0xe0, 0xc5, 0xe6, 0x6b, 0x90, 0x8d, 0x5d, 0x1c, 0x89, 0x09, 0xa5, 0xb5, 0x4c, 0x74, - 0x73, 0x44, 0xd5, 0x16, 0xcc, 0xb6, 0xbf, 0x3d, 0xd7, 0xb9, 0x82, 0xc5, 0x26, 0x21, 0xc9, 0xdd, - 0xc9, 0x07, 0xbd, 0xf4, 0xd5, 0xdb, 0xf0, 0xb5, 0xe9, 0xb6, 0x07, 0xeb, 0xd1, 0x82, 0xf8, 0x12, - 0xcc, 0x98, 0x84, 0xbe, 0x6c, 0x21, 0x8b, 0x1c, 0x12, 0x6c, 0xc6, 0xed, 0x6c, 0x88, 0x0f, 0x72, - 0x2a, 0xde, 0x1c, 0x9a, 0x58, 0xf9, 0xcf, 0x12, 0x30, 0xb1, 0x81, 0x71, 0x95, 0x50, 0x71, 0x76, - 0x4f, 0xe4, 0x86, 0xa4, 0x0e, 0x13, 0xc2, 0x7b, 0x98, 0xb2, 0x45, 0x5c, 0x34, 0x0d, 0x72, 0xe1, - 0xcb, 0xe9, 0x03, 0x60, 0x7e, 0xcd, 0x54, 0x87, 0x09, 0xff, 0x12, 0xd0, 0x41, 0xd2, 0x14, 0xbf, - 0x0b, 0x74, 0x15, 0x72, 0xf2, 0xb3, 0x02, 0x64, 0xf3, 0x93, 0x8a, 0x64, 0x3f, 0xcf, 0x62, 0xb3, - 0x82, 0xa6, 0xc2, 0x49, 0x58, 0xf8, 0x3e, 0x71, 0xad, 0x96, 0x3d, 0x50, 0x10, 0x96, 0x24, 0xe5, - 0x5f, 0x6d, 0x17, 0x61, 0xdd, 0x68, 0x60, 0xb3, 0x65, 0xf1, 0x87, 0xa7, 0x07, 0x2d, 0x83, 0x69, - 0x21, 0x3a, 0xdc, 0x1a, 0xd2, 0x32, 0xa2, 0x4e, 0x9c, 0xbd, 0xbc, 0x01, 0x63, 0xb2, 0x4b, 0xf8, - 0x5d, 0x82, 0x78, 0xe2, 0x91, 0x17, 0xd5, 0xe1, 0x87, 0x08, 0x9d, 0x86, 0x97, 0xec, 0x36, 0xbc, - 0x6d, 0x00, 0x9f, 0xc8, 0xdd, 0x68, 0xe0, 0x19, 0x56, 0x7a, 0x59, 0xda, 0x25, 0x6a, 0xd7, 0xd2, - 0xbe, 0xfc, 0x45, 0x7b, 0x59, 0xd4, 0x70, 0x2f, 0x8b, 0xda, 0x02, 0xb5, 0x03, 0x79, 0x6f, 0x6f, - 0x53, 0x55, 0x61, 0xc8, 0x0f, 0x42, 0xcf, 0x90, 0xc6, 0x7f, 0xb3, 0x60, 0xec, 0xfb, 0x56, 0xd7, - 0xf3, 0x96, 0xac, 0xef, 0x5b, 0xd1, 0xf5, 0xf6, 0xef, 0x28, 0x90, 0xfd, 0x98, 0x0b, 0x5a, 0xc3, - 0x86, 0xeb, 0x99, 0xfc, 0x7a, 0x8e, 0x1b, 0x91, 0xd4, 0x98, 0x32, 0xc8, 0xf5, 0x1c, 0x23, 0x14, - 0x68, 0x0c, 0xc7, 0x8f, 0xe3, 0x0c, 0x72, 0xd2, 0xed, 0x47, 0x38, 0xe5, 0xdf, 0x50, 0x20, 0x5f, - 0x11, 0x91, 0x59, 0x3a, 0x20, 0xb5, 0x08, 0xa3, 0x32, 0x56, 0xcb, 0x90, 0x1f, 0x14, 0x55, 0x0c, - 0xa3, 0x3f, 0x41, 0x67, 0x18, 0x60, 0x97, 0x7f, 0x49, 0x81, 0x2c, 0x4f, 0x89, 0x85, 0xcc, 0x68, - 0xef, 0xdd, 0xdc, 0x73, 0x98, 0xb4, 0x90, 0x8f, 0xa9, 0xaf, 0x33, 0xe7, 0xc2, 0x53, 0x46, 0x37, - 0x1a, 0xe1, 0x1b, 0xd7, 0x79, 0x2b, 0xc9, 0x44, 0x53, 0x05, 0x48, 0x9c, 0x6f, 0xf9, 0x4b, 0x90, - 0x8b, 0x12, 0x97, 0x5a, 0x95, 0xaa, 0x8f, 0x20, 0xdf, 0x96, 0x80, 0x89, 0x78, 0x9d, 0xd5, 0x72, - 0xf1, 0x0c, 0x8c, 0x96, 0x7f, 0x5f, 0x81, 0x4c, 0x0c, 0x48, 0xbd, 0x0f, 0xe9, 0xce, 0xa0, 0x13, - 0x55, 0xdc, 0x66, 0xab, 0x18, 0xdf, 0xa6, 0x26, 0x6f, 0xb0, 0x4d, 0x2d, 0xdb, 0x30, 0x2c, 0x3e, - 0x64, 0x79, 0x02, 0x4a, 0x73, 0x10, 0x63, 0x54, 0x9a, 0x8c, 0xe4, 0xe5, 0x20, 0x63, 0x56, 0x5e, - 0x96, 0x7f, 0x4b, 0x81, 0xc5, 0x4a, 0x70, 0x22, 0x1c, 0x89, 0xb6, 0x6d, 0x85, 0xf4, 0x75, 0xa3, - 0xba, 0x03, 0x79, 0x69, 0x11, 0xc2, 0xfe, 0x03, 0x75, 0xf7, 0x71, 0xbb, 0x2f, 0x99, 0xe5, 0xec, - 0x58, 0x89, 0x96, 0xbf, 0xa3, 0xc0, 0xfd, 0x70, 0x64, 0x95, 0x4b, 0x86, 0x75, 0xf5, 0xaa, 0xb8, - 0xf3, 0xb1, 0x50, 0xc8, 0xc6, 0x9b, 0x7b, 0x9b, 0xff, 0x46, 0xe8, 0xfc, 0x45, 0xb6, 0xdf, 0x93, - 0x6b, 0x7c, 0x46, 0x32, 0x95, 0x0a, 0xe2, 0x40, 0x85, 0xe5, 0xfd, 0x8e, 0x6b, 0x57, 0xb1, 0x41, - 0x6c, 0x64, 0xd1, 0x2b, 0xf2, 0xfe, 0x39, 0x96, 0xf7, 0x8b, 0x1e, 0x9c, 0xe1, 0x90, 0x16, 0x96, - 0xcb, 0x18, 0xd4, 0xa7, 0x1e, 0x72, 0xfc, 0x4a, 0xcb, 0x6f, 0xb8, 0x1e, 0xf9, 0x44, 0x38, 0xff, - 0x22, 0x8c, 0x1e, 0xb1, 0x5a, 0xf9, 0x4d, 0x71, 0x5a, 0x0b, 0x8a, 0xea, 0x7b, 0x30, 0x22, 0x83, - 0x5e, 0xa2, 0x9f, 0xa0, 0x27, 0x3b, 0x97, 0xbf, 0x0d, 0x99, 0x0a, 0x9f, 0x1f, 0x67, 0x16, 0xe1, - 0x7b, 0xed, 0xf8, 0xde, 0x4d, 0xf1, 0xbf, 0xab, 0x40, 0x7e, 0xfd, 0xf0, 0x10, 0xf7, 0xc5, 0xa3, - 0x06, 0xe3, 0x0e, 0xf6, 0x75, 0x51, 0x94, 0x9f, 0x08, 0xf6, 0xc7, 0x6e, 0xcc, 0xc1, 0xfe, 0x53, - 0x41, 0xc6, 0x3f, 0x06, 0x54, 0x67, 0x21, 0x45, 0xa8, 0x7e, 0x82, 0x2c, 0x79, 0xe4, 0x93, 0xd2, - 0x46, 0x09, 0xfd, 0x98, 0x15, 0x1f, 0xfb, 0x70, 0xbf, 0xd7, 0x47, 0x6a, 0x2a, 0xc0, 0xc8, 0xb6, - 0x7b, 0xe0, 0x9a, 0x67, 0x85, 0x7b, 0x6a, 0x19, 0x16, 0x56, 0xf1, 0x11, 0x71, 0x56, 0x2d, 0xd7, - 0x38, 0xc6, 0x5e, 0xdd, 0x46, 0x9e, 0xbf, 0xe6, 0x3a, 0xbe, 0x87, 0x0c, 0x9f, 0xee, 0x38, 0xd6, - 0x59, 0x41, 0x51, 0xa7, 0x41, 0xbd, 0xa4, 0x3e, 0xa1, 0x66, 0x21, 0xb5, 0x7e, 0x82, 0xbd, 0x33, - 0xd7, 0xc1, 0x85, 0xe4, 0xe3, 0xbd, 0xc0, 0x0e, 0xc5, 0x83, 0x18, 0x75, 0x0c, 0x32, 0xfb, 0x0e, - 0x6d, 0x62, 0x83, 0xc7, 0xcc, 0xc2, 0x3d, 0xc6, 0x56, 0x68, 0xa2, 0xa0, 0xb0, 0xdf, 0xbb, 0xa8, - 0x45, 0xb1, 0x59, 0x48, 0xa8, 0x79, 0x80, 0x2a, 0xb6, 0x5d, 0x8b, 0xd0, 0x06, 0x36, 0x0b, 0x49, - 0x35, 0x03, 0xa3, 0xfc, 0x21, 0x29, 0x36, 0x0b, 0x43, 0x8f, 0xff, 0x24, 0x21, 0xdf, 0x4f, 0xf0, - 0x43, 0xdf, 0x12, 0x64, 0xf6, 0xb7, 0xeb, 0xbb, 0xeb, 0x6b, 0xb5, 0x8d, 0xda, 0x7a, 0xb5, 0x70, - 0x6f, 0x6e, 0xec, 0xfc, 0xa2, 0x14, 0xaf, 0x62, 0xfb, 0xf9, 0xd5, 0xfd, 0xe7, 0x05, 0x65, 0x6e, - 0xf4, 0xfc, 0xa2, 0xc4, 0x7e, 0xb2, 0x68, 0x5c, 0x5f, 0xdf, 0xdc, 0x2c, 0x24, 0xe6, 0x52, 0xe7, - 0x17, 0x25, 0xfe, 0x9b, 0xd9, 0x65, 0x7d, 0x6f, 0x67, 0x57, 0x67, 0x5d, 0x93, 0x73, 0xd9, 0xf3, - 0x8b, 0x52, 0x58, 0x66, 0xee, 0x97, 0xff, 0xe6, 0x44, 0x43, 0x73, 0xb9, 0xf3, 0x8b, 0x52, 0x54, - 0xc1, 0x28, 0xf7, 0x2a, 0x1f, 0xad, 0x73, 0xca, 0x61, 0x41, 0x19, 0x94, 0x19, 0x25, 0xff, 0xcd, - 0x29, 0x47, 0x04, 0x65, 0x58, 0xa1, 0x4e, 0xc3, 0xc8, 0xea, 0xfe, 0x73, 0x7d, 0x77, 0xa7, 0x30, - 0x3a, 0x07, 0xe7, 0x17, 0x25, 0x59, 0x62, 0xd6, 0xc2, 0xda, 0x59, 0x43, 0x6a, 0x2e, 0x73, 0x7e, - 0x51, 0x0a, 0x8a, 0xea, 0x02, 0x00, 0xeb, 0x53, 0xd9, 0xdb, 0xd9, 0xaa, 0xad, 0x15, 0xd2, 0x73, - 0xf9, 0xf3, 0x8b, 0x52, 0xac, 0x86, 0x49, 0x83, 0x77, 0x95, 0x1d, 0x40, 0x48, 0x23, 0x56, 0xf5, - 0xf8, 0x8f, 0x14, 0xc8, 0xad, 0x07, 0x67, 0x49, 0x5c, 0x82, 0xf7, 0xa1, 0x18, 0xd3, 0x4a, 0x5b, - 0x9b, 0x50, 0x91, 0xd0, 0x61, 0x41, 0x51, 0x73, 0x90, 0xe6, 0x77, 0x32, 0x1b, 0xc4, 0xb2, 0x0a, - 0x09, 0x75, 0x0e, 0xa6, 0x79, 0x71, 0x0b, 0xf9, 0x46, 0x43, 0x13, 0xdf, 0x8e, 0x72, 0xc5, 0x14, - 0x92, 0xcc, 0x40, 0xa2, 0xb6, 0x6d, 0xfc, 0x4a, 0xd4, 0x0f, 0xa9, 0x53, 0x30, 0x2e, 0x3f, 0x5d, - 0x93, 0xdf, 0x83, 0x12, 0xd7, 0x29, 0x0c, 0x33, 0x28, 0xf1, 0x52, 0xb8, 0xf3, 0x3d, 0x62, 0x61, - 0xe4, 0xf1, 0x77, 0x02, 0x7d, 0x6f, 0x21, 0x7a, 0xcc, 0x64, 0xb6, 0xbf, 0xbd, 0x5f, 0xe7, 0xaa, - 0xe6, 0x32, 0x13, 0x25, 0xa6, 0xe5, 0xca, 0x76, 0xa8, 0xe5, 0xca, 0xf6, 0x73, 0x26, 0x45, 0x6d, - 0xfd, 0xe9, 0xfe, 0x66, 0x45, 0x2b, 0x24, 0x84, 0x14, 0x65, 0x91, 0x49, 0x69, 0x6d, 0x67, 0xbb, - 0x5a, 0xdb, 0xab, 0xed, 0x6c, 0x57, 0x98, 0x46, 0xb9, 0x94, 0x62, 0x55, 0xea, 0x32, 0xcc, 0x54, - 0x6b, 0xda, 0xfa, 0x1a, 0x2b, 0x32, 0x45, 0xea, 0x3b, 0x9a, 0xfe, 0xac, 0xf6, 0xf4, 0xd9, 0xba, - 0x56, 0x48, 0xcd, 0x8d, 0x9f, 0x5f, 0x94, 0x72, 0x6d, 0x95, 0xed, 0xfd, 0xb9, 0xb8, 0x77, 0x34, - 0x7d, 0x73, 0xe7, 0x67, 0xd7, 0xb5, 0x42, 0x41, 0xf4, 0x6f, 0xab, 0x54, 0xe7, 0x21, 0xb3, 0xf7, - 0x7c, 0x77, 0x5d, 0xdf, 0xaa, 0x68, 0x1f, 0xad, 0xef, 0x15, 0x4a, 0x62, 0x2a, 0xa2, 0xa4, 0xce, - 0x02, 0xf0, 0xc6, 0xcd, 0xda, 0x56, 0x6d, 0xaf, 0xf0, 0xe1, 0x5c, 0xfa, 0xfc, 0xa2, 0x34, 0xcc, - 0x0b, 0xab, 0x8d, 0xef, 0x7f, 0xb6, 0xa0, 0xfc, 0xf0, 0xb3, 0x05, 0xe5, 0x9f, 0x3e, 0x5b, 0x50, - 0xbe, 0xfb, 0xf9, 0xc2, 0xbd, 0x1f, 0x7e, 0xbe, 0x70, 0xef, 0xef, 0x3e, 0x5f, 0xb8, 0xf7, 0x8d, - 0xed, 0x58, 0x9a, 0x54, 0x0b, 0x1c, 0xf8, 0x26, 0x3a, 0xa0, 0x2b, 0xa1, 0x3b, 0x7f, 0xc7, 0x70, - 0x3d, 0x1c, 0x2f, 0x36, 0x10, 0x71, 0x56, 0x6c, 0x97, 0xa5, 0xeb, 0x34, 0xfa, 0x4b, 0x14, 0x3c, - 0xa5, 0x3a, 0x18, 0xe1, 0xdf, 0x3f, 0xfe, 0xbf, 0xff, 0x0c, 0x00, 0x00, 0xff, 0xff, 0x35, 0xcc, - 0x95, 0x72, 0xac, 0x42, 0x00, 0x00, + // 4492 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5c, 0xd9, 0x6f, 0x64, 0xd9, + 0x59, 0xef, 0x5b, 0xe5, 0xa5, 0xea, 0xab, 0xc5, 0xe5, 0xeb, 0xad, 0x6c, 0x77, 0xdb, 0x35, 0xd5, + 0xd3, 0x19, 0x4f, 0xcf, 0x8c, 0x9d, 0x1e, 0x98, 0x68, 0x32, 0x51, 0x94, 0x29, 0x6f, 0xd3, 0xc5, + 0x78, 0xcb, 0x2d, 0x7b, 0xa0, 0x13, 0x25, 0x57, 0xc7, 0xf7, 0x1e, 0xbb, 0x4e, 0xfb, 0x2e, 0xd5, + 0xf7, 0xdc, 0x72, 0xdb, 0x83, 0x90, 0x78, 0x18, 0x21, 0x62, 0x40, 0x04, 0x21, 0x84, 0x84, 0x64, + 0x14, 0x1e, 0x10, 0x82, 0x17, 0x78, 0x44, 0x82, 0x07, 0x24, 0x04, 0xe4, 0x21, 0x48, 0x79, 0xe0, + 0x01, 0x21, 0x11, 0xd0, 0x0c, 0x12, 0x88, 0xbf, 0x01, 0x45, 0xe8, 0x2c, 0x77, 0xa9, 0xc5, 0xe5, + 0x2a, 0xdb, 0x03, 0x81, 0xbc, 0x74, 0xd7, 0x59, 0xbe, 0xdf, 0x77, 0xce, 0xf7, 0x7d, 0xe7, 0xfb, + 0xbe, 0xb3, 0x5c, 0xc3, 0xeb, 0xc4, 0x79, 0x8e, 0x0d, 0x9f, 0x9c, 0xe2, 0x15, 0x7c, 0x66, 0xd4, + 0x91, 0x73, 0x8c, 0x57, 0x4e, 0x9f, 0x1c, 0x62, 0x1f, 0x3d, 0x09, 0x2b, 0x96, 0x1b, 0x9e, 0xeb, + 0xbb, 0xea, 0x5c, 0xd8, 0x75, 0x39, 0x6c, 0x91, 0x5d, 0xe7, 0x26, 0x8f, 0xdd, 0x63, 0x97, 0x77, + 0x5b, 0x61, 0xbf, 0x04, 0xc5, 0xdc, 0x82, 0xe1, 0x52, 0xdb, 0xa5, 0x2b, 0x87, 0x88, 0x46, 0xa8, + 0x86, 0x4b, 0x1c, 0xd9, 0xfe, 0x28, 0x62, 0xee, 0x7a, 0xc8, 0xb0, 0xa2, 0x4e, 0xa2, 0x28, 0xbb, + 0x8d, 0x23, 0x9b, 0x38, 0xee, 0x0a, 0xff, 0x57, 0x54, 0x95, 0xff, 0x79, 0x0a, 0x46, 0xf6, 0x90, + 0x87, 0x6c, 0xaa, 0x62, 0x58, 0xa4, 0x0d, 0xd7, 0xd7, 0x6d, 0xe4, 0x9d, 0x60, 0x5f, 0x27, 0x0e, + 0xf5, 0x91, 0xe3, 0xeb, 0x16, 0xa1, 0x3e, 0x71, 0x8e, 0xf5, 0x23, 0x8c, 0x8b, 0x4a, 0x49, 0x59, + 0xca, 0xbc, 0x3d, 0xbb, 0x2c, 0x86, 0xb3, 0xcc, 0x86, 0x13, 0x8c, 0x7c, 0x79, 0xcd, 0x25, 0xce, + 0xea, 0xd0, 0xf7, 0x7f, 0xb4, 0x78, 0x4f, 0x9b, 0x67, 0x38, 0xdb, 0x1c, 0xa6, 0x2a, 0x50, 0xb6, + 0x04, 0xc8, 0x26, 0xc6, 0xea, 0x0b, 0x78, 0x64, 0x62, 0x8f, 0x9c, 0x22, 0x36, 0xdc, 0x5e, 0xcc, + 0x12, 0xfd, 0x31, 0x7b, 0x25, 0x42, 0xbb, 0x8a, 0x25, 0x82, 0x79, 0x13, 0x1f, 0xa1, 0xa6, 0xe5, + 0xeb, 0x72, 0x86, 0x27, 0xd8, 0x63, 0x3c, 0x74, 0x0f, 0xf9, 0xb8, 0x98, 0x2c, 0x29, 0x4b, 0xe9, + 0xd5, 0x87, 0x0c, 0xed, 0x9f, 0x7e, 0xb4, 0x38, 0x2f, 0xf8, 0x51, 0xf3, 0x64, 0x99, 0xb8, 0x2b, + 0x36, 0xf2, 0xeb, 0xcb, 0x5b, 0xf8, 0x18, 0x19, 0xe7, 0xeb, 0xd8, 0xd0, 0x66, 0x24, 0x4e, 0x8d, + 0x4f, 0xf0, 0x04, 0x7b, 0x9b, 0x18, 0x6b, 0xc8, 0xef, 0x64, 0xe1, 0xb7, 0xb2, 0x18, 0xba, 0x19, + 0x8b, 0xfd, 0x38, 0x0b, 0x1b, 0x5e, 0x09, 0x58, 0xb4, 0x08, 0xb0, 0x85, 0xd1, 0x70, 0xff, 0x8c, + 0x1e, 0x48, 0xb4, 0xf5, 0x98, 0xfc, 0xae, 0x65, 0xd7, 0x36, 0xaf, 0x91, 0xdb, 0xb0, 0x6b, 0x99, + 0x9d, 0x09, 0xf7, 0x03, 0x76, 0xc4, 0x21, 0x3e, 0x41, 0x16, 0xb3, 0x8d, 0x63, 0xe2, 0x30, 0x46, + 0xc4, 0x2d, 0x8e, 0xf6, 0xcf, 0x69, 0x56, 0x02, 0x55, 0x05, 0xce, 0x36, 0x87, 0xd1, 0x18, 0x8a, + 0x6a, 0x41, 0x29, 0xe0, 0x62, 0x23, 0xe2, 0xf8, 0xd8, 0x41, 0x8e, 0x81, 0x5b, 0x39, 0xa5, 0x06, + 0x9f, 0xd3, 0x76, 0x84, 0x15, 0xe7, 0xf6, 0x2e, 0x14, 0x03, 0x6e, 0x47, 0x4d, 0xc7, 0x64, 0x86, + 0xcd, 0xfa, 0x79, 0xa7, 0xc8, 0x2a, 0xa6, 0x4b, 0xca, 0x52, 0x52, 0x9b, 0x96, 0xed, 0x9b, 0xa2, + 0xb9, 0x2a, 0x5b, 0xd5, 0xd7, 0xa1, 0x10, 0x50, 0xd8, 0x4d, 0xcb, 0x27, 0x0d, 0x0b, 0x17, 0x81, + 0x53, 0x8c, 0xc9, 0xfa, 0x6d, 0x59, 0xad, 0xfe, 0x02, 0x4c, 0x7b, 0xd8, 0x42, 0xe7, 0x52, 0x2d, + 0xb4, 0x8e, 0x3c, 0xa9, 0x9c, 0x4c, 0xff, 0x13, 0x99, 0x90, 0x10, 0x9b, 0x18, 0xd7, 0x18, 0x00, + 0x57, 0x09, 0x81, 0xc5, 0x60, 0xf8, 0x75, 0xb7, 0xe9, 0x59, 0xe7, 0xe1, 0x2c, 0x18, 0xbc, 0x6e, + 0xa0, 0x46, 0x31, 0xdb, 0x3f, 0x8b, 0x60, 0x7d, 0x3c, 0xe5, 0x50, 0x72, 0xc2, 0x8c, 0xcf, 0x1a, + 0x6a, 0xc4, 0xb5, 0x2f, 0x59, 0x71, 0x41, 0x61, 0xea, 0x8b, 0xa9, 0xe4, 0x06, 0xd7, 0xbe, 0xe0, + 0x53, 0x95, 0x30, 0x7c, 0x42, 0xeb, 0xb0, 0x68, 0xa3, 0xb3, 0xb8, 0x39, 0xbb, 0x9e, 0x89, 0x3d, + 0x9d, 0x12, 0x13, 0xeb, 0x86, 0xdb, 0x74, 0xfc, 0x62, 0xbe, 0xa4, 0x2c, 0xe5, 0xb4, 0x79, 0x1b, + 0x9d, 0x45, 0x76, 0xba, 0xcb, 0x3a, 0xd5, 0x88, 0x89, 0xd7, 0x58, 0x17, 0x95, 0xc2, 0x6b, 0xc4, + 0x79, 0xae, 0x7b, 0xf8, 0x25, 0xf2, 0x4c, 0x9d, 0xb2, 0x15, 0x61, 0xea, 0x1e, 0x7e, 0xd1, 0x24, + 0x1e, 0xb6, 0xb1, 0xe3, 0xeb, 0x7e, 0xdd, 0xc3, 0xb4, 0xee, 0x5a, 0x66, 0x71, 0x8c, 0x0f, 0xfb, + 0x81, 0x1c, 0xf6, 0x54, 0xe7, 0xb0, 0xab, 0x8e, 0xaf, 0x3d, 0x24, 0xce, 0x73, 0x8d, 0x83, 0xd5, + 0x38, 0x96, 0x16, 0x41, 0xed, 0x07, 0x48, 0xea, 0x07, 0x50, 0xf2, 0x3d, 0x24, 0x84, 0xcf, 0xfb, + 0x52, 0xfd, 0x14, 0x0b, 0x5f, 0x69, 0x36, 0xb9, 0xdd, 0x3a, 0xc5, 0x02, 0x37, 0x90, 0x07, 0xb2, + 0x9f, 0x80, 0xa4, 0x1f, 0x89, 0x5e, 0xeb, 0xb2, 0x13, 0x93, 0xb4, 0x45, 0x5e, 0x34, 0x89, 0x89, + 0x7c, 0xd7, 0x0b, 0x27, 0x11, 0x19, 0xcd, 0xf8, 0x00, 0x92, 0x8e, 0x80, 0xe4, 0xf8, 0x43, 0xd3, + 0x39, 0x83, 0xd7, 0x0f, 0x89, 0x83, 0xbc, 0x73, 0xdd, 0x6d, 0x30, 0xb6, 0xb4, 0x97, 0xa3, 0x57, + 0xfb, 0x73, 0xf4, 0xaf, 0x0a, 0xc4, 0x5d, 0x01, 0x78, 0x95, 0xaf, 0xff, 0x65, 0x05, 0x4a, 0xc8, + 0x77, 0x6d, 0x62, 0x04, 0x2c, 0x85, 0x8e, 0x91, 0x61, 0x60, 0x4a, 0x75, 0x0b, 0x9f, 0x62, 0xab, + 0x38, 0x51, 0x52, 0x96, 0xf2, 0x6f, 0xbf, 0xbb, 0x7c, 0x75, 0x20, 0x5e, 0xae, 0x70, 0x0c, 0xc1, + 0x85, 0x1b, 0x40, 0x85, 0x03, 0x6c, 0x31, 0x7a, 0xed, 0x3e, 0xea, 0xd1, 0xaa, 0x9e, 0xc1, 0x6b, + 0x3c, 0x06, 0x74, 0x1b, 0x06, 0x5b, 0xa2, 0x72, 0x45, 0x13, 0xec, 0x15, 0x27, 0xfb, 0x97, 0x76, + 0x99, 0x61, 0x76, 0x8c, 0x6a, 0x13, 0xe3, 0xed, 0x10, 0x4e, 0xfd, 0x44, 0x81, 0xb7, 0x62, 0xd6, + 0xdd, 0xc7, 0x00, 0xa6, 0xfa, 0x1f, 0xc0, 0x52, 0x84, 0x7c, 0xcd, 0x30, 0x7e, 0x4d, 0x81, 0x27, + 0x6d, 0xea, 0xef, 0x63, 0x28, 0xd3, 0xfd, 0x0f, 0xe5, 0x8d, 0x16, 0x53, 0xb8, 0x66, 0x34, 0xdf, + 0x86, 0x59, 0x9b, 0x38, 0xc4, 0x46, 0x96, 0xce, 0x73, 0x1e, 0xc3, 0xb5, 0xa2, 0x00, 0x36, 0xd3, + 0x3f, 0xd3, 0x69, 0x89, 0xb2, 0x27, 0x41, 0x82, 0xc8, 0xf5, 0x4d, 0x78, 0x83, 0xd0, 0xd0, 0xb0, + 0x3b, 0x73, 0x1b, 0x0b, 0x35, 0x1d, 0xa3, 0xae, 0x63, 0x07, 0x1d, 0x5a, 0xd8, 0x2c, 0x16, 0x4b, + 0xca, 0x52, 0x4a, 0xfb, 0x02, 0xa1, 0xd2, 0x76, 0xd7, 0xdb, 0xd2, 0x97, 0x2d, 0xde, 0x7d, 0x43, + 0xf4, 0x66, 0x2e, 0xab, 0xe1, 0x52, 0x5f, 0x77, 0x1d, 0xeb, 0x5c, 0xb7, 0x5d, 0x13, 0xeb, 0x75, + 0x4c, 0x8e, 0xeb, 0x71, 0x27, 0x33, 0xcb, 0x97, 0xfd, 0x3c, 0xeb, 0xb6, 0xeb, 0x58, 0xe7, 0xdb, + 0xae, 0x89, 0x9f, 0xf2, 0x3e, 0x91, 0xf7, 0x38, 0x86, 0x27, 0x32, 0xc4, 0x99, 0xd8, 0xf0, 0x30, + 0xa2, 0x58, 0x6f, 0x78, 0xc4, 0xc0, 0xba, 0x4f, 0x6c, 0x4c, 0x7d, 0x64, 0x37, 0x22, 0x3c, 0x9d, + 0x62, 0xc3, 0x75, 0x4c, 0x5a, 0x9c, 0xe3, 0xb8, 0x6f, 0x0a, 0xc2, 0x75, 0x49, 0xb7, 0xc7, 0xc8, + 0xf6, 0x03, 0xaa, 0x90, 0x43, 0x4d, 0xd0, 0xa8, 0xaf, 0xc1, 0x58, 0xb0, 0x92, 0x74, 0x64, 0xda, + 0xc4, 0xa1, 0xc5, 0xf9, 0x52, 0x72, 0x29, 0xad, 0xe5, 0x83, 0xea, 0x0a, 0xaf, 0x55, 0xb7, 0x60, + 0x82, 0x39, 0x51, 0xd4, 0x34, 0x98, 0x0a, 0x75, 0xe6, 0x96, 0x59, 0x3c, 0xb9, 0xdf, 0x8f, 0xc3, + 0x2c, 0x10, 0xe7, 0x79, 0x45, 0x10, 0x6e, 0xa3, 0xb3, 0x35, 0xd4, 0x78, 0xaf, 0xf8, 0x1f, 0xdf, + 0x5b, 0x54, 0x2e, 0xfe, 0xfd, 0xcf, 0x1e, 0x87, 0xdc, 0x57, 0x44, 0x52, 0x5b, 0xfe, 0x44, 0x81, + 0x09, 0x21, 0xd7, 0x56, 0xa3, 0x98, 0x87, 0x74, 0xe0, 0x91, 0x4c, 0x9e, 0xd6, 0xa6, 0xb5, 0x94, + 0xa8, 0xa8, 0x9a, 0xea, 0xcf, 0x41, 0xbe, 0xcd, 0x36, 0x13, 0xfd, 0x9b, 0x49, 0xee, 0x28, 0xce, + 0xe8, 0xbd, 0xa1, 0x5f, 0xfd, 0xde, 0xe2, 0xbd, 0xf2, 0x6f, 0xa7, 0xa1, 0xd0, 0xae, 0x68, 0x75, + 0x1a, 0x46, 0x7c, 0x62, 0x9c, 0x60, 0x4f, 0x0e, 0x40, 0x96, 0xd4, 0x45, 0xc8, 0x88, 0xb4, 0x5d, + 0x67, 0xae, 0x50, 0xf0, 0xd6, 0x40, 0x54, 0xad, 0x22, 0x8a, 0xd5, 0x57, 0x20, 0x2b, 0x3b, 0xbc, + 0x68, 0xba, 0x41, 0x02, 0xab, 0x49, 0xa2, 0xaf, 0xb3, 0x2a, 0x75, 0x23, 0xc4, 0xf0, 0xcf, 0x1b, + 0x22, 0xff, 0xcc, 0xbf, 0xfd, 0x6a, 0xcc, 0xe1, 0xc9, 0x8d, 0x41, 0xe0, 0xee, 0x76, 0x79, 0x71, + 0xff, 0xbc, 0x81, 0x03, 0x4e, 0xec, 0xb7, 0xba, 0x0c, 0x13, 0x12, 0x86, 0x1a, 0xc8, 0xc2, 0xfa, + 0x11, 0x32, 0x7c, 0xd7, 0xe3, 0x59, 0x66, 0x4e, 0x1b, 0x17, 0x4d, 0x35, 0xd6, 0xb2, 0xc9, 0x1b, + 0xd8, 0xd0, 0xf9, 0x90, 0x74, 0x13, 0x3b, 0xae, 0x2d, 0xd2, 0x43, 0x0d, 0x78, 0xd5, 0x3a, 0xab, + 0x69, 0x95, 0xfb, 0x68, 0x9b, 0xdc, 0x0f, 0x60, 0xb2, 0x6b, 0xee, 0x37, 0x40, 0x46, 0xa6, 0x92, + 0xce, 0xa4, 0xef, 0x5b, 0x50, 0xbc, 0x32, 0xd9, 0x4b, 0x0f, 0xb2, 0xfe, 0xbb, 0x67, 0x79, 0x55, + 0xc8, 0xb7, 0x25, 0xe1, 0xd0, 0x3f, 0x68, 0xd6, 0x8e, 0x27, 0xc1, 0x55, 0xc8, 0xb7, 0x25, 0xd8, + 0x03, 0xe4, 0x70, 0x59, 0x3f, 0x0e, 0x75, 0x75, 0x5a, 0x98, 0xbd, 0x65, 0x5a, 0x58, 0x82, 0x0c, + 0xa1, 0x7b, 0xd8, 0x6b, 0x60, 0xbf, 0x89, 0x2c, 0x9e, 0x9a, 0xa5, 0xb4, 0x78, 0x95, 0xfa, 0x3e, + 0x8c, 0x50, 0x1f, 0xf9, 0x4d, 0xca, 0xd3, 0xa9, 0xfc, 0xdb, 0x4b, 0xbd, 0x02, 0xad, 0x58, 0x0c, + 0x35, 0xde, 0x5f, 0x93, 0x74, 0xaa, 0x06, 0x13, 0x36, 0x71, 0x42, 0x27, 0x65, 0x9c, 0xe8, 0x94, + 0x7c, 0x8c, 0x65, 0x3e, 0xd5, 0xd7, 0xd0, 0x0b, 0x36, 0x71, 0xa4, 0xb3, 0x32, 0x4e, 0x6a, 0xe4, + 0x63, 0x2e, 0x11, 0x86, 0xf9, 0xa2, 0x89, 0x1c, 0x9f, 0xf8, 0xe7, 0x31, 0xd8, 0xc2, 0x00, 0x12, + 0xb1, 0x89, 0xf3, 0x75, 0x89, 0x10, 0x22, 0x6f, 0x42, 0x96, 0x21, 0x3b, 0x2e, 0x73, 0x49, 0xc8, + 0x1a, 0x24, 0x87, 0xca, 0xd8, 0xc4, 0xd9, 0x91, 0x74, 0xea, 0x24, 0x0c, 0x73, 0xa7, 0xc9, 0x33, + 0xa2, 0xb4, 0x26, 0x0a, 0xea, 0x1b, 0x30, 0xce, 0x7f, 0xe8, 0x0d, 0xec, 0xd9, 0x84, 0x52, 0x16, + 0xf2, 0x78, 0x06, 0x93, 0xd3, 0x0a, 0xbc, 0x61, 0x2f, 0xaa, 0x57, 0x1f, 0x41, 0x3e, 0x58, 0x80, + 0x06, 0x0b, 0x56, 0x94, 0xa7, 0x18, 0x39, 0x2d, 0x27, 0xd7, 0xa0, 0xa8, 0x94, 0x5e, 0xe9, 0xc7, + 0x29, 0x98, 0x58, 0xed, 0x4c, 0xaa, 0xae, 0x74, 0x4c, 0x0f, 0x21, 0x17, 0x78, 0x83, 0x73, 0xfb, + 0xd0, 0xb5, 0xa4, 0x6b, 0x92, 0xce, 0xa8, 0xc6, 0xeb, 0x58, 0x08, 0x90, 0x9d, 0x1a, 0x9e, 0x7b, + 0x4a, 0x4c, 0xec, 0x49, 0xff, 0x94, 0x17, 0xd5, 0x7b, 0xb2, 0xf6, 0x7f, 0xcb, 0x45, 0x3d, 0x81, + 0x49, 0x7c, 0xd6, 0x20, 0x22, 0x1d, 0x8e, 0x02, 0x20, 0xf7, 0x55, 0x49, 0x6d, 0x22, 0x6a, 0x0b, + 0xa3, 0x1c, 0x23, 0xa1, 0xd8, 0xf7, 0x2d, 0x99, 0xde, 0x87, 0x24, 0xa3, 0x82, 0x24, 0x6a, 0x8b, + 0x48, 0x42, 0x55, 0xa6, 0xe2, 0xaa, 0x6c, 0x73, 0x8f, 0xe9, 0xde, 0xee, 0x11, 0xda, 0xdc, 0x63, + 0xa7, 0xa3, 0xc9, 0xdc, 0x9d, 0xa3, 0xc9, 0xde, 0xbd, 0xa3, 0xc9, 0xdd, 0xd2, 0xd1, 0xfc, 0xb4, + 0xb9, 0x91, 0x1d, 0x28, 0xc4, 0xcc, 0x8c, 0x0f, 0x3a, 0xe6, 0x4a, 0x94, 0xeb, 0x30, 0xc7, 0x22, + 0x62, 0x3e, 0xe2, 0x0e, 0xb7, 0xa4, 0xde, 0xd0, 0x2d, 0x7d, 0x7e, 0x0e, 0xe8, 0xdf, 0x12, 0x30, + 0xb3, 0xc1, 0x16, 0xdc, 0xf9, 0x66, 0xd3, 0x6f, 0x7a, 0x38, 0xdc, 0xd5, 0x1d, 0xb9, 0xbd, 0x33, + 0xb4, 0xab, 0x16, 0x71, 0xe2, 0xea, 0x45, 0xfc, 0x45, 0x98, 0xf4, 0x5f, 0xa2, 0x06, 0xdb, 0xb0, + 0x7b, 0xf1, 0x45, 0x9c, 0xe4, 0x24, 0x2a, 0x6b, 0xab, 0xb1, 0xa6, 0x88, 0xe2, 0x25, 0x7c, 0x21, + 0xce, 0x24, 0x22, 0x16, 0xf6, 0x64, 0x34, 0xed, 0xa6, 0xc5, 0xf3, 0xb9, 0x41, 0x8e, 0xf7, 0xca, + 0xb1, 0xb1, 0x05, 0x2c, 0xb9, 0xba, 0xd6, 0x42, 0xb8, 0xae, 0x86, 0x30, 0xc0, 0xc1, 0x5e, 0xbb, + 0x21, 0x94, 0xff, 0x36, 0x01, 0x13, 0x61, 0x74, 0xee, 0x57, 0xc4, 0xdf, 0x80, 0x99, 0xab, 0x4e, + 0x7d, 0x06, 0xc8, 0x86, 0x27, 0xeb, 0xdd, 0x8e, 0x7b, 0x0e, 0x60, 0xb2, 0xeb, 0x31, 0xcf, 0x00, + 0x27, 0xb1, 0x6a, 0xbd, 0xf3, 0x7c, 0xe7, 0x67, 0x61, 0xda, 0xc1, 0x67, 0xd1, 0x61, 0x5b, 0xa4, + 0xe4, 0x21, 0xae, 0xe4, 0x49, 0xd6, 0x2a, 0x87, 0x12, 0xa9, 0x39, 0x76, 0xd6, 0x16, 0x9e, 0xce, + 0x0d, 0xb7, 0x9c, 0xb5, 0x05, 0xc7, 0x72, 0xe5, 0xcf, 0x14, 0x98, 0x6e, 0x13, 0xa4, 0x84, 0x53, + 0x35, 0x50, 0x23, 0x83, 0x08, 0x46, 0x20, 0x84, 0xda, 0xdf, 0x84, 0xc6, 0x23, 0xf2, 0x00, 0x73, + 0x07, 0x0a, 0x31, 0x4c, 0x61, 0x07, 0x03, 0xc8, 0x7e, 0x2c, 0x22, 0x16, 0x0e, 0xe1, 0x11, 0xe4, + 0x2d, 0x44, 0x3b, 0x8d, 0x3f, 0xc7, 0x6a, 0x43, 0x81, 0x94, 0x7f, 0x43, 0x81, 0x85, 0xf6, 0xcd, + 0x4a, 0x2d, 0x34, 0xa9, 0xeb, 0x2d, 0xa7, 0x9b, 0xf9, 0x26, 0x6e, 0x61, 0xbe, 0x5f, 0x85, 0xc9, + 0x9d, 0x6e, 0x8a, 0x7b, 0x04, 0x79, 0xae, 0xee, 0x68, 0x3a, 0x8a, 0x98, 0x0e, 0xab, 0x8d, 0xa6, + 0xf3, 0x9f, 0x0a, 0xe4, 0xb7, 0x89, 0xc9, 0xb1, 0x2a, 0x8e, 0xb9, 0xbf, 0xbb, 0xaa, 0xbe, 0x0f, + 0x69, 0x9b, 0x98, 0x72, 0x68, 0x4a, 0xff, 0x2e, 0x36, 0x65, 0x4b, 0x1c, 0x16, 0x40, 0x0f, 0x99, + 0xd9, 0x1e, 0x36, 0xcf, 0x3b, 0x66, 0x78, 0x2d, 0x4c, 0x96, 0x91, 0xae, 0x36, 0xcf, 0x05, 0xd4, + 0x87, 0x30, 0xc6, 0xa1, 0x28, 0xb6, 0x2c, 0x89, 0x95, 0xec, 0x1f, 0x2b, 0xc7, 0x68, 0x6b, 0xd8, + 0xb2, 0x84, 0xac, 0xfe, 0x7c, 0x04, 0xa0, 0x16, 0xde, 0xbe, 0x5c, 0x99, 0xc9, 0x3d, 0x00, 0x60, + 0x7b, 0x4b, 0x99, 0x87, 0x88, 0x34, 0x2e, 0xcd, 0x6a, 0x44, 0x1a, 0xd2, 0x96, 0xa7, 0x24, 0x3b, + 0xf2, 0x94, 0xce, 0x54, 0x64, 0xe8, 0xee, 0x52, 0x91, 0xe1, 0xbb, 0x4f, 0x45, 0x46, 0x6e, 0x99, + 0x8a, 0xf4, 0xdc, 0xb6, 0x46, 0x79, 0x4a, 0xea, 0x6e, 0xf3, 0x94, 0xf4, 0xe7, 0x93, 0xa7, 0xc0, + 0x1d, 0x6f, 0x77, 0x32, 0xb7, 0xdd, 0xee, 0x64, 0xaf, 0xdd, 0xee, 0xe4, 0xae, 0xc8, 0x36, 0x1e, + 0x42, 0x4e, 0xda, 0xb1, 0x4c, 0x36, 0xc4, 0xf9, 0x7d, 0x56, 0x98, 0xb2, 0xa8, 0xeb, 0x92, 0x92, + 0x8c, 0x75, 0x49, 0x49, 0xca, 0x7f, 0xa8, 0xc0, 0xe8, 0x3a, 0x6e, 0xb8, 0x94, 0xf8, 0xea, 0x1e, + 0x8c, 0xa3, 0x53, 0x44, 0x2c, 0x74, 0xc8, 0x4f, 0x61, 0x2c, 0xb6, 0xe7, 0x1f, 0xc4, 0x99, 0x17, + 0x42, 0xea, 0x55, 0x41, 0xac, 0x3e, 0x85, 0x9c, 0xef, 0xfa, 0xc8, 0x0a, 0xd1, 0x12, 0x83, 0x58, + 0x39, 0xa3, 0x94, 0x48, 0xe5, 0x37, 0x61, 0xb2, 0xd6, 0x3c, 0x44, 0x06, 0xbf, 0xb0, 0xd8, 0xf7, + 0x90, 0x89, 0x77, 0x5c, 0xc6, 0x61, 0x12, 0x86, 0x1d, 0x37, 0x18, 0x67, 0x4e, 0x13, 0x05, 0x16, + 0xb2, 0xd2, 0xfc, 0x50, 0x94, 0xfb, 0xed, 0x87, 0x90, 0xa3, 0x21, 0x6d, 0xe4, 0xbb, 0xb3, 0x51, + 0x65, 0xd5, 0x64, 0x9d, 0xf8, 0x5a, 0xc4, 0x06, 0x69, 0x10, 0xec, 0xf8, 0xc1, 0x36, 0xef, 0x08, + 0x63, 0x2d, 0xa8, 0x53, 0xbf, 0x0c, 0xc3, 0xed, 0xbe, 0xea, 0xda, 0x79, 0x08, 0x0a, 0xf5, 0x6b, + 0x90, 0x0a, 0xac, 0x72, 0x10, 0xb7, 0x11, 0x12, 0xa9, 0x05, 0x48, 0x1a, 0xc4, 0x14, 0x7e, 0x42, + 0x63, 0x3f, 0xcb, 0x9f, 0x24, 0x20, 0xcd, 0xdc, 0x1e, 0x9f, 0xe9, 0x75, 0x87, 0x7b, 0x20, 0x8e, + 0x9f, 0x89, 0x73, 0xe4, 0xca, 0x4b, 0xe6, 0x47, 0xbd, 0x56, 0x6c, 0x28, 0x3d, 0x79, 0x0f, 0x91, + 0x76, 0x43, 0x71, 0xae, 0x07, 0x58, 0x7c, 0x07, 0x9b, 0xe4, 0xab, 0xff, 0x7a, 0x2c, 0xbe, 0x85, + 0x15, 0x28, 0x7c, 0x07, 0xcb, 0x4c, 0xc3, 0x23, 0xc7, 0xc7, 0xd8, 0x93, 0xee, 0x7f, 0x68, 0x80, + 0x50, 0x22, 0x29, 0x85, 0xf7, 0xff, 0x41, 0x02, 0xf2, 0x4c, 0x0c, 0x5b, 0xc4, 0x26, 0x52, 0x16, + 0xad, 0xd3, 0x55, 0xee, 0x70, 0xba, 0x89, 0x1b, 0x4e, 0xf7, 0x6b, 0x90, 0x3a, 0x22, 0x16, 0x5f, + 0x1c, 0x83, 0x18, 0x4f, 0x48, 0x74, 0x77, 0xf2, 0x62, 0x61, 0x50, 0x4c, 0xa8, 0x8e, 0x68, 0x9d, + 0xdb, 0x53, 0x56, 0x8e, 0xf4, 0x29, 0xa2, 0xf5, 0xf2, 0x3f, 0x24, 0x60, 0x2c, 0x0a, 0xa6, 0x77, + 0x2f, 0xcf, 0x4d, 0xc8, 0x4a, 0x6f, 0xa0, 0xf3, 0x93, 0xfc, 0x01, 0x5c, 0x42, 0x46, 0x12, 0x3e, + 0x75, 0x2d, 0xb3, 0x6d, 0x1a, 0xc9, 0xb6, 0x69, 0xb4, 0xa9, 0x6d, 0xe8, 0xae, 0xac, 0x74, 0xf8, + 0xa6, 0x56, 0xfa, 0x77, 0x09, 0x18, 0x6b, 0xbb, 0x5d, 0xfd, 0xbf, 0xb6, 0x64, 0xbf, 0x02, 0x23, + 0xe2, 0x18, 0x79, 0x10, 0x07, 0x26, 0x49, 0xee, 0x50, 0x92, 0xff, 0x95, 0x84, 0xf9, 0x28, 0x16, + 0xf0, 0x91, 0x1e, 0xba, 0xee, 0xc9, 0x36, 0xf6, 0x91, 0x89, 0x7c, 0xa4, 0x7e, 0x19, 0x66, 0x4f, + 0x91, 0xc3, 0xd6, 0x8d, 0x6e, 0x31, 0x97, 0x20, 0x2f, 0xde, 0xc4, 0x55, 0xb7, 0x08, 0x13, 0xd3, + 0xb2, 0x43, 0xe4, 0x32, 0xc4, 0x2d, 0xf7, 0xfb, 0xf0, 0xc0, 0xc3, 0x66, 0xd3, 0xc0, 0xe2, 0xea, + 0xa9, 0x93, 0x3c, 0xc1, 0xc9, 0x67, 0x45, 0xa7, 0x5d, 0xc7, 0x3a, 0x6f, 0x47, 0xa8, 0xc3, 0x02, + 0x3a, 0x3e, 0xf6, 0xf0, 0x31, 0xdb, 0x36, 0xc6, 0xb1, 0x42, 0xe7, 0x3f, 0xc0, 0xea, 0x9f, 0x0f, + 0xa1, 0xb4, 0x90, 0x61, 0x90, 0x98, 0xa8, 0x08, 0xe6, 0x22, 0x4e, 0xc1, 0x84, 0x6f, 0x12, 0x62, + 0x8a, 0x21, 0xcc, 0x47, 0x02, 0x25, 0x64, 0xb1, 0x01, 0x8b, 0x01, 0xb0, 0xe1, 0x3a, 0x26, 0x11, + 0x29, 0x4c, 0x8b, 0x40, 0xc4, 0x89, 0xe3, 0x7d, 0xd9, 0x6d, 0x2d, 0xea, 0x15, 0x93, 0xc9, 0x16, + 0x3c, 0x8c, 0x4b, 0xe2, 0x2a, 0xa8, 0x11, 0x0e, 0xb5, 0x18, 0xc9, 0xb6, 0x2b, 0x5a, 0xf9, 0xaf, + 0x15, 0x18, 0x6b, 0x53, 0x7f, 0x14, 0x97, 0x95, 0x5b, 0xc5, 0xe5, 0xc4, 0x4d, 0xe2, 0x72, 0x19, + 0xb2, 0x84, 0x46, 0xfa, 0xe1, 0xfa, 0x4d, 0x69, 0x2d, 0x75, 0x41, 0xec, 0x1e, 0x8a, 0x62, 0xf7, + 0x4b, 0x98, 0x68, 0x9b, 0xc4, 0x3a, 0xb3, 0xdd, 0x0a, 0x0c, 0x73, 0x91, 0x48, 0x1f, 0xfb, 0x46, + 0xaf, 0x35, 0xda, 0x46, 0xaf, 0x09, 0xca, 0x36, 0xbf, 0x98, 0x68, 0x77, 0xef, 0xbf, 0x99, 0x84, + 0xc9, 0xc8, 0x0f, 0xfd, 0x44, 0xc7, 0xcc, 0xc8, 0xdf, 0x24, 0x07, 0xf7, 0x37, 0xf1, 0x80, 0x3b, + 0x74, 0x27, 0x01, 0x77, 0xf8, 0x6e, 0x02, 0xee, 0x48, 0xbb, 0x46, 0x7e, 0x27, 0x09, 0x53, 0xed, + 0x27, 0x0f, 0xff, 0x2f, 0x55, 0xb2, 0x0e, 0x19, 0x79, 0x0d, 0xc9, 0x03, 0xff, 0x00, 0x5a, 0x01, + 0x41, 0xc7, 0xe3, 0xfe, 0xff, 0x98, 0x5e, 0xfe, 0x26, 0x01, 0xa9, 0x3d, 0xb6, 0x31, 0x22, 0xae, + 0xa3, 0x4e, 0xc3, 0x08, 0xa1, 0x5b, 0xae, 0x3c, 0xdd, 0x4a, 0x69, 0xb2, 0x74, 0x7b, 0xf7, 0xb1, + 0x0e, 0x19, 0xec, 0xf8, 0xde, 0xb9, 0x3e, 0xf0, 0xc6, 0x02, 0x38, 0x9d, 0x98, 0xca, 0xad, 0x42, + 0xf3, 0xb7, 0xa0, 0xd8, 0x79, 0x8a, 0xa7, 0x73, 0xf4, 0x41, 0x8e, 0x25, 0xa6, 0x3b, 0xce, 0xf2, + 0x36, 0x18, 0x44, 0xb9, 0x0a, 0x93, 0x31, 0xa3, 0xae, 0x3a, 0x26, 0x31, 0x90, 0xef, 0x5e, 0x93, + 0xfd, 0x4c, 0xc2, 0x30, 0xa1, 0xab, 0x4d, 0x21, 0xd4, 0x94, 0x26, 0x0a, 0xe5, 0xbf, 0x4f, 0x40, + 0x8a, 0x6f, 0xfe, 0xb6, 0xdc, 0x56, 0xd1, 0x2b, 0x37, 0x11, 0x7d, 0x18, 0x35, 0x12, 0x03, 0x47, + 0x8d, 0x8e, 0x2d, 0xa5, 0xc8, 0x3f, 0x5b, 0xb7, 0x94, 0xef, 0x40, 0xf2, 0x08, 0x0f, 0xe4, 0x7d, + 0x58, 0xff, 0x6b, 0xf2, 0x73, 0xf5, 0x5d, 0x98, 0x6a, 0xd9, 0xa8, 0xea, 0xc8, 0x34, 0x3d, 0x4c, + 0xa9, 0x30, 0x60, 0xbe, 0xf0, 0x15, 0x6d, 0x22, 0xbe, 0x6d, 0xad, 0x88, 0x0e, 0x41, 0x14, 0x1a, + 0x8d, 0xa2, 0xd0, 0xef, 0x25, 0x20, 0x17, 0x98, 0xf8, 0x3a, 0xb6, 0x7c, 0xa4, 0xce, 0xc0, 0x28, + 0xa1, 0xba, 0xd5, 0x69, 0xe8, 0x1a, 0xa8, 0xf8, 0x0c, 0x1b, 0x4d, 0x7e, 0x2d, 0x70, 0x13, 0x93, + 0x1f, 0x0f, 0xc9, 0xc3, 0xfc, 0x62, 0x07, 0x0a, 0x11, 0xe6, 0xe0, 0x7e, 0x65, 0x2c, 0x24, 0x16, + 0x2f, 0x13, 0xd4, 0x2d, 0x88, 0xaa, 0x3a, 0x76, 0x49, 0xd7, 0xc2, 0xe5, 0x43, 0x5a, 0x91, 0x67, + 0xfe, 0x41, 0x12, 0xd4, 0xd8, 0xbb, 0xdd, 0xc0, 0xec, 0xba, 0x9e, 0x26, 0xb4, 0xab, 0x7e, 0x0f, + 0xf2, 0x0d, 0x29, 0x57, 0xdd, 0x64, 0x82, 0x95, 0x09, 0xfc, 0xeb, 0xbd, 0x3c, 0x6e, 0x8b, 0x26, + 0xb4, 0x5c, 0xa3, 0x45, 0x31, 0x5f, 0x81, 0x91, 0x06, 0x3a, 0x77, 0x9b, 0xfe, 0x40, 0x9e, 0x57, + 0x90, 0xfc, 0xe4, 0x5b, 0x22, 0x1b, 0x61, 0xc3, 0xb1, 0x06, 0x79, 0xf4, 0xc2, 0xfa, 0x97, 0x7f, + 0x11, 0xd4, 0x28, 0x0d, 0x0a, 0x9d, 0xf5, 0xfb, 0x90, 0x0a, 0x84, 0x27, 0xa3, 0xe6, 0xab, 0xfd, + 0xc8, 0x5d, 0x0b, 0xa9, 0x3a, 0x95, 0x9c, 0xe8, 0x54, 0x72, 0xf9, 0x25, 0x8c, 0x47, 0xcc, 0x83, + 0x43, 0xb4, 0xbe, 0xcc, 0xe3, 0xab, 0x30, 0x6a, 0x8a, 0xfe, 0xd2, 0x2e, 0x1e, 0xf6, 0x1a, 0x9f, + 0x84, 0xd6, 0x02, 0x9a, 0x72, 0x03, 0x72, 0xb2, 0xee, 0xa0, 0x61, 0x22, 0x9f, 0x9f, 0x82, 0x89, + 0x43, 0x6b, 0xe1, 0x46, 0x45, 0x41, 0xad, 0x42, 0x4a, 0x52, 0xd0, 0x62, 0xa2, 0x94, 0x5c, 0xca, + 0xbc, 0xfd, 0x56, 0x7f, 0xf9, 0x64, 0xc0, 0x30, 0x24, 0x2f, 0xff, 0x40, 0x81, 0xc2, 0x9e, 0x4b, + 0x1c, 0x9f, 0xc6, 0x9e, 0x93, 0x7d, 0x13, 0x66, 0xc4, 0x79, 0x78, 0x83, 0xb7, 0xc4, 0x9f, 0x8e, + 0x0d, 0xe0, 0x8f, 0xa7, 0x38, 0x46, 0x37, 0x70, 0xff, 0x0a, 0xf0, 0x01, 0x9c, 0xce, 0x94, 0xdf, + 0x0d, 0xbc, 0xfc, 0xe3, 0x04, 0x2c, 0xec, 0xc7, 0x5f, 0x0c, 0xaf, 0x21, 0xbb, 0x81, 0xc8, 0xb1, + 0xb3, 0xea, 0xba, 0x54, 0x5c, 0xf6, 0xbc, 0x03, 0x33, 0x87, 0xac, 0x80, 0x4d, 0xbd, 0xe5, 0x03, + 0x11, 0x93, 0x16, 0x15, 0xfe, 0xb8, 0x6f, 0x52, 0x36, 0x47, 0x67, 0x25, 0x55, 0x93, 0xaa, 0xcf, + 0x61, 0x26, 0xde, 0x3d, 0x1a, 0x75, 0xa0, 0x82, 0x37, 0x7b, 0x5b, 0x62, 0xeb, 0x40, 0x65, 0x1a, + 0x37, 0x15, 0x7d, 0x5a, 0x12, 0xb5, 0x51, 0xb5, 0x02, 0x0f, 0x82, 0x21, 0x76, 0xf9, 0xb8, 0xc4, + 0xa4, 0xc5, 0x24, 0x1f, 0xe8, 0x9c, 0xec, 0xd4, 0x9e, 0x63, 0xb2, 0xe1, 0x9e, 0xc2, 0x83, 0x4e, + 0xd2, 0xf8, 0xa0, 0x87, 0x6e, 0x3c, 0xe8, 0xf9, 0xf6, 0x4f, 0x54, 0x62, 0x43, 0x2f, 0xff, 0xa5, + 0x02, 0x6a, 0x20, 0x73, 0xa1, 0x81, 0x3d, 0x57, 0x3c, 0xa3, 0x69, 0xbf, 0xa9, 0x16, 0xb7, 0x5b, + 0x79, 0xda, 0x7a, 0x4b, 0xfd, 0x4b, 0x30, 0x29, 0x5e, 0x4f, 0x0a, 0x88, 0xe0, 0x79, 0xb8, 0x94, + 0x71, 0x8f, 0x57, 0xd5, 0x5f, 0x64, 0x63, 0xfb, 0x93, 0x7f, 0x59, 0x5c, 0x3a, 0x26, 0x7e, 0xbd, + 0x79, 0xb8, 0x6c, 0xb8, 0xf6, 0x8a, 0xfc, 0xce, 0x48, 0xfc, 0xf7, 0x16, 0x35, 0x4f, 0x56, 0x58, + 0x8e, 0x4c, 0x39, 0x01, 0xd5, 0x54, 0x1b, 0x9d, 0xb5, 0x0e, 0x95, 0x96, 0xff, 0x38, 0x01, 0xb3, + 0x5d, 0xed, 0x87, 0x9b, 0xce, 0x7b, 0x30, 0x1b, 0x0e, 0x2c, 0x78, 0xa7, 0x1e, 0x3e, 0x30, 0x15, + 0xf3, 0x99, 0x09, 0x3a, 0x04, 0x4f, 0xd4, 0x83, 0xb7, 0xa4, 0xaf, 0x40, 0x36, 0x76, 0x09, 0x25, + 0x26, 0x94, 0xd6, 0x32, 0xd1, 0x2d, 0x14, 0x55, 0x9b, 0x30, 0xdb, 0xfa, 0x2a, 0x5e, 0xe7, 0x0a, + 0x16, 0x9b, 0x84, 0x24, 0x77, 0x27, 0xef, 0xf5, 0xd2, 0x57, 0x6f, 0xc3, 0xd7, 0xa6, 0x5b, 0x9e, + 0xd2, 0x47, 0x0b, 0xe2, 0x4b, 0x30, 0x63, 0x12, 0xfa, 0xa2, 0x89, 0x2c, 0x72, 0x44, 0xb0, 0x19, + 0xb7, 0xb3, 0x21, 0x3e, 0xc8, 0xa9, 0x78, 0x73, 0x68, 0x62, 0xe5, 0xbf, 0x4a, 0xc0, 0xc4, 0x26, + 0xc6, 0xeb, 0x84, 0x8a, 0xb3, 0x7b, 0x22, 0x37, 0x24, 0x35, 0x98, 0x10, 0xde, 0xc3, 0x94, 0x2d, + 0xe2, 0xd2, 0x6a, 0x90, 0xcb, 0x63, 0x4e, 0x1f, 0x00, 0xf3, 0x2b, 0xab, 0x1a, 0x4c, 0xf8, 0x5d, + 0x40, 0x07, 0x49, 0x53, 0xfc, 0x0e, 0xd0, 0x55, 0xc8, 0xc9, 0x0f, 0x1e, 0x90, 0xcd, 0x4f, 0x2a, + 0x92, 0xfd, 0x3c, 0xd8, 0xcd, 0x0a, 0x9a, 0x0a, 0x27, 0x61, 0xe1, 0xfb, 0xd4, 0xb5, 0x9a, 0xf6, + 0x40, 0x41, 0x58, 0x92, 0x94, 0x7f, 0xbd, 0x55, 0x84, 0x35, 0xa3, 0x8e, 0xcd, 0xa6, 0xc5, 0x9f, + 0xc4, 0x1e, 0x36, 0x0d, 0xa6, 0x85, 0xe8, 0x70, 0x6b, 0x48, 0xcb, 0x88, 0x3a, 0x71, 0xf6, 0xf2, + 0x1a, 0x8c, 0xc9, 0x2e, 0xe1, 0x17, 0x13, 0xe2, 0xb9, 0x48, 0x5e, 0x54, 0x87, 0x9f, 0x48, 0xb4, + 0x1b, 0x5e, 0xb2, 0xd3, 0xf0, 0x76, 0x00, 0x7c, 0x22, 0x77, 0xa3, 0x81, 0x67, 0x58, 0xe9, 0x65, + 0x69, 0x5d, 0xd4, 0xae, 0xa5, 0x7d, 0xf9, 0x8b, 0xf6, 0xb2, 0xa8, 0xe1, 0x5e, 0x16, 0xb5, 0x0d, + 0x6a, 0x1b, 0xf2, 0xfe, 0xfe, 0x96, 0xaa, 0xc2, 0x90, 0x1f, 0x84, 0x9e, 0x21, 0x8d, 0xff, 0x66, + 0xc1, 0xd8, 0xf7, 0xad, 0x8e, 0xa7, 0x32, 0x59, 0xdf, 0xb7, 0xa2, 0xab, 0xf2, 0xdf, 0x57, 0x20, + 0xfb, 0x11, 0x17, 0xb4, 0x86, 0x0d, 0xd7, 0x33, 0xf9, 0x55, 0x1f, 0x37, 0x22, 0xa9, 0x31, 0x65, + 0x90, 0xab, 0x3e, 0x46, 0x28, 0xd0, 0x18, 0x8e, 0x1f, 0xc7, 0x19, 0xe4, 0xa4, 0xdb, 0x8f, 0x70, + 0xca, 0xbf, 0xa5, 0x40, 0xbe, 0x22, 0x22, 0xb3, 0x74, 0x40, 0x6a, 0x11, 0x46, 0x65, 0xac, 0x96, + 0x21, 0x3f, 0x28, 0xaa, 0x18, 0x46, 0x3f, 0x47, 0x67, 0x18, 0x60, 0x97, 0x7f, 0x45, 0x81, 0x2c, + 0x4f, 0x89, 0x85, 0xcc, 0x68, 0xef, 0xdd, 0xdc, 0x33, 0x98, 0xb4, 0x90, 0x8f, 0xa9, 0xaf, 0x33, + 0xe7, 0xc2, 0x53, 0x46, 0x37, 0x1a, 0xe1, 0x6b, 0xd7, 0x79, 0x2b, 0xc9, 0x44, 0x53, 0x05, 0x48, + 0x9c, 0x6f, 0xf9, 0x4b, 0x90, 0x8b, 0x12, 0x97, 0xea, 0x3a, 0xbf, 0xf8, 0x6c, 0x49, 0xc0, 0x44, + 0xbc, 0xce, 0x6a, 0xb9, 0x78, 0x06, 0x46, 0xcb, 0x7f, 0xa4, 0x40, 0x26, 0x06, 0xa4, 0xde, 0x87, + 0x74, 0x7b, 0xd0, 0x89, 0x2a, 0x6e, 0xb3, 0x55, 0x8c, 0x6f, 0x53, 0x93, 0x37, 0xd8, 0xa6, 0x96, + 0x6d, 0x18, 0x16, 0x9f, 0xd8, 0x3c, 0x01, 0xa5, 0x31, 0x88, 0x31, 0x2a, 0x0d, 0x46, 0xf2, 0x62, + 0x90, 0x31, 0x2b, 0x2f, 0xca, 0xbf, 0xab, 0xc0, 0x62, 0x25, 0x38, 0x11, 0x8e, 0x44, 0xdb, 0xb2, + 0x42, 0xfa, 0xba, 0x51, 0xdd, 0x85, 0xbc, 0xb4, 0x08, 0x61, 0xff, 0x81, 0xba, 0xfb, 0x78, 0x29, + 0x20, 0x99, 0xe5, 0xec, 0x58, 0x89, 0x96, 0xbf, 0xa3, 0xc0, 0xfd, 0x70, 0x64, 0x95, 0x2e, 0xc3, + 0xba, 0x7a, 0x55, 0xdc, 0xf9, 0x58, 0x28, 0x64, 0xe3, 0xcd, 0xbd, 0xcd, 0x7f, 0x33, 0x74, 0xfe, + 0x22, 0xdb, 0xef, 0xc9, 0x35, 0x3e, 0x23, 0x99, 0x4a, 0x05, 0x71, 0xa0, 0xc2, 0xf2, 0x7e, 0xc7, + 0xb5, 0xc3, 0x4b, 0xfe, 0xee, 0x79, 0xff, 0x1c, 0xcb, 0xfb, 0xe5, 0xa5, 0x7f, 0x82, 0x7b, 0xc3, + 0xb0, 0x5c, 0xc6, 0xa0, 0x7e, 0xe0, 0x21, 0xc7, 0xaf, 0x34, 0xfd, 0xba, 0xeb, 0x91, 0x8f, 0x85, + 0xf3, 0x2f, 0xc2, 0xe8, 0x31, 0xab, 0x95, 0x5f, 0x3b, 0xa7, 0xb5, 0xa0, 0xa8, 0xbe, 0x03, 0x23, + 0x32, 0xe8, 0x25, 0xfa, 0x09, 0x7a, 0xb2, 0x73, 0xf9, 0xdb, 0x90, 0xa9, 0xf0, 0xf9, 0x71, 0x66, + 0x11, 0xbe, 0xd7, 0x8a, 0xef, 0xdd, 0x14, 0xff, 0xbb, 0x0a, 0xe4, 0x37, 0x8e, 0x8e, 0x70, 0x5f, + 0x3c, 0xaa, 0x30, 0xee, 0x60, 0x5f, 0x17, 0x45, 0xf9, 0xf1, 0x62, 0x7f, 0xec, 0xc6, 0x1c, 0xec, + 0x7f, 0x20, 0xc8, 0xf8, 0x67, 0x8a, 0xea, 0x2c, 0xa4, 0x08, 0xd5, 0x4f, 0x91, 0x25, 0x8f, 0x7c, + 0x52, 0xda, 0x28, 0xa1, 0x1f, 0xb1, 0x62, 0xb9, 0x01, 0x05, 0xae, 0x9c, 0xed, 0xd6, 0xc7, 0x1e, + 0x5d, 0xf4, 0xd3, 0xfe, 0x94, 0x24, 0x71, 0xb3, 0xa7, 0x24, 0x8f, 0x7d, 0xb8, 0xdf, 0xeb, 0x83, + 0x3d, 0x15, 0x60, 0x64, 0xc7, 0x3d, 0x74, 0xcd, 0xf3, 0xc2, 0x3d, 0xb5, 0x0c, 0x0b, 0xab, 0xf8, + 0x98, 0x38, 0xab, 0x96, 0x6b, 0x9c, 0x60, 0xaf, 0x66, 0x23, 0xcf, 0x5f, 0x73, 0x1d, 0xdf, 0x43, + 0x86, 0x4f, 0x77, 0x1d, 0xeb, 0xbc, 0xa0, 0xa8, 0xd3, 0xa0, 0x76, 0xa9, 0x4f, 0xa8, 0x59, 0x48, + 0x6d, 0x9c, 0x62, 0xef, 0xdc, 0x75, 0x70, 0x21, 0xf9, 0x78, 0x3f, 0xb0, 0x7c, 0xf1, 0x9c, 0x47, + 0x1d, 0x83, 0xcc, 0x81, 0x43, 0x1b, 0xd8, 0xe0, 0x51, 0xba, 0x70, 0x8f, 0xb1, 0x15, 0xba, 0x2f, + 0x28, 0xec, 0xf7, 0x1e, 0x6a, 0x52, 0x6c, 0x16, 0x12, 0x6a, 0x1e, 0x60, 0x1d, 0xdb, 0xae, 0x45, + 0x68, 0x1d, 0x9b, 0x85, 0xa4, 0x9a, 0x81, 0x51, 0xfe, 0x0c, 0x16, 0x9b, 0x85, 0xa1, 0xc7, 0x7f, + 0x91, 0x90, 0x2f, 0x36, 0xf8, 0x31, 0x73, 0x09, 0x32, 0x07, 0x3b, 0xb5, 0xbd, 0x8d, 0xb5, 0xea, + 0x66, 0x75, 0x63, 0xbd, 0x70, 0x6f, 0x6e, 0xec, 0xe2, 0xb2, 0x14, 0xaf, 0x52, 0x0b, 0x90, 0x5c, + 0x3d, 0x78, 0x56, 0x50, 0xe6, 0x46, 0x2f, 0x2e, 0x4b, 0xec, 0x27, 0x8b, 0xff, 0xb5, 0x8d, 0xad, + 0xad, 0x42, 0x62, 0x2e, 0x75, 0x71, 0x59, 0xe2, 0xbf, 0xd9, 0x4a, 0xa8, 0xed, 0xef, 0xee, 0xe9, + 0xac, 0x6b, 0x72, 0x2e, 0x7b, 0x71, 0x59, 0x0a, 0xcb, 0xcc, 0xe1, 0xf3, 0xdf, 0x9c, 0x68, 0x68, + 0x2e, 0x77, 0x71, 0x59, 0x8a, 0x2a, 0x18, 0xe5, 0x7e, 0xe5, 0xc3, 0x0d, 0x4e, 0x39, 0x2c, 0x28, + 0x83, 0x32, 0xa3, 0xe4, 0xbf, 0x39, 0xe5, 0x88, 0xa0, 0x0c, 0x2b, 0xd4, 0x69, 0x18, 0x59, 0x3d, + 0x78, 0xa6, 0xef, 0xed, 0x16, 0x46, 0xe7, 0xe0, 0xe2, 0xb2, 0x24, 0x4b, 0xcc, 0x3e, 0x59, 0x3b, + 0x6b, 0x48, 0xcd, 0x65, 0x2e, 0x2e, 0x4b, 0x41, 0x51, 0x5d, 0x00, 0x60, 0x7d, 0x2a, 0xfb, 0xbb, + 0xdb, 0xd5, 0xb5, 0x42, 0x7a, 0x2e, 0x7f, 0x71, 0x59, 0x8a, 0xd5, 0x30, 0x69, 0xf0, 0xae, 0xb2, + 0x03, 0x08, 0x69, 0xc4, 0xaa, 0x1e, 0xff, 0xa9, 0x02, 0xb9, 0x8d, 0xe0, 0xf4, 0x8a, 0x4b, 0xf0, + 0x3e, 0x14, 0x63, 0x5a, 0x69, 0x69, 0x13, 0x2a, 0x12, 0x3a, 0x2c, 0x28, 0x6a, 0x0e, 0xd2, 0xfc, + 0x16, 0x68, 0x93, 0x58, 0x56, 0x21, 0xa1, 0xce, 0xc1, 0x34, 0x2f, 0x6e, 0x23, 0xdf, 0xa8, 0x6b, + 0xe2, 0x3b, 0x5a, 0xae, 0x98, 0x42, 0x92, 0x19, 0x48, 0xd4, 0xb6, 0x83, 0x5f, 0x8a, 0xfa, 0x21, + 0x75, 0x0a, 0xc6, 0xe5, 0x67, 0x7c, 0xf2, 0xdb, 0x58, 0xe2, 0x3a, 0x85, 0x61, 0x06, 0x25, 0xde, + 0x39, 0xb7, 0xbf, 0xa6, 0x2c, 0x8c, 0x3c, 0xfe, 0x4e, 0xa0, 0xef, 0x6d, 0x44, 0x4f, 0x98, 0xcc, + 0x0e, 0x76, 0x0e, 0x6a, 0x5c, 0xd5, 0x5c, 0x66, 0xa2, 0xc4, 0xb4, 0x5c, 0xd9, 0x09, 0xb5, 0x5c, + 0xd9, 0x79, 0xc6, 0xa4, 0xa8, 0x6d, 0x7c, 0x70, 0xb0, 0x55, 0xd1, 0x0a, 0x09, 0x21, 0x45, 0x59, + 0x64, 0x52, 0x5a, 0xdb, 0xdd, 0x59, 0xaf, 0xee, 0x57, 0x77, 0x77, 0x2a, 0x4c, 0xa3, 0x5c, 0x4a, + 0xb1, 0x2a, 0x75, 0x19, 0x66, 0xd6, 0xab, 0xda, 0xc6, 0x1a, 0x2b, 0x32, 0x45, 0xea, 0xbb, 0x9a, + 0xfe, 0xb4, 0xfa, 0xc1, 0xd3, 0x0d, 0xad, 0x90, 0x9a, 0x1b, 0xbf, 0xb8, 0x2c, 0xe5, 0x5a, 0x2a, + 0x5b, 0xfb, 0x73, 0x71, 0xef, 0x6a, 0xfa, 0xd6, 0xee, 0xcf, 0x6f, 0x68, 0x85, 0x82, 0xe8, 0xdf, + 0x52, 0xa9, 0xce, 0x43, 0x66, 0xff, 0xd9, 0xde, 0x86, 0xbe, 0x5d, 0xd1, 0x3e, 0xdc, 0xd8, 0x2f, + 0x94, 0xc4, 0x54, 0x44, 0x49, 0x9d, 0x05, 0xe0, 0x8d, 0x5b, 0xd5, 0xed, 0xea, 0x7e, 0xe1, 0xfd, + 0xb9, 0xf4, 0xc5, 0x65, 0x69, 0x98, 0x17, 0x56, 0xeb, 0xdf, 0xff, 0x74, 0x41, 0xf9, 0xe1, 0xa7, + 0x0b, 0xca, 0xbf, 0x7e, 0xba, 0xa0, 0x7c, 0xf7, 0xb3, 0x85, 0x7b, 0x3f, 0xfc, 0x6c, 0xe1, 0xde, + 0x3f, 0x7e, 0xb6, 0x70, 0xef, 0x1b, 0x3b, 0xb1, 0xc4, 0xac, 0x1a, 0x84, 0x8c, 0x2d, 0x74, 0x48, + 0x57, 0xc2, 0x00, 0xf2, 0x96, 0xe1, 0x7a, 0x38, 0x5e, 0xac, 0x23, 0xe2, 0xac, 0xd8, 0x2e, 0xdb, + 0x20, 0xd0, 0xe8, 0xaf, 0x72, 0xf0, 0x24, 0xee, 0x70, 0x84, 0x7f, 0x0b, 0xfa, 0x33, 0xff, 0x1d, + 0x00, 0x00, 0xff, 0xff, 0xd6, 0x19, 0xfd, 0x4e, 0xb8, 0x43, 0x00, 0x00, } func (this *Params) Equal(that interface{}) bool { @@ -4088,6 +4159,13 @@ func (m *DerivativeMarket) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.QuoteDecimals != 0 { + i = encodeVarintExchange(dAtA, i, uint64(m.QuoteDecimals)) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xa0 + } if m.AdminPermissions != 0 { i = encodeVarintExchange(dAtA, i, uint64(m.AdminPermissions)) i-- @@ -4271,6 +4349,13 @@ func (m *BinaryOptionsMarket) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.QuoteDecimals != 0 { + i = encodeVarintExchange(dAtA, i, uint64(m.QuoteDecimals)) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xa0 + } if m.AdminPermissions != 0 { i = encodeVarintExchange(dAtA, i, uint64(m.AdminPermissions)) i-- @@ -4741,6 +4826,16 @@ func (m *SpotMarket) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.QuoteDecimals != 0 { + i = encodeVarintExchange(dAtA, i, uint64(m.QuoteDecimals)) + i-- + dAtA[i] = 0x78 + } + if m.BaseDecimals != 0 { + i = encodeVarintExchange(dAtA, i, uint64(m.BaseDecimals)) + i-- + dAtA[i] = 0x70 + } if m.AdminPermissions != 0 { i = encodeVarintExchange(dAtA, i, uint64(m.AdminPermissions)) i-- @@ -6959,6 +7054,46 @@ func (m *EffectiveGrant) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *DenomMinNotional) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *DenomMinNotional) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *DenomMinNotional) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + { + size := m.MinNotional.Size() + i -= size + if _, err := m.MinNotional.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintExchange(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintExchange(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func encodeVarintExchange(dAtA []byte, offset int, v uint64) int { offset -= sovExchange(v) base := offset @@ -7123,6 +7258,9 @@ func (m *DerivativeMarket) Size() (n int) { if m.AdminPermissions != 0 { n += 2 + sovExchange(uint64(m.AdminPermissions)) } + if m.QuoteDecimals != 0 { + n += 2 + sovExchange(uint64(m.QuoteDecimals)) + } return n } @@ -7190,6 +7328,9 @@ func (m *BinaryOptionsMarket) Size() (n int) { if m.AdminPermissions != 0 { n += 2 + sovExchange(uint64(m.AdminPermissions)) } + if m.QuoteDecimals != 0 { + n += 2 + sovExchange(uint64(m.QuoteDecimals)) + } return n } @@ -7347,6 +7488,12 @@ func (m *SpotMarket) Size() (n int) { if m.AdminPermissions != 0 { n += 1 + sovExchange(uint64(m.AdminPermissions)) } + if m.BaseDecimals != 0 { + n += 1 + sovExchange(uint64(m.BaseDecimals)) + } + if m.QuoteDecimals != 0 { + n += 1 + sovExchange(uint64(m.QuoteDecimals)) + } return n } @@ -8150,6 +8297,21 @@ func (m *EffectiveGrant) Size() (n int) { return n } +func (m *DenomMinNotional) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovExchange(uint64(l)) + } + l = m.MinNotional.Size() + n += 1 + l + sovExchange(uint64(l)) + return n +} + func sovExchange(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -9739,6 +9901,25 @@ func (m *DerivativeMarket) Unmarshal(dAtA []byte) error { break } } + case 20: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field QuoteDecimals", wireType) + } + m.QuoteDecimals = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExchange + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.QuoteDecimals |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipExchange(dAtA[iNdEx:]) @@ -10335,6 +10516,25 @@ func (m *BinaryOptionsMarket) Unmarshal(dAtA []byte) error { break } } + case 20: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field QuoteDecimals", wireType) + } + m.QuoteDecimals = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExchange + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.QuoteDecimals |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipExchange(dAtA[iNdEx:]) @@ -11643,6 +11843,44 @@ func (m *SpotMarket) Unmarshal(dAtA []byte) error { break } } + case 14: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field BaseDecimals", wireType) + } + m.BaseDecimals = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExchange + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.BaseDecimals |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 15: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field QuoteDecimals", wireType) + } + m.QuoteDecimals = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExchange + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.QuoteDecimals |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipExchange(dAtA[iNdEx:]) @@ -17794,6 +18032,122 @@ func (m *EffectiveGrant) Unmarshal(dAtA []byte) error { } return nil } +func (m *DenomMinNotional) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExchange + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DenomMinNotional: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DenomMinNotional: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExchange + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExchange + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExchange + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MinNotional", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExchange + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExchange + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExchange + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.MinNotional.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipExchange(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthExchange + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func skipExchange(dAtA []byte) (n int, err error) { l := len(dAtA) iNdEx := 0 diff --git a/chain/exchange/types/genesis.pb.go b/chain/exchange/types/genesis.pb.go index bfb2e0ca..58ab2e8f 100644 --- a/chain/exchange/types/genesis.pb.go +++ b/chain/exchange/types/genesis.pb.go @@ -103,6 +103,7 @@ type GenesisState struct { MarketVolumes []*MarketVolume `protobuf:"bytes,34,rep,name=market_volumes,json=marketVolumes,proto3" json:"market_volumes,omitempty"` GrantAuthorizations []*FullGrantAuthorizations `protobuf:"bytes,35,rep,name=grant_authorizations,json=grantAuthorizations,proto3" json:"grant_authorizations,omitempty"` ActiveGrants []*FullActiveGrant `protobuf:"bytes,36,rep,name=active_grants,json=activeGrants,proto3" json:"active_grants,omitempty"` + DenomMinNotionals []*DenomMinNotional `protobuf:"bytes,37,rep,name=denom_min_notionals,json=denomMinNotionals,proto3" json:"denom_min_notionals,omitempty"` } func (m *GenesisState) Reset() { *m = GenesisState{} } @@ -390,6 +391,13 @@ func (m *GenesisState) GetActiveGrants() []*FullActiveGrant { return nil } +func (m *GenesisState) GetDenomMinNotionals() []*DenomMinNotional { + if m != nil { + return m.DenomMinNotionals + } + return nil +} + type OrderbookSequence struct { Sequence uint64 `protobuf:"varint,1,opt,name=sequence,proto3" json:"sequence,omitempty"` MarketId string `protobuf:"bytes,2,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` @@ -1172,135 +1180,137 @@ func init() { } var fileDescriptor_c47ec6b98758ed05 = []byte{ - // 2044 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x59, 0xcb, 0x6f, 0x24, 0x47, - 0x19, 0x77, 0xdb, 0x5e, 0x7b, 0xfc, 0xf9, 0xb5, 0x2e, 0x3f, 0xb6, 0xfd, 0xf6, 0x8e, 0xc3, 0x32, - 0x0b, 0xd9, 0x71, 0x76, 0x97, 0x28, 0x90, 0xf0, 0x88, 0xc7, 0x8f, 0x60, 0x70, 0x62, 0xab, 0x3d, - 0xca, 0x21, 0x3c, 0x5a, 0x3d, 0xdd, 0x35, 0x33, 0x15, 0x77, 0x77, 0x0d, 0x5d, 0xd5, 0xde, 0x35, - 0x5c, 0x22, 0x0e, 0x28, 0x88, 0x43, 0x00, 0x09, 0x89, 0x63, 0x84, 0x38, 0x80, 0x90, 0xf8, 0x1f, - 0xb8, 0xe5, 0x18, 0x6e, 0x88, 0x43, 0x84, 0x76, 0x2f, 0xfc, 0x19, 0xa8, 0xaa, 0xab, 0x1f, 0xf3, - 0xea, 0x19, 0x9b, 0xdc, 0xa6, 0xaa, 0xbe, 0xef, 0xf7, 0xfb, 0xd5, 0xf3, 0xfb, 0xfa, 0x1b, 0x28, - 0x11, 0xff, 0x43, 0x6c, 0x73, 0x72, 0x85, 0xf7, 0xf0, 0x73, 0xbb, 0x69, 0xf9, 0x0d, 0xbc, 0x77, - 0xf5, 0xb8, 0x86, 0xb9, 0xf5, 0x78, 0xaf, 0x81, 0x7d, 0xcc, 0x08, 0x2b, 0xb7, 0x02, 0xca, 0x29, - 0x5a, 0x4b, 0x2c, 0xcb, 0xb1, 0x65, 0x59, 0x59, 0xae, 0x3d, 0xcc, 0x41, 0x49, 0x8c, 0x25, 0xcc, - 0xda, 0x6e, 0x8e, 0x29, 0x7f, 0xae, 0x8c, 0x96, 0x1a, 0xb4, 0x41, 0xe5, 0xcf, 0x3d, 0xf1, 0x2b, - 0xea, 0x2d, 0xfe, 0x6d, 0x13, 0x66, 0xde, 0x89, 0x34, 0x5d, 0x70, 0x8b, 0x63, 0xf4, 0x36, 0x4c, - 0xb4, 0xac, 0xc0, 0xf2, 0x98, 0xae, 0xed, 0x68, 0xa5, 0xe9, 0x27, 0xc5, 0x72, 0x7f, 0x8d, 0xe5, - 0x73, 0x69, 0x59, 0x19, 0xff, 0xec, 0x8b, 0xed, 0x11, 0x43, 0xf9, 0xa1, 0x13, 0x98, 0x61, 0x2d, - 0xca, 0x4d, 0xcf, 0x0a, 0x2e, 0x31, 0x67, 0xfa, 0xe8, 0xce, 0x58, 0x69, 0xfa, 0xc9, 0x83, 0x3c, - 0x9c, 0x8b, 0x16, 0xe5, 0xef, 0x4a, 0x73, 0x63, 0x9a, 0x25, 0xbf, 0x19, 0xfa, 0x11, 0x20, 0x07, - 0x07, 0xe4, 0xca, 0x12, 0x6e, 0x09, 0xe0, 0x98, 0x04, 0x7c, 0x35, 0x0f, 0xf0, 0x30, 0xf1, 0x52, - 0xb0, 0x0b, 0x4e, 0x47, 0x0f, 0x43, 0xef, 0xc3, 0x9c, 0xd4, 0x49, 0x03, 0x07, 0x07, 0x35, 0x4a, - 0x2f, 0xf5, 0x71, 0x09, 0xfc, 0x70, 0x90, 0xd2, 0x33, 0xe1, 0x50, 0xa1, 0xf4, 0x52, 0x4d, 0x7c, - 0x96, 0xc5, 0x9d, 0x02, 0x05, 0x35, 0x61, 0x29, 0x23, 0x3a, 0x45, 0xbf, 0x23, 0xd1, 0xf7, 0x86, - 0x93, 0xdd, 0xc9, 0xb1, 0xe8, 0xb4, 0x0f, 0x49, 0xa6, 0x23, 0x28, 0xd4, 0x2c, 0xd7, 0xf2, 0x6d, - 0xcc, 0xf4, 0x09, 0x89, 0xbe, 0x9b, 0x87, 0x5e, 0x89, 0x6c, 0x15, 0x62, 0xe2, 0x8a, 0x0c, 0x98, - 0x6a, 0x51, 0x46, 0x38, 0xa1, 0x3e, 0xd3, 0x27, 0x25, 0x4e, 0x79, 0x38, 0x95, 0xe7, 0xca, 0x4d, - 0x41, 0xa6, 0x30, 0x88, 0xc0, 0x3d, 0x16, 0xd6, 0x2c, 0xdb, 0xa6, 0xa1, 0xcf, 0x4d, 0x1e, 0x58, - 0x0e, 0x36, 0x7d, 0x2a, 0x95, 0x16, 0x24, 0xc3, 0xd7, 0x73, 0x57, 0x39, 0x71, 0x7d, 0x8f, 0xa6, - 0x8a, 0x97, 0x53, 0xc4, 0xaa, 0x00, 0x94, 0x63, 0x0c, 0xfd, 0x4a, 0x83, 0x1d, 0xfc, 0xbc, 0x45, - 0x82, 0x6b, 0xb3, 0x1e, 0xf2, 0x30, 0xc0, 0x4c, 0x9d, 0x14, 0x93, 0xf8, 0x75, 0x6a, 0x32, 0x71, - 0xac, 0xf5, 0x29, 0x49, 0xfa, 0xcd, 0x3c, 0xd2, 0x23, 0x89, 0x71, 0x1c, 0x41, 0x44, 0x87, 0xe4, - 0xc4, 0xaf, 0x53, 0x79, 0x2d, 0x94, 0x82, 0x0d, 0x9c, 0x63, 0x83, 0x08, 0x2c, 0xb7, 0x70, 0xd0, - 0xc2, 0x3c, 0xb4, 0xdc, 0xac, 0x04, 0x1d, 0x06, 0xef, 0xfc, 0x79, 0xec, 0x98, 0x82, 0xc6, 0x3b, - 0xdf, 0xea, 0x1e, 0x42, 0xbf, 0xd4, 0x60, 0xab, 0x8b, 0xab, 0x1e, 0xfa, 0x0e, 0xf1, 0x1b, 0x6a, - 0xc6, 0xd3, 0x92, 0xf4, 0x8d, 0x1b, 0x90, 0x1e, 0x47, 0xfe, 0xd9, 0x09, 0xaf, 0xb7, 0xfa, 0x9b, - 0xa0, 0x3f, 0x68, 0xf0, 0xa0, 0xeb, 0x7a, 0x9a, 0x0c, 0x73, 0xee, 0x62, 0x0f, 0xfb, 0xdc, 0x64, - 0x76, 0x13, 0x3b, 0xa1, 0x8b, 0x1d, 0x7d, 0x46, 0x8a, 0x79, 0xf3, 0x26, 0x57, 0xf6, 0x22, 0xc1, - 0xc9, 0x2c, 0xc6, 0xae, 0xd3, 0xd7, 0xea, 0x22, 0x26, 0x43, 0x6f, 0x80, 0x4e, 0x98, 0x29, 0xef, - 0x76, 0xcc, 0x62, 0x62, 0xdf, 0xaa, 0x09, 0x21, 0xb3, 0x3b, 0x5a, 0xa9, 0x60, 0x2c, 0x13, 0x26, - 0x2e, 0xf2, 0x91, 0x1a, 0x3d, 0x8a, 0x06, 0xd1, 0x11, 0x6c, 0x13, 0x66, 0xa6, 0x14, 0xac, 0xdb, - 0x7f, 0x4e, 0xfa, 0x6f, 0x10, 0x96, 0xca, 0x65, 0x9d, 0x30, 0x57, 0xb0, 0x21, 0x0e, 0xbc, 0xd8, - 0x8a, 0x00, 0x3f, 0xb3, 0x02, 0xc7, 0xb4, 0x2d, 0xaf, 0x65, 0x91, 0x86, 0x1f, 0x1d, 0x87, 0x79, - 0xf9, 0xb0, 0xbe, 0x9e, 0xb7, 0x18, 0xd5, 0xc8, 0xdf, 0x90, 0xee, 0x07, 0xca, 0x5b, 0xac, 0x83, - 0xb1, 0xca, 0xfb, 0x0d, 0xa1, 0x8f, 0x34, 0xf8, 0x4a, 0x07, 0x71, 0x8b, 0x52, 0x37, 0x65, 0x8f, - 0xf7, 0x43, 0xbf, 0x3b, 0xf8, 0x92, 0xc7, 0xc8, 0x11, 0xcf, 0x39, 0xa5, 0xae, 0x71, 0xbf, 0x8d, - 0x5a, 0x74, 0xc5, 0x46, 0xf1, 0xda, 0xa3, 0xdf, 0x6b, 0xf0, 0xa0, 0xdf, 0xdc, 0xe3, 0xc7, 0xa0, - 0x45, 0x89, 0xcf, 0x99, 0xbe, 0x20, 0x35, 0x7c, 0xf7, 0xc6, 0xab, 0xb0, 0x1f, 0xc1, 0x9c, 0x4b, - 0x14, 0xa3, 0xc8, 0x07, 0xda, 0x20, 0x1b, 0x96, 0xeb, 0x18, 0x9b, 0x0e, 0x61, 0x91, 0x80, 0x64, - 0x19, 0x90, 0xdc, 0x88, 0xdc, 0x7b, 0x79, 0x8c, 0xf1, 0xa1, 0xf2, 0x8b, 0x27, 0x69, 0x2c, 0xd6, - 0xbb, 0x3b, 0xd1, 0x33, 0xd8, 0x6c, 0x23, 0x49, 0x9e, 0x3e, 0x82, 0x03, 0x93, 0x73, 0x57, 0x5f, - 0x94, 0xf3, 0x7d, 0x7d, 0x48, 0x32, 0x35, 0x83, 0x2a, 0xc1, 0x41, 0xb5, 0x7a, 0x6a, 0xac, 0xd6, - 0x7b, 0x0f, 0x71, 0x17, 0xfd, 0x5a, 0x83, 0xdd, 0x36, 0xe6, 0x5a, 0x68, 0x8b, 0x7b, 0x78, 0x45, - 0xdd, 0xd0, 0xc3, 0xb1, 0x0e, 0xa6, 0x2f, 0x49, 0xfe, 0xb7, 0x86, 0xe4, 0xaf, 0x48, 0x90, 0xf7, - 0x25, 0x86, 0x22, 0x64, 0xc6, 0x76, 0x3d, 0xdf, 0x00, 0x7d, 0x1b, 0xd6, 0x09, 0x33, 0xeb, 0x24, - 0x60, 0xdc, 0x14, 0x9a, 0xec, 0x6b, 0xdb, 0xc5, 0x66, 0x9d, 0xf8, 0x84, 0x35, 0xb1, 0xa3, 0x2f, - 0xcb, 0xcb, 0x73, 0x8f, 0xb0, 0x63, 0x61, 0x71, 0x8c, 0xf1, 0x81, 0x18, 0x3f, 0x56, 0xc3, 0xe8, - 0x13, 0x0d, 0x1e, 0xb5, 0x70, 0xf4, 0x86, 0x0d, 0x77, 0x8e, 0x57, 0x6e, 0x75, 0x8e, 0x4b, 0x8a, - 0xa4, 0x3a, 0xf0, 0x38, 0xff, 0x45, 0x83, 0x72, 0x1f, 0x45, 0xfd, 0x8e, 0xf5, 0x3d, 0x29, 0xe9, - 0xe8, 0xd6, 0xc7, 0x3a, 0x62, 0x53, 0xa7, 0xfb, 0x61, 0x2f, 0xa5, 0xbd, 0x0f, 0xf9, 0xb7, 0x60, - 0x35, 0x52, 0xc6, 0x4c, 0xda, 0xe2, 0x26, 0x0d, 0xb9, 0x69, 0x39, 0x4e, 0x80, 0x19, 0xc3, 0x4c, - 0xd7, 0x77, 0xc6, 0x4a, 0x53, 0xc6, 0x8a, 0x32, 0x38, 0x6b, 0xf1, 0xb3, 0x90, 0xef, 0xc7, 0xa3, - 0xa8, 0x06, 0x7a, 0x93, 0x30, 0x4e, 0x03, 0x62, 0x5b, 0xae, 0x8a, 0xd5, 0x01, 0xb6, 0x69, 0xe0, - 0x30, 0x7d, 0x55, 0x4e, 0xa7, 0x34, 0x68, 0x3a, 0xd8, 0x88, 0xec, 0x8d, 0x95, 0x14, 0x29, 0xdb, - 0x8f, 0x30, 0xac, 0xd4, 0x88, 0x6f, 0x05, 0xd7, 0x42, 0x9d, 0xc8, 0x10, 0x92, 0x6c, 0x6e, 0x6d, - 0x70, 0x70, 0xac, 0x48, 0xcf, 0xb3, 0xc8, 0x51, 0x25, 0x74, 0x4b, 0xb5, 0xee, 0x4e, 0x86, 0x9a, - 0xf0, 0xa4, 0x27, 0x8d, 0x49, 0x1c, 0x96, 0x86, 0x23, 0xb3, 0x4e, 0x83, 0x4c, 0x9c, 0xd2, 0xd7, - 0xe5, 0xf2, 0xbc, 0xda, 0x03, 0xf1, 0xc4, 0x61, 0x49, 0x5c, 0x39, 0xa6, 0x41, 0x1a, 0x6d, 0x50, - 0x15, 0x4a, 0x99, 0x2c, 0xb7, 0x03, 0x9f, 0x53, 0x41, 0x61, 0x63, 0xd3, 0x76, 0x29, 0xc3, 0xfa, - 0x86, 0xc4, 0x2f, 0xa6, 0x99, 0x6d, 0x16, 0xb6, 0x4a, 0x8f, 0x85, 0xe9, 0x81, 0xb0, 0x14, 0x39, - 0xa9, 0x83, 0x7d, 0xea, 0x99, 0x0e, 0xb6, 0x89, 0x67, 0xb9, 0x4c, 0xdf, 0x1c, 0x9c, 0x93, 0x1e, - 0x0a, 0x8f, 0x43, 0xe5, 0x10, 0xe7, 0xa4, 0x4e, 0xb6, 0x53, 0xe4, 0x48, 0xf7, 0x6d, 0xea, 0x3b, - 0x32, 0x3b, 0xb3, 0x5c, 0xb3, 0x57, 0x82, 0xca, 0xf4, 0xad, 0xc1, 0x51, 0xfa, 0x20, 0x05, 0xe9, - 0x91, 0xac, 0x1a, 0xdb, 0x76, 0xdf, 0x71, 0x49, 0x21, 0xce, 0x41, 0x9c, 0xad, 0x60, 0x6c, 0x7a, - 0xa1, 0xcb, 0x49, 0xcb, 0x25, 0x38, 0x60, 0xfa, 0xf6, 0xe0, 0x73, 0xa0, 0x72, 0x10, 0x8c, 0xdf, - 0x4d, 0xfc, 0x8c, 0x25, 0xaf, 0xbb, 0x93, 0xa1, 0x9f, 0xc2, 0x62, 0x32, 0x2f, 0x93, 0xe1, 0x9f, - 0x85, 0x58, 0xa6, 0x9e, 0x3b, 0x92, 0xe3, 0x51, 0x1e, 0x47, 0xa2, 0xf5, 0x42, 0x79, 0x19, 0x88, - 0x76, 0x76, 0x31, 0xf4, 0x21, 0xa0, 0x4c, 0x7a, 0x1b, 0x3d, 0xb5, 0x4c, 0xbf, 0x3f, 0xf8, 0x89, - 0xdd, 0x6f, 0x34, 0x02, 0xdc, 0xb0, 0x38, 0x4e, 0x53, 0xdc, 0xe8, 0x0d, 0x8d, 0x2e, 0x8a, 0xb1, - 0xc0, 0x3a, 0xfa, 0x19, 0x3a, 0x83, 0x39, 0xb5, 0x64, 0x31, 0x4f, 0x71, 0xf0, 0xa5, 0x8c, 0x96, - 0x4a, 0x41, 0xcf, 0x7a, 0x99, 0x16, 0x43, 0x75, 0x58, 0x6a, 0x04, 0x96, 0x88, 0x51, 0x21, 0x6f, - 0xd2, 0x80, 0xfc, 0xdc, 0x8a, 0x52, 0xff, 0x5d, 0x09, 0xfb, 0x34, 0x37, 0x42, 0x84, 0xae, 0xfb, - 0x8e, 0xf0, 0xdd, 0x6f, 0x73, 0x35, 0x16, 0x1b, 0xdd, 0x9d, 0xe8, 0x1c, 0x66, 0x2d, 0x89, 0x63, - 0xca, 0x51, 0xa6, 0xbf, 0x32, 0x38, 0xf3, 0x17, 0x04, 0xfb, 0x72, 0x4c, 0xd2, 0x18, 0x33, 0x56, - 0xda, 0x60, 0xc5, 0x53, 0x58, 0xe8, 0xda, 0x1f, 0xb4, 0x06, 0x85, 0x78, 0x87, 0xe5, 0x37, 0xeb, - 0xb8, 0x91, 0xb4, 0xd1, 0x3a, 0x4c, 0x25, 0x17, 0x54, 0x1f, 0xdd, 0xd1, 0x4a, 0x53, 0x46, 0xc1, - 0x53, 0x57, 0xb0, 0xf8, 0x91, 0x06, 0xab, 0x7d, 0x43, 0x2e, 0xd2, 0x61, 0x52, 0x6d, 0x84, 0x44, - 0x9d, 0x32, 0xe2, 0x26, 0x3a, 0x81, 0x42, 0x12, 0xd5, 0x47, 0x65, 0x0a, 0x51, 0x1e, 0x32, 0xaa, - 0xc6, 0xe1, 0x7c, 0x92, 0x47, 0xc1, 0xbb, 0xf8, 0x57, 0x0d, 0xb6, 0x07, 0x44, 0x5d, 0xf4, 0x0d, - 0x58, 0x51, 0x21, 0x9d, 0x71, 0x2b, 0x10, 0x19, 0x85, 0x87, 0x19, 0xb7, 0xbc, 0x96, 0xd4, 0x35, - 0x66, 0x2c, 0x45, 0xa3, 0x17, 0x62, 0xb0, 0x1a, 0x8f, 0xa1, 0x73, 0x98, 0x6b, 0x3f, 0x9e, 0xea, - 0x3b, 0x3c, 0xf7, 0x25, 0xd9, 0x6f, 0x3b, 0x91, 0xb3, 0x6d, 0x07, 0xb1, 0x58, 0x87, 0xd9, 0xb6, - 0xf1, 0x9c, 0x15, 0x7a, 0x0b, 0x26, 0x12, 0x52, 0xad, 0x34, 0x55, 0xd9, 0x15, 0x6f, 0xd2, 0xbf, - 0xbf, 0xd8, 0x5e, 0xb7, 0x29, 0xf3, 0x28, 0x63, 0xce, 0x65, 0x99, 0xd0, 0x3d, 0xcf, 0xe2, 0xcd, - 0xf2, 0x29, 0x6e, 0x58, 0xf6, 0xf5, 0x21, 0xb6, 0x0d, 0xe5, 0x52, 0xfc, 0x05, 0x14, 0x87, 0x88, - 0x77, 0xb9, 0xe4, 0x2a, 0x16, 0xdf, 0x84, 0x3c, 0x72, 0x29, 0xfe, 0x53, 0x83, 0x87, 0x43, 0xc7, - 0x67, 0xf4, 0x1d, 0x58, 0xcf, 0x26, 0x28, 0xbd, 0xf7, 0x47, 0x0f, 0x92, 0x04, 0xa3, 0x63, 0x8f, - 0x70, 0xba, 0x47, 0x89, 0xe2, 0x2f, 0x23, 0x29, 0x8e, 0x37, 0x2e, 0x6a, 0x16, 0xff, 0xa8, 0xc1, - 0x6c, 0x5b, 0xdd, 0xa2, 0xfd, 0x5a, 0x68, 0xed, 0xd7, 0x02, 0x6d, 0xc0, 0x14, 0x61, 0x95, 0xf0, - 0xfa, 0x82, 0x38, 0xd1, 0xfe, 0x15, 0x8c, 0xb4, 0x03, 0x55, 0x60, 0x42, 0xbe, 0x87, 0x71, 0x19, - 0xe6, 0x6b, 0x83, 0xaa, 0x25, 0xa7, 0xc4, 0x23, 0x11, 0xb5, 0xa1, 0x3c, 0xdf, 0x2c, 0x7c, 0xfc, - 0xe9, 0xf6, 0xc8, 0x7f, 0x3f, 0xdd, 0x1e, 0x29, 0xfe, 0x59, 0x83, 0xc5, 0x1e, 0x71, 0xe4, 0xff, - 0x11, 0xf8, 0xfd, 0x0e, 0x81, 0xaf, 0x0d, 0xf7, 0xd1, 0x99, 0x2b, 0xf3, 0x1f, 0x63, 0xb0, 0x95, - 0x1f, 0xf9, 0xf2, 0x15, 0x7f, 0x00, 0x77, 0x5d, 0x81, 0x6f, 0xd6, 0xc2, 0x6b, 0x53, 0xa9, 0x1b, - 0xbd, 0xa5, 0xba, 0x39, 0x89, 0x54, 0x09, 0xaf, 0x65, 0x93, 0xa1, 0x9f, 0xc0, 0x82, 0x22, 0xce, - 0x80, 0x47, 0x53, 0x7f, 0x7c, 0x93, 0xef, 0xed, 0x08, 0x7d, 0x3e, 0xc2, 0x4a, 0xe1, 0x7f, 0x0c, - 0x0b, 0x91, 0x74, 0x86, 0x5d, 0x37, 0x86, 0x1f, 0xbf, 0xa5, 0xf6, 0x79, 0x09, 0x75, 0x81, 0x5d, - 0x57, 0xa1, 0x9b, 0x80, 0x92, 0xb2, 0x41, 0x0a, 0x7f, 0xe7, 0xb6, 0xea, 0xef, 0x7a, 0xaa, 0x28, - 0x10, 0x13, 0x64, 0xf6, 0xf0, 0x13, 0x0d, 0x26, 0x55, 0x05, 0x0c, 0xed, 0xc2, 0x6c, 0x26, 0x7c, - 0x27, 0x1b, 0x36, 0x93, 0x76, 0x9e, 0x38, 0x68, 0x09, 0xee, 0xc8, 0x24, 0x4a, 0xc5, 0x8d, 0xa8, - 0x81, 0xbe, 0x07, 0x05, 0x07, 0xcb, 0x3a, 0x97, 0x58, 0x65, 0x6d, 0x50, 0xcd, 0xed, 0x30, 0xb2, - 0x35, 0x12, 0xa7, 0x8c, 0xa2, 0x3f, 0x69, 0x80, 0xba, 0x6b, 0x69, 0xc3, 0x89, 0xcb, 0x0b, 0x6c, - 0xe8, 0x6d, 0x28, 0xc4, 0x95, 0x38, 0xa5, 0xf1, 0x95, 0xdc, 0x32, 0x90, 0xb2, 0x35, 0x12, 0xaf, - 0x8c, 0xc8, 0xbf, 0x6b, 0x30, 0xdf, 0x51, 0x8e, 0x1b, 0x4e, 0xa1, 0x0b, 0x2b, 0xbd, 0x2b, 0x80, - 0x2a, 0x66, 0xbe, 0x36, 0x5c, 0x01, 0x30, 0xad, 0xf4, 0xa9, 0xcc, 0x76, 0xa9, 0x57, 0x15, 0x30, - 0x23, 0xf8, 0x77, 0x1a, 0x6c, 0xe4, 0x95, 0xf2, 0xf2, 0x6f, 0x6a, 0x15, 0xa6, 0xb3, 0x95, 0xbb, - 0x48, 0xea, 0xd3, 0x5b, 0x94, 0x0d, 0x0d, 0xf0, 0x92, 0xdf, 0xc5, 0x8f, 0x35, 0x58, 0xcf, 0x29, - 0xb6, 0xe5, 0x4b, 0x3a, 0x85, 0x49, 0x55, 0xd9, 0x53, 0x72, 0x9e, 0xdc, 0xbc, 0xa6, 0x67, 0xc4, - 0x10, 0xc5, 0xdf, 0x8c, 0xc2, 0xbd, 0x3e, 0x59, 0x9c, 0x88, 0xa9, 0x32, 0x53, 0xc3, 0x41, 0x1c, - 0x53, 0x55, 0x13, 0xfd, 0x10, 0x10, 0xa7, 0xdc, 0x72, 0x4d, 0x95, 0x38, 0x7a, 0x32, 0xf0, 0x46, - 0xf1, 0x75, 0x53, 0xc5, 0xd7, 0xe5, 0xee, 0xf8, 0x7a, 0xe2, 0x73, 0xe3, 0xae, 0x74, 0x8c, 0xe8, - 0xa4, 0x1b, 0xda, 0x87, 0x4d, 0xd7, 0x62, 0xdc, 0x74, 0xb0, 0x2b, 0x52, 0x61, 0xf9, 0x99, 0x66, - 0x37, 0xb1, 0x7d, 0x29, 0xbe, 0x9c, 0x88, 0x87, 0xe5, 0x99, 0x1d, 0x33, 0xd6, 0x84, 0xd1, 0x61, - 0x6a, 0x73, 0x10, 0x99, 0x88, 0xf0, 0x89, 0x8e, 0x61, 0x42, 0xe5, 0x94, 0xe3, 0x83, 0x4b, 0x00, - 0xdd, 0x53, 0x35, 0x94, 0x77, 0xf1, 0x19, 0xcc, 0x77, 0x64, 0x9c, 0xe9, 0x22, 0xe0, 0xf6, 0x45, - 0xc0, 0xe8, 0x07, 0x30, 0x93, 0xcd, 0x67, 0xd5, 0x6e, 0x7c, 0x35, 0x3f, 0xa1, 0x4a, 0x53, 0xd9, - 0xe9, 0x4c, 0x2a, 0x5b, 0x69, 0x7e, 0xf6, 0x62, 0x4b, 0xfb, 0xfc, 0xc5, 0x96, 0xf6, 0x9f, 0x17, - 0x5b, 0xda, 0x6f, 0x5f, 0x6e, 0x8d, 0x7c, 0xfe, 0x72, 0x6b, 0xe4, 0x5f, 0x2f, 0xb7, 0x46, 0x3e, - 0x78, 0xaf, 0x41, 0x78, 0x33, 0xac, 0x95, 0x6d, 0xea, 0xed, 0x9d, 0xc4, 0xc8, 0xa7, 0x56, 0x8d, - 0xed, 0x25, 0x3c, 0x8f, 0x6c, 0x1a, 0xe0, 0x6c, 0xb3, 0x69, 0x11, 0x7f, 0xcf, 0xa3, 0xe2, 0x7b, - 0x92, 0xa5, 0x7f, 0x01, 0xf1, 0xeb, 0x16, 0x66, 0xb5, 0x09, 0xf9, 0x47, 0xcf, 0xd3, 0xff, 0x05, - 0x00, 0x00, 0xff, 0xff, 0xc7, 0x69, 0x9a, 0x25, 0x96, 0x1a, 0x00, 0x00, + // 2080 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x59, 0xcb, 0x73, 0x1b, 0xc7, + 0xf1, 0xe6, 0x8a, 0x12, 0x05, 0x36, 0x49, 0x49, 0x1c, 0x3e, 0xb4, 0x22, 0x29, 0x90, 0x02, 0x6d, + 0xfd, 0xa0, 0x5f, 0x2c, 0xd0, 0x92, 0xe2, 0x72, 0x62, 0xe7, 0x61, 0x82, 0x0f, 0x87, 0x09, 0x25, + 0xb2, 0x96, 0x28, 0x1f, 0x1c, 0x27, 0x5b, 0x8b, 0xdd, 0x01, 0x30, 0xe6, 0xee, 0x0e, 0xb2, 0x33, + 0xa0, 0xc4, 0xe4, 0xe2, 0xca, 0x21, 0x65, 0x57, 0x0e, 0x4e, 0x52, 0x95, 0xaa, 0x1c, 0x5d, 0xa9, + 0x1c, 0x92, 0x4b, 0xfe, 0x87, 0xdc, 0x7c, 0x74, 0x6e, 0xa9, 0x1c, 0x5c, 0x29, 0xe9, 0x92, 0x3f, + 0x23, 0x35, 0x8f, 0x7d, 0xe0, 0xb5, 0x00, 0x99, 0xdc, 0xb0, 0x33, 0xdd, 0x5f, 0x7f, 0x33, 0xd3, + 0xb3, 0xfd, 0x6d, 0x03, 0xca, 0x24, 0xfc, 0x18, 0xbb, 0x9c, 0x9c, 0xe1, 0x2d, 0xfc, 0xc2, 0x6d, + 0x39, 0x61, 0x13, 0x6f, 0x9d, 0x3d, 0xaa, 0x63, 0xee, 0x3c, 0xda, 0x6a, 0xe2, 0x10, 0x33, 0xc2, + 0x2a, 0xed, 0x88, 0x72, 0x8a, 0x56, 0x12, 0xcb, 0x4a, 0x6c, 0x59, 0xd1, 0x96, 0x2b, 0x0f, 0x72, + 0x50, 0x12, 0x63, 0x09, 0xb3, 0xb2, 0x99, 0x63, 0xca, 0x5f, 0x68, 0xa3, 0xc5, 0x26, 0x6d, 0x52, + 0xf9, 0x73, 0x4b, 0xfc, 0x52, 0xa3, 0xa5, 0xcf, 0x8a, 0x30, 0xfb, 0xbe, 0xe2, 0x74, 0xc2, 0x1d, + 0x8e, 0xd1, 0x7b, 0x30, 0xd5, 0x76, 0x22, 0x27, 0x60, 0xa6, 0xb1, 0x61, 0x94, 0x67, 0x1e, 0x97, + 0x2a, 0xc3, 0x39, 0x56, 0x8e, 0xa5, 0x65, 0xf5, 0xea, 0x97, 0x5f, 0xaf, 0x4f, 0x58, 0xda, 0x0f, + 0x1d, 0xc0, 0x2c, 0x6b, 0x53, 0x6e, 0x07, 0x4e, 0x74, 0x8a, 0x39, 0x33, 0xaf, 0x6c, 0x4c, 0x96, + 0x67, 0x1e, 0xdf, 0xcf, 0xc3, 0x39, 0x69, 0x53, 0xfe, 0x54, 0x9a, 0x5b, 0x33, 0x2c, 0xf9, 0xcd, + 0xd0, 0x8f, 0x01, 0x79, 0x38, 0x22, 0x67, 0x8e, 0x70, 0x4b, 0x00, 0x27, 0x25, 0xe0, 0x1b, 0x79, + 0x80, 0xbb, 0x89, 0x97, 0x86, 0x9d, 0xf7, 0x7a, 0x46, 0x18, 0xfa, 0x00, 0x6e, 0x48, 0x9e, 0x34, + 0xf2, 0x70, 0x54, 0xa7, 0xf4, 0xd4, 0xbc, 0x2a, 0x81, 0x1f, 0x8c, 0x62, 0x7a, 0x24, 0x1c, 0xaa, + 0x94, 0x9e, 0xea, 0x85, 0xcf, 0xb1, 0x78, 0x50, 0xa0, 0xa0, 0x16, 0x2c, 0x66, 0x48, 0xa7, 0xe8, + 0xd7, 0x24, 0xfa, 0xd6, 0x78, 0xb4, 0x7b, 0x63, 0x2c, 0x78, 0xdd, 0x53, 0x32, 0xd2, 0x1e, 0x14, + 0xea, 0x8e, 0xef, 0x84, 0x2e, 0x66, 0xe6, 0x94, 0x44, 0xdf, 0xcc, 0x43, 0xaf, 0x2a, 0x5b, 0x8d, + 0x98, 0xb8, 0x22, 0x0b, 0xa6, 0xdb, 0x94, 0x11, 0x4e, 0x68, 0xc8, 0xcc, 0xeb, 0x12, 0xa7, 0x32, + 0x1e, 0xcb, 0x63, 0xed, 0xa6, 0x21, 0x53, 0x18, 0x44, 0xe0, 0x36, 0xeb, 0xd4, 0x1d, 0xd7, 0xa5, + 0x9d, 0x90, 0xdb, 0x3c, 0x72, 0x3c, 0x6c, 0x87, 0x54, 0x32, 0x2d, 0xc8, 0x08, 0xdf, 0xc8, 0xdd, + 0xe5, 0xc4, 0xf5, 0x19, 0x4d, 0x19, 0x2f, 0xa5, 0x88, 0x35, 0x01, 0x28, 0xe7, 0x18, 0xfa, 0x95, + 0x01, 0x1b, 0xf8, 0x45, 0x9b, 0x44, 0xe7, 0x76, 0xa3, 0xc3, 0x3b, 0x11, 0x66, 0x3a, 0x53, 0x6c, + 0x12, 0x36, 0xa8, 0xcd, 0x44, 0x5a, 0x9b, 0xd3, 0x32, 0xe8, 0xb7, 0xf2, 0x82, 0xee, 0x49, 0x8c, + 0x7d, 0x05, 0xa1, 0x92, 0xe4, 0x20, 0x6c, 0x50, 0x79, 0x2d, 0x34, 0x83, 0x35, 0x9c, 0x63, 0x83, + 0x08, 0x2c, 0xb5, 0x71, 0xd4, 0xc6, 0xbc, 0xe3, 0xf8, 0x59, 0x0a, 0x26, 0x8c, 0x3e, 0xf9, 0xe3, + 0xd8, 0x31, 0x05, 0x8d, 0x4f, 0xbe, 0xdd, 0x3f, 0x85, 0x7e, 0x69, 0x40, 0xb1, 0x2f, 0x56, 0xa3, + 0x13, 0x7a, 0x24, 0x6c, 0xea, 0x15, 0xcf, 0xc8, 0xa0, 0x6f, 0x5f, 0x20, 0xe8, 0xbe, 0xf2, 0xcf, + 0x2e, 0x78, 0xb5, 0x3d, 0xdc, 0x04, 0xfd, 0xde, 0x80, 0xfb, 0x7d, 0xd7, 0xd3, 0x66, 0x98, 0x73, + 0x1f, 0x07, 0x38, 0xe4, 0x36, 0x73, 0x5b, 0xd8, 0xeb, 0xf8, 0xd8, 0x33, 0x67, 0x25, 0x99, 0x77, + 0x2e, 0x72, 0x65, 0x4f, 0x12, 0x9c, 0xcc, 0x66, 0x6c, 0x7a, 0x43, 0xad, 0x4e, 0xe2, 0x60, 0xe8, + 0x6d, 0x30, 0x09, 0xb3, 0xe5, 0xdd, 0x8e, 0xa3, 0xd8, 0x38, 0x74, 0xea, 0x82, 0xc8, 0xdc, 0x86, + 0x51, 0x2e, 0x58, 0x4b, 0x84, 0x89, 0x8b, 0xbc, 0xa7, 0x67, 0xf7, 0xd4, 0x24, 0xda, 0x83, 0x75, + 0xc2, 0xec, 0x34, 0x04, 0xeb, 0xf7, 0xbf, 0x21, 0xfd, 0xd7, 0x08, 0x4b, 0xe9, 0xb2, 0x5e, 0x98, + 0x33, 0x58, 0x13, 0x09, 0x2f, 0x8e, 0x22, 0xc2, 0xcf, 0x9d, 0xc8, 0xb3, 0x5d, 0x27, 0x68, 0x3b, + 0xa4, 0x19, 0xaa, 0x74, 0xb8, 0x29, 0x5f, 0xac, 0x6f, 0xe5, 0x6d, 0x46, 0x4d, 0xf9, 0x5b, 0xd2, + 0x7d, 0x47, 0x7b, 0x8b, 0x7d, 0xb0, 0xee, 0xf0, 0x61, 0x53, 0xe8, 0x13, 0x03, 0x5e, 0xef, 0x09, + 0xdc, 0xa6, 0xd4, 0x4f, 0xa3, 0xc7, 0xe7, 0x61, 0xde, 0x1a, 0x7d, 0xc9, 0x63, 0x64, 0x15, 0xe7, + 0x98, 0x52, 0xdf, 0xba, 0xd7, 0x15, 0x5a, 0x0c, 0xc5, 0x46, 0xf1, 0xde, 0xa3, 0xdf, 0x19, 0x70, + 0x7f, 0xd8, 0xda, 0xe3, 0x97, 0x41, 0x9b, 0x92, 0x90, 0x33, 0x73, 0x5e, 0x72, 0xf8, 0xde, 0x85, + 0x77, 0x61, 0x5b, 0xc1, 0x1c, 0x4b, 0x14, 0xab, 0xc4, 0x47, 0xda, 0x20, 0x17, 0x96, 0x1a, 0x18, + 0xdb, 0x1e, 0x61, 0x8a, 0x40, 0xb2, 0x0d, 0x48, 0x1e, 0x44, 0xee, 0xbd, 0xdc, 0xc7, 0x78, 0x57, + 0xfb, 0xc5, 0x8b, 0xb4, 0x16, 0x1a, 0xfd, 0x83, 0xe8, 0x39, 0xdc, 0xed, 0x0a, 0x92, 0xbc, 0xfa, + 0x08, 0x8e, 0x6c, 0xce, 0x7d, 0x73, 0x41, 0xae, 0xf7, 0xad, 0x31, 0x83, 0xe9, 0x15, 0xd4, 0x08, + 0x8e, 0x6a, 0xb5, 0x43, 0xeb, 0x4e, 0x63, 0xf0, 0x14, 0xf7, 0xd1, 0x67, 0x06, 0x6c, 0x76, 0x45, + 0xae, 0x77, 0x5c, 0x71, 0x0f, 0xcf, 0xa8, 0xdf, 0x09, 0x70, 0xcc, 0x83, 0x99, 0x8b, 0x32, 0xfe, + 0xbb, 0x63, 0xc6, 0xaf, 0x4a, 0x90, 0x0f, 0x24, 0x86, 0x0e, 0xc8, 0xac, 0xf5, 0x46, 0xbe, 0x01, + 0xfa, 0x0e, 0xac, 0x12, 0x66, 0x37, 0x48, 0xc4, 0xb8, 0x2d, 0x38, 0xb9, 0xe7, 0xae, 0x8f, 0xed, + 0x06, 0x09, 0x09, 0x6b, 0x61, 0xcf, 0x5c, 0x92, 0x97, 0xe7, 0x36, 0x61, 0xfb, 0xc2, 0x62, 0x1f, + 0xe3, 0x1d, 0x31, 0xbf, 0xaf, 0xa7, 0xd1, 0xe7, 0x06, 0x3c, 0x6c, 0x63, 0xf5, 0x0e, 0x1b, 0x2f, + 0x8f, 0x97, 0x2f, 0x95, 0xc7, 0x65, 0x1d, 0xa4, 0x36, 0x32, 0x9d, 0xff, 0x6c, 0x40, 0x65, 0x08, + 0xa3, 0x61, 0x69, 0x7d, 0x5b, 0x52, 0xda, 0xbb, 0x74, 0x5a, 0xab, 0x68, 0x3a, 0xbb, 0x1f, 0x0c, + 0x62, 0x3a, 0x38, 0xc9, 0xbf, 0x0d, 0x77, 0x14, 0x33, 0x66, 0xd3, 0x36, 0xb7, 0x69, 0x87, 0xdb, + 0x8e, 0xe7, 0x45, 0x98, 0x31, 0xcc, 0x4c, 0x73, 0x63, 0xb2, 0x3c, 0x6d, 0x2d, 0x6b, 0x83, 0xa3, + 0x36, 0x3f, 0xea, 0xf0, 0xed, 0x78, 0x16, 0xd5, 0xc1, 0x6c, 0x11, 0xc6, 0x69, 0x44, 0x5c, 0xc7, + 0xd7, 0xb5, 0x3a, 0xc2, 0x2e, 0x8d, 0x3c, 0x66, 0xde, 0x91, 0xcb, 0x29, 0x8f, 0x5a, 0x0e, 0xb6, + 0x94, 0xbd, 0xb5, 0x9c, 0x22, 0x65, 0xc7, 0x11, 0x86, 0xe5, 0x3a, 0x09, 0x9d, 0xe8, 0x5c, 0xb0, + 0x13, 0x0a, 0x21, 0x51, 0x73, 0x2b, 0xa3, 0x8b, 0x63, 0x55, 0x7a, 0x1e, 0x29, 0x47, 0x2d, 0xe8, + 0x16, 0xeb, 0xfd, 0x83, 0x0c, 0xb5, 0xe0, 0xf1, 0xc0, 0x30, 0x36, 0xf1, 0x58, 0x5a, 0x8e, 0xec, + 0x06, 0x8d, 0x32, 0x75, 0xca, 0x5c, 0x95, 0xdb, 0xf3, 0xc6, 0x00, 0xc4, 0x03, 0x8f, 0x25, 0x75, + 0x65, 0x9f, 0x46, 0x69, 0xb5, 0x41, 0x35, 0x28, 0x67, 0x54, 0x6e, 0x0f, 0x3e, 0xa7, 0x22, 0x84, + 0x8b, 0x6d, 0xd7, 0xa7, 0x0c, 0x9b, 0x6b, 0x12, 0xbf, 0x94, 0x2a, 0xdb, 0x2c, 0x6c, 0x8d, 0xee, + 0x0b, 0xd3, 0x1d, 0x61, 0x29, 0x34, 0xa9, 0x87, 0x43, 0x1a, 0xd8, 0x1e, 0x76, 0x49, 0xe0, 0xf8, + 0xcc, 0xbc, 0x3b, 0x5a, 0x93, 0xee, 0x0a, 0x8f, 0x5d, 0xed, 0x10, 0x6b, 0x52, 0x2f, 0x3b, 0x28, + 0x34, 0xd2, 0x3d, 0x97, 0x86, 0x9e, 0x54, 0x67, 0x8e, 0x6f, 0x0f, 0x12, 0xa8, 0xcc, 0x2c, 0x8e, + 0xae, 0xd2, 0x3b, 0x29, 0xc8, 0x00, 0xb1, 0x6a, 0xad, 0xbb, 0x43, 0xe7, 0x65, 0x08, 0x91, 0x07, + 0xb1, 0x5a, 0xc1, 0xd8, 0x0e, 0x3a, 0x3e, 0x27, 0x6d, 0x9f, 0xe0, 0x88, 0x99, 0xeb, 0xa3, 0xf3, + 0x40, 0x6b, 0x10, 0x8c, 0x9f, 0x26, 0x7e, 0xd6, 0x62, 0xd0, 0x3f, 0xc8, 0xd0, 0x4f, 0x61, 0x21, + 0x59, 0x97, 0xcd, 0xf0, 0xcf, 0x3a, 0x58, 0x4a, 0xcf, 0x0d, 0x19, 0xe3, 0x61, 0x5e, 0x8c, 0x84, + 0xeb, 0x89, 0xf6, 0xb2, 0x10, 0xed, 0x1d, 0x62, 0xe8, 0x63, 0x40, 0x19, 0x79, 0xab, 0x5e, 0xb5, + 0xcc, 0xbc, 0x37, 0xfa, 0x15, 0xbb, 0xdd, 0x6c, 0x46, 0xb8, 0xe9, 0x70, 0x9c, 0x4a, 0x5c, 0xf5, + 0x0e, 0x55, 0x17, 0xc5, 0x9a, 0x67, 0x3d, 0xe3, 0x0c, 0x1d, 0xc1, 0x0d, 0xbd, 0x65, 0x71, 0x9c, + 0xd2, 0xe8, 0x4b, 0xa9, 0xb6, 0x4a, 0x43, 0xcf, 0x05, 0x99, 0x27, 0x86, 0x1a, 0xb0, 0xd8, 0x8c, + 0x1c, 0x51, 0xa3, 0x3a, 0xbc, 0x45, 0x23, 0xf2, 0x73, 0x47, 0x49, 0xff, 0x4d, 0x09, 0xfb, 0x24, + 0xb7, 0x42, 0x74, 0x7c, 0xff, 0x7d, 0xe1, 0xbb, 0xdd, 0xe5, 0x6a, 0x2d, 0x34, 0xfb, 0x07, 0xd1, + 0x31, 0xcc, 0x39, 0x12, 0xc7, 0x96, 0xb3, 0xcc, 0x7c, 0x6d, 0xb4, 0xf2, 0x17, 0x01, 0xb6, 0xe5, + 0x9c, 0x0c, 0x63, 0xcd, 0x3a, 0xe9, 0x03, 0x43, 0x1f, 0xc1, 0x82, 0xba, 0x1e, 0x01, 0x09, 0xed, + 0x90, 0xaa, 0x3c, 0x63, 0xe6, 0xeb, 0xe3, 0x7c, 0x10, 0x86, 0x34, 0x78, 0x4a, 0xc2, 0x67, 0xda, + 0x49, 0x7c, 0x10, 0x76, 0x8f, 0xb0, 0xd2, 0x21, 0xcc, 0xf7, 0x9d, 0x3e, 0x5a, 0x81, 0x42, 0x9c, + 0x3f, 0xf2, 0x8b, 0xf8, 0xaa, 0x95, 0x3c, 0xa3, 0x55, 0x98, 0x4e, 0xae, 0xbf, 0x79, 0x65, 0xc3, + 0x28, 0x4f, 0x5b, 0x85, 0x40, 0x5f, 0xf0, 0xd2, 0x27, 0x06, 0xdc, 0x19, 0x5a, 0xd0, 0x91, 0x09, + 0xd7, 0xf5, 0x31, 0x4b, 0xd4, 0x69, 0x2b, 0x7e, 0x44, 0x07, 0x50, 0x48, 0x34, 0xc3, 0x15, 0x29, + 0x50, 0x2a, 0x63, 0xd6, 0xec, 0x58, 0x2c, 0x5c, 0xe7, 0x4a, 0x1a, 0x94, 0xfe, 0x62, 0xc0, 0xfa, + 0x88, 0x9a, 0x8e, 0xbe, 0x09, 0xcb, 0x5a, 0x30, 0x30, 0xee, 0x44, 0x42, 0xaf, 0x04, 0x98, 0x71, + 0x27, 0x68, 0x4b, 0x5e, 0x93, 0xd6, 0xa2, 0x9a, 0x3d, 0x11, 0x93, 0xb5, 0x78, 0x0e, 0x1d, 0xc3, + 0x8d, 0xee, 0xe4, 0xd7, 0x5f, 0xf9, 0xb9, 0xef, 0xa9, 0xed, 0xae, 0x7c, 0x9f, 0xeb, 0x4a, 0xf3, + 0x52, 0x03, 0xe6, 0xba, 0xe6, 0x73, 0x76, 0xe8, 0x5d, 0x98, 0x4a, 0x82, 0x1a, 0xe5, 0xe9, 0xea, + 0xa6, 0x78, 0xe3, 0xfd, 0xf3, 0xeb, 0xf5, 0x55, 0x97, 0xb2, 0x80, 0x32, 0xe6, 0x9d, 0x56, 0x08, + 0xdd, 0x0a, 0x1c, 0xde, 0xaa, 0x1c, 0xe2, 0xa6, 0xe3, 0x9e, 0xef, 0x62, 0xd7, 0xd2, 0x2e, 0xa5, + 0x5f, 0x40, 0x69, 0x8c, 0x6a, 0x9a, 0x1b, 0x5c, 0x57, 0xfa, 0x8b, 0x04, 0x57, 0x2e, 0xa5, 0xbf, + 0x1b, 0xf0, 0x60, 0xec, 0xea, 0x8f, 0xbe, 0x0b, 0xab, 0x59, 0xf9, 0x33, 0xf8, 0x7c, 0xcc, 0x28, + 0x91, 0x2f, 0x3d, 0x67, 0x84, 0xd3, 0x33, 0x4a, 0x18, 0xff, 0x2f, 0x24, 0x77, 0x7c, 0x70, 0xea, + 0xb1, 0xf4, 0x07, 0x03, 0xe6, 0xba, 0xba, 0x22, 0xdd, 0xd7, 0xc2, 0xe8, 0xbe, 0x16, 0x68, 0x0d, + 0xa6, 0x09, 0xab, 0x76, 0xce, 0x4f, 0x88, 0xa7, 0xce, 0xaf, 0x60, 0xa5, 0x03, 0xa8, 0x0a, 0x53, + 0xf2, 0x6d, 0x1b, 0x37, 0x79, 0xfe, 0x7f, 0x54, 0x2f, 0xe6, 0x90, 0x04, 0x44, 0x85, 0xb6, 0xb4, + 0xe7, 0x3b, 0x85, 0x4f, 0xbf, 0x58, 0x9f, 0xf8, 0xf7, 0x17, 0xeb, 0x13, 0xa5, 0x3f, 0x19, 0xb0, + 0x30, 0xa0, 0x4a, 0xfd, 0x37, 0x04, 0x7f, 0xd0, 0x43, 0xf0, 0xcd, 0xf1, 0x3e, 0x69, 0x73, 0x69, + 0xfe, 0x6d, 0x12, 0x8a, 0xf9, 0x75, 0x35, 0x9f, 0xf1, 0x87, 0x70, 0xcb, 0x17, 0xf8, 0x76, 0xbd, + 0x73, 0x6e, 0x6b, 0x76, 0x57, 0x2e, 0xc9, 0xee, 0x86, 0x44, 0xaa, 0x76, 0xce, 0xe5, 0x23, 0x43, + 0x3f, 0x81, 0x79, 0x1d, 0x38, 0x03, 0xae, 0x96, 0xfe, 0xe8, 0x22, 0x5f, 0xf3, 0x0a, 0xfd, 0xa6, + 0xc2, 0x4a, 0xe1, 0x3f, 0x82, 0x79, 0x45, 0x9d, 0x61, 0xdf, 0x8f, 0xe1, 0xaf, 0x5e, 0x92, 0xfb, + 0x4d, 0x09, 0x75, 0x82, 0x7d, 0x5f, 0xa3, 0xdb, 0x80, 0x92, 0xa6, 0x44, 0x0a, 0x7f, 0xed, 0xb2, + 0xec, 0x6f, 0x05, 0xba, 0xe5, 0x10, 0x07, 0xc8, 0x9c, 0xe1, 0xe7, 0x06, 0x5c, 0xd7, 0xfd, 0x35, + 0xb4, 0x09, 0x73, 0x19, 0x71, 0x90, 0x1c, 0xd8, 0x6c, 0x3a, 0x78, 0xe0, 0xa1, 0x45, 0xb8, 0x26, + 0x2b, 0x90, 0xae, 0x1b, 0xea, 0x01, 0x7d, 0x1f, 0x0a, 0x1e, 0x96, 0x5d, 0x34, 0xb1, 0xcb, 0xc6, + 0xa8, 0x8e, 0xde, 0xae, 0xb2, 0xb5, 0x12, 0xa7, 0x0c, 0xa3, 0x3f, 0x1a, 0x80, 0xfa, 0x3b, 0x75, + 0xe3, 0x91, 0xcb, 0x2b, 0x6c, 0xe8, 0x3d, 0x28, 0xc4, 0x7d, 0x3e, 0xcd, 0xf1, 0xb5, 0xdc, 0x26, + 0x93, 0xb6, 0xb5, 0x12, 0xaf, 0x0c, 0xc9, 0xbf, 0x1a, 0x70, 0xb3, 0xa7, 0xd9, 0x37, 0x1e, 0x43, + 0x1f, 0x96, 0x07, 0xf7, 0x17, 0x75, 0xcd, 0x7c, 0x73, 0xbc, 0xf6, 0x62, 0xda, 0x47, 0xd4, 0xba, + 0x79, 0x71, 0x50, 0x8f, 0x31, 0x43, 0xf8, 0xb7, 0x06, 0xac, 0xe5, 0x35, 0x0a, 0xf3, 0x6f, 0x6a, + 0x0d, 0x66, 0xb2, 0x7d, 0x41, 0x45, 0xf5, 0xc9, 0x25, 0x9a, 0x92, 0x16, 0x04, 0xc9, 0xef, 0xd2, + 0xa7, 0x06, 0xac, 0xe6, 0xb4, 0xf2, 0xf2, 0x29, 0x1d, 0xc2, 0x75, 0xdd, 0x37, 0xd4, 0x74, 0x1e, + 0x5f, 0xbc, 0x63, 0x68, 0xc5, 0x10, 0xa5, 0x5f, 0x5f, 0x81, 0xdb, 0x43, 0x34, 0xa2, 0xa8, 0xa9, + 0x52, 0x07, 0xe2, 0x28, 0xae, 0xa9, 0xfa, 0x11, 0xfd, 0x08, 0x10, 0xa7, 0xdc, 0xf1, 0x6d, 0x2d, + 0x4b, 0x03, 0x59, 0x78, 0x55, 0x7d, 0xbd, 0xab, 0xeb, 0xeb, 0x52, 0x7f, 0x7d, 0x3d, 0x08, 0xb9, + 0x75, 0x4b, 0x3a, 0xaa, 0x70, 0xd2, 0x0d, 0x6d, 0xc3, 0x5d, 0xdf, 0x61, 0xdc, 0xf6, 0xb0, 0x2f, + 0x84, 0xb6, 0xfc, 0x08, 0x74, 0x5b, 0xd8, 0x3d, 0x15, 0xdf, 0x65, 0x24, 0xc0, 0x32, 0x67, 0x27, + 0xad, 0x15, 0x61, 0xb4, 0x9b, 0xda, 0xec, 0x28, 0x13, 0x51, 0x3e, 0xd1, 0x3e, 0x4c, 0x69, 0xc5, + 0x7a, 0x75, 0x74, 0x83, 0xa1, 0x7f, 0xa9, 0x96, 0xf6, 0x2e, 0x3d, 0x87, 0x9b, 0x3d, 0x7a, 0x36, + 0xdd, 0x04, 0xdc, 0xbd, 0x09, 0x18, 0xfd, 0x10, 0x66, 0xb3, 0x6a, 0x59, 0x9f, 0xc6, 0xff, 0xe5, + 0x0b, 0xaa, 0x54, 0x28, 0xcf, 0x64, 0x84, 0x72, 0xb5, 0xf5, 0xe5, 0xcb, 0xa2, 0xf1, 0xd5, 0xcb, + 0xa2, 0xf1, 0xaf, 0x97, 0x45, 0xe3, 0x37, 0xaf, 0x8a, 0x13, 0x5f, 0xbd, 0x2a, 0x4e, 0xfc, 0xe3, + 0x55, 0x71, 0xe2, 0xc3, 0x67, 0x4d, 0xc2, 0x5b, 0x9d, 0x7a, 0xc5, 0xa5, 0xc1, 0xd6, 0x41, 0x8c, + 0x7c, 0xe8, 0xd4, 0xd9, 0x56, 0x12, 0xe7, 0xa1, 0x4b, 0x23, 0x9c, 0x7d, 0x6c, 0x39, 0x24, 0xdc, + 0x0a, 0xa8, 0xf8, 0x5a, 0x65, 0xe9, 0x1f, 0x4c, 0xfc, 0xbc, 0x8d, 0x59, 0x7d, 0x4a, 0xfe, 0x8d, + 0xf4, 0xe4, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x6c, 0xa3, 0xd9, 0x61, 0xf4, 0x1a, 0x00, 0x00, } func (m *GenesisState) Marshal() (dAtA []byte, err error) { @@ -1323,6 +1333,22 @@ func (m *GenesisState) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if len(m.DenomMinNotionals) > 0 { + for iNdEx := len(m.DenomMinNotionals) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DenomMinNotionals[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintGenesis(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xaa + } + } if len(m.ActiveGrants) > 0 { for iNdEx := len(m.ActiveGrants) - 1; iNdEx >= 0; iNdEx-- { { @@ -2811,6 +2837,12 @@ func (m *GenesisState) Size() (n int) { n += 2 + l + sovGenesis(uint64(l)) } } + if len(m.DenomMinNotionals) > 0 { + for _, e := range m.DenomMinNotionals { + l = e.Size() + n += 2 + l + sovGenesis(uint64(l)) + } + } return n } @@ -4340,6 +4372,40 @@ func (m *GenesisState) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 37: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DenomMinNotionals", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenesis + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenesis + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthGenesis + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DenomMinNotionals = append(m.DenomMinNotionals, &DenomMinNotional{}) + if err := m.DenomMinNotionals[len(m.DenomMinNotionals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenesis(dAtA[iNdEx:]) diff --git a/chain/exchange/types/key.go b/chain/exchange/types/key.go index c4023835..227dc8e0 100644 --- a/chain/exchange/types/key.go +++ b/chain/exchange/types/key.go @@ -40,6 +40,7 @@ var ( MarketVolumePrefix = []byte{0x0c} // prefix for each key to the aggregate volume for a market ParamsKey = []byte{0x0d} // prefix for module params SubaccountCidPrefix = []byte{0x0e} // prefix for each + DenomMinNotionalPrefix = []byte{0x0f} // prefix for each denom min notional DenomDecimalsPrefix = []byte{0x10} // prefix for denom decimals SpotMarketsPrefix = []byte{0x11} // prefix for each key to a spot market by (isEnabled, marketID) @@ -116,6 +117,8 @@ var ( TotalGrantAmountPrefix = []byte{0x81} // prefix to store the total granted amount by granter LastGranterDelegationCheckTimePrefix = []byte{0x82} // prefix to store the last timestamp that the granter's delegations were checked ActiveGrantPrefix = []byte{0x83} // prefix to store the grantee's active grant + + MarketBalanceKey = []byte{0x84} // key for each key to a MarketBalance ) func GetSubaccountCidKey(subaccountID common.Hash, cid string) []byte { @@ -552,3 +555,7 @@ func GetActiveGrantKey(grantee sdk.AccAddress) []byte { func GetLastValidGrantDelegationCheckTimeKey(granter sdk.AccAddress) []byte { return append(LastGranterDelegationCheckTimePrefix, granter.Bytes()...) } + +func GetDerivativeMarketBalanceKey(marketID common.Hash) []byte { + return append(MarketBalanceKey, marketID.Bytes()...) +} diff --git a/chain/exchange/types/msgs.go b/chain/exchange/types/msgs.go index c1fdf2c0..5fa04ac6 100644 --- a/chain/exchange/types/msgs.go +++ b/chain/exchange/types/msgs.go @@ -12,6 +12,7 @@ import ( oracletypes "github.com/InjectiveLabs/sdk-go/chain/oracle/types" wasmxtypes "github.com/InjectiveLabs/sdk-go/chain/wasmx/types" + chaintypes "github.com/InjectiveLabs/sdk-go/chain/types" ) const RouterKey = ModuleName @@ -50,6 +51,7 @@ var ( _ sdk.Msg = &MsgUpdateParams{} _ sdk.Msg = &MsgUpdateSpotMarket{} _ sdk.Msg = &MsgUpdateDerivativeMarket{} + _ sdk.Msg = &MsgBatchExchangeModification{} ) // exchange message types @@ -89,6 +91,7 @@ const ( TypeMsgUpdateDerivativeMarket = "updateDerivativeMarket" TypeMsgAuthorizeStakeGrants = "authorizeStakeGrant" TypeMsgActivateStakeGrant = "acceptStakeGrant" + TypeMsgBatchExchangeModification = "batchExchangeModification" ) func (msg MsgUpdateParams) Route() string { return RouterKey } @@ -562,6 +565,13 @@ func (msg MsgInstantSpotMarketLaunch) ValidateBasic() error { return errors.Wrap(ErrInvalidNotional, err.Error()) } + if msg.BaseDecimals > MaxDecimals { + return errors.Wrap(ErrInvalidDenomDecimal, "base decimals is invalid") + } + if msg.QuoteDecimals > MaxDecimals { + return errors.Wrap(ErrInvalidDenomDecimal, "quote decimals is invalid") + } + return nil } @@ -1827,16 +1837,16 @@ func (msg MsgBatchUpdateOrders) ValidateBasic() error { return err } - hasDuplicateSpotMarketIDs := HasDuplicatesHexHash(msg.SpotMarketIdsToCancelAll) + hasDuplicateSpotMarketIDs := chaintypes.HasDuplicate(msg.SpotMarketIdsToCancelAll) if hasDuplicateSpotMarketIDs { return errors.Wrap(ErrInvalidBatchMsgUpdate, "msg contains duplicate cancel all spot market ids") } - hasDuplicateDerivativesMarketIDs := HasDuplicatesHexHash(msg.DerivativeMarketIdsToCancelAll) + hasDuplicateDerivativesMarketIDs := chaintypes.HasDuplicate(msg.DerivativeMarketIdsToCancelAll) if hasDuplicateDerivativesMarketIDs { return errors.Wrap(ErrInvalidBatchMsgUpdate, "msg contains duplicate cancel all derivative market ids") } - hasDuplicateBinaryOptionsMarketIDs := HasDuplicatesHexHash(msg.BinaryOptionsMarketIdsToCancelAll) + hasDuplicateBinaryOptionsMarketIDs := chaintypes.HasDuplicate(msg.BinaryOptionsMarketIdsToCancelAll) if hasDuplicateBinaryOptionsMarketIDs { return errors.Wrap(ErrInvalidBatchMsgUpdate, "msg contains duplicate cancel all binary options market ids") } @@ -2103,3 +2113,27 @@ func (msg *MsgActivateStakeGrant) GetSigners() []sdk.AccAddress { func (msg *MsgActivateStakeGrant) GetSignBytes() []byte { return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) } + +func (msg *MsgBatchExchangeModification) GetSigners() []sdk.AccAddress { + sender, err := sdk.AccAddressFromBech32(msg.Sender) + if err != nil { + panic(err) + } + return []sdk.AccAddress{sender} +} + +func (msg *MsgBatchExchangeModification) Route() string { return RouterKey } + +func (msg *MsgBatchExchangeModification) Type() string { return TypeMsgBatchExchangeModification } + +func (msg *MsgBatchExchangeModification) ValidateBasic() error { + if _, err := sdk.AccAddressFromBech32(msg.Sender); err != nil { + return errors.Wrap(err, "invalid sender address") + } + + if err := msg.Proposal.ValidateBasic(); err != nil { + return err + } + + return nil +} diff --git a/chain/exchange/types/params.go b/chain/exchange/types/params.go index fbec3e19..e44b5cbb 100644 --- a/chain/exchange/types/params.go +++ b/chain/exchange/types/params.go @@ -35,6 +35,8 @@ const ( MaxOracleScaleFactor uint32 = 18 + MaxDecimals uint32 = 18 + MaxTickerLength int = 40 // MaxHistoricalTradeRecordAge is the maximum age of trade records to track. @@ -47,6 +49,8 @@ const ( MaxGranterDelegations = 25 ) +var DefaultInjAuctionMaxCap = math.NewIntWithDecimal(10_000, 18) + var MaxBinaryOptionsOrderPrice = math.LegacyOneDec() // would be $0.000001 for USDT @@ -190,31 +194,34 @@ func (p *Params) ParamSetPairs() paramtypes.ParamSetPairs { // DefaultParams returns a default set of parameters. func DefaultParams() Params { return Params{ - SpotMarketInstantListingFee: sdk.NewCoin("inj", math.NewIntWithDecimal(SpotMarketInstantListingFee, 18)), - DerivativeMarketInstantListingFee: sdk.NewCoin("inj", math.NewIntWithDecimal(DerivativeMarketInstantListingFee, 18)), - DefaultSpotMakerFeeRate: math.LegacyNewDecWithPrec(-1, 4), // default -0.01% maker fees - DefaultSpotTakerFeeRate: math.LegacyNewDecWithPrec(1, 3), // default 0.1% taker fees - DefaultDerivativeMakerFeeRate: math.LegacyNewDecWithPrec(-1, 4), // default -0.01% maker fees - DefaultDerivativeTakerFeeRate: math.LegacyNewDecWithPrec(1, 3), // default 0.1% taker fees - DefaultInitialMarginRatio: math.LegacyNewDecWithPrec(5, 2), // default 5% initial margin ratio - DefaultMaintenanceMarginRatio: math.LegacyNewDecWithPrec(2, 2), // default 2% maintenance margin ratio - DefaultFundingInterval: DefaultFundingIntervalSeconds, - FundingMultiple: DefaultFundingMultipleSeconds, - RelayerFeeShareRate: math.LegacyNewDecWithPrec(40, 2), // default 40% relayer fee share - DefaultHourlyFundingRateCap: math.LegacyNewDecWithPrec(625, 6), // default 0.0625% max hourly funding rate - DefaultHourlyInterestRate: math.LegacyNewDecWithPrec(416666, 11), // 0.01% daily interest rate = 0.0001 / 24 = 0.00000416666 - MaxDerivativeOrderSideCount: MaxDerivativeOrderSideCount, - InjRewardStakedRequirementThreshold: math.NewIntWithDecimal(100, 18), // 100 INJ - TradingRewardsVestingDuration: 604800, // 7 days - LiquidatorRewardShareRate: math.LegacyNewDecWithPrec(5, 2), // 5% liquidator reward - BinaryOptionsMarketInstantListingFee: sdk.NewCoin("inj", math.NewIntWithDecimal(BinaryOptionsMarketInstantListingFee, 18)), - AtomicMarketOrderAccessLevel: AtomicMarketOrderAccessLevel_SmartContractsOnly, - SpotAtomicMarketOrderFeeMultiplier: math.LegacyNewDecWithPrec(25, 1), // default 2.5 multiplier - DerivativeAtomicMarketOrderFeeMultiplier: math.LegacyNewDecWithPrec(25, 1), // default 2.5 multiplier - BinaryOptionsAtomicMarketOrderFeeMultiplier: math.LegacyNewDecWithPrec(25, 1), // default 2.5 multiplier - MinimalProtocolFeeRate: math.LegacyMustNewDecFromStr("0.00005"), // default 0.005% minimal fee rate - IsInstantDerivativeMarketLaunchEnabled: false, - PostOnlyModeHeightThreshold: 0, + SpotMarketInstantListingFee: sdk.NewCoin("inj", math.NewIntWithDecimal(SpotMarketInstantListingFee, 18)), + DerivativeMarketInstantListingFee: sdk.NewCoin("inj", math.NewIntWithDecimal(DerivativeMarketInstantListingFee, 18)), + DefaultSpotMakerFeeRate: math.LegacyNewDecWithPrec(-1, 4), // default -0.01% maker fees + DefaultSpotTakerFeeRate: math.LegacyNewDecWithPrec(1, 3), // default 0.1% taker fees + DefaultDerivativeMakerFeeRate: math.LegacyNewDecWithPrec(-1, 4), // default -0.01% maker fees + DefaultDerivativeTakerFeeRate: math.LegacyNewDecWithPrec(1, 3), // default 0.1% taker fees + DefaultInitialMarginRatio: math.LegacyNewDecWithPrec(5, 2), // default 5% initial margin ratio + DefaultMaintenanceMarginRatio: math.LegacyNewDecWithPrec(2, 2), // default 2% maintenance margin ratio + DefaultFundingInterval: DefaultFundingIntervalSeconds, + FundingMultiple: DefaultFundingMultipleSeconds, + RelayerFeeShareRate: math.LegacyNewDecWithPrec(40, 2), // default 40% relayer fee share + DefaultHourlyFundingRateCap: math.LegacyNewDecWithPrec(625, 6), // default 0.0625% max hourly funding rate + DefaultHourlyInterestRate: math.LegacyNewDecWithPrec(416666, 11), // 0.01% daily interest rate = 0.0001 / 24 = 0.00000416666 + MaxDerivativeOrderSideCount: MaxDerivativeOrderSideCount, + InjRewardStakedRequirementThreshold: math.NewIntWithDecimal(100, 18), // 100 INJ + TradingRewardsVestingDuration: 604800, // 7 days + LiquidatorRewardShareRate: math.LegacyNewDecWithPrec(5, 2), // 5% liquidator reward + BinaryOptionsMarketInstantListingFee: sdk.NewCoin("inj", math.NewIntWithDecimal(BinaryOptionsMarketInstantListingFee, 18)), + AtomicMarketOrderAccessLevel: AtomicMarketOrderAccessLevel_SmartContractsOnly, + SpotAtomicMarketOrderFeeMultiplier: math.LegacyNewDecWithPrec(25, 1), // default 2.5 multiplier + DerivativeAtomicMarketOrderFeeMultiplier: math.LegacyNewDecWithPrec(25, 1), // default 2.5 multiplier + BinaryOptionsAtomicMarketOrderFeeMultiplier: math.LegacyNewDecWithPrec(25, 1), // default 2.5 multiplier + MinimalProtocolFeeRate: math.LegacyMustNewDecFromStr("0.00005"), // default 0.005% minimal fee rate + IsInstantDerivativeMarketLaunchEnabled: false, + PostOnlyModeHeightThreshold: 0, + MarginDecreasePriceTimestampThresholdSeconds: 60, + ExchangeAdmins: []string{}, + InjAuctionMaxCap: DefaultInjAuctionMaxCap, } } diff --git a/chain/exchange/types/proposal.go b/chain/exchange/types/proposal.go index 333507e2..95db8e62 100644 --- a/chain/exchange/types/proposal.go +++ b/chain/exchange/types/proposal.go @@ -13,6 +13,7 @@ import ( "github.com/ethereum/go-ethereum/common" oracletypes "github.com/InjectiveLabs/sdk-go/chain/oracle/types" + chaintypes "github.com/InjectiveLabs/sdk-go/chain/types" ) // constants @@ -34,6 +35,7 @@ const ( ProposalTypeBinaryOptionsMarketLaunch string = "ProposalTypeBinaryOptionsMarketLaunch" ProposalTypeBinaryOptionsMarketParamUpdate string = "ProposalTypeBinaryOptionsMarketParamUpdate" ProposalAtomicMarketOrderFeeMultiplierSchedule string = "ProposalAtomicMarketOrderFeeMultiplierSchedule" + ProposalDenomMinNotional string = "ProposalDenomMinNotional" ) func init() { @@ -54,6 +56,7 @@ func init() { govtypes.RegisterProposalType(ProposalTypeBinaryOptionsMarketLaunch) govtypes.RegisterProposalType(ProposalTypeBinaryOptionsMarketParamUpdate) govtypes.RegisterProposalType(ProposalAtomicMarketOrderFeeMultiplierSchedule) + govtypes.RegisterProposalType(ProposalDenomMinNotional) } func SafeIsPositiveInt(v math.Int) bool { @@ -209,11 +212,16 @@ func (p *BatchExchangeModificationProposal) ValidateBasic() error { } } + if p.DenomMinNotionalProposal != nil { + if err := p.DenomMinNotionalProposal.ValidateBasic(); err != nil { + return err + } + } return govtypes.ValidateAbstract(p) } // NewSpotMarketParamUpdateProposal returns new instance of SpotMarketParamUpdateProposal -func NewSpotMarketParamUpdateProposal(title, description string, marketID common.Hash, makerFeeRate, takerFeeRate, relayerFeeShareRate, minPriceTickSize, minQuantityTickSize, minNotional *math.LegacyDec, status MarketStatus, ticker string) *SpotMarketParamUpdateProposal { +func NewSpotMarketParamUpdateProposal(title, description string, marketID common.Hash, makerFeeRate, takerFeeRate, relayerFeeShareRate, minPriceTickSize, minQuantityTickSize, minNotional *math.LegacyDec, status MarketStatus, ticker string, baseDecimals, quoteDecimals uint32) *SpotMarketParamUpdateProposal { return &SpotMarketParamUpdateProposal{ title, description, @@ -227,6 +235,8 @@ func NewSpotMarketParamUpdateProposal(title, description string, marketID common ticker, minNotional, nil, + baseDecimals, + quoteDecimals, } } @@ -326,6 +336,13 @@ func (p *SpotMarketParamUpdateProposal) ValidateBasic() error { return errors.Wrap(ErrInvalidMarketStatus, p.Status.String()) } + if p.BaseDecimals > MaxDecimals { + return errors.Wrap(ErrInvalidDenomDecimal, "base decimals is invalid") + } + if p.QuoteDecimals > MaxDecimals { + return errors.Wrap(ErrInvalidDenomDecimal, "quote decimals is invalid") + } + return govtypes.ValidateAbstract(p) } @@ -341,6 +358,8 @@ func NewSpotMarketLaunchProposal( minNotional math.LegacyDec, makerFeeRate *math.LegacyDec, takerFeeRate *math.LegacyDec, + baseDecimals uint32, + quoteDecimals uint32, ) *SpotMarketLaunchProposal { return &SpotMarketLaunchProposal{ Title: title, @@ -353,6 +372,8 @@ func NewSpotMarketLaunchProposal( MinNotional: minNotional, MakerFeeRate: makerFeeRate, TakerFeeRate: takerFeeRate, + BaseDecimals: baseDecimals, + QuoteDecimals: quoteDecimals, } } @@ -424,6 +445,13 @@ func (p *SpotMarketLaunchProposal) ValidateBasic() error { } } + if p.BaseDecimals > MaxDecimals { + return errors.Wrap(ErrInvalidDenomDecimal, "base decimals is invalid") + } + if p.QuoteDecimals > MaxDecimals { + return errors.Wrap(ErrInvalidDenomDecimal, "quote decimals is invalid") + } + return govtypes.ValidateAbstract(p) } @@ -697,7 +725,7 @@ func (d *DenomDecimals) Validate() error { return errors.Wrap(sdkerrors.ErrInvalidCoins, d.Denom) } - if d.Decimals <= 0 || d.Decimals > uint64(MaxOracleScaleFactor) { + if d.Decimals > uint64(MaxDecimals) { return errors.Wrapf(ErrInvalidDenomDecimal, "invalid decimals passed: %d", d.Decimals) } return nil @@ -1089,7 +1117,7 @@ func (p *TradingRewardPendingPointsUpdateProposal) ValidateBasic() error { } } - hasDuplicateAccountAddresses := HasDuplicates(accountAddresses) + hasDuplicateAccountAddresses := chaintypes.HasDuplicate(accountAddresses) if hasDuplicateAccountAddresses { return errors.Wrap(ErrInvalidTradingRewardsPendingPointsUpdate, "account address cannot have duplicates") } @@ -1185,7 +1213,7 @@ func (t *TradingRewardCampaignBoostInfo) ValidateBasic() error { return errors.Wrap(ErrInvalidTradingRewardCampaign, "boosted derivative market ids is not matching derivative market multipliers") } - hasDuplicatesInMarkets := HasDuplicates(t.BoostedSpotMarketIds) || HasDuplicates(t.BoostedDerivativeMarketIds) + hasDuplicatesInMarkets := chaintypes.HasDuplicate(t.BoostedSpotMarketIds) || chaintypes.HasDuplicate(t.BoostedDerivativeMarketIds) if hasDuplicatesInMarkets { return errors.Wrap(ErrInvalidTradingRewardCampaign, "campaign contains duplicate boosted market ids") } @@ -1241,7 +1269,7 @@ func (c *TradingRewardCampaignInfo) ValidateBasic() error { return errors.Wrap(ErrInvalidTradingRewardCampaign, "campaign quote denoms cannot be nil") } - hasTradingRewardBoostInfoDefined := c != nil && c.TradingRewardBoostInfo != nil + hasTradingRewardBoostInfoDefined := c.TradingRewardBoostInfo != nil if hasTradingRewardBoostInfoDefined { if err := c.TradingRewardBoostInfo.ValidateBasic(); err != nil { return err @@ -1254,7 +1282,7 @@ func (c *TradingRewardCampaignInfo) ValidateBasic() error { } } - hasDuplicatesInDisqualifiedMarkets := c != nil && HasDuplicates(c.DisqualifiedMarketIds) + hasDuplicatesInDisqualifiedMarkets := chaintypes.HasDuplicate(c.DisqualifiedMarketIds) if hasDuplicatesInDisqualifiedMarkets { return errors.Wrap(ErrInvalidTradingRewardCampaign, "campaign contains duplicate disqualified market ids") } @@ -1278,7 +1306,7 @@ func validateCampaignRewardPool(pool *CampaignRewardPool, campaignDurationSecond prevStartTimestamp = pool.StartTimestamp - hasDuplicatesInEpochRewards := HasDuplicatesCoin(pool.MaxCampaignRewards) + hasDuplicatesInEpochRewards := chaintypes.HasDuplicateCoins(pool.MaxCampaignRewards) if hasDuplicatesInEpochRewards { return 0, errors.Wrap(ErrInvalidTradingRewardCampaign, "reward pool campaign contains duplicate market coins") } @@ -1340,7 +1368,7 @@ func (p *FeeDiscountProposal) ValidateBasic() error { return errors.Wrap(ErrInvalidFeeDiscountSchedule, "new fee discount schedule must have have bucket durations of at least 10 seconds") } - if HasDuplicates(p.Schedule.QuoteDenoms) { + if chaintypes.HasDuplicate(p.Schedule.QuoteDenoms) { return errors.Wrap(ErrInvalidFeeDiscountSchedule, "new fee discount schedule cannot have duplicate quote denoms") } @@ -1350,7 +1378,7 @@ func (p *FeeDiscountProposal) ValidateBasic() error { } } - if HasDuplicates(p.Schedule.DisqualifiedMarketIds) { + if chaintypes.HasDuplicate(p.Schedule.DisqualifiedMarketIds) { return errors.Wrap(ErrInvalidFeeDiscountSchedule, "new fee discount schedule cannot have duplicate disqualified market ids") } @@ -1745,3 +1773,40 @@ func (p *AtomicMarketOrderFeeMultiplierScheduleProposal) ValidateBasic() error { } return govtypes.ValidateAbstract(p) } + +// Implements Proposal Interface +var _ govtypes.Content = &DenomMinNotionalProposal{} + +// GetTitle returns the title of this proposal +func (p *DenomMinNotionalProposal) GetTitle() string { + return p.Title +} + +// GetDescription returns the description of this proposal +func (p *DenomMinNotionalProposal) GetDescription() string { + return p.Description +} + +// ProposalRoute returns router key of this proposal. +func (p *DenomMinNotionalProposal) ProposalRoute() string { return RouterKey } + +// ProposalType returns proposal type of this proposal. +func (p *DenomMinNotionalProposal) ProposalType() string { + return ProposalDenomMinNotional +} + +func (p *DenomMinNotionalProposal) ValidateBasic() error { + for _, minNotional := range p.DenomMinNotionals { + denom := minNotional.Denom + amount := minNotional.MinNotional + + if denom == "" { + return fmt.Errorf("denom cannot be empty") + } + + if amount.IsNil() || amount.IsNegative() { + return fmt.Errorf("min notional must be positive") + } + } + return govtypes.ValidateAbstract(p) +} diff --git a/chain/exchange/types/proposal.pb.go b/chain/exchange/types/proposal.pb.go index 1a20dfa1..c738222b 100644 --- a/chain/exchange/types/proposal.pb.go +++ b/chain/exchange/types/proposal.pb.go @@ -81,6 +81,10 @@ type SpotMarketParamUpdateProposal struct { // orders in the market MinNotional *cosmossdk_io_math.LegacyDec `protobuf:"bytes,11,opt,name=min_notional,json=minNotional,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_notional,omitempty"` AdminInfo *AdminInfo `protobuf:"bytes,12,opt,name=admin_info,json=adminInfo,proto3" json:"admin_info,omitempty"` + // base token decimals + BaseDecimals uint32 `protobuf:"varint,13,opt,name=base_decimals,json=baseDecimals,proto3" json:"base_decimals,omitempty"` + // quote token decimals + QuoteDecimals uint32 `protobuf:"varint,14,opt,name=quote_decimals,json=quoteDecimals,proto3" json:"quote_decimals,omitempty"` } func (m *SpotMarketParamUpdateProposal) Reset() { *m = SpotMarketParamUpdateProposal{} } @@ -169,6 +173,7 @@ type BatchExchangeModificationProposal struct { DenomDecimalsUpdateProposal *UpdateDenomDecimalsProposal `protobuf:"bytes,11,opt,name=denom_decimals_update_proposal,json=denomDecimalsUpdateProposal,proto3" json:"denom_decimals_update_proposal,omitempty"` FeeDiscountProposal *FeeDiscountProposal `protobuf:"bytes,12,opt,name=fee_discount_proposal,json=feeDiscountProposal,proto3" json:"fee_discount_proposal,omitempty"` MarketForcedSettlementProposals []*MarketForcedSettlementProposal `protobuf:"bytes,13,rep,name=market_forced_settlement_proposals,json=marketForcedSettlementProposals,proto3" json:"market_forced_settlement_proposals,omitempty"` + DenomMinNotionalProposal *DenomMinNotionalProposal `protobuf:"bytes,14,opt,name=denom_min_notional_proposal,json=denomMinNotionalProposal,proto3" json:"denom_min_notional_proposal,omitempty"` } func (m *BatchExchangeModificationProposal) Reset() { *m = BatchExchangeModificationProposal{} } @@ -227,6 +232,10 @@ type SpotMarketLaunchProposal struct { // min_notional defines the minimum notional for orders in the market MinNotional cosmossdk_io_math.LegacyDec `protobuf:"bytes,10,opt,name=min_notional,json=minNotional,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_notional"` AdminInfo *AdminInfo `protobuf:"bytes,11,opt,name=admin_info,json=adminInfo,proto3" json:"admin_info,omitempty"` + // base token decimals + BaseDecimals uint32 `protobuf:"varint,14,opt,name=base_decimals,json=baseDecimals,proto3" json:"base_decimals,omitempty"` + // quote token decimals + QuoteDecimals uint32 `protobuf:"varint,15,opt,name=quote_decimals,json=quoteDecimals,proto3" json:"quote_decimals,omitempty"` } func (m *SpotMarketLaunchProposal) Reset() { *m = SpotMarketLaunchProposal{} } @@ -1191,6 +1200,45 @@ func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) XXX_DiscardUnknown() { var xxx_messageInfo_AtomicMarketOrderFeeMultiplierScheduleProposal proto.InternalMessageInfo +type DenomMinNotionalProposal struct { + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` + Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` + DenomMinNotionals []*DenomMinNotional `protobuf:"bytes,3,rep,name=denom_min_notionals,json=denomMinNotionals,proto3" json:"denom_min_notionals,omitempty"` +} + +func (m *DenomMinNotionalProposal) Reset() { *m = DenomMinNotionalProposal{} } +func (m *DenomMinNotionalProposal) String() string { return proto.CompactTextString(m) } +func (*DenomMinNotionalProposal) ProtoMessage() {} +func (*DenomMinNotionalProposal) Descriptor() ([]byte, []int) { + return fileDescriptor_32e9ec9b6b22477c, []int{21} +} +func (m *DenomMinNotionalProposal) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *DenomMinNotionalProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_DenomMinNotionalProposal.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *DenomMinNotionalProposal) XXX_Merge(src proto.Message) { + xxx_messageInfo_DenomMinNotionalProposal.Merge(m, src) +} +func (m *DenomMinNotionalProposal) XXX_Size() int { + return m.Size() +} +func (m *DenomMinNotionalProposal) XXX_DiscardUnknown() { + xxx_messageInfo_DenomMinNotionalProposal.DiscardUnknown(m) +} + +var xxx_messageInfo_DenomMinNotionalProposal proto.InternalMessageInfo + func init() { proto.RegisterEnum("injective.exchange.v1beta1.ExchangeType", ExchangeType_name, ExchangeType_value) proto.RegisterType((*SpotMarketParamUpdateProposal)(nil), "injective.exchange.v1beta1.SpotMarketParamUpdateProposal") @@ -1214,6 +1262,7 @@ func init() { proto.RegisterType((*FeeDiscountProposal)(nil), "injective.exchange.v1beta1.FeeDiscountProposal") proto.RegisterType((*BatchCommunityPoolSpendProposal)(nil), "injective.exchange.v1beta1.BatchCommunityPoolSpendProposal") proto.RegisterType((*AtomicMarketOrderFeeMultiplierScheduleProposal)(nil), "injective.exchange.v1beta1.AtomicMarketOrderFeeMultiplierScheduleProposal") + proto.RegisterType((*DenomMinNotionalProposal)(nil), "injective.exchange.v1beta1.DenomMinNotionalProposal") } func init() { @@ -1221,160 +1270,167 @@ func init() { } var fileDescriptor_32e9ec9b6b22477c = []byte{ - // 2444 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5b, 0xcb, 0x8f, 0x1b, 0x49, - 0xfd, 0x9f, 0x9e, 0x99, 0x4c, 0xec, 0xb2, 0xe7, 0xd5, 0xe3, 0x9d, 0x9f, 0x77, 0x92, 0x78, 0x66, - 0x3a, 0xaf, 0xd9, 0xfc, 0x36, 0x36, 0x09, 0x8b, 0x22, 0x2c, 0x21, 0x98, 0xe7, 0xee, 0x88, 0x64, - 0xe2, 0xb4, 0x67, 0x76, 0x57, 0x11, 0xa8, 0x55, 0xee, 0xae, 0x99, 0x29, 0xe2, 0x7e, 0xa4, 0xab, - 0x3c, 0xc9, 0xac, 0x38, 0x70, 0x60, 0x05, 0xca, 0x09, 0x10, 0x0f, 0x71, 0x88, 0xb4, 0x27, 0xce, - 0x48, 0xf0, 0x0f, 0xc0, 0x01, 0x2d, 0x2b, 0x0e, 0x2b, 0x71, 0x00, 0x71, 0x58, 0xa1, 0x44, 0x08, - 0xfe, 0x02, 0xc4, 0x81, 0x03, 0xea, 0xaa, 0xea, 0x76, 0xdb, 0x6e, 0xb7, 0xdb, 0x1e, 0x9b, 0x3d, - 0x90, 0x4b, 0xe2, 0xfe, 0xd6, 0xb7, 0x3e, 0xf5, 0xad, 0xef, 0xab, 0xbe, 0xf5, 0x18, 0xf0, 0x06, - 0xb6, 0xbe, 0x85, 0x74, 0x8a, 0x4f, 0x50, 0x09, 0x3d, 0xd5, 0x8f, 0xa1, 0x75, 0x84, 0x4a, 0x27, - 0xb7, 0x6a, 0x88, 0xc2, 0x5b, 0x25, 0xc7, 0xb5, 0x1d, 0x9b, 0xc0, 0x7a, 0xd1, 0x71, 0x6d, 0x6a, - 0xcb, 0x4b, 0x01, 0x6b, 0xd1, 0x67, 0x2d, 0x0a, 0xd6, 0xa5, 0x82, 0x6e, 0x13, 0xd3, 0x26, 0xa5, - 0x1a, 0x24, 0xcd, 0xfe, 0xba, 0x8d, 0x2d, 0xde, 0x77, 0xa9, 0x28, 0xda, 0x0d, 0x4c, 0xa8, 0x8b, - 0x6b, 0x0d, 0x8a, 0x6d, 0x2b, 0xe0, 0x0b, 0x13, 0x05, 0xff, 0xff, 0x09, 0x7e, 0x93, 0x1c, 0x95, - 0x4e, 0x6e, 0x79, 0xff, 0x89, 0x86, 0xd7, 0x79, 0x83, 0xc6, 0xbe, 0x4a, 0xfc, 0x43, 0x34, 0xe5, - 0x8e, 0xec, 0x23, 0x9b, 0xd3, 0xbd, 0x5f, 0x82, 0x1a, 0x37, 0xc1, 0x60, 0x1a, 0x9c, 0xf5, 0x6a, - 0x93, 0xd5, 0x76, 0xa1, 0x5e, 0x6f, 0x32, 0xf2, 0x4f, 0xc1, 0x36, 0x0f, 0x4d, 0x6c, 0xd9, 0x25, - 0xf6, 0x2f, 0x27, 0x29, 0x7f, 0x9c, 0x02, 0x97, 0xaa, 0x8e, 0x4d, 0xef, 0x41, 0xf7, 0x11, 0xa2, - 0x15, 0xe8, 0x42, 0xf3, 0xc0, 0x31, 0x20, 0x45, 0x15, 0xa1, 0x42, 0x39, 0x07, 0xce, 0x51, 0x4c, - 0xeb, 0x28, 0x2f, 0xad, 0x48, 0x6b, 0x69, 0x95, 0x7f, 0xc8, 0x2b, 0x20, 0x63, 0x20, 0xa2, 0xbb, - 0xd8, 0xf1, 0xe6, 0x9e, 0x1f, 0x67, 0x6d, 0x61, 0x92, 0x7c, 0x01, 0xa4, 0x4d, 0x06, 0xaa, 0x61, - 0x23, 0x3f, 0xc1, 0xda, 0x53, 0x9c, 0xb0, 0x6b, 0xc8, 0xbb, 0x60, 0xc6, 0x84, 0x8f, 0x90, 0xab, - 0x1d, 0x22, 0xa4, 0xb9, 0x90, 0xa2, 0xfc, 0xa4, 0xc7, 0xb1, 0x71, 0xf9, 0xe3, 0xcf, 0x96, 0xa5, - 0xbf, 0x7c, 0xb6, 0x7c, 0x81, 0xeb, 0x87, 0x18, 0x8f, 0x8a, 0xd8, 0x2e, 0x99, 0x90, 0x1e, 0x17, - 0xef, 0xa2, 0x23, 0xa8, 0x9f, 0x6e, 0x21, 0x5d, 0xcd, 0xb2, 0xae, 0x3b, 0x08, 0xa9, 0x90, 0x22, - 0x0f, 0x8a, 0xb6, 0x42, 0x9d, 0xeb, 0x03, 0x8a, 0x86, 0xa1, 0xde, 0x07, 0x8b, 0x2e, 0xaa, 0xc3, - 0x53, 0x01, 0x46, 0x8e, 0xa1, 0x2b, 0x20, 0xa7, 0x92, 0x43, 0x2e, 0x08, 0x88, 0x1d, 0x84, 0xaa, - 0x1e, 0x00, 0x43, 0x56, 0xc1, 0x82, 0x89, 0x2d, 0xcd, 0x71, 0xb1, 0x8e, 0x34, 0x8a, 0xf5, 0x47, - 0x1a, 0xc1, 0x1f, 0xa0, 0xfc, 0xf9, 0xe4, 0xb0, 0x73, 0x26, 0xb6, 0x2a, 0x5e, 0xf7, 0x7d, 0xac, - 0x3f, 0xaa, 0xe2, 0x0f, 0x98, 0xb4, 0x1e, 0xe6, 0xe3, 0x06, 0xb4, 0x28, 0xa6, 0xa7, 0x21, 0xd8, - 0x54, 0x1f, 0xd2, 0x9a, 0xd8, 0x7a, 0x20, 0x10, 0x02, 0xe4, 0xaf, 0x81, 0x29, 0x42, 0x21, 0x6d, - 0x90, 0x7c, 0x7a, 0x45, 0x5a, 0x9b, 0xb9, 0xbd, 0x56, 0xec, 0x1e, 0x40, 0x45, 0xee, 0x39, 0x55, - 0xc6, 0xaf, 0x8a, 0x7e, 0xf2, 0x45, 0x30, 0xe5, 0x89, 0x83, 0xdc, 0x3c, 0x60, 0xb2, 0x4c, 0x7a, - 0xb2, 0xa8, 0x82, 0x26, 0xef, 0x80, 0xac, 0x27, 0xb9, 0x65, 0x7b, 0x8e, 0x02, 0xeb, 0xf9, 0x4c, - 0x72, 0x79, 0x33, 0x26, 0xb6, 0xf6, 0x44, 0x3f, 0x79, 0x0b, 0x00, 0x68, 0x78, 0x48, 0xd8, 0x3a, - 0xb4, 0xf3, 0xd9, 0x15, 0x69, 0x2d, 0x73, 0xfb, 0x6a, 0x9c, 0xac, 0xeb, 0x1e, 0xf7, 0xae, 0x75, - 0x68, 0xab, 0x69, 0xe8, 0xff, 0x2c, 0x3f, 0xf8, 0xfe, 0x47, 0xcb, 0x63, 0xff, 0xf8, 0x68, 0x79, - 0xec, 0x93, 0x5f, 0xdf, 0x5c, 0x12, 0x71, 0x79, 0x64, 0x9f, 0x04, 0x9d, 0x36, 0x6d, 0x8b, 0x22, - 0x8b, 0x3e, 0xfb, 0xfb, 0x2f, 0x6f, 0x5c, 0x0b, 0x02, 0x31, 0x36, 0x66, 0x94, 0x3f, 0x48, 0x60, - 0x71, 0x5b, 0xb0, 0x6e, 0x5b, 0xb0, 0x56, 0x3f, 0x7b, 0x38, 0xdd, 0x05, 0x59, 0x7f, 0xf0, 0xfd, - 0x53, 0x07, 0xb1, 0x88, 0xea, 0x61, 0x99, 0xed, 0x10, 0xbf, 0xda, 0xd2, 0xbb, 0xfc, 0xa6, 0x3f, - 0x67, 0x6f, 0x56, 0xcb, 0xc1, 0xac, 0xa2, 0x65, 0x56, 0x7e, 0x3a, 0x0d, 0x56, 0x37, 0x20, 0xd5, - 0x8f, 0xfd, 0xf6, 0x7b, 0xb6, 0x81, 0x0f, 0xb1, 0x0e, 0x3d, 0xc9, 0xce, 0x3c, 0xb3, 0x0f, 0x25, - 0xa0, 0x10, 0xc7, 0xa6, 0x9a, 0x48, 0x17, 0x8e, 0xa7, 0x50, 0xad, 0xc1, 0x34, 0xaa, 0xf9, 0x99, - 0x9c, 0xe4, 0x27, 0x56, 0x26, 0xd6, 0x32, 0xb7, 0xbf, 0x1c, 0x37, 0xe1, 0x58, 0xa3, 0xa8, 0x05, - 0x12, 0xd7, 0x4c, 0xe4, 0x9f, 0x49, 0x60, 0xcd, 0x40, 0x2e, 0x3e, 0x81, 0x1e, 0x7a, 0x0f, 0x69, - 0x26, 0x99, 0x34, 0x5f, 0x8d, 0x93, 0x66, 0x2b, 0xc0, 0xea, 0x2e, 0xd3, 0x15, 0xa3, 0x37, 0x13, - 0x91, 0x1b, 0xe0, 0x62, 0x58, 0x41, 0x75, 0xd8, 0xb0, 0xf4, 0xe3, 0x90, 0x30, 0xe7, 0x98, 0x30, - 0x6f, 0x25, 0x53, 0xcd, 0x5d, 0xd6, 0x3b, 0x90, 0xe0, 0x75, 0xd2, 0xa5, 0x85, 0xc8, 0xdf, 0x95, - 0xc0, 0xaa, 0x83, 0x5c, 0x07, 0xd1, 0x06, 0xac, 0x77, 0x1d, 0x7c, 0xaa, 0xb7, 0x5d, 0x2a, 0x3e, - 0x48, 0xa4, 0x04, 0x05, 0x27, 0xae, 0x99, 0xc8, 0x3f, 0x94, 0xc0, 0x35, 0xf4, 0xd4, 0xc1, 0xee, - 0xa9, 0x76, 0xd8, 0xa0, 0x0d, 0x17, 0x91, 0xae, 0xb2, 0x9c, 0x67, 0xb2, 0x7c, 0x25, 0x3e, 0x28, - 0x3c, 0xa4, 0x1d, 0x0e, 0x14, 0x29, 0x8f, 0x82, 0x7a, 0xb1, 0x10, 0xf9, 0x27, 0x12, 0xb8, 0x4e, - 0x5d, 0x68, 0x60, 0xeb, 0x48, 0x73, 0xd1, 0x13, 0xe8, 0x1a, 0x9a, 0x0e, 0x4d, 0x07, 0xe2, 0x23, - 0xab, 0xdd, 0x57, 0x58, 0x36, 0xee, 0xe1, 0x2a, 0xfb, 0x1c, 0x4a, 0x65, 0x48, 0x9b, 0x02, 0xa8, - 0xcd, 0x55, 0x2e, 0xd3, 0xde, 0x4c, 0x4c, 0x57, 0x35, 0x6c, 0x41, 0xf7, 0x54, 0xb3, 0x59, 0x74, - 0x75, 0xd7, 0x55, 0xba, 0xb7, 0xae, 0x36, 0x18, 0xd2, 0x7d, 0x0e, 0x14, 0xad, 0xab, 0x5a, 0x2f, - 0x16, 0x22, 0xff, 0x58, 0x02, 0x57, 0xdb, 0x64, 0xea, 0x12, 0x54, 0x80, 0x89, 0xb4, 0xd1, 0xa7, - 0x48, 0x51, 0x71, 0xb5, 0xda, 0x22, 0x57, 0x64, 0x50, 0x7d, 0x1b, 0x14, 0x0c, 0x64, 0xd9, 0xa6, - 0x66, 0x20, 0x1d, 0x9b, 0xb0, 0x4e, 0x3a, 0x0c, 0x97, 0x61, 0x86, 0xbb, 0x13, 0x27, 0x0e, 0x07, - 0xdd, 0xf2, 0x70, 0xb6, 0x04, 0x4c, 0x20, 0xc3, 0x05, 0x23, 0x4c, 0x6e, 0x33, 0x94, 0x0e, 0x5e, - 0xf3, 0x4a, 0x0c, 0x03, 0x13, 0xdd, 0x6e, 0x58, 0xb4, 0x39, 0x28, 0x5f, 0xc5, 0x4a, 0x71, 0x83, - 0xee, 0x20, 0xb4, 0x25, 0xfa, 0x05, 0x83, 0x2d, 0x1c, 0x76, 0x12, 0xe5, 0xef, 0x49, 0x40, 0x11, - 0xe6, 0x3f, 0xb4, 0x5d, 0x1d, 0x19, 0x1a, 0x41, 0x94, 0xd6, 0x91, 0x89, 0x42, 0x23, 0x92, 0xfc, - 0x34, 0x53, 0x7b, 0xb9, 0xf7, 0x22, 0xbf, 0xc3, 0x40, 0xaa, 0x01, 0x46, 0x30, 0xfa, 0xb2, 0x19, - 0xdb, 0x4e, 0xca, 0x07, 0xc9, 0xd7, 0xd8, 0x1b, 0xc1, 0x6a, 0xd4, 0x73, 0xc9, 0x51, 0x3e, 0x39, - 0x07, 0xf2, 0xdd, 0x32, 0xdb, 0xc0, 0xeb, 0xd1, 0x62, 0x50, 0xbb, 0xf0, 0xaa, 0xd5, 0xaf, 0x5a, - 0x2e, 0x01, 0xe0, 0x6d, 0x12, 0x34, 0x66, 0x56, 0x5e, 0xaf, 0xaa, 0x69, 0x8f, 0xc2, 0xcc, 0x2f, - 0x2f, 0x83, 0xcc, 0xe3, 0x86, 0x4d, 0xfd, 0x76, 0x56, 0x84, 0xaa, 0x80, 0x91, 0x38, 0x43, 0x97, - 0x1a, 0xb0, 0x59, 0x5a, 0x8e, 0x0d, 0xb3, 0x06, 0x3c, 0x9f, 0x1c, 0x36, 0xb2, 0x06, 0xec, 0xac, - 0xd0, 0x53, 0xc3, 0xab, 0xd0, 0xd3, 0x83, 0x56, 0xe8, 0xed, 0x95, 0x23, 0x48, 0x3e, 0xcb, 0x98, - 0xca, 0x31, 0x33, 0x60, 0xe5, 0x78, 0x37, 0xb9, 0x57, 0xaf, 0x46, 0x54, 0x8e, 0xad, 0xfe, 0xaa, - 0xfc, 0x22, 0x05, 0x2e, 0xc5, 0xae, 0x94, 0x43, 0xf7, 0xe8, 0x36, 0x97, 0x9d, 0xec, 0x70, 0xd9, - 0x65, 0x90, 0xe1, 0x1b, 0x48, 0xcd, 0xf3, 0x73, 0xdf, 0xa7, 0x39, 0x69, 0x03, 0x12, 0x24, 0xaf, - 0x82, 0xac, 0x60, 0x60, 0xbd, 0xb8, 0x33, 0xab, 0xa2, 0xd3, 0x03, 0x8f, 0x24, 0x17, 0xc1, 0x82, - 0x60, 0x21, 0x3a, 0xac, 0x23, 0xed, 0x10, 0xea, 0xd4, 0x76, 0x99, 0x7f, 0x4e, 0xab, 0xf3, 0xbc, - 0xa9, 0xea, 0xb5, 0xec, 0xb0, 0x06, 0x79, 0x3b, 0x18, 0x93, 0x7a, 0x75, 0x6e, 0x8a, 0xd5, 0xb9, - 0x57, 0x42, 0xb6, 0x11, 0x5b, 0x5a, 0x5f, 0xc9, 0xf7, 0xd9, 0x27, 0xab, 0x71, 0x85, 0x64, 0xde, - 0x6f, 0xf9, 0x00, 0xe4, 0xb0, 0x85, 0x29, 0xe6, 0x95, 0xcb, 0x11, 0xb6, 0x3c, 0xcf, 0xc3, 0x76, - 0xc8, 0xf5, 0x7a, 0x7a, 0x8c, 0x2c, 0x00, 0xee, 0xb1, 0xfe, 0xaa, 0xd7, 0x5d, 0xfe, 0x26, 0xc8, - 0x9b, 0x10, 0x7b, 0x66, 0x85, 0x96, 0x8e, 0x5a, 0xa1, 0xfb, 0x70, 0xc6, 0xc5, 0x10, 0x48, 0x18, - 0xbe, 0x33, 0xea, 0x32, 0xc9, 0x41, 0x7b, 0x45, 0x5d, 0xb6, 0x0f, 0xa8, 0x96, 0xa8, 0xeb, 0x92, - 0xb9, 0xa6, 0x47, 0x93, 0xb9, 0x66, 0xce, 0x98, 0xb9, 0xda, 0x73, 0xc4, 0xec, 0x50, 0x72, 0xc4, - 0xdc, 0x7f, 0x73, 0x77, 0x19, 0x9b, 0x06, 0x94, 0xbf, 0x9d, 0x07, 0xab, 0x3d, 0x4b, 0xb3, 0xa1, - 0x27, 0x8b, 0xcb, 0x60, 0xda, 0x8f, 0xe3, 0x53, 0xb3, 0x66, 0xd7, 0x45, 0xba, 0x10, 0xf1, 0x5f, - 0x65, 0x34, 0xf9, 0x3a, 0x98, 0x15, 0x4c, 0x8e, 0x6b, 0x9f, 0x60, 0x03, 0xb9, 0x22, 0x69, 0xcc, - 0x70, 0x72, 0x45, 0x50, 0xdb, 0xa3, 0x7c, 0x6a, 0xc0, 0x28, 0xef, 0x37, 0xb9, 0xdc, 0x02, 0x39, - 0x56, 0xdd, 0xb3, 0x32, 0x42, 0xa3, 0xd8, 0x44, 0x84, 0x42, 0xd3, 0x61, 0x59, 0x66, 0x42, 0x5d, - 0x68, 0xb6, 0xed, 0xfb, 0x4d, 0x5e, 0x97, 0x50, 0xd5, 0xd4, 0xec, 0x92, 0xe6, 0x5d, 0x9a, 0x6d, - 0xcd, 0x2e, 0x39, 0x70, 0x8e, 0x39, 0x00, 0xcf, 0x08, 0x2a, 0xff, 0x68, 0xcf, 0xb6, 0x99, 0x8e, - 0x6c, 0xdb, 0x19, 0xfc, 0xd9, 0xe1, 0x05, 0xff, 0xf4, 0x90, 0x83, 0x7f, 0x66, 0x34, 0xc1, 0x3f, - 0x3b, 0xe4, 0xe0, 0x9f, 0x1b, 0x30, 0xf8, 0xff, 0x1f, 0xcc, 0xf3, 0xe0, 0x77, 0x90, 0x6b, 0x62, - 0x42, 0xbc, 0x30, 0xcb, 0xcf, 0x33, 0xb7, 0x9a, 0x63, 0x0d, 0x95, 0x26, 0x7d, 0xc0, 0xea, 0xb6, - 0x57, 0x04, 0x2b, 0xbf, 0x4b, 0x81, 0xd5, 0x9e, 0xdb, 0xd5, 0x57, 0x45, 0x41, 0x1f, 0xe9, 0x62, - 0x11, 0x4c, 0xf1, 0xcd, 0xbd, 0x88, 0x5e, 0xf1, 0xd5, 0xb5, 0x58, 0x00, 0xa3, 0x2b, 0x16, 0x32, - 0xa3, 0x28, 0x16, 0x5e, 0xe5, 0x8b, 0xcf, 0x2b, 0x5f, 0xb4, 0x16, 0x0b, 0xf3, 0x03, 0x16, 0x0b, - 0x03, 0x25, 0x92, 0x9e, 0x29, 0x42, 0xf9, 0x11, 0x00, 0x97, 0x13, 0x9c, 0x46, 0x8e, 0xe6, 0xaa, - 0xa7, 0x5b, 0x6c, 0xf5, 0x71, 0xe1, 0xd3, 0x6f, 0x6c, 0xf5, 0x71, 0x01, 0x94, 0x3c, 0xb6, 0xa6, - 0x86, 0xb7, 0xfd, 0x3d, 0x3f, 0xfc, 0x0b, 0xaa, 0xd4, 0x68, 0x2e, 0xa8, 0xd2, 0xa3, 0xb9, 0xa0, - 0x02, 0x67, 0xbc, 0xa0, 0xaa, 0x02, 0xf9, 0x1d, 0xbb, 0xe1, 0xd6, 0x4f, 0x77, 0x2d, 0x8a, 0x5c, - 0x44, 0xa8, 0xda, 0xba, 0x55, 0xea, 0xed, 0x51, 0x9d, 0xdd, 0xe5, 0xf7, 0x40, 0x8e, 0x53, 0x77, - 0x1a, 0x16, 0x3b, 0x68, 0x85, 0x14, 0x6d, 0x42, 0x27, 0x94, 0x54, 0x7b, 0xc2, 0x46, 0x02, 0x84, - 0xae, 0xd3, 0xa6, 0x07, 0xbc, 0x4e, 0xbb, 0x17, 0xd4, 0xde, 0xec, 0xe4, 0x94, 0xb0, 0x6c, 0x9a, - 0x89, 0x07, 0xe2, 0x4b, 0x20, 0x0b, 0x73, 0xe2, 0x57, 0xe9, 0xfc, 0x2b, 0x74, 0x3b, 0x37, 0x9b, - 0xe0, 0x76, 0x6e, 0x6e, 0x28, 0xb7, 0x73, 0x83, 0xa6, 0xc4, 0xf7, 0x92, 0xa7, 0xc4, 0x37, 0x83, - 0x94, 0x98, 0x20, 0xd9, 0x29, 0x7b, 0x20, 0x1d, 0x0c, 0xd8, 0xac, 0xd8, 0xa5, 0x70, 0xc5, 0x1e, - 0x59, 0x04, 0x8e, 0x47, 0x17, 0x81, 0xca, 0xcf, 0xc7, 0x41, 0x21, 0xfe, 0x98, 0x74, 0x34, 0xf9, - 0x75, 0x0f, 0xcc, 0xb5, 0x9c, 0xea, 0x62, 0xbd, 0xaf, 0xcb, 0xf4, 0x59, 0x12, 0x92, 0x13, 0xeb, - 0xa8, 0xac, 0x26, 0x57, 0xf8, 0xf5, 0x40, 0xe1, 0xf1, 0x13, 0x57, 0xfe, 0x25, 0x81, 0x0b, 0x31, - 0x47, 0xe5, 0x03, 0x2b, 0xa6, 0x02, 0x66, 0x5a, 0xcf, 0xf0, 0xc5, 0x2d, 0xe1, 0x1b, 0xf1, 0xf7, - 0x72, 0x21, 0x11, 0xd4, 0xe9, 0x96, 0x53, 0xfa, 0xf2, 0xfd, 0xe4, 0xb3, 0xbf, 0x12, 0xcc, 0x3e, - 0x66, 0x6a, 0xca, 0x6f, 0x53, 0xe0, 0x5a, 0xb2, 0x4b, 0x8b, 0x57, 0x2f, 0x2d, 0xfe, 0xf7, 0x5e, - 0x5a, 0x74, 0x3b, 0x8f, 0x48, 0xf7, 0x7f, 0x1e, 0x01, 0xba, 0x9f, 0x47, 0x44, 0xa5, 0x88, 0xcc, - 0xe0, 0x29, 0xa2, 0x99, 0x2d, 0xb3, 0xe1, 0x6c, 0x79, 0xf6, 0x65, 0xee, 0x20, 0x7a, 0x99, 0xfb, - 0x42, 0xec, 0xdd, 0xb2, 0x38, 0x51, 0xfa, 0xbc, 0x97, 0xbb, 0xf2, 0xc3, 0xe4, 0x99, 0xa3, 0x14, - 0x77, 0x08, 0x10, 0xb5, 0x56, 0xfd, 0x46, 0x02, 0xb9, 0xa8, 0x89, 0x7a, 0x1b, 0x5a, 0x71, 0x1a, - 0xc7, 0x73, 0x86, 0xf8, 0x92, 0x97, 0x40, 0x2a, 0x38, 0x80, 0xe3, 0x19, 0x23, 0xf8, 0xee, 0xb6, - 0xf7, 0x9e, 0x48, 0xb8, 0xf7, 0x9e, 0x1c, 0x6c, 0xef, 0xad, 0xfc, 0x5e, 0x02, 0xd9, 0x16, 0xd9, - 0xdb, 0xce, 0x11, 0xa4, 0x9e, 0xe7, 0x08, 0xe3, 0x89, 0xcf, 0x11, 0x46, 0x3d, 0x97, 0x7f, 0x8e, - 0x83, 0xcb, 0x91, 0x77, 0xf6, 0x43, 0x3a, 0x9b, 0x79, 0x08, 0xa6, 0x83, 0xe7, 0x04, 0xac, 0x7a, - 0x9a, 0x60, 0x81, 0xf0, 0xa5, 0xbe, 0xdf, 0x10, 0xb0, 0x6a, 0x2a, 0xab, 0x87, 0xbe, 0xe4, 0x1a, - 0x78, 0x2d, 0xc0, 0x16, 0x4f, 0x17, 0x1c, 0xdb, 0x0e, 0x9e, 0xb4, 0x14, 0xe3, 0xc6, 0xf0, 0x61, - 0xf9, 0x20, 0x15, 0xdb, 0xae, 0xab, 0x0b, 0x7a, 0x07, 0x8d, 0x0c, 0x56, 0xb4, 0x25, 0x50, 0xa8, - 0xf2, 0xef, 0x89, 0x2e, 0x8a, 0x1f, 0xd2, 0x52, 0x3a, 0x4a, 0xc5, 0x37, 0xc0, 0x72, 0xa4, 0xe2, - 0x35, 0x68, 0x18, 0x98, 0x25, 0x80, 0x01, 0x4d, 0x70, 0x31, 0xc2, 0x04, 0xeb, 0x3e, 0xa6, 0xfc, - 0x18, 0x5c, 0x8a, 0x1e, 0x96, 0x3f, 0x77, 0xf0, 0x5f, 0x0f, 0xf5, 0x3b, 0xe8, 0x52, 0xc4, 0xa0, - 0xdc, 0x08, 0xc3, 0x34, 0x7f, 0x5b, 0x1e, 0xfc, 0x8e, 0x04, 0xe6, 0xfd, 0xf1, 0xb0, 0x45, 0x79, - 0xab, 0x7c, 0x1d, 0xcc, 0x42, 0x9d, 0x3f, 0xa3, 0x80, 0x86, 0xe1, 0x22, 0x42, 0x84, 0xd9, 0x67, - 0x04, 0x79, 0x9d, 0x53, 0xe5, 0x0d, 0x00, 0x2c, 0xf4, 0x44, 0x73, 0xbc, 0xbe, 0xa4, 0x9f, 0xc3, - 0xb2, 0xb4, 0x85, 0x9e, 0xb0, 0x11, 0x89, 0xf2, 0xa7, 0x71, 0xb0, 0xd6, 0x22, 0x6a, 0x05, 0xb1, - 0xcd, 0x1e, 0x6f, 0x1e, 0x92, 0x1b, 0xbe, 0x05, 0x16, 0x1d, 0x0e, 0xcb, 0x6c, 0x15, 0x5a, 0xe5, - 0x27, 0xd8, 0x2a, 0x9f, 0x73, 0xfc, 0x41, 0xed, 0x7a, 0x73, 0x99, 0xd7, 0x40, 0x2e, 0x30, 0x30, - 0xb6, 0x68, 0x60, 0x60, 0xee, 0x55, 0x37, 0xe3, 0x0c, 0xdc, 0xa1, 0x54, 0x55, 0x76, 0xdb, 0x49, - 0xa4, 0xfc, 0x8d, 0xe4, 0x76, 0xbd, 0x15, 0x6d, 0xd7, 0x18, 0x65, 0x29, 0x2f, 0x25, 0xb0, 0x10, - 0xf1, 0xb4, 0x65, 0x60, 0x25, 0x7e, 0x1d, 0xa4, 0x88, 0x7e, 0x8c, 0x8c, 0x46, 0x1d, 0x89, 0x30, - 0x4e, 0xfa, 0xaa, 0xa6, 0x2a, 0xba, 0xa9, 0x01, 0x40, 0xf9, 0xed, 0xe4, 0x53, 0xbf, 0x18, 0x4c, - 0x3d, 0x62, 0x36, 0xca, 0x87, 0xe3, 0x60, 0x99, 0x3d, 0x6c, 0xd9, 0xb4, 0x4d, 0xb3, 0x61, 0x61, - 0x7a, 0xea, 0x19, 0xb1, 0xea, 0x19, 0xf4, 0xcc, 0x33, 0x3e, 0x00, 0xe9, 0xf6, 0xf7, 0x92, 0x77, - 0xc4, 0xfb, 0xf5, 0x62, 0xcb, 0x53, 0xf5, 0xa6, 0xd4, 0xdd, 0x64, 0x50, 0x9b, 0x48, 0xe5, 0x6a, - 0xf2, 0xb9, 0xaf, 0xb5, 0x3e, 0xde, 0xe9, 0x8e, 0xaf, 0xfc, 0x6a, 0x1c, 0x14, 0xd7, 0xa9, 0x6d, - 0x62, 0x9d, 0x97, 0x3d, 0xf7, 0x5d, 0x83, 0x55, 0xf2, 0xf7, 0x1a, 0x75, 0x8a, 0x9d, 0x3a, 0x46, - 0xae, 0x6f, 0x85, 0x33, 0xab, 0x05, 0x81, 0x45, 0xff, 0x15, 0x14, 0x42, 0x9a, 0x19, 0x0c, 0xe0, - 0xeb, 0xa8, 0x94, 0xe0, 0xe5, 0x53, 0x58, 0x30, 0x35, 0x67, 0x76, 0x12, 0x49, 0xb9, 0x96, 0x5c, - 0x4d, 0x77, 0x02, 0x35, 0xf5, 0xa7, 0x82, 0x1b, 0x4f, 0x41, 0x36, 0xfc, 0xaa, 0x57, 0xbe, 0x0d, - 0x72, 0xdb, 0xef, 0x6f, 0xbe, 0xb3, 0xbe, 0xf7, 0xf6, 0xb6, 0x76, 0xb0, 0x57, 0xad, 0x6c, 0x6f, - 0xee, 0xee, 0xec, 0x6e, 0x6f, 0xcd, 0x8d, 0x2d, 0xe5, 0x9f, 0x3d, 0x5f, 0x89, 0x6c, 0x93, 0x65, - 0x30, 0x59, 0xad, 0xdc, 0xdf, 0x9f, 0x93, 0x96, 0x52, 0xcf, 0x9e, 0xaf, 0xb0, 0xdf, 0x9e, 0x12, - 0xb7, 0xb6, 0xd5, 0xdd, 0x77, 0xd7, 0xf7, 0x77, 0xdf, 0xdd, 0xae, 0xce, 0x8d, 0x2f, 0xcd, 0x3e, - 0x7b, 0xbe, 0x12, 0x26, 0x6d, 0x1c, 0x7f, 0xfc, 0xa2, 0x20, 0x7d, 0xfa, 0xa2, 0x20, 0xfd, 0xf5, - 0x45, 0x41, 0xfa, 0xc1, 0xcb, 0xc2, 0xd8, 0xa7, 0x2f, 0x0b, 0x63, 0x7f, 0x7e, 0x59, 0x18, 0x7b, - 0xb8, 0x77, 0x84, 0xe9, 0x71, 0xa3, 0x56, 0xd4, 0x6d, 0xb3, 0xb4, 0xeb, 0x2b, 0xf2, 0x2e, 0xac, - 0x91, 0x52, 0xa0, 0xd6, 0x9b, 0xba, 0xed, 0xa2, 0xf0, 0xe7, 0x31, 0xc4, 0x56, 0xc9, 0xb4, 0xbd, - 0xb9, 0x91, 0x66, 0x35, 0xec, 0xd5, 0x64, 0xa4, 0x36, 0xc5, 0xfe, 0x32, 0xe1, 0x8b, 0xff, 0x09, - 0x00, 0x00, 0xff, 0xff, 0x16, 0x7b, 0x31, 0x71, 0xe1, 0x31, 0x00, 0x00, + // 2551 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5b, 0xcd, 0x6f, 0x1c, 0x49, + 0x15, 0x77, 0xdb, 0x8e, 0xed, 0x79, 0x33, 0x1e, 0xdb, 0x6d, 0xaf, 0x99, 0x75, 0x12, 0x7f, 0x8c, + 0x37, 0x89, 0x37, 0x24, 0x33, 0x24, 0x04, 0x45, 0x58, 0x42, 0xe0, 0xcf, 0x5d, 0x8b, 0xd8, 0x99, + 0xf4, 0xd8, 0xbb, 0xab, 0x68, 0x51, 0xab, 0xa6, 0xbb, 0x6c, 0x17, 0x99, 0xfe, 0x48, 0x57, 0x8f, + 0x13, 0xaf, 0x38, 0x70, 0x60, 0x05, 0x0a, 0x17, 0x40, 0x7c, 0x88, 0x43, 0xc4, 0x9e, 0x38, 0x23, + 0xc1, 0x3f, 0x00, 0x07, 0xb4, 0x20, 0x0e, 0x7b, 0x03, 0x71, 0x58, 0xa1, 0x44, 0x08, 0xfe, 0x02, + 0xc4, 0x01, 0x21, 0xd4, 0x55, 0xd5, 0x3d, 0x3d, 0x33, 0x3d, 0x3d, 0x3d, 0xe3, 0xb1, 0xf6, 0x40, + 0x2e, 0xc9, 0xf4, 0xab, 0x57, 0xaf, 0x5e, 0xbd, 0x57, 0xef, 0xd5, 0xaf, 0xaa, 0x9e, 0xe1, 0x4d, + 0x62, 0x7e, 0x13, 0x6b, 0x2e, 0x39, 0xc1, 0x45, 0xfc, 0x54, 0x3b, 0x46, 0xe6, 0x11, 0x2e, 0x9e, + 0xdc, 0xaa, 0x60, 0x17, 0xdd, 0x2a, 0xda, 0x8e, 0x65, 0x5b, 0x14, 0x55, 0x0b, 0xb6, 0x63, 0xb9, + 0x96, 0x3c, 0x17, 0xb0, 0x16, 0x7c, 0xd6, 0x82, 0x60, 0x9d, 0x9b, 0xd7, 0x2c, 0x6a, 0x58, 0xb4, + 0x58, 0x41, 0xb4, 0xde, 0x5f, 0xb3, 0x88, 0xc9, 0xfb, 0xce, 0x15, 0x44, 0xbb, 0x4e, 0xa8, 0xeb, + 0x90, 0x4a, 0xcd, 0x25, 0x96, 0x19, 0xf0, 0x85, 0x89, 0x82, 0xff, 0x73, 0x82, 0xdf, 0xa0, 0x47, + 0xc5, 0x93, 0x5b, 0xde, 0x7f, 0xa2, 0xe1, 0x75, 0xde, 0xa0, 0xb2, 0xaf, 0x22, 0xff, 0x10, 0x4d, + 0x33, 0x47, 0xd6, 0x91, 0xc5, 0xe9, 0xde, 0x2f, 0x41, 0x8d, 0x9b, 0x60, 0x30, 0x0d, 0xce, 0x7a, + 0xa5, 0xce, 0x6a, 0x39, 0x48, 0xab, 0xd6, 0x19, 0xf9, 0xa7, 0x60, 0x9b, 0x42, 0x06, 0x31, 0xad, + 0x22, 0xfb, 0x97, 0x93, 0xf2, 0xbf, 0x18, 0x85, 0xcb, 0x65, 0xdb, 0x72, 0x77, 0x91, 0xf3, 0x08, + 0xbb, 0x25, 0xe4, 0x20, 0xe3, 0xc0, 0xd6, 0x91, 0x8b, 0x4b, 0xc2, 0x84, 0xf2, 0x0c, 0x5c, 0x70, + 0x89, 0x5b, 0xc5, 0x39, 0x69, 0x51, 0x5a, 0x49, 0x29, 0xfc, 0x43, 0x5e, 0x84, 0xb4, 0x8e, 0xa9, + 0xe6, 0x10, 0xdb, 0x9b, 0x7b, 0x6e, 0x90, 0xb5, 0x85, 0x49, 0xf2, 0x45, 0x48, 0x19, 0x4c, 0xa8, + 0x4a, 0xf4, 0xdc, 0x10, 0x6b, 0x1f, 0xe3, 0x84, 0x1d, 0x5d, 0xde, 0x81, 0xac, 0x81, 0x1e, 0x61, + 0x47, 0x3d, 0xc4, 0x58, 0x75, 0x90, 0x8b, 0x73, 0xc3, 0x1e, 0xc7, 0xfa, 0xf2, 0xc7, 0x9f, 0x2e, + 0x48, 0x7f, 0xfd, 0x74, 0xe1, 0x22, 0xb7, 0x0f, 0xd5, 0x1f, 0x15, 0x88, 0x55, 0x34, 0x90, 0x7b, + 0x5c, 0xb8, 0x87, 0x8f, 0x90, 0x76, 0xba, 0x89, 0x35, 0x25, 0xc3, 0xba, 0x6e, 0x63, 0xac, 0x20, + 0x17, 0x7b, 0xa2, 0xdc, 0x46, 0x51, 0x17, 0xba, 0x10, 0xe5, 0x86, 0x45, 0xbd, 0x07, 0xb3, 0x0e, + 0xae, 0xa2, 0x53, 0x21, 0x8c, 0x1e, 0x23, 0x47, 0x88, 0x1c, 0x49, 0x2e, 0x72, 0x5a, 0x88, 0xd8, + 0xc6, 0xb8, 0xec, 0x09, 0x60, 0x92, 0x15, 0x98, 0x36, 0x88, 0xa9, 0xda, 0x0e, 0xd1, 0xb0, 0xea, + 0x12, 0xed, 0x91, 0x4a, 0xc9, 0x07, 0x38, 0x37, 0x9a, 0x5c, 0xec, 0xa4, 0x41, 0xcc, 0x92, 0xd7, + 0x7d, 0x9f, 0x68, 0x8f, 0xca, 0xe4, 0x03, 0xa6, 0xad, 0x27, 0xf3, 0x71, 0x0d, 0x99, 0x2e, 0x71, + 0x4f, 0x43, 0x62, 0xc7, 0xba, 0xd0, 0xd6, 0x20, 0xe6, 0x03, 0x21, 0x21, 0x90, 0xfc, 0x35, 0x18, + 0xa1, 0x2e, 0x72, 0x6b, 0x34, 0x97, 0x5a, 0x94, 0x56, 0xb2, 0xb7, 0x57, 0x0a, 0xed, 0x03, 0xa8, + 0xc0, 0x57, 0x4e, 0x99, 0xf1, 0x2b, 0xa2, 0x9f, 0x7c, 0x09, 0x46, 0x3c, 0x75, 0xb0, 0x93, 0x03, + 0xa6, 0xcb, 0xb0, 0xa7, 0x8b, 0x22, 0x68, 0xf2, 0x36, 0x64, 0x3c, 0xcd, 0x4d, 0xcb, 0x5b, 0x28, + 0xa8, 0x9a, 0x4b, 0x27, 0xd7, 0x37, 0x6d, 0x10, 0x73, 0x4f, 0xf4, 0x93, 0x37, 0x01, 0x90, 0xee, + 0x49, 0x22, 0xe6, 0xa1, 0x95, 0xcb, 0x2c, 0x4a, 0x2b, 0xe9, 0xdb, 0x57, 0xe2, 0x74, 0x5d, 0xf3, + 0xb8, 0x77, 0xcc, 0x43, 0x4b, 0x49, 0x21, 0xff, 0xa7, 0xbc, 0x0c, 0xe3, 0x5e, 0xf0, 0xab, 0x3a, + 0xd6, 0x88, 0x81, 0xaa, 0x34, 0x37, 0xbe, 0x28, 0xad, 0x8c, 0x2b, 0x19, 0x8f, 0xb8, 0x29, 0x68, + 0xf2, 0x15, 0xc8, 0x3e, 0xae, 0x59, 0x6e, 0x88, 0x2b, 0xcb, 0xb8, 0xc6, 0x19, 0xd5, 0x67, 0x5b, + 0x7d, 0xf0, 0xbd, 0x8f, 0x16, 0x06, 0xfe, 0xf9, 0xd1, 0xc2, 0xc0, 0x1f, 0x7f, 0x73, 0x73, 0x4e, + 0xc4, 0xf8, 0x91, 0x75, 0x12, 0x28, 0xb0, 0x61, 0x99, 0x2e, 0x36, 0xdd, 0x67, 0xff, 0xf8, 0xd5, + 0xf5, 0xab, 0x41, 0x50, 0xc7, 0xc6, 0x5f, 0xfe, 0x4f, 0x12, 0xcc, 0x6e, 0x09, 0xd6, 0x2d, 0x13, + 0x55, 0xaa, 0x67, 0x0f, 0xcd, 0x7b, 0x90, 0xf1, 0x07, 0xdf, 0x3f, 0xb5, 0x31, 0x8b, 0xce, 0x0e, + 0x5e, 0xde, 0x0a, 0xf1, 0x2b, 0x0d, 0xbd, 0x57, 0x6f, 0xf8, 0x73, 0xf6, 0x66, 0xb5, 0x10, 0xcc, + 0x2a, 0x5a, 0xe7, 0xfc, 0xf7, 0xb3, 0xb0, 0xb4, 0x8e, 0x5c, 0xed, 0xd8, 0x6f, 0xdf, 0xb5, 0x74, + 0x72, 0x48, 0x34, 0xe4, 0x69, 0x76, 0xe6, 0x99, 0x7d, 0x28, 0x41, 0x9e, 0xda, 0x96, 0xab, 0x8a, + 0xd4, 0x63, 0x7b, 0x06, 0x55, 0x6b, 0xcc, 0xa2, 0xaa, 0xbf, 0x2b, 0xd0, 0xdc, 0xd0, 0xe2, 0xd0, + 0x4a, 0xfa, 0xf6, 0x97, 0xe3, 0x26, 0x1c, 0xeb, 0x14, 0x65, 0x9e, 0xc6, 0x35, 0x53, 0xf9, 0x67, + 0x12, 0xac, 0xe8, 0xd8, 0x21, 0x27, 0xc8, 0x93, 0xde, 0x41, 0x9b, 0x61, 0xa6, 0xcd, 0x57, 0xe3, + 0xb4, 0xd9, 0x0c, 0x64, 0xb5, 0xd7, 0xe9, 0x0d, 0xbd, 0x33, 0x13, 0x95, 0x6b, 0x70, 0x29, 0x6c, + 0xa0, 0x2a, 0xaa, 0x99, 0xda, 0x71, 0x48, 0x99, 0x0b, 0x4c, 0x99, 0x3b, 0xc9, 0x4c, 0x73, 0x8f, + 0xf5, 0x0e, 0x34, 0x78, 0x9d, 0xb6, 0x69, 0xa1, 0xf2, 0x77, 0x24, 0x58, 0xb2, 0xb1, 0x63, 0x63, + 0xb7, 0x86, 0xaa, 0x6d, 0x07, 0x1f, 0xe9, 0xec, 0x97, 0x92, 0x2f, 0x24, 0x52, 0x83, 0x79, 0x3b, + 0xae, 0x99, 0xca, 0x3f, 0x94, 0xe0, 0x2a, 0x7e, 0x6a, 0x13, 0xe7, 0x54, 0x3d, 0xac, 0xb9, 0x35, + 0x07, 0xd3, 0xb6, 0xba, 0x8c, 0x32, 0x5d, 0xbe, 0x12, 0x1f, 0x14, 0x9e, 0xa4, 0x6d, 0x2e, 0x28, + 0x52, 0x9f, 0x3c, 0xee, 0xc4, 0x42, 0xe5, 0x9f, 0x48, 0x70, 0xcd, 0x75, 0x90, 0x4e, 0xcc, 0x23, + 0xd5, 0xc1, 0x4f, 0x90, 0xa3, 0xab, 0x1a, 0x32, 0x6c, 0x44, 0x8e, 0xcc, 0xe6, 0xb5, 0xc2, 0x32, + 0x7b, 0x87, 0xa5, 0xb2, 0xcf, 0x45, 0x29, 0x4c, 0xd2, 0x86, 0x10, 0xd4, 0xb4, 0x54, 0x96, 0xdd, + 0xce, 0x4c, 0xcc, 0x56, 0x15, 0x62, 0x22, 0xe7, 0x54, 0xb5, 0x58, 0x74, 0xb5, 0xb7, 0x55, 0xaa, + 0xb3, 0xad, 0xd6, 0x99, 0xa4, 0xfb, 0x5c, 0x50, 0xb4, 0xad, 0x2a, 0x9d, 0x58, 0xa8, 0xfc, 0x63, + 0x09, 0xae, 0x34, 0xe9, 0xd4, 0x26, 0xa8, 0x80, 0xa9, 0xb4, 0xde, 0xa5, 0x4a, 0x51, 0x71, 0xb5, + 0xd4, 0xa0, 0x57, 0x64, 0x50, 0x7d, 0x0b, 0xe6, 0x75, 0x6c, 0x5a, 0x46, 0xb0, 0x3b, 0xb4, 0x38, + 0x2e, 0xcd, 0x1c, 0x77, 0x37, 0x4e, 0x1d, 0x2e, 0x74, 0xd3, 0x93, 0xe3, 0xef, 0x27, 0x81, 0x0e, + 0x17, 0xf5, 0x30, 0xb9, 0xc9, 0x51, 0x1a, 0xbc, 0xe6, 0xc1, 0x15, 0x9d, 0x50, 0xcd, 0xaa, 0x99, + 0x6e, 0x7d, 0x50, 0xbe, 0x23, 0x16, 0xe3, 0x06, 0xdd, 0xc6, 0x78, 0x53, 0xf4, 0x0b, 0x06, 0x9b, + 0x3e, 0x6c, 0x25, 0xca, 0xdf, 0x95, 0x20, 0x2f, 0xdc, 0x7f, 0x68, 0x39, 0x1a, 0xd6, 0x55, 0x8a, + 0x5d, 0xb7, 0x8a, 0x0d, 0x1c, 0x1a, 0xd1, 0xdb, 0x3b, 0x3d, 0xb3, 0xaf, 0x76, 0x06, 0x0c, 0xdb, + 0x4c, 0x48, 0x39, 0x90, 0x11, 0x8c, 0xbe, 0x60, 0xc4, 0xb6, 0x53, 0x99, 0x02, 0xb7, 0x86, 0x1a, + 0xc6, 0x10, 0xf5, 0x49, 0x67, 0xd9, 0xa4, 0xef, 0xc4, 0x67, 0x53, 0xd3, 0x32, 0x76, 0xeb, 0x40, + 0x22, 0x18, 0x3b, 0xa7, 0xb7, 0x69, 0x59, 0x3d, 0x48, 0xbe, 0xb1, 0x5f, 0x0f, 0xb6, 0xc0, 0x8e, + 0xfb, 0x5c, 0xfe, 0xa7, 0x23, 0x90, 0x6b, 0x97, 0x4e, 0x7b, 0xde, 0x04, 0x67, 0x03, 0xf0, 0xc5, + 0x61, 0xb7, 0x0f, 0xbb, 0x2e, 0x03, 0x08, 0xa0, 0x63, 0x5a, 0x06, 0x07, 0xdc, 0x4a, 0x8a, 0xa3, + 0x1c, 0xd3, 0x32, 0xe4, 0x05, 0x48, 0xfb, 0x10, 0xc7, 0x6b, 0x67, 0x28, 0x5a, 0x01, 0x81, 0x6f, + 0x3c, 0x86, 0x36, 0x20, 0xb6, 0x8e, 0x8d, 0x07, 0xfa, 0x09, 0x62, 0x47, 0x93, 0x8b, 0x8d, 0x04, + 0xb1, 0xad, 0x47, 0x8c, 0xb1, 0xfe, 0x1d, 0x31, 0x52, 0xbd, 0x1e, 0x31, 0x9a, 0xa1, 0x2f, 0x24, + 0x9f, 0x65, 0x0c, 0xf4, 0x4d, 0xf7, 0x0b, 0xfa, 0x66, 0x13, 0x41, 0xdf, 0x89, 0x28, 0xe8, 0x7b, + 0x2f, 0x79, 0x84, 0x2c, 0x45, 0x40, 0xdf, 0xc6, 0xb5, 0x9f, 0xff, 0xe5, 0x18, 0x5c, 0x8e, 0xdd, + 0xea, 0xfb, 0x1e, 0x1d, 0x4d, 0xcb, 0x7f, 0xb8, 0x65, 0xf9, 0x2f, 0x40, 0x9a, 0x9f, 0xa6, 0x55, + 0xcf, 0x3c, 0x7e, 0x7c, 0x70, 0xd2, 0x3a, 0xa2, 0x58, 0x5e, 0x82, 0x8c, 0x60, 0x60, 0xbd, 0x78, + 0x60, 0x28, 0xa2, 0xd3, 0x03, 0x8f, 0x24, 0x17, 0x60, 0x5a, 0xb0, 0x50, 0x0d, 0x55, 0xb1, 0x7a, + 0x88, 0x34, 0xd7, 0x72, 0xd8, 0x5a, 0x1f, 0x57, 0xa6, 0x78, 0x53, 0xd9, 0x6b, 0xd9, 0x66, 0x0d, + 0xf2, 0x56, 0x30, 0xa6, 0xeb, 0x01, 0xf5, 0x31, 0x06, 0xd4, 0xdf, 0x08, 0xf9, 0x59, 0x9c, 0xef, + 0x7d, 0x23, 0xdf, 0x67, 0x9f, 0x0c, 0xa4, 0x0b, 0xcd, 0xbc, 0xdf, 0xf2, 0x01, 0xcc, 0x10, 0x93, + 0xb8, 0x84, 0x43, 0xaf, 0x23, 0x62, 0x7a, 0xab, 0x98, 0x58, 0xa1, 0x65, 0xdc, 0x71, 0xf5, 0xc9, + 0x42, 0xc0, 0x2e, 0xeb, 0xaf, 0x78, 0xdd, 0xe5, 0x6f, 0x40, 0xce, 0x40, 0xc4, 0x73, 0x2b, 0x32, + 0x35, 0xdc, 0x28, 0xba, 0x8b, 0x85, 0x3d, 0x1b, 0x12, 0x12, 0x16, 0xdf, 0x1a, 0xc1, 0xe9, 0xe4, + 0x42, 0x3b, 0x45, 0x70, 0xa6, 0x0b, 0x51, 0x0d, 0x11, 0xdc, 0x26, 0x0b, 0x8e, 0x9f, 0x4f, 0x16, + 0xcc, 0x9e, 0x31, 0x0b, 0x36, 0xe7, 0x9b, 0x89, 0xbe, 0xe4, 0x9b, 0xc9, 0xde, 0xf2, 0x4d, 0x6f, + 0xc7, 0xe3, 0xd8, 0x34, 0x90, 0xff, 0xfb, 0x28, 0x2c, 0x75, 0xc4, 0x96, 0x7d, 0x4f, 0x16, 0xcb, + 0x30, 0xee, 0xc7, 0xf1, 0xa9, 0x51, 0xb1, 0xaa, 0x22, 0x5d, 0x88, 0xf8, 0x2f, 0x33, 0x9a, 0x7c, + 0x0d, 0x26, 0x04, 0x93, 0xed, 0x58, 0x27, 0x44, 0xc7, 0x8e, 0x48, 0x1a, 0x59, 0x4e, 0x2e, 0x09, + 0x6a, 0x73, 0x94, 0x8f, 0xf4, 0x18, 0xe5, 0xdd, 0x26, 0x97, 0x5b, 0x30, 0xc3, 0x8e, 0x27, 0x0c, + 0x92, 0xa8, 0x2e, 0x31, 0x30, 0x75, 0x91, 0x61, 0xb3, 0x2c, 0x33, 0xa4, 0x4c, 0xd7, 0xdb, 0xf6, + 0xfd, 0x26, 0xaf, 0x4b, 0x08, 0xf6, 0xd5, 0xbb, 0xa4, 0x78, 0x97, 0x7a, 0x5b, 0xbd, 0xcb, 0x0c, + 0x5c, 0x60, 0x0b, 0x80, 0x67, 0x04, 0x85, 0x7f, 0x34, 0x67, 0xdb, 0x74, 0x4b, 0xb6, 0x6d, 0x0d, + 0xfe, 0x4c, 0xff, 0x82, 0x7f, 0xbc, 0xcf, 0xc1, 0x9f, 0x3d, 0x9f, 0xe0, 0x9f, 0xe8, 0x73, 0xf0, + 0x4f, 0xf6, 0x18, 0xfc, 0x9f, 0x87, 0x29, 0x1e, 0xfc, 0x36, 0x76, 0x0c, 0x42, 0xa9, 0x17, 0x66, + 0xb9, 0x29, 0xb6, 0xac, 0x26, 0x59, 0x43, 0xa9, 0x4e, 0xef, 0x11, 0x29, 0x77, 0x8a, 0xe0, 0xfc, + 0xef, 0xc7, 0x60, 0xa9, 0xe3, 0x79, 0xfb, 0x15, 0x28, 0xe8, 0x22, 0x5d, 0xcc, 0xc2, 0x08, 0xbf, + 0x9d, 0x10, 0xd1, 0x2b, 0xbe, 0xda, 0x82, 0x05, 0x38, 0x3f, 0xb0, 0x90, 0x3e, 0x0f, 0xb0, 0xf0, + 0x2a, 0x5f, 0x7c, 0x56, 0xf9, 0xa2, 0x11, 0x2c, 0x4c, 0xf5, 0x08, 0x16, 0x7a, 0x4a, 0x24, 0x1d, + 0x53, 0x44, 0xfe, 0x47, 0x00, 0xcb, 0x09, 0xae, 0x53, 0xcf, 0xe7, 0xdd, 0xab, 0x5d, 0x6c, 0x75, + 0xf1, 0xfa, 0xd5, 0x6d, 0x6c, 0x75, 0xf1, 0x1a, 0x96, 0x3c, 0xb6, 0x46, 0xfa, 0x77, 0x94, 0x1e, + 0xed, 0xff, 0x6b, 0xdd, 0xd8, 0xf9, 0xbc, 0xd6, 0xa5, 0xce, 0xe7, 0xb5, 0x0e, 0xce, 0xf8, 0x5a, + 0x57, 0x06, 0xf9, 0x6d, 0xab, 0xe6, 0x54, 0x4f, 0x77, 0x4c, 0x17, 0x3b, 0x98, 0xba, 0x4a, 0xe3, + 0x51, 0xa9, 0xf3, 0x8a, 0x6a, 0xed, 0x2e, 0xbf, 0x0b, 0x33, 0x9c, 0xba, 0x5d, 0x33, 0xd9, 0x4d, + 0x31, 0x72, 0xf1, 0x06, 0xb2, 0x43, 0x49, 0xb5, 0xa3, 0xd8, 0x48, 0x01, 0xa1, 0xb7, 0xc5, 0xf1, + 0x1e, 0xdf, 0x16, 0x77, 0x03, 0xec, 0xcd, 0xae, 0x7e, 0xa9, 0xb8, 0xf1, 0x8b, 0x15, 0xc4, 0xb7, + 0x40, 0x16, 0xe6, 0xd4, 0x47, 0xe9, 0xfc, 0x2b, 0xf4, 0x54, 0x39, 0x91, 0xe0, 0xa9, 0x72, 0xb2, + 0x2f, 0x4f, 0x95, 0xbd, 0xa6, 0xc4, 0x77, 0x93, 0xa7, 0xc4, 0x1b, 0x41, 0x4a, 0x4c, 0x90, 0xec, + 0xf2, 0x7b, 0x90, 0x0a, 0x06, 0xac, 0x23, 0x76, 0x29, 0x8c, 0xd8, 0x23, 0x41, 0xe0, 0x60, 0x34, + 0x08, 0xcc, 0xff, 0x7c, 0x10, 0xe6, 0xe3, 0xef, 0x79, 0xcf, 0x27, 0xbf, 0xee, 0xc1, 0x64, 0xc3, + 0xb5, 0x34, 0xd1, 0xba, 0xaa, 0x2c, 0x98, 0xa0, 0x21, 0x3d, 0x89, 0x86, 0x57, 0x95, 0xe4, 0x06, + 0xbf, 0x16, 0x18, 0x3c, 0x7e, 0xe2, 0xf9, 0x7f, 0x4b, 0x70, 0x31, 0xe6, 0xae, 0xbf, 0x67, 0xc3, + 0x94, 0x20, 0xdb, 0xf8, 0x08, 0x21, 0x9e, 0x39, 0xdf, 0xec, 0x78, 0x15, 0xee, 0xab, 0xa0, 0x8c, + 0x37, 0x3c, 0x33, 0xac, 0xde, 0x4f, 0x3e, 0xfb, 0x37, 0x82, 0xd9, 0xc7, 0x4c, 0x2d, 0xff, 0xbb, + 0x31, 0xb8, 0x9a, 0xec, 0xd5, 0xe5, 0x55, 0xd9, 0xc9, 0xff, 0x5f, 0xd9, 0x49, 0xbb, 0xfb, 0x88, + 0x54, 0xf7, 0xf7, 0x11, 0xd0, 0xfe, 0x3e, 0x22, 0x2a, 0x45, 0xa4, 0x7b, 0x4f, 0x11, 0xf5, 0x6c, + 0x99, 0x09, 0x67, 0xcb, 0xb3, 0x6f, 0x73, 0x07, 0xd1, 0xdb, 0xdc, 0x17, 0x62, 0x1f, 0xc7, 0xc5, + 0x8d, 0xd2, 0x67, 0xbd, 0xdd, 0xad, 0x3e, 0x4c, 0x9e, 0x39, 0x8a, 0x71, 0x97, 0x00, 0x51, 0x7b, + 0xd5, 0x6f, 0x25, 0x98, 0x89, 0x9a, 0xa8, 0x77, 0xa0, 0x15, 0xb7, 0x71, 0x3c, 0x67, 0x88, 0x2f, + 0x79, 0x0e, 0xc6, 0x82, 0x0b, 0x38, 0x9e, 0x31, 0x82, 0xef, 0x76, 0x67, 0xef, 0xa1, 0x84, 0x67, + 0xef, 0xe1, 0xde, 0xce, 0xde, 0xf9, 0x3f, 0x48, 0x90, 0x69, 0xd0, 0xbd, 0xe9, 0x1e, 0x41, 0xea, + 0x78, 0x8f, 0x30, 0x98, 0xf8, 0x1e, 0xe1, 0xbc, 0xe7, 0xf2, 0xaf, 0x41, 0x58, 0x8e, 0x2c, 0x3a, + 0xe8, 0xd3, 0xdd, 0xcc, 0x43, 0x18, 0x0f, 0xea, 0x21, 0x18, 0x7a, 0x1a, 0x62, 0x81, 0xf0, 0xa5, + 0xae, 0x8b, 0x20, 0x18, 0x9a, 0xca, 0x68, 0xa1, 0x2f, 0xb9, 0x02, 0xaf, 0x05, 0xb2, 0x45, 0xed, + 0x85, 0x6d, 0x59, 0x41, 0x4d, 0x4e, 0x21, 0x6e, 0x0c, 0x5f, 0x2c, 0x1f, 0xa4, 0x64, 0x59, 0x55, + 0x65, 0x5a, 0x6b, 0xa1, 0xd1, 0xde, 0x40, 0x5b, 0x02, 0x83, 0xe6, 0xff, 0x33, 0xd4, 0xc6, 0xf0, + 0x7d, 0xda, 0x4a, 0xcf, 0xd3, 0xf0, 0x35, 0x58, 0x88, 0x34, 0xbc, 0x8a, 0x74, 0x9d, 0xb0, 0x04, + 0xd0, 0xa3, 0x0b, 0x2e, 0x45, 0xb8, 0x60, 0xcd, 0x97, 0x29, 0x3f, 0x86, 0xcb, 0xd1, 0xc3, 0xf2, + 0x7a, 0x0d, 0xbf, 0xfc, 0xa9, 0xdb, 0x41, 0xe7, 0x22, 0x06, 0xe5, 0x4e, 0xe8, 0xa7, 0xfb, 0x9b, + 0xf2, 0xe0, 0xb7, 0x25, 0x98, 0xf2, 0xc7, 0x23, 0xa6, 0xcb, 0x5b, 0xe5, 0x6b, 0x30, 0x81, 0x34, + 0x5e, 0x07, 0x82, 0x74, 0xdd, 0xc1, 0x94, 0x0a, 0xb7, 0x67, 0x05, 0x79, 0x8d, 0x53, 0xe5, 0x75, + 0x00, 0x13, 0x3f, 0x51, 0x6d, 0xaf, 0x2f, 0xed, 0xe6, 0xb2, 0x2c, 0x65, 0xe2, 0x27, 0x6c, 0x44, + 0x9a, 0xff, 0xf3, 0x20, 0xac, 0x34, 0xa8, 0x5a, 0xc2, 0xec, 0xb0, 0xc7, 0x9b, 0xfb, 0xb4, 0x0c, + 0xef, 0xc0, 0xac, 0xcd, 0xc5, 0x32, 0x5f, 0x85, 0x76, 0xf9, 0x21, 0xb6, 0xcb, 0xcf, 0xd8, 0xfe, + 0xa0, 0x56, 0xb5, 0xbe, 0xcd, 0xab, 0x30, 0x13, 0x38, 0x98, 0x98, 0x6e, 0xe0, 0x60, 0xbe, 0xaa, + 0x6e, 0xc6, 0x39, 0xb8, 0xc5, 0xa8, 0x8a, 0xec, 0x34, 0x93, 0xe8, 0xea, 0xfb, 0xc9, 0xfd, 0x7a, + 0x2b, 0xda, 0xaf, 0x31, 0xc6, 0xca, 0xbf, 0x94, 0x60, 0x3a, 0xa2, 0x36, 0xa7, 0x67, 0x23, 0x7e, + 0x1d, 0xc6, 0xa8, 0x76, 0x8c, 0xf5, 0x5a, 0x15, 0x8b, 0x30, 0x4e, 0x5a, 0x16, 0x54, 0x16, 0xdd, + 0x94, 0x40, 0xc0, 0xea, 0x5b, 0xc9, 0xa7, 0x7e, 0x29, 0x98, 0x7a, 0xc4, 0x6c, 0xf2, 0x1f, 0x0e, + 0xc2, 0x02, 0x2b, 0x92, 0xd9, 0xb0, 0x0c, 0xa3, 0x66, 0x12, 0xf7, 0xd4, 0x73, 0x62, 0xd9, 0x73, + 0xe8, 0x99, 0x67, 0x7c, 0x00, 0xa9, 0xe6, 0x82, 0xcf, 0xbb, 0xa2, 0x98, 0xbf, 0xd0, 0x50, 0xb7, + 0x5f, 0xd7, 0xba, 0x9d, 0x0e, 0x4a, 0x5d, 0xd2, 0x6a, 0x39, 0xf9, 0xdc, 0x57, 0x1a, 0x0b, 0x81, + 0xda, 0xcb, 0xcf, 0xff, 0x7a, 0x10, 0x0a, 0x6b, 0xae, 0x65, 0x10, 0x8d, 0xc3, 0x9e, 0xfb, 0x8e, + 0xce, 0x90, 0xfc, 0x6e, 0xad, 0xea, 0x12, 0xbb, 0x4a, 0xb0, 0xe3, 0x7b, 0xe1, 0xcc, 0x66, 0xc1, + 0x30, 0xeb, 0x97, 0x71, 0x61, 0xac, 0x1a, 0xc1, 0x00, 0xbe, 0x8d, 0x8a, 0x09, 0x4a, 0xb7, 0xc2, + 0x8a, 0x29, 0x33, 0x46, 0x2b, 0x91, 0xae, 0x56, 0x92, 0x9b, 0xe9, 0x6e, 0x60, 0xa6, 0xee, 0x4c, + 0x90, 0xff, 0xaf, 0x04, 0xb9, 0x76, 0xa5, 0x5c, 0x3d, 0xdb, 0xe7, 0x7d, 0x98, 0x6e, 0xad, 0x2e, + 0xf3, 0x8d, 0x73, 0xa3, 0x9b, 0xaa, 0x32, 0x65, 0xaa, 0xb9, 0x9a, 0xac, 0xc7, 0x22, 0x99, 0x76, + 0x73, 0xbc, 0xfe, 0x14, 0x32, 0xe1, 0xba, 0x6c, 0xf9, 0x36, 0xcc, 0x6c, 0xbd, 0xb7, 0xf1, 0xf6, + 0xda, 0xde, 0x5b, 0x5b, 0xea, 0xc1, 0x5e, 0xb9, 0xb4, 0xb5, 0xb1, 0xb3, 0xbd, 0xb3, 0xb5, 0x39, + 0x39, 0x30, 0x97, 0x7b, 0xf6, 0x7c, 0x31, 0xb2, 0x4d, 0x96, 0x61, 0xb8, 0x5c, 0xba, 0xbf, 0x3f, + 0x29, 0xcd, 0x8d, 0x3d, 0x7b, 0xbe, 0xc8, 0x7e, 0x7b, 0x56, 0xda, 0xdc, 0x52, 0x76, 0xde, 0x59, + 0xdb, 0xdf, 0x79, 0x67, 0xab, 0x3c, 0x39, 0x38, 0x37, 0xf1, 0xec, 0xf9, 0x62, 0x98, 0xb4, 0x7e, + 0xfc, 0xf1, 0x8b, 0x79, 0xe9, 0x93, 0x17, 0xf3, 0xd2, 0xdf, 0x5e, 0xcc, 0x4b, 0x3f, 0x78, 0x39, + 0x3f, 0xf0, 0xc9, 0xcb, 0xf9, 0x81, 0xbf, 0xbc, 0x9c, 0x1f, 0x78, 0xb8, 0x77, 0x44, 0xdc, 0xe3, + 0x5a, 0xa5, 0xa0, 0x59, 0x46, 0x71, 0xc7, 0x37, 0xd6, 0x3d, 0x54, 0xa1, 0xc5, 0xc0, 0x74, 0x37, + 0x35, 0xcb, 0xc1, 0xe1, 0xcf, 0x63, 0x44, 0xcc, 0xa2, 0x61, 0x79, 0xce, 0xa5, 0xf5, 0xe3, 0x80, + 0x07, 0x4a, 0x69, 0x65, 0x84, 0xfd, 0x9d, 0xca, 0x17, 0xff, 0x17, 0x00, 0x00, 0xff, 0xff, 0xb0, + 0xf8, 0x37, 0x4a, 0xef, 0x33, 0x00, 0x00, } func (m *SpotMarketParamUpdateProposal) Marshal() (dAtA []byte, err error) { @@ -1397,6 +1453,16 @@ func (m *SpotMarketParamUpdateProposal) MarshalToSizedBuffer(dAtA []byte) (int, _ = i var l int _ = l + if m.QuoteDecimals != 0 { + i = encodeVarintProposal(dAtA, i, uint64(m.QuoteDecimals)) + i-- + dAtA[i] = 0x70 + } + if m.BaseDecimals != 0 { + i = encodeVarintProposal(dAtA, i, uint64(m.BaseDecimals)) + i-- + dAtA[i] = 0x68 + } if m.AdminInfo != nil { { size, err := m.AdminInfo.MarshalToSizedBuffer(dAtA[:i]) @@ -1579,6 +1645,18 @@ func (m *BatchExchangeModificationProposal) MarshalToSizedBuffer(dAtA []byte) (i _ = i var l int _ = l + if m.DenomMinNotionalProposal != nil { + { + size, err := m.DenomMinNotionalProposal.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintProposal(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x72 + } if len(m.MarketForcedSettlementProposals) > 0 { for iNdEx := len(m.MarketForcedSettlementProposals) - 1; iNdEx >= 0; iNdEx-- { { @@ -1764,6 +1842,16 @@ func (m *SpotMarketLaunchProposal) MarshalToSizedBuffer(dAtA []byte) (int, error _ = i var l int _ = l + if m.QuoteDecimals != 0 { + i = encodeVarintProposal(dAtA, i, uint64(m.QuoteDecimals)) + i-- + dAtA[i] = 0x78 + } + if m.BaseDecimals != 0 { + i = encodeVarintProposal(dAtA, i, uint64(m.BaseDecimals)) + i-- + dAtA[i] = 0x70 + } if m.AdminInfo != nil { { size, err := m.AdminInfo.MarshalToSizedBuffer(dAtA[:i]) @@ -3342,6 +3430,57 @@ func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) MarshalToSizedBuffer(dA return len(dAtA) - i, nil } +func (m *DenomMinNotionalProposal) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *DenomMinNotionalProposal) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *DenomMinNotionalProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.DenomMinNotionals) > 0 { + for iNdEx := len(m.DenomMinNotionals) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DenomMinNotionals[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintProposal(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + } + if len(m.Description) > 0 { + i -= len(m.Description) + copy(dAtA[i:], m.Description) + i = encodeVarintProposal(dAtA, i, uint64(len(m.Description))) + i-- + dAtA[i] = 0x12 + } + if len(m.Title) > 0 { + i -= len(m.Title) + copy(dAtA[i:], m.Title) + i = encodeVarintProposal(dAtA, i, uint64(len(m.Title))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func encodeVarintProposal(dAtA []byte, offset int, v uint64) int { offset -= sovProposal(v) base := offset @@ -3406,6 +3545,12 @@ func (m *SpotMarketParamUpdateProposal) Size() (n int) { l = m.AdminInfo.Size() n += 1 + l + sovProposal(uint64(l)) } + if m.BaseDecimals != 0 { + n += 1 + sovProposal(uint64(m.BaseDecimals)) + } + if m.QuoteDecimals != 0 { + n += 1 + sovProposal(uint64(m.QuoteDecimals)) + } return n } @@ -3503,6 +3648,10 @@ func (m *BatchExchangeModificationProposal) Size() (n int) { n += 1 + l + sovProposal(uint64(l)) } } + if m.DenomMinNotionalProposal != nil { + l = m.DenomMinNotionalProposal.Size() + n += 1 + l + sovProposal(uint64(l)) + } return n } @@ -3550,6 +3699,12 @@ func (m *SpotMarketLaunchProposal) Size() (n int) { l = m.AdminInfo.Size() n += 1 + l + sovProposal(uint64(l)) } + if m.BaseDecimals != 0 { + n += 1 + sovProposal(uint64(m.BaseDecimals)) + } + if m.QuoteDecimals != 0 { + n += 1 + sovProposal(uint64(m.QuoteDecimals)) + } return n } @@ -4156,6 +4311,29 @@ func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) Size() (n int) { return n } +func (m *DenomMinNotionalProposal) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Title) + if l > 0 { + n += 1 + l + sovProposal(uint64(l)) + } + l = len(m.Description) + if l > 0 { + n += 1 + l + sovProposal(uint64(l)) + } + if len(m.DenomMinNotionals) > 0 { + for _, e := range m.DenomMinNotionals { + l = e.Size() + n += 1 + l + sovProposal(uint64(l)) + } + } + return n +} + func sovProposal(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -4590,6 +4768,44 @@ func (m *SpotMarketParamUpdateProposal) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 13: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field BaseDecimals", wireType) + } + m.BaseDecimals = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowProposal + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.BaseDecimals |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 14: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field QuoteDecimals", wireType) + } + m.QuoteDecimals = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowProposal + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.QuoteDecimals |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipProposal(dAtA[iNdEx:]) @@ -5217,6 +5433,42 @@ func (m *BatchExchangeModificationProposal) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 14: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DenomMinNotionalProposal", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowProposal + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthProposal + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthProposal + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.DenomMinNotionalProposal == nil { + m.DenomMinNotionalProposal = &DenomMinNotionalProposal{} + } + if err := m.DenomMinNotionalProposal.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipProposal(dAtA[iNdEx:]) @@ -5637,6 +5889,44 @@ func (m *SpotMarketLaunchProposal) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 14: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field BaseDecimals", wireType) + } + m.BaseDecimals = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowProposal + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.BaseDecimals |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 15: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field QuoteDecimals", wireType) + } + m.QuoteDecimals = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowProposal + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.QuoteDecimals |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipProposal(dAtA[iNdEx:]) @@ -10374,6 +10664,154 @@ func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) Unmarshal(dAtA []byte) } return nil } +func (m *DenomMinNotionalProposal) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowProposal + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DenomMinNotionalProposal: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DenomMinNotionalProposal: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowProposal + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthProposal + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthProposal + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Title = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowProposal + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthProposal + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthProposal + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Description = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DenomMinNotionals", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowProposal + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthProposal + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthProposal + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DenomMinNotionals = append(m.DenomMinNotionals, &DenomMinNotional{}) + if err := m.DenomMinNotionals[len(m.DenomMinNotionals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipProposal(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthProposal + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func skipProposal(dAtA []byte) (n int, err error) { l := len(dAtA) iNdEx := 0 diff --git a/chain/exchange/types/query.pb.go b/chain/exchange/types/query.pb.go index 865c480d..a637fa2c 100644 --- a/chain/exchange/types/query.pb.go +++ b/chain/exchange/types/query.pb.go @@ -6275,6 +6275,255 @@ func (m *QueryTraderDerivativeConditionalOrdersResponse) GetOrders() []*TrimmedD return nil } +type QueryFullSpotOrderbookRequest struct { + // market id + MarketId string `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` +} + +func (m *QueryFullSpotOrderbookRequest) Reset() { *m = QueryFullSpotOrderbookRequest{} } +func (m *QueryFullSpotOrderbookRequest) String() string { return proto.CompactTextString(m) } +func (*QueryFullSpotOrderbookRequest) ProtoMessage() {} +func (*QueryFullSpotOrderbookRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_523db28b8af54781, []int{122} +} +func (m *QueryFullSpotOrderbookRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryFullSpotOrderbookRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryFullSpotOrderbookRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *QueryFullSpotOrderbookRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryFullSpotOrderbookRequest.Merge(m, src) +} +func (m *QueryFullSpotOrderbookRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryFullSpotOrderbookRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryFullSpotOrderbookRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_QueryFullSpotOrderbookRequest proto.InternalMessageInfo + +func (m *QueryFullSpotOrderbookRequest) GetMarketId() string { + if m != nil { + return m.MarketId + } + return "" +} + +type QueryFullSpotOrderbookResponse struct { + Bids []*TrimmedLimitOrder `protobuf:"bytes,1,rep,name=Bids,proto3" json:"Bids,omitempty"` + Asks []*TrimmedLimitOrder `protobuf:"bytes,2,rep,name=Asks,proto3" json:"Asks,omitempty"` +} + +func (m *QueryFullSpotOrderbookResponse) Reset() { *m = QueryFullSpotOrderbookResponse{} } +func (m *QueryFullSpotOrderbookResponse) String() string { return proto.CompactTextString(m) } +func (*QueryFullSpotOrderbookResponse) ProtoMessage() {} +func (*QueryFullSpotOrderbookResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_523db28b8af54781, []int{123} +} +func (m *QueryFullSpotOrderbookResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryFullSpotOrderbookResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryFullSpotOrderbookResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *QueryFullSpotOrderbookResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryFullSpotOrderbookResponse.Merge(m, src) +} +func (m *QueryFullSpotOrderbookResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryFullSpotOrderbookResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryFullSpotOrderbookResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_QueryFullSpotOrderbookResponse proto.InternalMessageInfo + +func (m *QueryFullSpotOrderbookResponse) GetBids() []*TrimmedLimitOrder { + if m != nil { + return m.Bids + } + return nil +} + +func (m *QueryFullSpotOrderbookResponse) GetAsks() []*TrimmedLimitOrder { + if m != nil { + return m.Asks + } + return nil +} + +type QueryFullDerivativeOrderbookRequest struct { + // market id + MarketId string `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` +} + +func (m *QueryFullDerivativeOrderbookRequest) Reset() { *m = QueryFullDerivativeOrderbookRequest{} } +func (m *QueryFullDerivativeOrderbookRequest) String() string { return proto.CompactTextString(m) } +func (*QueryFullDerivativeOrderbookRequest) ProtoMessage() {} +func (*QueryFullDerivativeOrderbookRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_523db28b8af54781, []int{124} +} +func (m *QueryFullDerivativeOrderbookRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryFullDerivativeOrderbookRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryFullDerivativeOrderbookRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *QueryFullDerivativeOrderbookRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryFullDerivativeOrderbookRequest.Merge(m, src) +} +func (m *QueryFullDerivativeOrderbookRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryFullDerivativeOrderbookRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryFullDerivativeOrderbookRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_QueryFullDerivativeOrderbookRequest proto.InternalMessageInfo + +func (m *QueryFullDerivativeOrderbookRequest) GetMarketId() string { + if m != nil { + return m.MarketId + } + return "" +} + +type QueryFullDerivativeOrderbookResponse struct { + Bids []*TrimmedLimitOrder `protobuf:"bytes,1,rep,name=Bids,proto3" json:"Bids,omitempty"` + Asks []*TrimmedLimitOrder `protobuf:"bytes,2,rep,name=Asks,proto3" json:"Asks,omitempty"` +} + +func (m *QueryFullDerivativeOrderbookResponse) Reset() { *m = QueryFullDerivativeOrderbookResponse{} } +func (m *QueryFullDerivativeOrderbookResponse) String() string { return proto.CompactTextString(m) } +func (*QueryFullDerivativeOrderbookResponse) ProtoMessage() {} +func (*QueryFullDerivativeOrderbookResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_523db28b8af54781, []int{125} +} +func (m *QueryFullDerivativeOrderbookResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryFullDerivativeOrderbookResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryFullDerivativeOrderbookResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *QueryFullDerivativeOrderbookResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryFullDerivativeOrderbookResponse.Merge(m, src) +} +func (m *QueryFullDerivativeOrderbookResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryFullDerivativeOrderbookResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryFullDerivativeOrderbookResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_QueryFullDerivativeOrderbookResponse proto.InternalMessageInfo + +func (m *QueryFullDerivativeOrderbookResponse) GetBids() []*TrimmedLimitOrder { + if m != nil { + return m.Bids + } + return nil +} + +func (m *QueryFullDerivativeOrderbookResponse) GetAsks() []*TrimmedLimitOrder { + if m != nil { + return m.Asks + } + return nil +} + +type TrimmedLimitOrder struct { + Price cosmossdk_io_math.LegacyDec `protobuf:"bytes,1,opt,name=price,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"price"` + // quantity of the order + Quantity cosmossdk_io_math.LegacyDec `protobuf:"bytes,2,opt,name=quantity,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"quantity"` + OrderHash string `protobuf:"bytes,3,opt,name=order_hash,json=orderHash,proto3" json:"order_hash,omitempty"` + SubaccountId string `protobuf:"bytes,4,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` +} + +func (m *TrimmedLimitOrder) Reset() { *m = TrimmedLimitOrder{} } +func (m *TrimmedLimitOrder) String() string { return proto.CompactTextString(m) } +func (*TrimmedLimitOrder) ProtoMessage() {} +func (*TrimmedLimitOrder) Descriptor() ([]byte, []int) { + return fileDescriptor_523db28b8af54781, []int{126} +} +func (m *TrimmedLimitOrder) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *TrimmedLimitOrder) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_TrimmedLimitOrder.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *TrimmedLimitOrder) XXX_Merge(src proto.Message) { + xxx_messageInfo_TrimmedLimitOrder.Merge(m, src) +} +func (m *TrimmedLimitOrder) XXX_Size() int { + return m.Size() +} +func (m *TrimmedLimitOrder) XXX_DiscardUnknown() { + xxx_messageInfo_TrimmedLimitOrder.DiscardUnknown(m) +} + +var xxx_messageInfo_TrimmedLimitOrder proto.InternalMessageInfo + +func (m *TrimmedLimitOrder) GetOrderHash() string { + if m != nil { + return m.OrderHash + } + return "" +} + +func (m *TrimmedLimitOrder) GetSubaccountId() string { + if m != nil { + return m.SubaccountId + } + return "" +} + type QueryMarketAtomicExecutionFeeMultiplierRequest struct { MarketId string `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` } @@ -6287,7 +6536,7 @@ func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) String() string { } func (*QueryMarketAtomicExecutionFeeMultiplierRequest) ProtoMessage() {} func (*QueryMarketAtomicExecutionFeeMultiplierRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_523db28b8af54781, []int{122} + return fileDescriptor_523db28b8af54781, []int{127} } func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6335,7 +6584,7 @@ func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) String() string { } func (*QueryMarketAtomicExecutionFeeMultiplierResponse) ProtoMessage() {} func (*QueryMarketAtomicExecutionFeeMultiplierResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_523db28b8af54781, []int{123} + return fileDescriptor_523db28b8af54781, []int{128} } func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6372,7 +6621,7 @@ func (m *QueryActiveStakeGrantRequest) Reset() { *m = QueryActiveStakeGr func (m *QueryActiveStakeGrantRequest) String() string { return proto.CompactTextString(m) } func (*QueryActiveStakeGrantRequest) ProtoMessage() {} func (*QueryActiveStakeGrantRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_523db28b8af54781, []int{124} + return fileDescriptor_523db28b8af54781, []int{129} } func (m *QueryActiveStakeGrantRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6417,7 +6666,7 @@ func (m *QueryActiveStakeGrantResponse) Reset() { *m = QueryActiveStakeG func (m *QueryActiveStakeGrantResponse) String() string { return proto.CompactTextString(m) } func (*QueryActiveStakeGrantResponse) ProtoMessage() {} func (*QueryActiveStakeGrantResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_523db28b8af54781, []int{125} + return fileDescriptor_523db28b8af54781, []int{130} } func (m *QueryActiveStakeGrantResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6469,7 +6718,7 @@ func (m *QueryGrantAuthorizationRequest) Reset() { *m = QueryGrantAuthor func (m *QueryGrantAuthorizationRequest) String() string { return proto.CompactTextString(m) } func (*QueryGrantAuthorizationRequest) ProtoMessage() {} func (*QueryGrantAuthorizationRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_523db28b8af54781, []int{126} + return fileDescriptor_523db28b8af54781, []int{131} } func (m *QueryGrantAuthorizationRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6520,7 +6769,7 @@ func (m *QueryGrantAuthorizationResponse) Reset() { *m = QueryGrantAutho func (m *QueryGrantAuthorizationResponse) String() string { return proto.CompactTextString(m) } func (*QueryGrantAuthorizationResponse) ProtoMessage() {} func (*QueryGrantAuthorizationResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_523db28b8af54781, []int{127} + return fileDescriptor_523db28b8af54781, []int{132} } func (m *QueryGrantAuthorizationResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6557,7 +6806,7 @@ func (m *QueryGrantAuthorizationsRequest) Reset() { *m = QueryGrantAutho func (m *QueryGrantAuthorizationsRequest) String() string { return proto.CompactTextString(m) } func (*QueryGrantAuthorizationsRequest) ProtoMessage() {} func (*QueryGrantAuthorizationsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_523db28b8af54781, []int{128} + return fileDescriptor_523db28b8af54781, []int{133} } func (m *QueryGrantAuthorizationsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6602,7 +6851,7 @@ func (m *QueryGrantAuthorizationsResponse) Reset() { *m = QueryGrantAuth func (m *QueryGrantAuthorizationsResponse) String() string { return proto.CompactTextString(m) } func (*QueryGrantAuthorizationsResponse) ProtoMessage() {} func (*QueryGrantAuthorizationsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_523db28b8af54781, []int{129} + return fileDescriptor_523db28b8af54781, []int{134} } func (m *QueryGrantAuthorizationsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6638,3826 +6887,4861 @@ func (m *QueryGrantAuthorizationsResponse) GetGrants() []*GrantAuthorization { return nil } -func init() { - proto.RegisterEnum("injective.exchange.v1beta1.OrderSide", OrderSide_name, OrderSide_value) - proto.RegisterEnum("injective.exchange.v1beta1.CancellationStrategy", CancellationStrategy_name, CancellationStrategy_value) - proto.RegisterType((*Subaccount)(nil), "injective.exchange.v1beta1.Subaccount") - proto.RegisterType((*QuerySubaccountOrdersRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountOrdersRequest") - proto.RegisterType((*QuerySubaccountOrdersResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountOrdersResponse") - proto.RegisterType((*SubaccountOrderbookMetadataWithMarket)(nil), "injective.exchange.v1beta1.SubaccountOrderbookMetadataWithMarket") - proto.RegisterType((*QueryExchangeParamsRequest)(nil), "injective.exchange.v1beta1.QueryExchangeParamsRequest") - proto.RegisterType((*QueryExchangeParamsResponse)(nil), "injective.exchange.v1beta1.QueryExchangeParamsResponse") - proto.RegisterType((*QuerySubaccountDepositsRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountDepositsRequest") - proto.RegisterType((*QuerySubaccountDepositsResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountDepositsResponse") - proto.RegisterMapType((map[string]*Deposit)(nil), "injective.exchange.v1beta1.QuerySubaccountDepositsResponse.DepositsEntry") - proto.RegisterType((*QueryExchangeBalancesRequest)(nil), "injective.exchange.v1beta1.QueryExchangeBalancesRequest") - proto.RegisterType((*QueryExchangeBalancesResponse)(nil), "injective.exchange.v1beta1.QueryExchangeBalancesResponse") - proto.RegisterType((*QueryAggregateVolumeRequest)(nil), "injective.exchange.v1beta1.QueryAggregateVolumeRequest") - proto.RegisterType((*QueryAggregateVolumeResponse)(nil), "injective.exchange.v1beta1.QueryAggregateVolumeResponse") - proto.RegisterType((*QueryAggregateVolumesRequest)(nil), "injective.exchange.v1beta1.QueryAggregateVolumesRequest") - proto.RegisterType((*QueryAggregateVolumesResponse)(nil), "injective.exchange.v1beta1.QueryAggregateVolumesResponse") - proto.RegisterType((*QueryAggregateMarketVolumeRequest)(nil), "injective.exchange.v1beta1.QueryAggregateMarketVolumeRequest") - proto.RegisterType((*QueryAggregateMarketVolumeResponse)(nil), "injective.exchange.v1beta1.QueryAggregateMarketVolumeResponse") - proto.RegisterType((*QueryDenomDecimalRequest)(nil), "injective.exchange.v1beta1.QueryDenomDecimalRequest") - proto.RegisterType((*QueryDenomDecimalResponse)(nil), "injective.exchange.v1beta1.QueryDenomDecimalResponse") - proto.RegisterType((*QueryDenomDecimalsRequest)(nil), "injective.exchange.v1beta1.QueryDenomDecimalsRequest") - proto.RegisterType((*QueryDenomDecimalsResponse)(nil), "injective.exchange.v1beta1.QueryDenomDecimalsResponse") - proto.RegisterType((*QueryAggregateMarketVolumesRequest)(nil), "injective.exchange.v1beta1.QueryAggregateMarketVolumesRequest") - proto.RegisterType((*QueryAggregateMarketVolumesResponse)(nil), "injective.exchange.v1beta1.QueryAggregateMarketVolumesResponse") - proto.RegisterType((*QuerySubaccountDepositRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountDepositRequest") - proto.RegisterType((*QuerySubaccountDepositResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountDepositResponse") - proto.RegisterType((*QuerySpotMarketsRequest)(nil), "injective.exchange.v1beta1.QuerySpotMarketsRequest") - proto.RegisterType((*QuerySpotMarketsResponse)(nil), "injective.exchange.v1beta1.QuerySpotMarketsResponse") - proto.RegisterType((*QuerySpotMarketRequest)(nil), "injective.exchange.v1beta1.QuerySpotMarketRequest") - proto.RegisterType((*QuerySpotMarketResponse)(nil), "injective.exchange.v1beta1.QuerySpotMarketResponse") - proto.RegisterType((*QuerySpotOrderbookRequest)(nil), "injective.exchange.v1beta1.QuerySpotOrderbookRequest") - proto.RegisterType((*QuerySpotOrderbookResponse)(nil), "injective.exchange.v1beta1.QuerySpotOrderbookResponse") - proto.RegisterType((*FullSpotMarket)(nil), "injective.exchange.v1beta1.FullSpotMarket") - proto.RegisterType((*QueryFullSpotMarketsRequest)(nil), "injective.exchange.v1beta1.QueryFullSpotMarketsRequest") - proto.RegisterType((*QueryFullSpotMarketsResponse)(nil), "injective.exchange.v1beta1.QueryFullSpotMarketsResponse") - proto.RegisterType((*QueryFullSpotMarketRequest)(nil), "injective.exchange.v1beta1.QueryFullSpotMarketRequest") - proto.RegisterType((*QueryFullSpotMarketResponse)(nil), "injective.exchange.v1beta1.QueryFullSpotMarketResponse") - proto.RegisterType((*QuerySpotOrdersByHashesRequest)(nil), "injective.exchange.v1beta1.QuerySpotOrdersByHashesRequest") - proto.RegisterType((*QuerySpotOrdersByHashesResponse)(nil), "injective.exchange.v1beta1.QuerySpotOrdersByHashesResponse") - proto.RegisterType((*QueryTraderSpotOrdersRequest)(nil), "injective.exchange.v1beta1.QueryTraderSpotOrdersRequest") - proto.RegisterType((*QueryAccountAddressSpotOrdersRequest)(nil), "injective.exchange.v1beta1.QueryAccountAddressSpotOrdersRequest") - proto.RegisterType((*TrimmedSpotLimitOrder)(nil), "injective.exchange.v1beta1.TrimmedSpotLimitOrder") - proto.RegisterType((*QueryTraderSpotOrdersResponse)(nil), "injective.exchange.v1beta1.QueryTraderSpotOrdersResponse") - proto.RegisterType((*QueryAccountAddressSpotOrdersResponse)(nil), "injective.exchange.v1beta1.QueryAccountAddressSpotOrdersResponse") - proto.RegisterType((*QuerySpotMidPriceAndTOBRequest)(nil), "injective.exchange.v1beta1.QuerySpotMidPriceAndTOBRequest") - proto.RegisterType((*QuerySpotMidPriceAndTOBResponse)(nil), "injective.exchange.v1beta1.QuerySpotMidPriceAndTOBResponse") - proto.RegisterType((*QueryDerivativeMidPriceAndTOBRequest)(nil), "injective.exchange.v1beta1.QueryDerivativeMidPriceAndTOBRequest") - proto.RegisterType((*QueryDerivativeMidPriceAndTOBResponse)(nil), "injective.exchange.v1beta1.QueryDerivativeMidPriceAndTOBResponse") - proto.RegisterType((*QueryDerivativeOrderbookRequest)(nil), "injective.exchange.v1beta1.QueryDerivativeOrderbookRequest") - proto.RegisterType((*QueryDerivativeOrderbookResponse)(nil), "injective.exchange.v1beta1.QueryDerivativeOrderbookResponse") - proto.RegisterType((*QueryTraderSpotOrdersToCancelUpToAmountRequest)(nil), "injective.exchange.v1beta1.QueryTraderSpotOrdersToCancelUpToAmountRequest") - proto.RegisterType((*QueryTraderDerivativeOrdersToCancelUpToAmountRequest)(nil), "injective.exchange.v1beta1.QueryTraderDerivativeOrdersToCancelUpToAmountRequest") - proto.RegisterType((*QueryTraderDerivativeOrdersRequest)(nil), "injective.exchange.v1beta1.QueryTraderDerivativeOrdersRequest") - proto.RegisterType((*QueryAccountAddressDerivativeOrdersRequest)(nil), "injective.exchange.v1beta1.QueryAccountAddressDerivativeOrdersRequest") - proto.RegisterType((*TrimmedDerivativeLimitOrder)(nil), "injective.exchange.v1beta1.TrimmedDerivativeLimitOrder") - proto.RegisterType((*QueryTraderDerivativeOrdersResponse)(nil), "injective.exchange.v1beta1.QueryTraderDerivativeOrdersResponse") - proto.RegisterType((*QueryAccountAddressDerivativeOrdersResponse)(nil), "injective.exchange.v1beta1.QueryAccountAddressDerivativeOrdersResponse") - proto.RegisterType((*QueryDerivativeOrdersByHashesRequest)(nil), "injective.exchange.v1beta1.QueryDerivativeOrdersByHashesRequest") - proto.RegisterType((*QueryDerivativeOrdersByHashesResponse)(nil), "injective.exchange.v1beta1.QueryDerivativeOrdersByHashesResponse") - proto.RegisterType((*QueryDerivativeMarketsRequest)(nil), "injective.exchange.v1beta1.QueryDerivativeMarketsRequest") - proto.RegisterType((*PriceLevel)(nil), "injective.exchange.v1beta1.PriceLevel") - proto.RegisterType((*PerpetualMarketState)(nil), "injective.exchange.v1beta1.PerpetualMarketState") - proto.RegisterType((*FullDerivativeMarket)(nil), "injective.exchange.v1beta1.FullDerivativeMarket") - proto.RegisterType((*QueryDerivativeMarketsResponse)(nil), "injective.exchange.v1beta1.QueryDerivativeMarketsResponse") - proto.RegisterType((*QueryDerivativeMarketRequest)(nil), "injective.exchange.v1beta1.QueryDerivativeMarketRequest") - proto.RegisterType((*QueryDerivativeMarketResponse)(nil), "injective.exchange.v1beta1.QueryDerivativeMarketResponse") - proto.RegisterType((*QueryDerivativeMarketAddressRequest)(nil), "injective.exchange.v1beta1.QueryDerivativeMarketAddressRequest") - proto.RegisterType((*QueryDerivativeMarketAddressResponse)(nil), "injective.exchange.v1beta1.QueryDerivativeMarketAddressResponse") - proto.RegisterType((*QuerySubaccountTradeNonceRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountTradeNonceRequest") - proto.RegisterType((*QuerySubaccountPositionsRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountPositionsRequest") - proto.RegisterType((*QuerySubaccountPositionInMarketRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountPositionInMarketRequest") - proto.RegisterType((*QuerySubaccountEffectivePositionInMarketRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountEffectivePositionInMarketRequest") - proto.RegisterType((*QuerySubaccountOrderMetadataRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountOrderMetadataRequest") - proto.RegisterType((*QuerySubaccountPositionsResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountPositionsResponse") - proto.RegisterType((*QuerySubaccountPositionInMarketResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountPositionInMarketResponse") - proto.RegisterType((*EffectivePosition)(nil), "injective.exchange.v1beta1.EffectivePosition") - proto.RegisterType((*QuerySubaccountEffectivePositionInMarketResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountEffectivePositionInMarketResponse") - proto.RegisterType((*QueryPerpetualMarketInfoRequest)(nil), "injective.exchange.v1beta1.QueryPerpetualMarketInfoRequest") - proto.RegisterType((*QueryPerpetualMarketInfoResponse)(nil), "injective.exchange.v1beta1.QueryPerpetualMarketInfoResponse") - proto.RegisterType((*QueryExpiryFuturesMarketInfoRequest)(nil), "injective.exchange.v1beta1.QueryExpiryFuturesMarketInfoRequest") - proto.RegisterType((*QueryExpiryFuturesMarketInfoResponse)(nil), "injective.exchange.v1beta1.QueryExpiryFuturesMarketInfoResponse") - proto.RegisterType((*QueryPerpetualMarketFundingRequest)(nil), "injective.exchange.v1beta1.QueryPerpetualMarketFundingRequest") - proto.RegisterType((*QueryPerpetualMarketFundingResponse)(nil), "injective.exchange.v1beta1.QueryPerpetualMarketFundingResponse") - proto.RegisterType((*QuerySubaccountOrderMetadataResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountOrderMetadataResponse") - proto.RegisterType((*QuerySubaccountTradeNonceResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountTradeNonceResponse") - proto.RegisterType((*QueryModuleStateRequest)(nil), "injective.exchange.v1beta1.QueryModuleStateRequest") - proto.RegisterType((*QueryModuleStateResponse)(nil), "injective.exchange.v1beta1.QueryModuleStateResponse") - proto.RegisterType((*QueryPositionsRequest)(nil), "injective.exchange.v1beta1.QueryPositionsRequest") - proto.RegisterType((*QueryPositionsResponse)(nil), "injective.exchange.v1beta1.QueryPositionsResponse") - proto.RegisterType((*QueryTradeRewardPointsRequest)(nil), "injective.exchange.v1beta1.QueryTradeRewardPointsRequest") - proto.RegisterType((*QueryTradeRewardPointsResponse)(nil), "injective.exchange.v1beta1.QueryTradeRewardPointsResponse") - proto.RegisterType((*QueryTradeRewardCampaignRequest)(nil), "injective.exchange.v1beta1.QueryTradeRewardCampaignRequest") - proto.RegisterType((*QueryTradeRewardCampaignResponse)(nil), "injective.exchange.v1beta1.QueryTradeRewardCampaignResponse") - proto.RegisterType((*QueryIsOptedOutOfRewardsRequest)(nil), "injective.exchange.v1beta1.QueryIsOptedOutOfRewardsRequest") - proto.RegisterType((*QueryIsOptedOutOfRewardsResponse)(nil), "injective.exchange.v1beta1.QueryIsOptedOutOfRewardsResponse") - proto.RegisterType((*QueryOptedOutOfRewardsAccountsRequest)(nil), "injective.exchange.v1beta1.QueryOptedOutOfRewardsAccountsRequest") - proto.RegisterType((*QueryOptedOutOfRewardsAccountsResponse)(nil), "injective.exchange.v1beta1.QueryOptedOutOfRewardsAccountsResponse") - proto.RegisterType((*QueryFeeDiscountAccountInfoRequest)(nil), "injective.exchange.v1beta1.QueryFeeDiscountAccountInfoRequest") - proto.RegisterType((*QueryFeeDiscountAccountInfoResponse)(nil), "injective.exchange.v1beta1.QueryFeeDiscountAccountInfoResponse") - proto.RegisterType((*QueryFeeDiscountScheduleRequest)(nil), "injective.exchange.v1beta1.QueryFeeDiscountScheduleRequest") - proto.RegisterType((*QueryFeeDiscountScheduleResponse)(nil), "injective.exchange.v1beta1.QueryFeeDiscountScheduleResponse") - proto.RegisterType((*QueryBalanceMismatchesRequest)(nil), "injective.exchange.v1beta1.QueryBalanceMismatchesRequest") - proto.RegisterType((*BalanceMismatch)(nil), "injective.exchange.v1beta1.BalanceMismatch") - proto.RegisterType((*QueryBalanceMismatchesResponse)(nil), "injective.exchange.v1beta1.QueryBalanceMismatchesResponse") - proto.RegisterType((*QueryBalanceWithBalanceHoldsRequest)(nil), "injective.exchange.v1beta1.QueryBalanceWithBalanceHoldsRequest") - proto.RegisterType((*BalanceWithMarginHold)(nil), "injective.exchange.v1beta1.BalanceWithMarginHold") - proto.RegisterType((*QueryBalanceWithBalanceHoldsResponse)(nil), "injective.exchange.v1beta1.QueryBalanceWithBalanceHoldsResponse") - proto.RegisterType((*QueryFeeDiscountTierStatisticsRequest)(nil), "injective.exchange.v1beta1.QueryFeeDiscountTierStatisticsRequest") - proto.RegisterType((*TierStatistic)(nil), "injective.exchange.v1beta1.TierStatistic") - proto.RegisterType((*QueryFeeDiscountTierStatisticsResponse)(nil), "injective.exchange.v1beta1.QueryFeeDiscountTierStatisticsResponse") - proto.RegisterType((*MitoVaultInfosRequest)(nil), "injective.exchange.v1beta1.MitoVaultInfosRequest") - proto.RegisterType((*MitoVaultInfosResponse)(nil), "injective.exchange.v1beta1.MitoVaultInfosResponse") - proto.RegisterType((*QueryMarketIDFromVaultRequest)(nil), "injective.exchange.v1beta1.QueryMarketIDFromVaultRequest") - proto.RegisterType((*QueryMarketIDFromVaultResponse)(nil), "injective.exchange.v1beta1.QueryMarketIDFromVaultResponse") - proto.RegisterType((*QueryHistoricalTradeRecordsRequest)(nil), "injective.exchange.v1beta1.QueryHistoricalTradeRecordsRequest") - proto.RegisterType((*QueryHistoricalTradeRecordsResponse)(nil), "injective.exchange.v1beta1.QueryHistoricalTradeRecordsResponse") - proto.RegisterType((*TradeHistoryOptions)(nil), "injective.exchange.v1beta1.TradeHistoryOptions") - proto.RegisterType((*QueryMarketVolatilityRequest)(nil), "injective.exchange.v1beta1.QueryMarketVolatilityRequest") - proto.RegisterType((*QueryMarketVolatilityResponse)(nil), "injective.exchange.v1beta1.QueryMarketVolatilityResponse") - proto.RegisterType((*QueryBinaryMarketsRequest)(nil), "injective.exchange.v1beta1.QueryBinaryMarketsRequest") - proto.RegisterType((*QueryBinaryMarketsResponse)(nil), "injective.exchange.v1beta1.QueryBinaryMarketsResponse") - proto.RegisterType((*QueryTraderDerivativeConditionalOrdersRequest)(nil), "injective.exchange.v1beta1.QueryTraderDerivativeConditionalOrdersRequest") - proto.RegisterType((*TrimmedDerivativeConditionalOrder)(nil), "injective.exchange.v1beta1.TrimmedDerivativeConditionalOrder") - proto.RegisterType((*QueryTraderDerivativeConditionalOrdersResponse)(nil), "injective.exchange.v1beta1.QueryTraderDerivativeConditionalOrdersResponse") - proto.RegisterType((*QueryMarketAtomicExecutionFeeMultiplierRequest)(nil), "injective.exchange.v1beta1.QueryMarketAtomicExecutionFeeMultiplierRequest") - proto.RegisterType((*QueryMarketAtomicExecutionFeeMultiplierResponse)(nil), "injective.exchange.v1beta1.QueryMarketAtomicExecutionFeeMultiplierResponse") - proto.RegisterType((*QueryActiveStakeGrantRequest)(nil), "injective.exchange.v1beta1.QueryActiveStakeGrantRequest") - proto.RegisterType((*QueryActiveStakeGrantResponse)(nil), "injective.exchange.v1beta1.QueryActiveStakeGrantResponse") - proto.RegisterType((*QueryGrantAuthorizationRequest)(nil), "injective.exchange.v1beta1.QueryGrantAuthorizationRequest") - proto.RegisterType((*QueryGrantAuthorizationResponse)(nil), "injective.exchange.v1beta1.QueryGrantAuthorizationResponse") - proto.RegisterType((*QueryGrantAuthorizationsRequest)(nil), "injective.exchange.v1beta1.QueryGrantAuthorizationsRequest") - proto.RegisterType((*QueryGrantAuthorizationsResponse)(nil), "injective.exchange.v1beta1.QueryGrantAuthorizationsResponse") +type QueryMarketBalanceRequest struct { + // market id + MarketId string `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` } -func init() { - proto.RegisterFile("injective/exchange/v1beta1/query.proto", fileDescriptor_523db28b8af54781) +func (m *QueryMarketBalanceRequest) Reset() { *m = QueryMarketBalanceRequest{} } +func (m *QueryMarketBalanceRequest) String() string { return proto.CompactTextString(m) } +func (*QueryMarketBalanceRequest) ProtoMessage() {} +func (*QueryMarketBalanceRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_523db28b8af54781, []int{135} } - -var fileDescriptor_523db28b8af54781 = []byte{ - // 5833 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5d, 0x7d, 0x8c, 0x1c, 0xc9, - 0x55, 0x77, 0xcf, 0x7e, 0x78, 0xf7, 0xed, 0xa7, 0x6b, 0xd7, 0xeb, 0xf5, 0xdc, 0x9d, 0x3f, 0xda, - 0x71, 0xce, 0xe7, 0x9c, 0x77, 0xed, 0xf5, 0xf7, 0xb7, 0xf7, 0xc3, 0x6b, 0xef, 0xd9, 0x6b, 0x3b, - 0xb3, 0xeb, 0xbb, 0xe4, 0x02, 0x4c, 0x7a, 0x67, 0x6a, 0x67, 0x3b, 0xee, 0x99, 0x1e, 0x4f, 0xf7, - 0xec, 0x79, 0x31, 0x46, 0x40, 0x40, 0x89, 0x40, 0x02, 0xa4, 0x08, 0x10, 0x02, 0x21, 0xe0, 0x4f, - 0xa4, 0x08, 0x89, 0x08, 0x81, 0x12, 0x29, 0x51, 0x08, 0x42, 0x21, 0xe1, 0x23, 0x40, 0x08, 0x28, - 0x82, 0x23, 0xba, 0x0b, 0x44, 0x39, 0x81, 0xc4, 0x5f, 0x48, 0x08, 0x14, 0x50, 0x57, 0xbd, 0xaa, - 0xe9, 0xef, 0xa9, 0x9e, 0xdd, 0xd3, 0x25, 0xf0, 0xd7, 0x4e, 0x57, 0xd7, 0x7b, 0xf5, 0xde, 0xab, - 0x57, 0xaf, 0x5e, 0x7d, 0xfc, 0x7a, 0xe1, 0xfd, 0x66, 0xed, 0x63, 0xb4, 0xe4, 0x9a, 0x9b, 0x74, - 0x9a, 0x3e, 0x29, 0x6d, 0x18, 0xb5, 0x0a, 0x9d, 0xde, 0x3c, 0xb5, 0x46, 0x5d, 0xe3, 0xd4, 0xf4, - 0xe3, 0x26, 0x6d, 0x6c, 0x4d, 0xd5, 0x1b, 0xb6, 0x6b, 0x93, 0xbc, 0xac, 0x37, 0x25, 0xea, 0x4d, - 0x61, 0xbd, 0xfc, 0xf3, 0x15, 0xdb, 0xae, 0x58, 0x74, 0xda, 0xa8, 0x9b, 0xd3, 0x46, 0xad, 0x66, - 0xbb, 0x86, 0x6b, 0xda, 0x35, 0x87, 0x53, 0xe6, 0x5f, 0x4a, 0x69, 0x41, 0xb2, 0xe2, 0x55, 0x8f, - 0xa5, 0x54, 0xad, 0xd0, 0x1a, 0x75, 0x4c, 0xc1, 0xf4, 0x68, 0xab, 0xa6, 0xdd, 0x30, 0x4a, 0x56, - 0xab, 0x1e, 0x7f, 0xc4, 0x6a, 0xe3, 0x15, 0xbb, 0x62, 0xb3, 0x9f, 0xd3, 0xde, 0x2f, 0x5e, 0xaa, - 0xdf, 0x07, 0x58, 0x69, 0xae, 0x19, 0xa5, 0x92, 0xdd, 0xac, 0xb9, 0x64, 0x02, 0x7a, 0xdd, 0x86, - 0x51, 0xa6, 0x8d, 0x49, 0xed, 0x90, 0x76, 0xac, 0xbf, 0x80, 0x4f, 0xe4, 0x25, 0x18, 0x75, 0x64, - 0xad, 0x62, 0xcd, 0xae, 0x95, 0xe8, 0x64, 0xee, 0x90, 0x76, 0x6c, 0xa8, 0x30, 0xd2, 0x2a, 0xbf, - 0xe7, 0x15, 0xeb, 0x1f, 0x85, 0xe7, 0x3f, 0xe8, 0xd9, 0xaa, 0xc5, 0xf5, 0x7e, 0xa3, 0x4c, 0x1b, - 0x4e, 0x81, 0x3e, 0x6e, 0x52, 0xc7, 0x25, 0x47, 0x60, 0xc8, 0xc7, 0xca, 0x2c, 0x63, 0x4b, 0x83, - 0xad, 0xc2, 0xa5, 0x32, 0x79, 0x0e, 0xfa, 0xab, 0x46, 0xe3, 0x11, 0x65, 0x15, 0x72, 0xac, 0x42, - 0x1f, 0x2f, 0x58, 0x2a, 0xeb, 0x5f, 0xd4, 0xe0, 0x85, 0x84, 0x26, 0x9c, 0xba, 0x5d, 0x73, 0x28, - 0xb9, 0x07, 0xb0, 0xd6, 0xdc, 0x2a, 0xda, 0xac, 0x74, 0x52, 0x3b, 0xd4, 0x75, 0x6c, 0x60, 0x66, - 0x7a, 0x2a, 0xb9, 0xd7, 0xa6, 0x42, 0x9c, 0x16, 0x0c, 0xd7, 0x28, 0xf4, 0xaf, 0x35, 0xb7, 0x38, - 0x5f, 0xf2, 0x00, 0x06, 0x1c, 0x6a, 0x59, 0x82, 0x61, 0xae, 0x33, 0x86, 0xe0, 0xf1, 0xe0, 0x1c, - 0xf5, 0xdf, 0xd5, 0xe0, 0x68, 0xa8, 0xce, 0x9a, 0x6d, 0x3f, 0x5a, 0xa6, 0xae, 0x51, 0x36, 0x5c, - 0xe3, 0x35, 0xd3, 0xdd, 0x58, 0x66, 0xfa, 0x92, 0x15, 0xe8, 0xab, 0x62, 0x29, 0x33, 0xd5, 0xc0, - 0xcc, 0xf9, 0x0c, 0x0d, 0xfb, 0x99, 0x16, 0x24, 0xa3, 0x54, 0xfb, 0x92, 0x71, 0xe8, 0x31, 0x9d, - 0xb9, 0xe6, 0xd6, 0x64, 0xd7, 0x21, 0xed, 0x58, 0x5f, 0x81, 0x3f, 0xe8, 0xcf, 0x43, 0x9e, 0x19, - 0xfd, 0x26, 0xb6, 0xf8, 0xc0, 0x68, 0x18, 0x55, 0xd1, 0xab, 0x7a, 0x11, 0x9e, 0x8b, 0x7d, 0x8b, - 0x1d, 0x72, 0x03, 0x7a, 0xeb, 0xac, 0x04, 0x55, 0xd0, 0xd3, 0x54, 0xe0, 0xb4, 0x73, 0xdd, 0x5f, - 0x7e, 0xf3, 0xe0, 0xae, 0x02, 0xd2, 0xe9, 0x9f, 0xd2, 0xe0, 0x40, 0xa8, 0xd3, 0x17, 0x68, 0xdd, - 0x76, 0x4c, 0x37, 0x9b, 0x67, 0xdd, 0x05, 0x68, 0x3d, 0x33, 0xd5, 0x07, 0x66, 0xde, 0xaf, 0x66, - 0x50, 0x26, 0x91, 0x56, 0xf0, 0xd1, 0xeb, 0xef, 0x68, 0x70, 0x30, 0x51, 0x2a, 0xd4, 0x9d, 0x42, - 0x5f, 0x19, 0xcb, 0xd0, 0x15, 0x97, 0xd2, 0xda, 0x6b, 0xc3, 0x6e, 0x4a, 0x14, 0xdc, 0xac, 0xb9, - 0x8d, 0xad, 0x82, 0x64, 0x9d, 0xff, 0x28, 0x0c, 0x05, 0x5e, 0x91, 0x51, 0xe8, 0x7a, 0x44, 0xb7, - 0xd0, 0x08, 0xde, 0x4f, 0x72, 0x11, 0x7a, 0x36, 0x0d, 0xab, 0x49, 0x51, 0xed, 0x23, 0x69, 0x62, - 0x20, 0xaf, 0x02, 0xa7, 0xb8, 0x94, 0xbb, 0xa0, 0xe9, 0x07, 0x70, 0x64, 0x8b, 0x3e, 0x9e, 0x33, - 0x2c, 0xa3, 0x56, 0xa2, 0xd2, 0x07, 0xd6, 0x71, 0x58, 0x46, 0xdf, 0xa3, 0x25, 0x6e, 0x42, 0xdf, - 0x1a, 0x96, 0xa1, 0x25, 0x52, 0x45, 0x40, 0x7a, 0x74, 0x04, 0x49, 0xaa, 0x9f, 0x47, 0x5f, 0x9b, - 0xad, 0x54, 0x1a, 0xb4, 0x62, 0xb8, 0xf4, 0x55, 0xdb, 0x6a, 0x56, 0xa9, 0x70, 0x83, 0x49, 0xd8, - 0x2d, 0xba, 0x97, 0xeb, 0x2e, 0x1e, 0xf5, 0x26, 0x2a, 0x10, 0x21, 0x44, 0xf9, 0x1e, 0xc2, 0x1e, - 0x43, 0xbc, 0x2a, 0x6e, 0xb2, 0x77, 0x42, 0xd0, 0x63, 0x69, 0x82, 0xf2, 0x91, 0x8a, 0xcc, 0x46, - 0x8d, 0x20, 0x77, 0x47, 0xff, 0x70, 0x7c, 0xb3, 0xd2, 0x6f, 0xf3, 0xd0, 0x87, 0x12, 0xf2, 0xd6, - 0xfa, 0x0b, 0xf2, 0x99, 0xbc, 0x00, 0x20, 0x07, 0x2a, 0x0f, 0x3c, 0xfd, 0x85, 0x7e, 0x31, 0x52, - 0x1d, 0xfd, 0x3f, 0x45, 0x28, 0x8c, 0xf2, 0x46, 0x9d, 0x5c, 0xd8, 0xdf, 0xd2, 0x49, 0x8c, 0x8d, - 0xa0, 0x6e, 0x17, 0xd2, 0x74, 0x93, 0x8c, 0x67, 0x39, 0xad, 0x30, 0x59, 0xc9, 0x6e, 0x94, 0x0b, - 0xfb, 0x8c, 0xd8, 0xb7, 0x0e, 0x59, 0x83, 0xc9, 0x56, 0xab, 0xa8, 0x80, 0x68, 0x34, 0x97, 0xd1, - 0xa0, 0x13, 0x92, 0x93, 0xbf, 0xd8, 0xd1, 0x6f, 0xc0, 0xe1, 0xa0, 0xea, 0x01, 0x2a, 0xb4, 0x6d, - 0x20, 0xd0, 0x69, 0xa1, 0x89, 0xc4, 0x02, 0x3d, 0x8d, 0x03, 0x5a, 0x70, 0x11, 0x7a, 0xb9, 0xe8, - 0x18, 0xbb, 0x52, 0x25, 0xf7, 0x9b, 0x47, 0x44, 0x30, 0x4e, 0xad, 0x9f, 0x84, 0x49, 0xd6, 0xda, - 0x02, 0xad, 0xd9, 0xd5, 0x05, 0x5a, 0x32, 0xab, 0x86, 0x25, 0xc4, 0x1c, 0x87, 0x9e, 0xb2, 0x57, - 0x8c, 0x22, 0xf2, 0x07, 0xfd, 0x2c, 0xec, 0x8f, 0xa1, 0x40, 0xb1, 0x26, 0x61, 0x77, 0x99, 0x17, - 0x31, 0xa2, 0xee, 0x82, 0x78, 0xd4, 0x4f, 0xc7, 0x90, 0x49, 0x67, 0x9b, 0x80, 0x5e, 0xc6, 0x5c, - 0xb8, 0x1a, 0x3e, 0xe9, 0x2e, 0x86, 0xf7, 0x10, 0x11, 0x36, 0xf6, 0x2a, 0x0c, 0xb3, 0x7a, 0x45, - 0x6c, 0x43, 0xb8, 0xce, 0x4b, 0xe9, 0x21, 0xc4, 0xc7, 0x0a, 0x8d, 0x31, 0x54, 0xf6, 0x17, 0xea, - 0xf3, 0x69, 0x3d, 0x20, 0x65, 0x0e, 0x0e, 0x02, 0x2d, 0x3c, 0x08, 0x4c, 0x38, 0x92, 0xca, 0x04, - 0x75, 0x98, 0x83, 0xdd, 0x9d, 0x8e, 0x69, 0x41, 0xa8, 0xbf, 0x1e, 0xc9, 0x3c, 0x44, 0x9c, 0xcc, - 0x32, 0x07, 0xc9, 0xde, 0xce, 0xf9, 0x7b, 0xdb, 0x48, 0x9a, 0xe0, 0xa4, 0x06, 0xd7, 0x03, 0x33, - 0x89, 0x72, 0x08, 0x97, 0x44, 0xfa, 0x03, 0xd8, 0xc7, 0x9b, 0xa8, 0xdb, 0x2e, 0x57, 0xd0, 0xef, - 0x17, 0x8e, 0x6b, 0xb8, 0x4d, 0x47, 0x64, 0x7e, 0xfc, 0xa9, 0x5d, 0x00, 0xfa, 0x21, 0x74, 0xea, - 0x00, 0x47, 0x39, 0xe9, 0xef, 0xe6, 0x15, 0x85, 0xc1, 0xd3, 0xe7, 0x59, 0xc9, 0xa1, 0x20, 0xc8, - 0xf4, 0xb3, 0x30, 0x11, 0xe2, 0xae, 0x34, 0xae, 0x3f, 0x1c, 0x51, 0x53, 0xca, 0x74, 0x0d, 0x7a, - 0x79, 0x35, 0x34, 0xa0, 0xaa, 0x48, 0x48, 0xa5, 0x7f, 0x23, 0x87, 0x83, 0xcb, 0x7b, 0x27, 0x33, - 0x2c, 0x15, 0xa9, 0xbc, 0x5e, 0xb7, 0xcc, 0xaa, 0xc9, 0x93, 0x8e, 0xee, 0x02, 0x7f, 0x20, 0x0b, - 0x00, 0x2c, 0xab, 0x2c, 0x3a, 0x66, 0x99, 0xb2, 0x8c, 0x6b, 0x78, 0xe6, 0x68, 0x9a, 0x50, 0xac, - 0xd1, 0x15, 0xb3, 0x4c, 0x0b, 0xfd, 0xb6, 0xf8, 0x49, 0x8a, 0xb0, 0x9f, 0xb1, 0x2b, 0x96, 0x9a, - 0xd5, 0xa6, 0x65, 0x78, 0x94, 0xc5, 0x9a, 0xed, 0xad, 0x3c, 0x0c, 0x6b, 0xb2, 0xdb, 0x13, 0x64, - 0xee, 0x88, 0x97, 0xbc, 0x7c, 0xf3, 0xcd, 0x83, 0xcf, 0x95, 0x6c, 0xa7, 0x6a, 0x3b, 0x4e, 0xf9, - 0xd1, 0x94, 0x69, 0x4f, 0x57, 0x0d, 0x77, 0x63, 0xea, 0x2e, 0xad, 0x18, 0xa5, 0xad, 0x05, 0x5a, - 0x2a, 0xec, 0x63, 0x5c, 0xe6, 0x25, 0x93, 0x7b, 0xc8, 0x23, 0xb6, 0x81, 0xc7, 0x4d, 0xa3, 0xe6, - 0x9a, 0xee, 0xd6, 0x64, 0x4f, 0xe7, 0x0d, 0x7c, 0x10, 0x79, 0xe8, 0x7f, 0xa8, 0x61, 0x00, 0x0a, - 0x19, 0x16, 0xfb, 0xed, 0x0e, 0x8c, 0xae, 0x35, 0xb7, 0x9c, 0x62, 0xbd, 0x61, 0x96, 0x68, 0xd1, - 0xa2, 0x9b, 0xd4, 0x42, 0xa7, 0x3a, 0x9c, 0x66, 0xac, 0xbb, 0x5e, 0xc5, 0xc2, 0xb0, 0x47, 0xfa, - 0xc0, 0xa3, 0x64, 0xcf, 0x64, 0x19, 0xf6, 0x78, 0xa9, 0x78, 0x90, 0x5b, 0x4e, 0x95, 0xdb, 0x08, - 0xa3, 0x6d, 0xb1, 0xd3, 0x3f, 0xad, 0xc1, 0xf0, 0x62, 0xd3, 0xb2, 0x5a, 0xee, 0xb2, 0x5d, 0x37, - 0x23, 0x1f, 0x81, 0x3d, 0x55, 0xb3, 0x8c, 0xf2, 0x19, 0xb5, 0x72, 0xd1, 0xb5, 0xd7, 0x30, 0x6b, - 0x3b, 0x9e, 0x1a, 0xb5, 0xcc, 0x32, 0x13, 0x6c, 0xb6, 0x56, 0x5e, 0xbd, 0x3f, 0x87, 0x09, 0xeb, - 0x70, 0xd5, 0x57, 0x6a, 0xaf, 0xe9, 0x9f, 0xd4, 0x30, 0x81, 0x0a, 0x0a, 0xbd, 0xcd, 0x50, 0x40, - 0x66, 0x60, 0xe2, 0x0d, 0xd3, 0xdd, 0x28, 0x46, 0x05, 0xe7, 0xeb, 0x08, 0xe2, 0xbd, 0x5d, 0x0e, - 0x8a, 0x52, 0xc6, 0xd4, 0x28, 0x22, 0x09, 0x76, 0xfb, 0x42, 0x38, 0x84, 0xa4, 0x6a, 0x1f, 0xe4, - 0xd2, 0x0a, 0x23, 0x55, 0x74, 0xad, 0xd0, 0x7b, 0x95, 0x41, 0x9b, 0xac, 0x54, 0x2e, 0x51, 0x29, - 0x23, 0xd6, 0xbc, 0xbe, 0x79, 0x28, 0xe8, 0x1b, 0x59, 0x54, 0x12, 0x61, 0xe8, 0x67, 0xe4, 0x6a, - 0x48, 0x8c, 0x16, 0x67, 0x6e, 0xeb, 0xb6, 0xe1, 0x6c, 0xb4, 0x26, 0xcd, 0x54, 0xb5, 0x22, 0xd3, - 0x54, 0x2e, 0x66, 0x9a, 0x3a, 0x0c, 0x83, 0x3c, 0x34, 0x6d, 0x30, 0xc6, 0x93, 0x5d, 0xac, 0xc7, - 0x07, 0x58, 0x19, 0x6f, 0x4b, 0xb7, 0xc4, 0xf2, 0x27, 0x46, 0x0c, 0x54, 0x77, 0x09, 0x7a, 0x03, - 0xeb, 0xf0, 0x53, 0x69, 0xea, 0xae, 0x36, 0xcc, 0x6a, 0x95, 0x96, 0x3d, 0x76, 0x77, 0xbd, 0x40, - 0xc1, 0x78, 0x16, 0x90, 0x81, 0xdc, 0x5a, 0x58, 0x65, 0x9b, 0x12, 0xad, 0x36, 0x77, 0x4c, 0x65, - 0xdd, 0x82, 0xf7, 0xf1, 0x54, 0x82, 0x97, 0xcc, 0x96, 0xcb, 0x0d, 0xea, 0x38, 0x19, 0x5b, 0x7a, - 0x11, 0x46, 0x44, 0x33, 0x06, 0x67, 0x80, 0x6d, 0x0d, 0x1b, 0x01, 0xb6, 0xfa, 0xaf, 0xe5, 0x60, - 0x6f, 0xac, 0xc6, 0xde, 0x4a, 0x8d, 0x79, 0x1b, 0xe7, 0xcd, 0x42, 0xeb, 0xae, 0x76, 0xa1, 0x95, - 0x53, 0x78, 0x49, 0x82, 0x0c, 0xcc, 0x39, 0x75, 0x6a, 0x49, 0xe4, 0x31, 0x58, 0x37, 0x2d, 0xcb, - 0x58, 0xb3, 0xf8, 0x7c, 0xa4, 0xca, 0x40, 0x10, 0xb5, 0xf6, 0x0f, 0xba, 0x7d, 0xfb, 0x07, 0x5e, - 0xf4, 0x68, 0x79, 0x13, 0x9f, 0x32, 0x70, 0x06, 0xf3, 0x1c, 0xc6, 0x5b, 0xad, 0x96, 0xcc, 0xf2, - 0x64, 0x2f, 0x5f, 0xad, 0x96, 0xcc, 0xb2, 0xfe, 0x31, 0xcc, 0xb5, 0xa2, 0xbd, 0xbd, 0xf3, 0x9e, - 0xd5, 0x80, 0xa3, 0x6d, 0xfa, 0x7d, 0xe7, 0xdb, 0xbc, 0xea, 0x1b, 0xc2, 0xc1, 0xb8, 0xad, 0x94, - 0xe4, 0xfc, 0x97, 0xe6, 0x1b, 0x7b, 0x61, 0x7a, 0x99, 0x81, 0xf5, 0xcb, 0xc0, 0xe5, 0x73, 0xa5, - 0xb6, 0xb3, 0x74, 0x9f, 0x98, 0x31, 0xc8, 0x12, 0x0c, 0xaf, 0x51, 0xc7, 0x2d, 0xae, 0x35, 0xb7, - 0x90, 0x4d, 0x4e, 0x9d, 0xcd, 0xa0, 0x47, 0x3a, 0xd7, 0xdc, 0xe2, 0xac, 0xee, 0xc0, 0x08, 0x63, - 0xc5, 0x76, 0xd2, 0x38, 0xaf, 0x2e, 0x75, 0x5e, 0x43, 0x1e, 0xed, 0x0a, 0xb5, 0x2c, 0xc6, 0x4c, - 0x9f, 0xc7, 0x81, 0xba, 0x40, 0x1b, 0xe6, 0x26, 0xcb, 0x24, 0x3a, 0x30, 0xe1, 0x4f, 0xe6, 0xb0, - 0xdb, 0x93, 0xb9, 0xfc, 0x9f, 0x37, 0xe4, 0xef, 0x0b, 0x37, 0x6a, 0xd9, 0x60, 0x27, 0xd2, 0xda, - 0xd4, 0x84, 0xb4, 0x6b, 0xfb, 0x09, 0xa9, 0xfe, 0x79, 0x0d, 0x0e, 0x25, 0xcb, 0xfd, 0x03, 0x90, - 0x35, 0xfe, 0x7a, 0x17, 0x4c, 0xc5, 0xc6, 0xb7, 0x55, 0x7b, 0xde, 0xa8, 0x95, 0xa8, 0xf5, 0xb0, - 0xbe, 0x6a, 0xcf, 0x56, 0xbd, 0x70, 0xb4, 0x73, 0x53, 0xfa, 0x02, 0x0c, 0xac, 0x19, 0x0e, 0x2d, - 0x1a, 0x8c, 0x6f, 0x96, 0xf0, 0x0e, 0x1e, 0x1d, 0x17, 0x87, 0x2c, 0xc2, 0xe0, 0xe3, 0xa6, 0xed, - 0x4a, 0x36, 0xdd, 0xea, 0x6c, 0x06, 0x18, 0x21, 0xf2, 0xb9, 0x0b, 0x7d, 0x8e, 0xdb, 0x30, 0x5c, - 0x5a, 0xe1, 0x6b, 0x88, 0xe1, 0x99, 0x93, 0x69, 0x86, 0xe4, 0x66, 0xb1, 0xd8, 0x81, 0xca, 0x0a, - 0xd2, 0x15, 0x24, 0x07, 0x72, 0x17, 0x46, 0x1a, 0x74, 0x9d, 0x36, 0x68, 0xad, 0x44, 0x71, 0x58, - 0xf4, 0xaa, 0x3b, 0xda, 0xb0, 0xa4, 0xe5, 0xe3, 0xe2, 0x1f, 0x72, 0x70, 0xc6, 0xd7, 0x3d, 0x21, - 0x2f, 0x7b, 0x57, 0x3b, 0x29, 0x6c, 0xde, 0xae, 0x1d, 0x30, 0x6f, 0xf7, 0xbb, 0x61, 0xde, 0x9e, - 0xce, 0xcd, 0xbb, 0x8e, 0x1b, 0x3f, 0xf1, 0xd6, 0xdd, 0xb9, 0x84, 0xae, 0x01, 0xc7, 0x63, 0x26, - 0xf6, 0x8e, 0xda, 0x53, 0x4e, 0xeb, 0xbe, 0x9b, 0x83, 0xe7, 0x70, 0xea, 0x6f, 0x35, 0xf4, 0x7d, - 0x92, 0xdc, 0x5d, 0x66, 0x8b, 0x8f, 0x8a, 0x59, 0xcb, 0xe2, 0x55, 0x48, 0x12, 0xc8, 0x0c, 0xbb, - 0x3b, 0xc9, 0x0c, 0x0f, 0x8a, 0xcc, 0xd0, 0xf3, 0x9c, 0xbe, 0xb9, 0xfe, 0x77, 0xde, 0x3c, 0xc8, - 0x0b, 0xe2, 0x93, 0xc4, 0xde, 0x84, 0x24, 0x71, 0x77, 0x2b, 0x49, 0xdc, 0xc4, 0xbd, 0xbf, 0x24, - 0x3f, 0xc2, 0x89, 0xe0, 0x7e, 0x28, 0x6d, 0x3b, 0xaf, 0x90, 0xb6, 0xc5, 0xf5, 0x9d, 0x4c, 0xde, - 0x7e, 0x1c, 0x3e, 0xa0, 0xe4, 0x57, 0xef, 0x56, 0xfb, 0x3f, 0xa7, 0x45, 0x12, 0xa0, 0xf7, 0x70, - 0x19, 0xf8, 0x24, 0x92, 0x47, 0x25, 0x2c, 0x06, 0x77, 0xdc, 0x0e, 0x3f, 0x2b, 0x0e, 0x40, 0x7c, - 0x29, 0xdc, 0x7b, 0xb6, 0x9b, 0xf1, 0x49, 0x0d, 0xc0, 0x97, 0x30, 0xbc, 0x87, 0xe3, 0x5c, 0xff, - 0x82, 0x06, 0xe3, 0x0f, 0x68, 0xa3, 0x4e, 0xdd, 0xa6, 0x61, 0x71, 0x8b, 0xac, 0xb8, 0x86, 0x4b, - 0xc9, 0x03, 0x18, 0x10, 0x6a, 0xd7, 0xd6, 0x6d, 0xdc, 0x82, 0x48, 0x3d, 0xca, 0x0e, 0xb1, 0x59, - 0xaa, 0xad, 0xdb, 0x05, 0x34, 0x9d, 0xf7, 0x9b, 0x3c, 0x84, 0xc1, 0xf5, 0x66, 0xad, 0x6c, 0xd6, - 0x2a, 0x9c, 0x25, 0xdf, 0xa6, 0x9a, 0xc9, 0xc0, 0x72, 0x91, 0x93, 0x17, 0x06, 0x90, 0x8f, 0xc7, - 0x56, 0xff, 0x6c, 0x17, 0x8c, 0x2f, 0x36, 0x2d, 0x2b, 0xdc, 0xb1, 0x64, 0x21, 0xb4, 0x7f, 0xf2, - 0x72, 0xfa, 0x1e, 0x78, 0x90, 0x5a, 0xee, 0xb0, 0x7d, 0x18, 0x86, 0xeb, 0x42, 0x0a, 0xbf, 0xdc, - 0x27, 0x33, 0xc8, 0xcd, 0x2c, 0x7a, 0x7b, 0x57, 0x61, 0x48, 0x72, 0x62, 0x06, 0xf9, 0x90, 0x67, - 0x10, 0xb7, 0xd9, 0xa0, 0x0e, 0x67, 0xdc, 0xc5, 0x18, 0x9f, 0x4e, 0x63, 0x7c, 0xf3, 0x49, 0xdd, - 0x6c, 0x6c, 0x2d, 0x72, 0xaa, 0x96, 0x9d, 0x6f, 0xef, 0xf2, 0x6c, 0xc2, 0x0a, 0x19, 0xe7, 0x39, - 0xee, 0xb3, 0x38, 0xfd, 0x66, 0x08, 0xc1, 0xcc, 0xb1, 0xf9, 0xea, 0x21, 0x76, 0x6b, 0xb1, 0x67, - 0x67, 0xb6, 0x16, 0xe7, 0x7a, 0xa1, 0xdb, 0x53, 0x59, 0xb7, 0x70, 0x6d, 0x1b, 0x33, 0x2a, 0x31, - 0x12, 0xbc, 0x12, 0xde, 0xd9, 0x3b, 0xd9, 0x6e, 0x1b, 0x2c, 0xd2, 0x95, 0x72, 0x7f, 0xef, 0x32, - 0xee, 0x0b, 0x45, 0x6a, 0xa8, 0x2c, 0x02, 0xcd, 0x84, 0x00, 0x22, 0x25, 0xbd, 0x1d, 0xf2, 0xb7, - 0xec, 0x82, 0x8a, 0x5d, 0xbb, 0x39, 0x9c, 0xac, 0xc2, 0x15, 0x70, 0xf6, 0x50, 0x12, 0x97, 0x46, - 0x17, 0xbe, 0x41, 0x1e, 0xad, 0xe3, 0x41, 0x91, 0xa5, 0x88, 0x53, 0x70, 0xfe, 0xa8, 0x96, 0x37, - 0xdd, 0xc2, 0xd5, 0x55, 0xeb, 0x30, 0x8a, 0xcd, 0xb0, 0xec, 0x8a, 0x4f, 0x96, 0xb3, 0x2e, 0x7d, - 0x31, 0x72, 0x41, 0xe2, 0x81, 0xed, 0x98, 0xec, 0x4e, 0x54, 0x26, 0x3e, 0x1f, 0x83, 0xf7, 0x27, - 0xf0, 0x59, 0xaa, 0x05, 0x7b, 0x7b, 0xfb, 0x17, 0x8c, 0x1c, 0x98, 0x0e, 0xb5, 0x75, 0x73, 0x7d, - 0x9d, 0xf7, 0xf8, 0xbb, 0xd7, 0xe8, 0x2b, 0xe8, 0x1c, 0xa1, 0x0b, 0x3c, 0xf2, 0xf2, 0x4e, 0x16, - 0x63, 0xd5, 0x22, 0xbd, 0xe7, 0x33, 0xba, 0x1c, 0x80, 0x3d, 0xde, 0x4c, 0x48, 0x71, 0xf8, 0x4d, - 0xa9, 0x45, 0x51, 0xc1, 0x07, 0x8f, 0x73, 0x39, 0x0b, 0xfd, 0x11, 0xbc, 0xd8, 0xb6, 0x73, 0xe4, - 0x4e, 0x8a, 0x6c, 0xd6, 0x1b, 0x4c, 0xef, 0x4b, 0x0d, 0xb7, 0xfe, 0xc6, 0x34, 0xd1, 0xd8, 0xc7, - 0x73, 0xb0, 0x27, 0xd2, 0x1f, 0x64, 0x1f, 0xec, 0x36, 0x9d, 0xa2, 0x65, 0xd7, 0x2a, 0x8c, 0x73, - 0x5f, 0xa1, 0xd7, 0x74, 0xee, 0xda, 0xb5, 0xca, 0xf6, 0x53, 0xe6, 0x05, 0x18, 0xa0, 0x35, 0xb7, - 0xb1, 0x15, 0xd9, 0x6a, 0x69, 0xbf, 0x66, 0x66, 0x74, 0x3c, 0xec, 0xde, 0x83, 0x51, 0x2a, 0x84, - 0x2e, 0x62, 0x0a, 0x9e, 0x21, 0x80, 0x8f, 0x48, 0xe2, 0x65, 0x46, 0xab, 0x3f, 0x83, 0x93, 0xea, - 0x3e, 0x2a, 0x37, 0x2f, 0x03, 0xb6, 0x3f, 0x91, 0x3a, 0x23, 0x85, 0xb9, 0x05, 0x3b, 0xe1, 0x1a, - 0x0e, 0xeb, 0xb8, 0xe4, 0x40, 0x25, 0x8c, 0x55, 0xd1, 0x43, 0x63, 0xe9, 0xa5, 0xb8, 0xdd, 0xdb, - 0xc8, 0x51, 0xd0, 0x43, 0xf9, 0x7c, 0x24, 0x22, 0x6f, 0xc2, 0x3c, 0xab, 0x24, 0x72, 0x13, 0x23, - 0x6f, 0x22, 0x0f, 0x14, 0x7b, 0x39, 0x20, 0x76, 0x27, 0xd3, 0x7e, 0x40, 0xf4, 0x59, 0x5c, 0x29, - 0x27, 0xe4, 0x4c, 0x6a, 0x92, 0x1f, 0x49, 0x65, 0x21, 0x6f, 0x4d, 0x06, 0xdc, 0xa3, 0x83, 0x0c, - 0x2e, 0x18, 0x15, 0xe4, 0x1a, 0x25, 0x31, 0xa4, 0x61, 0xc3, 0xa5, 0xc0, 0x15, 0x47, 0x2f, 0x1a, - 0xcd, 0x76, 0x78, 0xc5, 0xb1, 0x75, 0x6f, 0x52, 0xdc, 0x1a, 0x13, 0x8c, 0xf5, 0x8b, 0x78, 0x5d, - 0x28, 0x7e, 0x46, 0x43, 0x49, 0xc6, 0xa1, 0x87, 0x5f, 0x6e, 0xd5, 0xd8, 0xe5, 0x56, 0xfe, 0xa0, - 0xef, 0xc7, 0xfb, 0x04, 0xcb, 0x76, 0xb9, 0x69, 0x51, 0x96, 0xf5, 0x89, 0x3b, 0x6f, 0xaf, 0xe3, - 0xfd, 0x87, 0xc0, 0x2b, 0x79, 0xd7, 0x20, 0x60, 0xcf, 0xd4, 0xeb, 0x26, 0xb7, 0xf8, 0x8d, 0x5e, - 0xce, 0x00, 0xed, 0xb7, 0x0f, 0xf6, 0xf2, 0x6e, 0x0b, 0x4d, 0x98, 0x7a, 0x19, 0xaf, 0x45, 0xbc, - 0xbb, 0x41, 0xfd, 0xb1, 0xff, 0xfc, 0xa5, 0x40, 0xdf, 0x30, 0x1a, 0xe5, 0x07, 0xb6, 0x59, 0x73, - 0x95, 0xee, 0xad, 0x9d, 0x81, 0x89, 0x3a, 0xe5, 0x8b, 0x82, 0xba, 0x6d, 0x5b, 0x45, 0xd7, 0xac, - 0x52, 0xc7, 0x35, 0xaa, 0x75, 0x16, 0x83, 0xbb, 0x0a, 0xe3, 0xf8, 0xf6, 0x81, 0x6d, 0x5b, 0xab, - 0xe2, 0x9d, 0xfe, 0xd3, 0xe2, 0x58, 0x33, 0xa6, 0x4d, 0xd4, 0x70, 0x0d, 0x9e, 0x13, 0x93, 0x1f, - 0xbb, 0x9b, 0x5c, 0x6c, 0xb0, 0x5a, 0xc5, 0x3a, 0xab, 0xc6, 0xe5, 0x50, 0x0b, 0xa9, 0x93, 0x7e, - 0x37, 0xf0, 0xb7, 0xa5, 0x1f, 0xc6, 0xe0, 0xe6, 0x7b, 0x33, 0x6f, 0x54, 0xeb, 0x86, 0x59, 0xa9, - 0x89, 0x2e, 0xf8, 0x5e, 0x37, 0x06, 0xb0, 0xd8, 0x3a, 0x28, 0xeb, 0x26, 0x3c, 0xef, 0xc9, 0xe8, - 0x19, 0x01, 0xa5, 0x2c, 0x61, 0x15, 0xff, 0xe2, 0xeb, 0x6c, 0xfa, 0x1a, 0xd8, 0xe0, 0x63, 0xd4, - 0xdf, 0x00, 0x0b, 0x37, 0xfb, 0xdd, 0xa4, 0x57, 0xe4, 0x27, 0x34, 0x38, 0x1a, 0x6a, 0x98, 0x75, - 0x82, 0x6c, 0xdd, 0x29, 0x6d, 0x50, 0xcf, 0x5f, 0x71, 0xfb, 0x7a, 0x2a, 0x7d, 0x5b, 0x50, 0x68, - 0xc5, 0x2d, 0x64, 0x5b, 0x85, 0xc3, 0x81, 0xa6, 0xbd, 0x22, 0x51, 0x69, 0x05, 0x19, 0x93, 0x1f, - 0x81, 0xfd, 0xae, 0xed, 0x1a, 0x56, 0x6c, 0x27, 0x65, 0x98, 0x42, 0x27, 0x18, 0x97, 0x48, 0x17, - 0x91, 0x5f, 0xd0, 0xe0, 0x84, 0x70, 0x30, 0x35, 0x55, 0xbb, 0x3b, 0x52, 0xf5, 0x18, 0x36, 0xb2, - 0xda, 0x56, 0xe3, 0x2a, 0x1c, 0x96, 0x02, 0x25, 0x6a, 0xde, 0xa3, 0xee, 0x9e, 0x2f, 0x88, 0x96, - 0x63, 0x0d, 0xa0, 0x5f, 0x46, 0x1f, 0x5d, 0x72, 0xee, 0xd7, 0x5d, 0x5a, 0xbe, 0xdf, 0x74, 0xef, - 0xaf, 0xf3, 0x0a, 0x4e, 0xfb, 0x8b, 0xb0, 0x0b, 0xe8, 0xbc, 0xb1, 0xc4, 0xe8, 0xbc, 0x87, 0x60, - 0xd0, 0x74, 0x8a, 0xb6, 0xf7, 0xbe, 0x68, 0x37, 0x5d, 0xcc, 0xaa, 0xc0, 0x94, 0x24, 0xfa, 0x8b, - 0xb8, 0xeb, 0x13, 0xe1, 0x81, 0x9b, 0x62, 0x32, 0x5e, 0x2d, 0x60, 0xee, 0x9e, 0x52, 0x11, 0x1b, - 0x4d, 0x09, 0x29, 0xfa, 0x35, 0x9c, 0x08, 0x17, 0x29, 0x5d, 0x30, 0x1d, 0xbe, 0xed, 0x86, 0x19, - 0xaf, 0x6f, 0x0a, 0x4f, 0x56, 0xfa, 0xbb, 0x1a, 0x4e, 0x83, 0x49, 0x0c, 0x50, 0x86, 0x17, 0x00, - 0x5c, 0x93, 0x36, 0xe4, 0x71, 0x91, 0x76, 0xac, 0xbb, 0xd0, 0xef, 0x95, 0xf0, 0x5d, 0x9d, 0x02, - 0x0c, 0xca, 0xec, 0xbb, 0xb5, 0x6d, 0x90, 0x9a, 0x9d, 0xf8, 0x1a, 0x5c, 0x35, 0x69, 0x83, 0xb5, - 0x36, 0x60, 0xb4, 0x9a, 0x26, 0xf7, 0x61, 0x40, 0x06, 0x35, 0xd7, 0xc2, 0x0d, 0x83, 0xa9, 0x0c, - 0x2c, 0x57, 0x57, 0xef, 0x16, 0x40, 0xc4, 0x33, 0xd7, 0x92, 0x11, 0xcc, 0x57, 0x4d, 0x38, 0xaa, - 0xe8, 0x94, 0x4f, 0x88, 0x03, 0xb4, 0xd8, 0x3a, 0x72, 0x66, 0xde, 0xbb, 0x4e, 0x69, 0xb1, 0x8c, - 0xef, 0x5b, 0xa3, 0x49, 0xcb, 0xa4, 0xb5, 0xe4, 0x3b, 0xb6, 0x1e, 0x2d, 0xd4, 0x6f, 0xe0, 0x44, - 0x83, 0xf7, 0xbd, 0x97, 0x4d, 0xa7, 0x6a, 0xb8, 0x25, 0xdf, 0x1e, 0xe6, 0x41, 0x18, 0x28, 0x37, - 0x1d, 0xb7, 0xb8, 0x6e, 0x94, 0x5c, 0x9b, 0x43, 0x53, 0xba, 0x0a, 0xe0, 0x15, 0x2d, 0xb2, 0x12, - 0xfd, 0xb7, 0xbb, 0x60, 0x24, 0x44, 0x4d, 0x74, 0x08, 0xac, 0x89, 0xd4, 0x2f, 0x62, 0x92, 0x59, - 0xe8, 0x37, 0x36, 0x0d, 0x33, 0xf3, 0x0d, 0x88, 0x16, 0x15, 0xb9, 0x08, 0x3d, 0x2c, 0x08, 0x64, - 0x49, 0xf1, 0x39, 0x05, 0x59, 0x84, 0x41, 0xbc, 0xe9, 0x5e, 0xdc, 0xb0, 0xad, 0xb2, 0xef, 0x90, - 0xa5, 0xfd, 0xe9, 0x0f, 0x12, 0xde, 0xb6, 0xad, 0x32, 0x79, 0x05, 0x86, 0xe9, 0x93, 0x3a, 0x2d, - 0x79, 0xe3, 0x97, 0xcb, 0xd2, 0xab, 0xce, 0x69, 0x48, 0x90, 0xb2, 0xe8, 0x43, 0xe6, 0x01, 0xca, - 0xe6, 0x3a, 0x1e, 0xe0, 0xf0, 0xed, 0x77, 0xc5, 0x15, 0x50, 0x8b, 0x4c, 0xff, 0x31, 0x9c, 0xdb, - 0x63, 0xba, 0x19, 0xbd, 0xed, 0x75, 0x20, 0x42, 0xf5, 0xaa, 0x7c, 0x8b, 0xa9, 0xcc, 0x07, 0x14, - 0x90, 0x02, 0x82, 0x65, 0x61, 0xcf, 0x5a, 0xb8, 0x0d, 0xfd, 0x28, 0x0e, 0x7e, 0xac, 0xea, 0x25, - 0x8a, 0x73, 0x2d, 0x6b, 0xc9, 0x50, 0xf5, 0x2b, 0x39, 0xd8, 0xeb, 0xab, 0xc2, 0x17, 0x5b, 0xcc, - 0x9e, 0xff, 0xcf, 0xfd, 0x49, 0xff, 0x65, 0x91, 0xcd, 0x27, 0x5a, 0x10, 0x7b, 0xb1, 0x06, 0x79, - 0xd1, 0x20, 0xdb, 0x41, 0xf7, 0xb7, 0xae, 0x74, 0x6d, 0x26, 0xd6, 0xfe, 0x85, 0x7d, 0x6b, 0xf1, - 0xed, 0xca, 0x69, 0x28, 0x14, 0x12, 0xbd, 0x54, 0xda, 0x74, 0x5c, 0xb3, 0x24, 0xfb, 0xf6, 0x22, - 0x0c, 0x05, 0x5e, 0x10, 0x02, 0xdd, 0x5e, 0x5c, 0xc7, 0x18, 0xcf, 0x7e, 0x7b, 0x5d, 0xd8, 0x82, - 0x06, 0x75, 0x17, 0xf8, 0x83, 0xee, 0xe0, 0x0c, 0x96, 0xd2, 0x86, 0x5c, 0xb4, 0x82, 0x23, 0x4b, - 0x55, 0x6e, 0xc9, 0x07, 0xf8, 0x14, 0x7c, 0xc4, 0x5e, 0xfe, 0xbf, 0x6c, 0xba, 0xf6, 0xab, 0x46, - 0xd3, 0x62, 0xd3, 0x84, 0x54, 0xe4, 0x8f, 0x35, 0x98, 0x08, 0xbf, 0xc1, 0xe6, 0x5f, 0x82, 0xd1, - 0xaa, 0xe1, 0xb8, 0xb4, 0x21, 0xce, 0x28, 0xa9, 0x98, 0x48, 0x47, 0x78, 0xf9, 0xac, 0x28, 0x26, - 0xa7, 0x60, 0xbc, 0x2c, 0x97, 0x00, 0xbe, 0xea, 0xfc, 0x28, 0x64, 0xac, 0xf5, 0xae, 0x45, 0x72, - 0x14, 0x86, 0x9d, 0xba, 0xed, 0xfa, 0x2a, 0xf3, 0xc3, 0xa0, 0x21, 0xaf, 0x34, 0x50, 0xad, 0xf4, - 0xc6, 0xcc, 0x49, 0x5f, 0xb5, 0x6e, 0x5e, 0xcd, 0x2b, 0x95, 0xd5, 0xf4, 0x05, 0x8c, 0xfb, 0xb8, - 0xf0, 0x5d, 0x58, 0x6c, 0xd8, 0x55, 0xa6, 0x92, 0x6f, 0xaf, 0x6b, 0xd3, 0x7b, 0x2e, 0x06, 0x77, - 0x32, 0x07, 0x59, 0xa1, 0x38, 0x6d, 0x15, 0xd7, 0xa8, 0x62, 0xb8, 0xa0, 0x4d, 0x52, 0xd7, 0xc6, - 0x62, 0x79, 0x7d, 0xdb, 0x74, 0x5c, 0xbb, 0x61, 0x96, 0x64, 0xae, 0x55, 0xb2, 0x7d, 0xa9, 0x54, - 0x2a, 0x0b, 0x17, 0x43, 0x4b, 0x12, 0x0b, 0xb9, 0x2f, 0x30, 0x24, 0x52, 0x42, 0xf6, 0x42, 0x05, - 0x85, 0x10, 0x60, 0x34, 0xe8, 0xfa, 0x9e, 0xf4, 0x3f, 0xd0, 0x60, 0x8c, 0xbd, 0xe6, 0xcd, 0x7a, - 0xc9, 0x95, 0xb7, 0x14, 0x24, 0x2f, 0x03, 0xe1, 0xcd, 0x54, 0x1a, 0x76, 0xb3, 0xee, 0xa5, 0xa3, - 0x0e, 0x2d, 0xa1, 0x8b, 0x8f, 0xb2, 0x37, 0xb7, 0xf0, 0xc5, 0x0a, 0x2d, 0x91, 0x7d, 0xb0, 0xbb, - 0x6a, 0x3c, 0x29, 0x1a, 0x15, 0x8a, 0x0e, 0xdf, 0x5b, 0x35, 0x9e, 0xcc, 0x56, 0x28, 0x99, 0x82, - 0x31, 0xb3, 0x56, 0xb2, 0x9a, 0x9e, 0xbc, 0xc6, 0x1b, 0xc5, 0x0d, 0xde, 0x08, 0x5e, 0xe9, 0xdb, - 0x83, 0xaf, 0x0a, 0xc6, 0x1b, 0xd8, 0xba, 0xe7, 0x78, 0xa2, 0xbe, 0x5c, 0xcb, 0xb3, 0x53, 0xde, - 0xc2, 0x08, 0x96, 0x8b, 0x35, 0xba, 0xfe, 0x9b, 0x1a, 0xee, 0xd7, 0x4b, 0x8c, 0x85, 0xe1, 0x9a, - 0x96, 0xe9, 0x6e, 0x29, 0x9d, 0x59, 0x96, 0x60, 0x2f, 0xd7, 0x0f, 0x45, 0xf2, 0x52, 0x54, 0x4f, - 0x71, 0x95, 0x44, 0x2c, 0xc6, 0x5e, 0x85, 0x31, 0x37, 0x5a, 0xa8, 0x7f, 0x3c, 0x17, 0xf0, 0x4d, - 0xbf, 0x88, 0x12, 0x8b, 0x01, 0x9b, 0xb2, 0x14, 0x4f, 0xf8, 0x0e, 0xb6, 0x9d, 0x0e, 0x5b, 0x24, - 0xe4, 0x35, 0x18, 0x15, 0x1a, 0x48, 0x83, 0xe5, 0x22, 0x07, 0x5a, 0x88, 0xe0, 0x95, 0x87, 0x30, - 0x58, 0xd3, 0x17, 0x78, 0x46, 0x90, 0x8b, 0x78, 0x45, 0x6e, 0xc3, 0x80, 0xbf, 0xc7, 0xba, 0x98, - 0x97, 0xbd, 0xa8, 0xe8, 0x65, 0x05, 0x68, 0xc8, 0x3e, 0x95, 0x40, 0xa2, 0x39, 0xb3, 0x66, 0x08, - 0x53, 0xb4, 0x3b, 0x57, 0xd5, 0x2b, 0x78, 0xd9, 0x3a, 0x44, 0x24, 0xc3, 0x63, 0xe8, 0xd8, 0x27, - 0xb5, 0xbf, 0x38, 0x0f, 0xec, 0x94, 0xf0, 0xa9, 0xcf, 0x63, 0x38, 0x11, 0x7b, 0xf4, 0x3f, 0x6f, - 0xd7, 0xca, 0x26, 0xbf, 0x25, 0xb6, 0xd3, 0xc8, 0xe3, 0xdf, 0xe8, 0x82, 0xc3, 0x91, 0x53, 0xe9, - 0x70, 0x7b, 0x3f, 0xb8, 0xf7, 0x3b, 0x6e, 0xc1, 0xa0, 0xdb, 0x30, 0x2b, 0x15, 0xda, 0x78, 0x90, - 0xf5, 0x80, 0x31, 0x40, 0xd8, 0xfe, 0x9e, 0xc7, 0x51, 0xd8, 0x6d, 0x3a, 0xec, 0x38, 0x9f, 0x65, - 0xa5, 0x7d, 0x73, 0x03, 0xef, 0xbc, 0x79, 0x50, 0x14, 0x15, 0xc4, 0x8f, 0xd0, 0x75, 0x90, 0xdd, - 0x09, 0xd7, 0x41, 0xfa, 0x5a, 0xd7, 0x41, 0x3e, 0xa1, 0x05, 0x2e, 0xd5, 0xa5, 0x3a, 0x85, 0x04, - 0x7d, 0x06, 0xaf, 0x24, 0x5c, 0xcd, 0x74, 0x25, 0x21, 0xcc, 0x57, 0x5e, 0x4c, 0x58, 0x46, 0x41, - 0xf0, 0x74, 0xce, 0xb5, 0xab, 0x66, 0xe9, 0xe6, 0x13, 0x5a, 0x6a, 0x7a, 0x95, 0x17, 0x29, 0x5d, - 0x6e, 0x5a, 0xae, 0x59, 0xb7, 0x4c, 0xda, 0x50, 0x9a, 0x63, 0x36, 0xf1, 0x48, 0x4a, 0x85, 0x1d, - 0x2a, 0x36, 0x0f, 0x50, 0x95, 0xa5, 0x59, 0x7c, 0xd1, 0x47, 0xa6, 0x5f, 0x10, 0xd8, 0x55, 0x66, - 0x90, 0x15, 0xd7, 0x78, 0x44, 0x6f, 0x35, 0x8c, 0xd6, 0x6d, 0xb7, 0x49, 0xd8, 0x5d, 0xf1, 0x9e, - 0x29, 0x15, 0xcb, 0x6d, 0x7c, 0xd4, 0x3f, 0x23, 0xa1, 0xa9, 0x11, 0x52, 0x14, 0xf0, 0x2a, 0xf4, - 0xb0, 0xca, 0xb8, 0x98, 0x4c, 0x0d, 0x51, 0x9c, 0x09, 0xa7, 0xe7, 0x54, 0x64, 0x05, 0x5a, 0x87, - 0x22, 0x45, 0xce, 0x48, 0x01, 0x21, 0x23, 0xcf, 0x35, 0x38, 0xaf, 0x61, 0x1a, 0x78, 0xd6, 0x57, - 0x31, 0x9b, 0x60, 0x4f, 0xb3, 0x4d, 0x77, 0xc3, 0x6e, 0x98, 0x3f, 0xca, 0xae, 0xc4, 0x45, 0x34, - 0x6e, 0x04, 0x35, 0x6e, 0xf8, 0x6d, 0x91, 0x0b, 0xda, 0xe2, 0x43, 0xb8, 0x1c, 0x8f, 0xe3, 0x8a, - 0xc6, 0x38, 0x0b, 0xbd, 0x78, 0xdd, 0x8f, 0xf7, 0xd4, 0x0b, 0xd8, 0x53, 0x7b, 0xa3, 0x3d, 0xb5, - 0x54, 0x73, 0x0b, 0x58, 0x59, 0x6e, 0x03, 0x45, 0x39, 0x3b, 0x6d, 0x05, 0xf6, 0x52, 0x88, 0x43, - 0xc9, 0xd4, 0xf2, 0x0e, 0x2d, 0xe1, 0xfb, 0x59, 0x8c, 0xaa, 0x98, 0x45, 0xc8, 0x51, 0x46, 0xc8, - 0x99, 0x8b, 0x9b, 0xa3, 0xbd, 0x8c, 0x8d, 0xa3, 0xb2, 0xf3, 0x18, 0x63, 0x2d, 0xa4, 0x3e, 0x7e, - 0x06, 0xfa, 0x25, 0x0e, 0x8e, 0x8c, 0xc3, 0xa8, 0xf7, 0xb7, 0xf8, 0xb0, 0xe6, 0xd4, 0x69, 0xc9, - 0x5c, 0x37, 0x69, 0x79, 0x74, 0x17, 0xd9, 0x0d, 0x5d, 0x73, 0xcd, 0xad, 0x51, 0x8d, 0xf4, 0x41, - 0xf7, 0x0a, 0xb5, 0xac, 0xd1, 0xdc, 0xf1, 0x57, 0x61, 0x3c, 0xee, 0x92, 0xa3, 0xc7, 0xc0, 0x47, - 0xcb, 0x18, 0x8f, 0xee, 0x22, 0x63, 0x30, 0xe2, 0xe5, 0x92, 0xaf, 0xd9, 0x0d, 0xc7, 0x5d, 0xb5, - 0xe7, 0xa8, 0xe3, 0x8e, 0x6a, 0xa2, 0xd0, 0x7b, 0x5a, 0xb5, 0xd9, 0xab, 0xd1, 0xdc, 0xcc, 0x9f, - 0x53, 0xe8, 0x61, 0x76, 0x24, 0x9f, 0xd5, 0x60, 0x2c, 0xe6, 0x3b, 0x08, 0xe4, 0x5c, 0x5b, 0xc4, - 0x7f, 0xec, 0x67, 0x15, 0xf2, 0xe7, 0x33, 0xd3, 0xf1, 0x5e, 0xd3, 0x67, 0x7e, 0xea, 0x6f, 0xbe, - 0xfd, 0xa9, 0xdc, 0xcb, 0xe4, 0xf8, 0xb4, 0xc2, 0x17, 0x47, 0x50, 0xc8, 0xbf, 0xd0, 0x80, 0x44, - 0x3f, 0x3c, 0x40, 0x2e, 0x75, 0xf4, 0xb5, 0x02, 0x2e, 0xff, 0xe5, 0x6d, 0x7c, 0xe9, 0x40, 0xbf, - 0xce, 0x74, 0xb8, 0x48, 0xce, 0xab, 0xe8, 0x30, 0xed, 0x44, 0x25, 0xff, 0x8a, 0x06, 0x7b, 0x22, - 0xfc, 0xc9, 0xc5, 0xec, 0x32, 0x09, 0x75, 0x2e, 0x75, 0x42, 0x8a, 0xda, 0x5c, 0x63, 0xda, 0x5c, - 0x20, 0xe7, 0x3a, 0xd3, 0x86, 0xfc, 0x89, 0x06, 0xa3, 0xe1, 0x2f, 0x2b, 0x90, 0x0b, 0xca, 0xfe, - 0x11, 0xfa, 0x58, 0x43, 0xfe, 0x62, 0x07, 0x94, 0xa8, 0xc9, 0x55, 0xa6, 0xc9, 0x79, 0x72, 0x56, - 0x49, 0x13, 0x1a, 0x96, 0xf9, 0xcf, 0x34, 0x18, 0x09, 0x7d, 0xae, 0x80, 0xb4, 0xf7, 0xf3, 0xf8, - 0x8f, 0x3d, 0xe4, 0x2f, 0x64, 0x27, 0x44, 0x2d, 0x16, 0x99, 0x16, 0x37, 0xc8, 0x35, 0x25, 0x2d, - 0x42, 0x1f, 0x75, 0x98, 0x7e, 0x8a, 0xbd, 0xf3, 0x8c, 0xf5, 0x4b, 0xf8, 0xeb, 0x0b, 0x24, 0xb3, - 0x58, 0x19, 0xfa, 0x25, 0xe9, 0x53, 0x0f, 0x19, 0xfb, 0x25, 0xfc, 0x99, 0x0a, 0xf2, 0x2f, 0x1a, - 0xec, 0x8d, 0x85, 0xd0, 0x93, 0xab, 0xea, 0x32, 0xc5, 0x7c, 0x83, 0x21, 0x7f, 0xad, 0x53, 0x72, - 0xd4, 0xeb, 0x1e, 0xd3, 0xeb, 0x36, 0x59, 0xcc, 0xa6, 0x97, 0x9f, 0xd7, 0xf4, 0x53, 0x99, 0x5a, - 0x3d, 0x23, 0x6f, 0x6a, 0x30, 0x11, 0xff, 0xad, 0x00, 0xd2, 0xa1, 0xa8, 0xb2, 0xf7, 0xae, 0x77, - 0x4c, 0x8f, 0xba, 0xce, 0x33, 0x5d, 0xaf, 0x92, 0xcb, 0x9d, 0xeb, 0xea, 0x90, 0x2f, 0x68, 0x30, - 0xe8, 0xff, 0xf8, 0x02, 0x39, 0xd3, 0x56, 0xac, 0x98, 0x8f, 0x52, 0xe4, 0xcf, 0x66, 0xa4, 0x42, - 0x15, 0xe6, 0x98, 0x0a, 0x57, 0xc8, 0x25, 0x25, 0x15, 0x02, 0x9f, 0x95, 0x98, 0x7e, 0xca, 0x1e, - 0x9f, 0x91, 0xcf, 0x69, 0x30, 0x14, 0xf8, 0x7c, 0x04, 0xc9, 0x26, 0x8c, 0xec, 0x90, 0x73, 0x59, - 0xc9, 0x50, 0x89, 0xcb, 0x4c, 0x89, 0xb3, 0xe4, 0x74, 0x76, 0x25, 0x1c, 0xf2, 0x3b, 0x1a, 0x0c, - 0xf8, 0xd0, 0xcc, 0xe4, 0x74, 0xfb, 0x69, 0x23, 0x82, 0xc2, 0xce, 0x9f, 0xc9, 0x46, 0x84, 0x72, - 0x9f, 0x64, 0x72, 0x1f, 0x27, 0xc7, 0xd2, 0xe4, 0x76, 0xea, 0xb6, 0x3b, 0x8d, 0xcb, 0x68, 0xf2, - 0x19, 0x0d, 0xc0, 0x87, 0x5c, 0x9f, 0xc9, 0xd0, 0xac, 0x10, 0xf5, 0x74, 0x26, 0x1a, 0x94, 0xf4, - 0x0a, 0x93, 0xf4, 0x1c, 0x39, 0xa3, 0x2a, 0x69, 0x60, 0x0c, 0x7f, 0x4e, 0x83, 0x91, 0x10, 0x68, - 0x5c, 0x61, 0x12, 0x89, 0x07, 0xbc, 0x2b, 0x4c, 0x22, 0x09, 0xf8, 0x74, 0xfd, 0x2c, 0x53, 0x62, - 0x9a, 0x9c, 0x68, 0xab, 0xc4, 0x7a, 0xd3, 0xb2, 0x8a, 0xc2, 0xe6, 0x5f, 0x8a, 0x7e, 0x31, 0xe0, - 0x5c, 0x46, 0x19, 0xd4, 0x33, 0xc4, 0x78, 0x18, 0xba, 0x7e, 0x83, 0x89, 0x7e, 0x89, 0x5c, 0xc8, - 0x22, 0x7a, 0xa0, 0x0f, 0x3e, 0xaf, 0xc1, 0x50, 0xe0, 0x6b, 0x0d, 0x0a, 0x83, 0x34, 0xee, 0xb3, - 0x19, 0x0a, 0x83, 0x34, 0xf6, 0xa3, 0x10, 0x6a, 0x29, 0x15, 0x53, 0xc1, 0x16, 0xb4, 0x01, 0x05, - 0xbe, 0xae, 0xc1, 0x68, 0x18, 0x7d, 0xa7, 0x30, 0x75, 0x27, 0xc0, 0xcf, 0x15, 0xa6, 0xee, 0x24, - 0x28, 0xb3, 0x7e, 0x87, 0x69, 0x72, 0x93, 0xcc, 0xab, 0x69, 0x12, 0x18, 0x0b, 0xd3, 0x4f, 0x03, - 0xbb, 0x5a, 0xcf, 0xc8, 0x7f, 0x68, 0x30, 0x99, 0x04, 0x64, 0x26, 0x37, 0xda, 0xcf, 0x50, 0xe9, - 0xd8, 0xf7, 0xfc, 0xec, 0x36, 0x38, 0xa0, 0xba, 0x0f, 0x99, 0xba, 0xf7, 0xc9, 0x72, 0x27, 0xea, - 0xa2, 0xaa, 0x32, 0x05, 0x13, 0xa7, 0x03, 0xcf, 0xc8, 0xb7, 0xbd, 0x05, 0x4c, 0xe4, 0x4b, 0x04, - 0x2a, 0x0b, 0x98, 0xa4, 0xaf, 0x28, 0xa8, 0x2c, 0x60, 0x12, 0x3f, 0x7d, 0x90, 0x59, 0xcd, 0xe2, - 0xda, 0x16, 0x82, 0x6c, 0x52, 0xfb, 0xf7, 0x4b, 0x1a, 0x8c, 0x86, 0x3f, 0x7d, 0xa8, 0xe0, 0xb6, - 0x09, 0x1f, 0x64, 0xcc, 0x5f, 0xec, 0x80, 0x12, 0x15, 0xbc, 0xc4, 0x14, 0x3c, 0x43, 0x66, 0xd2, - 0x14, 0x14, 0x5d, 0x18, 0xd2, 0xe2, 0x3b, 0x1a, 0xec, 0x6f, 0x8d, 0x87, 0xd5, 0x86, 0x51, 0x73, - 0x4c, 0x5a, 0x7b, 0x4f, 0x47, 0xa1, 0x7a, 0x7f, 0xb9, 0x42, 0xdc, 0xa2, 0xc2, 0x78, 0xfc, 0x5b, - 0x74, 0xcb, 0x20, 0x82, 0x42, 0xd1, 0x2d, 0x63, 0x61, 0xed, 0x8a, 0x6e, 0x19, 0x0f, 0x66, 0x57, - 0x5b, 0xf9, 0xf0, 0x99, 0x37, 0x0c, 0x14, 0x09, 0x84, 0xcf, 0x7f, 0xd3, 0x60, 0x32, 0x09, 0x39, - 0xaf, 0x10, 0x67, 0xda, 0x40, 0xf7, 0x15, 0xe2, 0x4c, 0x3b, 0xd8, 0xbe, 0x7e, 0x97, 0x69, 0xba, - 0x48, 0x16, 0xd2, 0x34, 0x6d, 0x1d, 0x74, 0xb6, 0xd1, 0xf7, 0x1b, 0x1a, 0x8c, 0xc5, 0xa0, 0xcd, - 0xc9, 0xe5, 0x0c, 0x82, 0x46, 0xe6, 0xbe, 0x2b, 0x9d, 0x11, 0xa3, 0x82, 0x0b, 0x4c, 0xc1, 0x6b, - 0xe4, 0x8a, 0xa2, 0x82, 0xf1, 0xf3, 0xe0, 0xbf, 0x6a, 0x30, 0x11, 0x0f, 0xa0, 0x54, 0x58, 0x10, - 0xa5, 0x22, 0x78, 0x15, 0x16, 0x44, 0xe9, 0xc8, 0x4d, 0xfd, 0x83, 0x4c, 0xc3, 0x3b, 0x64, 0x29, - 0x8b, 0x86, 0xe9, 0xe3, 0xf1, 0xe7, 0x73, 0x70, 0x20, 0x1d, 0xb7, 0x49, 0x16, 0x33, 0xce, 0x71, - 0x49, 0xea, 0xdf, 0xda, 0x36, 0x1f, 0x34, 0xc3, 0x47, 0x98, 0x19, 0x1e, 0x92, 0x95, 0xce, 0xcd, - 0x90, 0x3c, 0x6f, 0xfe, 0x77, 0x60, 0x20, 0x87, 0x66, 0xcf, 0x1b, 0x59, 0x1d, 0x34, 0x32, 0x87, - 0xce, 0x6e, 0x83, 0xc3, 0xb6, 0xd4, 0x57, 0x9c, 0x4f, 0xff, 0x47, 0x83, 0x83, 0x61, 0x2f, 0x0c, - 0xcf, 0x47, 0xef, 0xf9, 0x38, 0xc8, 0x6a, 0x81, 0x4c, 0x33, 0xd4, 0x1f, 0x69, 0xb0, 0x27, 0x02, - 0xd5, 0x53, 0xd8, 0x28, 0x4d, 0x02, 0xdd, 0x2a, 0x6c, 0x94, 0x26, 0x22, 0x03, 0xf5, 0x73, 0x4c, - 0xd3, 0x93, 0x64, 0x4a, 0x35, 0x68, 0xa3, 0xb8, 0x5f, 0xd5, 0x60, 0x34, 0x02, 0x16, 0xbd, 0x90, - 0x59, 0x10, 0xf5, 0x3c, 0x22, 0x09, 0x31, 0xa8, 0xb6, 0x03, 0x12, 0xd5, 0x20, 0x10, 0x93, 0xbf, - 0xa3, 0xc1, 0xbe, 0x04, 0x8c, 0x1f, 0xb9, 0x9e, 0x59, 0xb4, 0x20, 0xc2, 0x30, 0x7f, 0xa3, 0x73, - 0x06, 0xa8, 0xe2, 0x12, 0x53, 0x71, 0x9e, 0xcc, 0x66, 0x52, 0x51, 0x84, 0x9c, 0x80, 0xa6, 0x7f, - 0xa5, 0xc1, 0x78, 0x1c, 0x28, 0x83, 0x5c, 0xc9, 0x90, 0x98, 0x46, 0xd0, 0x89, 0xf9, 0xab, 0x1d, - 0x52, 0x67, 0xd9, 0x9e, 0x90, 0x05, 0xe1, 0x01, 0xf5, 0x7b, 0x1a, 0x8c, 0x89, 0xfd, 0x73, 0x1f, - 0x34, 0x44, 0x61, 0x27, 0x28, 0x8a, 0x31, 0x51, 0xd8, 0x09, 0x8a, 0x41, 0x9f, 0xa8, 0xed, 0x04, - 0x55, 0x19, 0x61, 0x91, 0x01, 0x3e, 0xc8, 0x6f, 0x69, 0xd0, 0x2f, 0x21, 0x25, 0xe4, 0x54, 0xdb, - 0x56, 0xc3, 0xb8, 0x94, 0xfc, 0x4c, 0x16, 0x12, 0x14, 0xf3, 0x04, 0x13, 0xf3, 0x45, 0x72, 0x34, - 0x4d, 0xcc, 0xba, 0x94, 0xea, 0x2f, 0x35, 0x18, 0x8b, 0x41, 0x35, 0x92, 0x2c, 0x07, 0x4d, 0x11, - 0xb9, 0xaf, 0x74, 0x46, 0x9c, 0x65, 0xdb, 0x5d, 0x6a, 0x10, 0x71, 0x95, 0x7f, 0xd7, 0x20, 0x9f, - 0x8c, 0x9b, 0x24, 0x73, 0x1d, 0xc8, 0x16, 0x02, 0xa7, 0xe6, 0xe7, 0xb7, 0xc5, 0x23, 0xcb, 0x88, - 0x4f, 0x54, 0x33, 0x30, 0xe2, 0x7f, 0x29, 0x07, 0x47, 0x14, 0x70, 0x8b, 0xe4, 0x4e, 0x06, 0xb9, - 0xdb, 0x21, 0x74, 0xf3, 0x77, 0x77, 0x86, 0x19, 0x5a, 0x63, 0x85, 0x59, 0x63, 0x99, 0xdc, 0x49, - 0x0d, 0x0f, 0xf2, 0x7a, 0x82, 0x9a, 0x5d, 0xfe, 0x4e, 0x83, 0xb1, 0x18, 0x24, 0xa3, 0x82, 0x73, - 0x27, 0xc3, 0x30, 0x15, 0x9c, 0x3b, 0x05, 0x83, 0xa9, 0xdf, 0x64, 0x7a, 0x5e, 0x27, 0x57, 0x53, - 0x7b, 0x5d, 0x7e, 0x48, 0xc1, 0xf7, 0x69, 0x89, 0x80, 0x66, 0xdf, 0xd2, 0x60, 0x5f, 0x02, 0xd8, - 0x51, 0x61, 0x36, 0x4b, 0x47, 0x6d, 0x2a, 0xcc, 0x66, 0x6d, 0x20, 0x9b, 0xaa, 0x47, 0x16, 0x1e, - 0x93, 0x44, 0x15, 0xdf, 0xd6, 0x60, 0x22, 0x1e, 0x15, 0xa9, 0x90, 0x3c, 0xa6, 0x82, 0x3b, 0x15, - 0x92, 0xc7, 0x74, 0x64, 0xa7, 0x7e, 0x9b, 0xe9, 0x37, 0x47, 0x6e, 0x64, 0xea, 0x45, 0xfc, 0x1a, - 0x47, 0xa4, 0x23, 0x13, 0xe0, 0x9c, 0x0a, 0x1d, 0x99, 0x8e, 0x6d, 0x57, 0xe8, 0xc8, 0x36, 0x48, - 0x52, 0xb5, 0x8e, 0xe4, 0x57, 0xca, 0xc4, 0xa5, 0xcb, 0xb8, 0xed, 0xb5, 0x3d, 0x51, 0xc0, 0x99, - 0xe2, 0xb6, 0x52, 0x0c, 0x4e, 0x52, 0x21, 0x19, 0x4e, 0x84, 0x3b, 0xea, 0xe7, 0x99, 0x42, 0xa7, - 0xc8, 0x74, 0x9a, 0x42, 0x31, 0x48, 0x33, 0xf2, 0xd7, 0x1a, 0x4c, 0x3e, 0x68, 0x61, 0xd7, 0xbe, - 0x2f, 0x94, 0x51, 0xba, 0xd0, 0xe1, 0x47, 0xf5, 0x85, 0x95, 0xfa, 0xaa, 0xb8, 0xf3, 0x1c, 0x04, - 0x3d, 0x2a, 0x04, 0xc8, 0x64, 0x28, 0xa7, 0x42, 0x80, 0x4c, 0xc1, 0x78, 0xea, 0x17, 0x99, 0x4e, - 0xa7, 0xc9, 0x29, 0xe5, 0x0e, 0x12, 0xd0, 0x44, 0xf2, 0x96, 0x06, 0x13, 0xf1, 0x58, 0x34, 0x85, - 0x88, 0x91, 0x8a, 0x82, 0x53, 0x88, 0x18, 0xe9, 0x20, 0x38, 0xfd, 0x16, 0x53, 0x6b, 0x96, 0x5c, - 0x4f, 0x53, 0x2b, 0x00, 0x0d, 0xf3, 0x83, 0xe2, 0x7c, 0xd7, 0x23, 0xbc, 0x2e, 0x8b, 0x41, 0x82, - 0x29, 0x74, 0x59, 0x32, 0x76, 0x4d, 0xa1, 0xcb, 0x52, 0x40, 0x6d, 0x6a, 0x5d, 0x16, 0x0b, 0x7b, - 0x23, 0x5f, 0xd3, 0x60, 0x4f, 0x04, 0xbf, 0xa4, 0x30, 0x9c, 0x92, 0xa0, 0x6d, 0x0a, 0xc3, 0x29, - 0x11, 0x2e, 0xa5, 0xb6, 0xf9, 0x17, 0x05, 0x54, 0x4d, 0x3f, 0xf5, 0x81, 0xe9, 0x9e, 0x91, 0x7f, - 0xd4, 0x60, 0x5f, 0x02, 0xa4, 0x47, 0x21, 0xa2, 0xa7, 0xc3, 0xa9, 0x14, 0x22, 0x7a, 0x1b, 0x34, - 0x91, 0x5a, 0xcc, 0x10, 0xff, 0x1a, 0x26, 0x06, 0x70, 0x44, 0xfe, 0x49, 0x83, 0xfd, 0x89, 0xb0, - 0x1d, 0x32, 0x9b, 0xc5, 0x93, 0x62, 0x61, 0x45, 0xf9, 0xb9, 0xed, 0xb0, 0xc8, 0x72, 0xdd, 0x20, - 0xe0, 0x92, 0x0c, 0xa2, 0xea, 0xad, 0xdb, 0x1c, 0xf2, 0x69, 0x0d, 0x86, 0x83, 0x70, 0xa0, 0xf4, - 0xc5, 0x5b, 0x2c, 0xa8, 0x28, 0x7d, 0xf1, 0x16, 0x8f, 0x36, 0xd2, 0xcf, 0x30, 0xb1, 0xa7, 0xc8, - 0xcb, 0xa9, 0x6b, 0x4c, 0xd3, 0xb5, 0x8b, 0x1c, 0xc7, 0x63, 0x32, 0xe1, 0xbe, 0xae, 0xe1, 0xf7, - 0x0b, 0x22, 0x90, 0x1d, 0x85, 0x91, 0x94, 0x04, 0x16, 0x52, 0x18, 0x49, 0x89, 0x08, 0x21, 0xb5, - 0x5b, 0x37, 0x5c, 0x05, 0x99, 0x0b, 0x4d, 0x3f, 0x0d, 0x60, 0x93, 0x58, 0xf6, 0x3e, 0x11, 0x0f, - 0x01, 0x52, 0x08, 0xe7, 0xa9, 0xf0, 0x23, 0x85, 0x70, 0x9e, 0x8e, 0x3d, 0x52, 0xdb, 0xcd, 0xd8, - 0x90, 0x3c, 0x8a, 0x01, 0xa0, 0x12, 0x5b, 0x97, 0xc4, 0x40, 0xc5, 0x15, 0x62, 0x78, 0x32, 0x3a, - 0x5d, 0x21, 0x86, 0xa7, 0xa0, 0xd3, 0xd5, 0xd6, 0x25, 0x7e, 0xfc, 0x7a, 0xd1, 0x5e, 0xc7, 0x09, - 0xd8, 0xf1, 0xcd, 0x4e, 0xff, 0xac, 0xc1, 0xfe, 0x44, 0x54, 0xba, 0x42, 0x70, 0x68, 0x07, 0x7d, - 0x57, 0x08, 0x0e, 0x6d, 0x41, 0xf1, 0xfa, 0x2c, 0xd3, 0xf5, 0x32, 0xb9, 0x98, 0x9a, 0xd4, 0xc6, - 0x28, 0x5a, 0x94, 0x9f, 0xe3, 0xf8, 0x8a, 0x06, 0xa3, 0x61, 0x28, 0x93, 0xc2, 0xde, 0x68, 0x02, - 0x40, 0x2b, 0x7f, 0xb1, 0x03, 0xca, 0x2c, 0xca, 0xb4, 0xfe, 0x63, 0x14, 0x92, 0x07, 0xd6, 0x20, - 0x5f, 0xd4, 0x60, 0x3c, 0x06, 0x19, 0xa4, 0x72, 0x47, 0x2c, 0x0e, 0xc9, 0xa4, 0x70, 0xfd, 0x24, - 0x16, 0xcb, 0xa4, 0x76, 0xfa, 0xbd, 0xc6, 0x48, 0x05, 0x48, 0x4d, 0x6e, 0x56, 0xff, 0x6a, 0x0e, - 0x0e, 0xb7, 0xc5, 0xa8, 0x90, 0xa5, 0xcc, 0xa7, 0x06, 0x49, 0xe0, 0xa7, 0xfc, 0x2b, 0x3b, 0xc1, - 0x0a, 0x15, 0xff, 0x61, 0xa6, 0xf8, 0x6b, 0xe4, 0x61, 0xb6, 0xc3, 0xa8, 0x52, 0x8b, 0x61, 0xea, - 0x69, 0xc4, 0xf7, 0x34, 0xd0, 0xdb, 0xe3, 0x5c, 0xc8, 0x2b, 0x8a, 0x4e, 0xa8, 0x80, 0xbd, 0xc9, - 0xdf, 0xd9, 0x11, 0x5e, 0x59, 0x52, 0x16, 0x83, 0x71, 0xe2, 0x87, 0x33, 0x45, 0x6f, 0x66, 0x6f, - 0x81, 0x6e, 0xc8, 0x9f, 0x6a, 0x30, 0x1a, 0x46, 0xcd, 0xa8, 0x5c, 0x29, 0x8e, 0xc7, 0xe8, 0xa8, - 0x5c, 0x29, 0x4e, 0x80, 0xe8, 0xa8, 0x5d, 0x12, 0x33, 0xf8, 0x1e, 0x97, 0xe3, 0x91, 0x73, 0x94, - 0xc8, 0xf4, 0x53, 0x44, 0xbe, 0x3c, 0x23, 0xdf, 0xd4, 0x80, 0x44, 0x81, 0x1c, 0x0a, 0x97, 0x1f, - 0x12, 0x11, 0x38, 0x0a, 0x97, 0x1f, 0x92, 0x71, 0x36, 0x6a, 0x37, 0xad, 0x10, 0xea, 0xe2, 0x67, - 0x20, 0x54, 0x6a, 0x3c, 0xf3, 0x29, 0xf7, 0x75, 0x0d, 0xc6, 0x62, 0xb0, 0x33, 0xa4, 0x13, 0x09, - 0x33, 0x4c, 0x8c, 0x29, 0x70, 0x1d, 0xb5, 0x1d, 0x90, 0x18, 0xfd, 0x9c, 0x96, 0x82, 0x73, 0x1b, - 0x5f, 0x7e, 0xeb, 0x80, 0xf6, 0xb5, 0xb7, 0x0e, 0x68, 0xdf, 0x7a, 0xeb, 0x80, 0xf6, 0x8b, 0x6f, - 0x1f, 0xd8, 0xf5, 0xb5, 0xb7, 0x0f, 0xec, 0xfa, 0xfb, 0xb7, 0x0f, 0xec, 0x7a, 0xfd, 0x5e, 0xc5, - 0x74, 0x37, 0x9a, 0x6b, 0x53, 0x25, 0xbb, 0x3a, 0xbd, 0x24, 0xf8, 0xdf, 0x35, 0xd6, 0x9c, 0x56, - 0x6b, 0x27, 0x4a, 0x76, 0x83, 0xfa, 0x1f, 0x37, 0x0c, 0xb3, 0x86, 0x07, 0x0d, 0x4e, 0x4b, 0x14, - 0x77, 0xab, 0x4e, 0x9d, 0xb5, 0x5e, 0xf6, 0x4f, 0x68, 0x4f, 0xff, 0x6f, 0x00, 0x00, 0x00, 0xff, - 0xff, 0x1e, 0xed, 0xe6, 0xe6, 0x7a, 0x77, 0x00, 0x00, +func (m *QueryMarketBalanceRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) } - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConn - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion4 - -// QueryClient is the client API for Query service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type QueryClient interface { - // Retrieves exchange params - QueryExchangeParams(ctx context.Context, in *QueryExchangeParamsRequest, opts ...grpc.CallOption) (*QueryExchangeParamsResponse, error) - // Retrieves a Subaccount's Deposits - SubaccountDeposits(ctx context.Context, in *QuerySubaccountDepositsRequest, opts ...grpc.CallOption) (*QuerySubaccountDepositsResponse, error) - // Retrieves a Subaccount's Deposits - SubaccountDeposit(ctx context.Context, in *QuerySubaccountDepositRequest, opts ...grpc.CallOption) (*QuerySubaccountDepositResponse, error) - // Retrieves all of the balances of all users on the exchange. - ExchangeBalances(ctx context.Context, in *QueryExchangeBalancesRequest, opts ...grpc.CallOption) (*QueryExchangeBalancesResponse, error) - // Retrieves the aggregate volumes for the specified account or subaccount - AggregateVolume(ctx context.Context, in *QueryAggregateVolumeRequest, opts ...grpc.CallOption) (*QueryAggregateVolumeResponse, error) - // Retrieves the aggregate volumes for specified accounts - AggregateVolumes(ctx context.Context, in *QueryAggregateVolumesRequest, opts ...grpc.CallOption) (*QueryAggregateVolumesResponse, error) - // Retrieves the aggregate volume for the specified market - AggregateMarketVolume(ctx context.Context, in *QueryAggregateMarketVolumeRequest, opts ...grpc.CallOption) (*QueryAggregateMarketVolumeResponse, error) - // Retrieves the aggregate market volumes for specified markets - AggregateMarketVolumes(ctx context.Context, in *QueryAggregateMarketVolumesRequest, opts ...grpc.CallOption) (*QueryAggregateMarketVolumesResponse, error) - // Retrieves the denom decimals for a denom. - DenomDecimal(ctx context.Context, in *QueryDenomDecimalRequest, opts ...grpc.CallOption) (*QueryDenomDecimalResponse, error) - // Retrieves the denom decimals for multiple denoms. Returns all denom - // decimals if unspecified. - DenomDecimals(ctx context.Context, in *QueryDenomDecimalsRequest, opts ...grpc.CallOption) (*QueryDenomDecimalsResponse, error) - // Retrieves a list of spot markets. - SpotMarkets(ctx context.Context, in *QuerySpotMarketsRequest, opts ...grpc.CallOption) (*QuerySpotMarketsResponse, error) - // Retrieves a spot market by ticker - SpotMarket(ctx context.Context, in *QuerySpotMarketRequest, opts ...grpc.CallOption) (*QuerySpotMarketResponse, error) - // Retrieves a list of spot markets with extra information. - FullSpotMarkets(ctx context.Context, in *QueryFullSpotMarketsRequest, opts ...grpc.CallOption) (*QueryFullSpotMarketsResponse, error) - // Retrieves a spot market with extra information. - FullSpotMarket(ctx context.Context, in *QueryFullSpotMarketRequest, opts ...grpc.CallOption) (*QueryFullSpotMarketResponse, error) - // Retrieves a spot market's orderbook by marketID - SpotOrderbook(ctx context.Context, in *QuerySpotOrderbookRequest, opts ...grpc.CallOption) (*QuerySpotOrderbookResponse, error) - // Retrieves a trader's spot orders - TraderSpotOrders(ctx context.Context, in *QueryTraderSpotOrdersRequest, opts ...grpc.CallOption) (*QueryTraderSpotOrdersResponse, error) - // Retrieves all account address spot orders - AccountAddressSpotOrders(ctx context.Context, in *QueryAccountAddressSpotOrdersRequest, opts ...grpc.CallOption) (*QueryAccountAddressSpotOrdersResponse, error) - // Retrieves spot orders corresponding to specified order hashes for a given - // subaccountID and marketID - SpotOrdersByHashes(ctx context.Context, in *QuerySpotOrdersByHashesRequest, opts ...grpc.CallOption) (*QuerySpotOrdersByHashesResponse, error) - // Retrieves subaccount's orders - SubaccountOrders(ctx context.Context, in *QuerySubaccountOrdersRequest, opts ...grpc.CallOption) (*QuerySubaccountOrdersResponse, error) - // Retrieves a trader's transient spot orders - TraderSpotTransientOrders(ctx context.Context, in *QueryTraderSpotOrdersRequest, opts ...grpc.CallOption) (*QueryTraderSpotOrdersResponse, error) - // Retrieves a spot market's mid-price - SpotMidPriceAndTOB(ctx context.Context, in *QuerySpotMidPriceAndTOBRequest, opts ...grpc.CallOption) (*QuerySpotMidPriceAndTOBResponse, error) - // Retrieves a derivative market's mid-price - DerivativeMidPriceAndTOB(ctx context.Context, in *QueryDerivativeMidPriceAndTOBRequest, opts ...grpc.CallOption) (*QueryDerivativeMidPriceAndTOBResponse, error) - // Retrieves a derivative market's orderbook by marketID - DerivativeOrderbook(ctx context.Context, in *QueryDerivativeOrderbookRequest, opts ...grpc.CallOption) (*QueryDerivativeOrderbookResponse, error) - // Retrieves a trader's derivative orders - TraderDerivativeOrders(ctx context.Context, in *QueryTraderDerivativeOrdersRequest, opts ...grpc.CallOption) (*QueryTraderDerivativeOrdersResponse, error) - // Retrieves all account address derivative orders - AccountAddressDerivativeOrders(ctx context.Context, in *QueryAccountAddressDerivativeOrdersRequest, opts ...grpc.CallOption) (*QueryAccountAddressDerivativeOrdersResponse, error) - // Retrieves a trader's derivative orders - DerivativeOrdersByHashes(ctx context.Context, in *QueryDerivativeOrdersByHashesRequest, opts ...grpc.CallOption) (*QueryDerivativeOrdersByHashesResponse, error) - // Retrieves a trader's transient derivative orders - TraderDerivativeTransientOrders(ctx context.Context, in *QueryTraderDerivativeOrdersRequest, opts ...grpc.CallOption) (*QueryTraderDerivativeOrdersResponse, error) - // Retrieves a list of derivative markets. - DerivativeMarkets(ctx context.Context, in *QueryDerivativeMarketsRequest, opts ...grpc.CallOption) (*QueryDerivativeMarketsResponse, error) - // Retrieves a derivative market by ticker - DerivativeMarket(ctx context.Context, in *QueryDerivativeMarketRequest, opts ...grpc.CallOption) (*QueryDerivativeMarketResponse, error) - // Retrieves a derivative market's corresponding address for fees that - // contribute to the market's insurance fund - DerivativeMarketAddress(ctx context.Context, in *QueryDerivativeMarketAddressRequest, opts ...grpc.CallOption) (*QueryDerivativeMarketAddressResponse, error) - // Retrieves a subaccount's trade nonce - SubaccountTradeNonce(ctx context.Context, in *QuerySubaccountTradeNonceRequest, opts ...grpc.CallOption) (*QuerySubaccountTradeNonceResponse, error) - // Retrieves the entire exchange module's state - ExchangeModuleState(ctx context.Context, in *QueryModuleStateRequest, opts ...grpc.CallOption) (*QueryModuleStateResponse, error) - // Retrieves the entire exchange module's positions - Positions(ctx context.Context, in *QueryPositionsRequest, opts ...grpc.CallOption) (*QueryPositionsResponse, error) - // Retrieves subaccount's positions - SubaccountPositions(ctx context.Context, in *QuerySubaccountPositionsRequest, opts ...grpc.CallOption) (*QuerySubaccountPositionsResponse, error) - // Retrieves subaccount's position in market - SubaccountPositionInMarket(ctx context.Context, in *QuerySubaccountPositionInMarketRequest, opts ...grpc.CallOption) (*QuerySubaccountPositionInMarketResponse, error) - // Retrieves subaccount's position in market - SubaccountEffectivePositionInMarket(ctx context.Context, in *QuerySubaccountEffectivePositionInMarketRequest, opts ...grpc.CallOption) (*QuerySubaccountEffectivePositionInMarketResponse, error) - // Retrieves perpetual market info - PerpetualMarketInfo(ctx context.Context, in *QueryPerpetualMarketInfoRequest, opts ...grpc.CallOption) (*QueryPerpetualMarketInfoResponse, error) - // Retrieves expiry market info - ExpiryFuturesMarketInfo(ctx context.Context, in *QueryExpiryFuturesMarketInfoRequest, opts ...grpc.CallOption) (*QueryExpiryFuturesMarketInfoResponse, error) - // Retrieves perpetual market funding - PerpetualMarketFunding(ctx context.Context, in *QueryPerpetualMarketFundingRequest, opts ...grpc.CallOption) (*QueryPerpetualMarketFundingResponse, error) - // Retrieves subaccount's order metadata - SubaccountOrderMetadata(ctx context.Context, in *QuerySubaccountOrderMetadataRequest, opts ...grpc.CallOption) (*QuerySubaccountOrderMetadataResponse, error) - // Retrieves the account and total trade rewards points - TradeRewardPoints(ctx context.Context, in *QueryTradeRewardPointsRequest, opts ...grpc.CallOption) (*QueryTradeRewardPointsResponse, error) - // Retrieves the pending account and total trade rewards points - PendingTradeRewardPoints(ctx context.Context, in *QueryTradeRewardPointsRequest, opts ...grpc.CallOption) (*QueryTradeRewardPointsResponse, error) - // Retrieves the trade reward campaign - TradeRewardCampaign(ctx context.Context, in *QueryTradeRewardCampaignRequest, opts ...grpc.CallOption) (*QueryTradeRewardCampaignResponse, error) - // Retrieves the account's fee discount info - FeeDiscountAccountInfo(ctx context.Context, in *QueryFeeDiscountAccountInfoRequest, opts ...grpc.CallOption) (*QueryFeeDiscountAccountInfoResponse, error) - // Retrieves the fee discount schedule - FeeDiscountSchedule(ctx context.Context, in *QueryFeeDiscountScheduleRequest, opts ...grpc.CallOption) (*QueryFeeDiscountScheduleResponse, error) - // Retrieves mismatches between available vs. total balance - BalanceMismatches(ctx context.Context, in *QueryBalanceMismatchesRequest, opts ...grpc.CallOption) (*QueryBalanceMismatchesResponse, error) - // Retrieves available and total balances with balance holds - BalanceWithBalanceHolds(ctx context.Context, in *QueryBalanceWithBalanceHoldsRequest, opts ...grpc.CallOption) (*QueryBalanceWithBalanceHoldsResponse, error) - // Retrieves fee discount tier stats - FeeDiscountTierStatistics(ctx context.Context, in *QueryFeeDiscountTierStatisticsRequest, opts ...grpc.CallOption) (*QueryFeeDiscountTierStatisticsResponse, error) - // Retrieves market making pool info - MitoVaultInfos(ctx context.Context, in *MitoVaultInfosRequest, opts ...grpc.CallOption) (*MitoVaultInfosResponse, error) - // QueryMarketIDFromVault returns the market ID for a given vault subaccount - // ID - QueryMarketIDFromVault(ctx context.Context, in *QueryMarketIDFromVaultRequest, opts ...grpc.CallOption) (*QueryMarketIDFromVaultResponse, error) - // Retrieves historical trade records for a given market ID - HistoricalTradeRecords(ctx context.Context, in *QueryHistoricalTradeRecordsRequest, opts ...grpc.CallOption) (*QueryHistoricalTradeRecordsResponse, error) - // Retrieves if the account is opted out of rewards - IsOptedOutOfRewards(ctx context.Context, in *QueryIsOptedOutOfRewardsRequest, opts ...grpc.CallOption) (*QueryIsOptedOutOfRewardsResponse, error) - // Retrieves all accounts opted out of rewards - OptedOutOfRewardsAccounts(ctx context.Context, in *QueryOptedOutOfRewardsAccountsRequest, opts ...grpc.CallOption) (*QueryOptedOutOfRewardsAccountsResponse, error) - // MarketVolatility computes the volatility for spot and derivative markets - // trading history. - MarketVolatility(ctx context.Context, in *QueryMarketVolatilityRequest, opts ...grpc.CallOption) (*QueryMarketVolatilityResponse, error) - // Retrieves a spot market's orderbook by marketID - BinaryOptionsMarkets(ctx context.Context, in *QueryBinaryMarketsRequest, opts ...grpc.CallOption) (*QueryBinaryMarketsResponse, error) - // Retrieves a trader's derivative conditional orders - TraderDerivativeConditionalOrders(ctx context.Context, in *QueryTraderDerivativeConditionalOrdersRequest, opts ...grpc.CallOption) (*QueryTraderDerivativeConditionalOrdersResponse, error) - MarketAtomicExecutionFeeMultiplier(ctx context.Context, in *QueryMarketAtomicExecutionFeeMultiplierRequest, opts ...grpc.CallOption) (*QueryMarketAtomicExecutionFeeMultiplierResponse, error) - // Retrieves the active stake grant for a grantee - ActiveStakeGrant(ctx context.Context, in *QueryActiveStakeGrantRequest, opts ...grpc.CallOption) (*QueryActiveStakeGrantResponse, error) - // Retrieves the grant authorization amount for a granter and grantee - GrantAuthorization(ctx context.Context, in *QueryGrantAuthorizationRequest, opts ...grpc.CallOption) (*QueryGrantAuthorizationResponse, error) - // Retrieves the grant authorization amount for a granter and grantee - GrantAuthorizations(ctx context.Context, in *QueryGrantAuthorizationsRequest, opts ...grpc.CallOption) (*QueryGrantAuthorizationsResponse, error) +func (m *QueryMarketBalanceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryMarketBalanceRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } } - -type queryClient struct { - cc grpc1.ClientConn +func (m *QueryMarketBalanceRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryMarketBalanceRequest.Merge(m, src) } - -func NewQueryClient(cc grpc1.ClientConn) QueryClient { - return &queryClient{cc} +func (m *QueryMarketBalanceRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryMarketBalanceRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryMarketBalanceRequest.DiscardUnknown(m) } -func (c *queryClient) QueryExchangeParams(ctx context.Context, in *QueryExchangeParamsRequest, opts ...grpc.CallOption) (*QueryExchangeParamsResponse, error) { - out := new(QueryExchangeParamsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/QueryExchangeParams", in, out, opts...) - if err != nil { - return nil, err +var xxx_messageInfo_QueryMarketBalanceRequest proto.InternalMessageInfo + +func (m *QueryMarketBalanceRequest) GetMarketId() string { + if m != nil { + return m.MarketId } - return out, nil + return "" } -func (c *queryClient) SubaccountDeposits(ctx context.Context, in *QuerySubaccountDepositsRequest, opts ...grpc.CallOption) (*QuerySubaccountDepositsResponse, error) { - out := new(QuerySubaccountDepositsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountDeposits", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +type QueryMarketBalanceResponse struct { + Balance cosmossdk_io_math.LegacyDec `protobuf:"bytes,1,opt,name=balance,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"balance"` } -func (c *queryClient) SubaccountDeposit(ctx context.Context, in *QuerySubaccountDepositRequest, opts ...grpc.CallOption) (*QuerySubaccountDepositResponse, error) { - out := new(QuerySubaccountDepositResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountDeposit", in, out, opts...) - if err != nil { - return nil, err +func (m *QueryMarketBalanceResponse) Reset() { *m = QueryMarketBalanceResponse{} } +func (m *QueryMarketBalanceResponse) String() string { return proto.CompactTextString(m) } +func (*QueryMarketBalanceResponse) ProtoMessage() {} +func (*QueryMarketBalanceResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_523db28b8af54781, []int{136} +} +func (m *QueryMarketBalanceResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryMarketBalanceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryMarketBalanceResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return out, nil +} +func (m *QueryMarketBalanceResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryMarketBalanceResponse.Merge(m, src) +} +func (m *QueryMarketBalanceResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryMarketBalanceResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryMarketBalanceResponse.DiscardUnknown(m) } -func (c *queryClient) ExchangeBalances(ctx context.Context, in *QueryExchangeBalancesRequest, opts ...grpc.CallOption) (*QueryExchangeBalancesResponse, error) { - out := new(QueryExchangeBalancesResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/ExchangeBalances", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +var xxx_messageInfo_QueryMarketBalanceResponse proto.InternalMessageInfo + +type QueryMarketBalancesRequest struct { } -func (c *queryClient) AggregateVolume(ctx context.Context, in *QueryAggregateVolumeRequest, opts ...grpc.CallOption) (*QueryAggregateVolumeResponse, error) { - out := new(QueryAggregateVolumeResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/AggregateVolume", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +func (m *QueryMarketBalancesRequest) Reset() { *m = QueryMarketBalancesRequest{} } +func (m *QueryMarketBalancesRequest) String() string { return proto.CompactTextString(m) } +func (*QueryMarketBalancesRequest) ProtoMessage() {} +func (*QueryMarketBalancesRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_523db28b8af54781, []int{137} } - -func (c *queryClient) AggregateVolumes(ctx context.Context, in *QueryAggregateVolumesRequest, opts ...grpc.CallOption) (*QueryAggregateVolumesResponse, error) { - out := new(QueryAggregateVolumesResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/AggregateVolumes", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +func (m *QueryMarketBalancesRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) } - -func (c *queryClient) AggregateMarketVolume(ctx context.Context, in *QueryAggregateMarketVolumeRequest, opts ...grpc.CallOption) (*QueryAggregateMarketVolumeResponse, error) { - out := new(QueryAggregateMarketVolumeResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/AggregateMarketVolume", in, out, opts...) - if err != nil { - return nil, err +func (m *QueryMarketBalancesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryMarketBalancesRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return out, nil } - -func (c *queryClient) AggregateMarketVolumes(ctx context.Context, in *QueryAggregateMarketVolumesRequest, opts ...grpc.CallOption) (*QueryAggregateMarketVolumesResponse, error) { - out := new(QueryAggregateMarketVolumesResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/AggregateMarketVolumes", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +func (m *QueryMarketBalancesRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryMarketBalancesRequest.Merge(m, src) +} +func (m *QueryMarketBalancesRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryMarketBalancesRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryMarketBalancesRequest.DiscardUnknown(m) } -func (c *queryClient) DenomDecimal(ctx context.Context, in *QueryDenomDecimalRequest, opts ...grpc.CallOption) (*QueryDenomDecimalResponse, error) { - out := new(QueryDenomDecimalResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DenomDecimal", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +var xxx_messageInfo_QueryMarketBalancesRequest proto.InternalMessageInfo + +type QueryMarketBalancesResponse struct { + Balances []*MarketBalance `protobuf:"bytes,1,rep,name=balances,proto3" json:"balances,omitempty"` } -func (c *queryClient) DenomDecimals(ctx context.Context, in *QueryDenomDecimalsRequest, opts ...grpc.CallOption) (*QueryDenomDecimalsResponse, error) { - out := new(QueryDenomDecimalsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DenomDecimals", in, out, opts...) - if err != nil { - return nil, err +func (m *QueryMarketBalancesResponse) Reset() { *m = QueryMarketBalancesResponse{} } +func (m *QueryMarketBalancesResponse) String() string { return proto.CompactTextString(m) } +func (*QueryMarketBalancesResponse) ProtoMessage() {} +func (*QueryMarketBalancesResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_523db28b8af54781, []int{138} +} +func (m *QueryMarketBalancesResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryMarketBalancesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryMarketBalancesResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return out, nil +} +func (m *QueryMarketBalancesResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryMarketBalancesResponse.Merge(m, src) +} +func (m *QueryMarketBalancesResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryMarketBalancesResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryMarketBalancesResponse.DiscardUnknown(m) } -func (c *queryClient) SpotMarkets(ctx context.Context, in *QuerySpotMarketsRequest, opts ...grpc.CallOption) (*QuerySpotMarketsResponse, error) { - out := new(QuerySpotMarketsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SpotMarkets", in, out, opts...) - if err != nil { - return nil, err +var xxx_messageInfo_QueryMarketBalancesResponse proto.InternalMessageInfo + +func (m *QueryMarketBalancesResponse) GetBalances() []*MarketBalance { + if m != nil { + return m.Balances } - return out, nil + return nil } -func (c *queryClient) SpotMarket(ctx context.Context, in *QuerySpotMarketRequest, opts ...grpc.CallOption) (*QuerySpotMarketResponse, error) { - out := new(QuerySpotMarketResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SpotMarket", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +type MarketBalance struct { + MarketId string `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` + Balance cosmossdk_io_math.LegacyDec `protobuf:"bytes,2,opt,name=balance,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"balance"` } -func (c *queryClient) FullSpotMarkets(ctx context.Context, in *QueryFullSpotMarketsRequest, opts ...grpc.CallOption) (*QueryFullSpotMarketsResponse, error) { - out := new(QueryFullSpotMarketsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/FullSpotMarkets", in, out, opts...) - if err != nil { - return nil, err +func (m *MarketBalance) Reset() { *m = MarketBalance{} } +func (m *MarketBalance) String() string { return proto.CompactTextString(m) } +func (*MarketBalance) ProtoMessage() {} +func (*MarketBalance) Descriptor() ([]byte, []int) { + return fileDescriptor_523db28b8af54781, []int{139} +} +func (m *MarketBalance) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MarketBalance) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MarketBalance.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return out, nil +} +func (m *MarketBalance) XXX_Merge(src proto.Message) { + xxx_messageInfo_MarketBalance.Merge(m, src) +} +func (m *MarketBalance) XXX_Size() int { + return m.Size() +} +func (m *MarketBalance) XXX_DiscardUnknown() { + xxx_messageInfo_MarketBalance.DiscardUnknown(m) } -func (c *queryClient) FullSpotMarket(ctx context.Context, in *QueryFullSpotMarketRequest, opts ...grpc.CallOption) (*QueryFullSpotMarketResponse, error) { - out := new(QueryFullSpotMarketResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/FullSpotMarket", in, out, opts...) - if err != nil { - return nil, err +var xxx_messageInfo_MarketBalance proto.InternalMessageInfo + +func (m *MarketBalance) GetMarketId() string { + if m != nil { + return m.MarketId } - return out, nil + return "" } -func (c *queryClient) SpotOrderbook(ctx context.Context, in *QuerySpotOrderbookRequest, opts ...grpc.CallOption) (*QuerySpotOrderbookResponse, error) { - out := new(QuerySpotOrderbookResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SpotOrderbook", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +type QueryDenomMinNotionalRequest struct { + Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` } -func (c *queryClient) TraderSpotOrders(ctx context.Context, in *QueryTraderSpotOrdersRequest, opts ...grpc.CallOption) (*QueryTraderSpotOrdersResponse, error) { - out := new(QueryTraderSpotOrdersResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/TraderSpotOrders", in, out, opts...) - if err != nil { - return nil, err +func (m *QueryDenomMinNotionalRequest) Reset() { *m = QueryDenomMinNotionalRequest{} } +func (m *QueryDenomMinNotionalRequest) String() string { return proto.CompactTextString(m) } +func (*QueryDenomMinNotionalRequest) ProtoMessage() {} +func (*QueryDenomMinNotionalRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_523db28b8af54781, []int{140} +} +func (m *QueryDenomMinNotionalRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryDenomMinNotionalRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryDenomMinNotionalRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return out, nil +} +func (m *QueryDenomMinNotionalRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryDenomMinNotionalRequest.Merge(m, src) +} +func (m *QueryDenomMinNotionalRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryDenomMinNotionalRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryDenomMinNotionalRequest.DiscardUnknown(m) } -func (c *queryClient) AccountAddressSpotOrders(ctx context.Context, in *QueryAccountAddressSpotOrdersRequest, opts ...grpc.CallOption) (*QueryAccountAddressSpotOrdersResponse, error) { - out := new(QueryAccountAddressSpotOrdersResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/AccountAddressSpotOrders", in, out, opts...) - if err != nil { - return nil, err +var xxx_messageInfo_QueryDenomMinNotionalRequest proto.InternalMessageInfo + +func (m *QueryDenomMinNotionalRequest) GetDenom() string { + if m != nil { + return m.Denom } - return out, nil + return "" } -func (c *queryClient) SpotOrdersByHashes(ctx context.Context, in *QuerySpotOrdersByHashesRequest, opts ...grpc.CallOption) (*QuerySpotOrdersByHashesResponse, error) { - out := new(QuerySpotOrdersByHashesResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SpotOrdersByHashes", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +type QueryDenomMinNotionalResponse struct { + Amount cosmossdk_io_math.LegacyDec `protobuf:"bytes,1,opt,name=amount,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"amount"` } -func (c *queryClient) SubaccountOrders(ctx context.Context, in *QuerySubaccountOrdersRequest, opts ...grpc.CallOption) (*QuerySubaccountOrdersResponse, error) { - out := new(QuerySubaccountOrdersResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountOrders", in, out, opts...) - if err != nil { - return nil, err +func (m *QueryDenomMinNotionalResponse) Reset() { *m = QueryDenomMinNotionalResponse{} } +func (m *QueryDenomMinNotionalResponse) String() string { return proto.CompactTextString(m) } +func (*QueryDenomMinNotionalResponse) ProtoMessage() {} +func (*QueryDenomMinNotionalResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_523db28b8af54781, []int{141} +} +func (m *QueryDenomMinNotionalResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryDenomMinNotionalResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryDenomMinNotionalResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return out, nil +} +func (m *QueryDenomMinNotionalResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryDenomMinNotionalResponse.Merge(m, src) +} +func (m *QueryDenomMinNotionalResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryDenomMinNotionalResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryDenomMinNotionalResponse.DiscardUnknown(m) } -func (c *queryClient) TraderSpotTransientOrders(ctx context.Context, in *QueryTraderSpotOrdersRequest, opts ...grpc.CallOption) (*QueryTraderSpotOrdersResponse, error) { - out := new(QueryTraderSpotOrdersResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/TraderSpotTransientOrders", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +var xxx_messageInfo_QueryDenomMinNotionalResponse proto.InternalMessageInfo + +type QueryDenomMinNotionalsRequest struct { } -func (c *queryClient) SpotMidPriceAndTOB(ctx context.Context, in *QuerySpotMidPriceAndTOBRequest, opts ...grpc.CallOption) (*QuerySpotMidPriceAndTOBResponse, error) { - out := new(QuerySpotMidPriceAndTOBResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SpotMidPriceAndTOB", in, out, opts...) - if err != nil { - return nil, err +func (m *QueryDenomMinNotionalsRequest) Reset() { *m = QueryDenomMinNotionalsRequest{} } +func (m *QueryDenomMinNotionalsRequest) String() string { return proto.CompactTextString(m) } +func (*QueryDenomMinNotionalsRequest) ProtoMessage() {} +func (*QueryDenomMinNotionalsRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_523db28b8af54781, []int{142} +} +func (m *QueryDenomMinNotionalsRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryDenomMinNotionalsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryDenomMinNotionalsRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return out, nil +} +func (m *QueryDenomMinNotionalsRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryDenomMinNotionalsRequest.Merge(m, src) +} +func (m *QueryDenomMinNotionalsRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryDenomMinNotionalsRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryDenomMinNotionalsRequest.DiscardUnknown(m) } -func (c *queryClient) DerivativeMidPriceAndTOB(ctx context.Context, in *QueryDerivativeMidPriceAndTOBRequest, opts ...grpc.CallOption) (*QueryDerivativeMidPriceAndTOBResponse, error) { - out := new(QueryDerivativeMidPriceAndTOBResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DerivativeMidPriceAndTOB", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +var xxx_messageInfo_QueryDenomMinNotionalsRequest proto.InternalMessageInfo + +type QueryDenomMinNotionalsResponse struct { + DenomMinNotionals []*DenomMinNotional `protobuf:"bytes,1,rep,name=denom_min_notionals,json=denomMinNotionals,proto3" json:"denom_min_notionals,omitempty"` } -func (c *queryClient) DerivativeOrderbook(ctx context.Context, in *QueryDerivativeOrderbookRequest, opts ...grpc.CallOption) (*QueryDerivativeOrderbookResponse, error) { - out := new(QueryDerivativeOrderbookResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DerivativeOrderbook", in, out, opts...) - if err != nil { - return nil, err +func (m *QueryDenomMinNotionalsResponse) Reset() { *m = QueryDenomMinNotionalsResponse{} } +func (m *QueryDenomMinNotionalsResponse) String() string { return proto.CompactTextString(m) } +func (*QueryDenomMinNotionalsResponse) ProtoMessage() {} +func (*QueryDenomMinNotionalsResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_523db28b8af54781, []int{143} +} +func (m *QueryDenomMinNotionalsResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryDenomMinNotionalsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryDenomMinNotionalsResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return out, nil +} +func (m *QueryDenomMinNotionalsResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryDenomMinNotionalsResponse.Merge(m, src) +} +func (m *QueryDenomMinNotionalsResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryDenomMinNotionalsResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryDenomMinNotionalsResponse.DiscardUnknown(m) } -func (c *queryClient) TraderDerivativeOrders(ctx context.Context, in *QueryTraderDerivativeOrdersRequest, opts ...grpc.CallOption) (*QueryTraderDerivativeOrdersResponse, error) { - out := new(QueryTraderDerivativeOrdersResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/TraderDerivativeOrders", in, out, opts...) - if err != nil { - return nil, err +var xxx_messageInfo_QueryDenomMinNotionalsResponse proto.InternalMessageInfo + +func (m *QueryDenomMinNotionalsResponse) GetDenomMinNotionals() []*DenomMinNotional { + if m != nil { + return m.DenomMinNotionals } - return out, nil + return nil } -func (c *queryClient) AccountAddressDerivativeOrders(ctx context.Context, in *QueryAccountAddressDerivativeOrdersRequest, opts ...grpc.CallOption) (*QueryAccountAddressDerivativeOrdersResponse, error) { - out := new(QueryAccountAddressDerivativeOrdersResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/AccountAddressDerivativeOrders", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *queryClient) DerivativeOrdersByHashes(ctx context.Context, in *QueryDerivativeOrdersByHashesRequest, opts ...grpc.CallOption) (*QueryDerivativeOrdersByHashesResponse, error) { - out := new(QueryDerivativeOrdersByHashesResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DerivativeOrdersByHashes", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *queryClient) TraderDerivativeTransientOrders(ctx context.Context, in *QueryTraderDerivativeOrdersRequest, opts ...grpc.CallOption) (*QueryTraderDerivativeOrdersResponse, error) { - out := new(QueryTraderDerivativeOrdersResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/TraderDerivativeTransientOrders", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *queryClient) DerivativeMarkets(ctx context.Context, in *QueryDerivativeMarketsRequest, opts ...grpc.CallOption) (*QueryDerivativeMarketsResponse, error) { - out := new(QueryDerivativeMarketsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DerivativeMarkets", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *queryClient) DerivativeMarket(ctx context.Context, in *QueryDerivativeMarketRequest, opts ...grpc.CallOption) (*QueryDerivativeMarketResponse, error) { - out := new(QueryDerivativeMarketResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DerivativeMarket", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *queryClient) DerivativeMarketAddress(ctx context.Context, in *QueryDerivativeMarketAddressRequest, opts ...grpc.CallOption) (*QueryDerivativeMarketAddressResponse, error) { - out := new(QueryDerivativeMarketAddressResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DerivativeMarketAddress", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *queryClient) SubaccountTradeNonce(ctx context.Context, in *QuerySubaccountTradeNonceRequest, opts ...grpc.CallOption) (*QuerySubaccountTradeNonceResponse, error) { - out := new(QuerySubaccountTradeNonceResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountTradeNonce", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *queryClient) ExchangeModuleState(ctx context.Context, in *QueryModuleStateRequest, opts ...grpc.CallOption) (*QueryModuleStateResponse, error) { - out := new(QueryModuleStateResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/ExchangeModuleState", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *queryClient) Positions(ctx context.Context, in *QueryPositionsRequest, opts ...grpc.CallOption) (*QueryPositionsResponse, error) { - out := new(QueryPositionsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/Positions", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *queryClient) SubaccountPositions(ctx context.Context, in *QuerySubaccountPositionsRequest, opts ...grpc.CallOption) (*QuerySubaccountPositionsResponse, error) { - out := new(QuerySubaccountPositionsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountPositions", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +func init() { + proto.RegisterEnum("injective.exchange.v1beta1.OrderSide", OrderSide_name, OrderSide_value) + proto.RegisterEnum("injective.exchange.v1beta1.CancellationStrategy", CancellationStrategy_name, CancellationStrategy_value) + proto.RegisterType((*Subaccount)(nil), "injective.exchange.v1beta1.Subaccount") + proto.RegisterType((*QuerySubaccountOrdersRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountOrdersRequest") + proto.RegisterType((*QuerySubaccountOrdersResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountOrdersResponse") + proto.RegisterType((*SubaccountOrderbookMetadataWithMarket)(nil), "injective.exchange.v1beta1.SubaccountOrderbookMetadataWithMarket") + proto.RegisterType((*QueryExchangeParamsRequest)(nil), "injective.exchange.v1beta1.QueryExchangeParamsRequest") + proto.RegisterType((*QueryExchangeParamsResponse)(nil), "injective.exchange.v1beta1.QueryExchangeParamsResponse") + proto.RegisterType((*QuerySubaccountDepositsRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountDepositsRequest") + proto.RegisterType((*QuerySubaccountDepositsResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountDepositsResponse") + proto.RegisterMapType((map[string]*Deposit)(nil), "injective.exchange.v1beta1.QuerySubaccountDepositsResponse.DepositsEntry") + proto.RegisterType((*QueryExchangeBalancesRequest)(nil), "injective.exchange.v1beta1.QueryExchangeBalancesRequest") + proto.RegisterType((*QueryExchangeBalancesResponse)(nil), "injective.exchange.v1beta1.QueryExchangeBalancesResponse") + proto.RegisterType((*QueryAggregateVolumeRequest)(nil), "injective.exchange.v1beta1.QueryAggregateVolumeRequest") + proto.RegisterType((*QueryAggregateVolumeResponse)(nil), "injective.exchange.v1beta1.QueryAggregateVolumeResponse") + proto.RegisterType((*QueryAggregateVolumesRequest)(nil), "injective.exchange.v1beta1.QueryAggregateVolumesRequest") + proto.RegisterType((*QueryAggregateVolumesResponse)(nil), "injective.exchange.v1beta1.QueryAggregateVolumesResponse") + proto.RegisterType((*QueryAggregateMarketVolumeRequest)(nil), "injective.exchange.v1beta1.QueryAggregateMarketVolumeRequest") + proto.RegisterType((*QueryAggregateMarketVolumeResponse)(nil), "injective.exchange.v1beta1.QueryAggregateMarketVolumeResponse") + proto.RegisterType((*QueryDenomDecimalRequest)(nil), "injective.exchange.v1beta1.QueryDenomDecimalRequest") + proto.RegisterType((*QueryDenomDecimalResponse)(nil), "injective.exchange.v1beta1.QueryDenomDecimalResponse") + proto.RegisterType((*QueryDenomDecimalsRequest)(nil), "injective.exchange.v1beta1.QueryDenomDecimalsRequest") + proto.RegisterType((*QueryDenomDecimalsResponse)(nil), "injective.exchange.v1beta1.QueryDenomDecimalsResponse") + proto.RegisterType((*QueryAggregateMarketVolumesRequest)(nil), "injective.exchange.v1beta1.QueryAggregateMarketVolumesRequest") + proto.RegisterType((*QueryAggregateMarketVolumesResponse)(nil), "injective.exchange.v1beta1.QueryAggregateMarketVolumesResponse") + proto.RegisterType((*QuerySubaccountDepositRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountDepositRequest") + proto.RegisterType((*QuerySubaccountDepositResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountDepositResponse") + proto.RegisterType((*QuerySpotMarketsRequest)(nil), "injective.exchange.v1beta1.QuerySpotMarketsRequest") + proto.RegisterType((*QuerySpotMarketsResponse)(nil), "injective.exchange.v1beta1.QuerySpotMarketsResponse") + proto.RegisterType((*QuerySpotMarketRequest)(nil), "injective.exchange.v1beta1.QuerySpotMarketRequest") + proto.RegisterType((*QuerySpotMarketResponse)(nil), "injective.exchange.v1beta1.QuerySpotMarketResponse") + proto.RegisterType((*QuerySpotOrderbookRequest)(nil), "injective.exchange.v1beta1.QuerySpotOrderbookRequest") + proto.RegisterType((*QuerySpotOrderbookResponse)(nil), "injective.exchange.v1beta1.QuerySpotOrderbookResponse") + proto.RegisterType((*FullSpotMarket)(nil), "injective.exchange.v1beta1.FullSpotMarket") + proto.RegisterType((*QueryFullSpotMarketsRequest)(nil), "injective.exchange.v1beta1.QueryFullSpotMarketsRequest") + proto.RegisterType((*QueryFullSpotMarketsResponse)(nil), "injective.exchange.v1beta1.QueryFullSpotMarketsResponse") + proto.RegisterType((*QueryFullSpotMarketRequest)(nil), "injective.exchange.v1beta1.QueryFullSpotMarketRequest") + proto.RegisterType((*QueryFullSpotMarketResponse)(nil), "injective.exchange.v1beta1.QueryFullSpotMarketResponse") + proto.RegisterType((*QuerySpotOrdersByHashesRequest)(nil), "injective.exchange.v1beta1.QuerySpotOrdersByHashesRequest") + proto.RegisterType((*QuerySpotOrdersByHashesResponse)(nil), "injective.exchange.v1beta1.QuerySpotOrdersByHashesResponse") + proto.RegisterType((*QueryTraderSpotOrdersRequest)(nil), "injective.exchange.v1beta1.QueryTraderSpotOrdersRequest") + proto.RegisterType((*QueryAccountAddressSpotOrdersRequest)(nil), "injective.exchange.v1beta1.QueryAccountAddressSpotOrdersRequest") + proto.RegisterType((*TrimmedSpotLimitOrder)(nil), "injective.exchange.v1beta1.TrimmedSpotLimitOrder") + proto.RegisterType((*QueryTraderSpotOrdersResponse)(nil), "injective.exchange.v1beta1.QueryTraderSpotOrdersResponse") + proto.RegisterType((*QueryAccountAddressSpotOrdersResponse)(nil), "injective.exchange.v1beta1.QueryAccountAddressSpotOrdersResponse") + proto.RegisterType((*QuerySpotMidPriceAndTOBRequest)(nil), "injective.exchange.v1beta1.QuerySpotMidPriceAndTOBRequest") + proto.RegisterType((*QuerySpotMidPriceAndTOBResponse)(nil), "injective.exchange.v1beta1.QuerySpotMidPriceAndTOBResponse") + proto.RegisterType((*QueryDerivativeMidPriceAndTOBRequest)(nil), "injective.exchange.v1beta1.QueryDerivativeMidPriceAndTOBRequest") + proto.RegisterType((*QueryDerivativeMidPriceAndTOBResponse)(nil), "injective.exchange.v1beta1.QueryDerivativeMidPriceAndTOBResponse") + proto.RegisterType((*QueryDerivativeOrderbookRequest)(nil), "injective.exchange.v1beta1.QueryDerivativeOrderbookRequest") + proto.RegisterType((*QueryDerivativeOrderbookResponse)(nil), "injective.exchange.v1beta1.QueryDerivativeOrderbookResponse") + proto.RegisterType((*QueryTraderSpotOrdersToCancelUpToAmountRequest)(nil), "injective.exchange.v1beta1.QueryTraderSpotOrdersToCancelUpToAmountRequest") + proto.RegisterType((*QueryTraderDerivativeOrdersToCancelUpToAmountRequest)(nil), "injective.exchange.v1beta1.QueryTraderDerivativeOrdersToCancelUpToAmountRequest") + proto.RegisterType((*QueryTraderDerivativeOrdersRequest)(nil), "injective.exchange.v1beta1.QueryTraderDerivativeOrdersRequest") + proto.RegisterType((*QueryAccountAddressDerivativeOrdersRequest)(nil), "injective.exchange.v1beta1.QueryAccountAddressDerivativeOrdersRequest") + proto.RegisterType((*TrimmedDerivativeLimitOrder)(nil), "injective.exchange.v1beta1.TrimmedDerivativeLimitOrder") + proto.RegisterType((*QueryTraderDerivativeOrdersResponse)(nil), "injective.exchange.v1beta1.QueryTraderDerivativeOrdersResponse") + proto.RegisterType((*QueryAccountAddressDerivativeOrdersResponse)(nil), "injective.exchange.v1beta1.QueryAccountAddressDerivativeOrdersResponse") + proto.RegisterType((*QueryDerivativeOrdersByHashesRequest)(nil), "injective.exchange.v1beta1.QueryDerivativeOrdersByHashesRequest") + proto.RegisterType((*QueryDerivativeOrdersByHashesResponse)(nil), "injective.exchange.v1beta1.QueryDerivativeOrdersByHashesResponse") + proto.RegisterType((*QueryDerivativeMarketsRequest)(nil), "injective.exchange.v1beta1.QueryDerivativeMarketsRequest") + proto.RegisterType((*PriceLevel)(nil), "injective.exchange.v1beta1.PriceLevel") + proto.RegisterType((*PerpetualMarketState)(nil), "injective.exchange.v1beta1.PerpetualMarketState") + proto.RegisterType((*FullDerivativeMarket)(nil), "injective.exchange.v1beta1.FullDerivativeMarket") + proto.RegisterType((*QueryDerivativeMarketsResponse)(nil), "injective.exchange.v1beta1.QueryDerivativeMarketsResponse") + proto.RegisterType((*QueryDerivativeMarketRequest)(nil), "injective.exchange.v1beta1.QueryDerivativeMarketRequest") + proto.RegisterType((*QueryDerivativeMarketResponse)(nil), "injective.exchange.v1beta1.QueryDerivativeMarketResponse") + proto.RegisterType((*QueryDerivativeMarketAddressRequest)(nil), "injective.exchange.v1beta1.QueryDerivativeMarketAddressRequest") + proto.RegisterType((*QueryDerivativeMarketAddressResponse)(nil), "injective.exchange.v1beta1.QueryDerivativeMarketAddressResponse") + proto.RegisterType((*QuerySubaccountTradeNonceRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountTradeNonceRequest") + proto.RegisterType((*QuerySubaccountPositionsRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountPositionsRequest") + proto.RegisterType((*QuerySubaccountPositionInMarketRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountPositionInMarketRequest") + proto.RegisterType((*QuerySubaccountEffectivePositionInMarketRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountEffectivePositionInMarketRequest") + proto.RegisterType((*QuerySubaccountOrderMetadataRequest)(nil), "injective.exchange.v1beta1.QuerySubaccountOrderMetadataRequest") + proto.RegisterType((*QuerySubaccountPositionsResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountPositionsResponse") + proto.RegisterType((*QuerySubaccountPositionInMarketResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountPositionInMarketResponse") + proto.RegisterType((*EffectivePosition)(nil), "injective.exchange.v1beta1.EffectivePosition") + proto.RegisterType((*QuerySubaccountEffectivePositionInMarketResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountEffectivePositionInMarketResponse") + proto.RegisterType((*QueryPerpetualMarketInfoRequest)(nil), "injective.exchange.v1beta1.QueryPerpetualMarketInfoRequest") + proto.RegisterType((*QueryPerpetualMarketInfoResponse)(nil), "injective.exchange.v1beta1.QueryPerpetualMarketInfoResponse") + proto.RegisterType((*QueryExpiryFuturesMarketInfoRequest)(nil), "injective.exchange.v1beta1.QueryExpiryFuturesMarketInfoRequest") + proto.RegisterType((*QueryExpiryFuturesMarketInfoResponse)(nil), "injective.exchange.v1beta1.QueryExpiryFuturesMarketInfoResponse") + proto.RegisterType((*QueryPerpetualMarketFundingRequest)(nil), "injective.exchange.v1beta1.QueryPerpetualMarketFundingRequest") + proto.RegisterType((*QueryPerpetualMarketFundingResponse)(nil), "injective.exchange.v1beta1.QueryPerpetualMarketFundingResponse") + proto.RegisterType((*QuerySubaccountOrderMetadataResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountOrderMetadataResponse") + proto.RegisterType((*QuerySubaccountTradeNonceResponse)(nil), "injective.exchange.v1beta1.QuerySubaccountTradeNonceResponse") + proto.RegisterType((*QueryModuleStateRequest)(nil), "injective.exchange.v1beta1.QueryModuleStateRequest") + proto.RegisterType((*QueryModuleStateResponse)(nil), "injective.exchange.v1beta1.QueryModuleStateResponse") + proto.RegisterType((*QueryPositionsRequest)(nil), "injective.exchange.v1beta1.QueryPositionsRequest") + proto.RegisterType((*QueryPositionsResponse)(nil), "injective.exchange.v1beta1.QueryPositionsResponse") + proto.RegisterType((*QueryTradeRewardPointsRequest)(nil), "injective.exchange.v1beta1.QueryTradeRewardPointsRequest") + proto.RegisterType((*QueryTradeRewardPointsResponse)(nil), "injective.exchange.v1beta1.QueryTradeRewardPointsResponse") + proto.RegisterType((*QueryTradeRewardCampaignRequest)(nil), "injective.exchange.v1beta1.QueryTradeRewardCampaignRequest") + proto.RegisterType((*QueryTradeRewardCampaignResponse)(nil), "injective.exchange.v1beta1.QueryTradeRewardCampaignResponse") + proto.RegisterType((*QueryIsOptedOutOfRewardsRequest)(nil), "injective.exchange.v1beta1.QueryIsOptedOutOfRewardsRequest") + proto.RegisterType((*QueryIsOptedOutOfRewardsResponse)(nil), "injective.exchange.v1beta1.QueryIsOptedOutOfRewardsResponse") + proto.RegisterType((*QueryOptedOutOfRewardsAccountsRequest)(nil), "injective.exchange.v1beta1.QueryOptedOutOfRewardsAccountsRequest") + proto.RegisterType((*QueryOptedOutOfRewardsAccountsResponse)(nil), "injective.exchange.v1beta1.QueryOptedOutOfRewardsAccountsResponse") + proto.RegisterType((*QueryFeeDiscountAccountInfoRequest)(nil), "injective.exchange.v1beta1.QueryFeeDiscountAccountInfoRequest") + proto.RegisterType((*QueryFeeDiscountAccountInfoResponse)(nil), "injective.exchange.v1beta1.QueryFeeDiscountAccountInfoResponse") + proto.RegisterType((*QueryFeeDiscountScheduleRequest)(nil), "injective.exchange.v1beta1.QueryFeeDiscountScheduleRequest") + proto.RegisterType((*QueryFeeDiscountScheduleResponse)(nil), "injective.exchange.v1beta1.QueryFeeDiscountScheduleResponse") + proto.RegisterType((*QueryBalanceMismatchesRequest)(nil), "injective.exchange.v1beta1.QueryBalanceMismatchesRequest") + proto.RegisterType((*BalanceMismatch)(nil), "injective.exchange.v1beta1.BalanceMismatch") + proto.RegisterType((*QueryBalanceMismatchesResponse)(nil), "injective.exchange.v1beta1.QueryBalanceMismatchesResponse") + proto.RegisterType((*QueryBalanceWithBalanceHoldsRequest)(nil), "injective.exchange.v1beta1.QueryBalanceWithBalanceHoldsRequest") + proto.RegisterType((*BalanceWithMarginHold)(nil), "injective.exchange.v1beta1.BalanceWithMarginHold") + proto.RegisterType((*QueryBalanceWithBalanceHoldsResponse)(nil), "injective.exchange.v1beta1.QueryBalanceWithBalanceHoldsResponse") + proto.RegisterType((*QueryFeeDiscountTierStatisticsRequest)(nil), "injective.exchange.v1beta1.QueryFeeDiscountTierStatisticsRequest") + proto.RegisterType((*TierStatistic)(nil), "injective.exchange.v1beta1.TierStatistic") + proto.RegisterType((*QueryFeeDiscountTierStatisticsResponse)(nil), "injective.exchange.v1beta1.QueryFeeDiscountTierStatisticsResponse") + proto.RegisterType((*MitoVaultInfosRequest)(nil), "injective.exchange.v1beta1.MitoVaultInfosRequest") + proto.RegisterType((*MitoVaultInfosResponse)(nil), "injective.exchange.v1beta1.MitoVaultInfosResponse") + proto.RegisterType((*QueryMarketIDFromVaultRequest)(nil), "injective.exchange.v1beta1.QueryMarketIDFromVaultRequest") + proto.RegisterType((*QueryMarketIDFromVaultResponse)(nil), "injective.exchange.v1beta1.QueryMarketIDFromVaultResponse") + proto.RegisterType((*QueryHistoricalTradeRecordsRequest)(nil), "injective.exchange.v1beta1.QueryHistoricalTradeRecordsRequest") + proto.RegisterType((*QueryHistoricalTradeRecordsResponse)(nil), "injective.exchange.v1beta1.QueryHistoricalTradeRecordsResponse") + proto.RegisterType((*TradeHistoryOptions)(nil), "injective.exchange.v1beta1.TradeHistoryOptions") + proto.RegisterType((*QueryMarketVolatilityRequest)(nil), "injective.exchange.v1beta1.QueryMarketVolatilityRequest") + proto.RegisterType((*QueryMarketVolatilityResponse)(nil), "injective.exchange.v1beta1.QueryMarketVolatilityResponse") + proto.RegisterType((*QueryBinaryMarketsRequest)(nil), "injective.exchange.v1beta1.QueryBinaryMarketsRequest") + proto.RegisterType((*QueryBinaryMarketsResponse)(nil), "injective.exchange.v1beta1.QueryBinaryMarketsResponse") + proto.RegisterType((*QueryTraderDerivativeConditionalOrdersRequest)(nil), "injective.exchange.v1beta1.QueryTraderDerivativeConditionalOrdersRequest") + proto.RegisterType((*TrimmedDerivativeConditionalOrder)(nil), "injective.exchange.v1beta1.TrimmedDerivativeConditionalOrder") + proto.RegisterType((*QueryTraderDerivativeConditionalOrdersResponse)(nil), "injective.exchange.v1beta1.QueryTraderDerivativeConditionalOrdersResponse") + proto.RegisterType((*QueryFullSpotOrderbookRequest)(nil), "injective.exchange.v1beta1.QueryFullSpotOrderbookRequest") + proto.RegisterType((*QueryFullSpotOrderbookResponse)(nil), "injective.exchange.v1beta1.QueryFullSpotOrderbookResponse") + proto.RegisterType((*QueryFullDerivativeOrderbookRequest)(nil), "injective.exchange.v1beta1.QueryFullDerivativeOrderbookRequest") + proto.RegisterType((*QueryFullDerivativeOrderbookResponse)(nil), "injective.exchange.v1beta1.QueryFullDerivativeOrderbookResponse") + proto.RegisterType((*TrimmedLimitOrder)(nil), "injective.exchange.v1beta1.TrimmedLimitOrder") + proto.RegisterType((*QueryMarketAtomicExecutionFeeMultiplierRequest)(nil), "injective.exchange.v1beta1.QueryMarketAtomicExecutionFeeMultiplierRequest") + proto.RegisterType((*QueryMarketAtomicExecutionFeeMultiplierResponse)(nil), "injective.exchange.v1beta1.QueryMarketAtomicExecutionFeeMultiplierResponse") + proto.RegisterType((*QueryActiveStakeGrantRequest)(nil), "injective.exchange.v1beta1.QueryActiveStakeGrantRequest") + proto.RegisterType((*QueryActiveStakeGrantResponse)(nil), "injective.exchange.v1beta1.QueryActiveStakeGrantResponse") + proto.RegisterType((*QueryGrantAuthorizationRequest)(nil), "injective.exchange.v1beta1.QueryGrantAuthorizationRequest") + proto.RegisterType((*QueryGrantAuthorizationResponse)(nil), "injective.exchange.v1beta1.QueryGrantAuthorizationResponse") + proto.RegisterType((*QueryGrantAuthorizationsRequest)(nil), "injective.exchange.v1beta1.QueryGrantAuthorizationsRequest") + proto.RegisterType((*QueryGrantAuthorizationsResponse)(nil), "injective.exchange.v1beta1.QueryGrantAuthorizationsResponse") + proto.RegisterType((*QueryMarketBalanceRequest)(nil), "injective.exchange.v1beta1.QueryMarketBalanceRequest") + proto.RegisterType((*QueryMarketBalanceResponse)(nil), "injective.exchange.v1beta1.QueryMarketBalanceResponse") + proto.RegisterType((*QueryMarketBalancesRequest)(nil), "injective.exchange.v1beta1.QueryMarketBalancesRequest") + proto.RegisterType((*QueryMarketBalancesResponse)(nil), "injective.exchange.v1beta1.QueryMarketBalancesResponse") + proto.RegisterType((*MarketBalance)(nil), "injective.exchange.v1beta1.MarketBalance") + proto.RegisterType((*QueryDenomMinNotionalRequest)(nil), "injective.exchange.v1beta1.QueryDenomMinNotionalRequest") + proto.RegisterType((*QueryDenomMinNotionalResponse)(nil), "injective.exchange.v1beta1.QueryDenomMinNotionalResponse") + proto.RegisterType((*QueryDenomMinNotionalsRequest)(nil), "injective.exchange.v1beta1.QueryDenomMinNotionalsRequest") + proto.RegisterType((*QueryDenomMinNotionalsResponse)(nil), "injective.exchange.v1beta1.QueryDenomMinNotionalsResponse") } -func (c *queryClient) SubaccountPositionInMarket(ctx context.Context, in *QuerySubaccountPositionInMarketRequest, opts ...grpc.CallOption) (*QuerySubaccountPositionInMarketResponse, error) { - out := new(QuerySubaccountPositionInMarketResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountPositionInMarket", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +func init() { + proto.RegisterFile("injective/exchange/v1beta1/query.proto", fileDescriptor_523db28b8af54781) } -func (c *queryClient) SubaccountEffectivePositionInMarket(ctx context.Context, in *QuerySubaccountEffectivePositionInMarketRequest, opts ...grpc.CallOption) (*QuerySubaccountEffectivePositionInMarketResponse, error) { - out := new(QuerySubaccountEffectivePositionInMarketResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountEffectivePositionInMarket", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +var fileDescriptor_523db28b8af54781 = []byte{ + // 6226 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x7d, 0x7d, 0x8c, 0x1c, 0xc9, + 0x55, 0xb8, 0x7b, 0xf6, 0xfb, 0xed, 0x77, 0xed, 0x7a, 0xbd, 0x1e, 0xdf, 0xf9, 0xa3, 0x1d, 0xe7, + 0x7c, 0xce, 0x79, 0xd7, 0x5e, 0x7f, 0x7f, 0x7b, 0x67, 0xd7, 0x6b, 0xef, 0x79, 0xd7, 0x76, 0x66, + 0xd7, 0x77, 0xc9, 0x25, 0xbf, 0xdf, 0xa4, 0x77, 0xa6, 0x77, 0xb6, 0xe3, 0x9e, 0xe9, 0xf1, 0x74, + 0xcf, 0x9e, 0x17, 0xe3, 0x08, 0x08, 0x28, 0x01, 0x24, 0x40, 0x8a, 0x00, 0x21, 0x10, 0x02, 0xfe, + 0xe0, 0x0f, 0x44, 0x84, 0x44, 0xc4, 0x87, 0x12, 0x29, 0x51, 0x38, 0x04, 0xe1, 0x82, 0xe0, 0x20, + 0x47, 0x40, 0x11, 0x1c, 0xd1, 0x5d, 0x20, 0xca, 0x09, 0x24, 0xfe, 0x42, 0x42, 0xa0, 0x80, 0xba, + 0xea, 0x55, 0x4d, 0x7f, 0x4f, 0xf5, 0xec, 0x9e, 0x7c, 0x81, 0xbf, 0xbc, 0x53, 0x5d, 0xef, 0xd5, + 0x7b, 0xf5, 0x5e, 0xbd, 0x7a, 0x55, 0xf5, 0xde, 0x33, 0x7c, 0xd0, 0xa8, 0x7e, 0x52, 0x2f, 0x3a, + 0xc6, 0xa6, 0x3e, 0xad, 0x3f, 0x2a, 0x6e, 0x68, 0xd5, 0xb2, 0x3e, 0xbd, 0x79, 0x72, 0x4d, 0x77, + 0xb4, 0x93, 0xd3, 0x0f, 0x1b, 0x7a, 0x7d, 0x6b, 0xaa, 0x56, 0xb7, 0x1c, 0x8b, 0x64, 0x45, 0xbf, + 0x29, 0xde, 0x6f, 0x0a, 0xfb, 0x65, 0x9f, 0x29, 0x5b, 0x56, 0xd9, 0xd4, 0xa7, 0xb5, 0x9a, 0x31, + 0xad, 0x55, 0xab, 0x96, 0xa3, 0x39, 0x86, 0x55, 0xb5, 0x19, 0x64, 0xf6, 0xf9, 0x84, 0x11, 0x04, + 0x2a, 0xd6, 0xf5, 0x68, 0x42, 0xd7, 0xb2, 0x5e, 0xd5, 0x6d, 0x83, 0x23, 0x3d, 0xd2, 0xec, 0x69, + 0xd5, 0xb5, 0xa2, 0xd9, 0xec, 0xc7, 0x7e, 0x62, 0xb7, 0xf1, 0xb2, 0x55, 0xb6, 0xe8, 0x9f, 0xd3, + 0xee, 0x5f, 0xac, 0x55, 0xbd, 0x0b, 0xb0, 0xd2, 0x58, 0xd3, 0x8a, 0x45, 0xab, 0x51, 0x75, 0xc8, + 0x04, 0x74, 0x3b, 0x75, 0xad, 0xa4, 0xd7, 0x27, 0x95, 0x83, 0xca, 0xd1, 0xbe, 0x3c, 0xfe, 0x22, + 0xcf, 0xc3, 0x88, 0x2d, 0x7a, 0x15, 0xaa, 0x56, 0xb5, 0xa8, 0x4f, 0x66, 0x0e, 0x2a, 0x47, 0x07, + 0xf3, 0xc3, 0xcd, 0xf6, 0x3b, 0x6e, 0xb3, 0xfa, 0x09, 0x78, 0xe6, 0xc3, 0xee, 0x5c, 0x35, 0xb1, + 0xde, 0xad, 0x97, 0xf4, 0xba, 0x9d, 0xd7, 0x1f, 0x36, 0x74, 0xdb, 0x21, 0x87, 0x61, 0xd0, 0x83, + 0xca, 0x28, 0xe1, 0x48, 0x03, 0xcd, 0xc6, 0xc5, 0x12, 0xd9, 0x07, 0x7d, 0x15, 0xad, 0xfe, 0x40, + 0xa7, 0x1d, 0x32, 0xb4, 0x43, 0x2f, 0x6b, 0x58, 0x2c, 0xa9, 0x5f, 0x55, 0xe0, 0xd9, 0x98, 0x21, + 0xec, 0x9a, 0x55, 0xb5, 0x75, 0x72, 0x07, 0x60, 0xad, 0xb1, 0x55, 0xb0, 0x68, 0xeb, 0xa4, 0x72, + 0xb0, 0xe3, 0x68, 0xff, 0xcc, 0xf4, 0x54, 0xbc, 0xd4, 0xa6, 0x02, 0x98, 0xe6, 0x35, 0x47, 0xcb, + 0xf7, 0xad, 0x35, 0xb6, 0x18, 0x5e, 0x72, 0x0f, 0xfa, 0x6d, 0xdd, 0x34, 0x39, 0xc2, 0x4c, 0x7b, + 0x08, 0xc1, 0xc5, 0xc1, 0x30, 0xaa, 0xbf, 0xa3, 0xc0, 0x91, 0x40, 0x9f, 0x35, 0xcb, 0x7a, 0xb0, + 0xac, 0x3b, 0x5a, 0x49, 0x73, 0xb4, 0x97, 0x0d, 0x67, 0x63, 0x99, 0xf2, 0x4b, 0x56, 0xa0, 0xb7, + 0x82, 0xad, 0x74, 0xaa, 0xfa, 0x67, 0xce, 0xa5, 0x18, 0xd8, 0x8b, 0x34, 0x2f, 0x10, 0x25, 0xce, + 0x2f, 0x19, 0x87, 0x2e, 0xc3, 0xce, 0x35, 0xb6, 0x26, 0x3b, 0x0e, 0x2a, 0x47, 0x7b, 0xf3, 0xec, + 0x87, 0xfa, 0x0c, 0x64, 0xe9, 0xa4, 0xdf, 0xc0, 0x11, 0xef, 0x69, 0x75, 0xad, 0xc2, 0xa5, 0xaa, + 0x16, 0x60, 0x5f, 0xe4, 0x57, 0x14, 0xc8, 0x75, 0xe8, 0xae, 0xd1, 0x16, 0x64, 0x41, 0x4d, 0x62, + 0x81, 0xc1, 0xe6, 0x3a, 0xbf, 0xf6, 0xd6, 0x81, 0x5d, 0x79, 0x84, 0x53, 0x3f, 0xa7, 0xc0, 0xfe, + 0x80, 0xd0, 0xe7, 0xf5, 0x9a, 0x65, 0x1b, 0x4e, 0x3a, 0xcd, 0x5a, 0x02, 0x68, 0xfe, 0xa6, 0xac, + 0xf7, 0xcf, 0x7c, 0x50, 0x6e, 0x42, 0x29, 0x45, 0x4a, 0xde, 0x03, 0xaf, 0xbe, 0xab, 0xc0, 0x81, + 0x58, 0xaa, 0x90, 0x77, 0x1d, 0x7a, 0x4b, 0xd8, 0x86, 0xaa, 0xb8, 0x98, 0x34, 0x5e, 0x0b, 0x74, + 0x53, 0xbc, 0xe1, 0x46, 0xd5, 0xa9, 0x6f, 0xe5, 0x05, 0xea, 0xec, 0x27, 0x60, 0xd0, 0xf7, 0x89, + 0x8c, 0x40, 0xc7, 0x03, 0x7d, 0x0b, 0x27, 0xc1, 0xfd, 0x93, 0x5c, 0x80, 0xae, 0x4d, 0xcd, 0x6c, + 0xe8, 0xc8, 0xf6, 0xe1, 0x24, 0x32, 0x10, 0x57, 0x9e, 0x41, 0x5c, 0xcc, 0x9c, 0x57, 0xd4, 0xfd, + 0xb8, 0xb2, 0xb9, 0x8c, 0x73, 0x9a, 0xa9, 0x55, 0x8b, 0xba, 0xd0, 0x81, 0x75, 0x5c, 0x96, 0xe1, + 0xef, 0x38, 0x13, 0x37, 0xa0, 0x77, 0x0d, 0xdb, 0x70, 0x26, 0x12, 0x49, 0x40, 0x78, 0x54, 0x04, + 0x01, 0xaa, 0x9e, 0x43, 0x5d, 0x9b, 0x2d, 0x97, 0xeb, 0x7a, 0x59, 0x73, 0xf4, 0x97, 0x2c, 0xb3, + 0x51, 0xd1, 0xb9, 0x1a, 0x4c, 0x42, 0x0f, 0x17, 0x2f, 0xe3, 0x9d, 0xff, 0x54, 0x1b, 0xc8, 0x40, + 0x08, 0x10, 0xe9, 0xbb, 0x0f, 0xa3, 0x1a, 0xff, 0x54, 0xd8, 0xa4, 0xdf, 0x38, 0xa1, 0x47, 0x93, + 0x08, 0x65, 0x2b, 0x15, 0x91, 0x8d, 0x68, 0x7e, 0xec, 0xb6, 0xfa, 0xd1, 0xe8, 0x61, 0x85, 0xde, + 0x66, 0xa1, 0x17, 0x29, 0x64, 0xa3, 0xf5, 0xe5, 0xc5, 0x6f, 0xf2, 0x2c, 0x80, 0x58, 0xa8, 0xcc, + 0xf0, 0xf4, 0xe5, 0xfb, 0xf8, 0x4a, 0xb5, 0xd5, 0xff, 0xe0, 0xa6, 0x30, 0x8c, 0x1b, 0x79, 0x72, + 0x60, 0x6f, 0x93, 0x27, 0xbe, 0x36, 0xfc, 0xbc, 0x9d, 0x4f, 0xe2, 0x4d, 0x20, 0x9e, 0x65, 0xb0, + 0x7c, 0xca, 0x8a, 0x56, 0xbd, 0x94, 0xdf, 0xa3, 0x45, 0x7e, 0xb5, 0xc9, 0x1a, 0x4c, 0x36, 0x47, + 0x45, 0x06, 0xf8, 0xa0, 0x99, 0x94, 0x13, 0x3a, 0x21, 0x30, 0x79, 0x9b, 0x6d, 0xf5, 0x3a, 0x1c, + 0xf2, 0xb3, 0xee, 0x83, 0xc2, 0xb9, 0xf5, 0x19, 0x3a, 0x25, 0xb0, 0x91, 0x98, 0xa0, 0x26, 0x61, + 0xc0, 0x19, 0x5c, 0x80, 0x6e, 0x46, 0x3a, 0xda, 0xae, 0x44, 0xca, 0xbd, 0xd3, 0xc3, 0x2d, 0x18, + 0x83, 0x56, 0x4f, 0xc0, 0x24, 0x1d, 0x6d, 0x5e, 0xaf, 0x5a, 0x95, 0x79, 0xbd, 0x68, 0x54, 0x34, + 0x93, 0x93, 0x39, 0x0e, 0x5d, 0x25, 0xb7, 0x19, 0x49, 0x64, 0x3f, 0xd4, 0x33, 0xb0, 0x37, 0x02, + 0x02, 0xc9, 0x9a, 0x84, 0x9e, 0x12, 0x6b, 0xa2, 0x40, 0x9d, 0x79, 0xfe, 0x53, 0x3d, 0x15, 0x01, + 0x26, 0x94, 0x6d, 0x02, 0xba, 0x29, 0x72, 0xae, 0x6a, 0xf8, 0x4b, 0x75, 0xd0, 0xbc, 0x07, 0x80, + 0x70, 0xb0, 0x97, 0x60, 0x88, 0xf6, 0x2b, 0xe0, 0x18, 0x5c, 0x75, 0x9e, 0x4f, 0x36, 0x21, 0x1e, + 0x54, 0x38, 0x19, 0x83, 0x25, 0x6f, 0xa3, 0x3a, 0x97, 0x24, 0x01, 0x41, 0xb3, 0x7f, 0x11, 0x28, + 0xc1, 0x45, 0x60, 0xc0, 0xe1, 0x44, 0x24, 0xc8, 0x43, 0x0e, 0x7a, 0xda, 0x5d, 0xd3, 0x1c, 0x50, + 0x7d, 0x25, 0xe4, 0x79, 0x70, 0x3b, 0x99, 0x66, 0x0f, 0x12, 0xd2, 0xce, 0x78, 0xa5, 0xad, 0xc5, + 0x6d, 0x70, 0x82, 0x83, 0x6b, 0xbe, 0x9d, 0x44, 0xda, 0x84, 0x0b, 0x20, 0xf5, 0x1e, 0xec, 0x61, + 0x43, 0xd4, 0x2c, 0x87, 0x31, 0xe8, 0xd5, 0x0b, 0xdb, 0xd1, 0x9c, 0x86, 0xcd, 0x3d, 0x3f, 0xf6, + 0xab, 0x95, 0x01, 0xfa, 0x38, 0x2a, 0xb5, 0x0f, 0xa3, 0xd8, 0xf4, 0x7b, 0x58, 0x47, 0x3e, 0xe1, + 0xc9, 0xfb, 0xac, 0xc0, 0x90, 0xe7, 0x60, 0xea, 0x19, 0x98, 0x08, 0x60, 0x97, 0x5a, 0xd7, 0x1f, + 0x0d, 0xb1, 0x29, 0x68, 0xba, 0x0a, 0xdd, 0xac, 0x1b, 0x4e, 0xa0, 0x2c, 0x49, 0x08, 0xa5, 0x7e, + 0x33, 0x83, 0x8b, 0xcb, 0xfd, 0x26, 0x3c, 0x2c, 0x19, 0xaa, 0x5c, 0xa9, 0x9b, 0x46, 0xc5, 0x60, + 0x4e, 0x47, 0x67, 0x9e, 0xfd, 0x20, 0xf3, 0x00, 0xd4, 0xab, 0x2c, 0xd8, 0x46, 0x49, 0xa7, 0x1e, + 0xd7, 0xd0, 0xcc, 0x91, 0x24, 0xa2, 0xe8, 0xa0, 0x2b, 0x46, 0x49, 0xcf, 0xf7, 0x59, 0xfc, 0x4f, + 0x52, 0x80, 0xbd, 0x14, 0x5d, 0xa1, 0xd8, 0xa8, 0x34, 0x4c, 0xcd, 0x85, 0x2c, 0x54, 0x2d, 0xf7, + 0xe4, 0xa1, 0x99, 0x93, 0x9d, 0x2e, 0x21, 0xb9, 0xc3, 0xae, 0xf3, 0xf2, 0xad, 0xb7, 0x0e, 0xec, + 0x2b, 0x5a, 0x76, 0xc5, 0xb2, 0xed, 0xd2, 0x83, 0x29, 0xc3, 0x9a, 0xae, 0x68, 0xce, 0xc6, 0xd4, + 0x92, 0x5e, 0xd6, 0x8a, 0x5b, 0xf3, 0x7a, 0x31, 0xbf, 0x87, 0x62, 0x99, 0x13, 0x48, 0xee, 0x20, + 0x8e, 0xc8, 0x01, 0x1e, 0x36, 0xb4, 0xaa, 0x63, 0x38, 0x5b, 0x93, 0x5d, 0xed, 0x0f, 0xf0, 0x61, + 0xc4, 0xa1, 0xfe, 0xa1, 0x82, 0x06, 0x28, 0x30, 0xb1, 0x28, 0xb7, 0xdb, 0x30, 0xb2, 0xd6, 0xd8, + 0xb2, 0x0b, 0xb5, 0xba, 0x51, 0xd4, 0x0b, 0xa6, 0xbe, 0xa9, 0x9b, 0xa8, 0x54, 0x87, 0x92, 0x26, + 0x6b, 0xc9, 0xed, 0x98, 0x1f, 0x72, 0x41, 0xef, 0xb9, 0x90, 0xf4, 0x37, 0x59, 0x86, 0x51, 0xd7, + 0x15, 0xf7, 0x63, 0xcb, 0xc8, 0x62, 0x1b, 0xa6, 0xb0, 0x4d, 0x74, 0xea, 0xe7, 0x15, 0x18, 0x5a, + 0x68, 0x98, 0x66, 0x53, 0x5d, 0xb6, 0xab, 0x66, 0xe4, 0x63, 0x30, 0x5a, 0x31, 0x4a, 0x48, 0x9f, + 0x56, 0x2d, 0x15, 0x1c, 0x6b, 0x0d, 0xbd, 0xb6, 0x63, 0x89, 0x56, 0xcb, 0x28, 0x51, 0xc2, 0x66, + 0xab, 0xa5, 0xd5, 0xbb, 0x39, 0x74, 0x58, 0x87, 0x2a, 0x9e, 0x56, 0x6b, 0x4d, 0xfd, 0xac, 0x82, + 0x0e, 0x94, 0x9f, 0xe8, 0x6d, 0x9a, 0x02, 0x32, 0x03, 0x13, 0xaf, 0x1a, 0xce, 0x46, 0x21, 0x4c, + 0x38, 0x3b, 0x47, 0x10, 0xf7, 0xeb, 0xb2, 0x9f, 0x94, 0x12, 0xba, 0x46, 0x21, 0x4a, 0x50, 0xec, + 0xf3, 0x41, 0x13, 0x92, 0xc8, 0xbd, 0x1f, 0x4b, 0xd3, 0x8c, 0x54, 0x50, 0xb5, 0x02, 0xdf, 0x65, + 0x16, 0x6d, 0x3c, 0x53, 0x99, 0x58, 0xa6, 0xb4, 0xc8, 0xe9, 0xf5, 0xec, 0x43, 0x7e, 0xdd, 0x48, + 0xc3, 0x12, 0x37, 0x43, 0x3f, 0x21, 0x4e, 0x43, 0x7c, 0xb5, 0xd8, 0xb9, 0xad, 0x5b, 0x9a, 0xbd, + 0xd1, 0xdc, 0x34, 0x13, 0xd9, 0x0a, 0x6d, 0x53, 0x99, 0x88, 0x6d, 0xea, 0x10, 0x0c, 0x30, 0xd3, + 0xb4, 0x41, 0x11, 0x4f, 0x76, 0x50, 0x89, 0xf7, 0xd3, 0x36, 0x36, 0x96, 0x6a, 0xf2, 0xe3, 0x4f, + 0x04, 0x19, 0xc8, 0xee, 0x22, 0x74, 0xfb, 0xce, 0xe1, 0x27, 0x93, 0xd8, 0x5d, 0xad, 0x1b, 0x95, + 0x8a, 0x5e, 0x72, 0xd1, 0x2d, 0xb9, 0x86, 0x82, 0xe2, 0xcc, 0x23, 0x02, 0x71, 0xb5, 0xb0, 0x4a, + 0x2f, 0x25, 0x9a, 0x63, 0xee, 0x18, 0xcb, 0xaa, 0x09, 0x1f, 0x60, 0xae, 0x04, 0x6b, 0x99, 0x2d, + 0x95, 0xea, 0xba, 0x6d, 0xa7, 0x1c, 0xe9, 0x39, 0x18, 0xe6, 0xc3, 0x68, 0x0c, 0x01, 0x8e, 0x35, + 0xa4, 0xf9, 0xd0, 0xaa, 0xbf, 0x9c, 0x81, 0xdd, 0x91, 0x1c, 0xbb, 0x27, 0x35, 0xaa, 0x6d, 0x0c, + 0x37, 0x35, 0xad, 0xbb, 0x5a, 0x99, 0x56, 0x06, 0xe1, 0x3a, 0x09, 0xc2, 0x30, 0x67, 0xe4, 0xa1, + 0x05, 0x90, 0x8b, 0x60, 0xdd, 0x30, 0x4d, 0x6d, 0xcd, 0x64, 0xfb, 0x91, 0x2c, 0x02, 0x0e, 0xd4, + 0xbc, 0x3f, 0xe8, 0xf4, 0xdc, 0x1f, 0xb8, 0xd6, 0xa3, 0xa9, 0x4d, 0x6c, 0xcb, 0xc0, 0x1d, 0xcc, + 0x55, 0x18, 0xf7, 0xb4, 0x5a, 0x34, 0x4a, 0x93, 0xdd, 0xec, 0xb4, 0x5a, 0x34, 0x4a, 0xea, 0x27, + 0xd1, 0xd7, 0x0a, 0x4b, 0x7b, 0xe7, 0x35, 0xab, 0x0e, 0x47, 0x5a, 0xc8, 0x7d, 0xe7, 0xc7, 0xbc, + 0xe2, 0x59, 0xc2, 0x7e, 0xbb, 0x2d, 0xe5, 0xe4, 0xfc, 0xa7, 0xe2, 0x59, 0x7b, 0x41, 0x78, 0xe1, + 0x81, 0xf5, 0x09, 0xc3, 0xe5, 0x51, 0xa5, 0x96, 0xbb, 0x74, 0x2f, 0xdf, 0x31, 0xc8, 0x22, 0x0c, + 0xad, 0xe9, 0xb6, 0x53, 0x58, 0x6b, 0x6c, 0x21, 0x9a, 0x8c, 0x3c, 0x9a, 0x01, 0x17, 0x34, 0xd7, + 0xd8, 0x62, 0xa8, 0x6e, 0xc3, 0x30, 0x45, 0x45, 0x6f, 0xd2, 0x18, 0xae, 0x0e, 0x79, 0x5c, 0x83, + 0x2e, 0xec, 0x8a, 0x6e, 0x9a, 0x14, 0x99, 0x3a, 0x87, 0x0b, 0x75, 0x5e, 0xaf, 0x1b, 0x9b, 0xd4, + 0x93, 0x68, 0x63, 0x0a, 0x7f, 0x34, 0x83, 0x62, 0x8f, 0xc7, 0xf2, 0xbf, 0x7e, 0x22, 0x7f, 0x8f, + 0xab, 0x51, 0x73, 0x0e, 0x76, 0xc2, 0xad, 0x4d, 0x74, 0x48, 0x3b, 0xb6, 0xef, 0x90, 0xaa, 0x5f, + 0x56, 0xe0, 0x60, 0x3c, 0xdd, 0x3f, 0x00, 0x5e, 0xe3, 0xaf, 0x74, 0xc0, 0x54, 0xa4, 0x7d, 0x5b, + 0xb5, 0xe6, 0xb4, 0x6a, 0x51, 0x37, 0xef, 0xd7, 0x56, 0xad, 0xd9, 0x8a, 0x6b, 0x8e, 0x76, 0x6e, + 0x4b, 0x9f, 0x87, 0xfe, 0x35, 0xcd, 0xd6, 0x0b, 0x1a, 0xc5, 0x9b, 0xc6, 0xbc, 0x83, 0x0b, 0xc7, + 0xc8, 0x21, 0x0b, 0x30, 0xf0, 0xb0, 0x61, 0x39, 0x02, 0x4d, 0xa7, 0x3c, 0x9a, 0x7e, 0x0a, 0x88, + 0x78, 0x96, 0xa0, 0xd7, 0x76, 0xea, 0x9a, 0xa3, 0x97, 0xd9, 0x19, 0x62, 0x68, 0xe6, 0x44, 0xd2, + 0x44, 0xb2, 0x69, 0x31, 0xe9, 0x83, 0xca, 0x0a, 0xc2, 0xe5, 0x05, 0x06, 0xb2, 0x04, 0xc3, 0x75, + 0x7d, 0x5d, 0xaf, 0xeb, 0xd5, 0xa2, 0x8e, 0xcb, 0xa2, 0x5b, 0x5e, 0xd1, 0x86, 0x04, 0x2c, 0x5b, + 0x17, 0x7f, 0x9f, 0x81, 0xd3, 0x1e, 0xf1, 0x04, 0xb4, 0xec, 0x3d, 0x15, 0x52, 0x70, 0x7a, 0x3b, + 0x76, 0x60, 0x7a, 0x3b, 0xdf, 0x8b, 0xe9, 0xed, 0x6a, 0x7f, 0x7a, 0xd7, 0xf1, 0xe2, 0x27, 0x7a, + 0x76, 0x77, 0xce, 0xa1, 0xab, 0xc3, 0xb1, 0x88, 0x8d, 0xbd, 0xad, 0xf1, 0xa4, 0xdd, 0xba, 0xef, + 0x65, 0x60, 0x1f, 0x6e, 0xfd, 0xcd, 0x81, 0xde, 0x27, 0xce, 0xdd, 0x25, 0x7a, 0xf8, 0x28, 0x1b, + 0xd5, 0x34, 0x5a, 0x85, 0x20, 0x3e, 0xcf, 0xb0, 0xb3, 0x1d, 0xcf, 0xf0, 0x00, 0xf7, 0x0c, 0x5d, + 0xcd, 0xe9, 0xcd, 0xf5, 0xbd, 0xfb, 0xd6, 0x01, 0xd6, 0x10, 0xed, 0x24, 0x76, 0xc7, 0x38, 0x89, + 0x3d, 0x4d, 0x27, 0x71, 0x13, 0xef, 0xfe, 0xe2, 0xf4, 0x08, 0x37, 0x82, 0xbb, 0x01, 0xb7, 0xed, + 0x9c, 0x84, 0xdb, 0x16, 0x25, 0x3b, 0xe1, 0xbc, 0x7d, 0x0a, 0x3e, 0x24, 0xa5, 0x57, 0xef, 0xd5, + 0xf8, 0x3f, 0xad, 0x84, 0x1c, 0xa0, 0xa7, 0x78, 0x0c, 0x7c, 0x14, 0xf2, 0xa3, 0x62, 0x0e, 0x83, + 0x3b, 0x3e, 0x0f, 0x3f, 0xc5, 0x1f, 0x40, 0x3c, 0x2e, 0xdc, 0x53, 0xbb, 0xcd, 0xf8, 0xac, 0x02, + 0xe0, 0x71, 0x18, 0x9e, 0xe2, 0x3a, 0x57, 0xbf, 0xa2, 0xc0, 0xf8, 0x3d, 0xbd, 0x5e, 0xd3, 0x9d, + 0x86, 0x66, 0xb2, 0x19, 0x59, 0x71, 0x34, 0x47, 0x27, 0xf7, 0xa0, 0x9f, 0xb3, 0x5d, 0x5d, 0xb7, + 0xf0, 0x0a, 0x22, 0xf1, 0x29, 0x3b, 0x80, 0x66, 0xb1, 0xba, 0x6e, 0xe5, 0x71, 0xea, 0xdc, 0xbf, + 0xc9, 0x7d, 0x18, 0x58, 0x6f, 0x54, 0x4b, 0x46, 0xb5, 0xcc, 0x50, 0xb2, 0x6b, 0xaa, 0x99, 0x14, + 0x28, 0x17, 0x18, 0x78, 0xbe, 0x1f, 0xf1, 0xb8, 0x68, 0xd5, 0x2f, 0x76, 0xc0, 0xf8, 0x42, 0xc3, + 0x34, 0x83, 0x82, 0x25, 0xf3, 0x81, 0xfb, 0x93, 0x17, 0x92, 0xef, 0xc0, 0xfd, 0xd0, 0xe2, 0x86, + 0xed, 0xa3, 0x30, 0x54, 0xe3, 0x54, 0x78, 0xe9, 0x3e, 0x91, 0x82, 0x6e, 0x3a, 0xa3, 0xb7, 0x76, + 0xe5, 0x07, 0x05, 0x26, 0x3a, 0x21, 0x1f, 0x71, 0x27, 0xc4, 0x69, 0xd4, 0x75, 0x9b, 0x21, 0xee, + 0xa0, 0x88, 0x4f, 0x25, 0x21, 0xbe, 0xf1, 0xa8, 0x66, 0xd4, 0xb7, 0x16, 0x18, 0x54, 0x73, 0x9e, + 0x6f, 0xed, 0x72, 0xe7, 0x84, 0x36, 0x52, 0xcc, 0x39, 0xa6, 0xb3, 0xb8, 0xfd, 0xa6, 0x30, 0xc1, + 0x54, 0xb1, 0xd9, 0xe9, 0x21, 0xf2, 0x6a, 0xb1, 0x6b, 0x67, 0xae, 0x16, 0x73, 0xdd, 0xd0, 0xe9, + 0xb2, 0xac, 0x9a, 0x78, 0xb6, 0x8d, 0x58, 0x95, 0x68, 0x09, 0x5e, 0x0c, 0xde, 0xec, 0x9d, 0x68, + 0x75, 0x0d, 0x16, 0x12, 0xa5, 0xb8, 0xdf, 0xbb, 0x84, 0xf7, 0x42, 0xa1, 0x1e, 0x32, 0x87, 0x40, + 0x23, 0xc6, 0x80, 0x08, 0x4a, 0x6f, 0x05, 0xf4, 0x2d, 0x3d, 0xa1, 0xfc, 0xd6, 0x2e, 0x87, 0x9b, + 0x55, 0xb0, 0x03, 0xee, 0x1e, 0x52, 0xe4, 0xea, 0xe1, 0x83, 0xaf, 0x1f, 0x47, 0xf3, 0x79, 0x90, + 0x7b, 0x29, 0xfc, 0x15, 0x9c, 0xfd, 0x94, 0xf3, 0x9b, 0x6e, 0xe2, 0xe9, 0xaa, 0xf9, 0x18, 0x45, + 0x77, 0x58, 0x1a, 0xe2, 0x93, 0xe6, 0xad, 0x4b, 0x5d, 0x08, 0x05, 0x48, 0xdc, 0xb3, 0x6c, 0x83, + 0xc6, 0x44, 0xa5, 0xc2, 0xf3, 0x49, 0xf8, 0x60, 0x0c, 0x9e, 0xc5, 0xaa, 0x5f, 0xda, 0xdb, 0x0f, + 0x30, 0xb2, 0x61, 0x3a, 0x30, 0xd6, 0x8d, 0xf5, 0x75, 0x26, 0xf1, 0xf7, 0x6e, 0xd0, 0x17, 0x51, + 0x39, 0x02, 0x01, 0x3c, 0x22, 0x78, 0x27, 0xcd, 0x64, 0x55, 0x43, 0xd2, 0xf3, 0x4c, 0xba, 0x58, + 0x80, 0x5d, 0xee, 0x4e, 0xa8, 0xe3, 0xf2, 0x9b, 0x92, 0xb3, 0xa2, 0x1c, 0x0f, 0x3e, 0xe7, 0x32, + 0x14, 0xea, 0x03, 0x78, 0xae, 0xa5, 0x70, 0xc4, 0x4d, 0x8a, 0x18, 0xd6, 0x5d, 0x4c, 0x1f, 0x48, + 0x34, 0xb7, 0xde, 0xc1, 0x14, 0x3e, 0xd8, 0xa7, 0x33, 0x30, 0x1a, 0x92, 0x07, 0xd9, 0x03, 0x3d, + 0x86, 0x5d, 0x30, 0xad, 0x6a, 0x99, 0x62, 0xee, 0xcd, 0x77, 0x1b, 0xf6, 0x92, 0x55, 0x2d, 0x6f, + 0xdf, 0x65, 0x9e, 0x87, 0x7e, 0xbd, 0xea, 0xd4, 0xb7, 0x42, 0x57, 0x2d, 0xad, 0xcf, 0xcc, 0x14, + 0x8e, 0x99, 0xdd, 0x3b, 0x30, 0xa2, 0x73, 0xa2, 0x0b, 0xe8, 0x82, 0xa7, 0x30, 0xe0, 0xc3, 0x02, + 0x78, 0x99, 0xc2, 0xaa, 0x4f, 0xe0, 0x84, 0xbc, 0x8e, 0x8a, 0xcb, 0x4b, 0xdf, 0xdc, 0x1f, 0x4f, + 0xdc, 0x91, 0x82, 0xd8, 0xfc, 0x42, 0xb8, 0x8a, 0xcb, 0x3a, 0xca, 0x39, 0x90, 0x31, 0x63, 0x15, + 0xd4, 0xd0, 0x48, 0x78, 0x41, 0x6e, 0xe7, 0x36, 0x7c, 0x14, 0xd4, 0x50, 0xb6, 0x1f, 0x71, 0xcb, + 0x1b, 0xb3, 0xcf, 0x4a, 0x91, 0xdc, 0x40, 0xcb, 0x1b, 0x8b, 0x03, 0xc9, 0x5e, 0xf6, 0x91, 0xdd, + 0xce, 0xb6, 0xef, 0x23, 0x7d, 0x16, 0x4f, 0xca, 0x31, 0x3e, 0x93, 0x1c, 0xe5, 0x87, 0x13, 0x51, + 0x88, 0xa8, 0x49, 0x9f, 0x7a, 0xb4, 0xe1, 0xc1, 0xf9, 0xad, 0x82, 0x38, 0xa3, 0xc4, 0x9a, 0x34, + 0x1c, 0xb8, 0xe8, 0x0b, 0x71, 0x74, 0xad, 0xd1, 0x6c, 0x9b, 0x21, 0x8e, 0xcd, 0xb8, 0x49, 0x1e, + 0x35, 0xc6, 0x11, 0xab, 0x17, 0x30, 0x5c, 0x28, 0x7a, 0x47, 0x43, 0x4a, 0xc6, 0xa1, 0x8b, 0x05, + 0xb7, 0x2a, 0x34, 0xb8, 0x95, 0xfd, 0x50, 0xf7, 0x62, 0x3c, 0xc1, 0xb2, 0x55, 0x6a, 0x98, 0x3a, + 0xf5, 0xfa, 0x78, 0xcc, 0xdb, 0x2b, 0x18, 0xff, 0xe0, 0xfb, 0x24, 0x62, 0x0d, 0x7c, 0xf3, 0x99, + 0x18, 0x6e, 0x72, 0x93, 0x45, 0xf4, 0x32, 0x04, 0x38, 0x7f, 0x7b, 0x60, 0x37, 0x13, 0x5b, 0x60, + 0xc3, 0x54, 0x4b, 0x18, 0x16, 0xf1, 0xde, 0x1a, 0xf5, 0x87, 0xde, 0xf7, 0x97, 0xbc, 0xfe, 0xaa, + 0x56, 0x2f, 0xdd, 0xb3, 0x8c, 0xaa, 0x23, 0x15, 0xb7, 0x76, 0x1a, 0x26, 0x6a, 0x3a, 0x3b, 0x14, + 0xd4, 0x2c, 0xcb, 0x2c, 0x38, 0x46, 0x45, 0xb7, 0x1d, 0xad, 0x52, 0xa3, 0x36, 0xb8, 0x23, 0x3f, + 0x8e, 0x5f, 0xef, 0x59, 0x96, 0xb9, 0xca, 0xbf, 0xa9, 0x3f, 0xce, 0x9f, 0x35, 0x23, 0xc6, 0x44, + 0x0e, 0xd7, 0x60, 0x1f, 0xdf, 0xfc, 0x68, 0x6c, 0x72, 0xa1, 0x4e, 0x7b, 0x15, 0x6a, 0xb4, 0x1b, + 0xa3, 0x43, 0xce, 0xa4, 0x4e, 0x7a, 0xd5, 0xc0, 0x3b, 0x96, 0x7a, 0x08, 0x8d, 0x9b, 0xe7, 0xcb, + 0x9c, 0x56, 0xa9, 0x69, 0x46, 0xb9, 0xca, 0x45, 0xf0, 0xfd, 0x4e, 0x34, 0x60, 0x91, 0x7d, 0x90, + 0xd6, 0x4d, 0x78, 0xc6, 0xa5, 0xd1, 0x9d, 0x04, 0xa4, 0xb2, 0x88, 0x5d, 0xbc, 0x87, 0xaf, 0x33, + 0xc9, 0x67, 0x60, 0x8d, 0xad, 0x51, 0xef, 0x00, 0xd4, 0xdc, 0xec, 0x75, 0xe2, 0x3e, 0x91, 0x1f, + 0x51, 0xe0, 0x48, 0x60, 0x60, 0x2a, 0x04, 0x31, 0xba, 0x5d, 0xdc, 0xd0, 0x5d, 0x7d, 0xc5, 0xeb, + 0xeb, 0xa9, 0xe4, 0x6b, 0x41, 0xce, 0x15, 0x9b, 0x21, 0xcb, 0xcc, 0x1f, 0xf2, 0x0d, 0xed, 0x36, + 0xf1, 0x4e, 0x2b, 0x88, 0x98, 0xfc, 0x7f, 0xd8, 0xeb, 0x58, 0x8e, 0x66, 0x46, 0x0a, 0x29, 0xc5, + 0x16, 0x3a, 0x41, 0xb1, 0x84, 0x44, 0x44, 0x7e, 0x56, 0x81, 0xe3, 0x5c, 0xc1, 0xe4, 0x58, 0xed, + 0x6c, 0x8b, 0xd5, 0xa3, 0x38, 0xc8, 0x6a, 0x4b, 0x8e, 0x2b, 0x70, 0x48, 0x10, 0x14, 0xcb, 0x79, + 0x97, 0xbc, 0x7a, 0x3e, 0xcb, 0x47, 0x8e, 0x9c, 0x00, 0xf5, 0x12, 0xea, 0xe8, 0xa2, 0x7d, 0xb7, + 0xe6, 0xe8, 0xa5, 0xbb, 0x0d, 0xe7, 0xee, 0x3a, 0xeb, 0x60, 0xb7, 0x0e, 0x84, 0x9d, 0x47, 0xe5, + 0x8d, 0x04, 0x46, 0xe5, 0x3d, 0x08, 0x03, 0x86, 0x5d, 0xb0, 0xdc, 0xef, 0x05, 0xab, 0xe1, 0xa0, + 0x57, 0x05, 0x86, 0x00, 0x51, 0x9f, 0xc3, 0x5b, 0x9f, 0x10, 0x0e, 0xbc, 0x14, 0x13, 0xf6, 0x6a, + 0x1e, 0x7d, 0xf7, 0x84, 0x8e, 0x38, 0x68, 0x82, 0x49, 0x51, 0xaf, 0xe2, 0x46, 0xb8, 0xa0, 0xeb, + 0xf3, 0x86, 0xcd, 0xae, 0xdd, 0xd0, 0xe3, 0xf5, 0x6c, 0xe1, 0xf1, 0x4c, 0x7f, 0x4f, 0xc1, 0x6d, + 0x30, 0x0e, 0x01, 0xd2, 0xf0, 0x2c, 0x80, 0x63, 0xe8, 0x75, 0xf1, 0x5c, 0xa4, 0x1c, 0xed, 0xcc, + 0xf7, 0xb9, 0x2d, 0xec, 0x56, 0x27, 0x0f, 0x03, 0xc2, 0xfb, 0x6e, 0x5e, 0x1b, 0x24, 0x7a, 0x27, + 0x9e, 0x01, 0x57, 0x0d, 0xbd, 0x4e, 0x47, 0xeb, 0xd7, 0x9a, 0x43, 0x93, 0xbb, 0xd0, 0x2f, 0x8c, + 0x9a, 0x63, 0xe2, 0x85, 0xc1, 0x54, 0x0a, 0x94, 0xab, 0xab, 0x4b, 0x79, 0xe0, 0xf6, 0xcc, 0x31, + 0x85, 0x05, 0xf3, 0x74, 0xe3, 0x8a, 0xca, 0x85, 0xf2, 0x19, 0xfe, 0x80, 0x16, 0xd9, 0x47, 0xec, + 0xcc, 0xbb, 0xd7, 0x75, 0xbd, 0x50, 0xc2, 0xef, 0xcd, 0xd5, 0xa4, 0xa4, 0xe2, 0x5a, 0xe0, 0x1d, + 0x5b, 0x0f, 0x37, 0xaa, 0xd7, 0x71, 0xa3, 0xc1, 0x78, 0xef, 0x65, 0xc3, 0xae, 0x68, 0x4e, 0xd1, + 0x73, 0x87, 0x79, 0x00, 0xfa, 0x4b, 0x0d, 0xdb, 0x29, 0xac, 0x6b, 0x45, 0xc7, 0x62, 0xa9, 0x29, + 0x1d, 0x79, 0x70, 0x9b, 0x16, 0x68, 0x8b, 0xfa, 0x1b, 0x1d, 0x30, 0x1c, 0x80, 0x26, 0x2a, 0xf8, + 0xce, 0x44, 0xf2, 0x81, 0x98, 0x64, 0x16, 0xfa, 0xb4, 0x4d, 0xcd, 0x48, 0x1d, 0x01, 0xd1, 0x84, + 0x22, 0x17, 0xa0, 0x8b, 0x1a, 0x81, 0x34, 0x2e, 0x3e, 0x83, 0x20, 0x0b, 0x30, 0x80, 0x91, 0xee, + 0x85, 0x0d, 0xcb, 0x2c, 0x79, 0x1e, 0x59, 0x5a, 0xbf, 0xfe, 0x20, 0xe0, 0x2d, 0xcb, 0x2c, 0x91, + 0x17, 0x61, 0x48, 0x7f, 0x54, 0xd3, 0x8b, 0xee, 0xfa, 0x65, 0xb4, 0x74, 0xcb, 0x63, 0x1a, 0xe4, + 0xa0, 0xd4, 0xfa, 0x90, 0x39, 0x80, 0x92, 0xb1, 0x8e, 0x0f, 0x38, 0xec, 0xfa, 0x5d, 0xf2, 0x04, + 0xd4, 0x04, 0x53, 0x7f, 0x18, 0xf7, 0xf6, 0x08, 0x31, 0xa3, 0xb6, 0xbd, 0x02, 0x84, 0xb3, 0x5e, + 0x11, 0x5f, 0xd1, 0x95, 0xf9, 0x90, 0x44, 0xa6, 0x00, 0x47, 0x99, 0x1f, 0x5d, 0x0b, 0x8e, 0xa1, + 0x1e, 0xc1, 0xc5, 0x8f, 0x5d, 0x5d, 0x47, 0x31, 0xd7, 0x9c, 0x2d, 0x61, 0xaa, 0x7e, 0x31, 0x03, + 0xbb, 0x3d, 0x5d, 0xd8, 0x61, 0x8b, 0xce, 0xe7, 0xff, 0x71, 0x7d, 0x52, 0x7f, 0x81, 0x7b, 0xf3, + 0xb1, 0x33, 0x88, 0x52, 0xac, 0x42, 0x96, 0x0f, 0x48, 0x6f, 0xd0, 0xbd, 0xa3, 0x4b, 0x85, 0xcd, + 0x44, 0xce, 0x7f, 0x7e, 0xcf, 0x5a, 0xf4, 0xb8, 0x62, 0x1b, 0x0a, 0x98, 0x44, 0xd7, 0x95, 0x36, + 0x6c, 0xc7, 0x28, 0x0a, 0xd9, 0x5e, 0x80, 0x41, 0xdf, 0x07, 0x42, 0xa0, 0xd3, 0xb5, 0xeb, 0x68, + 0xe3, 0xe9, 0xdf, 0xae, 0x08, 0x9b, 0xa9, 0x41, 0x9d, 0x79, 0xf6, 0x43, 0xb5, 0x71, 0x07, 0x4b, + 0x18, 0x43, 0x1c, 0x5a, 0xc1, 0x16, 0xad, 0x32, 0x51, 0xf2, 0x3e, 0x3c, 0x79, 0x0f, 0xb0, 0xeb, + 0xff, 0x2f, 0x1b, 0x8e, 0xf5, 0x92, 0xd6, 0x30, 0xe9, 0x36, 0x21, 0x18, 0xf9, 0x63, 0x05, 0x26, + 0x82, 0x5f, 0x70, 0xf8, 0xe7, 0x61, 0xa4, 0xa2, 0xd9, 0x8e, 0x5e, 0xe7, 0x6f, 0x94, 0x3a, 0xdf, + 0x48, 0x87, 0x59, 0xfb, 0x2c, 0x6f, 0x26, 0x27, 0x61, 0xbc, 0x24, 0x8e, 0x00, 0x9e, 0xee, 0xec, + 0x29, 0x64, 0xac, 0xf9, 0xad, 0x09, 0x72, 0x04, 0x86, 0xec, 0x9a, 0xe5, 0x78, 0x3a, 0xb3, 0xc7, + 0xa0, 0x41, 0xb7, 0xd5, 0xd7, 0xad, 0xf8, 0xea, 0xcc, 0x09, 0x4f, 0xb7, 0x4e, 0xd6, 0xcd, 0x6d, + 0x15, 0xdd, 0xd4, 0x79, 0xb4, 0xfb, 0x78, 0xf0, 0x9d, 0x5f, 0xa8, 0x5b, 0x15, 0xca, 0x92, 0xe7, + 0xae, 0x6b, 0xd3, 0xfd, 0x5d, 0xf0, 0xdf, 0x64, 0x0e, 0xd0, 0x46, 0xfe, 0xda, 0xca, 0xc3, 0xa8, + 0x22, 0xb0, 0xe0, 0x9c, 0x24, 0x9e, 0x8d, 0xf9, 0xf1, 0xfa, 0x96, 0x61, 0x3b, 0x56, 0xdd, 0x28, + 0x0a, 0x5f, 0xab, 0x68, 0x79, 0x5c, 0xa9, 0x44, 0x14, 0x0e, 0x9a, 0x96, 0x38, 0x14, 0xe2, 0x5e, + 0x60, 0x90, 0xbb, 0x84, 0xf4, 0x83, 0x4c, 0x16, 0x82, 0x0f, 0xd1, 0x80, 0xe3, 0xf9, 0xa5, 0xfe, + 0x81, 0x02, 0x63, 0xf4, 0x33, 0x1b, 0xd6, 0x75, 0xae, 0xdc, 0xa3, 0x20, 0x79, 0x01, 0x08, 0x1b, + 0xa6, 0x5c, 0xb7, 0x1a, 0x35, 0xd7, 0x1d, 0xb5, 0xf5, 0x22, 0xaa, 0xf8, 0x08, 0xfd, 0x72, 0x13, + 0x3f, 0xac, 0xe8, 0x45, 0xb2, 0x07, 0x7a, 0x2a, 0xda, 0xa3, 0x82, 0x56, 0xd6, 0x51, 0xe1, 0xbb, + 0x2b, 0xda, 0xa3, 0xd9, 0xb2, 0x4e, 0xa6, 0x60, 0xcc, 0xa8, 0x16, 0xcd, 0x86, 0x4b, 0xaf, 0xf6, + 0x6a, 0x61, 0x83, 0x0d, 0x82, 0x21, 0x7d, 0xa3, 0xf8, 0x29, 0xaf, 0xbd, 0x8a, 0xa3, 0xbb, 0x8a, + 0xc7, 0xfb, 0x8b, 0xb3, 0x3c, 0x7d, 0xe5, 0xcd, 0x0f, 0x63, 0x3b, 0x3f, 0xa3, 0xab, 0xbf, 0xa6, + 0xe0, 0x7d, 0xbd, 0xc8, 0xb1, 0xd0, 0x1c, 0xc3, 0x34, 0x9c, 0x2d, 0xa9, 0x37, 0xcb, 0x22, 0xec, + 0x66, 0xfc, 0x21, 0x49, 0xae, 0x8b, 0xea, 0x32, 0x2e, 0xe3, 0x88, 0x45, 0xcc, 0x57, 0x7e, 0xcc, + 0x09, 0x37, 0xaa, 0x9f, 0xce, 0xf8, 0x74, 0xd3, 0x4b, 0xa2, 0xc8, 0xc5, 0x80, 0x4d, 0xd1, 0x8a, + 0x2f, 0x7c, 0x07, 0x5a, 0x6e, 0x87, 0x4d, 0x10, 0xf2, 0x32, 0x8c, 0x70, 0x0e, 0xc4, 0x84, 0x65, + 0x42, 0x0f, 0x5a, 0x98, 0xc1, 0x2b, 0x1e, 0x61, 0xb0, 0xa7, 0xc7, 0xf0, 0x0c, 0x23, 0x16, 0xfe, + 0x89, 0xdc, 0x82, 0x7e, 0xaf, 0xc4, 0x3a, 0xa8, 0x96, 0x3d, 0x27, 0xa9, 0x65, 0x79, 0xa8, 0x0b, + 0x99, 0x8a, 0x44, 0xa2, 0x9c, 0x51, 0xd5, 0xf8, 0x54, 0xb4, 0x7a, 0x57, 0x55, 0xcb, 0x18, 0x6c, + 0x1d, 0x00, 0x12, 0xe6, 0x31, 0xf0, 0xec, 0x93, 0x28, 0x2f, 0x86, 0x03, 0x85, 0x12, 0x7c, 0xf5, + 0x79, 0x08, 0xc7, 0x23, 0x9f, 0xfe, 0xe7, 0xac, 0x6a, 0xc9, 0x60, 0x51, 0x62, 0x3b, 0x9d, 0x79, + 0xfc, 0xab, 0x1d, 0x70, 0x28, 0xf4, 0x2a, 0x1d, 0x1c, 0xef, 0x07, 0x37, 0xbe, 0xe3, 0x26, 0x0c, + 0x38, 0x75, 0xa3, 0x5c, 0xd6, 0xeb, 0xf7, 0xd2, 0x3e, 0x30, 0xfa, 0x00, 0x5b, 0xc7, 0x79, 0x1c, + 0x81, 0x1e, 0xc3, 0xa6, 0xcf, 0xf9, 0xd4, 0x2b, 0xed, 0xcd, 0xf5, 0xbf, 0xfb, 0xd6, 0x01, 0xde, + 0x94, 0xe7, 0x7f, 0x04, 0xc2, 0x41, 0x7a, 0x62, 0xc2, 0x41, 0x7a, 0x9b, 0xe1, 0x20, 0x9f, 0x51, + 0x7c, 0x41, 0x75, 0x89, 0x4a, 0x21, 0x92, 0x3e, 0xfd, 0x21, 0x09, 0x57, 0x52, 0x85, 0x24, 0x04, + 0xf1, 0x8a, 0xc0, 0x84, 0xcb, 0x68, 0x40, 0x78, 0x00, 0x7f, 0xaa, 0xa0, 0x4a, 0xf5, 0x37, 0xf9, + 0x45, 0x58, 0x04, 0x38, 0xd2, 0x3d, 0x0b, 0x9d, 0x39, 0x43, 0xec, 0x22, 0xc7, 0x25, 0xa8, 0xf6, + 0x84, 0x4f, 0x50, 0x50, 0x17, 0xc5, 0xac, 0xfd, 0x80, 0x67, 0x64, 0xa6, 0x45, 0xe1, 0x82, 0x8a, + 0x8b, 0x75, 0xff, 0xbb, 0x67, 0x3a, 0x66, 0x7f, 0x9b, 0x7b, 0x96, 0xb1, 0x48, 0xde, 0x57, 0x2c, + 0x7f, 0x43, 0x81, 0xd1, 0xd0, 0xb7, 0xa7, 0xba, 0xe8, 0xfd, 0xcb, 0xa4, 0x23, 0xb8, 0x4c, 0x42, + 0x76, 0xaf, 0x33, 0xe2, 0xc9, 0x70, 0x19, 0x17, 0x0e, 0xbe, 0x26, 0x3b, 0x56, 0xc5, 0x28, 0xde, + 0x78, 0xa4, 0x17, 0x1b, 0xae, 0x72, 0x2f, 0xe8, 0xfa, 0x72, 0xc3, 0x74, 0x8c, 0x9a, 0x69, 0xe8, + 0x75, 0x29, 0x99, 0x6e, 0xe2, 0x13, 0xaa, 0x0c, 0x3a, 0x94, 0xee, 0x1c, 0x40, 0x45, 0xb4, 0xa6, + 0x99, 0x46, 0x0f, 0x98, 0x7a, 0x9e, 0xe7, 0x5a, 0x53, 0xa1, 0xae, 0x38, 0xda, 0x03, 0xfd, 0x66, + 0x5d, 0x6b, 0x46, 0x67, 0x4e, 0x42, 0x4f, 0xd9, 0xfd, 0xad, 0xeb, 0xfc, 0x7a, 0x08, 0x7f, 0xaa, + 0x5f, 0x10, 0xa9, 0xd4, 0x21, 0x50, 0x24, 0xf0, 0x0a, 0x74, 0xd1, 0xce, 0x78, 0xf9, 0x91, 0xb8, + 0xa5, 0x32, 0x24, 0x0c, 0x9e, 0x41, 0x91, 0x15, 0x68, 0x3e, 0xe2, 0x15, 0x18, 0x22, 0x89, 0x8c, + 0x2e, 0xf1, 0x0e, 0xc7, 0x70, 0x0d, 0xe9, 0xbe, 0xdf, 0xea, 0x2a, 0xda, 0x09, 0xfa, 0x6b, 0xb6, + 0xe1, 0x6c, 0x58, 0x75, 0xe3, 0x87, 0x68, 0x08, 0x67, 0x88, 0xe3, 0xba, 0x9f, 0xe3, 0xba, 0x77, + 0x2e, 0x32, 0xfe, 0xb9, 0xf8, 0x08, 0x5e, 0x1f, 0x45, 0x61, 0xc5, 0xc9, 0x38, 0x03, 0xdd, 0x18, + 0x9e, 0xca, 0x24, 0xf5, 0x2c, 0x4a, 0x6a, 0x77, 0x58, 0x52, 0x8b, 0x55, 0x27, 0x8f, 0x9d, 0xc5, + 0xb5, 0x65, 0x18, 0xb3, 0xdd, 0x92, 0x60, 0xd7, 0xe5, 0x3d, 0x18, 0x0f, 0x2d, 0x62, 0xbe, 0x09, + 0xbb, 0x7f, 0xa5, 0x50, 0x85, 0x34, 0x44, 0x8e, 0x50, 0x40, 0x86, 0x9c, 0x47, 0x3a, 0x77, 0x53, + 0x34, 0xb6, 0xcc, 0x4d, 0x79, 0xc4, 0x6c, 0x21, 0xb4, 0x7a, 0x1e, 0x3d, 0x29, 0x7c, 0x9b, 0x62, + 0xc7, 0x57, 0xa9, 0x85, 0xf4, 0x31, 0x74, 0xa7, 0x02, 0x90, 0x42, 0x25, 0x7b, 0xf0, 0x58, 0x9c, + 0x66, 0xc1, 0x70, 0x18, 0x51, 0xd3, 0xc3, 0x87, 0xdc, 0xf3, 0xcc, 0xb4, 0x2f, 0xf2, 0x6b, 0x6c, + 0x35, 0x87, 0xe7, 0x5b, 0x27, 0x54, 0x73, 0x06, 0x9a, 0xd5, 0x1c, 0x1e, 0xc0, 0xa0, 0xef, 0x53, + 0xb2, 0xf7, 0xef, 0x61, 0x38, 0xd3, 0x06, 0xc3, 0xa7, 0x45, 0xa4, 0x50, 0xd5, 0xaa, 0x2c, 0x1b, + 0x55, 0x9e, 0x4e, 0x90, 0x9c, 0x87, 0xff, 0x71, 0x11, 0x22, 0x14, 0x84, 0xc2, 0xa9, 0xb8, 0x14, + 0x58, 0x0c, 0x72, 0x5e, 0x17, 0x2e, 0x89, 0x03, 0x31, 0xd8, 0x85, 0x1c, 0x3e, 0x25, 0x82, 0xa9, + 0x42, 0x1d, 0x70, 0xfc, 0x8f, 0xc3, 0x18, 0x4b, 0xcf, 0xaf, 0x18, 0x55, 0x91, 0x66, 0xc1, 0xa5, + 0xf2, 0x42, 0xcb, 0x1c, 0x7d, 0x2f, 0x4b, 0xa3, 0xa5, 0xe0, 0x28, 0xc7, 0x4e, 0x43, 0x9f, 0x48, + 0x3a, 0x26, 0xe3, 0x30, 0xe2, 0xfe, 0x5b, 0xb8, 0x5f, 0xb5, 0x6b, 0x7a, 0xd1, 0x58, 0x37, 0xf4, + 0xd2, 0xc8, 0x2e, 0xd2, 0x03, 0x1d, 0xb9, 0xc6, 0xd6, 0x88, 0x42, 0x7a, 0xa1, 0x73, 0x45, 0x37, + 0xcd, 0x91, 0xcc, 0xb1, 0x97, 0x60, 0x3c, 0x2a, 0xa2, 0xdc, 0x45, 0xe0, 0x81, 0xa5, 0x88, 0x47, + 0x76, 0x91, 0x31, 0x18, 0x76, 0x0f, 0xee, 0x2f, 0x5b, 0x75, 0xdb, 0x59, 0xb5, 0x72, 0xba, 0xed, + 0x8c, 0x28, 0xbc, 0xd1, 0xfd, 0xb5, 0x6a, 0xd1, 0x4f, 0x23, 0x99, 0x99, 0x9f, 0xb4, 0xa0, 0x8b, + 0x4e, 0x07, 0x79, 0x5b, 0x81, 0xdd, 0x4b, 0xa7, 0x02, 0x0e, 0x43, 0xce, 0xb2, 0x1e, 0x90, 0x6b, + 0x2d, 0x0b, 0xac, 0x24, 0xfb, 0x2b, 0xd9, 0xeb, 0xed, 0x23, 0x60, 0x22, 0x51, 0x17, 0x7e, 0xec, + 0x1b, 0xdf, 0xf9, 0x5c, 0xe6, 0x3a, 0xb9, 0x3a, 0x9d, 0x50, 0xc7, 0xa9, 0x79, 0xc7, 0x32, 0xbd, + 0x74, 0x4a, 0x90, 0x3f, 0xfd, 0x58, 0xe8, 0xff, 0x13, 0xf2, 0xba, 0x02, 0xc3, 0x4b, 0xa7, 0x84, + 0x0b, 0x48, 0xd9, 0xbb, 0x20, 0x45, 0x5d, 0x94, 0xd7, 0x99, 0xbd, 0xd8, 0x0e, 0x28, 0xb2, 0x74, + 0x9d, 0xb2, 0x74, 0x91, 0x9c, 0x4f, 0x62, 0xc9, 0xae, 0x59, 0x4e, 0x2c, 0x33, 0x5f, 0x54, 0x60, + 0x2c, 0xa2, 0x4c, 0x10, 0x39, 0xdb, 0x92, 0xaa, 0xc8, 0xaa, 0x43, 0xd9, 0x73, 0xa9, 0xe1, 0x90, + 0x95, 0x19, 0xca, 0xca, 0x0b, 0xe4, 0xd8, 0xb4, 0x44, 0x41, 0x2e, 0x24, 0xf2, 0x2f, 0x14, 0x20, + 0xe1, 0xba, 0x3c, 0xe4, 0x62, 0x5b, 0xc5, 0x7c, 0x18, 0xfd, 0x97, 0xb6, 0x51, 0x08, 0x48, 0xbd, + 0x46, 0x79, 0xb8, 0x40, 0xce, 0xc9, 0xf0, 0x30, 0x6d, 0x87, 0x29, 0x7f, 0x5d, 0x81, 0xd1, 0x10, + 0x7e, 0x09, 0xe5, 0x8a, 0x2b, 0x7e, 0x91, 0xbd, 0xd8, 0x0e, 0x28, 0x72, 0x73, 0x95, 0x72, 0x73, + 0x9e, 0x9c, 0x6d, 0x8f, 0x1b, 0xf2, 0x27, 0x0a, 0x8c, 0x04, 0x0b, 0x0f, 0x91, 0xf3, 0xd2, 0xfa, + 0x11, 0xd8, 0xfb, 0xb2, 0x17, 0xda, 0x80, 0x44, 0x4e, 0xae, 0x50, 0x4e, 0xce, 0x91, 0x33, 0x52, + 0x9c, 0xe8, 0x41, 0x9a, 0xff, 0x5c, 0x81, 0xe1, 0x40, 0x35, 0x1f, 0xd2, 0x5a, 0xcf, 0xa3, 0x6b, + 0x21, 0x65, 0xcf, 0xa7, 0x07, 0x4c, 0x63, 0xbf, 0x44, 0x43, 0xa0, 0xe6, 0xd1, 0xf4, 0x63, 0x94, + 0xce, 0x13, 0x2a, 0x97, 0x60, 0x71, 0x22, 0x92, 0x9a, 0xac, 0x14, 0x72, 0x89, 0xab, 0x84, 0x94, + 0x52, 0x2e, 0xc1, 0x2a, 0x4e, 0xe4, 0x9f, 0x15, 0xd8, 0x1d, 0x59, 0x61, 0x86, 0x5c, 0x91, 0xa7, + 0x29, 0xa2, 0x44, 0x51, 0xf6, 0x6a, 0xbb, 0xe0, 0xc8, 0xd7, 0x1d, 0xca, 0xd7, 0x2d, 0xb2, 0x90, + 0x8e, 0x2f, 0x2f, 0x2e, 0x9f, 0x91, 0x7e, 0x4b, 0x81, 0x89, 0xe8, 0x52, 0x3a, 0xa4, 0x4d, 0x52, + 0x85, 0xf4, 0xae, 0xb5, 0x0d, 0x8f, 0xbc, 0xce, 0x51, 0x5e, 0xaf, 0x90, 0x4b, 0xed, 0xf3, 0x6a, + 0x93, 0xaf, 0x28, 0x30, 0xe0, 0xad, 0x4d, 0x44, 0x4e, 0xb7, 0x24, 0x2b, 0xa2, 0x66, 0x53, 0xf6, + 0x4c, 0x4a, 0x28, 0x64, 0x21, 0x47, 0x59, 0xb8, 0x4c, 0x2e, 0x4a, 0xb1, 0xe0, 0xab, 0xba, 0x34, + 0xfd, 0x98, 0xfe, 0x7c, 0x42, 0xbe, 0xa4, 0xc0, 0xa0, 0xaf, 0xba, 0x12, 0x49, 0x47, 0x8c, 0x10, + 0xc8, 0xd9, 0xb4, 0x60, 0xc8, 0xc4, 0x25, 0xca, 0xc4, 0x19, 0x72, 0x2a, 0x3d, 0x13, 0x36, 0xf9, + 0x2d, 0x05, 0xfa, 0x3d, 0xc5, 0x3e, 0xc8, 0xa9, 0xd6, 0xdb, 0x46, 0xa8, 0x48, 0x49, 0xf6, 0x74, + 0x3a, 0x20, 0xa4, 0xfb, 0x04, 0xa5, 0xfb, 0x18, 0x39, 0xda, 0xd2, 0x85, 0xc1, 0x5b, 0x66, 0xf2, + 0x05, 0x05, 0xc0, 0x53, 0xd8, 0x65, 0x26, 0xc5, 0xb0, 0x9c, 0xd4, 0x53, 0xa9, 0x60, 0x90, 0xd2, + 0xcb, 0x94, 0xd2, 0xb3, 0xe4, 0xb4, 0x2c, 0xa5, 0xbe, 0x35, 0xfc, 0x25, 0x05, 0x86, 0x03, 0x35, + 0x55, 0x24, 0x36, 0x91, 0xe8, 0x7a, 0x30, 0x12, 0x9b, 0x48, 0x4c, 0xf9, 0x16, 0xf5, 0x0c, 0x65, + 0x62, 0x9a, 0x1c, 0x6f, 0xc9, 0xc4, 0x7a, 0xc3, 0x34, 0x0b, 0x7c, 0xce, 0x5f, 0x0b, 0x17, 0xd4, + 0x39, 0x9b, 0x92, 0x06, 0x79, 0x0f, 0x31, 0xba, 0x4a, 0x4b, 0x0a, 0x67, 0xd7, 0x43, 0xba, 0x4f, + 0x06, 0x5f, 0x56, 0x60, 0xd0, 0xe7, 0x48, 0x4b, 0x2c, 0xd2, 0x48, 0x9f, 0xfd, 0x6c, 0x5a, 0xb0, + 0x34, 0x2e, 0x15, 0x65, 0xc1, 0xe2, 0xb0, 0x3e, 0x06, 0xde, 0x54, 0x60, 0x24, 0x98, 0x9c, 0x2e, + 0xb1, 0x75, 0xc7, 0x54, 0x67, 0x91, 0xd8, 0xba, 0xe3, 0x2a, 0x7d, 0xa8, 0xb7, 0x29, 0x27, 0x37, + 0xc8, 0x9c, 0x1c, 0x27, 0xbe, 0xb5, 0x30, 0xfd, 0xd8, 0x77, 0xf9, 0xf9, 0x84, 0xfc, 0xbb, 0x02, + 0x93, 0x71, 0x75, 0x3e, 0x48, 0xeb, 0x83, 0x5f, 0x8b, 0xd2, 0x30, 0xd9, 0xd9, 0x6d, 0x60, 0x40, + 0x76, 0xef, 0x53, 0x76, 0xef, 0x92, 0xe5, 0x76, 0xd8, 0x45, 0x56, 0x85, 0x0b, 0xc6, 0x1f, 0xcf, + 0x9f, 0x90, 0xef, 0xb8, 0x07, 0x98, 0x50, 0xa1, 0x1e, 0x99, 0x03, 0x4c, 0x5c, 0x91, 0x21, 0x99, + 0x03, 0x4c, 0x6c, 0x65, 0xa0, 0xd4, 0x6c, 0x16, 0xd6, 0xb6, 0x30, 0x07, 0x35, 0x51, 0xbe, 0xaf, + 0x29, 0x30, 0x12, 0xac, 0x0c, 0x2c, 0xa1, 0xb6, 0x31, 0xf5, 0x8a, 0xb3, 0x17, 0xda, 0x80, 0x44, + 0x06, 0x2f, 0x52, 0x06, 0x4f, 0x93, 0x99, 0x24, 0x06, 0xb9, 0x08, 0x03, 0x5c, 0x7c, 0x57, 0x81, + 0xbd, 0xcd, 0xf5, 0xb0, 0x5a, 0xd7, 0xaa, 0xb6, 0xa1, 0x57, 0x9f, 0xea, 0x2a, 0x94, 0x97, 0x97, + 0xc3, 0xc9, 0x2d, 0x48, 0xac, 0xc7, 0xbf, 0x41, 0xb5, 0xf4, 0x27, 0x18, 0x4a, 0xaa, 0x65, 0x64, + 0xd5, 0x17, 0x49, 0xb5, 0x8c, 0xae, 0xf5, 0x22, 0x77, 0xf2, 0x61, 0x3b, 0x6f, 0x30, 0x8f, 0xd2, + 0x67, 0x3e, 0xff, 0x55, 0x81, 0xc9, 0xb8, 0xc2, 0x32, 0x12, 0x76, 0xa6, 0x45, 0x65, 0x1b, 0x09, + 0x3b, 0xd3, 0xaa, 0xaa, 0x8d, 0xba, 0x44, 0x39, 0x5d, 0x20, 0xf3, 0x92, 0x77, 0x54, 0xc9, 0xfc, + 0x7e, 0x53, 0x81, 0xb1, 0x88, 0x1b, 0x31, 0x72, 0x29, 0x05, 0xa1, 0xa1, 0xbd, 0xef, 0x72, 0x7b, + 0xc0, 0xc8, 0xe0, 0x3c, 0x65, 0xf0, 0x2a, 0xb9, 0x2c, 0xc9, 0x60, 0xf4, 0x3e, 0xf8, 0x2f, 0x0a, + 0x4c, 0x44, 0xd7, 0x17, 0x90, 0x38, 0x10, 0x25, 0x16, 0xb8, 0x90, 0x38, 0x10, 0x25, 0x17, 0x36, + 0x50, 0x3f, 0x4c, 0x39, 0xbc, 0x4d, 0x16, 0xd3, 0x70, 0x98, 0xbc, 0x1e, 0x7f, 0x26, 0x03, 0xfb, + 0x93, 0xcb, 0x1a, 0x90, 0x85, 0x94, 0x7b, 0x5c, 0x1c, 0xfb, 0x37, 0xb7, 0x8d, 0x07, 0xa7, 0xe1, + 0x63, 0x74, 0x1a, 0xee, 0x93, 0x95, 0xf6, 0xa7, 0x21, 0x7e, 0xdf, 0xfc, 0x2f, 0xdf, 0x42, 0x0e, + 0xec, 0x9e, 0xd7, 0xd3, 0x2a, 0x68, 0x68, 0x0f, 0x9d, 0xdd, 0x06, 0x86, 0x6d, 0xb1, 0x2f, 0xb9, + 0x9f, 0xfe, 0xb7, 0x02, 0x07, 0x82, 0x5a, 0x18, 0xdc, 0x8f, 0x9e, 0xfa, 0x3a, 0x48, 0x3b, 0x03, + 0xa9, 0x76, 0xa8, 0x3f, 0x52, 0x60, 0x34, 0x94, 0xc9, 0x2e, 0x71, 0x51, 0x1a, 0x57, 0x93, 0x42, + 0xe2, 0xa2, 0x34, 0x36, 0x71, 0x5e, 0x3d, 0x4b, 0x39, 0x3d, 0x41, 0xa6, 0x64, 0x8d, 0x36, 0x92, + 0xfb, 0x75, 0x05, 0x46, 0x42, 0xb5, 0x14, 0xce, 0xa7, 0x26, 0x44, 0xde, 0x8f, 0x88, 0x4b, 0xa8, + 0x97, 0xbb, 0x01, 0x09, 0x73, 0xe0, 0xb3, 0xc9, 0xdf, 0x55, 0x60, 0x4f, 0x4c, 0x0a, 0xbc, 0xc4, + 0xeb, 0x4f, 0x72, 0x02, 0x7e, 0xf6, 0x7a, 0xfb, 0x08, 0x90, 0xc5, 0x45, 0xca, 0xe2, 0x1c, 0x99, + 0x4d, 0xc5, 0x22, 0x37, 0x39, 0x3e, 0x4e, 0xff, 0x4a, 0x81, 0xf1, 0xa8, 0x9c, 0x45, 0x72, 0x39, + 0x85, 0x63, 0x1a, 0x4a, 0xde, 0xcf, 0x5e, 0x69, 0x13, 0x3a, 0xcd, 0xf5, 0x84, 0x68, 0x08, 0x2e, + 0xa8, 0xdf, 0x55, 0x60, 0x8c, 0xdf, 0x9f, 0x7b, 0x32, 0x27, 0x25, 0x6e, 0x82, 0xc2, 0x29, 0x98, + 0x12, 0x37, 0x41, 0x11, 0xc9, 0x99, 0x72, 0x37, 0x41, 0x15, 0x0a, 0x58, 0xa0, 0xf9, 0x90, 0xe4, + 0xd7, 0x15, 0xe8, 0x13, 0x19, 0x97, 0xe4, 0x64, 0xcb, 0x51, 0x83, 0x69, 0x9b, 0xd9, 0x99, 0x34, + 0x20, 0x48, 0xe6, 0x71, 0x4a, 0xe6, 0x73, 0xe4, 0x48, 0x12, 0x99, 0x35, 0x41, 0xd5, 0x5f, 0x2a, + 0x30, 0x16, 0x91, 0xf4, 0x4f, 0xd2, 0x3c, 0x34, 0x85, 0xe8, 0xbe, 0xdc, 0x1e, 0x70, 0x9a, 0x6b, + 0x77, 0xc1, 0x41, 0x48, 0x55, 0xfe, 0x4d, 0x81, 0x6c, 0x7c, 0x59, 0x01, 0x92, 0x6b, 0x83, 0xb6, + 0x40, 0xed, 0x86, 0xec, 0xdc, 0xb6, 0x70, 0xa4, 0x59, 0xf1, 0xb1, 0x6c, 0xfa, 0x56, 0xfc, 0xcf, + 0x67, 0xe0, 0xb0, 0x44, 0x5a, 0x3f, 0xb9, 0x9d, 0x82, 0xee, 0x56, 0x05, 0x2c, 0xb2, 0x4b, 0x3b, + 0x83, 0x0c, 0x67, 0x63, 0x85, 0xce, 0xc6, 0x32, 0xb9, 0x9d, 0x68, 0x1e, 0x44, 0x34, 0x94, 0xdc, + 0xbc, 0xfc, 0xad, 0x02, 0x63, 0x11, 0x89, 0xfe, 0x12, 0xca, 0x1d, 0x5f, 0xa5, 0x40, 0x42, 0xb9, + 0x13, 0x4a, 0x14, 0xa8, 0x37, 0x28, 0x9f, 0xd7, 0xc8, 0x95, 0x44, 0xa9, 0x8b, 0x3a, 0x43, 0x9e, + 0xca, 0x4b, 0x3e, 0xce, 0xbe, 0xad, 0xc0, 0x9e, 0x98, 0x5a, 0x00, 0x12, 0xbb, 0x59, 0x72, 0x51, + 0x03, 0x89, 0xdd, 0xac, 0x45, 0x45, 0x03, 0xd9, 0x27, 0x0b, 0x17, 0x49, 0x2c, 0x8b, 0xef, 0x28, + 0x30, 0x11, 0x5d, 0x34, 0x40, 0xc2, 0x79, 0x4c, 0xac, 0x7d, 0x20, 0xe1, 0x3c, 0x26, 0x17, 0x3e, + 0x50, 0x6f, 0x51, 0xfe, 0x72, 0xe4, 0x7a, 0x2a, 0x29, 0x62, 0xb1, 0xaa, 0x90, 0x20, 0x63, 0xaa, + 0x1d, 0x48, 0x08, 0x32, 0xb9, 0xf4, 0x8b, 0x84, 0x20, 0x5b, 0x14, 0x5a, 0x90, 0x13, 0x24, 0x0b, + 0x25, 0xe5, 0x39, 0x09, 0x51, 0xd7, 0x6b, 0xa3, 0xe1, 0x7c, 0x6c, 0xc9, 0x6b, 0xa5, 0x88, 0x32, + 0x02, 0x12, 0xce, 0x70, 0x6c, 0x35, 0x00, 0xf5, 0x1c, 0x65, 0xe8, 0x24, 0x99, 0x4e, 0x62, 0x28, + 0x22, 0x11, 0x9b, 0xfc, 0xb5, 0x02, 0x93, 0xf7, 0x9a, 0xa9, 0xdd, 0xef, 0x0b, 0x66, 0xa4, 0x02, + 0x3a, 0xbc, 0x49, 0xef, 0x41, 0xa6, 0xbe, 0xce, 0x53, 0x82, 0xfc, 0x35, 0x01, 0x24, 0x0c, 0x64, + 0x7c, 0xa5, 0x03, 0x09, 0x03, 0x99, 0x50, 0x02, 0x41, 0xbd, 0x40, 0x79, 0x3a, 0x45, 0x4e, 0x4a, + 0x0b, 0x88, 0x67, 0xee, 0x93, 0xb7, 0x15, 0x98, 0x88, 0x4e, 0xd5, 0x96, 0xb0, 0x18, 0x89, 0x49, + 0xe2, 0x12, 0x16, 0x23, 0x39, 0x47, 0x5c, 0xbd, 0x49, 0xd9, 0x9a, 0x25, 0xd7, 0x92, 0xd8, 0xf2, + 0x65, 0x4e, 0x7b, 0x73, 0xc6, 0x3d, 0xe1, 0x11, 0xae, 0xc8, 0x22, 0x12, 0xa5, 0x25, 0x44, 0x16, + 0x9f, 0xda, 0x2d, 0x21, 0xb2, 0x84, 0x9c, 0x6f, 0x39, 0x91, 0x45, 0x66, 0x85, 0x93, 0x37, 0x14, + 0x18, 0x0d, 0xa5, 0xf7, 0x4a, 0x2c, 0xa7, 0xb8, 0xcc, 0x6f, 0x89, 0xe5, 0x14, 0x9b, 0x4d, 0x2c, + 0x77, 0xf9, 0x17, 0xce, 0x37, 0x9e, 0x7e, 0xec, 0xc9, 0x35, 0x7f, 0x42, 0xfe, 0x41, 0x81, 0x3d, + 0x31, 0x19, 0xaf, 0x12, 0x16, 0x3d, 0x39, 0xdb, 0x58, 0xc2, 0xa2, 0xb7, 0x48, 0xb6, 0x95, 0xb3, + 0x19, 0x3c, 0xd6, 0x36, 0x22, 0x1f, 0x97, 0xfc, 0xa3, 0x02, 0x7b, 0x63, 0xb3, 0x5a, 0xc9, 0x6c, + 0x1a, 0x4d, 0x8a, 0xcc, 0xba, 0xcd, 0xe6, 0xb6, 0x83, 0x22, 0x4d, 0xb8, 0x81, 0x4f, 0x25, 0x69, + 0x05, 0x07, 0xf7, 0xdc, 0x66, 0x93, 0xcf, 0x2b, 0x30, 0xe4, 0xcf, 0x96, 0x4d, 0x3e, 0xbc, 0x45, + 0xe6, 0xdc, 0x26, 0x1f, 0xde, 0xa2, 0x93, 0x71, 0xd5, 0xd3, 0x94, 0xec, 0x29, 0xf2, 0x42, 0xe2, + 0x19, 0xd3, 0x70, 0xac, 0x02, 0x4b, 0x73, 0x35, 0x28, 0x71, 0x6f, 0x2a, 0x58, 0xde, 0x27, 0x94, + 0xd1, 0x2a, 0xb1, 0x92, 0xe2, 0x72, 0x69, 0x25, 0x56, 0x52, 0x6c, 0x02, 0xad, 0x5c, 0xd4, 0x0d, + 0x63, 0x41, 0xf8, 0x42, 0xd3, 0x8f, 0x7d, 0xa9, 0xbb, 0xd4, 0x7b, 0x9f, 0x88, 0xce, 0x90, 0x95, + 0x30, 0xe7, 0x89, 0xd9, 0xb9, 0x12, 0xe6, 0x3c, 0x39, 0x35, 0x57, 0xee, 0x36, 0x63, 0x43, 0xe0, + 0x28, 0xf8, 0xf2, 0x78, 0xe9, 0xb9, 0x24, 0xa2, 0x92, 0x8a, 0x84, 0x0d, 0x8f, 0x2f, 0xde, 0x22, + 0x61, 0xc3, 0x13, 0x8a, 0xb7, 0xc8, 0x9d, 0x4b, 0xbc, 0xe5, 0x5d, 0x0a, 0xd6, 0x3a, 0x6e, 0xc0, + 0xb6, 0x67, 0x77, 0xfa, 0x27, 0x05, 0xf6, 0xc6, 0x16, 0x6d, 0x91, 0x30, 0x0e, 0xad, 0x2a, 0xc3, + 0x48, 0x18, 0x87, 0x96, 0x35, 0x63, 0xd4, 0x59, 0xca, 0xeb, 0x25, 0x72, 0x21, 0xd1, 0xa9, 0x8d, + 0x60, 0xb4, 0x20, 0xaa, 0x55, 0xbd, 0xae, 0xc0, 0x48, 0x30, 0xd3, 0x57, 0xe2, 0x6e, 0x34, 0x26, + 0x7f, 0x39, 0x7b, 0xa1, 0x0d, 0xc8, 0x34, 0xcc, 0x34, 0xff, 0x43, 0x45, 0x04, 0xf7, 0x9d, 0x41, + 0xbe, 0xaa, 0xc0, 0x78, 0x44, 0xe2, 0xac, 0x4c, 0x8c, 0x58, 0x54, 0xa2, 0xaf, 0x44, 0xf8, 0x49, + 0x64, 0xaa, 0xaf, 0xdc, 0xeb, 0xf7, 0x1a, 0x05, 0xe5, 0x39, 0xdc, 0xe2, 0xb2, 0xfa, 0x97, 0x32, + 0x70, 0xa8, 0x65, 0x0a, 0x27, 0x59, 0x4c, 0xfd, 0x6a, 0x10, 0x97, 0x1b, 0x9c, 0x7d, 0x71, 0x27, + 0x50, 0x21, 0xe3, 0xff, 0x8f, 0x32, 0xfe, 0x32, 0xb9, 0x9f, 0xee, 0x31, 0xaa, 0xd8, 0x44, 0x98, + 0xf8, 0x1a, 0xf1, 0x7d, 0x05, 0xd4, 0xd6, 0x69, 0x75, 0xe4, 0x45, 0x49, 0x25, 0x94, 0x48, 0xf5, + 0xcb, 0xde, 0xde, 0x11, 0x5c, 0x69, 0x5c, 0x16, 0x8d, 0x62, 0x62, 0x8f, 0x33, 0x05, 0x77, 0x67, + 0x6f, 0xe6, 0xf8, 0x91, 0x3f, 0x53, 0x60, 0x24, 0x98, 0xa4, 0x27, 0x13, 0x52, 0x1c, 0x9d, 0x12, + 0x28, 0x13, 0x52, 0x1c, 0x93, 0x11, 0x28, 0x17, 0x24, 0xa6, 0xb1, 0x3b, 0x2e, 0xdb, 0x05, 0x67, + 0x49, 0x69, 0xd3, 0x8f, 0x31, 0xd1, 0xee, 0x09, 0xf9, 0x96, 0x02, 0x24, 0x9c, 0x37, 0x26, 0x11, + 0xfc, 0x10, 0x9b, 0xf0, 0x27, 0x11, 0xfc, 0x10, 0x9f, 0xd6, 0x27, 0x17, 0x69, 0x85, 0x99, 0x75, + 0x5e, 0x04, 0x9c, 0xa5, 0xfa, 0x13, 0x0f, 0x73, 0x6f, 0x2a, 0x30, 0x16, 0x91, 0xaa, 0x47, 0xda, + 0xa1, 0x30, 0xc5, 0xc6, 0x98, 0x90, 0x1d, 0x28, 0x77, 0x03, 0x12, 0xc1, 0x9f, 0xdd, 0x64, 0x90, + 0x06, 0xf6, 0xf9, 0x53, 0xd6, 0xce, 0x48, 0xae, 0x0f, 0x7f, 0xe2, 0x9f, 0x84, 0x65, 0x8d, 0xcc, + 0xfa, 0x93, 0x0b, 0xec, 0x43, 0x0b, 0x82, 0xde, 0xbe, 0x6f, 0x87, 0xf8, 0x7d, 0xd7, 0x23, 0xf6, + 0x25, 0xf5, 0x91, 0x94, 0xa4, 0xa4, 0xc8, 0xc0, 0x89, 0xce, 0x1e, 0x54, 0x4f, 0x51, 0x1e, 0x8e, + 0x93, 0x0f, 0xc9, 0xf3, 0x60, 0x93, 0x3f, 0xa5, 0x6f, 0x98, 0xfe, 0xfc, 0x34, 0xa9, 0x37, 0xcc, + 0xc8, 0x6c, 0x3f, 0xa9, 0x37, 0xcc, 0xe8, 0x8c, 0x3f, 0x39, 0x11, 0x84, 0x73, 0xf2, 0x44, 0x04, + 0xf7, 0x6b, 0xf4, 0x49, 0x39, 0x90, 0x69, 0x47, 0xd2, 0x13, 0x94, 0xea, 0x49, 0x39, 0x26, 0x7d, + 0x50, 0xee, 0x16, 0x2d, 0x22, 0xc1, 0x30, 0xb7, 0xf1, 0xb5, 0xb7, 0xf7, 0x2b, 0x6f, 0xbc, 0xbd, + 0x5f, 0xf9, 0xf6, 0xdb, 0xfb, 0x95, 0x9f, 0x7b, 0x67, 0xff, 0xae, 0x37, 0xde, 0xd9, 0xbf, 0xeb, + 0xef, 0xde, 0xd9, 0xbf, 0xeb, 0x95, 0x3b, 0x65, 0xc3, 0xd9, 0x68, 0xac, 0x4d, 0x15, 0xad, 0xca, + 0xf4, 0x22, 0x47, 0xba, 0xa4, 0xad, 0xd9, 0xcd, 0x21, 0x8e, 0x17, 0xad, 0xba, 0xee, 0xfd, 0xb9, + 0xa1, 0x19, 0x55, 0x7c, 0x72, 0xb3, 0x9b, 0xe3, 0x3b, 0x5b, 0x35, 0xdd, 0x5e, 0xeb, 0xae, 0xd5, + 0x2d, 0xc7, 0x3a, 0xf5, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xe9, 0xa3, 0x3c, 0x52, 0xa3, 0x81, + 0x00, 0x00, } -func (c *queryClient) PerpetualMarketInfo(ctx context.Context, in *QueryPerpetualMarketInfoRequest, opts ...grpc.CallOption) (*QueryPerpetualMarketInfoResponse, error) { - out := new(QueryPerpetualMarketInfoResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/PerpetualMarketInfo", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn -func (c *queryClient) ExpiryFuturesMarketInfo(ctx context.Context, in *QueryExpiryFuturesMarketInfoRequest, opts ...grpc.CallOption) (*QueryExpiryFuturesMarketInfoResponse, error) { - out := new(QueryExpiryFuturesMarketInfoResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/ExpiryFuturesMarketInfo", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 -func (c *queryClient) PerpetualMarketFunding(ctx context.Context, in *QueryPerpetualMarketFundingRequest, opts ...grpc.CallOption) (*QueryPerpetualMarketFundingResponse, error) { - out := new(QueryPerpetualMarketFundingResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/PerpetualMarketFunding", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +// QueryClient is the client API for Query service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type QueryClient interface { + L3DerivativeOrderBook(ctx context.Context, in *QueryFullDerivativeOrderbookRequest, opts ...grpc.CallOption) (*QueryFullDerivativeOrderbookResponse, error) + L3SpotOrderBook(ctx context.Context, in *QueryFullSpotOrderbookRequest, opts ...grpc.CallOption) (*QueryFullSpotOrderbookResponse, error) + // Retrieves exchange params + QueryExchangeParams(ctx context.Context, in *QueryExchangeParamsRequest, opts ...grpc.CallOption) (*QueryExchangeParamsResponse, error) + // Retrieves a Subaccount's Deposits + SubaccountDeposits(ctx context.Context, in *QuerySubaccountDepositsRequest, opts ...grpc.CallOption) (*QuerySubaccountDepositsResponse, error) + // Retrieves a Subaccount's Deposits + SubaccountDeposit(ctx context.Context, in *QuerySubaccountDepositRequest, opts ...grpc.CallOption) (*QuerySubaccountDepositResponse, error) + // Retrieves all of the balances of all users on the exchange. + ExchangeBalances(ctx context.Context, in *QueryExchangeBalancesRequest, opts ...grpc.CallOption) (*QueryExchangeBalancesResponse, error) + // Retrieves the aggregate volumes for the specified account or subaccount + AggregateVolume(ctx context.Context, in *QueryAggregateVolumeRequest, opts ...grpc.CallOption) (*QueryAggregateVolumeResponse, error) + // Retrieves the aggregate volumes for specified accounts + AggregateVolumes(ctx context.Context, in *QueryAggregateVolumesRequest, opts ...grpc.CallOption) (*QueryAggregateVolumesResponse, error) + // Retrieves the aggregate volume for the specified market + AggregateMarketVolume(ctx context.Context, in *QueryAggregateMarketVolumeRequest, opts ...grpc.CallOption) (*QueryAggregateMarketVolumeResponse, error) + // Retrieves the aggregate market volumes for specified markets + AggregateMarketVolumes(ctx context.Context, in *QueryAggregateMarketVolumesRequest, opts ...grpc.CallOption) (*QueryAggregateMarketVolumesResponse, error) + // Retrieves the denom decimals for a denom. + DenomDecimal(ctx context.Context, in *QueryDenomDecimalRequest, opts ...grpc.CallOption) (*QueryDenomDecimalResponse, error) + // Retrieves the denom decimals for multiple denoms. Returns all denom + // decimals if unspecified. + DenomDecimals(ctx context.Context, in *QueryDenomDecimalsRequest, opts ...grpc.CallOption) (*QueryDenomDecimalsResponse, error) + // Retrieves a list of spot markets. + SpotMarkets(ctx context.Context, in *QuerySpotMarketsRequest, opts ...grpc.CallOption) (*QuerySpotMarketsResponse, error) + // Retrieves a spot market by ticker + SpotMarket(ctx context.Context, in *QuerySpotMarketRequest, opts ...grpc.CallOption) (*QuerySpotMarketResponse, error) + // Retrieves a list of spot markets with extra information. + FullSpotMarkets(ctx context.Context, in *QueryFullSpotMarketsRequest, opts ...grpc.CallOption) (*QueryFullSpotMarketsResponse, error) + // Retrieves a spot market with extra information. + FullSpotMarket(ctx context.Context, in *QueryFullSpotMarketRequest, opts ...grpc.CallOption) (*QueryFullSpotMarketResponse, error) + // Retrieves a spot market's orderbook by marketID + SpotOrderbook(ctx context.Context, in *QuerySpotOrderbookRequest, opts ...grpc.CallOption) (*QuerySpotOrderbookResponse, error) + // Retrieves a trader's spot orders + TraderSpotOrders(ctx context.Context, in *QueryTraderSpotOrdersRequest, opts ...grpc.CallOption) (*QueryTraderSpotOrdersResponse, error) + // Retrieves all account address spot orders + AccountAddressSpotOrders(ctx context.Context, in *QueryAccountAddressSpotOrdersRequest, opts ...grpc.CallOption) (*QueryAccountAddressSpotOrdersResponse, error) + // Retrieves spot orders corresponding to specified order hashes for a given + // subaccountID and marketID + SpotOrdersByHashes(ctx context.Context, in *QuerySpotOrdersByHashesRequest, opts ...grpc.CallOption) (*QuerySpotOrdersByHashesResponse, error) + // Retrieves subaccount's orders + SubaccountOrders(ctx context.Context, in *QuerySubaccountOrdersRequest, opts ...grpc.CallOption) (*QuerySubaccountOrdersResponse, error) + // Retrieves a trader's transient spot orders + TraderSpotTransientOrders(ctx context.Context, in *QueryTraderSpotOrdersRequest, opts ...grpc.CallOption) (*QueryTraderSpotOrdersResponse, error) + // Retrieves a spot market's mid-price + SpotMidPriceAndTOB(ctx context.Context, in *QuerySpotMidPriceAndTOBRequest, opts ...grpc.CallOption) (*QuerySpotMidPriceAndTOBResponse, error) + // Retrieves a derivative market's mid-price + DerivativeMidPriceAndTOB(ctx context.Context, in *QueryDerivativeMidPriceAndTOBRequest, opts ...grpc.CallOption) (*QueryDerivativeMidPriceAndTOBResponse, error) + // Retrieves a derivative market's orderbook by marketID + DerivativeOrderbook(ctx context.Context, in *QueryDerivativeOrderbookRequest, opts ...grpc.CallOption) (*QueryDerivativeOrderbookResponse, error) + // Retrieves a trader's derivative orders + TraderDerivativeOrders(ctx context.Context, in *QueryTraderDerivativeOrdersRequest, opts ...grpc.CallOption) (*QueryTraderDerivativeOrdersResponse, error) + // Retrieves all account address derivative orders + AccountAddressDerivativeOrders(ctx context.Context, in *QueryAccountAddressDerivativeOrdersRequest, opts ...grpc.CallOption) (*QueryAccountAddressDerivativeOrdersResponse, error) + // Retrieves a trader's derivative orders + DerivativeOrdersByHashes(ctx context.Context, in *QueryDerivativeOrdersByHashesRequest, opts ...grpc.CallOption) (*QueryDerivativeOrdersByHashesResponse, error) + // Retrieves a trader's transient derivative orders + TraderDerivativeTransientOrders(ctx context.Context, in *QueryTraderDerivativeOrdersRequest, opts ...grpc.CallOption) (*QueryTraderDerivativeOrdersResponse, error) + // Retrieves a list of derivative markets. + DerivativeMarkets(ctx context.Context, in *QueryDerivativeMarketsRequest, opts ...grpc.CallOption) (*QueryDerivativeMarketsResponse, error) + // Retrieves a derivative market by ticker + DerivativeMarket(ctx context.Context, in *QueryDerivativeMarketRequest, opts ...grpc.CallOption) (*QueryDerivativeMarketResponse, error) + // Retrieves a derivative market's corresponding address for fees that + // contribute to the market's insurance fund + DerivativeMarketAddress(ctx context.Context, in *QueryDerivativeMarketAddressRequest, opts ...grpc.CallOption) (*QueryDerivativeMarketAddressResponse, error) + // Retrieves a subaccount's trade nonce + SubaccountTradeNonce(ctx context.Context, in *QuerySubaccountTradeNonceRequest, opts ...grpc.CallOption) (*QuerySubaccountTradeNonceResponse, error) + // Retrieves the entire exchange module's state + ExchangeModuleState(ctx context.Context, in *QueryModuleStateRequest, opts ...grpc.CallOption) (*QueryModuleStateResponse, error) + // Retrieves the entire exchange module's positions + Positions(ctx context.Context, in *QueryPositionsRequest, opts ...grpc.CallOption) (*QueryPositionsResponse, error) + // Retrieves subaccount's positions + SubaccountPositions(ctx context.Context, in *QuerySubaccountPositionsRequest, opts ...grpc.CallOption) (*QuerySubaccountPositionsResponse, error) + // Retrieves subaccount's position in market + SubaccountPositionInMarket(ctx context.Context, in *QuerySubaccountPositionInMarketRequest, opts ...grpc.CallOption) (*QuerySubaccountPositionInMarketResponse, error) + // Retrieves subaccount's position in market + SubaccountEffectivePositionInMarket(ctx context.Context, in *QuerySubaccountEffectivePositionInMarketRequest, opts ...grpc.CallOption) (*QuerySubaccountEffectivePositionInMarketResponse, error) + // Retrieves perpetual market info + PerpetualMarketInfo(ctx context.Context, in *QueryPerpetualMarketInfoRequest, opts ...grpc.CallOption) (*QueryPerpetualMarketInfoResponse, error) + // Retrieves expiry market info + ExpiryFuturesMarketInfo(ctx context.Context, in *QueryExpiryFuturesMarketInfoRequest, opts ...grpc.CallOption) (*QueryExpiryFuturesMarketInfoResponse, error) + // Retrieves perpetual market funding + PerpetualMarketFunding(ctx context.Context, in *QueryPerpetualMarketFundingRequest, opts ...grpc.CallOption) (*QueryPerpetualMarketFundingResponse, error) + // Retrieves subaccount's order metadata + SubaccountOrderMetadata(ctx context.Context, in *QuerySubaccountOrderMetadataRequest, opts ...grpc.CallOption) (*QuerySubaccountOrderMetadataResponse, error) + // Retrieves the account and total trade rewards points + TradeRewardPoints(ctx context.Context, in *QueryTradeRewardPointsRequest, opts ...grpc.CallOption) (*QueryTradeRewardPointsResponse, error) + // Retrieves the pending account and total trade rewards points + PendingTradeRewardPoints(ctx context.Context, in *QueryTradeRewardPointsRequest, opts ...grpc.CallOption) (*QueryTradeRewardPointsResponse, error) + // Retrieves the trade reward campaign + TradeRewardCampaign(ctx context.Context, in *QueryTradeRewardCampaignRequest, opts ...grpc.CallOption) (*QueryTradeRewardCampaignResponse, error) + // Retrieves the account's fee discount info + FeeDiscountAccountInfo(ctx context.Context, in *QueryFeeDiscountAccountInfoRequest, opts ...grpc.CallOption) (*QueryFeeDiscountAccountInfoResponse, error) + // Retrieves the fee discount schedule + FeeDiscountSchedule(ctx context.Context, in *QueryFeeDiscountScheduleRequest, opts ...grpc.CallOption) (*QueryFeeDiscountScheduleResponse, error) + // Retrieves mismatches between available vs. total balance + BalanceMismatches(ctx context.Context, in *QueryBalanceMismatchesRequest, opts ...grpc.CallOption) (*QueryBalanceMismatchesResponse, error) + // Retrieves available and total balances with balance holds + BalanceWithBalanceHolds(ctx context.Context, in *QueryBalanceWithBalanceHoldsRequest, opts ...grpc.CallOption) (*QueryBalanceWithBalanceHoldsResponse, error) + // Retrieves fee discount tier stats + FeeDiscountTierStatistics(ctx context.Context, in *QueryFeeDiscountTierStatisticsRequest, opts ...grpc.CallOption) (*QueryFeeDiscountTierStatisticsResponse, error) + // Retrieves market making pool info + MitoVaultInfos(ctx context.Context, in *MitoVaultInfosRequest, opts ...grpc.CallOption) (*MitoVaultInfosResponse, error) + // QueryMarketIDFromVault returns the market ID for a given vault subaccount + // ID + QueryMarketIDFromVault(ctx context.Context, in *QueryMarketIDFromVaultRequest, opts ...grpc.CallOption) (*QueryMarketIDFromVaultResponse, error) + // Retrieves historical trade records for a given market ID + HistoricalTradeRecords(ctx context.Context, in *QueryHistoricalTradeRecordsRequest, opts ...grpc.CallOption) (*QueryHistoricalTradeRecordsResponse, error) + // Retrieves if the account is opted out of rewards + IsOptedOutOfRewards(ctx context.Context, in *QueryIsOptedOutOfRewardsRequest, opts ...grpc.CallOption) (*QueryIsOptedOutOfRewardsResponse, error) + // Retrieves all accounts opted out of rewards + OptedOutOfRewardsAccounts(ctx context.Context, in *QueryOptedOutOfRewardsAccountsRequest, opts ...grpc.CallOption) (*QueryOptedOutOfRewardsAccountsResponse, error) + // MarketVolatility computes the volatility for spot and derivative markets + // trading history. + MarketVolatility(ctx context.Context, in *QueryMarketVolatilityRequest, opts ...grpc.CallOption) (*QueryMarketVolatilityResponse, error) + // Retrieves a spot market's orderbook by marketID + BinaryOptionsMarkets(ctx context.Context, in *QueryBinaryMarketsRequest, opts ...grpc.CallOption) (*QueryBinaryMarketsResponse, error) + // Retrieves a trader's derivative conditional orders + TraderDerivativeConditionalOrders(ctx context.Context, in *QueryTraderDerivativeConditionalOrdersRequest, opts ...grpc.CallOption) (*QueryTraderDerivativeConditionalOrdersResponse, error) + MarketAtomicExecutionFeeMultiplier(ctx context.Context, in *QueryMarketAtomicExecutionFeeMultiplierRequest, opts ...grpc.CallOption) (*QueryMarketAtomicExecutionFeeMultiplierResponse, error) + // Retrieves the active stake grant for a grantee + ActiveStakeGrant(ctx context.Context, in *QueryActiveStakeGrantRequest, opts ...grpc.CallOption) (*QueryActiveStakeGrantResponse, error) + // Retrieves the grant authorization amount for a granter and grantee + GrantAuthorization(ctx context.Context, in *QueryGrantAuthorizationRequest, opts ...grpc.CallOption) (*QueryGrantAuthorizationResponse, error) + // Retrieves the grant authorization amount for a granter and grantee + GrantAuthorizations(ctx context.Context, in *QueryGrantAuthorizationsRequest, opts ...grpc.CallOption) (*QueryGrantAuthorizationsResponse, error) + // Retrieves a derivative or binary options market's balance + MarketBalance(ctx context.Context, in *QueryMarketBalanceRequest, opts ...grpc.CallOption) (*QueryMarketBalanceResponse, error) + // Retrieves all derivative or binary options market balances + MarketBalances(ctx context.Context, in *QueryMarketBalancesRequest, opts ...grpc.CallOption) (*QueryMarketBalancesResponse, error) + // Retrieves the min notional for a denom + DenomMinNotional(ctx context.Context, in *QueryDenomMinNotionalRequest, opts ...grpc.CallOption) (*QueryDenomMinNotionalResponse, error) + // Retrieves the min notionals for all denoms + DenomMinNotionals(ctx context.Context, in *QueryDenomMinNotionalsRequest, opts ...grpc.CallOption) (*QueryDenomMinNotionalsResponse, error) } -func (c *queryClient) SubaccountOrderMetadata(ctx context.Context, in *QuerySubaccountOrderMetadataRequest, opts ...grpc.CallOption) (*QuerySubaccountOrderMetadataResponse, error) { - out := new(QuerySubaccountOrderMetadataResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountOrderMetadata", in, out, opts...) +type queryClient struct { + cc grpc1.ClientConn +} + +func NewQueryClient(cc grpc1.ClientConn) QueryClient { + return &queryClient{cc} +} + +func (c *queryClient) L3DerivativeOrderBook(ctx context.Context, in *QueryFullDerivativeOrderbookRequest, opts ...grpc.CallOption) (*QueryFullDerivativeOrderbookResponse, error) { + out := new(QueryFullDerivativeOrderbookResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/L3DerivativeOrderBook", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) TradeRewardPoints(ctx context.Context, in *QueryTradeRewardPointsRequest, opts ...grpc.CallOption) (*QueryTradeRewardPointsResponse, error) { - out := new(QueryTradeRewardPointsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/TradeRewardPoints", in, out, opts...) +func (c *queryClient) L3SpotOrderBook(ctx context.Context, in *QueryFullSpotOrderbookRequest, opts ...grpc.CallOption) (*QueryFullSpotOrderbookResponse, error) { + out := new(QueryFullSpotOrderbookResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/L3SpotOrderBook", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) PendingTradeRewardPoints(ctx context.Context, in *QueryTradeRewardPointsRequest, opts ...grpc.CallOption) (*QueryTradeRewardPointsResponse, error) { - out := new(QueryTradeRewardPointsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/PendingTradeRewardPoints", in, out, opts...) +func (c *queryClient) QueryExchangeParams(ctx context.Context, in *QueryExchangeParamsRequest, opts ...grpc.CallOption) (*QueryExchangeParamsResponse, error) { + out := new(QueryExchangeParamsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/QueryExchangeParams", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) TradeRewardCampaign(ctx context.Context, in *QueryTradeRewardCampaignRequest, opts ...grpc.CallOption) (*QueryTradeRewardCampaignResponse, error) { - out := new(QueryTradeRewardCampaignResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/TradeRewardCampaign", in, out, opts...) +func (c *queryClient) SubaccountDeposits(ctx context.Context, in *QuerySubaccountDepositsRequest, opts ...grpc.CallOption) (*QuerySubaccountDepositsResponse, error) { + out := new(QuerySubaccountDepositsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountDeposits", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) FeeDiscountAccountInfo(ctx context.Context, in *QueryFeeDiscountAccountInfoRequest, opts ...grpc.CallOption) (*QueryFeeDiscountAccountInfoResponse, error) { - out := new(QueryFeeDiscountAccountInfoResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/FeeDiscountAccountInfo", in, out, opts...) +func (c *queryClient) SubaccountDeposit(ctx context.Context, in *QuerySubaccountDepositRequest, opts ...grpc.CallOption) (*QuerySubaccountDepositResponse, error) { + out := new(QuerySubaccountDepositResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountDeposit", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) FeeDiscountSchedule(ctx context.Context, in *QueryFeeDiscountScheduleRequest, opts ...grpc.CallOption) (*QueryFeeDiscountScheduleResponse, error) { - out := new(QueryFeeDiscountScheduleResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/FeeDiscountSchedule", in, out, opts...) +func (c *queryClient) ExchangeBalances(ctx context.Context, in *QueryExchangeBalancesRequest, opts ...grpc.CallOption) (*QueryExchangeBalancesResponse, error) { + out := new(QueryExchangeBalancesResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/ExchangeBalances", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) BalanceMismatches(ctx context.Context, in *QueryBalanceMismatchesRequest, opts ...grpc.CallOption) (*QueryBalanceMismatchesResponse, error) { - out := new(QueryBalanceMismatchesResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/BalanceMismatches", in, out, opts...) +func (c *queryClient) AggregateVolume(ctx context.Context, in *QueryAggregateVolumeRequest, opts ...grpc.CallOption) (*QueryAggregateVolumeResponse, error) { + out := new(QueryAggregateVolumeResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/AggregateVolume", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) BalanceWithBalanceHolds(ctx context.Context, in *QueryBalanceWithBalanceHoldsRequest, opts ...grpc.CallOption) (*QueryBalanceWithBalanceHoldsResponse, error) { - out := new(QueryBalanceWithBalanceHoldsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/BalanceWithBalanceHolds", in, out, opts...) +func (c *queryClient) AggregateVolumes(ctx context.Context, in *QueryAggregateVolumesRequest, opts ...grpc.CallOption) (*QueryAggregateVolumesResponse, error) { + out := new(QueryAggregateVolumesResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/AggregateVolumes", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) FeeDiscountTierStatistics(ctx context.Context, in *QueryFeeDiscountTierStatisticsRequest, opts ...grpc.CallOption) (*QueryFeeDiscountTierStatisticsResponse, error) { - out := new(QueryFeeDiscountTierStatisticsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/FeeDiscountTierStatistics", in, out, opts...) +func (c *queryClient) AggregateMarketVolume(ctx context.Context, in *QueryAggregateMarketVolumeRequest, opts ...grpc.CallOption) (*QueryAggregateMarketVolumeResponse, error) { + out := new(QueryAggregateMarketVolumeResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/AggregateMarketVolume", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) MitoVaultInfos(ctx context.Context, in *MitoVaultInfosRequest, opts ...grpc.CallOption) (*MitoVaultInfosResponse, error) { - out := new(MitoVaultInfosResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/MitoVaultInfos", in, out, opts...) +func (c *queryClient) AggregateMarketVolumes(ctx context.Context, in *QueryAggregateMarketVolumesRequest, opts ...grpc.CallOption) (*QueryAggregateMarketVolumesResponse, error) { + out := new(QueryAggregateMarketVolumesResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/AggregateMarketVolumes", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) QueryMarketIDFromVault(ctx context.Context, in *QueryMarketIDFromVaultRequest, opts ...grpc.CallOption) (*QueryMarketIDFromVaultResponse, error) { - out := new(QueryMarketIDFromVaultResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/QueryMarketIDFromVault", in, out, opts...) +func (c *queryClient) DenomDecimal(ctx context.Context, in *QueryDenomDecimalRequest, opts ...grpc.CallOption) (*QueryDenomDecimalResponse, error) { + out := new(QueryDenomDecimalResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DenomDecimal", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) HistoricalTradeRecords(ctx context.Context, in *QueryHistoricalTradeRecordsRequest, opts ...grpc.CallOption) (*QueryHistoricalTradeRecordsResponse, error) { - out := new(QueryHistoricalTradeRecordsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/HistoricalTradeRecords", in, out, opts...) +func (c *queryClient) DenomDecimals(ctx context.Context, in *QueryDenomDecimalsRequest, opts ...grpc.CallOption) (*QueryDenomDecimalsResponse, error) { + out := new(QueryDenomDecimalsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DenomDecimals", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) IsOptedOutOfRewards(ctx context.Context, in *QueryIsOptedOutOfRewardsRequest, opts ...grpc.CallOption) (*QueryIsOptedOutOfRewardsResponse, error) { - out := new(QueryIsOptedOutOfRewardsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/IsOptedOutOfRewards", in, out, opts...) +func (c *queryClient) SpotMarkets(ctx context.Context, in *QuerySpotMarketsRequest, opts ...grpc.CallOption) (*QuerySpotMarketsResponse, error) { + out := new(QuerySpotMarketsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SpotMarkets", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) OptedOutOfRewardsAccounts(ctx context.Context, in *QueryOptedOutOfRewardsAccountsRequest, opts ...grpc.CallOption) (*QueryOptedOutOfRewardsAccountsResponse, error) { - out := new(QueryOptedOutOfRewardsAccountsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/OptedOutOfRewardsAccounts", in, out, opts...) +func (c *queryClient) SpotMarket(ctx context.Context, in *QuerySpotMarketRequest, opts ...grpc.CallOption) (*QuerySpotMarketResponse, error) { + out := new(QuerySpotMarketResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SpotMarket", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) MarketVolatility(ctx context.Context, in *QueryMarketVolatilityRequest, opts ...grpc.CallOption) (*QueryMarketVolatilityResponse, error) { - out := new(QueryMarketVolatilityResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/MarketVolatility", in, out, opts...) +func (c *queryClient) FullSpotMarkets(ctx context.Context, in *QueryFullSpotMarketsRequest, opts ...grpc.CallOption) (*QueryFullSpotMarketsResponse, error) { + out := new(QueryFullSpotMarketsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/FullSpotMarkets", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) BinaryOptionsMarkets(ctx context.Context, in *QueryBinaryMarketsRequest, opts ...grpc.CallOption) (*QueryBinaryMarketsResponse, error) { - out := new(QueryBinaryMarketsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/BinaryOptionsMarkets", in, out, opts...) +func (c *queryClient) FullSpotMarket(ctx context.Context, in *QueryFullSpotMarketRequest, opts ...grpc.CallOption) (*QueryFullSpotMarketResponse, error) { + out := new(QueryFullSpotMarketResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/FullSpotMarket", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) TraderDerivativeConditionalOrders(ctx context.Context, in *QueryTraderDerivativeConditionalOrdersRequest, opts ...grpc.CallOption) (*QueryTraderDerivativeConditionalOrdersResponse, error) { - out := new(QueryTraderDerivativeConditionalOrdersResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/TraderDerivativeConditionalOrders", in, out, opts...) +func (c *queryClient) SpotOrderbook(ctx context.Context, in *QuerySpotOrderbookRequest, opts ...grpc.CallOption) (*QuerySpotOrderbookResponse, error) { + out := new(QuerySpotOrderbookResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SpotOrderbook", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) MarketAtomicExecutionFeeMultiplier(ctx context.Context, in *QueryMarketAtomicExecutionFeeMultiplierRequest, opts ...grpc.CallOption) (*QueryMarketAtomicExecutionFeeMultiplierResponse, error) { - out := new(QueryMarketAtomicExecutionFeeMultiplierResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/MarketAtomicExecutionFeeMultiplier", in, out, opts...) +func (c *queryClient) TraderSpotOrders(ctx context.Context, in *QueryTraderSpotOrdersRequest, opts ...grpc.CallOption) (*QueryTraderSpotOrdersResponse, error) { + out := new(QueryTraderSpotOrdersResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/TraderSpotOrders", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) ActiveStakeGrant(ctx context.Context, in *QueryActiveStakeGrantRequest, opts ...grpc.CallOption) (*QueryActiveStakeGrantResponse, error) { - out := new(QueryActiveStakeGrantResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/ActiveStakeGrant", in, out, opts...) +func (c *queryClient) AccountAddressSpotOrders(ctx context.Context, in *QueryAccountAddressSpotOrdersRequest, opts ...grpc.CallOption) (*QueryAccountAddressSpotOrdersResponse, error) { + out := new(QueryAccountAddressSpotOrdersResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/AccountAddressSpotOrders", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) GrantAuthorization(ctx context.Context, in *QueryGrantAuthorizationRequest, opts ...grpc.CallOption) (*QueryGrantAuthorizationResponse, error) { - out := new(QueryGrantAuthorizationResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/GrantAuthorization", in, out, opts...) +func (c *queryClient) SpotOrdersByHashes(ctx context.Context, in *QuerySpotOrdersByHashesRequest, opts ...grpc.CallOption) (*QuerySpotOrdersByHashesResponse, error) { + out := new(QuerySpotOrdersByHashesResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SpotOrdersByHashes", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *queryClient) GrantAuthorizations(ctx context.Context, in *QueryGrantAuthorizationsRequest, opts ...grpc.CallOption) (*QueryGrantAuthorizationsResponse, error) { - out := new(QueryGrantAuthorizationsResponse) - err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/GrantAuthorizations", in, out, opts...) +func (c *queryClient) SubaccountOrders(ctx context.Context, in *QuerySubaccountOrdersRequest, opts ...grpc.CallOption) (*QuerySubaccountOrdersResponse, error) { + out := new(QuerySubaccountOrdersResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountOrders", in, out, opts...) if err != nil { return nil, err } return out, nil } -// QueryServer is the server API for Query service. -type QueryServer interface { - // Retrieves exchange params - QueryExchangeParams(context.Context, *QueryExchangeParamsRequest) (*QueryExchangeParamsResponse, error) - // Retrieves a Subaccount's Deposits - SubaccountDeposits(context.Context, *QuerySubaccountDepositsRequest) (*QuerySubaccountDepositsResponse, error) - // Retrieves a Subaccount's Deposits - SubaccountDeposit(context.Context, *QuerySubaccountDepositRequest) (*QuerySubaccountDepositResponse, error) - // Retrieves all of the balances of all users on the exchange. - ExchangeBalances(context.Context, *QueryExchangeBalancesRequest) (*QueryExchangeBalancesResponse, error) - // Retrieves the aggregate volumes for the specified account or subaccount - AggregateVolume(context.Context, *QueryAggregateVolumeRequest) (*QueryAggregateVolumeResponse, error) - // Retrieves the aggregate volumes for specified accounts - AggregateVolumes(context.Context, *QueryAggregateVolumesRequest) (*QueryAggregateVolumesResponse, error) - // Retrieves the aggregate volume for the specified market - AggregateMarketVolume(context.Context, *QueryAggregateMarketVolumeRequest) (*QueryAggregateMarketVolumeResponse, error) - // Retrieves the aggregate market volumes for specified markets - AggregateMarketVolumes(context.Context, *QueryAggregateMarketVolumesRequest) (*QueryAggregateMarketVolumesResponse, error) - // Retrieves the denom decimals for a denom. - DenomDecimal(context.Context, *QueryDenomDecimalRequest) (*QueryDenomDecimalResponse, error) - // Retrieves the denom decimals for multiple denoms. Returns all denom - // decimals if unspecified. - DenomDecimals(context.Context, *QueryDenomDecimalsRequest) (*QueryDenomDecimalsResponse, error) - // Retrieves a list of spot markets. - SpotMarkets(context.Context, *QuerySpotMarketsRequest) (*QuerySpotMarketsResponse, error) - // Retrieves a spot market by ticker - SpotMarket(context.Context, *QuerySpotMarketRequest) (*QuerySpotMarketResponse, error) - // Retrieves a list of spot markets with extra information. - FullSpotMarkets(context.Context, *QueryFullSpotMarketsRequest) (*QueryFullSpotMarketsResponse, error) - // Retrieves a spot market with extra information. - FullSpotMarket(context.Context, *QueryFullSpotMarketRequest) (*QueryFullSpotMarketResponse, error) - // Retrieves a spot market's orderbook by marketID - SpotOrderbook(context.Context, *QuerySpotOrderbookRequest) (*QuerySpotOrderbookResponse, error) - // Retrieves a trader's spot orders - TraderSpotOrders(context.Context, *QueryTraderSpotOrdersRequest) (*QueryTraderSpotOrdersResponse, error) - // Retrieves all account address spot orders - AccountAddressSpotOrders(context.Context, *QueryAccountAddressSpotOrdersRequest) (*QueryAccountAddressSpotOrdersResponse, error) - // Retrieves spot orders corresponding to specified order hashes for a given - // subaccountID and marketID - SpotOrdersByHashes(context.Context, *QuerySpotOrdersByHashesRequest) (*QuerySpotOrdersByHashesResponse, error) - // Retrieves subaccount's orders - SubaccountOrders(context.Context, *QuerySubaccountOrdersRequest) (*QuerySubaccountOrdersResponse, error) - // Retrieves a trader's transient spot orders - TraderSpotTransientOrders(context.Context, *QueryTraderSpotOrdersRequest) (*QueryTraderSpotOrdersResponse, error) - // Retrieves a spot market's mid-price - SpotMidPriceAndTOB(context.Context, *QuerySpotMidPriceAndTOBRequest) (*QuerySpotMidPriceAndTOBResponse, error) - // Retrieves a derivative market's mid-price - DerivativeMidPriceAndTOB(context.Context, *QueryDerivativeMidPriceAndTOBRequest) (*QueryDerivativeMidPriceAndTOBResponse, error) - // Retrieves a derivative market's orderbook by marketID - DerivativeOrderbook(context.Context, *QueryDerivativeOrderbookRequest) (*QueryDerivativeOrderbookResponse, error) - // Retrieves a trader's derivative orders - TraderDerivativeOrders(context.Context, *QueryTraderDerivativeOrdersRequest) (*QueryTraderDerivativeOrdersResponse, error) - // Retrieves all account address derivative orders - AccountAddressDerivativeOrders(context.Context, *QueryAccountAddressDerivativeOrdersRequest) (*QueryAccountAddressDerivativeOrdersResponse, error) - // Retrieves a trader's derivative orders - DerivativeOrdersByHashes(context.Context, *QueryDerivativeOrdersByHashesRequest) (*QueryDerivativeOrdersByHashesResponse, error) - // Retrieves a trader's transient derivative orders - TraderDerivativeTransientOrders(context.Context, *QueryTraderDerivativeOrdersRequest) (*QueryTraderDerivativeOrdersResponse, error) - // Retrieves a list of derivative markets. - DerivativeMarkets(context.Context, *QueryDerivativeMarketsRequest) (*QueryDerivativeMarketsResponse, error) - // Retrieves a derivative market by ticker - DerivativeMarket(context.Context, *QueryDerivativeMarketRequest) (*QueryDerivativeMarketResponse, error) - // Retrieves a derivative market's corresponding address for fees that - // contribute to the market's insurance fund - DerivativeMarketAddress(context.Context, *QueryDerivativeMarketAddressRequest) (*QueryDerivativeMarketAddressResponse, error) - // Retrieves a subaccount's trade nonce - SubaccountTradeNonce(context.Context, *QuerySubaccountTradeNonceRequest) (*QuerySubaccountTradeNonceResponse, error) - // Retrieves the entire exchange module's state - ExchangeModuleState(context.Context, *QueryModuleStateRequest) (*QueryModuleStateResponse, error) - // Retrieves the entire exchange module's positions - Positions(context.Context, *QueryPositionsRequest) (*QueryPositionsResponse, error) - // Retrieves subaccount's positions - SubaccountPositions(context.Context, *QuerySubaccountPositionsRequest) (*QuerySubaccountPositionsResponse, error) - // Retrieves subaccount's position in market - SubaccountPositionInMarket(context.Context, *QuerySubaccountPositionInMarketRequest) (*QuerySubaccountPositionInMarketResponse, error) - // Retrieves subaccount's position in market - SubaccountEffectivePositionInMarket(context.Context, *QuerySubaccountEffectivePositionInMarketRequest) (*QuerySubaccountEffectivePositionInMarketResponse, error) - // Retrieves perpetual market info - PerpetualMarketInfo(context.Context, *QueryPerpetualMarketInfoRequest) (*QueryPerpetualMarketInfoResponse, error) - // Retrieves expiry market info - ExpiryFuturesMarketInfo(context.Context, *QueryExpiryFuturesMarketInfoRequest) (*QueryExpiryFuturesMarketInfoResponse, error) - // Retrieves perpetual market funding - PerpetualMarketFunding(context.Context, *QueryPerpetualMarketFundingRequest) (*QueryPerpetualMarketFundingResponse, error) - // Retrieves subaccount's order metadata - SubaccountOrderMetadata(context.Context, *QuerySubaccountOrderMetadataRequest) (*QuerySubaccountOrderMetadataResponse, error) - // Retrieves the account and total trade rewards points - TradeRewardPoints(context.Context, *QueryTradeRewardPointsRequest) (*QueryTradeRewardPointsResponse, error) - // Retrieves the pending account and total trade rewards points - PendingTradeRewardPoints(context.Context, *QueryTradeRewardPointsRequest) (*QueryTradeRewardPointsResponse, error) - // Retrieves the trade reward campaign - TradeRewardCampaign(context.Context, *QueryTradeRewardCampaignRequest) (*QueryTradeRewardCampaignResponse, error) - // Retrieves the account's fee discount info - FeeDiscountAccountInfo(context.Context, *QueryFeeDiscountAccountInfoRequest) (*QueryFeeDiscountAccountInfoResponse, error) - // Retrieves the fee discount schedule - FeeDiscountSchedule(context.Context, *QueryFeeDiscountScheduleRequest) (*QueryFeeDiscountScheduleResponse, error) - // Retrieves mismatches between available vs. total balance - BalanceMismatches(context.Context, *QueryBalanceMismatchesRequest) (*QueryBalanceMismatchesResponse, error) - // Retrieves available and total balances with balance holds - BalanceWithBalanceHolds(context.Context, *QueryBalanceWithBalanceHoldsRequest) (*QueryBalanceWithBalanceHoldsResponse, error) - // Retrieves fee discount tier stats - FeeDiscountTierStatistics(context.Context, *QueryFeeDiscountTierStatisticsRequest) (*QueryFeeDiscountTierStatisticsResponse, error) - // Retrieves market making pool info - MitoVaultInfos(context.Context, *MitoVaultInfosRequest) (*MitoVaultInfosResponse, error) - // QueryMarketIDFromVault returns the market ID for a given vault subaccount - // ID - QueryMarketIDFromVault(context.Context, *QueryMarketIDFromVaultRequest) (*QueryMarketIDFromVaultResponse, error) - // Retrieves historical trade records for a given market ID - HistoricalTradeRecords(context.Context, *QueryHistoricalTradeRecordsRequest) (*QueryHistoricalTradeRecordsResponse, error) - // Retrieves if the account is opted out of rewards - IsOptedOutOfRewards(context.Context, *QueryIsOptedOutOfRewardsRequest) (*QueryIsOptedOutOfRewardsResponse, error) - // Retrieves all accounts opted out of rewards - OptedOutOfRewardsAccounts(context.Context, *QueryOptedOutOfRewardsAccountsRequest) (*QueryOptedOutOfRewardsAccountsResponse, error) - // MarketVolatility computes the volatility for spot and derivative markets - // trading history. - MarketVolatility(context.Context, *QueryMarketVolatilityRequest) (*QueryMarketVolatilityResponse, error) - // Retrieves a spot market's orderbook by marketID - BinaryOptionsMarkets(context.Context, *QueryBinaryMarketsRequest) (*QueryBinaryMarketsResponse, error) - // Retrieves a trader's derivative conditional orders - TraderDerivativeConditionalOrders(context.Context, *QueryTraderDerivativeConditionalOrdersRequest) (*QueryTraderDerivativeConditionalOrdersResponse, error) - MarketAtomicExecutionFeeMultiplier(context.Context, *QueryMarketAtomicExecutionFeeMultiplierRequest) (*QueryMarketAtomicExecutionFeeMultiplierResponse, error) - // Retrieves the active stake grant for a grantee - ActiveStakeGrant(context.Context, *QueryActiveStakeGrantRequest) (*QueryActiveStakeGrantResponse, error) - // Retrieves the grant authorization amount for a granter and grantee - GrantAuthorization(context.Context, *QueryGrantAuthorizationRequest) (*QueryGrantAuthorizationResponse, error) - // Retrieves the grant authorization amount for a granter and grantee - GrantAuthorizations(context.Context, *QueryGrantAuthorizationsRequest) (*QueryGrantAuthorizationsResponse, error) +func (c *queryClient) TraderSpotTransientOrders(ctx context.Context, in *QueryTraderSpotOrdersRequest, opts ...grpc.CallOption) (*QueryTraderSpotOrdersResponse, error) { + out := new(QueryTraderSpotOrdersResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/TraderSpotTransientOrders", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -// UnimplementedQueryServer can be embedded to have forward compatible implementations. -type UnimplementedQueryServer struct { +func (c *queryClient) SpotMidPriceAndTOB(ctx context.Context, in *QuerySpotMidPriceAndTOBRequest, opts ...grpc.CallOption) (*QuerySpotMidPriceAndTOBResponse, error) { + out := new(QuerySpotMidPriceAndTOBResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SpotMidPriceAndTOB", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (*UnimplementedQueryServer) QueryExchangeParams(ctx context.Context, req *QueryExchangeParamsRequest) (*QueryExchangeParamsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method QueryExchangeParams not implemented") -} -func (*UnimplementedQueryServer) SubaccountDeposits(ctx context.Context, req *QuerySubaccountDepositsRequest) (*QuerySubaccountDepositsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SubaccountDeposits not implemented") -} -func (*UnimplementedQueryServer) SubaccountDeposit(ctx context.Context, req *QuerySubaccountDepositRequest) (*QuerySubaccountDepositResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SubaccountDeposit not implemented") -} -func (*UnimplementedQueryServer) ExchangeBalances(ctx context.Context, req *QueryExchangeBalancesRequest) (*QueryExchangeBalancesResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ExchangeBalances not implemented") +func (c *queryClient) DerivativeMidPriceAndTOB(ctx context.Context, in *QueryDerivativeMidPriceAndTOBRequest, opts ...grpc.CallOption) (*QueryDerivativeMidPriceAndTOBResponse, error) { + out := new(QueryDerivativeMidPriceAndTOBResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DerivativeMidPriceAndTOB", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (*UnimplementedQueryServer) AggregateVolume(ctx context.Context, req *QueryAggregateVolumeRequest) (*QueryAggregateVolumeResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AggregateVolume not implemented") + +func (c *queryClient) DerivativeOrderbook(ctx context.Context, in *QueryDerivativeOrderbookRequest, opts ...grpc.CallOption) (*QueryDerivativeOrderbookResponse, error) { + out := new(QueryDerivativeOrderbookResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DerivativeOrderbook", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (*UnimplementedQueryServer) AggregateVolumes(ctx context.Context, req *QueryAggregateVolumesRequest) (*QueryAggregateVolumesResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AggregateVolumes not implemented") + +func (c *queryClient) TraderDerivativeOrders(ctx context.Context, in *QueryTraderDerivativeOrdersRequest, opts ...grpc.CallOption) (*QueryTraderDerivativeOrdersResponse, error) { + out := new(QueryTraderDerivativeOrdersResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/TraderDerivativeOrders", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (*UnimplementedQueryServer) AggregateMarketVolume(ctx context.Context, req *QueryAggregateMarketVolumeRequest) (*QueryAggregateMarketVolumeResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AggregateMarketVolume not implemented") + +func (c *queryClient) AccountAddressDerivativeOrders(ctx context.Context, in *QueryAccountAddressDerivativeOrdersRequest, opts ...grpc.CallOption) (*QueryAccountAddressDerivativeOrdersResponse, error) { + out := new(QueryAccountAddressDerivativeOrdersResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/AccountAddressDerivativeOrders", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (*UnimplementedQueryServer) AggregateMarketVolumes(ctx context.Context, req *QueryAggregateMarketVolumesRequest) (*QueryAggregateMarketVolumesResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AggregateMarketVolumes not implemented") + +func (c *queryClient) DerivativeOrdersByHashes(ctx context.Context, in *QueryDerivativeOrdersByHashesRequest, opts ...grpc.CallOption) (*QueryDerivativeOrdersByHashesResponse, error) { + out := new(QueryDerivativeOrdersByHashesResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DerivativeOrdersByHashes", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (*UnimplementedQueryServer) DenomDecimal(ctx context.Context, req *QueryDenomDecimalRequest) (*QueryDenomDecimalResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method DenomDecimal not implemented") + +func (c *queryClient) TraderDerivativeTransientOrders(ctx context.Context, in *QueryTraderDerivativeOrdersRequest, opts ...grpc.CallOption) (*QueryTraderDerivativeOrdersResponse, error) { + out := new(QueryTraderDerivativeOrdersResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/TraderDerivativeTransientOrders", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (*UnimplementedQueryServer) DenomDecimals(ctx context.Context, req *QueryDenomDecimalsRequest) (*QueryDenomDecimalsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method DenomDecimals not implemented") + +func (c *queryClient) DerivativeMarkets(ctx context.Context, in *QueryDerivativeMarketsRequest, opts ...grpc.CallOption) (*QueryDerivativeMarketsResponse, error) { + out := new(QueryDerivativeMarketsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DerivativeMarkets", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (*UnimplementedQueryServer) SpotMarkets(ctx context.Context, req *QuerySpotMarketsRequest) (*QuerySpotMarketsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SpotMarkets not implemented") + +func (c *queryClient) DerivativeMarket(ctx context.Context, in *QueryDerivativeMarketRequest, opts ...grpc.CallOption) (*QueryDerivativeMarketResponse, error) { + out := new(QueryDerivativeMarketResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DerivativeMarket", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (*UnimplementedQueryServer) SpotMarket(ctx context.Context, req *QuerySpotMarketRequest) (*QuerySpotMarketResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SpotMarket not implemented") + +func (c *queryClient) DerivativeMarketAddress(ctx context.Context, in *QueryDerivativeMarketAddressRequest, opts ...grpc.CallOption) (*QueryDerivativeMarketAddressResponse, error) { + out := new(QueryDerivativeMarketAddressResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DerivativeMarketAddress", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (*UnimplementedQueryServer) FullSpotMarkets(ctx context.Context, req *QueryFullSpotMarketsRequest) (*QueryFullSpotMarketsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method FullSpotMarkets not implemented") -} -func (*UnimplementedQueryServer) FullSpotMarket(ctx context.Context, req *QueryFullSpotMarketRequest) (*QueryFullSpotMarketResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method FullSpotMarket not implemented") -} -func (*UnimplementedQueryServer) SpotOrderbook(ctx context.Context, req *QuerySpotOrderbookRequest) (*QuerySpotOrderbookResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SpotOrderbook not implemented") -} -func (*UnimplementedQueryServer) TraderSpotOrders(ctx context.Context, req *QueryTraderSpotOrdersRequest) (*QueryTraderSpotOrdersResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method TraderSpotOrders not implemented") -} -func (*UnimplementedQueryServer) AccountAddressSpotOrders(ctx context.Context, req *QueryAccountAddressSpotOrdersRequest) (*QueryAccountAddressSpotOrdersResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AccountAddressSpotOrders not implemented") -} -func (*UnimplementedQueryServer) SpotOrdersByHashes(ctx context.Context, req *QuerySpotOrdersByHashesRequest) (*QuerySpotOrdersByHashesResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SpotOrdersByHashes not implemented") -} -func (*UnimplementedQueryServer) SubaccountOrders(ctx context.Context, req *QuerySubaccountOrdersRequest) (*QuerySubaccountOrdersResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SubaccountOrders not implemented") -} -func (*UnimplementedQueryServer) TraderSpotTransientOrders(ctx context.Context, req *QueryTraderSpotOrdersRequest) (*QueryTraderSpotOrdersResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method TraderSpotTransientOrders not implemented") -} -func (*UnimplementedQueryServer) SpotMidPriceAndTOB(ctx context.Context, req *QuerySpotMidPriceAndTOBRequest) (*QuerySpotMidPriceAndTOBResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SpotMidPriceAndTOB not implemented") -} -func (*UnimplementedQueryServer) DerivativeMidPriceAndTOB(ctx context.Context, req *QueryDerivativeMidPriceAndTOBRequest) (*QueryDerivativeMidPriceAndTOBResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method DerivativeMidPriceAndTOB not implemented") -} -func (*UnimplementedQueryServer) DerivativeOrderbook(ctx context.Context, req *QueryDerivativeOrderbookRequest) (*QueryDerivativeOrderbookResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method DerivativeOrderbook not implemented") -} -func (*UnimplementedQueryServer) TraderDerivativeOrders(ctx context.Context, req *QueryTraderDerivativeOrdersRequest) (*QueryTraderDerivativeOrdersResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method TraderDerivativeOrders not implemented") -} -func (*UnimplementedQueryServer) AccountAddressDerivativeOrders(ctx context.Context, req *QueryAccountAddressDerivativeOrdersRequest) (*QueryAccountAddressDerivativeOrdersResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AccountAddressDerivativeOrders not implemented") -} -func (*UnimplementedQueryServer) DerivativeOrdersByHashes(ctx context.Context, req *QueryDerivativeOrdersByHashesRequest) (*QueryDerivativeOrdersByHashesResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method DerivativeOrdersByHashes not implemented") -} -func (*UnimplementedQueryServer) TraderDerivativeTransientOrders(ctx context.Context, req *QueryTraderDerivativeOrdersRequest) (*QueryTraderDerivativeOrdersResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method TraderDerivativeTransientOrders not implemented") -} -func (*UnimplementedQueryServer) DerivativeMarkets(ctx context.Context, req *QueryDerivativeMarketsRequest) (*QueryDerivativeMarketsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method DerivativeMarkets not implemented") -} -func (*UnimplementedQueryServer) DerivativeMarket(ctx context.Context, req *QueryDerivativeMarketRequest) (*QueryDerivativeMarketResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method DerivativeMarket not implemented") -} -func (*UnimplementedQueryServer) DerivativeMarketAddress(ctx context.Context, req *QueryDerivativeMarketAddressRequest) (*QueryDerivativeMarketAddressResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method DerivativeMarketAddress not implemented") -} -func (*UnimplementedQueryServer) SubaccountTradeNonce(ctx context.Context, req *QuerySubaccountTradeNonceRequest) (*QuerySubaccountTradeNonceResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SubaccountTradeNonce not implemented") -} -func (*UnimplementedQueryServer) ExchangeModuleState(ctx context.Context, req *QueryModuleStateRequest) (*QueryModuleStateResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ExchangeModuleState not implemented") -} -func (*UnimplementedQueryServer) Positions(ctx context.Context, req *QueryPositionsRequest) (*QueryPositionsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Positions not implemented") -} -func (*UnimplementedQueryServer) SubaccountPositions(ctx context.Context, req *QuerySubaccountPositionsRequest) (*QuerySubaccountPositionsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SubaccountPositions not implemented") -} -func (*UnimplementedQueryServer) SubaccountPositionInMarket(ctx context.Context, req *QuerySubaccountPositionInMarketRequest) (*QuerySubaccountPositionInMarketResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SubaccountPositionInMarket not implemented") -} -func (*UnimplementedQueryServer) SubaccountEffectivePositionInMarket(ctx context.Context, req *QuerySubaccountEffectivePositionInMarketRequest) (*QuerySubaccountEffectivePositionInMarketResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SubaccountEffectivePositionInMarket not implemented") -} -func (*UnimplementedQueryServer) PerpetualMarketInfo(ctx context.Context, req *QueryPerpetualMarketInfoRequest) (*QueryPerpetualMarketInfoResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method PerpetualMarketInfo not implemented") -} -func (*UnimplementedQueryServer) ExpiryFuturesMarketInfo(ctx context.Context, req *QueryExpiryFuturesMarketInfoRequest) (*QueryExpiryFuturesMarketInfoResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ExpiryFuturesMarketInfo not implemented") -} -func (*UnimplementedQueryServer) PerpetualMarketFunding(ctx context.Context, req *QueryPerpetualMarketFundingRequest) (*QueryPerpetualMarketFundingResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method PerpetualMarketFunding not implemented") -} -func (*UnimplementedQueryServer) SubaccountOrderMetadata(ctx context.Context, req *QuerySubaccountOrderMetadataRequest) (*QuerySubaccountOrderMetadataResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SubaccountOrderMetadata not implemented") -} -func (*UnimplementedQueryServer) TradeRewardPoints(ctx context.Context, req *QueryTradeRewardPointsRequest) (*QueryTradeRewardPointsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method TradeRewardPoints not implemented") -} -func (*UnimplementedQueryServer) PendingTradeRewardPoints(ctx context.Context, req *QueryTradeRewardPointsRequest) (*QueryTradeRewardPointsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method PendingTradeRewardPoints not implemented") -} -func (*UnimplementedQueryServer) TradeRewardCampaign(ctx context.Context, req *QueryTradeRewardCampaignRequest) (*QueryTradeRewardCampaignResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method TradeRewardCampaign not implemented") -} -func (*UnimplementedQueryServer) FeeDiscountAccountInfo(ctx context.Context, req *QueryFeeDiscountAccountInfoRequest) (*QueryFeeDiscountAccountInfoResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method FeeDiscountAccountInfo not implemented") -} -func (*UnimplementedQueryServer) FeeDiscountSchedule(ctx context.Context, req *QueryFeeDiscountScheduleRequest) (*QueryFeeDiscountScheduleResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method FeeDiscountSchedule not implemented") -} -func (*UnimplementedQueryServer) BalanceMismatches(ctx context.Context, req *QueryBalanceMismatchesRequest) (*QueryBalanceMismatchesResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method BalanceMismatches not implemented") -} -func (*UnimplementedQueryServer) BalanceWithBalanceHolds(ctx context.Context, req *QueryBalanceWithBalanceHoldsRequest) (*QueryBalanceWithBalanceHoldsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method BalanceWithBalanceHolds not implemented") -} -func (*UnimplementedQueryServer) FeeDiscountTierStatistics(ctx context.Context, req *QueryFeeDiscountTierStatisticsRequest) (*QueryFeeDiscountTierStatisticsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method FeeDiscountTierStatistics not implemented") -} -func (*UnimplementedQueryServer) MitoVaultInfos(ctx context.Context, req *MitoVaultInfosRequest) (*MitoVaultInfosResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method MitoVaultInfos not implemented") -} -func (*UnimplementedQueryServer) QueryMarketIDFromVault(ctx context.Context, req *QueryMarketIDFromVaultRequest) (*QueryMarketIDFromVaultResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method QueryMarketIDFromVault not implemented") -} -func (*UnimplementedQueryServer) HistoricalTradeRecords(ctx context.Context, req *QueryHistoricalTradeRecordsRequest) (*QueryHistoricalTradeRecordsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method HistoricalTradeRecords not implemented") -} -func (*UnimplementedQueryServer) IsOptedOutOfRewards(ctx context.Context, req *QueryIsOptedOutOfRewardsRequest) (*QueryIsOptedOutOfRewardsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method IsOptedOutOfRewards not implemented") -} -func (*UnimplementedQueryServer) OptedOutOfRewardsAccounts(ctx context.Context, req *QueryOptedOutOfRewardsAccountsRequest) (*QueryOptedOutOfRewardsAccountsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method OptedOutOfRewardsAccounts not implemented") -} -func (*UnimplementedQueryServer) MarketVolatility(ctx context.Context, req *QueryMarketVolatilityRequest) (*QueryMarketVolatilityResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method MarketVolatility not implemented") -} -func (*UnimplementedQueryServer) BinaryOptionsMarkets(ctx context.Context, req *QueryBinaryMarketsRequest) (*QueryBinaryMarketsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method BinaryOptionsMarkets not implemented") -} -func (*UnimplementedQueryServer) TraderDerivativeConditionalOrders(ctx context.Context, req *QueryTraderDerivativeConditionalOrdersRequest) (*QueryTraderDerivativeConditionalOrdersResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method TraderDerivativeConditionalOrders not implemented") -} -func (*UnimplementedQueryServer) MarketAtomicExecutionFeeMultiplier(ctx context.Context, req *QueryMarketAtomicExecutionFeeMultiplierRequest) (*QueryMarketAtomicExecutionFeeMultiplierResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method MarketAtomicExecutionFeeMultiplier not implemented") -} -func (*UnimplementedQueryServer) ActiveStakeGrant(ctx context.Context, req *QueryActiveStakeGrantRequest) (*QueryActiveStakeGrantResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ActiveStakeGrant not implemented") -} -func (*UnimplementedQueryServer) GrantAuthorization(ctx context.Context, req *QueryGrantAuthorizationRequest) (*QueryGrantAuthorizationResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GrantAuthorization not implemented") -} -func (*UnimplementedQueryServer) GrantAuthorizations(ctx context.Context, req *QueryGrantAuthorizationsRequest) (*QueryGrantAuthorizationsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GrantAuthorizations not implemented") + +func (c *queryClient) SubaccountTradeNonce(ctx context.Context, in *QuerySubaccountTradeNonceRequest, opts ...grpc.CallOption) (*QuerySubaccountTradeNonceResponse, error) { + out := new(QuerySubaccountTradeNonceResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountTradeNonce", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func RegisterQueryServer(s grpc1.Server, srv QueryServer) { - s.RegisterService(&_Query_serviceDesc, srv) +func (c *queryClient) ExchangeModuleState(ctx context.Context, in *QueryModuleStateRequest, opts ...grpc.CallOption) (*QueryModuleStateResponse, error) { + out := new(QueryModuleStateResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/ExchangeModuleState", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func _Query_QueryExchangeParams_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryExchangeParamsRequest) - if err := dec(in); err != nil { +func (c *queryClient) Positions(ctx context.Context, in *QueryPositionsRequest, opts ...grpc.CallOption) (*QueryPositionsResponse, error) { + out := new(QueryPositionsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/Positions", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).QueryExchangeParams(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/QueryExchangeParams", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).QueryExchangeParams(ctx, req.(*QueryExchangeParamsRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_SubaccountDeposits_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QuerySubaccountDepositsRequest) - if err := dec(in); err != nil { +func (c *queryClient) SubaccountPositions(ctx context.Context, in *QuerySubaccountPositionsRequest, opts ...grpc.CallOption) (*QuerySubaccountPositionsResponse, error) { + out := new(QuerySubaccountPositionsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountPositions", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).SubaccountDeposits(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/SubaccountDeposits", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).SubaccountDeposits(ctx, req.(*QuerySubaccountDepositsRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_SubaccountDeposit_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QuerySubaccountDepositRequest) - if err := dec(in); err != nil { +func (c *queryClient) SubaccountPositionInMarket(ctx context.Context, in *QuerySubaccountPositionInMarketRequest, opts ...grpc.CallOption) (*QuerySubaccountPositionInMarketResponse, error) { + out := new(QuerySubaccountPositionInMarketResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountPositionInMarket", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).SubaccountDeposit(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/SubaccountDeposit", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).SubaccountDeposit(ctx, req.(*QuerySubaccountDepositRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_ExchangeBalances_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryExchangeBalancesRequest) - if err := dec(in); err != nil { +func (c *queryClient) SubaccountEffectivePositionInMarket(ctx context.Context, in *QuerySubaccountEffectivePositionInMarketRequest, opts ...grpc.CallOption) (*QuerySubaccountEffectivePositionInMarketResponse, error) { + out := new(QuerySubaccountEffectivePositionInMarketResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountEffectivePositionInMarket", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).ExchangeBalances(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/ExchangeBalances", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).ExchangeBalances(ctx, req.(*QueryExchangeBalancesRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_AggregateVolume_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryAggregateVolumeRequest) - if err := dec(in); err != nil { +func (c *queryClient) PerpetualMarketInfo(ctx context.Context, in *QueryPerpetualMarketInfoRequest, opts ...grpc.CallOption) (*QueryPerpetualMarketInfoResponse, error) { + out := new(QueryPerpetualMarketInfoResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/PerpetualMarketInfo", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).AggregateVolume(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/AggregateVolume", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).AggregateVolume(ctx, req.(*QueryAggregateVolumeRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_AggregateVolumes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryAggregateVolumesRequest) - if err := dec(in); err != nil { +func (c *queryClient) ExpiryFuturesMarketInfo(ctx context.Context, in *QueryExpiryFuturesMarketInfoRequest, opts ...grpc.CallOption) (*QueryExpiryFuturesMarketInfoResponse, error) { + out := new(QueryExpiryFuturesMarketInfoResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/ExpiryFuturesMarketInfo", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).AggregateVolumes(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/AggregateVolumes", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).AggregateVolumes(ctx, req.(*QueryAggregateVolumesRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_AggregateMarketVolume_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryAggregateMarketVolumeRequest) - if err := dec(in); err != nil { +func (c *queryClient) PerpetualMarketFunding(ctx context.Context, in *QueryPerpetualMarketFundingRequest, opts ...grpc.CallOption) (*QueryPerpetualMarketFundingResponse, error) { + out := new(QueryPerpetualMarketFundingResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/PerpetualMarketFunding", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).AggregateMarketVolume(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/AggregateMarketVolume", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).AggregateMarketVolume(ctx, req.(*QueryAggregateMarketVolumeRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_AggregateMarketVolumes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryAggregateMarketVolumesRequest) - if err := dec(in); err != nil { +func (c *queryClient) SubaccountOrderMetadata(ctx context.Context, in *QuerySubaccountOrderMetadataRequest, opts ...grpc.CallOption) (*QuerySubaccountOrderMetadataResponse, error) { + out := new(QuerySubaccountOrderMetadataResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/SubaccountOrderMetadata", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).AggregateMarketVolumes(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/AggregateMarketVolumes", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).AggregateMarketVolumes(ctx, req.(*QueryAggregateMarketVolumesRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_DenomDecimal_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryDenomDecimalRequest) - if err := dec(in); err != nil { +func (c *queryClient) TradeRewardPoints(ctx context.Context, in *QueryTradeRewardPointsRequest, opts ...grpc.CallOption) (*QueryTradeRewardPointsResponse, error) { + out := new(QueryTradeRewardPointsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/TradeRewardPoints", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).DenomDecimal(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/DenomDecimal", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).DenomDecimal(ctx, req.(*QueryDenomDecimalRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_DenomDecimals_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryDenomDecimalsRequest) - if err := dec(in); err != nil { +func (c *queryClient) PendingTradeRewardPoints(ctx context.Context, in *QueryTradeRewardPointsRequest, opts ...grpc.CallOption) (*QueryTradeRewardPointsResponse, error) { + out := new(QueryTradeRewardPointsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/PendingTradeRewardPoints", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).DenomDecimals(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/DenomDecimals", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).DenomDecimals(ctx, req.(*QueryDenomDecimalsRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_SpotMarkets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QuerySpotMarketsRequest) - if err := dec(in); err != nil { +func (c *queryClient) TradeRewardCampaign(ctx context.Context, in *QueryTradeRewardCampaignRequest, opts ...grpc.CallOption) (*QueryTradeRewardCampaignResponse, error) { + out := new(QueryTradeRewardCampaignResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/TradeRewardCampaign", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).SpotMarkets(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/SpotMarkets", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).SpotMarkets(ctx, req.(*QuerySpotMarketsRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_SpotMarket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QuerySpotMarketRequest) - if err := dec(in); err != nil { +func (c *queryClient) FeeDiscountAccountInfo(ctx context.Context, in *QueryFeeDiscountAccountInfoRequest, opts ...grpc.CallOption) (*QueryFeeDiscountAccountInfoResponse, error) { + out := new(QueryFeeDiscountAccountInfoResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/FeeDiscountAccountInfo", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).SpotMarket(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/SpotMarket", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).SpotMarket(ctx, req.(*QuerySpotMarketRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_FullSpotMarkets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryFullSpotMarketsRequest) - if err := dec(in); err != nil { +func (c *queryClient) FeeDiscountSchedule(ctx context.Context, in *QueryFeeDiscountScheduleRequest, opts ...grpc.CallOption) (*QueryFeeDiscountScheduleResponse, error) { + out := new(QueryFeeDiscountScheduleResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/FeeDiscountSchedule", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).FullSpotMarkets(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/FullSpotMarkets", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).FullSpotMarkets(ctx, req.(*QueryFullSpotMarketsRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_FullSpotMarket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryFullSpotMarketRequest) - if err := dec(in); err != nil { +func (c *queryClient) BalanceMismatches(ctx context.Context, in *QueryBalanceMismatchesRequest, opts ...grpc.CallOption) (*QueryBalanceMismatchesResponse, error) { + out := new(QueryBalanceMismatchesResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/BalanceMismatches", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).FullSpotMarket(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/FullSpotMarket", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).FullSpotMarket(ctx, req.(*QueryFullSpotMarketRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_SpotOrderbook_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QuerySpotOrderbookRequest) - if err := dec(in); err != nil { +func (c *queryClient) BalanceWithBalanceHolds(ctx context.Context, in *QueryBalanceWithBalanceHoldsRequest, opts ...grpc.CallOption) (*QueryBalanceWithBalanceHoldsResponse, error) { + out := new(QueryBalanceWithBalanceHoldsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/BalanceWithBalanceHolds", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).SpotOrderbook(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/SpotOrderbook", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).SpotOrderbook(ctx, req.(*QuerySpotOrderbookRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_TraderSpotOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryTraderSpotOrdersRequest) - if err := dec(in); err != nil { +func (c *queryClient) FeeDiscountTierStatistics(ctx context.Context, in *QueryFeeDiscountTierStatisticsRequest, opts ...grpc.CallOption) (*QueryFeeDiscountTierStatisticsResponse, error) { + out := new(QueryFeeDiscountTierStatisticsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/FeeDiscountTierStatistics", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).TraderSpotOrders(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/TraderSpotOrders", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).TraderSpotOrders(ctx, req.(*QueryTraderSpotOrdersRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_AccountAddressSpotOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryAccountAddressSpotOrdersRequest) - if err := dec(in); err != nil { +func (c *queryClient) MitoVaultInfos(ctx context.Context, in *MitoVaultInfosRequest, opts ...grpc.CallOption) (*MitoVaultInfosResponse, error) { + out := new(MitoVaultInfosResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/MitoVaultInfos", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).AccountAddressSpotOrders(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/AccountAddressSpotOrders", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).AccountAddressSpotOrders(ctx, req.(*QueryAccountAddressSpotOrdersRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_SpotOrdersByHashes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QuerySpotOrdersByHashesRequest) - if err := dec(in); err != nil { +func (c *queryClient) QueryMarketIDFromVault(ctx context.Context, in *QueryMarketIDFromVaultRequest, opts ...grpc.CallOption) (*QueryMarketIDFromVaultResponse, error) { + out := new(QueryMarketIDFromVaultResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/QueryMarketIDFromVault", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).SpotOrdersByHashes(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/SpotOrdersByHashes", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).SpotOrdersByHashes(ctx, req.(*QuerySpotOrdersByHashesRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_SubaccountOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QuerySubaccountOrdersRequest) - if err := dec(in); err != nil { +func (c *queryClient) HistoricalTradeRecords(ctx context.Context, in *QueryHistoricalTradeRecordsRequest, opts ...grpc.CallOption) (*QueryHistoricalTradeRecordsResponse, error) { + out := new(QueryHistoricalTradeRecordsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/HistoricalTradeRecords", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).SubaccountOrders(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/SubaccountOrders", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).SubaccountOrders(ctx, req.(*QuerySubaccountOrdersRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_TraderSpotTransientOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryTraderSpotOrdersRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).TraderSpotTransientOrders(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/TraderSpotTransientOrders", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).TraderSpotTransientOrders(ctx, req.(*QueryTraderSpotOrdersRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _Query_SpotMidPriceAndTOB_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QuerySpotMidPriceAndTOBRequest) - if err := dec(in); err != nil { +func (c *queryClient) IsOptedOutOfRewards(ctx context.Context, in *QueryIsOptedOutOfRewardsRequest, opts ...grpc.CallOption) (*QueryIsOptedOutOfRewardsResponse, error) { + out := new(QueryIsOptedOutOfRewardsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/IsOptedOutOfRewards", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).SpotMidPriceAndTOB(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/SpotMidPriceAndTOB", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).SpotMidPriceAndTOB(ctx, req.(*QuerySpotMidPriceAndTOBRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_DerivativeMidPriceAndTOB_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryDerivativeMidPriceAndTOBRequest) - if err := dec(in); err != nil { +func (c *queryClient) OptedOutOfRewardsAccounts(ctx context.Context, in *QueryOptedOutOfRewardsAccountsRequest, opts ...grpc.CallOption) (*QueryOptedOutOfRewardsAccountsResponse, error) { + out := new(QueryOptedOutOfRewardsAccountsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/OptedOutOfRewardsAccounts", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).DerivativeMidPriceAndTOB(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/DerivativeMidPriceAndTOB", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).DerivativeMidPriceAndTOB(ctx, req.(*QueryDerivativeMidPriceAndTOBRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_DerivativeOrderbook_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryDerivativeOrderbookRequest) - if err := dec(in); err != nil { +func (c *queryClient) MarketVolatility(ctx context.Context, in *QueryMarketVolatilityRequest, opts ...grpc.CallOption) (*QueryMarketVolatilityResponse, error) { + out := new(QueryMarketVolatilityResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/MarketVolatility", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).DerivativeOrderbook(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/DerivativeOrderbook", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).DerivativeOrderbook(ctx, req.(*QueryDerivativeOrderbookRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_TraderDerivativeOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryTraderDerivativeOrdersRequest) - if err := dec(in); err != nil { +func (c *queryClient) BinaryOptionsMarkets(ctx context.Context, in *QueryBinaryMarketsRequest, opts ...grpc.CallOption) (*QueryBinaryMarketsResponse, error) { + out := new(QueryBinaryMarketsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/BinaryOptionsMarkets", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).TraderDerivativeOrders(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/TraderDerivativeOrders", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).TraderDerivativeOrders(ctx, req.(*QueryTraderDerivativeOrdersRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_AccountAddressDerivativeOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryAccountAddressDerivativeOrdersRequest) - if err := dec(in); err != nil { +func (c *queryClient) TraderDerivativeConditionalOrders(ctx context.Context, in *QueryTraderDerivativeConditionalOrdersRequest, opts ...grpc.CallOption) (*QueryTraderDerivativeConditionalOrdersResponse, error) { + out := new(QueryTraderDerivativeConditionalOrdersResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/TraderDerivativeConditionalOrders", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).AccountAddressDerivativeOrders(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/AccountAddressDerivativeOrders", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).AccountAddressDerivativeOrders(ctx, req.(*QueryAccountAddressDerivativeOrdersRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_DerivativeOrdersByHashes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryDerivativeOrdersByHashesRequest) - if err := dec(in); err != nil { +func (c *queryClient) MarketAtomicExecutionFeeMultiplier(ctx context.Context, in *QueryMarketAtomicExecutionFeeMultiplierRequest, opts ...grpc.CallOption) (*QueryMarketAtomicExecutionFeeMultiplierResponse, error) { + out := new(QueryMarketAtomicExecutionFeeMultiplierResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/MarketAtomicExecutionFeeMultiplier", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).DerivativeOrdersByHashes(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/DerivativeOrdersByHashes", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).DerivativeOrdersByHashes(ctx, req.(*QueryDerivativeOrdersByHashesRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_TraderDerivativeTransientOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryTraderDerivativeOrdersRequest) - if err := dec(in); err != nil { +func (c *queryClient) ActiveStakeGrant(ctx context.Context, in *QueryActiveStakeGrantRequest, opts ...grpc.CallOption) (*QueryActiveStakeGrantResponse, error) { + out := new(QueryActiveStakeGrantResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/ActiveStakeGrant", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).TraderDerivativeTransientOrders(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/TraderDerivativeTransientOrders", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).TraderDerivativeTransientOrders(ctx, req.(*QueryTraderDerivativeOrdersRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_DerivativeMarkets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryDerivativeMarketsRequest) - if err := dec(in); err != nil { +func (c *queryClient) GrantAuthorization(ctx context.Context, in *QueryGrantAuthorizationRequest, opts ...grpc.CallOption) (*QueryGrantAuthorizationResponse, error) { + out := new(QueryGrantAuthorizationResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/GrantAuthorization", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).DerivativeMarkets(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/DerivativeMarkets", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).DerivativeMarkets(ctx, req.(*QueryDerivativeMarketsRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_DerivativeMarket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryDerivativeMarketRequest) - if err := dec(in); err != nil { +func (c *queryClient) GrantAuthorizations(ctx context.Context, in *QueryGrantAuthorizationsRequest, opts ...grpc.CallOption) (*QueryGrantAuthorizationsResponse, error) { + out := new(QueryGrantAuthorizationsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/GrantAuthorizations", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).DerivativeMarket(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/DerivativeMarket", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).DerivativeMarket(ctx, req.(*QueryDerivativeMarketRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_DerivativeMarketAddress_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryDerivativeMarketAddressRequest) - if err := dec(in); err != nil { +func (c *queryClient) MarketBalance(ctx context.Context, in *QueryMarketBalanceRequest, opts ...grpc.CallOption) (*QueryMarketBalanceResponse, error) { + out := new(QueryMarketBalanceResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/MarketBalance", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).DerivativeMarketAddress(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/DerivativeMarketAddress", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).DerivativeMarketAddress(ctx, req.(*QueryDerivativeMarketAddressRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_SubaccountTradeNonce_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QuerySubaccountTradeNonceRequest) - if err := dec(in); err != nil { +func (c *queryClient) MarketBalances(ctx context.Context, in *QueryMarketBalancesRequest, opts ...grpc.CallOption) (*QueryMarketBalancesResponse, error) { + out := new(QueryMarketBalancesResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/MarketBalances", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).SubaccountTradeNonce(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/SubaccountTradeNonce", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).SubaccountTradeNonce(ctx, req.(*QuerySubaccountTradeNonceRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_ExchangeModuleState_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryModuleStateRequest) - if err := dec(in); err != nil { +func (c *queryClient) DenomMinNotional(ctx context.Context, in *QueryDenomMinNotionalRequest, opts ...grpc.CallOption) (*QueryDenomMinNotionalResponse, error) { + out := new(QueryDenomMinNotionalResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DenomMinNotional", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).ExchangeModuleState(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/ExchangeModuleState", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).ExchangeModuleState(ctx, req.(*QueryModuleStateRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_Positions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryPositionsRequest) - if err := dec(in); err != nil { +func (c *queryClient) DenomMinNotionals(ctx context.Context, in *QueryDenomMinNotionalsRequest, opts ...grpc.CallOption) (*QueryDenomMinNotionalsResponse, error) { + out := new(QueryDenomMinNotionalsResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Query/DenomMinNotionals", in, out, opts...) + if err != nil { return nil, err } - if interceptor == nil { - return srv.(QueryServer).Positions(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/Positions", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).Positions(ctx, req.(*QueryPositionsRequest)) - } - return interceptor(ctx, in, info, handler) + return out, nil } -func _Query_SubaccountPositions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QuerySubaccountPositionsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).SubaccountPositions(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/SubaccountPositions", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).SubaccountPositions(ctx, req.(*QuerySubaccountPositionsRequest)) - } - return interceptor(ctx, in, info, handler) +// QueryServer is the server API for Query service. +type QueryServer interface { + L3DerivativeOrderBook(context.Context, *QueryFullDerivativeOrderbookRequest) (*QueryFullDerivativeOrderbookResponse, error) + L3SpotOrderBook(context.Context, *QueryFullSpotOrderbookRequest) (*QueryFullSpotOrderbookResponse, error) + // Retrieves exchange params + QueryExchangeParams(context.Context, *QueryExchangeParamsRequest) (*QueryExchangeParamsResponse, error) + // Retrieves a Subaccount's Deposits + SubaccountDeposits(context.Context, *QuerySubaccountDepositsRequest) (*QuerySubaccountDepositsResponse, error) + // Retrieves a Subaccount's Deposits + SubaccountDeposit(context.Context, *QuerySubaccountDepositRequest) (*QuerySubaccountDepositResponse, error) + // Retrieves all of the balances of all users on the exchange. + ExchangeBalances(context.Context, *QueryExchangeBalancesRequest) (*QueryExchangeBalancesResponse, error) + // Retrieves the aggregate volumes for the specified account or subaccount + AggregateVolume(context.Context, *QueryAggregateVolumeRequest) (*QueryAggregateVolumeResponse, error) + // Retrieves the aggregate volumes for specified accounts + AggregateVolumes(context.Context, *QueryAggregateVolumesRequest) (*QueryAggregateVolumesResponse, error) + // Retrieves the aggregate volume for the specified market + AggregateMarketVolume(context.Context, *QueryAggregateMarketVolumeRequest) (*QueryAggregateMarketVolumeResponse, error) + // Retrieves the aggregate market volumes for specified markets + AggregateMarketVolumes(context.Context, *QueryAggregateMarketVolumesRequest) (*QueryAggregateMarketVolumesResponse, error) + // Retrieves the denom decimals for a denom. + DenomDecimal(context.Context, *QueryDenomDecimalRequest) (*QueryDenomDecimalResponse, error) + // Retrieves the denom decimals for multiple denoms. Returns all denom + // decimals if unspecified. + DenomDecimals(context.Context, *QueryDenomDecimalsRequest) (*QueryDenomDecimalsResponse, error) + // Retrieves a list of spot markets. + SpotMarkets(context.Context, *QuerySpotMarketsRequest) (*QuerySpotMarketsResponse, error) + // Retrieves a spot market by ticker + SpotMarket(context.Context, *QuerySpotMarketRequest) (*QuerySpotMarketResponse, error) + // Retrieves a list of spot markets with extra information. + FullSpotMarkets(context.Context, *QueryFullSpotMarketsRequest) (*QueryFullSpotMarketsResponse, error) + // Retrieves a spot market with extra information. + FullSpotMarket(context.Context, *QueryFullSpotMarketRequest) (*QueryFullSpotMarketResponse, error) + // Retrieves a spot market's orderbook by marketID + SpotOrderbook(context.Context, *QuerySpotOrderbookRequest) (*QuerySpotOrderbookResponse, error) + // Retrieves a trader's spot orders + TraderSpotOrders(context.Context, *QueryTraderSpotOrdersRequest) (*QueryTraderSpotOrdersResponse, error) + // Retrieves all account address spot orders + AccountAddressSpotOrders(context.Context, *QueryAccountAddressSpotOrdersRequest) (*QueryAccountAddressSpotOrdersResponse, error) + // Retrieves spot orders corresponding to specified order hashes for a given + // subaccountID and marketID + SpotOrdersByHashes(context.Context, *QuerySpotOrdersByHashesRequest) (*QuerySpotOrdersByHashesResponse, error) + // Retrieves subaccount's orders + SubaccountOrders(context.Context, *QuerySubaccountOrdersRequest) (*QuerySubaccountOrdersResponse, error) + // Retrieves a trader's transient spot orders + TraderSpotTransientOrders(context.Context, *QueryTraderSpotOrdersRequest) (*QueryTraderSpotOrdersResponse, error) + // Retrieves a spot market's mid-price + SpotMidPriceAndTOB(context.Context, *QuerySpotMidPriceAndTOBRequest) (*QuerySpotMidPriceAndTOBResponse, error) + // Retrieves a derivative market's mid-price + DerivativeMidPriceAndTOB(context.Context, *QueryDerivativeMidPriceAndTOBRequest) (*QueryDerivativeMidPriceAndTOBResponse, error) + // Retrieves a derivative market's orderbook by marketID + DerivativeOrderbook(context.Context, *QueryDerivativeOrderbookRequest) (*QueryDerivativeOrderbookResponse, error) + // Retrieves a trader's derivative orders + TraderDerivativeOrders(context.Context, *QueryTraderDerivativeOrdersRequest) (*QueryTraderDerivativeOrdersResponse, error) + // Retrieves all account address derivative orders + AccountAddressDerivativeOrders(context.Context, *QueryAccountAddressDerivativeOrdersRequest) (*QueryAccountAddressDerivativeOrdersResponse, error) + // Retrieves a trader's derivative orders + DerivativeOrdersByHashes(context.Context, *QueryDerivativeOrdersByHashesRequest) (*QueryDerivativeOrdersByHashesResponse, error) + // Retrieves a trader's transient derivative orders + TraderDerivativeTransientOrders(context.Context, *QueryTraderDerivativeOrdersRequest) (*QueryTraderDerivativeOrdersResponse, error) + // Retrieves a list of derivative markets. + DerivativeMarkets(context.Context, *QueryDerivativeMarketsRequest) (*QueryDerivativeMarketsResponse, error) + // Retrieves a derivative market by ticker + DerivativeMarket(context.Context, *QueryDerivativeMarketRequest) (*QueryDerivativeMarketResponse, error) + // Retrieves a derivative market's corresponding address for fees that + // contribute to the market's insurance fund + DerivativeMarketAddress(context.Context, *QueryDerivativeMarketAddressRequest) (*QueryDerivativeMarketAddressResponse, error) + // Retrieves a subaccount's trade nonce + SubaccountTradeNonce(context.Context, *QuerySubaccountTradeNonceRequest) (*QuerySubaccountTradeNonceResponse, error) + // Retrieves the entire exchange module's state + ExchangeModuleState(context.Context, *QueryModuleStateRequest) (*QueryModuleStateResponse, error) + // Retrieves the entire exchange module's positions + Positions(context.Context, *QueryPositionsRequest) (*QueryPositionsResponse, error) + // Retrieves subaccount's positions + SubaccountPositions(context.Context, *QuerySubaccountPositionsRequest) (*QuerySubaccountPositionsResponse, error) + // Retrieves subaccount's position in market + SubaccountPositionInMarket(context.Context, *QuerySubaccountPositionInMarketRequest) (*QuerySubaccountPositionInMarketResponse, error) + // Retrieves subaccount's position in market + SubaccountEffectivePositionInMarket(context.Context, *QuerySubaccountEffectivePositionInMarketRequest) (*QuerySubaccountEffectivePositionInMarketResponse, error) + // Retrieves perpetual market info + PerpetualMarketInfo(context.Context, *QueryPerpetualMarketInfoRequest) (*QueryPerpetualMarketInfoResponse, error) + // Retrieves expiry market info + ExpiryFuturesMarketInfo(context.Context, *QueryExpiryFuturesMarketInfoRequest) (*QueryExpiryFuturesMarketInfoResponse, error) + // Retrieves perpetual market funding + PerpetualMarketFunding(context.Context, *QueryPerpetualMarketFundingRequest) (*QueryPerpetualMarketFundingResponse, error) + // Retrieves subaccount's order metadata + SubaccountOrderMetadata(context.Context, *QuerySubaccountOrderMetadataRequest) (*QuerySubaccountOrderMetadataResponse, error) + // Retrieves the account and total trade rewards points + TradeRewardPoints(context.Context, *QueryTradeRewardPointsRequest) (*QueryTradeRewardPointsResponse, error) + // Retrieves the pending account and total trade rewards points + PendingTradeRewardPoints(context.Context, *QueryTradeRewardPointsRequest) (*QueryTradeRewardPointsResponse, error) + // Retrieves the trade reward campaign + TradeRewardCampaign(context.Context, *QueryTradeRewardCampaignRequest) (*QueryTradeRewardCampaignResponse, error) + // Retrieves the account's fee discount info + FeeDiscountAccountInfo(context.Context, *QueryFeeDiscountAccountInfoRequest) (*QueryFeeDiscountAccountInfoResponse, error) + // Retrieves the fee discount schedule + FeeDiscountSchedule(context.Context, *QueryFeeDiscountScheduleRequest) (*QueryFeeDiscountScheduleResponse, error) + // Retrieves mismatches between available vs. total balance + BalanceMismatches(context.Context, *QueryBalanceMismatchesRequest) (*QueryBalanceMismatchesResponse, error) + // Retrieves available and total balances with balance holds + BalanceWithBalanceHolds(context.Context, *QueryBalanceWithBalanceHoldsRequest) (*QueryBalanceWithBalanceHoldsResponse, error) + // Retrieves fee discount tier stats + FeeDiscountTierStatistics(context.Context, *QueryFeeDiscountTierStatisticsRequest) (*QueryFeeDiscountTierStatisticsResponse, error) + // Retrieves market making pool info + MitoVaultInfos(context.Context, *MitoVaultInfosRequest) (*MitoVaultInfosResponse, error) + // QueryMarketIDFromVault returns the market ID for a given vault subaccount + // ID + QueryMarketIDFromVault(context.Context, *QueryMarketIDFromVaultRequest) (*QueryMarketIDFromVaultResponse, error) + // Retrieves historical trade records for a given market ID + HistoricalTradeRecords(context.Context, *QueryHistoricalTradeRecordsRequest) (*QueryHistoricalTradeRecordsResponse, error) + // Retrieves if the account is opted out of rewards + IsOptedOutOfRewards(context.Context, *QueryIsOptedOutOfRewardsRequest) (*QueryIsOptedOutOfRewardsResponse, error) + // Retrieves all accounts opted out of rewards + OptedOutOfRewardsAccounts(context.Context, *QueryOptedOutOfRewardsAccountsRequest) (*QueryOptedOutOfRewardsAccountsResponse, error) + // MarketVolatility computes the volatility for spot and derivative markets + // trading history. + MarketVolatility(context.Context, *QueryMarketVolatilityRequest) (*QueryMarketVolatilityResponse, error) + // Retrieves a spot market's orderbook by marketID + BinaryOptionsMarkets(context.Context, *QueryBinaryMarketsRequest) (*QueryBinaryMarketsResponse, error) + // Retrieves a trader's derivative conditional orders + TraderDerivativeConditionalOrders(context.Context, *QueryTraderDerivativeConditionalOrdersRequest) (*QueryTraderDerivativeConditionalOrdersResponse, error) + MarketAtomicExecutionFeeMultiplier(context.Context, *QueryMarketAtomicExecutionFeeMultiplierRequest) (*QueryMarketAtomicExecutionFeeMultiplierResponse, error) + // Retrieves the active stake grant for a grantee + ActiveStakeGrant(context.Context, *QueryActiveStakeGrantRequest) (*QueryActiveStakeGrantResponse, error) + // Retrieves the grant authorization amount for a granter and grantee + GrantAuthorization(context.Context, *QueryGrantAuthorizationRequest) (*QueryGrantAuthorizationResponse, error) + // Retrieves the grant authorization amount for a granter and grantee + GrantAuthorizations(context.Context, *QueryGrantAuthorizationsRequest) (*QueryGrantAuthorizationsResponse, error) + // Retrieves a derivative or binary options market's balance + MarketBalance(context.Context, *QueryMarketBalanceRequest) (*QueryMarketBalanceResponse, error) + // Retrieves all derivative or binary options market balances + MarketBalances(context.Context, *QueryMarketBalancesRequest) (*QueryMarketBalancesResponse, error) + // Retrieves the min notional for a denom + DenomMinNotional(context.Context, *QueryDenomMinNotionalRequest) (*QueryDenomMinNotionalResponse, error) + // Retrieves the min notionals for all denoms + DenomMinNotionals(context.Context, *QueryDenomMinNotionalsRequest) (*QueryDenomMinNotionalsResponse, error) } -func _Query_SubaccountPositionInMarket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QuerySubaccountPositionInMarketRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).SubaccountPositionInMarket(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/SubaccountPositionInMarket", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).SubaccountPositionInMarket(ctx, req.(*QuerySubaccountPositionInMarketRequest)) - } - return interceptor(ctx, in, info, handler) +// UnimplementedQueryServer can be embedded to have forward compatible implementations. +type UnimplementedQueryServer struct { } -func _Query_SubaccountEffectivePositionInMarket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QuerySubaccountEffectivePositionInMarketRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).SubaccountEffectivePositionInMarket(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/SubaccountEffectivePositionInMarket", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).SubaccountEffectivePositionInMarket(ctx, req.(*QuerySubaccountEffectivePositionInMarketRequest)) - } - return interceptor(ctx, in, info, handler) +func (*UnimplementedQueryServer) L3DerivativeOrderBook(ctx context.Context, req *QueryFullDerivativeOrderbookRequest) (*QueryFullDerivativeOrderbookResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method L3DerivativeOrderBook not implemented") } - -func _Query_PerpetualMarketInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryPerpetualMarketInfoRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).PerpetualMarketInfo(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/PerpetualMarketInfo", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).PerpetualMarketInfo(ctx, req.(*QueryPerpetualMarketInfoRequest)) - } - return interceptor(ctx, in, info, handler) +func (*UnimplementedQueryServer) L3SpotOrderBook(ctx context.Context, req *QueryFullSpotOrderbookRequest) (*QueryFullSpotOrderbookResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method L3SpotOrderBook not implemented") } - -func _Query_ExpiryFuturesMarketInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryExpiryFuturesMarketInfoRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).ExpiryFuturesMarketInfo(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/ExpiryFuturesMarketInfo", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).ExpiryFuturesMarketInfo(ctx, req.(*QueryExpiryFuturesMarketInfoRequest)) - } - return interceptor(ctx, in, info, handler) +func (*UnimplementedQueryServer) QueryExchangeParams(ctx context.Context, req *QueryExchangeParamsRequest) (*QueryExchangeParamsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method QueryExchangeParams not implemented") } - -func _Query_PerpetualMarketFunding_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryPerpetualMarketFundingRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).PerpetualMarketFunding(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/PerpetualMarketFunding", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).PerpetualMarketFunding(ctx, req.(*QueryPerpetualMarketFundingRequest)) - } - return interceptor(ctx, in, info, handler) +func (*UnimplementedQueryServer) SubaccountDeposits(ctx context.Context, req *QuerySubaccountDepositsRequest) (*QuerySubaccountDepositsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SubaccountDeposits not implemented") } - -func _Query_SubaccountOrderMetadata_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QuerySubaccountOrderMetadataRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).SubaccountOrderMetadata(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/SubaccountOrderMetadata", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).SubaccountOrderMetadata(ctx, req.(*QuerySubaccountOrderMetadataRequest)) - } - return interceptor(ctx, in, info, handler) +func (*UnimplementedQueryServer) SubaccountDeposit(ctx context.Context, req *QuerySubaccountDepositRequest) (*QuerySubaccountDepositResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SubaccountDeposit not implemented") } - -func _Query_TradeRewardPoints_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryTradeRewardPointsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).TradeRewardPoints(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/TradeRewardPoints", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).TradeRewardPoints(ctx, req.(*QueryTradeRewardPointsRequest)) - } - return interceptor(ctx, in, info, handler) +func (*UnimplementedQueryServer) ExchangeBalances(ctx context.Context, req *QueryExchangeBalancesRequest) (*QueryExchangeBalancesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ExchangeBalances not implemented") +} +func (*UnimplementedQueryServer) AggregateVolume(ctx context.Context, req *QueryAggregateVolumeRequest) (*QueryAggregateVolumeResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method AggregateVolume not implemented") +} +func (*UnimplementedQueryServer) AggregateVolumes(ctx context.Context, req *QueryAggregateVolumesRequest) (*QueryAggregateVolumesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method AggregateVolumes not implemented") +} +func (*UnimplementedQueryServer) AggregateMarketVolume(ctx context.Context, req *QueryAggregateMarketVolumeRequest) (*QueryAggregateMarketVolumeResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method AggregateMarketVolume not implemented") +} +func (*UnimplementedQueryServer) AggregateMarketVolumes(ctx context.Context, req *QueryAggregateMarketVolumesRequest) (*QueryAggregateMarketVolumesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method AggregateMarketVolumes not implemented") +} +func (*UnimplementedQueryServer) DenomDecimal(ctx context.Context, req *QueryDenomDecimalRequest) (*QueryDenomDecimalResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DenomDecimal not implemented") +} +func (*UnimplementedQueryServer) DenomDecimals(ctx context.Context, req *QueryDenomDecimalsRequest) (*QueryDenomDecimalsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DenomDecimals not implemented") +} +func (*UnimplementedQueryServer) SpotMarkets(ctx context.Context, req *QuerySpotMarketsRequest) (*QuerySpotMarketsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SpotMarkets not implemented") +} +func (*UnimplementedQueryServer) SpotMarket(ctx context.Context, req *QuerySpotMarketRequest) (*QuerySpotMarketResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SpotMarket not implemented") +} +func (*UnimplementedQueryServer) FullSpotMarkets(ctx context.Context, req *QueryFullSpotMarketsRequest) (*QueryFullSpotMarketsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method FullSpotMarkets not implemented") +} +func (*UnimplementedQueryServer) FullSpotMarket(ctx context.Context, req *QueryFullSpotMarketRequest) (*QueryFullSpotMarketResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method FullSpotMarket not implemented") +} +func (*UnimplementedQueryServer) SpotOrderbook(ctx context.Context, req *QuerySpotOrderbookRequest) (*QuerySpotOrderbookResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SpotOrderbook not implemented") +} +func (*UnimplementedQueryServer) TraderSpotOrders(ctx context.Context, req *QueryTraderSpotOrdersRequest) (*QueryTraderSpotOrdersResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method TraderSpotOrders not implemented") +} +func (*UnimplementedQueryServer) AccountAddressSpotOrders(ctx context.Context, req *QueryAccountAddressSpotOrdersRequest) (*QueryAccountAddressSpotOrdersResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method AccountAddressSpotOrders not implemented") +} +func (*UnimplementedQueryServer) SpotOrdersByHashes(ctx context.Context, req *QuerySpotOrdersByHashesRequest) (*QuerySpotOrdersByHashesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SpotOrdersByHashes not implemented") +} +func (*UnimplementedQueryServer) SubaccountOrders(ctx context.Context, req *QuerySubaccountOrdersRequest) (*QuerySubaccountOrdersResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SubaccountOrders not implemented") +} +func (*UnimplementedQueryServer) TraderSpotTransientOrders(ctx context.Context, req *QueryTraderSpotOrdersRequest) (*QueryTraderSpotOrdersResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method TraderSpotTransientOrders not implemented") +} +func (*UnimplementedQueryServer) SpotMidPriceAndTOB(ctx context.Context, req *QuerySpotMidPriceAndTOBRequest) (*QuerySpotMidPriceAndTOBResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SpotMidPriceAndTOB not implemented") +} +func (*UnimplementedQueryServer) DerivativeMidPriceAndTOB(ctx context.Context, req *QueryDerivativeMidPriceAndTOBRequest) (*QueryDerivativeMidPriceAndTOBResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DerivativeMidPriceAndTOB not implemented") +} +func (*UnimplementedQueryServer) DerivativeOrderbook(ctx context.Context, req *QueryDerivativeOrderbookRequest) (*QueryDerivativeOrderbookResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DerivativeOrderbook not implemented") +} +func (*UnimplementedQueryServer) TraderDerivativeOrders(ctx context.Context, req *QueryTraderDerivativeOrdersRequest) (*QueryTraderDerivativeOrdersResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method TraderDerivativeOrders not implemented") +} +func (*UnimplementedQueryServer) AccountAddressDerivativeOrders(ctx context.Context, req *QueryAccountAddressDerivativeOrdersRequest) (*QueryAccountAddressDerivativeOrdersResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method AccountAddressDerivativeOrders not implemented") +} +func (*UnimplementedQueryServer) DerivativeOrdersByHashes(ctx context.Context, req *QueryDerivativeOrdersByHashesRequest) (*QueryDerivativeOrdersByHashesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DerivativeOrdersByHashes not implemented") +} +func (*UnimplementedQueryServer) TraderDerivativeTransientOrders(ctx context.Context, req *QueryTraderDerivativeOrdersRequest) (*QueryTraderDerivativeOrdersResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method TraderDerivativeTransientOrders not implemented") +} +func (*UnimplementedQueryServer) DerivativeMarkets(ctx context.Context, req *QueryDerivativeMarketsRequest) (*QueryDerivativeMarketsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DerivativeMarkets not implemented") +} +func (*UnimplementedQueryServer) DerivativeMarket(ctx context.Context, req *QueryDerivativeMarketRequest) (*QueryDerivativeMarketResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DerivativeMarket not implemented") +} +func (*UnimplementedQueryServer) DerivativeMarketAddress(ctx context.Context, req *QueryDerivativeMarketAddressRequest) (*QueryDerivativeMarketAddressResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DerivativeMarketAddress not implemented") +} +func (*UnimplementedQueryServer) SubaccountTradeNonce(ctx context.Context, req *QuerySubaccountTradeNonceRequest) (*QuerySubaccountTradeNonceResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SubaccountTradeNonce not implemented") +} +func (*UnimplementedQueryServer) ExchangeModuleState(ctx context.Context, req *QueryModuleStateRequest) (*QueryModuleStateResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ExchangeModuleState not implemented") +} +func (*UnimplementedQueryServer) Positions(ctx context.Context, req *QueryPositionsRequest) (*QueryPositionsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Positions not implemented") +} +func (*UnimplementedQueryServer) SubaccountPositions(ctx context.Context, req *QuerySubaccountPositionsRequest) (*QuerySubaccountPositionsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SubaccountPositions not implemented") +} +func (*UnimplementedQueryServer) SubaccountPositionInMarket(ctx context.Context, req *QuerySubaccountPositionInMarketRequest) (*QuerySubaccountPositionInMarketResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SubaccountPositionInMarket not implemented") +} +func (*UnimplementedQueryServer) SubaccountEffectivePositionInMarket(ctx context.Context, req *QuerySubaccountEffectivePositionInMarketRequest) (*QuerySubaccountEffectivePositionInMarketResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SubaccountEffectivePositionInMarket not implemented") +} +func (*UnimplementedQueryServer) PerpetualMarketInfo(ctx context.Context, req *QueryPerpetualMarketInfoRequest) (*QueryPerpetualMarketInfoResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method PerpetualMarketInfo not implemented") +} +func (*UnimplementedQueryServer) ExpiryFuturesMarketInfo(ctx context.Context, req *QueryExpiryFuturesMarketInfoRequest) (*QueryExpiryFuturesMarketInfoResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ExpiryFuturesMarketInfo not implemented") +} +func (*UnimplementedQueryServer) PerpetualMarketFunding(ctx context.Context, req *QueryPerpetualMarketFundingRequest) (*QueryPerpetualMarketFundingResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method PerpetualMarketFunding not implemented") +} +func (*UnimplementedQueryServer) SubaccountOrderMetadata(ctx context.Context, req *QuerySubaccountOrderMetadataRequest) (*QuerySubaccountOrderMetadataResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SubaccountOrderMetadata not implemented") +} +func (*UnimplementedQueryServer) TradeRewardPoints(ctx context.Context, req *QueryTradeRewardPointsRequest) (*QueryTradeRewardPointsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method TradeRewardPoints not implemented") +} +func (*UnimplementedQueryServer) PendingTradeRewardPoints(ctx context.Context, req *QueryTradeRewardPointsRequest) (*QueryTradeRewardPointsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method PendingTradeRewardPoints not implemented") +} +func (*UnimplementedQueryServer) TradeRewardCampaign(ctx context.Context, req *QueryTradeRewardCampaignRequest) (*QueryTradeRewardCampaignResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method TradeRewardCampaign not implemented") +} +func (*UnimplementedQueryServer) FeeDiscountAccountInfo(ctx context.Context, req *QueryFeeDiscountAccountInfoRequest) (*QueryFeeDiscountAccountInfoResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method FeeDiscountAccountInfo not implemented") +} +func (*UnimplementedQueryServer) FeeDiscountSchedule(ctx context.Context, req *QueryFeeDiscountScheduleRequest) (*QueryFeeDiscountScheduleResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method FeeDiscountSchedule not implemented") +} +func (*UnimplementedQueryServer) BalanceMismatches(ctx context.Context, req *QueryBalanceMismatchesRequest) (*QueryBalanceMismatchesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method BalanceMismatches not implemented") +} +func (*UnimplementedQueryServer) BalanceWithBalanceHolds(ctx context.Context, req *QueryBalanceWithBalanceHoldsRequest) (*QueryBalanceWithBalanceHoldsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method BalanceWithBalanceHolds not implemented") +} +func (*UnimplementedQueryServer) FeeDiscountTierStatistics(ctx context.Context, req *QueryFeeDiscountTierStatisticsRequest) (*QueryFeeDiscountTierStatisticsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method FeeDiscountTierStatistics not implemented") +} +func (*UnimplementedQueryServer) MitoVaultInfos(ctx context.Context, req *MitoVaultInfosRequest) (*MitoVaultInfosResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method MitoVaultInfos not implemented") +} +func (*UnimplementedQueryServer) QueryMarketIDFromVault(ctx context.Context, req *QueryMarketIDFromVaultRequest) (*QueryMarketIDFromVaultResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method QueryMarketIDFromVault not implemented") +} +func (*UnimplementedQueryServer) HistoricalTradeRecords(ctx context.Context, req *QueryHistoricalTradeRecordsRequest) (*QueryHistoricalTradeRecordsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method HistoricalTradeRecords not implemented") +} +func (*UnimplementedQueryServer) IsOptedOutOfRewards(ctx context.Context, req *QueryIsOptedOutOfRewardsRequest) (*QueryIsOptedOutOfRewardsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method IsOptedOutOfRewards not implemented") +} +func (*UnimplementedQueryServer) OptedOutOfRewardsAccounts(ctx context.Context, req *QueryOptedOutOfRewardsAccountsRequest) (*QueryOptedOutOfRewardsAccountsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method OptedOutOfRewardsAccounts not implemented") +} +func (*UnimplementedQueryServer) MarketVolatility(ctx context.Context, req *QueryMarketVolatilityRequest) (*QueryMarketVolatilityResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method MarketVolatility not implemented") +} +func (*UnimplementedQueryServer) BinaryOptionsMarkets(ctx context.Context, req *QueryBinaryMarketsRequest) (*QueryBinaryMarketsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method BinaryOptionsMarkets not implemented") +} +func (*UnimplementedQueryServer) TraderDerivativeConditionalOrders(ctx context.Context, req *QueryTraderDerivativeConditionalOrdersRequest) (*QueryTraderDerivativeConditionalOrdersResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method TraderDerivativeConditionalOrders not implemented") +} +func (*UnimplementedQueryServer) MarketAtomicExecutionFeeMultiplier(ctx context.Context, req *QueryMarketAtomicExecutionFeeMultiplierRequest) (*QueryMarketAtomicExecutionFeeMultiplierResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method MarketAtomicExecutionFeeMultiplier not implemented") +} +func (*UnimplementedQueryServer) ActiveStakeGrant(ctx context.Context, req *QueryActiveStakeGrantRequest) (*QueryActiveStakeGrantResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ActiveStakeGrant not implemented") +} +func (*UnimplementedQueryServer) GrantAuthorization(ctx context.Context, req *QueryGrantAuthorizationRequest) (*QueryGrantAuthorizationResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GrantAuthorization not implemented") +} +func (*UnimplementedQueryServer) GrantAuthorizations(ctx context.Context, req *QueryGrantAuthorizationsRequest) (*QueryGrantAuthorizationsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GrantAuthorizations not implemented") +} +func (*UnimplementedQueryServer) MarketBalance(ctx context.Context, req *QueryMarketBalanceRequest) (*QueryMarketBalanceResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method MarketBalance not implemented") +} +func (*UnimplementedQueryServer) MarketBalances(ctx context.Context, req *QueryMarketBalancesRequest) (*QueryMarketBalancesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method MarketBalances not implemented") +} +func (*UnimplementedQueryServer) DenomMinNotional(ctx context.Context, req *QueryDenomMinNotionalRequest) (*QueryDenomMinNotionalResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DenomMinNotional not implemented") +} +func (*UnimplementedQueryServer) DenomMinNotionals(ctx context.Context, req *QueryDenomMinNotionalsRequest) (*QueryDenomMinNotionalsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DenomMinNotionals not implemented") } -func _Query_PendingTradeRewardPoints_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryTradeRewardPointsRequest) +func RegisterQueryServer(s grpc1.Server, srv QueryServer) { + s.RegisterService(&_Query_serviceDesc, srv) +} + +func _Query_L3DerivativeOrderBook_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryFullDerivativeOrderbookRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).PendingTradeRewardPoints(ctx, in) + return srv.(QueryServer).L3DerivativeOrderBook(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/PendingTradeRewardPoints", + FullMethod: "/injective.exchange.v1beta1.Query/L3DerivativeOrderBook", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).PendingTradeRewardPoints(ctx, req.(*QueryTradeRewardPointsRequest)) + return srv.(QueryServer).L3DerivativeOrderBook(ctx, req.(*QueryFullDerivativeOrderbookRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_TradeRewardCampaign_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryTradeRewardCampaignRequest) +func _Query_L3SpotOrderBook_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryFullSpotOrderbookRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).TradeRewardCampaign(ctx, in) + return srv.(QueryServer).L3SpotOrderBook(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/TradeRewardCampaign", + FullMethod: "/injective.exchange.v1beta1.Query/L3SpotOrderBook", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).TradeRewardCampaign(ctx, req.(*QueryTradeRewardCampaignRequest)) + return srv.(QueryServer).L3SpotOrderBook(ctx, req.(*QueryFullSpotOrderbookRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_FeeDiscountAccountInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryFeeDiscountAccountInfoRequest) +func _Query_QueryExchangeParams_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryExchangeParamsRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).FeeDiscountAccountInfo(ctx, in) + return srv.(QueryServer).QueryExchangeParams(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/FeeDiscountAccountInfo", + FullMethod: "/injective.exchange.v1beta1.Query/QueryExchangeParams", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).FeeDiscountAccountInfo(ctx, req.(*QueryFeeDiscountAccountInfoRequest)) + return srv.(QueryServer).QueryExchangeParams(ctx, req.(*QueryExchangeParamsRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_FeeDiscountSchedule_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryFeeDiscountScheduleRequest) +func _Query_SubaccountDeposits_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QuerySubaccountDepositsRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).FeeDiscountSchedule(ctx, in) + return srv.(QueryServer).SubaccountDeposits(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/FeeDiscountSchedule", + FullMethod: "/injective.exchange.v1beta1.Query/SubaccountDeposits", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).FeeDiscountSchedule(ctx, req.(*QueryFeeDiscountScheduleRequest)) + return srv.(QueryServer).SubaccountDeposits(ctx, req.(*QuerySubaccountDepositsRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_BalanceMismatches_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryBalanceMismatchesRequest) +func _Query_SubaccountDeposit_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QuerySubaccountDepositRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).BalanceMismatches(ctx, in) + return srv.(QueryServer).SubaccountDeposit(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/BalanceMismatches", + FullMethod: "/injective.exchange.v1beta1.Query/SubaccountDeposit", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).BalanceMismatches(ctx, req.(*QueryBalanceMismatchesRequest)) + return srv.(QueryServer).SubaccountDeposit(ctx, req.(*QuerySubaccountDepositRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_BalanceWithBalanceHolds_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryBalanceWithBalanceHoldsRequest) +func _Query_ExchangeBalances_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryExchangeBalancesRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).BalanceWithBalanceHolds(ctx, in) + return srv.(QueryServer).ExchangeBalances(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/BalanceWithBalanceHolds", + FullMethod: "/injective.exchange.v1beta1.Query/ExchangeBalances", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).BalanceWithBalanceHolds(ctx, req.(*QueryBalanceWithBalanceHoldsRequest)) + return srv.(QueryServer).ExchangeBalances(ctx, req.(*QueryExchangeBalancesRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_FeeDiscountTierStatistics_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryFeeDiscountTierStatisticsRequest) +func _Query_AggregateVolume_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryAggregateVolumeRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).FeeDiscountTierStatistics(ctx, in) + return srv.(QueryServer).AggregateVolume(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/FeeDiscountTierStatistics", + FullMethod: "/injective.exchange.v1beta1.Query/AggregateVolume", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).FeeDiscountTierStatistics(ctx, req.(*QueryFeeDiscountTierStatisticsRequest)) + return srv.(QueryServer).AggregateVolume(ctx, req.(*QueryAggregateVolumeRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_MitoVaultInfos_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MitoVaultInfosRequest) +func _Query_AggregateVolumes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryAggregateVolumesRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).MitoVaultInfos(ctx, in) + return srv.(QueryServer).AggregateVolumes(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/MitoVaultInfos", + FullMethod: "/injective.exchange.v1beta1.Query/AggregateVolumes", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).MitoVaultInfos(ctx, req.(*MitoVaultInfosRequest)) + return srv.(QueryServer).AggregateVolumes(ctx, req.(*QueryAggregateVolumesRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_QueryMarketIDFromVault_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryMarketIDFromVaultRequest) +func _Query_AggregateMarketVolume_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryAggregateMarketVolumeRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).QueryMarketIDFromVault(ctx, in) + return srv.(QueryServer).AggregateMarketVolume(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/QueryMarketIDFromVault", + FullMethod: "/injective.exchange.v1beta1.Query/AggregateMarketVolume", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).QueryMarketIDFromVault(ctx, req.(*QueryMarketIDFromVaultRequest)) + return srv.(QueryServer).AggregateMarketVolume(ctx, req.(*QueryAggregateMarketVolumeRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_HistoricalTradeRecords_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryHistoricalTradeRecordsRequest) +func _Query_AggregateMarketVolumes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryAggregateMarketVolumesRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).HistoricalTradeRecords(ctx, in) + return srv.(QueryServer).AggregateMarketVolumes(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/HistoricalTradeRecords", + FullMethod: "/injective.exchange.v1beta1.Query/AggregateMarketVolumes", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).HistoricalTradeRecords(ctx, req.(*QueryHistoricalTradeRecordsRequest)) + return srv.(QueryServer).AggregateMarketVolumes(ctx, req.(*QueryAggregateMarketVolumesRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_IsOptedOutOfRewards_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryIsOptedOutOfRewardsRequest) +func _Query_DenomDecimal_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryDenomDecimalRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).IsOptedOutOfRewards(ctx, in) + return srv.(QueryServer).DenomDecimal(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/IsOptedOutOfRewards", + FullMethod: "/injective.exchange.v1beta1.Query/DenomDecimal", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).IsOptedOutOfRewards(ctx, req.(*QueryIsOptedOutOfRewardsRequest)) + return srv.(QueryServer).DenomDecimal(ctx, req.(*QueryDenomDecimalRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_OptedOutOfRewardsAccounts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryOptedOutOfRewardsAccountsRequest) +func _Query_DenomDecimals_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryDenomDecimalsRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).OptedOutOfRewardsAccounts(ctx, in) + return srv.(QueryServer).DenomDecimals(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/OptedOutOfRewardsAccounts", + FullMethod: "/injective.exchange.v1beta1.Query/DenomDecimals", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).OptedOutOfRewardsAccounts(ctx, req.(*QueryOptedOutOfRewardsAccountsRequest)) + return srv.(QueryServer).DenomDecimals(ctx, req.(*QueryDenomDecimalsRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_MarketVolatility_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryMarketVolatilityRequest) +func _Query_SpotMarkets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QuerySpotMarketsRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).MarketVolatility(ctx, in) + return srv.(QueryServer).SpotMarkets(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/MarketVolatility", + FullMethod: "/injective.exchange.v1beta1.Query/SpotMarkets", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).MarketVolatility(ctx, req.(*QueryMarketVolatilityRequest)) + return srv.(QueryServer).SpotMarkets(ctx, req.(*QuerySpotMarketsRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_BinaryOptionsMarkets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryBinaryMarketsRequest) +func _Query_SpotMarket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QuerySpotMarketRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).BinaryOptionsMarkets(ctx, in) + return srv.(QueryServer).SpotMarket(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/BinaryOptionsMarkets", + FullMethod: "/injective.exchange.v1beta1.Query/SpotMarket", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).BinaryOptionsMarkets(ctx, req.(*QueryBinaryMarketsRequest)) + return srv.(QueryServer).SpotMarket(ctx, req.(*QuerySpotMarketRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_TraderDerivativeConditionalOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryTraderDerivativeConditionalOrdersRequest) +func _Query_FullSpotMarkets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryFullSpotMarketsRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).TraderDerivativeConditionalOrders(ctx, in) + return srv.(QueryServer).FullSpotMarkets(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/TraderDerivativeConditionalOrders", + FullMethod: "/injective.exchange.v1beta1.Query/FullSpotMarkets", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).TraderDerivativeConditionalOrders(ctx, req.(*QueryTraderDerivativeConditionalOrdersRequest)) + return srv.(QueryServer).FullSpotMarkets(ctx, req.(*QueryFullSpotMarketsRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_MarketAtomicExecutionFeeMultiplier_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryMarketAtomicExecutionFeeMultiplierRequest) +func _Query_FullSpotMarket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryFullSpotMarketRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).MarketAtomicExecutionFeeMultiplier(ctx, in) + return srv.(QueryServer).FullSpotMarket(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/MarketAtomicExecutionFeeMultiplier", + FullMethod: "/injective.exchange.v1beta1.Query/FullSpotMarket", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).MarketAtomicExecutionFeeMultiplier(ctx, req.(*QueryMarketAtomicExecutionFeeMultiplierRequest)) + return srv.(QueryServer).FullSpotMarket(ctx, req.(*QueryFullSpotMarketRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_ActiveStakeGrant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryActiveStakeGrantRequest) +func _Query_SpotOrderbook_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QuerySpotOrderbookRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).ActiveStakeGrant(ctx, in) + return srv.(QueryServer).SpotOrderbook(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/ActiveStakeGrant", + FullMethod: "/injective.exchange.v1beta1.Query/SpotOrderbook", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).ActiveStakeGrant(ctx, req.(*QueryActiveStakeGrantRequest)) + return srv.(QueryServer).SpotOrderbook(ctx, req.(*QuerySpotOrderbookRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_GrantAuthorization_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryGrantAuthorizationRequest) +func _Query_TraderSpotOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryTraderSpotOrdersRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).GrantAuthorization(ctx, in) + return srv.(QueryServer).TraderSpotOrders(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/GrantAuthorization", + FullMethod: "/injective.exchange.v1beta1.Query/TraderSpotOrders", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).GrantAuthorization(ctx, req.(*QueryGrantAuthorizationRequest)) + return srv.(QueryServer).TraderSpotOrders(ctx, req.(*QueryTraderSpotOrdersRequest)) } return interceptor(ctx, in, info, handler) } -func _Query_GrantAuthorizations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryGrantAuthorizationsRequest) +func _Query_AccountAddressSpotOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryAccountAddressSpotOrdersRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).GrantAuthorizations(ctx, in) + return srv.(QueryServer).AccountAddressSpotOrders(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.exchange.v1beta1.Query/GrantAuthorizations", + FullMethod: "/injective.exchange.v1beta1.Query/AccountAddressSpotOrders", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).GrantAuthorizations(ctx, req.(*QueryGrantAuthorizationsRequest)) + return srv.(QueryServer).AccountAddressSpotOrders(ctx, req.(*QueryAccountAddressSpotOrdersRequest)) } return interceptor(ctx, in, info, handler) } -var _Query_serviceDesc = grpc.ServiceDesc{ - ServiceName: "injective.exchange.v1beta1.Query", - HandlerType: (*QueryServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "QueryExchangeParams", - Handler: _Query_QueryExchangeParams_Handler, - }, - { - MethodName: "SubaccountDeposits", - Handler: _Query_SubaccountDeposits_Handler, - }, - { - MethodName: "SubaccountDeposit", - Handler: _Query_SubaccountDeposit_Handler, - }, - { - MethodName: "ExchangeBalances", - Handler: _Query_ExchangeBalances_Handler, - }, - { - MethodName: "AggregateVolume", - Handler: _Query_AggregateVolume_Handler, - }, - { - MethodName: "AggregateVolumes", - Handler: _Query_AggregateVolumes_Handler, - }, - { - MethodName: "AggregateMarketVolume", - Handler: _Query_AggregateMarketVolume_Handler, - }, - { - MethodName: "AggregateMarketVolumes", - Handler: _Query_AggregateMarketVolumes_Handler, - }, - { - MethodName: "DenomDecimal", - Handler: _Query_DenomDecimal_Handler, - }, - { - MethodName: "DenomDecimals", - Handler: _Query_DenomDecimals_Handler, - }, - { - MethodName: "SpotMarkets", - Handler: _Query_SpotMarkets_Handler, - }, - { - MethodName: "SpotMarket", - Handler: _Query_SpotMarket_Handler, - }, - { - MethodName: "FullSpotMarkets", - Handler: _Query_FullSpotMarkets_Handler, - }, - { - MethodName: "FullSpotMarket", - Handler: _Query_FullSpotMarket_Handler, - }, - { - MethodName: "SpotOrderbook", - Handler: _Query_SpotOrderbook_Handler, - }, - { - MethodName: "TraderSpotOrders", - Handler: _Query_TraderSpotOrders_Handler, - }, - { - MethodName: "AccountAddressSpotOrders", - Handler: _Query_AccountAddressSpotOrders_Handler, - }, - { - MethodName: "SpotOrdersByHashes", - Handler: _Query_SpotOrdersByHashes_Handler, - }, - { - MethodName: "SubaccountOrders", - Handler: _Query_SubaccountOrders_Handler, - }, - { - MethodName: "TraderSpotTransientOrders", - Handler: _Query_TraderSpotTransientOrders_Handler, - }, - { - MethodName: "SpotMidPriceAndTOB", - Handler: _Query_SpotMidPriceAndTOB_Handler, - }, - { - MethodName: "DerivativeMidPriceAndTOB", - Handler: _Query_DerivativeMidPriceAndTOB_Handler, - }, - { - MethodName: "DerivativeOrderbook", - Handler: _Query_DerivativeOrderbook_Handler, - }, - { - MethodName: "TraderDerivativeOrders", - Handler: _Query_TraderDerivativeOrders_Handler, - }, - { - MethodName: "AccountAddressDerivativeOrders", - Handler: _Query_AccountAddressDerivativeOrders_Handler, - }, - { - MethodName: "DerivativeOrdersByHashes", - Handler: _Query_DerivativeOrdersByHashes_Handler, - }, - { - MethodName: "TraderDerivativeTransientOrders", - Handler: _Query_TraderDerivativeTransientOrders_Handler, - }, - { - MethodName: "DerivativeMarkets", - Handler: _Query_DerivativeMarkets_Handler, - }, - { - MethodName: "DerivativeMarket", - Handler: _Query_DerivativeMarket_Handler, - }, - { - MethodName: "DerivativeMarketAddress", - Handler: _Query_DerivativeMarketAddress_Handler, - }, - { - MethodName: "SubaccountTradeNonce", - Handler: _Query_SubaccountTradeNonce_Handler, - }, - { - MethodName: "ExchangeModuleState", - Handler: _Query_ExchangeModuleState_Handler, - }, - { - MethodName: "Positions", - Handler: _Query_Positions_Handler, - }, - { - MethodName: "SubaccountPositions", - Handler: _Query_SubaccountPositions_Handler, - }, - { - MethodName: "SubaccountPositionInMarket", - Handler: _Query_SubaccountPositionInMarket_Handler, - }, - { - MethodName: "SubaccountEffectivePositionInMarket", - Handler: _Query_SubaccountEffectivePositionInMarket_Handler, - }, - { - MethodName: "PerpetualMarketInfo", - Handler: _Query_PerpetualMarketInfo_Handler, - }, - { - MethodName: "ExpiryFuturesMarketInfo", - Handler: _Query_ExpiryFuturesMarketInfo_Handler, - }, - { - MethodName: "PerpetualMarketFunding", - Handler: _Query_PerpetualMarketFunding_Handler, - }, - { - MethodName: "SubaccountOrderMetadata", - Handler: _Query_SubaccountOrderMetadata_Handler, - }, - { - MethodName: "TradeRewardPoints", - Handler: _Query_TradeRewardPoints_Handler, - }, - { - MethodName: "PendingTradeRewardPoints", - Handler: _Query_PendingTradeRewardPoints_Handler, - }, - { - MethodName: "TradeRewardCampaign", - Handler: _Query_TradeRewardCampaign_Handler, - }, - { - MethodName: "FeeDiscountAccountInfo", - Handler: _Query_FeeDiscountAccountInfo_Handler, - }, - { - MethodName: "FeeDiscountSchedule", - Handler: _Query_FeeDiscountSchedule_Handler, - }, - { - MethodName: "BalanceMismatches", - Handler: _Query_BalanceMismatches_Handler, - }, - { - MethodName: "BalanceWithBalanceHolds", - Handler: _Query_BalanceWithBalanceHolds_Handler, - }, - { - MethodName: "FeeDiscountTierStatistics", - Handler: _Query_FeeDiscountTierStatistics_Handler, - }, - { - MethodName: "MitoVaultInfos", - Handler: _Query_MitoVaultInfos_Handler, - }, - { - MethodName: "QueryMarketIDFromVault", - Handler: _Query_QueryMarketIDFromVault_Handler, - }, - { - MethodName: "HistoricalTradeRecords", - Handler: _Query_HistoricalTradeRecords_Handler, - }, - { - MethodName: "IsOptedOutOfRewards", - Handler: _Query_IsOptedOutOfRewards_Handler, - }, - { - MethodName: "OptedOutOfRewardsAccounts", - Handler: _Query_OptedOutOfRewardsAccounts_Handler, - }, - { - MethodName: "MarketVolatility", - Handler: _Query_MarketVolatility_Handler, - }, - { - MethodName: "BinaryOptionsMarkets", - Handler: _Query_BinaryOptionsMarkets_Handler, - }, - { - MethodName: "TraderDerivativeConditionalOrders", - Handler: _Query_TraderDerivativeConditionalOrders_Handler, - }, - { - MethodName: "MarketAtomicExecutionFeeMultiplier", - Handler: _Query_MarketAtomicExecutionFeeMultiplier_Handler, - }, - { - MethodName: "ActiveStakeGrant", - Handler: _Query_ActiveStakeGrant_Handler, - }, - { - MethodName: "GrantAuthorization", - Handler: _Query_GrantAuthorization_Handler, - }, - { - MethodName: "GrantAuthorizations", - Handler: _Query_GrantAuthorizations_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "injective/exchange/v1beta1/query.proto", -} - -func (m *Subaccount) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_SpotOrdersByHashes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QuerySpotOrdersByHashesRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *Subaccount) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *Subaccount) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.SubaccountNonce != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.SubaccountNonce)) - i-- - dAtA[i] = 0x10 + if interceptor == nil { + return srv.(QueryServer).SpotOrdersByHashes(ctx, in) } - if len(m.Trader) > 0 { - i -= len(m.Trader) - copy(dAtA[i:], m.Trader) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Trader))) - i-- - dAtA[i] = 0xa + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/SpotOrdersByHashes", } - return len(dAtA) - i, nil + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).SpotOrdersByHashes(ctx, req.(*QuerySpotOrdersByHashesRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySubaccountOrdersRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_SubaccountOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QuerySubaccountOrdersRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil + if interceptor == nil { + return srv.(QueryServer).SubaccountOrders(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/SubaccountOrders", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).SubaccountOrders(ctx, req.(*QuerySubaccountOrdersRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySubaccountOrdersRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func _Query_TraderSpotTransientOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryTraderSpotOrdersRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).TraderSpotTransientOrders(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/TraderSpotTransientOrders", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).TraderSpotTransientOrders(ctx, req.(*QueryTraderSpotOrdersRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySubaccountOrdersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) - i-- - dAtA[i] = 0x12 +func _Query_SpotMidPriceAndTOB_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QuerySpotMidPriceAndTOBRequest) + if err := dec(in); err != nil { + return nil, err } - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) - i-- - dAtA[i] = 0xa + if interceptor == nil { + return srv.(QueryServer).SpotMidPriceAndTOB(ctx, in) } - return len(dAtA) - i, nil + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/SpotMidPriceAndTOB", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).SpotMidPriceAndTOB(ctx, req.(*QuerySpotMidPriceAndTOBRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySubaccountOrdersResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_DerivativeMidPriceAndTOB_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryDerivativeMidPriceAndTOBRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil + if interceptor == nil { + return srv.(QueryServer).DerivativeMidPriceAndTOB(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/DerivativeMidPriceAndTOB", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).DerivativeMidPriceAndTOB(ctx, req.(*QueryDerivativeMidPriceAndTOBRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySubaccountOrdersResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func _Query_DerivativeOrderbook_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryDerivativeOrderbookRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).DerivativeOrderbook(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/DerivativeOrderbook", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).DerivativeOrderbook(ctx, req.(*QueryDerivativeOrderbookRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySubaccountOrdersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.SellOrders) > 0 { - for iNdEx := len(m.SellOrders) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.SellOrders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } +func _Query_TraderDerivativeOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryTraderDerivativeOrdersRequest) + if err := dec(in); err != nil { + return nil, err } - if len(m.BuyOrders) > 0 { - for iNdEx := len(m.BuyOrders) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.BuyOrders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if interceptor == nil { + return srv.(QueryServer).TraderDerivativeOrders(ctx, in) } - return len(dAtA) - i, nil + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/TraderDerivativeOrders", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).TraderDerivativeOrders(ctx, req.(*QueryTraderDerivativeOrdersRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *SubaccountOrderbookMetadataWithMarket) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_AccountAddressDerivativeOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryAccountAddressDerivativeOrdersRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *SubaccountOrderbookMetadataWithMarket) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *SubaccountOrderbookMetadataWithMarket) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.IsBuy { - i-- - if m.IsBuy { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x18 + if interceptor == nil { + return srv.(QueryServer).AccountAddressDerivativeOrders(ctx, in) } - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) - i-- - dAtA[i] = 0x12 + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/AccountAddressDerivativeOrders", } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).AccountAddressDerivativeOrders(ctx, req.(*QueryAccountAddressDerivativeOrdersRequest)) } - return len(dAtA) - i, nil + return interceptor(ctx, in, info, handler) } -func (m *QueryExchangeParamsRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_DerivativeOrdersByHashes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryDerivativeOrdersByHashesRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QueryExchangeParamsRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryExchangeParamsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil + if interceptor == nil { + return srv.(QueryServer).DerivativeOrdersByHashes(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/DerivativeOrdersByHashes", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).DerivativeOrdersByHashes(ctx, req.(*QueryDerivativeOrdersByHashesRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryExchangeParamsResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_TraderDerivativeTransientOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryTraderDerivativeOrdersRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QueryExchangeParamsResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryExchangeParamsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - { - size, err := m.Params.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + if interceptor == nil { + return srv.(QueryServer).TraderDerivativeTransientOrders(ctx, in) } - i-- - dAtA[i] = 0xa - return len(dAtA) - i, nil + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/TraderDerivativeTransientOrders", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).TraderDerivativeTransientOrders(ctx, req.(*QueryTraderDerivativeOrdersRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySubaccountDepositsRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_DerivativeMarkets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryDerivativeMarketsRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QuerySubaccountDepositsRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if interceptor == nil { + return srv.(QueryServer).DerivativeMarkets(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/DerivativeMarkets", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).DerivativeMarkets(ctx, req.(*QueryDerivativeMarketsRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySubaccountDepositsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Subaccount != nil { - { - size, err := m.Subaccount.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func _Query_DerivativeMarket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryDerivativeMarketRequest) + if err := dec(in); err != nil { + return nil, err } - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) - i-- - dAtA[i] = 0xa + if interceptor == nil { + return srv.(QueryServer).DerivativeMarket(ctx, in) } - return len(dAtA) - i, nil + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/DerivativeMarket", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).DerivativeMarket(ctx, req.(*QueryDerivativeMarketRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySubaccountDepositsResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_DerivativeMarketAddress_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryDerivativeMarketAddressRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil + if interceptor == nil { + return srv.(QueryServer).DerivativeMarketAddress(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/DerivativeMarketAddress", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).DerivativeMarketAddress(ctx, req.(*QueryDerivativeMarketAddressRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySubaccountDepositsResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QuerySubaccountDepositsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Deposits) > 0 { - for k := range m.Deposits { - v := m.Deposits[k] - baseI := i - if v != nil { - { - size, err := v.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - i -= len(k) - copy(dAtA[i:], k) - i = encodeVarintQuery(dAtA, i, uint64(len(k))) - i-- - dAtA[i] = 0xa - i = encodeVarintQuery(dAtA, i, uint64(baseI-i)) - i-- - dAtA[i] = 0xa - } +func _Query_SubaccountTradeNonce_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QuerySubaccountTradeNonceRequest) + if err := dec(in); err != nil { + return nil, err } - return len(dAtA) - i, nil + if interceptor == nil { + return srv.(QueryServer).SubaccountTradeNonce(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/SubaccountTradeNonce", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).SubaccountTradeNonce(ctx, req.(*QuerySubaccountTradeNonceRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryExchangeBalancesRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_ExchangeModuleState_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryModuleStateRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QueryExchangeBalancesRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if interceptor == nil { + return srv.(QueryServer).ExchangeModuleState(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/ExchangeModuleState", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).ExchangeModuleState(ctx, req.(*QueryModuleStateRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryExchangeBalancesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil +func _Query_Positions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryPositionsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).Positions(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/Positions", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).Positions(ctx, req.(*QueryPositionsRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryExchangeBalancesResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_SubaccountPositions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QuerySubaccountPositionsRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil + if interceptor == nil { + return srv.(QueryServer).SubaccountPositions(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/SubaccountPositions", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).SubaccountPositions(ctx, req.(*QuerySubaccountPositionsRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryExchangeBalancesResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func _Query_SubaccountPositionInMarket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QuerySubaccountPositionInMarketRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).SubaccountPositionInMarket(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/SubaccountPositionInMarket", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).SubaccountPositionInMarket(ctx, req.(*QuerySubaccountPositionInMarketRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryExchangeBalancesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Balances) > 0 { - for iNdEx := len(m.Balances) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Balances[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } +func _Query_SubaccountEffectivePositionInMarket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QuerySubaccountEffectivePositionInMarketRequest) + if err := dec(in); err != nil { + return nil, err } - return len(dAtA) - i, nil + if interceptor == nil { + return srv.(QueryServer).SubaccountEffectivePositionInMarket(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/SubaccountEffectivePositionInMarket", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).SubaccountEffectivePositionInMarket(ctx, req.(*QuerySubaccountEffectivePositionInMarketRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateVolumeRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_PerpetualMarketInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryPerpetualMarketInfoRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil + if interceptor == nil { + return srv.(QueryServer).PerpetualMarketInfo(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/PerpetualMarketInfo", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).PerpetualMarketInfo(ctx, req.(*QueryPerpetualMarketInfoRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateVolumeRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func _Query_ExpiryFuturesMarketInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryExpiryFuturesMarketInfoRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).ExpiryFuturesMarketInfo(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/ExpiryFuturesMarketInfo", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).ExpiryFuturesMarketInfo(ctx, req.(*QueryExpiryFuturesMarketInfoRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateVolumeRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Account) > 0 { - i -= len(m.Account) - copy(dAtA[i:], m.Account) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Account))) - i-- - dAtA[i] = 0xa +func _Query_PerpetualMarketFunding_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryPerpetualMarketFundingRequest) + if err := dec(in); err != nil { + return nil, err } - return len(dAtA) - i, nil + if interceptor == nil { + return srv.(QueryServer).PerpetualMarketFunding(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/PerpetualMarketFunding", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).PerpetualMarketFunding(ctx, req.(*QueryPerpetualMarketFundingRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateVolumeResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_SubaccountOrderMetadata_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QuerySubaccountOrderMetadataRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil + if interceptor == nil { + return srv.(QueryServer).SubaccountOrderMetadata(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/SubaccountOrderMetadata", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).SubaccountOrderMetadata(ctx, req.(*QuerySubaccountOrderMetadataRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateVolumeResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryAggregateVolumeResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.AggregateVolumes) > 0 { - for iNdEx := len(m.AggregateVolumes) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.AggregateVolumes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } +func _Query_TradeRewardPoints_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryTradeRewardPointsRequest) + if err := dec(in); err != nil { + return nil, err } - return len(dAtA) - i, nil + if interceptor == nil { + return srv.(QueryServer).TradeRewardPoints(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/TradeRewardPoints", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).TradeRewardPoints(ctx, req.(*QueryTradeRewardPointsRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateVolumesRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_PendingTradeRewardPoints_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryTradeRewardPointsRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QueryAggregateVolumesRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryAggregateVolumesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.MarketIds) > 0 { - for iNdEx := len(m.MarketIds) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.MarketIds[iNdEx]) - copy(dAtA[i:], m.MarketIds[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketIds[iNdEx]))) - i-- - dAtA[i] = 0x12 - } + if interceptor == nil { + return srv.(QueryServer).PendingTradeRewardPoints(ctx, in) } - if len(m.Accounts) > 0 { - for iNdEx := len(m.Accounts) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Accounts[iNdEx]) - copy(dAtA[i:], m.Accounts[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Accounts[iNdEx]))) - i-- - dAtA[i] = 0xa - } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/PendingTradeRewardPoints", } - return len(dAtA) - i, nil + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).PendingTradeRewardPoints(ctx, req.(*QueryTradeRewardPointsRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateVolumesResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_TradeRewardCampaign_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryTradeRewardCampaignRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QueryAggregateVolumesResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryAggregateVolumesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.AggregateMarketVolumes) > 0 { - for iNdEx := len(m.AggregateMarketVolumes) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.AggregateMarketVolumes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } + if interceptor == nil { + return srv.(QueryServer).TradeRewardCampaign(ctx, in) } - if len(m.AggregateAccountVolumes) > 0 { - for iNdEx := len(m.AggregateAccountVolumes) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.AggregateAccountVolumes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/TradeRewardCampaign", } - return len(dAtA) - i, nil + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).TradeRewardCampaign(ctx, req.(*QueryTradeRewardCampaignRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateMarketVolumeRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_FeeDiscountAccountInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryFeeDiscountAccountInfoRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QueryAggregateMarketVolumeRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryAggregateMarketVolumeRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) - i-- - dAtA[i] = 0xa + if interceptor == nil { + return srv.(QueryServer).FeeDiscountAccountInfo(ctx, in) } - return len(dAtA) - i, nil + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/FeeDiscountAccountInfo", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).FeeDiscountAccountInfo(ctx, req.(*QueryFeeDiscountAccountInfoRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateMarketVolumeResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_FeeDiscountSchedule_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryFeeDiscountScheduleRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QueryAggregateMarketVolumeResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if interceptor == nil { + return srv.(QueryServer).FeeDiscountSchedule(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/FeeDiscountSchedule", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).FeeDiscountSchedule(ctx, req.(*QueryFeeDiscountScheduleRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateMarketVolumeResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - { - size, err := m.Volume.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) +func _Query_BalanceMismatches_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryBalanceMismatchesRequest) + if err := dec(in); err != nil { + return nil, err } - i-- - dAtA[i] = 0xa - return len(dAtA) - i, nil + if interceptor == nil { + return srv.(QueryServer).BalanceMismatches(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/BalanceMismatches", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).BalanceMismatches(ctx, req.(*QueryBalanceMismatchesRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryDenomDecimalRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_BalanceWithBalanceHolds_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryBalanceWithBalanceHoldsRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil + if interceptor == nil { + return srv.(QueryServer).BalanceWithBalanceHolds(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/BalanceWithBalanceHolds", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).BalanceWithBalanceHolds(ctx, req.(*QueryBalanceWithBalanceHoldsRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryDenomDecimalRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryDenomDecimalRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Denom) > 0 { - i -= len(m.Denom) - copy(dAtA[i:], m.Denom) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) - i-- - dAtA[i] = 0xa +func _Query_FeeDiscountTierStatistics_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryFeeDiscountTierStatisticsRequest) + if err := dec(in); err != nil { + return nil, err } - return len(dAtA) - i, nil + if interceptor == nil { + return srv.(QueryServer).FeeDiscountTierStatistics(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/FeeDiscountTierStatistics", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).FeeDiscountTierStatistics(ctx, req.(*QueryFeeDiscountTierStatisticsRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryDenomDecimalResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_MitoVaultInfos_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MitoVaultInfosRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QueryDenomDecimalResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryDenomDecimalResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Decimal != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.Decimal)) - i-- - dAtA[i] = 0x8 + if interceptor == nil { + return srv.(QueryServer).MitoVaultInfos(ctx, in) } - return len(dAtA) - i, nil + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/MitoVaultInfos", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).MitoVaultInfos(ctx, req.(*MitoVaultInfosRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryDenomDecimalsRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_QueryMarketIDFromVault_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryMarketIDFromVaultRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QueryDenomDecimalsRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryDenomDecimalsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Denoms) > 0 { - for iNdEx := len(m.Denoms) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Denoms[iNdEx]) - copy(dAtA[i:], m.Denoms[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Denoms[iNdEx]))) - i-- - dAtA[i] = 0xa - } + if interceptor == nil { + return srv.(QueryServer).QueryMarketIDFromVault(ctx, in) } - return len(dAtA) - i, nil + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/QueryMarketIDFromVault", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).QueryMarketIDFromVault(ctx, req.(*QueryMarketIDFromVaultRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryDenomDecimalsResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_HistoricalTradeRecords_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryHistoricalTradeRecordsRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QueryDenomDecimalsResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if interceptor == nil { + return srv.(QueryServer).HistoricalTradeRecords(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/HistoricalTradeRecords", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).HistoricalTradeRecords(ctx, req.(*QueryHistoricalTradeRecordsRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryDenomDecimalsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.DenomDecimals) > 0 { - for iNdEx := len(m.DenomDecimals) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DenomDecimals[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } +func _Query_IsOptedOutOfRewards_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryIsOptedOutOfRewardsRequest) + if err := dec(in); err != nil { + return nil, err } - return len(dAtA) - i, nil + if interceptor == nil { + return srv.(QueryServer).IsOptedOutOfRewards(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/IsOptedOutOfRewards", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).IsOptedOutOfRewards(ctx, req.(*QueryIsOptedOutOfRewardsRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateMarketVolumesRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_OptedOutOfRewardsAccounts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryOptedOutOfRewardsAccountsRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil + if interceptor == nil { + return srv.(QueryServer).OptedOutOfRewardsAccounts(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/OptedOutOfRewardsAccounts", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).OptedOutOfRewardsAccounts(ctx, req.(*QueryOptedOutOfRewardsAccountsRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateMarketVolumesRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func _Query_MarketVolatility_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryMarketVolatilityRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).MarketVolatility(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/MarketVolatility", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).MarketVolatility(ctx, req.(*QueryMarketVolatilityRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateMarketVolumesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.MarketIds) > 0 { - for iNdEx := len(m.MarketIds) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.MarketIds[iNdEx]) - copy(dAtA[i:], m.MarketIds[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketIds[iNdEx]))) - i-- - dAtA[i] = 0xa - } +func _Query_BinaryOptionsMarkets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryBinaryMarketsRequest) + if err := dec(in); err != nil { + return nil, err } - return len(dAtA) - i, nil + if interceptor == nil { + return srv.(QueryServer).BinaryOptionsMarkets(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/BinaryOptionsMarkets", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).BinaryOptionsMarkets(ctx, req.(*QueryBinaryMarketsRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateMarketVolumesResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_TraderDerivativeConditionalOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryTraderDerivativeConditionalOrdersRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil + if interceptor == nil { + return srv.(QueryServer).TraderDerivativeConditionalOrders(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/TraderDerivativeConditionalOrders", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).TraderDerivativeConditionalOrders(ctx, req.(*QueryTraderDerivativeConditionalOrdersRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAggregateMarketVolumesResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryAggregateMarketVolumesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Volumes) > 0 { - for iNdEx := len(m.Volumes) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Volumes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } +func _Query_MarketAtomicExecutionFeeMultiplier_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryMarketAtomicExecutionFeeMultiplierRequest) + if err := dec(in); err != nil { + return nil, err } - return len(dAtA) - i, nil + if interceptor == nil { + return srv.(QueryServer).MarketAtomicExecutionFeeMultiplier(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/MarketAtomicExecutionFeeMultiplier", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).MarketAtomicExecutionFeeMultiplier(ctx, req.(*QueryMarketAtomicExecutionFeeMultiplierRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySubaccountDepositRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_ActiveStakeGrant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryActiveStakeGrantRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QuerySubaccountDepositRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QuerySubaccountDepositRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Denom) > 0 { - i -= len(m.Denom) - copy(dAtA[i:], m.Denom) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) - i-- - dAtA[i] = 0x12 + if interceptor == nil { + return srv.(QueryServer).ActiveStakeGrant(ctx, in) } - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) - i-- - dAtA[i] = 0xa + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/ActiveStakeGrant", } - return len(dAtA) - i, nil + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).ActiveStakeGrant(ctx, req.(*QueryActiveStakeGrantRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySubaccountDepositResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_GrantAuthorization_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryGrantAuthorizationRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QuerySubaccountDepositResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QuerySubaccountDepositResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Deposits != nil { - { - size, err := m.Deposits.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if interceptor == nil { + return srv.(QueryServer).GrantAuthorization(ctx, in) } - return len(dAtA) - i, nil + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/GrantAuthorization", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).GrantAuthorization(ctx, req.(*QueryGrantAuthorizationRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySpotMarketsRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_GrantAuthorizations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryGrantAuthorizationsRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QuerySpotMarketsRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QuerySpotMarketsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.MarketIds) > 0 { - for iNdEx := len(m.MarketIds) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.MarketIds[iNdEx]) - copy(dAtA[i:], m.MarketIds[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketIds[iNdEx]))) - i-- - dAtA[i] = 0x12 - } + if interceptor == nil { + return srv.(QueryServer).GrantAuthorizations(ctx, in) } - if len(m.Status) > 0 { - i -= len(m.Status) - copy(dAtA[i:], m.Status) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Status))) - i-- - dAtA[i] = 0xa + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/GrantAuthorizations", } - return len(dAtA) - i, nil + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).GrantAuthorizations(ctx, req.(*QueryGrantAuthorizationsRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySpotMarketsResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_MarketBalance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryMarketBalanceRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *QuerySpotMarketsResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if interceptor == nil { + return srv.(QueryServer).MarketBalance(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/MarketBalance", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).MarketBalance(ctx, req.(*QueryMarketBalanceRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySpotMarketsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Markets) > 0 { - for iNdEx := len(m.Markets) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Markets[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } +func _Query_MarketBalances_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryMarketBalancesRequest) + if err := dec(in); err != nil { + return nil, err } - return len(dAtA) - i, nil + if interceptor == nil { + return srv.(QueryServer).MarketBalances(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/MarketBalances", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).MarketBalances(ctx, req.(*QueryMarketBalancesRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySpotMarketRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _Query_DenomMinNotional_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryDenomMinNotionalRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil + if interceptor == nil { + return srv.(QueryServer).DenomMinNotional(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/DenomMinNotional", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).DenomMinNotional(ctx, req.(*QueryDenomMinNotionalRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySpotMarketRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func _Query_DenomMinNotionals_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryDenomMinNotionalsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).DenomMinNotionals(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Query/DenomMinNotionals", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).DenomMinNotionals(ctx, req.(*QueryDenomMinNotionalsRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QuerySpotMarketRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) +var _Query_serviceDesc = grpc.ServiceDesc{ + ServiceName: "injective.exchange.v1beta1.Query", + HandlerType: (*QueryServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "L3DerivativeOrderBook", + Handler: _Query_L3DerivativeOrderBook_Handler, + }, + { + MethodName: "L3SpotOrderBook", + Handler: _Query_L3SpotOrderBook_Handler, + }, + { + MethodName: "QueryExchangeParams", + Handler: _Query_QueryExchangeParams_Handler, + }, + { + MethodName: "SubaccountDeposits", + Handler: _Query_SubaccountDeposits_Handler, + }, + { + MethodName: "SubaccountDeposit", + Handler: _Query_SubaccountDeposit_Handler, + }, + { + MethodName: "ExchangeBalances", + Handler: _Query_ExchangeBalances_Handler, + }, + { + MethodName: "AggregateVolume", + Handler: _Query_AggregateVolume_Handler, + }, + { + MethodName: "AggregateVolumes", + Handler: _Query_AggregateVolumes_Handler, + }, + { + MethodName: "AggregateMarketVolume", + Handler: _Query_AggregateMarketVolume_Handler, + }, + { + MethodName: "AggregateMarketVolumes", + Handler: _Query_AggregateMarketVolumes_Handler, + }, + { + MethodName: "DenomDecimal", + Handler: _Query_DenomDecimal_Handler, + }, + { + MethodName: "DenomDecimals", + Handler: _Query_DenomDecimals_Handler, + }, + { + MethodName: "SpotMarkets", + Handler: _Query_SpotMarkets_Handler, + }, + { + MethodName: "SpotMarket", + Handler: _Query_SpotMarket_Handler, + }, + { + MethodName: "FullSpotMarkets", + Handler: _Query_FullSpotMarkets_Handler, + }, + { + MethodName: "FullSpotMarket", + Handler: _Query_FullSpotMarket_Handler, + }, + { + MethodName: "SpotOrderbook", + Handler: _Query_SpotOrderbook_Handler, + }, + { + MethodName: "TraderSpotOrders", + Handler: _Query_TraderSpotOrders_Handler, + }, + { + MethodName: "AccountAddressSpotOrders", + Handler: _Query_AccountAddressSpotOrders_Handler, + }, + { + MethodName: "SpotOrdersByHashes", + Handler: _Query_SpotOrdersByHashes_Handler, + }, + { + MethodName: "SubaccountOrders", + Handler: _Query_SubaccountOrders_Handler, + }, + { + MethodName: "TraderSpotTransientOrders", + Handler: _Query_TraderSpotTransientOrders_Handler, + }, + { + MethodName: "SpotMidPriceAndTOB", + Handler: _Query_SpotMidPriceAndTOB_Handler, + }, + { + MethodName: "DerivativeMidPriceAndTOB", + Handler: _Query_DerivativeMidPriceAndTOB_Handler, + }, + { + MethodName: "DerivativeOrderbook", + Handler: _Query_DerivativeOrderbook_Handler, + }, + { + MethodName: "TraderDerivativeOrders", + Handler: _Query_TraderDerivativeOrders_Handler, + }, + { + MethodName: "AccountAddressDerivativeOrders", + Handler: _Query_AccountAddressDerivativeOrders_Handler, + }, + { + MethodName: "DerivativeOrdersByHashes", + Handler: _Query_DerivativeOrdersByHashes_Handler, + }, + { + MethodName: "TraderDerivativeTransientOrders", + Handler: _Query_TraderDerivativeTransientOrders_Handler, + }, + { + MethodName: "DerivativeMarkets", + Handler: _Query_DerivativeMarkets_Handler, + }, + { + MethodName: "DerivativeMarket", + Handler: _Query_DerivativeMarket_Handler, + }, + { + MethodName: "DerivativeMarketAddress", + Handler: _Query_DerivativeMarketAddress_Handler, + }, + { + MethodName: "SubaccountTradeNonce", + Handler: _Query_SubaccountTradeNonce_Handler, + }, + { + MethodName: "ExchangeModuleState", + Handler: _Query_ExchangeModuleState_Handler, + }, + { + MethodName: "Positions", + Handler: _Query_Positions_Handler, + }, + { + MethodName: "SubaccountPositions", + Handler: _Query_SubaccountPositions_Handler, + }, + { + MethodName: "SubaccountPositionInMarket", + Handler: _Query_SubaccountPositionInMarket_Handler, + }, + { + MethodName: "SubaccountEffectivePositionInMarket", + Handler: _Query_SubaccountEffectivePositionInMarket_Handler, + }, + { + MethodName: "PerpetualMarketInfo", + Handler: _Query_PerpetualMarketInfo_Handler, + }, + { + MethodName: "ExpiryFuturesMarketInfo", + Handler: _Query_ExpiryFuturesMarketInfo_Handler, + }, + { + MethodName: "PerpetualMarketFunding", + Handler: _Query_PerpetualMarketFunding_Handler, + }, + { + MethodName: "SubaccountOrderMetadata", + Handler: _Query_SubaccountOrderMetadata_Handler, + }, + { + MethodName: "TradeRewardPoints", + Handler: _Query_TradeRewardPoints_Handler, + }, + { + MethodName: "PendingTradeRewardPoints", + Handler: _Query_PendingTradeRewardPoints_Handler, + }, + { + MethodName: "TradeRewardCampaign", + Handler: _Query_TradeRewardCampaign_Handler, + }, + { + MethodName: "FeeDiscountAccountInfo", + Handler: _Query_FeeDiscountAccountInfo_Handler, + }, + { + MethodName: "FeeDiscountSchedule", + Handler: _Query_FeeDiscountSchedule_Handler, + }, + { + MethodName: "BalanceMismatches", + Handler: _Query_BalanceMismatches_Handler, + }, + { + MethodName: "BalanceWithBalanceHolds", + Handler: _Query_BalanceWithBalanceHolds_Handler, + }, + { + MethodName: "FeeDiscountTierStatistics", + Handler: _Query_FeeDiscountTierStatistics_Handler, + }, + { + MethodName: "MitoVaultInfos", + Handler: _Query_MitoVaultInfos_Handler, + }, + { + MethodName: "QueryMarketIDFromVault", + Handler: _Query_QueryMarketIDFromVault_Handler, + }, + { + MethodName: "HistoricalTradeRecords", + Handler: _Query_HistoricalTradeRecords_Handler, + }, + { + MethodName: "IsOptedOutOfRewards", + Handler: _Query_IsOptedOutOfRewards_Handler, + }, + { + MethodName: "OptedOutOfRewardsAccounts", + Handler: _Query_OptedOutOfRewardsAccounts_Handler, + }, + { + MethodName: "MarketVolatility", + Handler: _Query_MarketVolatility_Handler, + }, + { + MethodName: "BinaryOptionsMarkets", + Handler: _Query_BinaryOptionsMarkets_Handler, + }, + { + MethodName: "TraderDerivativeConditionalOrders", + Handler: _Query_TraderDerivativeConditionalOrders_Handler, + }, + { + MethodName: "MarketAtomicExecutionFeeMultiplier", + Handler: _Query_MarketAtomicExecutionFeeMultiplier_Handler, + }, + { + MethodName: "ActiveStakeGrant", + Handler: _Query_ActiveStakeGrant_Handler, + }, + { + MethodName: "GrantAuthorization", + Handler: _Query_GrantAuthorization_Handler, + }, + { + MethodName: "GrantAuthorizations", + Handler: _Query_GrantAuthorizations_Handler, + }, + { + MethodName: "MarketBalance", + Handler: _Query_MarketBalance_Handler, + }, + { + MethodName: "MarketBalances", + Handler: _Query_MarketBalances_Handler, + }, + { + MethodName: "DenomMinNotional", + Handler: _Query_DenomMinNotional_Handler, + }, + { + MethodName: "DenomMinNotionals", + Handler: _Query_DenomMinNotionals_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "injective/exchange/v1beta1/query.proto", +} + +func (m *Subaccount) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Subaccount) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Subaccount) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.SubaccountNonce != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.SubaccountNonce)) + i-- + dAtA[i] = 0x10 + } + if len(m.Trader) > 0 { + i -= len(m.Trader) + copy(dAtA[i:], m.Trader) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Trader))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QuerySubaccountOrdersRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySubaccountOrdersRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuerySubaccountOrdersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) + i-- + dAtA[i] = 0x12 + } + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QuerySubaccountOrdersResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySubaccountOrdersResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuerySubaccountOrdersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.SellOrders) > 0 { + for iNdEx := len(m.SellOrders) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.SellOrders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.BuyOrders) > 0 { + for iNdEx := len(m.BuyOrders) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.BuyOrders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *SubaccountOrderbookMetadataWithMarket) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *SubaccountOrderbookMetadataWithMarket) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SubaccountOrderbookMetadataWithMarket) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.IsBuy { + i-- + if m.IsBuy { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x18 + } + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryExchangeParamsRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryExchangeParamsRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryExchangeParamsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func (m *QueryExchangeParamsResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryExchangeParamsResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryExchangeParamsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + { + size, err := m.Params.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + +func (m *QuerySubaccountDepositsRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySubaccountDepositsRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuerySubaccountDepositsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Subaccount != nil { + { + size, err := m.Subaccount.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QuerySubaccountDepositsResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySubaccountDepositsResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuerySubaccountDepositsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Deposits) > 0 { + for k := range m.Deposits { + v := m.Deposits[k] + baseI := i + if v != nil { + { + size, err := v.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintQuery(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintQuery(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryExchangeBalancesRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryExchangeBalancesRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryExchangeBalancesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func (m *QueryExchangeBalancesResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryExchangeBalancesResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryExchangeBalancesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Balances) > 0 { + for iNdEx := len(m.Balances) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Balances[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryAggregateVolumeRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryAggregateVolumeRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryAggregateVolumeRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Account) > 0 { + i -= len(m.Account) + copy(dAtA[i:], m.Account) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Account))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryAggregateVolumeResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryAggregateVolumeResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryAggregateVolumeResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.AggregateVolumes) > 0 { + for iNdEx := len(m.AggregateVolumes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.AggregateVolumes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryAggregateVolumesRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryAggregateVolumesRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryAggregateVolumesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.MarketIds) > 0 { + for iNdEx := len(m.MarketIds) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.MarketIds[iNdEx]) + copy(dAtA[i:], m.MarketIds[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketIds[iNdEx]))) + i-- + dAtA[i] = 0x12 + } + } + if len(m.Accounts) > 0 { + for iNdEx := len(m.Accounts) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Accounts[iNdEx]) + copy(dAtA[i:], m.Accounts[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Accounts[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryAggregateVolumesResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryAggregateVolumesResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryAggregateVolumesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.AggregateMarketVolumes) > 0 { + for iNdEx := len(m.AggregateMarketVolumes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.AggregateMarketVolumes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.AggregateAccountVolumes) > 0 { + for iNdEx := len(m.AggregateAccountVolumes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.AggregateAccountVolumes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryAggregateMarketVolumeRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryAggregateMarketVolumeRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryAggregateMarketVolumeRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryAggregateMarketVolumeResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryAggregateMarketVolumeResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryAggregateMarketVolumeResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + { + size, err := m.Volume.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + +func (m *QueryDenomDecimalRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryDenomDecimalRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryDenomDecimalRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryDenomDecimalResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryDenomDecimalResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryDenomDecimalResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Decimal != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.Decimal)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *QueryDenomDecimalsRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryDenomDecimalsRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryDenomDecimalsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Denoms) > 0 { + for iNdEx := len(m.Denoms) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Denoms[iNdEx]) + copy(dAtA[i:], m.Denoms[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denoms[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryDenomDecimalsResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryDenomDecimalsResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryDenomDecimalsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.DenomDecimals) > 0 { + for iNdEx := len(m.DenomDecimals) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DenomDecimals[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryAggregateMarketVolumesRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryAggregateMarketVolumesRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryAggregateMarketVolumesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.MarketIds) > 0 { + for iNdEx := len(m.MarketIds) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.MarketIds[iNdEx]) + copy(dAtA[i:], m.MarketIds[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketIds[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryAggregateMarketVolumesResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryAggregateMarketVolumesResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryAggregateMarketVolumesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Volumes) > 0 { + for iNdEx := len(m.Volumes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Volumes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QuerySubaccountDepositRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySubaccountDepositRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuerySubaccountDepositRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0x12 + } + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QuerySubaccountDepositResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySubaccountDepositResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuerySubaccountDepositResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Deposits != nil { + { + size, err := m.Deposits.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QuerySpotMarketsRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySpotMarketsRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuerySpotMarketsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.MarketIds) > 0 { + for iNdEx := len(m.MarketIds) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.MarketIds[iNdEx]) + copy(dAtA[i:], m.MarketIds[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketIds[iNdEx]))) + i-- + dAtA[i] = 0x12 + } + } + if len(m.Status) > 0 { + i -= len(m.Status) + copy(dAtA[i:], m.Status) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Status))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QuerySpotMarketsResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySpotMarketsResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuerySpotMarketsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Markets) > 0 { + for iNdEx := len(m.Markets) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Markets[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QuerySpotMarketRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySpotMarketRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuerySpotMarketRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QuerySpotMarketResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySpotMarketResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuerySpotMarketResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Market != nil { + { + size, err := m.Market.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QuerySpotOrderbookRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySpotOrderbookRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuerySpotOrderbookRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.LimitCumulativeQuantity != nil { + { + size := m.LimitCumulativeQuantity.Size() + i -= size + if _, err := m.LimitCumulativeQuantity.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if m.LimitCumulativeNotional != nil { + { + size := m.LimitCumulativeNotional.Size() + i -= size + if _, err := m.LimitCumulativeNotional.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + if m.OrderSide != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.OrderSide)) + i-- + dAtA[i] = 0x18 + } + if m.Limit != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.Limit)) + i-- + dAtA[i] = 0x10 + } + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QuerySpotOrderbookResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySpotOrderbookResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuerySpotOrderbookResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.SellsPriceLevel) > 0 { + for iNdEx := len(m.SellsPriceLevel) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.SellsPriceLevel[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.BuysPriceLevel) > 0 { + for iNdEx := len(m.BuysPriceLevel) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.BuysPriceLevel[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *FullSpotMarket) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *FullSpotMarket) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FullSpotMarket) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.MidPriceAndTob != nil { + { + size, err := m.MidPriceAndTob.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Market != nil { + { + size, err := m.Market.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryFullSpotMarketsRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryFullSpotMarketsRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryFullSpotMarketsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.WithMidPriceAndTob { + i-- + if m.WithMidPriceAndTob { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x18 + } + if len(m.MarketIds) > 0 { + for iNdEx := len(m.MarketIds) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.MarketIds[iNdEx]) + copy(dAtA[i:], m.MarketIds[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketIds[iNdEx]))) + i-- + dAtA[i] = 0x12 + } + } + if len(m.Status) > 0 { + i -= len(m.Status) + copy(dAtA[i:], m.Status) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Status))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryFullSpotMarketsResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryFullSpotMarketsResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryFullSpotMarketsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Markets) > 0 { + for iNdEx := len(m.Markets) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Markets[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryFullSpotMarketRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryFullSpotMarketRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryFullSpotMarketRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.WithMidPriceAndTob { + i-- + if m.WithMidPriceAndTob { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x10 + } + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryFullSpotMarketResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryFullSpotMarketResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryFullSpotMarketResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Market != nil { + { + size, err := m.Market.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QuerySpotOrdersByHashesRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySpotOrdersByHashesRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuerySpotOrdersByHashesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.OrderHashes) > 0 { + for iNdEx := len(m.OrderHashes) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.OrderHashes[iNdEx]) + copy(dAtA[i:], m.OrderHashes[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.OrderHashes[iNdEx]))) + i-- + dAtA[i] = 0x1a + } + } + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + i-- + dAtA[i] = 0x12 + } + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QuerySpotMarketResponse) Marshal() (dAtA []byte, err error) { +func (m *QuerySpotOrdersByHashesResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10467,32 +11751,34 @@ func (m *QuerySpotMarketResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QuerySpotMarketResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QuerySpotOrdersByHashesResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySpotMarketResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QuerySpotOrdersByHashesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Market != nil { - { - size, err := m.Market.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.Orders) > 0 { + for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa } - i-- - dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QuerySpotOrderbookRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryTraderSpotOrdersRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10502,49 +11788,59 @@ func (m *QuerySpotOrderbookRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QuerySpotOrderbookRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryTraderSpotOrdersRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySpotOrderbookRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryTraderSpotOrdersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.LimitCumulativeQuantity != nil { - { - size := m.LimitCumulativeQuantity.Size() - i -= size - if _, err := m.LimitCumulativeQuantity.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) i-- - dAtA[i] = 0x2a + dAtA[i] = 0x12 } - if m.LimitCumulativeNotional != nil { - { - size := m.LimitCumulativeNotional.Size() - i -= size - if _, err := m.LimitCumulativeNotional.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) i-- - dAtA[i] = 0x22 + dAtA[i] = 0xa } - if m.OrderSide != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.OrderSide)) - i-- - dAtA[i] = 0x18 + return len(dAtA) - i, nil +} + +func (m *QueryAccountAddressSpotOrdersRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - if m.Limit != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.Limit)) + return dAtA[:n], nil +} + +func (m *QueryAccountAddressSpotOrdersRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryAccountAddressSpotOrdersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.AccountAddress) > 0 { + i -= len(m.AccountAddress) + copy(dAtA[i:], m.AccountAddress) + i = encodeVarintQuery(dAtA, i, uint64(len(m.AccountAddress))) i-- - dAtA[i] = 0x10 + dAtA[i] = 0x12 } if len(m.MarketId) > 0 { i -= len(m.MarketId) @@ -10556,7 +11852,158 @@ func (m *QuerySpotOrderbookRequest) MarshalToSizedBuffer(dAtA []byte) (int, erro return len(dAtA) - i, nil } -func (m *QuerySpotOrderbookResponse) Marshal() (dAtA []byte, err error) { +func (m *TrimmedSpotLimitOrder) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *TrimmedSpotLimitOrder) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *TrimmedSpotLimitOrder) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Cid) > 0 { + i -= len(m.Cid) + copy(dAtA[i:], m.Cid) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Cid))) + i-- + dAtA[i] = 0x32 + } + if len(m.OrderHash) > 0 { + i -= len(m.OrderHash) + copy(dAtA[i:], m.OrderHash) + i = encodeVarintQuery(dAtA, i, uint64(len(m.OrderHash))) + i-- + dAtA[i] = 0x2a + } + if m.IsBuy { + i-- + if m.IsBuy { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x20 + } + { + size := m.Fillable.Size() + i -= size + if _, err := m.Fillable.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + { + size := m.Quantity.Size() + i -= size + if _, err := m.Quantity.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + { + size := m.Price.Size() + i -= size + if _, err := m.Price.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + +func (m *QueryTraderSpotOrdersResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryTraderSpotOrdersResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryTraderSpotOrdersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Orders) > 0 { + for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryAccountAddressSpotOrdersResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryAccountAddressSpotOrdersResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryAccountAddressSpotOrdersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Orders) > 0 { + for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QuerySpotMidPriceAndTOBRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10566,48 +12013,27 @@ func (m *QuerySpotOrderbookResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QuerySpotOrderbookResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QuerySpotMidPriceAndTOBRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySpotOrderbookResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QuerySpotMidPriceAndTOBRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.SellsPriceLevel) > 0 { - for iNdEx := len(m.SellsPriceLevel) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.SellsPriceLevel[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - } - if len(m.BuysPriceLevel) > 0 { - for iNdEx := len(m.BuysPriceLevel) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.BuysPriceLevel[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *FullSpotMarket) Marshal() (dAtA []byte, err error) { +func (m *QuerySpotMidPriceAndTOBResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10617,35 +12043,47 @@ func (m *FullSpotMarket) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *FullSpotMarket) MarshalTo(dAtA []byte) (int, error) { +func (m *QuerySpotMidPriceAndTOBResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *FullSpotMarket) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QuerySpotMidPriceAndTOBResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.MidPriceAndTob != nil { + if m.BestSellPrice != nil { { - size, err := m.MidPriceAndTob.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { + size := m.BestSellPrice.Size() + i -= size + if _, err := m.BestSellPrice.MarshalTo(dAtA[i:]); err != nil { return 0, err } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.BestBuyPrice != nil { + { + size := m.BestBuyPrice.Size() i -= size + if _, err := m.BestBuyPrice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- dAtA[i] = 0x12 } - if m.Market != nil { + if m.MidPrice != nil { { - size, err := m.Market.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { + size := m.MidPrice.Size() + i -= size + if _, err := m.MidPrice.MarshalTo(dAtA[i:]); err != nil { return 0, err } - i -= size i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- @@ -10654,7 +12092,7 @@ func (m *FullSpotMarket) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *QueryFullSpotMarketsRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryDerivativeMidPriceAndTOBRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10664,46 +12102,27 @@ func (m *QueryFullSpotMarketsRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryFullSpotMarketsRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDerivativeMidPriceAndTOBRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryFullSpotMarketsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDerivativeMidPriceAndTOBRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.WithMidPriceAndTob { - i-- - if m.WithMidPriceAndTob { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x18 - } - if len(m.MarketIds) > 0 { - for iNdEx := len(m.MarketIds) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.MarketIds[iNdEx]) - copy(dAtA[i:], m.MarketIds[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketIds[iNdEx]))) - i-- - dAtA[i] = 0x12 - } - } - if len(m.Status) > 0 { - i -= len(m.Status) - copy(dAtA[i:], m.Status) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Status))) + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryFullSpotMarketsResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryDerivativeMidPriceAndTOBResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10713,34 +12132,56 @@ func (m *QueryFullSpotMarketsResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryFullSpotMarketsResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDerivativeMidPriceAndTOBResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryFullSpotMarketsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDerivativeMidPriceAndTOBResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Markets) > 0 { - for iNdEx := len(m.Markets) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Markets[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + if m.BestSellPrice != nil { + { + size := m.BestSellPrice.Size() + i -= size + if _, err := m.BestSellPrice.MarshalTo(dAtA[i:]); err != nil { + return 0, err } - i-- - dAtA[i] = 0xa + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.BestBuyPrice != nil { + { + size := m.BestBuyPrice.Size() + i -= size + if _, err := m.BestBuyPrice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.MidPrice != nil { + { + size := m.MidPrice.Size() + i -= size + if _, err := m.MidPrice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryFullSpotMarketRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryDerivativeOrderbookRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10750,24 +12191,31 @@ func (m *QueryFullSpotMarketRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryFullSpotMarketRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDerivativeOrderbookRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryFullSpotMarketRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDerivativeOrderbookRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.WithMidPriceAndTob { - i-- - if m.WithMidPriceAndTob { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + if m.LimitCumulativeNotional != nil { + { + size := m.LimitCumulativeNotional.Size() + i -= size + if _, err := m.LimitCumulativeNotional.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- + dAtA[i] = 0x1a + } + if m.Limit != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.Limit)) + i-- dAtA[i] = 0x10 } if len(m.MarketId) > 0 { @@ -10780,7 +12228,7 @@ func (m *QueryFullSpotMarketRequest) MarshalToSizedBuffer(dAtA []byte) (int, err return len(dAtA) - i, nil } -func (m *QueryFullSpotMarketResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryDerivativeOrderbookResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10790,32 +12238,48 @@ func (m *QueryFullSpotMarketResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryFullSpotMarketResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDerivativeOrderbookResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryFullSpotMarketResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDerivativeOrderbookResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Market != nil { - { - size, err := m.Market.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.SellsPriceLevel) > 0 { + for iNdEx := len(m.SellsPriceLevel) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.SellsPriceLevel[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0x12 + } + } + if len(m.BuysPriceLevel) > 0 { + for iNdEx := len(m.BuysPriceLevel) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.BuysPriceLevel[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - i-- - dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QuerySpotOrdersByHashesRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10825,25 +12289,53 @@ func (m *QuerySpotOrdersByHashesRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QuerySpotOrdersByHashesRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySpotOrdersByHashesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.OrderHashes) > 0 { - for iNdEx := len(m.OrderHashes) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.OrderHashes[iNdEx]) - copy(dAtA[i:], m.OrderHashes[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.OrderHashes[iNdEx]))) - i-- - dAtA[i] = 0x1a + if m.ReferencePrice != nil { + { + size := m.ReferencePrice.Size() + i -= size + if _, err := m.ReferencePrice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + if m.Strategy != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.Strategy)) + i-- + dAtA[i] = 0x28 + } + { + size := m.QuoteAmount.Size() + i -= size + if _, err := m.QuoteAmount.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + { + size := m.BaseAmount.Size() + i -= size + if _, err := m.BaseAmount.MarshalTo(dAtA[i:]); err != nil { + return 0, err } + i = encodeVarintQuery(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1a if len(m.SubaccountId) > 0 { i -= len(m.SubaccountId) copy(dAtA[i:], m.SubaccountId) @@ -10861,7 +12353,7 @@ func (m *QuerySpotOrdersByHashesRequest) MarshalToSizedBuffer(dAtA []byte) (int, return len(dAtA) - i, nil } -func (m *QuerySpotOrdersByHashesResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10871,34 +12363,61 @@ func (m *QuerySpotOrdersByHashesResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QuerySpotOrdersByHashesResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySpotOrdersByHashesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Orders) > 0 { - for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + if m.ReferencePrice != nil { + { + size := m.ReferencePrice.Size() + i -= size + if _, err := m.ReferencePrice.MarshalTo(dAtA[i:]); err != nil { + return 0, err } - i-- - dAtA[i] = 0xa + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if m.Strategy != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.Strategy)) + i-- + dAtA[i] = 0x20 + } + { + size := m.QuoteAmount.Size() + i -= size + if _, err := m.QuoteAmount.MarshalTo(dAtA[i:]); err != nil { + return 0, err } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + i-- + dAtA[i] = 0x12 + } + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryTraderSpotOrdersRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryTraderDerivativeOrdersRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10908,12 +12427,12 @@ func (m *QueryTraderSpotOrdersRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryTraderSpotOrdersRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryTraderDerivativeOrdersRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryTraderSpotOrdersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryTraderDerivativeOrdersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -10935,7 +12454,7 @@ func (m *QueryTraderSpotOrdersRequest) MarshalToSizedBuffer(dAtA []byte) (int, e return len(dAtA) - i, nil } -func (m *QueryAccountAddressSpotOrdersRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryAccountAddressDerivativeOrdersRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10945,12 +12464,12 @@ func (m *QueryAccountAddressSpotOrdersRequest) Marshal() (dAtA []byte, err error return dAtA[:n], nil } -func (m *QueryAccountAddressSpotOrdersRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryAccountAddressDerivativeOrdersRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryAccountAddressSpotOrdersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryAccountAddressDerivativeOrdersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -10972,7 +12491,7 @@ func (m *QueryAccountAddressSpotOrdersRequest) MarshalToSizedBuffer(dAtA []byte) return len(dAtA) - i, nil } -func (m *TrimmedSpotLimitOrder) Marshal() (dAtA []byte, err error) { +func (m *TrimmedDerivativeLimitOrder) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10982,12 +12501,12 @@ func (m *TrimmedSpotLimitOrder) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *TrimmedSpotLimitOrder) MarshalTo(dAtA []byte) (int, error) { +func (m *TrimmedDerivativeLimitOrder) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *TrimmedSpotLimitOrder) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *TrimmedDerivativeLimitOrder) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -10997,14 +12516,14 @@ func (m *TrimmedSpotLimitOrder) MarshalToSizedBuffer(dAtA []byte) (int, error) { copy(dAtA[i:], m.Cid) i = encodeVarintQuery(dAtA, i, uint64(len(m.Cid))) i-- - dAtA[i] = 0x32 + dAtA[i] = 0x3a } if len(m.OrderHash) > 0 { i -= len(m.OrderHash) copy(dAtA[i:], m.OrderHash) i = encodeVarintQuery(dAtA, i, uint64(len(m.OrderHash))) i-- - dAtA[i] = 0x2a + dAtA[i] = 0x32 } if m.IsBuy { i-- @@ -11014,7 +12533,7 @@ func (m *TrimmedSpotLimitOrder) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0 } i-- - dAtA[i] = 0x20 + dAtA[i] = 0x28 } { size := m.Fillable.Size() @@ -11025,194 +12544,41 @@ func (m *TrimmedSpotLimitOrder) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1a + dAtA[i] = 0x22 { - size := m.Quantity.Size() + size := m.Margin.Size() i -= size - if _, err := m.Quantity.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.Margin.MarshalTo(dAtA[i:]); err != nil { return 0, err } i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 + dAtA[i] = 0x1a { - size := m.Price.Size() + size := m.Quantity.Size() i -= size - if _, err := m.Price.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.Quantity.MarshalTo(dAtA[i:]); err != nil { return 0, err } i = encodeVarintQuery(dAtA, i, uint64(size)) } - i-- - dAtA[i] = 0xa - return len(dAtA) - i, nil -} - -func (m *QueryTraderSpotOrdersResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QueryTraderSpotOrdersResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryTraderSpotOrdersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Orders) > 0 { - for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - } - return len(dAtA) - i, nil -} - -func (m *QueryAccountAddressSpotOrdersResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QueryAccountAddressSpotOrdersResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryAccountAddressSpotOrdersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Orders) > 0 { - for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - } - return len(dAtA) - i, nil -} - -func (m *QuerySpotMidPriceAndTOBRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QuerySpotMidPriceAndTOBRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QuerySpotMidPriceAndTOBRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *QuerySpotMidPriceAndTOBResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QuerySpotMidPriceAndTOBResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QuerySpotMidPriceAndTOBResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.BestSellPrice != nil { - { - size := m.BestSellPrice.Size() - i -= size - if _, err := m.BestSellPrice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - if m.BestBuyPrice != nil { - { - size := m.BestBuyPrice.Size() - i -= size - if _, err := m.BestBuyPrice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - if m.MidPrice != nil { - { - size := m.MidPrice.Size() - i -= size - if _, err := m.MidPrice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0x12 + { + size := m.Price.Size() + i -= size + if _, err := m.Price.MarshalTo(dAtA[i:]); err != nil { + return 0, err } - i-- - dAtA[i] = 0xa + i = encodeVarintQuery(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *QueryDerivativeMidPriceAndTOBRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryTraderDerivativeOrdersResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11222,27 +12588,34 @@ func (m *QueryDerivativeMidPriceAndTOBRequest) Marshal() (dAtA []byte, err error return dAtA[:n], nil } -func (m *QueryDerivativeMidPriceAndTOBRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryTraderDerivativeOrdersResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryDerivativeMidPriceAndTOBRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryTraderDerivativeOrdersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) - i-- - dAtA[i] = 0xa + if len(m.Orders) > 0 { + for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } return len(dAtA) - i, nil } -func (m *QueryDerivativeMidPriceAndTOBResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryAccountAddressDerivativeOrdersResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11252,56 +12625,34 @@ func (m *QueryDerivativeMidPriceAndTOBResponse) Marshal() (dAtA []byte, err erro return dAtA[:n], nil } -func (m *QueryDerivativeMidPriceAndTOBResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryAccountAddressDerivativeOrdersResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryDerivativeMidPriceAndTOBResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryAccountAddressDerivativeOrdersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.BestSellPrice != nil { - { - size := m.BestSellPrice.Size() - i -= size - if _, err := m.BestSellPrice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - if m.BestBuyPrice != nil { - { - size := m.BestBuyPrice.Size() - i -= size - if _, err := m.BestBuyPrice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - if m.MidPrice != nil { - { - size := m.MidPrice.Size() - i -= size - if _, err := m.MidPrice.MarshalTo(dAtA[i:]); err != nil { - return 0, err + if len(m.Orders) > 0 { + for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) } - i = encodeVarintQuery(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa } - i-- - dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryDerivativeOrderbookRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryDerivativeOrdersByHashesRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11311,32 +12662,31 @@ func (m *QueryDerivativeOrderbookRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryDerivativeOrderbookRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDerivativeOrdersByHashesRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryDerivativeOrderbookRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDerivativeOrdersByHashesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.LimitCumulativeNotional != nil { - { - size := m.LimitCumulativeNotional.Size() - i -= size - if _, err := m.LimitCumulativeNotional.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) + if len(m.OrderHashes) > 0 { + for iNdEx := len(m.OrderHashes) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.OrderHashes[iNdEx]) + copy(dAtA[i:], m.OrderHashes[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.OrderHashes[iNdEx]))) + i-- + dAtA[i] = 0x1a } - i-- - dAtA[i] = 0x1a } - if m.Limit != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.Limit)) + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) i-- - dAtA[i] = 0x10 + dAtA[i] = 0x12 } if len(m.MarketId) > 0 { i -= len(m.MarketId) @@ -11348,7 +12698,7 @@ func (m *QueryDerivativeOrderbookRequest) MarshalToSizedBuffer(dAtA []byte) (int return len(dAtA) - i, nil } -func (m *QueryDerivativeOrderbookResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryDerivativeOrdersByHashesResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11358,34 +12708,20 @@ func (m *QueryDerivativeOrderbookResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryDerivativeOrderbookResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDerivativeOrdersByHashesResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryDerivativeOrderbookResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDerivativeOrdersByHashesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.SellsPriceLevel) > 0 { - for iNdEx := len(m.SellsPriceLevel) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.SellsPriceLevel[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - } - if len(m.BuysPriceLevel) > 0 { - for iNdEx := len(m.BuysPriceLevel) - 1; iNdEx >= 0; iNdEx-- { + if len(m.Orders) > 0 { + for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.BuysPriceLevel[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -11399,7 +12735,7 @@ func (m *QueryDerivativeOrderbookResponse) MarshalToSizedBuffer(dAtA []byte) (in return len(dAtA) - i, nil } -func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryDerivativeMarketsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11409,71 +12745,136 @@ func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) Marshal() (dAtA []byte, return dAtA[:n], nil } -func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDerivativeMarketsRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDerivativeMarketsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.ReferencePrice != nil { - { - size := m.ReferencePrice.Size() - i -= size - if _, err := m.ReferencePrice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) + if m.WithMidPriceAndTob { + i-- + if m.WithMidPriceAndTob { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } i-- - dAtA[i] = 0x32 + dAtA[i] = 0x18 } - if m.Strategy != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.Strategy)) + if len(m.MarketIds) > 0 { + for iNdEx := len(m.MarketIds) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.MarketIds[iNdEx]) + copy(dAtA[i:], m.MarketIds[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketIds[iNdEx]))) + i-- + dAtA[i] = 0x12 + } + } + if len(m.Status) > 0 { + i -= len(m.Status) + copy(dAtA[i:], m.Status) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Status))) i-- - dAtA[i] = 0x28 + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *PriceLevel) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *PriceLevel) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PriceLevel) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l { - size := m.QuoteAmount.Size() + size := m.Quantity.Size() i -= size - if _, err := m.QuoteAmount.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.Quantity.MarshalTo(dAtA[i:]); err != nil { return 0, err } i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x22 + dAtA[i] = 0x12 { - size := m.BaseAmount.Size() + size := m.Price.Size() i -= size - if _, err := m.BaseAmount.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.Price.MarshalTo(dAtA[i:]); err != nil { return 0, err } i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1a - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + +func (m *PerpetualMarketState) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *PerpetualMarketState) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PerpetualMarketState) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.FundingInfo != nil { + { + size, err := m.FundingInfo.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } i-- dAtA[i] = 0x12 } - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) + if m.MarketInfo != nil { + { + size, err := m.MarketInfo.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) Marshal() (dAtA []byte, err error) { +func (m *FullDerivativeMarket) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11483,61 +12884,105 @@ func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) Marshal() (dAtA [ return dAtA[:n], nil } -func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *FullDerivativeMarket) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *FullDerivativeMarket) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.ReferencePrice != nil { + if m.MidPriceAndTob != nil { { - size := m.ReferencePrice.Size() - i -= size - if _, err := m.ReferencePrice.MarshalTo(dAtA[i:]); err != nil { + size, err := m.MidPriceAndTob.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { return 0, err } + i -= size i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- dAtA[i] = 0x2a } - if m.Strategy != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.Strategy)) - i-- - dAtA[i] = 0x20 - } { - size := m.QuoteAmount.Size() + size := m.MarkPrice.Size() i -= size - if _, err := m.QuoteAmount.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.MarkPrice.MarshalTo(dAtA[i:]); err != nil { return 0, err } i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1a - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) - i-- - dAtA[i] = 0x12 + dAtA[i] = 0x22 + if m.Info != nil { + { + size := m.Info.Size() + i -= size + if _, err := m.Info.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) + if m.Market != nil { + { + size, err := m.Market.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryTraderDerivativeOrdersRequest) Marshal() (dAtA []byte, err error) { +func (m *FullDerivativeMarket_PerpetualInfo) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FullDerivativeMarket_PerpetualInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.PerpetualInfo != nil { + { + size, err := m.PerpetualInfo.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *FullDerivativeMarket_FuturesInfo) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FullDerivativeMarket_FuturesInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.FuturesInfo != nil { + { + size, err := m.FuturesInfo.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *QueryDerivativeMarketsResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11547,34 +12992,34 @@ func (m *QueryTraderDerivativeOrdersRequest) Marshal() (dAtA []byte, err error) return dAtA[:n], nil } -func (m *QueryTraderDerivativeOrdersRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDerivativeMarketsResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryTraderDerivativeOrdersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDerivativeMarketsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) - i-- - dAtA[i] = 0x12 - } - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) - i-- - dAtA[i] = 0xa + if len(m.Markets) > 0 { + for iNdEx := len(m.Markets) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Markets[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } return len(dAtA) - i, nil } -func (m *QueryAccountAddressDerivativeOrdersRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryDerivativeMarketRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11584,23 +13029,16 @@ func (m *QueryAccountAddressDerivativeOrdersRequest) Marshal() (dAtA []byte, err return dAtA[:n], nil } -func (m *QueryAccountAddressDerivativeOrdersRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDerivativeMarketRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryAccountAddressDerivativeOrdersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDerivativeMarketRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.AccountAddress) > 0 { - i -= len(m.AccountAddress) - copy(dAtA[i:], m.AccountAddress) - i = encodeVarintQuery(dAtA, i, uint64(len(m.AccountAddress))) - i-- - dAtA[i] = 0x12 - } if len(m.MarketId) > 0 { i -= len(m.MarketId) copy(dAtA[i:], m.MarketId) @@ -11611,7 +13049,7 @@ func (m *QueryAccountAddressDerivativeOrdersRequest) MarshalToSizedBuffer(dAtA [ return len(dAtA) - i, nil } -func (m *TrimmedDerivativeLimitOrder) Marshal() (dAtA []byte, err error) { +func (m *QueryDerivativeMarketResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11621,84 +13059,32 @@ func (m *TrimmedDerivativeLimitOrder) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *TrimmedDerivativeLimitOrder) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDerivativeMarketResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *TrimmedDerivativeLimitOrder) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDerivativeMarketResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Cid) > 0 { - i -= len(m.Cid) - copy(dAtA[i:], m.Cid) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Cid))) - i-- - dAtA[i] = 0x3a - } - if len(m.OrderHash) > 0 { - i -= len(m.OrderHash) - copy(dAtA[i:], m.OrderHash) - i = encodeVarintQuery(dAtA, i, uint64(len(m.OrderHash))) - i-- - dAtA[i] = 0x32 - } - if m.IsBuy { - i-- - if m.IsBuy { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + if m.Market != nil { + { + size, err := m.Market.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x28 - } - { - size := m.Fillable.Size() - i -= size - if _, err := m.Fillable.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - { - size := m.Margin.Size() - i -= size - if _, err := m.Margin.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - { - size := m.Quantity.Size() - i -= size - if _, err := m.Quantity.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - { - size := m.Price.Size() - i -= size - if _, err := m.Price.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) + dAtA[i] = 0xa } - i-- - dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *QueryTraderDerivativeOrdersResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryDerivativeMarketAddressRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11708,34 +13094,27 @@ func (m *QueryTraderDerivativeOrdersResponse) Marshal() (dAtA []byte, err error) return dAtA[:n], nil } -func (m *QueryTraderDerivativeOrdersResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDerivativeMarketAddressRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryTraderDerivativeOrdersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDerivativeMarketAddressRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Orders) > 0 { - for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryAccountAddressDerivativeOrdersResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryDerivativeMarketAddressResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11745,34 +13124,34 @@ func (m *QueryAccountAddressDerivativeOrdersResponse) Marshal() (dAtA []byte, er return dAtA[:n], nil } -func (m *QueryAccountAddressDerivativeOrdersResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDerivativeMarketAddressResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryAccountAddressDerivativeOrdersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDerivativeMarketAddressResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Orders) > 0 { - for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + i-- + dAtA[i] = 0x12 + } + if len(m.Address) > 0 { + i -= len(m.Address) + copy(dAtA[i:], m.Address) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Address))) + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryDerivativeOrdersByHashesRequest) Marshal() (dAtA []byte, err error) { +func (m *QuerySubaccountTradeNonceRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11782,43 +13161,27 @@ func (m *QueryDerivativeOrdersByHashesRequest) Marshal() (dAtA []byte, err error return dAtA[:n], nil } -func (m *QueryDerivativeOrdersByHashesRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QuerySubaccountTradeNonceRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryDerivativeOrdersByHashesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QuerySubaccountTradeNonceRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.OrderHashes) > 0 { - for iNdEx := len(m.OrderHashes) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.OrderHashes[iNdEx]) - copy(dAtA[i:], m.OrderHashes[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.OrderHashes[iNdEx]))) - i-- - dAtA[i] = 0x1a - } - } if len(m.SubaccountId) > 0 { i -= len(m.SubaccountId) copy(dAtA[i:], m.SubaccountId) i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) i-- - dAtA[i] = 0x12 - } - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) - i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryDerivativeOrdersByHashesResponse) Marshal() (dAtA []byte, err error) { +func (m *QuerySubaccountPositionsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11828,34 +13191,27 @@ func (m *QueryDerivativeOrdersByHashesResponse) Marshal() (dAtA []byte, err erro return dAtA[:n], nil } -func (m *QueryDerivativeOrdersByHashesResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QuerySubaccountPositionsRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryDerivativeOrdersByHashesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QuerySubaccountPositionsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Orders) > 0 { - for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryDerivativeMarketsRequest) Marshal() (dAtA []byte, err error) { +func (m *QuerySubaccountPositionInMarketRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11865,46 +13221,34 @@ func (m *QueryDerivativeMarketsRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryDerivativeMarketsRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QuerySubaccountPositionInMarketRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryDerivativeMarketsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QuerySubaccountPositionInMarketRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.WithMidPriceAndTob { - i-- - if m.WithMidPriceAndTob { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) i-- - dAtA[i] = 0x18 - } - if len(m.MarketIds) > 0 { - for iNdEx := len(m.MarketIds) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.MarketIds[iNdEx]) - copy(dAtA[i:], m.MarketIds[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketIds[iNdEx]))) - i-- - dAtA[i] = 0x12 - } + dAtA[i] = 0x12 } - if len(m.Status) > 0 { - i -= len(m.Status) - copy(dAtA[i:], m.Status) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Status))) + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *PriceLevel) Marshal() (dAtA []byte, err error) { +func (m *QuerySubaccountEffectivePositionInMarketRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11914,40 +13258,34 @@ func (m *PriceLevel) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *PriceLevel) MarshalTo(dAtA []byte) (int, error) { +func (m *QuerySubaccountEffectivePositionInMarketRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *PriceLevel) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QuerySubaccountEffectivePositionInMarketRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - { - size := m.Quantity.Size() - i -= size - if _, err := m.Quantity.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) + i-- + dAtA[i] = 0x12 } - i-- - dAtA[i] = 0x12 - { - size := m.Price.Size() - i -= size - if _, err := m.Price.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + i-- + dAtA[i] = 0xa } - i-- - dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *PerpetualMarketState) Marshal() (dAtA []byte, err error) { +func (m *QuerySubaccountOrderMetadataRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11957,44 +13295,27 @@ func (m *PerpetualMarketState) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *PerpetualMarketState) MarshalTo(dAtA []byte) (int, error) { +func (m *QuerySubaccountOrderMetadataRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *PerpetualMarketState) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QuerySubaccountOrderMetadataRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.FundingInfo != nil { - { - size, err := m.FundingInfo.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - if m.MarketInfo != nil { - { - size, err := m.MarketInfo.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *FullDerivativeMarket) Marshal() (dAtA []byte, err error) { +func (m *QuerySubaccountPositionsResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12004,72 +13325,56 @@ func (m *FullDerivativeMarket) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *FullDerivativeMarket) MarshalTo(dAtA []byte) (int, error) { +func (m *QuerySubaccountPositionsResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *FullDerivativeMarket) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QuerySubaccountPositionsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.MidPriceAndTob != nil { - { - size, err := m.MidPriceAndTob.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a - } - { - size := m.MarkPrice.Size() - i -= size - if _, err := m.MarkPrice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - if m.Info != nil { - { - size := m.Info.Size() - i -= size - if _, err := m.Info.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.Market != nil { - { - size, err := m.Market.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.State) > 0 { + for iNdEx := len(m.State) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.State[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa } - i-- - dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *FullDerivativeMarket_PerpetualInfo) MarshalTo(dAtA []byte) (int, error) { +func (m *QuerySubaccountPositionInMarketResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySubaccountPositionInMarketResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *FullDerivativeMarket_PerpetualInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QuerySubaccountPositionInMarketResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.PerpetualInfo != nil { + _ = i + var l int + _ = l + if m.State != nil { { - size, err := m.PerpetualInfo.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.State.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -12077,32 +13382,75 @@ func (m *FullDerivativeMarket_PerpetualInfo) MarshalToSizedBuffer(dAtA []byte) ( i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *FullDerivativeMarket_FuturesInfo) MarshalTo(dAtA []byte) (int, error) { + +func (m *EffectivePosition) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *EffectivePosition) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *FullDerivativeMarket_FuturesInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *EffectivePosition) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.FuturesInfo != nil { - { - size, err := m.FuturesInfo.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + _ = i + var l int + _ = l + { + size := m.EffectiveMargin.Size() + i -= size + if _, err := m.EffectiveMargin.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + { + size := m.EntryPrice.Size() + i -= size + if _, err := m.EntryPrice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + { + size := m.Quantity.Size() + i -= size + if _, err := m.Quantity.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + if m.IsLong { + i-- + if m.IsLong { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } i-- - dAtA[i] = 0x1a + dAtA[i] = 0x8 } return len(dAtA) - i, nil } -func (m *QueryDerivativeMarketsResponse) Marshal() (dAtA []byte, err error) { + +func (m *QuerySubaccountEffectivePositionInMarketResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12112,34 +13460,32 @@ func (m *QueryDerivativeMarketsResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryDerivativeMarketsResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QuerySubaccountEffectivePositionInMarketResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryDerivativeMarketsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QuerySubaccountEffectivePositionInMarketResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Markets) > 0 { - for iNdEx := len(m.Markets) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Markets[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + if m.State != nil { + { + size, err := m.State.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err } - i-- - dAtA[i] = 0xa + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryDerivativeMarketRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryPerpetualMarketInfoRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12149,12 +13495,12 @@ func (m *QueryDerivativeMarketRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryDerivativeMarketRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryPerpetualMarketInfoRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryDerivativeMarketRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryPerpetualMarketInfoRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -12169,7 +13515,7 @@ func (m *QueryDerivativeMarketRequest) MarshalToSizedBuffer(dAtA []byte) (int, e return len(dAtA) - i, nil } -func (m *QueryDerivativeMarketResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryPerpetualMarketInfoResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12179,32 +13525,30 @@ func (m *QueryDerivativeMarketResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryDerivativeMarketResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryPerpetualMarketInfoResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryDerivativeMarketResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryPerpetualMarketInfoResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Market != nil { - { - size, err := m.Market.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + { + size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err } - i-- - dAtA[i] = 0xa + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *QueryDerivativeMarketAddressRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryExpiryFuturesMarketInfoRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12214,12 +13558,12 @@ func (m *QueryDerivativeMarketAddressRequest) Marshal() (dAtA []byte, err error) return dAtA[:n], nil } -func (m *QueryDerivativeMarketAddressRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryExpiryFuturesMarketInfoRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryDerivativeMarketAddressRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryExpiryFuturesMarketInfoRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -12234,7 +13578,7 @@ func (m *QueryDerivativeMarketAddressRequest) MarshalToSizedBuffer(dAtA []byte) return len(dAtA) - i, nil } -func (m *QueryDerivativeMarketAddressResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryExpiryFuturesMarketInfoResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12244,34 +13588,30 @@ func (m *QueryDerivativeMarketAddressResponse) Marshal() (dAtA []byte, err error return dAtA[:n], nil } -func (m *QueryDerivativeMarketAddressResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryExpiryFuturesMarketInfoResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryDerivativeMarketAddressResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryExpiryFuturesMarketInfoResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) - i-- - dAtA[i] = 0x12 - } - if len(m.Address) > 0 { - i -= len(m.Address) - copy(dAtA[i:], m.Address) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Address))) - i-- - dAtA[i] = 0xa + { + size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *QuerySubaccountTradeNonceRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryPerpetualMarketFundingRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12281,27 +13621,27 @@ func (m *QuerySubaccountTradeNonceRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QuerySubaccountTradeNonceRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryPerpetualMarketFundingRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySubaccountTradeNonceRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryPerpetualMarketFundingRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QuerySubaccountPositionsRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryPerpetualMarketFundingResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12311,27 +13651,30 @@ func (m *QuerySubaccountPositionsRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QuerySubaccountPositionsRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryPerpetualMarketFundingResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySubaccountPositionsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryPerpetualMarketFundingResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) - i-- - dAtA[i] = 0xa + { + size, err := m.State.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *QuerySubaccountPositionInMarketRequest) Marshal() (dAtA []byte, err error) { +func (m *QuerySubaccountOrderMetadataResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12341,34 +13684,62 @@ func (m *QuerySubaccountPositionInMarketRequest) Marshal() (dAtA []byte, err err return dAtA[:n], nil } -func (m *QuerySubaccountPositionInMarketRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QuerySubaccountOrderMetadataResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySubaccountPositionInMarketRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QuerySubaccountOrderMetadataResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) - i-- - dAtA[i] = 0x12 + if len(m.Metadata) > 0 { + for iNdEx := len(m.Metadata) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Metadata[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + return len(dAtA) - i, nil +} + +func (m *QuerySubaccountTradeNonceResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QuerySubaccountTradeNonceResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuerySubaccountTradeNonceResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Nonce != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.Nonce)) i-- - dAtA[i] = 0xa + dAtA[i] = 0x8 } return len(dAtA) - i, nil } -func (m *QuerySubaccountEffectivePositionInMarketRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryModuleStateRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12378,34 +13749,20 @@ func (m *QuerySubaccountEffectivePositionInMarketRequest) Marshal() (dAtA []byte return dAtA[:n], nil } -func (m *QuerySubaccountEffectivePositionInMarketRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryModuleStateRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySubaccountEffectivePositionInMarketRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryModuleStateRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) - i-- - dAtA[i] = 0x12 - } - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) - i-- - dAtA[i] = 0xa - } return len(dAtA) - i, nil } -func (m *QuerySubaccountOrderMetadataRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryModuleStateResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12415,27 +13772,32 @@ func (m *QuerySubaccountOrderMetadataRequest) Marshal() (dAtA []byte, err error) return dAtA[:n], nil } -func (m *QuerySubaccountOrderMetadataRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryModuleStateResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySubaccountOrderMetadataRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryModuleStateResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + if m.State != nil { + { + size, err := m.State.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QuerySubaccountPositionsResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryPositionsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12445,34 +13807,20 @@ func (m *QuerySubaccountPositionsResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QuerySubaccountPositionsResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryPositionsRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySubaccountPositionsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryPositionsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.State) > 0 { - for iNdEx := len(m.State) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.State[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - } return len(dAtA) - i, nil } -func (m *QuerySubaccountPositionInMarketResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryPositionsResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12482,32 +13830,34 @@ func (m *QuerySubaccountPositionInMarketResponse) Marshal() (dAtA []byte, err er return dAtA[:n], nil } -func (m *QuerySubaccountPositionInMarketResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryPositionsResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySubaccountPositionInMarketResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryPositionsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.State != nil { - { - size, err := m.State.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.State) > 0 { + for iNdEx := len(m.State) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.State[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa } - i-- - dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *EffectivePosition) Marshal() (dAtA []byte, err error) { +func (m *QueryTradeRewardPointsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12517,60 +13867,34 @@ func (m *EffectivePosition) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *EffectivePosition) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryTradeRewardPointsRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *EffectivePosition) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryTradeRewardPointsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - { - size := m.EffectiveMargin.Size() - i -= size - if _, err := m.EffectiveMargin.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - { - size := m.EntryPrice.Size() - i -= size - if _, err := m.EntryPrice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - { - size := m.Quantity.Size() - i -= size - if _, err := m.Quantity.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - if m.IsLong { + if m.PendingPoolTimestamp != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.PendingPoolTimestamp)) i-- - if m.IsLong { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + dAtA[i] = 0x10 + } + if len(m.Accounts) > 0 { + for iNdEx := len(m.Accounts) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Accounts[iNdEx]) + copy(dAtA[i:], m.Accounts[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Accounts[iNdEx]))) + i-- + dAtA[i] = 0xa } - i-- - dAtA[i] = 0x8 } return len(dAtA) - i, nil } -func (m *QuerySubaccountEffectivePositionInMarketResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryTradeRewardPointsResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12580,32 +13904,34 @@ func (m *QuerySubaccountEffectivePositionInMarketResponse) Marshal() (dAtA []byt return dAtA[:n], nil } -func (m *QuerySubaccountEffectivePositionInMarketResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryTradeRewardPointsResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySubaccountEffectivePositionInMarketResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryTradeRewardPointsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.State != nil { - { - size, err := m.State.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.AccountTradeRewardPoints) > 0 { + for iNdEx := len(m.AccountTradeRewardPoints) - 1; iNdEx >= 0; iNdEx-- { + { + size := m.AccountTradeRewardPoints[iNdEx].Size() + i -= size + if _, err := m.AccountTradeRewardPoints[iNdEx].MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa } - i-- - dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryPerpetualMarketInfoRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryTradeRewardCampaignRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12615,27 +13941,20 @@ func (m *QueryPerpetualMarketInfoRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryPerpetualMarketInfoRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryTradeRewardCampaignRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryPerpetualMarketInfoRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryTradeRewardCampaignRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) - i-- - dAtA[i] = 0xa - } return len(dAtA) - i, nil } -func (m *QueryPerpetualMarketInfoResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryTradeRewardCampaignResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12645,30 +13964,84 @@ func (m *QueryPerpetualMarketInfoResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryPerpetualMarketInfoResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryTradeRewardCampaignResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryPerpetualMarketInfoResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryTradeRewardCampaignResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + if len(m.PendingTotalTradeRewardPoints) > 0 { + for iNdEx := len(m.PendingTotalTradeRewardPoints) - 1; iNdEx >= 0; iNdEx-- { + { + size := m.PendingTotalTradeRewardPoints[iNdEx].Size() + i -= size + if _, err := m.PendingTotalTradeRewardPoints[iNdEx].MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + } + if len(m.PendingTradingRewardPoolCampaignSchedule) > 0 { + for iNdEx := len(m.PendingTradingRewardPoolCampaignSchedule) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.PendingTradingRewardPoolCampaignSchedule[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + } { - size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { + size := m.TotalTradeRewardPoints.Size() + i -= size + if _, err := m.TotalTradeRewardPoints.MarshalTo(dAtA[i:]); err != nil { return 0, err } - i -= size i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0xa + dAtA[i] = 0x1a + if len(m.TradingRewardPoolCampaignSchedule) > 0 { + for iNdEx := len(m.TradingRewardPoolCampaignSchedule) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.TradingRewardPoolCampaignSchedule[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if m.TradingRewardCampaignInfo != nil { + { + size, err := m.TradingRewardCampaignInfo.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } return len(dAtA) - i, nil } -func (m *QueryExpiryFuturesMarketInfoRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryIsOptedOutOfRewardsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12678,27 +14051,27 @@ func (m *QueryExpiryFuturesMarketInfoRequest) Marshal() (dAtA []byte, err error) return dAtA[:n], nil } -func (m *QueryExpiryFuturesMarketInfoRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryIsOptedOutOfRewardsRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryExpiryFuturesMarketInfoRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryIsOptedOutOfRewardsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) + if len(m.Account) > 0 { + i -= len(m.Account) + copy(dAtA[i:], m.Account) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Account))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryExpiryFuturesMarketInfoResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryIsOptedOutOfRewardsResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12708,30 +14081,30 @@ func (m *QueryExpiryFuturesMarketInfoResponse) Marshal() (dAtA []byte, err error return dAtA[:n], nil } -func (m *QueryExpiryFuturesMarketInfoResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryIsOptedOutOfRewardsResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryExpiryFuturesMarketInfoResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryIsOptedOutOfRewardsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - { - size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if m.IsOptedOut { + i-- + if m.IsOptedOut { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0x8 } - i-- - dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *QueryPerpetualMarketFundingRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryOptedOutOfRewardsAccountsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12741,27 +14114,20 @@ func (m *QueryPerpetualMarketFundingRequest) Marshal() (dAtA []byte, err error) return dAtA[:n], nil } -func (m *QueryPerpetualMarketFundingRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryOptedOutOfRewardsAccountsRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryPerpetualMarketFundingRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryOptedOutOfRewardsAccountsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) - i-- - dAtA[i] = 0xa - } return len(dAtA) - i, nil } -func (m *QueryPerpetualMarketFundingResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryOptedOutOfRewardsAccountsResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12771,30 +14137,29 @@ func (m *QueryPerpetualMarketFundingResponse) Marshal() (dAtA []byte, err error) return dAtA[:n], nil } -func (m *QueryPerpetualMarketFundingResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryOptedOutOfRewardsAccountsResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryPerpetualMarketFundingResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryOptedOutOfRewardsAccountsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - { - size, err := m.State.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.Accounts) > 0 { + for iNdEx := len(m.Accounts) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Accounts[iNdEx]) + copy(dAtA[i:], m.Accounts[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Accounts[iNdEx]))) + i-- + dAtA[i] = 0xa } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) } - i-- - dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *QuerySubaccountOrderMetadataResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryFeeDiscountAccountInfoRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12804,34 +14169,27 @@ func (m *QuerySubaccountOrderMetadataResponse) Marshal() (dAtA []byte, err error return dAtA[:n], nil } -func (m *QuerySubaccountOrderMetadataResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryFeeDiscountAccountInfoRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySubaccountOrderMetadataResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryFeeDiscountAccountInfoRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Metadata) > 0 { - for iNdEx := len(m.Metadata) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Metadata[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if len(m.Account) > 0 { + i -= len(m.Account) + copy(dAtA[i:], m.Account) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Account))) + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QuerySubaccountTradeNonceResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryFeeDiscountAccountInfoResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12841,25 +14199,49 @@ func (m *QuerySubaccountTradeNonceResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QuerySubaccountTradeNonceResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryFeeDiscountAccountInfoResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QuerySubaccountTradeNonceResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryFeeDiscountAccountInfoResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Nonce != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.Nonce)) + if m.AccountTtl != nil { + { + size, err := m.AccountTtl.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.AccountInfo != nil { + { + size, err := m.AccountInfo.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.TierLevel != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.TierLevel)) i-- dAtA[i] = 0x8 } return len(dAtA) - i, nil } -func (m *QueryModuleStateRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryFeeDiscountScheduleRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12869,12 +14251,12 @@ func (m *QueryModuleStateRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryModuleStateRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryFeeDiscountScheduleRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryModuleStateRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryFeeDiscountScheduleRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -12882,7 +14264,7 @@ func (m *QueryModuleStateRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) return len(dAtA) - i, nil } -func (m *QueryModuleStateResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryFeeDiscountScheduleResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12892,19 +14274,19 @@ func (m *QueryModuleStateResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryModuleStateResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryFeeDiscountScheduleResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryModuleStateResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryFeeDiscountScheduleResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.State != nil { + if m.FeeDiscountSchedule != nil { { - size, err := m.State.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.FeeDiscountSchedule.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -12917,7 +14299,7 @@ func (m *QueryModuleStateResponse) MarshalToSizedBuffer(dAtA []byte) (int, error return len(dAtA) - i, nil } -func (m *QueryPositionsRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryBalanceMismatchesRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12927,20 +14309,25 @@ func (m *QueryPositionsRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryPositionsRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryBalanceMismatchesRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryPositionsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryBalanceMismatchesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + if m.DustFactor != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.DustFactor)) + i-- + dAtA[i] = 0x8 + } return len(dAtA) - i, nil } -func (m *QueryPositionsResponse) Marshal() (dAtA []byte, err error) { +func (m *BalanceMismatch) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12950,71 +14337,84 @@ func (m *QueryPositionsResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryPositionsResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *BalanceMismatch) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryPositionsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *BalanceMismatch) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.State) > 0 { - for iNdEx := len(m.State) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.State[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + { + size := m.Difference.Size() + i -= size + if _, err := m.Difference.MarshalTo(dAtA[i:]); err != nil { + return 0, err } + i = encodeVarintQuery(dAtA, i, uint64(size)) } - return len(dAtA) - i, nil -} - -func (m *QueryTradeRewardPointsRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + i-- + dAtA[i] = 0x3a + { + size := m.ExpectedTotal.Size() + i -= size + if _, err := m.ExpectedTotal.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) } - return dAtA[:n], nil -} - -func (m *QueryTradeRewardPointsRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryTradeRewardPointsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.PendingPoolTimestamp != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.PendingPoolTimestamp)) - i-- - dAtA[i] = 0x10 + i-- + dAtA[i] = 0x32 + { + size := m.BalanceHold.Size() + i -= size + if _, err := m.BalanceHold.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) } - if len(m.Accounts) > 0 { - for iNdEx := len(m.Accounts) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Accounts[iNdEx]) - copy(dAtA[i:], m.Accounts[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Accounts[iNdEx]))) - i-- - dAtA[i] = 0xa + i-- + dAtA[i] = 0x2a + { + size := m.Total.Size() + i -= size + if _, err := m.Total.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + { + size := m.Available.Size() + i -= size + if _, err := m.Available.MarshalTo(dAtA[i:]); err != nil { + return 0, err } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0x12 + } + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryTradeRewardPointsResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryBalanceMismatchesResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13024,24 +14424,24 @@ func (m *QueryTradeRewardPointsResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryTradeRewardPointsResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryBalanceMismatchesResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryTradeRewardPointsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryBalanceMismatchesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.AccountTradeRewardPoints) > 0 { - for iNdEx := len(m.AccountTradeRewardPoints) - 1; iNdEx >= 0; iNdEx-- { + if len(m.BalanceMismatches) > 0 { + for iNdEx := len(m.BalanceMismatches) - 1; iNdEx >= 0; iNdEx-- { { - size := m.AccountTradeRewardPoints[iNdEx].Size() - i -= size - if _, err := m.AccountTradeRewardPoints[iNdEx].MarshalTo(dAtA[i:]); err != nil { + size, err := m.BalanceMismatches[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { return 0, err } + i -= size i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- @@ -13051,7 +14451,7 @@ func (m *QueryTradeRewardPointsResponse) MarshalToSizedBuffer(dAtA []byte) (int, return len(dAtA) - i, nil } -func (m *QueryTradeRewardCampaignRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryBalanceWithBalanceHoldsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13061,12 +14461,12 @@ func (m *QueryTradeRewardCampaignRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryTradeRewardCampaignRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryBalanceWithBalanceHoldsRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryTradeRewardCampaignRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryBalanceWithBalanceHoldsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -13074,7 +14474,7 @@ func (m *QueryTradeRewardCampaignRequest) MarshalToSizedBuffer(dAtA []byte) (int return len(dAtA) - i, nil } -func (m *QueryTradeRewardCampaignResponse) Marshal() (dAtA []byte, err error) { +func (m *BalanceWithMarginHold) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13084,114 +14484,64 @@ func (m *QueryTradeRewardCampaignResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryTradeRewardCampaignResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *BalanceWithMarginHold) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryTradeRewardCampaignResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *BalanceWithMarginHold) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.PendingTotalTradeRewardPoints) > 0 { - for iNdEx := len(m.PendingTotalTradeRewardPoints) - 1; iNdEx >= 0; iNdEx-- { - { - size := m.PendingTotalTradeRewardPoints[iNdEx].Size() - i -= size - if _, err := m.PendingTotalTradeRewardPoints[iNdEx].MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a + { + size := m.BalanceHold.Size() + i -= size + if _, err := m.BalanceHold.MarshalTo(dAtA[i:]); err != nil { + return 0, err } + i = encodeVarintQuery(dAtA, i, uint64(size)) } - if len(m.PendingTradingRewardPoolCampaignSchedule) > 0 { - for iNdEx := len(m.PendingTradingRewardPoolCampaignSchedule) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.PendingTradingRewardPoolCampaignSchedule[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 + i-- + dAtA[i] = 0x2a + { + size := m.Total.Size() + i -= size + if _, err := m.Total.MarshalTo(dAtA[i:]); err != nil { + return 0, err } + i = encodeVarintQuery(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x22 { - size := m.TotalTradeRewardPoints.Size() + size := m.Available.Size() i -= size - if _, err := m.TotalTradeRewardPoints.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.Available.MarshalTo(dAtA[i:]); err != nil { return 0, err } i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- dAtA[i] = 0x1a - if len(m.TradingRewardPoolCampaignSchedule) > 0 { - for iNdEx := len(m.TradingRewardPoolCampaignSchedule) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.TradingRewardPoolCampaignSchedule[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - } - if m.TradingRewardCampaignInfo != nil { - { - size, err := m.TradingRewardCampaignInfo.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *QueryIsOptedOutOfRewardsRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + dAtA[i] = 0x12 } - return dAtA[:n], nil -} - -func (m *QueryIsOptedOutOfRewardsRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryIsOptedOutOfRewardsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Account) > 0 { - i -= len(m.Account) - copy(dAtA[i:], m.Account) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Account))) + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryIsOptedOutOfRewardsResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryBalanceWithBalanceHoldsResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13201,30 +14551,34 @@ func (m *QueryIsOptedOutOfRewardsResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryIsOptedOutOfRewardsResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryBalanceWithBalanceHoldsResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryIsOptedOutOfRewardsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryBalanceWithBalanceHoldsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.IsOptedOut { - i-- - if m.IsOptedOut { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + if len(m.BalanceWithBalanceHolds) > 0 { + for iNdEx := len(m.BalanceWithBalanceHolds) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.BalanceWithBalanceHolds[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - i-- - dAtA[i] = 0x8 } return len(dAtA) - i, nil } -func (m *QueryOptedOutOfRewardsAccountsRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryFeeDiscountTierStatisticsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13234,12 +14588,12 @@ func (m *QueryOptedOutOfRewardsAccountsRequest) Marshal() (dAtA []byte, err erro return dAtA[:n], nil } -func (m *QueryOptedOutOfRewardsAccountsRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryFeeDiscountTierStatisticsRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryOptedOutOfRewardsAccountsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryFeeDiscountTierStatisticsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -13247,7 +14601,7 @@ func (m *QueryOptedOutOfRewardsAccountsRequest) MarshalToSizedBuffer(dAtA []byte return len(dAtA) - i, nil } -func (m *QueryOptedOutOfRewardsAccountsResponse) Marshal() (dAtA []byte, err error) { +func (m *TierStatistic) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13257,29 +14611,30 @@ func (m *QueryOptedOutOfRewardsAccountsResponse) Marshal() (dAtA []byte, err err return dAtA[:n], nil } -func (m *QueryOptedOutOfRewardsAccountsResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *TierStatistic) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryOptedOutOfRewardsAccountsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *TierStatistic) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Accounts) > 0 { - for iNdEx := len(m.Accounts) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Accounts[iNdEx]) - copy(dAtA[i:], m.Accounts[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Accounts[iNdEx]))) - i-- - dAtA[i] = 0xa - } + if m.Count != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.Count)) + i-- + dAtA[i] = 0x10 + } + if m.Tier != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.Tier)) + i-- + dAtA[i] = 0x8 } return len(dAtA) - i, nil } -func (m *QueryFeeDiscountAccountInfoRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryFeeDiscountTierStatisticsResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13289,79 +14644,57 @@ func (m *QueryFeeDiscountAccountInfoRequest) Marshal() (dAtA []byte, err error) return dAtA[:n], nil } -func (m *QueryFeeDiscountAccountInfoRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryFeeDiscountTierStatisticsResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryFeeDiscountAccountInfoRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryFeeDiscountTierStatisticsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Account) > 0 { - i -= len(m.Account) - copy(dAtA[i:], m.Account) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Account))) - i-- - dAtA[i] = 0xa + if len(m.Statistics) > 0 { + for iNdEx := len(m.Statistics) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Statistics[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } return len(dAtA) - i, nil } -func (m *QueryFeeDiscountAccountInfoResponse) Marshal() (dAtA []byte, err error) { +func (m *MitoVaultInfosRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QueryFeeDiscountAccountInfoResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryFeeDiscountAccountInfoResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.AccountTtl != nil { - { - size, err := m.AccountTtl.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - if m.AccountInfo != nil { - { - size, err := m.AccountInfo.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - if m.TierLevel != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.TierLevel)) - i-- - dAtA[i] = 0x8 + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *MitoVaultInfosRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MitoVaultInfosRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l return len(dAtA) - i, nil } -func (m *QueryFeeDiscountScheduleRequest) Marshal() (dAtA []byte, err error) { +func (m *MitoVaultInfosResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13371,20 +14704,56 @@ func (m *QueryFeeDiscountScheduleRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryFeeDiscountScheduleRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *MitoVaultInfosResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryFeeDiscountScheduleRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MitoVaultInfosResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + if len(m.Cw20Addresses) > 0 { + for iNdEx := len(m.Cw20Addresses) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Cw20Addresses[iNdEx]) + copy(dAtA[i:], m.Cw20Addresses[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Cw20Addresses[iNdEx]))) + i-- + dAtA[i] = 0x22 + } + } + if len(m.SpotAddresses) > 0 { + for iNdEx := len(m.SpotAddresses) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.SpotAddresses[iNdEx]) + copy(dAtA[i:], m.SpotAddresses[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SpotAddresses[iNdEx]))) + i-- + dAtA[i] = 0x1a + } + } + if len(m.DerivativeAddresses) > 0 { + for iNdEx := len(m.DerivativeAddresses) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.DerivativeAddresses[iNdEx]) + copy(dAtA[i:], m.DerivativeAddresses[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.DerivativeAddresses[iNdEx]))) + i-- + dAtA[i] = 0x12 + } + } + if len(m.MasterAddresses) > 0 { + for iNdEx := len(m.MasterAddresses) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.MasterAddresses[iNdEx]) + copy(dAtA[i:], m.MasterAddresses[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MasterAddresses[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } return len(dAtA) - i, nil } -func (m *QueryFeeDiscountScheduleResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryMarketIDFromVaultRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13394,32 +14763,27 @@ func (m *QueryFeeDiscountScheduleResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryFeeDiscountScheduleResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryMarketIDFromVaultRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryFeeDiscountScheduleResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryMarketIDFromVaultRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.FeeDiscountSchedule != nil { - { - size, err := m.FeeDiscountSchedule.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } + if len(m.VaultAddress) > 0 { + i -= len(m.VaultAddress) + copy(dAtA[i:], m.VaultAddress) + i = encodeVarintQuery(dAtA, i, uint64(len(m.VaultAddress))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryBalanceMismatchesRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryMarketIDFromVaultResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13429,25 +14793,27 @@ func (m *QueryBalanceMismatchesRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryBalanceMismatchesRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryMarketIDFromVaultResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryBalanceMismatchesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryMarketIDFromVaultResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.DustFactor != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.DustFactor)) + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) i-- - dAtA[i] = 0x8 + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *BalanceMismatch) Marshal() (dAtA []byte, err error) { +func (m *QueryHistoricalTradeRecordsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13457,84 +14823,27 @@ func (m *BalanceMismatch) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *BalanceMismatch) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryHistoricalTradeRecordsRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *BalanceMismatch) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryHistoricalTradeRecordsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - { - size := m.Difference.Size() - i -= size - if _, err := m.Difference.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a - { - size := m.ExpectedTotal.Size() - i -= size - if _, err := m.ExpectedTotal.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - { - size := m.BalanceHold.Size() - i -= size - if _, err := m.BalanceHold.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a - { - size := m.Total.Size() - i -= size - if _, err := m.Total.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - { - size := m.Available.Size() - i -= size - if _, err := m.Available.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - if len(m.Denom) > 0 { - i -= len(m.Denom) - copy(dAtA[i:], m.Denom) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) - i-- - dAtA[i] = 0x12 - } - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryBalanceMismatchesResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryHistoricalTradeRecordsResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13544,20 +14853,20 @@ func (m *QueryBalanceMismatchesResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryBalanceMismatchesResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryHistoricalTradeRecordsResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryBalanceMismatchesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryHistoricalTradeRecordsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.BalanceMismatches) > 0 { - for iNdEx := len(m.BalanceMismatches) - 1; iNdEx >= 0; iNdEx-- { + if len(m.TradeRecords) > 0 { + for iNdEx := len(m.TradeRecords) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.BalanceMismatches[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.TradeRecords[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -13571,7 +14880,7 @@ func (m *QueryBalanceMismatchesResponse) MarshalToSizedBuffer(dAtA []byte) (int, return len(dAtA) - i, nil } -func (m *QueryBalanceWithBalanceHoldsRequest) Marshal() (dAtA []byte, err error) { +func (m *TradeHistoryOptions) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13581,20 +14890,50 @@ func (m *QueryBalanceWithBalanceHoldsRequest) Marshal() (dAtA []byte, err error) return dAtA[:n], nil } -func (m *QueryBalanceWithBalanceHoldsRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *TradeHistoryOptions) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryBalanceWithBalanceHoldsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *TradeHistoryOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + if m.IncludeMetadata { + i-- + if m.IncludeMetadata { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x28 + } + if m.IncludeRawHistory { + i-- + if m.IncludeRawHistory { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x20 + } + if m.MaxAge != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.MaxAge)) + i-- + dAtA[i] = 0x10 + } + if m.TradeGroupingSec != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.TradeGroupingSec)) + i-- + dAtA[i] = 0x8 + } return len(dAtA) - i, nil } -func (m *BalanceWithMarginHold) Marshal() (dAtA []byte, err error) { +func (m *QueryMarketVolatilityRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13604,64 +14943,39 @@ func (m *BalanceWithMarginHold) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *BalanceWithMarginHold) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryMarketVolatilityRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *BalanceWithMarginHold) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryMarketVolatilityRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - { - size := m.BalanceHold.Size() - i -= size - if _, err := m.BalanceHold.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a - { - size := m.Total.Size() - i -= size - if _, err := m.Total.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - { - size := m.Available.Size() - i -= size - if _, err := m.Available.MarshalTo(dAtA[i:]); err != nil { - return 0, err + if m.TradeHistoryOptions != nil { + { + size, err := m.TradeHistoryOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - if len(m.Denom) > 0 { - i -= len(m.Denom) - copy(dAtA[i:], m.Denom) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) i-- dAtA[i] = 0x12 } - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryBalanceWithBalanceHoldsResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryMarketVolatilityResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13671,20 +14985,20 @@ func (m *QueryBalanceWithBalanceHoldsResponse) Marshal() (dAtA []byte, err error return dAtA[:n], nil } -func (m *QueryBalanceWithBalanceHoldsResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryMarketVolatilityResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryBalanceWithBalanceHoldsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryMarketVolatilityResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.BalanceWithBalanceHolds) > 0 { - for iNdEx := len(m.BalanceWithBalanceHolds) - 1; iNdEx >= 0; iNdEx-- { + if len(m.RawHistory) > 0 { + for iNdEx := len(m.RawHistory) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.BalanceWithBalanceHolds[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.RawHistory[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -13692,13 +15006,37 @@ func (m *QueryBalanceWithBalanceHoldsResponse) MarshalToSizedBuffer(dAtA []byte) i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0xa + dAtA[i] = 0x1a + } + } + if m.HistoryMetadata != nil { + { + size, err := m.HistoryMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x12 + } + if m.Volatility != nil { + { + size := m.Volatility.Size() + i -= size + if _, err := m.Volatility.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryFeeDiscountTierStatisticsRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryBinaryMarketsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13708,20 +15046,27 @@ func (m *QueryFeeDiscountTierStatisticsRequest) Marshal() (dAtA []byte, err erro return dAtA[:n], nil } -func (m *QueryFeeDiscountTierStatisticsRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryBinaryMarketsRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryFeeDiscountTierStatisticsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryBinaryMarketsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + if len(m.Status) > 0 { + i -= len(m.Status) + copy(dAtA[i:], m.Status) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Status))) + i-- + dAtA[i] = 0xa + } return len(dAtA) - i, nil } -func (m *TierStatistic) Marshal() (dAtA []byte, err error) { +func (m *QueryBinaryMarketsResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13731,30 +15076,34 @@ func (m *TierStatistic) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *TierStatistic) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryBinaryMarketsResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *TierStatistic) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryBinaryMarketsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Count != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.Count)) - i-- - dAtA[i] = 0x10 - } - if m.Tier != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.Tier)) - i-- - dAtA[i] = 0x8 + if len(m.Markets) > 0 { + for iNdEx := len(m.Markets) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Markets[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } return len(dAtA) - i, nil } -func (m *QueryFeeDiscountTierStatisticsResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryTraderDerivativeConditionalOrdersRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13764,34 +15113,34 @@ func (m *QueryFeeDiscountTierStatisticsResponse) Marshal() (dAtA []byte, err err return dAtA[:n], nil } -func (m *QueryFeeDiscountTierStatisticsResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryTraderDerivativeConditionalOrdersRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryFeeDiscountTierStatisticsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryTraderDerivativeConditionalOrdersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Statistics) > 0 { - for iNdEx := len(m.Statistics) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Statistics[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) + i-- + dAtA[i] = 0x12 + } + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *MitoVaultInfosRequest) Marshal() (dAtA []byte, err error) { +func (m *TrimmedDerivativeConditionalOrder) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13801,20 +15150,94 @@ func (m *MitoVaultInfosRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MitoVaultInfosRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *TrimmedDerivativeConditionalOrder) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MitoVaultInfosRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *TrimmedDerivativeConditionalOrder) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + if len(m.Cid) > 0 { + i -= len(m.Cid) + copy(dAtA[i:], m.Cid) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Cid))) + i-- + dAtA[i] = 0x42 + } + if len(m.OrderHash) > 0 { + i -= len(m.OrderHash) + copy(dAtA[i:], m.OrderHash) + i = encodeVarintQuery(dAtA, i, uint64(len(m.OrderHash))) + i-- + dAtA[i] = 0x3a + } + if m.IsLimit { + i-- + if m.IsLimit { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x30 + } + if m.IsBuy { + i-- + if m.IsBuy { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x28 + } + { + size := m.TriggerPrice.Size() + i -= size + if _, err := m.TriggerPrice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + { + size := m.Margin.Size() + i -= size + if _, err := m.Margin.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + { + size := m.Quantity.Size() + i -= size + if _, err := m.Quantity.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + { + size := m.Price.Size() + i -= size + if _, err := m.Price.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *MitoVaultInfosResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryTraderDerivativeConditionalOrdersResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13824,48 +15247,26 @@ func (m *MitoVaultInfosResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MitoVaultInfosResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryTraderDerivativeConditionalOrdersResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MitoVaultInfosResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryTraderDerivativeConditionalOrdersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Cw20Addresses) > 0 { - for iNdEx := len(m.Cw20Addresses) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Cw20Addresses[iNdEx]) - copy(dAtA[i:], m.Cw20Addresses[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Cw20Addresses[iNdEx]))) - i-- - dAtA[i] = 0x22 - } - } - if len(m.SpotAddresses) > 0 { - for iNdEx := len(m.SpotAddresses) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.SpotAddresses[iNdEx]) - copy(dAtA[i:], m.SpotAddresses[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SpotAddresses[iNdEx]))) - i-- - dAtA[i] = 0x1a - } - } - if len(m.DerivativeAddresses) > 0 { - for iNdEx := len(m.DerivativeAddresses) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.DerivativeAddresses[iNdEx]) - copy(dAtA[i:], m.DerivativeAddresses[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.DerivativeAddresses[iNdEx]))) - i-- - dAtA[i] = 0x12 - } - } - if len(m.MasterAddresses) > 0 { - for iNdEx := len(m.MasterAddresses) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.MasterAddresses[iNdEx]) - copy(dAtA[i:], m.MasterAddresses[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MasterAddresses[iNdEx]))) + if len(m.Orders) > 0 { + for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } i-- dAtA[i] = 0xa } @@ -13873,7 +15274,7 @@ func (m *MitoVaultInfosResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) return len(dAtA) - i, nil } -func (m *QueryMarketIDFromVaultRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryFullSpotOrderbookRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13883,27 +15284,27 @@ func (m *QueryMarketIDFromVaultRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryMarketIDFromVaultRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryFullSpotOrderbookRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryMarketIDFromVaultRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryFullSpotOrderbookRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.VaultAddress) > 0 { - i -= len(m.VaultAddress) - copy(dAtA[i:], m.VaultAddress) - i = encodeVarintQuery(dAtA, i, uint64(len(m.VaultAddress))) + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryMarketIDFromVaultResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryFullSpotOrderbookResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13913,27 +15314,48 @@ func (m *QueryMarketIDFromVaultResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryMarketIDFromVaultResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryFullSpotOrderbookResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryMarketIDFromVaultResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryFullSpotOrderbookResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) - i-- - dAtA[i] = 0xa + if len(m.Asks) > 0 { + for iNdEx := len(m.Asks) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Asks[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.Bids) > 0 { + for iNdEx := len(m.Bids) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Bids[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } return len(dAtA) - i, nil } -func (m *QueryHistoricalTradeRecordsRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryFullDerivativeOrderbookRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13943,12 +15365,12 @@ func (m *QueryHistoricalTradeRecordsRequest) Marshal() (dAtA []byte, err error) return dAtA[:n], nil } -func (m *QueryHistoricalTradeRecordsRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryFullDerivativeOrderbookRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryHistoricalTradeRecordsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryFullDerivativeOrderbookRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -13963,7 +15385,7 @@ func (m *QueryHistoricalTradeRecordsRequest) MarshalToSizedBuffer(dAtA []byte) ( return len(dAtA) - i, nil } -func (m *QueryHistoricalTradeRecordsResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryFullDerivativeOrderbookResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13973,20 +15395,34 @@ func (m *QueryHistoricalTradeRecordsResponse) Marshal() (dAtA []byte, err error) return dAtA[:n], nil } -func (m *QueryHistoricalTradeRecordsResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryFullDerivativeOrderbookResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryHistoricalTradeRecordsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryFullDerivativeOrderbookResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.TradeRecords) > 0 { - for iNdEx := len(m.TradeRecords) - 1; iNdEx >= 0; iNdEx-- { + if len(m.Asks) > 0 { + for iNdEx := len(m.Asks) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.TradeRecords[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.Asks[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.Bids) > 0 { + for iNdEx := len(m.Bids) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Bids[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -14000,7 +15436,7 @@ func (m *QueryHistoricalTradeRecordsResponse) MarshalToSizedBuffer(dAtA []byte) return len(dAtA) - i, nil } -func (m *TradeHistoryOptions) Marshal() (dAtA []byte, err error) { +func (m *TrimmedLimitOrder) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14010,50 +15446,54 @@ func (m *TradeHistoryOptions) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *TradeHistoryOptions) MarshalTo(dAtA []byte) (int, error) { +func (m *TrimmedLimitOrder) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *TradeHistoryOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *TrimmedLimitOrder) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.IncludeMetadata { - i-- - if m.IncludeMetadata { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } + if len(m.SubaccountId) > 0 { + i -= len(m.SubaccountId) + copy(dAtA[i:], m.SubaccountId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) i-- - dAtA[i] = 0x28 + dAtA[i] = 0x22 } - if m.IncludeRawHistory { - i-- - if m.IncludeRawHistory { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } + if len(m.OrderHash) > 0 { + i -= len(m.OrderHash) + copy(dAtA[i:], m.OrderHash) + i = encodeVarintQuery(dAtA, i, uint64(len(m.OrderHash))) i-- - dAtA[i] = 0x20 + dAtA[i] = 0x1a } - if m.MaxAge != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.MaxAge)) - i-- - dAtA[i] = 0x10 + { + size := m.Quantity.Size() + i -= size + if _, err := m.Quantity.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) } - if m.TradeGroupingSec != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.TradeGroupingSec)) - i-- - dAtA[i] = 0x8 + i-- + dAtA[i] = 0x12 + { + size := m.Price.Size() + i -= size + if _, err := m.Price.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *QueryMarketVolatilityRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14063,28 +15503,16 @@ func (m *QueryMarketVolatilityRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryMarketVolatilityRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryMarketVolatilityRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.TradeHistoryOptions != nil { - { - size, err := m.TradeHistoryOptions.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } if len(m.MarketId) > 0 { i -= len(m.MarketId) copy(dAtA[i:], m.MarketId) @@ -14095,7 +15523,7 @@ func (m *QueryMarketVolatilityRequest) MarshalToSizedBuffer(dAtA []byte) (int, e return len(dAtA) - i, nil } -func (m *QueryMarketVolatilityResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14105,58 +15533,60 @@ func (m *QueryMarketVolatilityResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryMarketVolatilityResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryMarketVolatilityResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.RawHistory) > 0 { - for iNdEx := len(m.RawHistory) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.RawHistory[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a + { + size := m.Multiplier.Size() + i -= size + if _, err := m.Multiplier.MarshalTo(dAtA[i:]); err != nil { + return 0, err } + i = encodeVarintQuery(dAtA, i, uint64(size)) } - if m.HistoryMetadata != nil { - { - size, err := m.HistoryMetadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + +func (m *QueryActiveStakeGrantRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - if m.Volatility != nil { - { - size := m.Volatility.Size() - i -= size - if _, err := m.Volatility.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } + return dAtA[:n], nil +} + +func (m *QueryActiveStakeGrantRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryActiveStakeGrantRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Grantee) > 0 { + i -= len(m.Grantee) + copy(dAtA[i:], m.Grantee) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Grantee))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryBinaryMarketsRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryActiveStakeGrantResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14166,27 +15596,44 @@ func (m *QueryBinaryMarketsRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryBinaryMarketsRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryActiveStakeGrantResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryBinaryMarketsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryActiveStakeGrantResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Status) > 0 { - i -= len(m.Status) - copy(dAtA[i:], m.Status) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Status))) + if m.EffectiveGrant != nil { + { + size, err := m.EffectiveGrant.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Grant != nil { + { + size, err := m.Grant.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryBinaryMarketsResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryGrantAuthorizationRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14196,34 +15643,34 @@ func (m *QueryBinaryMarketsResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryBinaryMarketsResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryGrantAuthorizationRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryBinaryMarketsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryGrantAuthorizationRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Markets) > 0 { - for iNdEx := len(m.Markets) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Markets[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if len(m.Grantee) > 0 { + i -= len(m.Grantee) + copy(dAtA[i:], m.Grantee) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Grantee))) + i-- + dAtA[i] = 0x12 + } + if len(m.Granter) > 0 { + i -= len(m.Granter) + copy(dAtA[i:], m.Granter) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Granter))) + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryTraderDerivativeConditionalOrdersRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryGrantAuthorizationResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14233,34 +15680,30 @@ func (m *QueryTraderDerivativeConditionalOrdersRequest) Marshal() (dAtA []byte, return dAtA[:n], nil } -func (m *QueryTraderDerivativeConditionalOrdersRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryGrantAuthorizationResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryTraderDerivativeConditionalOrdersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryGrantAuthorizationResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.MarketId) > 0 { - i -= len(m.MarketId) - copy(dAtA[i:], m.MarketId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) - i-- - dAtA[i] = 0x12 - } - if len(m.SubaccountId) > 0 { - i -= len(m.SubaccountId) - copy(dAtA[i:], m.SubaccountId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.SubaccountId))) - i-- - dAtA[i] = 0xa + { + size := m.Amount.Size() + i -= size + if _, err := m.Amount.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *TrimmedDerivativeConditionalOrder) Marshal() (dAtA []byte, err error) { +func (m *QueryGrantAuthorizationsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14270,94 +15713,27 @@ func (m *TrimmedDerivativeConditionalOrder) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *TrimmedDerivativeConditionalOrder) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryGrantAuthorizationsRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *TrimmedDerivativeConditionalOrder) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryGrantAuthorizationsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Cid) > 0 { - i -= len(m.Cid) - copy(dAtA[i:], m.Cid) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Cid))) - i-- - dAtA[i] = 0x42 - } - if len(m.OrderHash) > 0 { - i -= len(m.OrderHash) - copy(dAtA[i:], m.OrderHash) - i = encodeVarintQuery(dAtA, i, uint64(len(m.OrderHash))) - i-- - dAtA[i] = 0x3a - } - if m.IsLimit { - i-- - if m.IsLimit { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x30 - } - if m.IsBuy { - i-- - if m.IsBuy { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } + if len(m.Granter) > 0 { + i -= len(m.Granter) + copy(dAtA[i:], m.Granter) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Granter))) i-- - dAtA[i] = 0x28 - } - { - size := m.TriggerPrice.Size() - i -= size - if _, err := m.TriggerPrice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - { - size := m.Margin.Size() - i -= size - if _, err := m.Margin.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - { - size := m.Quantity.Size() - i -= size - if _, err := m.Quantity.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - { - size := m.Price.Size() - i -= size - if _, err := m.Price.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintQuery(dAtA, i, uint64(size)) + dAtA[i] = 0xa } - i-- - dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *QueryTraderDerivativeConditionalOrdersResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryGrantAuthorizationsResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14367,20 +15743,20 @@ func (m *QueryTraderDerivativeConditionalOrdersResponse) Marshal() (dAtA []byte, return dAtA[:n], nil } -func (m *QueryTraderDerivativeConditionalOrdersResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryGrantAuthorizationsResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryTraderDerivativeConditionalOrdersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryGrantAuthorizationsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Orders) > 0 { - for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- { + if len(m.Grants) > 0 { + for iNdEx := len(m.Grants) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.Grants[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -14388,13 +15764,23 @@ func (m *QueryTraderDerivativeConditionalOrdersResponse) MarshalToSizedBuffer(dA i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0xa + dAtA[i] = 0x12 + } + } + { + size := m.TotalGrantAmount.Size() + i -= size + if _, err := m.TotalGrantAmount.MarshalTo(dAtA[i:]); err != nil { + return 0, err } + i = encodeVarintQuery(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryMarketBalanceRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14404,12 +15790,12 @@ func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) Marshal() (dAtA []byte, return dAtA[:n], nil } -func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryMarketBalanceRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryMarketBalanceRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -14424,7 +15810,7 @@ func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) MarshalToSizedBuffer(dA return len(dAtA) - i, nil } -func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryMarketBalanceResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14434,20 +15820,20 @@ func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) Marshal() (dAtA []byte return dAtA[:n], nil } -func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryMarketBalanceResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryMarketBalanceResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l { - size := m.Multiplier.Size() + size := m.Balance.Size() i -= size - if _, err := m.Multiplier.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.Balance.MarshalTo(dAtA[i:]); err != nil { return 0, err } i = encodeVarintQuery(dAtA, i, uint64(size)) @@ -14457,7 +15843,7 @@ func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) MarshalToSizedBuffer(d return len(dAtA) - i, nil } -func (m *QueryActiveStakeGrantRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryMarketBalancesRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14467,27 +15853,20 @@ func (m *QueryActiveStakeGrantRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryActiveStakeGrantRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryMarketBalancesRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryActiveStakeGrantRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryMarketBalancesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Grantee) > 0 { - i -= len(m.Grantee) - copy(dAtA[i:], m.Grantee) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Grantee))) - i-- - dAtA[i] = 0xa - } return len(dAtA) - i, nil } -func (m *QueryActiveStakeGrantResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryMarketBalancesResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14497,44 +15876,74 @@ func (m *QueryActiveStakeGrantResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryActiveStakeGrantResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryMarketBalancesResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryActiveStakeGrantResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryMarketBalancesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.EffectiveGrant != nil { - { - size, err := m.EffectiveGrant.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.Balances) > 0 { + for iNdEx := len(m.Balances) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Balances[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa } - i-- - dAtA[i] = 0x12 } - if m.Grant != nil { - { - size, err := m.Grant.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + return len(dAtA) - i, nil +} + +func (m *MarketBalance) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *MarketBalance) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MarketBalance) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + { + size := m.Balance.Size() + i -= size + if _, err := m.Balance.MarshalTo(dAtA[i:]); err != nil { + return 0, err } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + if len(m.MarketId) > 0 { + i -= len(m.MarketId) + copy(dAtA[i:], m.MarketId) + i = encodeVarintQuery(dAtA, i, uint64(len(m.MarketId))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryGrantAuthorizationRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryDenomMinNotionalRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14544,34 +15953,27 @@ func (m *QueryGrantAuthorizationRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryGrantAuthorizationRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDenomMinNotionalRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryGrantAuthorizationRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDenomMinNotionalRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Grantee) > 0 { - i -= len(m.Grantee) - copy(dAtA[i:], m.Grantee) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Grantee))) - i-- - dAtA[i] = 0x12 - } - if len(m.Granter) > 0 { - i -= len(m.Granter) - copy(dAtA[i:], m.Granter) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Granter))) + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *QueryGrantAuthorizationResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryDenomMinNotionalResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14581,12 +15983,12 @@ func (m *QueryGrantAuthorizationResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryGrantAuthorizationResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDenomMinNotionalResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryGrantAuthorizationResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDenomMinNotionalResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -14604,7 +16006,7 @@ func (m *QueryGrantAuthorizationResponse) MarshalToSizedBuffer(dAtA []byte) (int return len(dAtA) - i, nil } -func (m *QueryGrantAuthorizationsRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryDenomMinNotionalsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14614,27 +16016,20 @@ func (m *QueryGrantAuthorizationsRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryGrantAuthorizationsRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDenomMinNotionalsRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryGrantAuthorizationsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Granter) > 0 { - i -= len(m.Granter) - copy(dAtA[i:], m.Granter) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Granter))) - i-- - dAtA[i] = 0xa - } +} + +func (m *QueryDenomMinNotionalsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l return len(dAtA) - i, nil } -func (m *QueryGrantAuthorizationsResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryDenomMinNotionalsResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -14644,20 +16039,20 @@ func (m *QueryGrantAuthorizationsResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryGrantAuthorizationsResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryDenomMinNotionalsResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryGrantAuthorizationsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryDenomMinNotionalsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Grants) > 0 { - for iNdEx := len(m.Grants) - 1; iNdEx >= 0; iNdEx-- { + if len(m.DenomMinNotionals) > 0 { + for iNdEx := len(m.DenomMinNotionals) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.Grants[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DenomMinNotionals[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -14665,19 +16060,9 @@ func (m *QueryGrantAuthorizationsResponse) MarshalToSizedBuffer(dAtA []byte) (in i = encodeVarintQuery(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 - } - } - { - size := m.TotalGrantAmount.Size() - i -= size - if _, err := m.TotalGrantAmount.MarshalTo(dAtA[i:]); err != nil { - return 0, err + dAtA[i] = 0xa } - i = encodeVarintQuery(dAtA, i, uint64(size)) } - i-- - dAtA[i] = 0xa return len(dAtA) - i, nil } @@ -14746,47 +16131,289 @@ func (m *QuerySubaccountOrdersResponse) Size() (n int) { return n } -func (m *SubaccountOrderbookMetadataWithMarket) Size() (n int) { +func (m *SubaccountOrderbookMetadataWithMarket) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.MarketId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + if m.IsBuy { + n += 2 + } + return n +} + +func (m *QueryExchangeParamsRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *QueryExchangeParamsResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Params.Size() + n += 1 + l + sovQuery(uint64(l)) + return n +} + +func (m *QuerySubaccountDepositsRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.SubaccountId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + if m.Subaccount != nil { + l = m.Subaccount.Size() + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QuerySubaccountDepositsResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Deposits) > 0 { + for k, v := range m.Deposits { + _ = k + _ = v + l = 0 + if v != nil { + l = v.Size() + l += 1 + sovQuery(uint64(l)) + } + mapEntrySize := 1 + len(k) + sovQuery(uint64(len(k))) + l + n += mapEntrySize + 1 + sovQuery(uint64(mapEntrySize)) + } + } + return n +} + +func (m *QueryExchangeBalancesRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *QueryExchangeBalancesResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Balances) > 0 { + for _, e := range m.Balances { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryAggregateVolumeRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Account) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryAggregateVolumeResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.AggregateVolumes) > 0 { + for _, e := range m.AggregateVolumes { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryAggregateVolumesRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Accounts) > 0 { + for _, s := range m.Accounts { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } + } + if len(m.MarketIds) > 0 { + for _, s := range m.MarketIds { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryAggregateVolumesResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.AggregateAccountVolumes) > 0 { + for _, e := range m.AggregateAccountVolumes { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + if len(m.AggregateMarketVolumes) > 0 { + for _, e := range m.AggregateMarketVolumes { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryAggregateMarketVolumeRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.MarketId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryAggregateMarketVolumeResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Volume.Size() + n += 1 + l + sovQuery(uint64(l)) + return n +} + +func (m *QueryDenomDecimalRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryDenomDecimalResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Decimal != 0 { + n += 1 + sovQuery(uint64(m.Decimal)) + } + return n +} + +func (m *QueryDenomDecimalsRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Denoms) > 0 { + for _, s := range m.Denoms { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryDenomDecimalsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovQuery(uint64(l)) - } - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - if m.IsBuy { - n += 2 + if len(m.DenomDecimals) > 0 { + for _, e := range m.DenomDecimals { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } } return n } -func (m *QueryExchangeParamsRequest) Size() (n int) { +func (m *QueryAggregateMarketVolumesRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l + if len(m.MarketIds) > 0 { + for _, s := range m.MarketIds { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } + } return n } -func (m *QueryExchangeParamsResponse) Size() (n int) { +func (m *QueryAggregateMarketVolumesResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = m.Params.Size() - n += 1 + l + sovQuery(uint64(l)) + if len(m.Volumes) > 0 { + for _, e := range m.Volumes { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } return n } -func (m *QuerySubaccountDepositsRequest) Size() (n int) { +func (m *QuerySubaccountDepositRequest) Size() (n int) { if m == nil { return 0 } @@ -14796,52 +16423,53 @@ func (m *QuerySubaccountDepositsRequest) Size() (n int) { if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - if m.Subaccount != nil { - l = m.Subaccount.Size() + l = len(m.Denom) + if l > 0 { n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QuerySubaccountDepositsResponse) Size() (n int) { +func (m *QuerySubaccountDepositResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Deposits) > 0 { - for k, v := range m.Deposits { - _ = k - _ = v - l = 0 - if v != nil { - l = v.Size() - l += 1 + sovQuery(uint64(l)) - } - mapEntrySize := 1 + len(k) + sovQuery(uint64(len(k))) + l - n += mapEntrySize + 1 + sovQuery(uint64(mapEntrySize)) - } + if m.Deposits != nil { + l = m.Deposits.Size() + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryExchangeBalancesRequest) Size() (n int) { +func (m *QuerySpotMarketsRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l + l = len(m.Status) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + if len(m.MarketIds) > 0 { + for _, s := range m.MarketIds { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } + } return n } -func (m *QueryExchangeBalancesResponse) Size() (n int) { +func (m *QuerySpotMarketsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Balances) > 0 { - for _, e := range m.Balances { + if len(m.Markets) > 0 { + for _, e := range m.Markets { l = e.Size() n += 1 + l + sovQuery(uint64(l)) } @@ -14849,69 +16477,73 @@ func (m *QueryExchangeBalancesResponse) Size() (n int) { return n } -func (m *QueryAggregateVolumeRequest) Size() (n int) { +func (m *QuerySpotMarketRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Account) + l = len(m.MarketId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryAggregateVolumeResponse) Size() (n int) { +func (m *QuerySpotMarketResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.AggregateVolumes) > 0 { - for _, e := range m.AggregateVolumes { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } + if m.Market != nil { + l = m.Market.Size() + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryAggregateVolumesRequest) Size() (n int) { +func (m *QuerySpotOrderbookRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Accounts) > 0 { - for _, s := range m.Accounts { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } + l = len(m.MarketId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } - if len(m.MarketIds) > 0 { - for _, s := range m.MarketIds { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } + if m.Limit != 0 { + n += 1 + sovQuery(uint64(m.Limit)) + } + if m.OrderSide != 0 { + n += 1 + sovQuery(uint64(m.OrderSide)) + } + if m.LimitCumulativeNotional != nil { + l = m.LimitCumulativeNotional.Size() + n += 1 + l + sovQuery(uint64(l)) + } + if m.LimitCumulativeQuantity != nil { + l = m.LimitCumulativeQuantity.Size() + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryAggregateVolumesResponse) Size() (n int) { +func (m *QuerySpotOrderbookResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.AggregateAccountVolumes) > 0 { - for _, e := range m.AggregateAccountVolumes { + if len(m.BuysPriceLevel) > 0 { + for _, e := range m.BuysPriceLevel { l = e.Size() n += 1 + l + sovQuery(uint64(l)) } } - if len(m.AggregateMarketVolumes) > 0 { - for _, e := range m.AggregateMarketVolumes { + if len(m.SellsPriceLevel) > 0 { + for _, e := range m.SellsPriceLevel { l = e.Size() n += 1 + l + sovQuery(uint64(l)) } @@ -14919,63 +16551,105 @@ func (m *QueryAggregateVolumesResponse) Size() (n int) { return n } -func (m *QueryAggregateMarketVolumeRequest) Size() (n int) { +func (m *FullSpotMarket) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) + if m.Market != nil { + l = m.Market.Size() + n += 1 + l + sovQuery(uint64(l)) + } + if m.MidPriceAndTob != nil { + l = m.MidPriceAndTob.Size() + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryFullSpotMarketsRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Status) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } + if len(m.MarketIds) > 0 { + for _, s := range m.MarketIds { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } + } + if m.WithMidPriceAndTob { + n += 2 + } return n } -func (m *QueryAggregateMarketVolumeResponse) Size() (n int) { +func (m *QueryFullSpotMarketsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = m.Volume.Size() - n += 1 + l + sovQuery(uint64(l)) + if len(m.Markets) > 0 { + for _, e := range m.Markets { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } return n } -func (m *QueryDenomDecimalRequest) Size() (n int) { +func (m *QueryFullSpotMarketRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Denom) + l = len(m.MarketId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } + if m.WithMidPriceAndTob { + n += 2 + } return n } -func (m *QueryDenomDecimalResponse) Size() (n int) { +func (m *QueryFullSpotMarketResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.Decimal != 0 { - n += 1 + sovQuery(uint64(m.Decimal)) + if m.Market != nil { + l = m.Market.Size() + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryDenomDecimalsRequest) Size() (n int) { +func (m *QuerySpotOrdersByHashesRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Denoms) > 0 { - for _, s := range m.Denoms { + l = len(m.MarketId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.SubaccountId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + if len(m.OrderHashes) > 0 { + for _, s := range m.OrderHashes { l = len(s) n += 1 + l + sovQuery(uint64(l)) } @@ -14983,14 +16657,14 @@ func (m *QueryDenomDecimalsRequest) Size() (n int) { return n } -func (m *QueryDenomDecimalsResponse) Size() (n int) { +func (m *QuerySpotOrdersByHashesResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.DenomDecimals) > 0 { - for _, e := range m.DenomDecimals { + if len(m.Orders) > 0 { + for _, e := range m.Orders { l = e.Size() n += 1 + l + sovQuery(uint64(l)) } @@ -14998,101 +16672,131 @@ func (m *QueryDenomDecimalsResponse) Size() (n int) { return n } -func (m *QueryAggregateMarketVolumesRequest) Size() (n int) { +func (m *QueryTraderSpotOrdersRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.MarketIds) > 0 { - for _, s := range m.MarketIds { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } + l = len(m.MarketId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.SubaccountId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryAggregateMarketVolumesResponse) Size() (n int) { +func (m *QueryAccountAddressSpotOrdersRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Volumes) > 0 { - for _, e := range m.Volumes { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } + l = len(m.MarketId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.AccountAddress) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QuerySubaccountDepositRequest) Size() (n int) { +func (m *TrimmedSpotLimitOrder) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.SubaccountId) + l = m.Price.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.Quantity.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.Fillable.Size() + n += 1 + l + sovQuery(uint64(l)) + if m.IsBuy { + n += 2 + } + l = len(m.OrderHash) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - l = len(m.Denom) + l = len(m.Cid) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QuerySubaccountDepositResponse) Size() (n int) { +func (m *QueryTraderSpotOrdersResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Orders) > 0 { + for _, e := range m.Orders { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryAccountAddressSpotOrdersResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.Deposits != nil { - l = m.Deposits.Size() - n += 1 + l + sovQuery(uint64(l)) + if len(m.Orders) > 0 { + for _, e := range m.Orders { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } } return n } -func (m *QuerySpotMarketsRequest) Size() (n int) { +func (m *QuerySpotMidPriceAndTOBRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Status) + l = len(m.MarketId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - if len(m.MarketIds) > 0 { - for _, s := range m.MarketIds { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } - } return n } -func (m *QuerySpotMarketsResponse) Size() (n int) { +func (m *QuerySpotMidPriceAndTOBResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Markets) > 0 { - for _, e := range m.Markets { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } + if m.MidPrice != nil { + l = m.MidPrice.Size() + n += 1 + l + sovQuery(uint64(l)) + } + if m.BestBuyPrice != nil { + l = m.BestBuyPrice.Size() + n += 1 + l + sovQuery(uint64(l)) + } + if m.BestSellPrice != nil { + l = m.BestSellPrice.Size() + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QuerySpotMarketRequest) Size() (n int) { +func (m *QueryDerivativeMidPriceAndTOBRequest) Size() (n int) { if m == nil { return 0 } @@ -15105,20 +16809,28 @@ func (m *QuerySpotMarketRequest) Size() (n int) { return n } -func (m *QuerySpotMarketResponse) Size() (n int) { +func (m *QueryDerivativeMidPriceAndTOBResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.Market != nil { - l = m.Market.Size() + if m.MidPrice != nil { + l = m.MidPrice.Size() + n += 1 + l + sovQuery(uint64(l)) + } + if m.BestBuyPrice != nil { + l = m.BestBuyPrice.Size() + n += 1 + l + sovQuery(uint64(l)) + } + if m.BestSellPrice != nil { + l = m.BestSellPrice.Size() n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QuerySpotOrderbookRequest) Size() (n int) { +func (m *QueryDerivativeOrderbookRequest) Size() (n int) { if m == nil { return 0 } @@ -15131,21 +16843,14 @@ func (m *QuerySpotOrderbookRequest) Size() (n int) { if m.Limit != 0 { n += 1 + sovQuery(uint64(m.Limit)) } - if m.OrderSide != 0 { - n += 1 + sovQuery(uint64(m.OrderSide)) - } if m.LimitCumulativeNotional != nil { l = m.LimitCumulativeNotional.Size() n += 1 + l + sovQuery(uint64(l)) } - if m.LimitCumulativeQuantity != nil { - l = m.LimitCumulativeQuantity.Size() - n += 1 + l + sovQuery(uint64(l)) - } return n } -func (m *QuerySpotOrderbookResponse) Size() (n int) { +func (m *QueryDerivativeOrderbookResponse) Size() (n int) { if m == nil { return 0 } @@ -15166,61 +16871,78 @@ func (m *QuerySpotOrderbookResponse) Size() (n int) { return n } -func (m *FullSpotMarket) Size() (n int) { +func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.Market != nil { - l = m.Market.Size() + l = len(m.MarketId) + if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - if m.MidPriceAndTob != nil { - l = m.MidPriceAndTob.Size() + l = len(m.SubaccountId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = m.BaseAmount.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.QuoteAmount.Size() + n += 1 + l + sovQuery(uint64(l)) + if m.Strategy != 0 { + n += 1 + sovQuery(uint64(m.Strategy)) + } + if m.ReferencePrice != nil { + l = m.ReferencePrice.Size() n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryFullSpotMarketsRequest) Size() (n int) { +func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Status) + l = len(m.MarketId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - if len(m.MarketIds) > 0 { - for _, s := range m.MarketIds { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } + l = len(m.SubaccountId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } - if m.WithMidPriceAndTob { - n += 2 + l = m.QuoteAmount.Size() + n += 1 + l + sovQuery(uint64(l)) + if m.Strategy != 0 { + n += 1 + sovQuery(uint64(m.Strategy)) + } + if m.ReferencePrice != nil { + l = m.ReferencePrice.Size() + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryFullSpotMarketsResponse) Size() (n int) { +func (m *QueryTraderDerivativeOrdersRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Markets) > 0 { - for _, e := range m.Markets { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } + l = len(m.MarketId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.SubaccountId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryFullSpotMarketRequest) Size() (n int) { +func (m *QueryAccountAddressDerivativeOrdersRequest) Size() (n int) { if m == nil { return 0 } @@ -15230,49 +16952,57 @@ func (m *QueryFullSpotMarketRequest) Size() (n int) { if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - if m.WithMidPriceAndTob { - n += 2 + l = len(m.AccountAddress) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryFullSpotMarketResponse) Size() (n int) { +func (m *TrimmedDerivativeLimitOrder) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.Market != nil { - l = m.Market.Size() + l = m.Price.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.Quantity.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.Margin.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.Fillable.Size() + n += 1 + l + sovQuery(uint64(l)) + if m.IsBuy { + n += 2 + } + l = len(m.OrderHash) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.Cid) + if l > 0 { n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QuerySpotOrdersByHashesRequest) Size() (n int) { +func (m *QueryTraderDerivativeOrdersResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - l = len(m.SubaccountId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - if len(m.OrderHashes) > 0 { - for _, s := range m.OrderHashes { - l = len(s) + if len(m.Orders) > 0 { + for _, e := range m.Orders { + l = e.Size() n += 1 + l + sovQuery(uint64(l)) } } return n } -func (m *QuerySpotOrdersByHashesResponse) Size() (n int) { +func (m *QueryAccountAddressDerivativeOrdersResponse) Size() (n int) { if m == nil { return 0 } @@ -15287,7 +17017,7 @@ func (m *QuerySpotOrdersByHashesResponse) Size() (n int) { return n } -func (m *QueryTraderSpotOrdersRequest) Size() (n int) { +func (m *QueryDerivativeOrdersByHashesRequest) Size() (n int) { if m == nil { return 0 } @@ -15301,27 +17031,53 @@ func (m *QueryTraderSpotOrdersRequest) Size() (n int) { if l > 0 { n += 1 + l + sovQuery(uint64(l)) } + if len(m.OrderHashes) > 0 { + for _, s := range m.OrderHashes { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } + } return n } -func (m *QueryAccountAddressSpotOrdersRequest) Size() (n int) { +func (m *QueryDerivativeOrdersByHashesResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + if len(m.Orders) > 0 { + for _, e := range m.Orders { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } } - l = len(m.AccountAddress) + return n +} + +func (m *QueryDerivativeMarketsRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Status) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } + if len(m.MarketIds) > 0 { + for _, s := range m.MarketIds { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } + } + if m.WithMidPriceAndTob { + n += 2 + } return n } -func (m *TrimmedSpotLimitOrder) Size() (n int) { +func (m *PriceLevel) Size() (n int) { if m == nil { return 0 } @@ -15331,87 +17087,88 @@ func (m *TrimmedSpotLimitOrder) Size() (n int) { n += 1 + l + sovQuery(uint64(l)) l = m.Quantity.Size() n += 1 + l + sovQuery(uint64(l)) - l = m.Fillable.Size() - n += 1 + l + sovQuery(uint64(l)) - if m.IsBuy { - n += 2 + return n +} + +func (m *PerpetualMarketState) Size() (n int) { + if m == nil { + return 0 } - l = len(m.OrderHash) - if l > 0 { + var l int + _ = l + if m.MarketInfo != nil { + l = m.MarketInfo.Size() n += 1 + l + sovQuery(uint64(l)) } - l = len(m.Cid) - if l > 0 { + if m.FundingInfo != nil { + l = m.FundingInfo.Size() n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryTraderSpotOrdersResponse) Size() (n int) { +func (m *FullDerivativeMarket) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Orders) > 0 { - for _, e := range m.Orders { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } + if m.Market != nil { + l = m.Market.Size() + n += 1 + l + sovQuery(uint64(l)) + } + if m.Info != nil { + n += m.Info.Size() + } + l = m.MarkPrice.Size() + n += 1 + l + sovQuery(uint64(l)) + if m.MidPriceAndTob != nil { + l = m.MidPriceAndTob.Size() + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryAccountAddressSpotOrdersResponse) Size() (n int) { +func (m *FullDerivativeMarket_PerpetualInfo) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Orders) > 0 { - for _, e := range m.Orders { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } + if m.PerpetualInfo != nil { + l = m.PerpetualInfo.Size() + n += 1 + l + sovQuery(uint64(l)) } return n } - -func (m *QuerySpotMidPriceAndTOBRequest) Size() (n int) { +func (m *FullDerivativeMarket_FuturesInfo) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) - if l > 0 { + if m.FuturesInfo != nil { + l = m.FuturesInfo.Size() n += 1 + l + sovQuery(uint64(l)) } return n } - -func (m *QuerySpotMidPriceAndTOBResponse) Size() (n int) { +func (m *QueryDerivativeMarketsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.MidPrice != nil { - l = m.MidPrice.Size() - n += 1 + l + sovQuery(uint64(l)) - } - if m.BestBuyPrice != nil { - l = m.BestBuyPrice.Size() - n += 1 + l + sovQuery(uint64(l)) - } - if m.BestSellPrice != nil { - l = m.BestSellPrice.Size() - n += 1 + l + sovQuery(uint64(l)) + if len(m.Markets) > 0 { + for _, e := range m.Markets { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } } return n } -func (m *QueryDerivativeMidPriceAndTOBRequest) Size() (n int) { +func (m *QueryDerivativeMarketRequest) Size() (n int) { if m == nil { return 0 } @@ -15424,28 +17181,20 @@ func (m *QueryDerivativeMidPriceAndTOBRequest) Size() (n int) { return n } -func (m *QueryDerivativeMidPriceAndTOBResponse) Size() (n int) { +func (m *QueryDerivativeMarketResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.MidPrice != nil { - l = m.MidPrice.Size() - n += 1 + l + sovQuery(uint64(l)) - } - if m.BestBuyPrice != nil { - l = m.BestBuyPrice.Size() - n += 1 + l + sovQuery(uint64(l)) - } - if m.BestSellPrice != nil { - l = m.BestSellPrice.Size() + if m.Market != nil { + l = m.Market.Size() n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryDerivativeOrderbookRequest) Size() (n int) { +func (m *QueryDerivativeMarketAddressRequest) Size() (n int) { if m == nil { return 0 } @@ -15455,161 +17204,107 @@ func (m *QueryDerivativeOrderbookRequest) Size() (n int) { if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - if m.Limit != 0 { - n += 1 + sovQuery(uint64(m.Limit)) - } - if m.LimitCumulativeNotional != nil { - l = m.LimitCumulativeNotional.Size() - n += 1 + l + sovQuery(uint64(l)) - } return n } -func (m *QueryDerivativeOrderbookResponse) Size() (n int) { +func (m *QueryDerivativeMarketAddressResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.BuysPriceLevel) > 0 { - for _, e := range m.BuysPriceLevel { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } + l = len(m.Address) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } - if len(m.SellsPriceLevel) > 0 { - for _, e := range m.SellsPriceLevel { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } + l = len(m.SubaccountId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) Size() (n int) { +func (m *QuerySubaccountTradeNonceRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } l = len(m.SubaccountId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - l = m.BaseAmount.Size() - n += 1 + l + sovQuery(uint64(l)) - l = m.QuoteAmount.Size() - n += 1 + l + sovQuery(uint64(l)) - if m.Strategy != 0 { - n += 1 + sovQuery(uint64(m.Strategy)) - } - if m.ReferencePrice != nil { - l = m.ReferencePrice.Size() - n += 1 + l + sovQuery(uint64(l)) - } return n } -func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) Size() (n int) { +func (m *QuerySubaccountPositionsRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } l = len(m.SubaccountId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - l = m.QuoteAmount.Size() - n += 1 + l + sovQuery(uint64(l)) - if m.Strategy != 0 { - n += 1 + sovQuery(uint64(m.Strategy)) - } - if m.ReferencePrice != nil { - l = m.ReferencePrice.Size() - n += 1 + l + sovQuery(uint64(l)) - } return n } -func (m *QueryTraderDerivativeOrdersRequest) Size() (n int) { +func (m *QuerySubaccountPositionInMarketRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) + l = len(m.SubaccountId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - l = len(m.SubaccountId) + l = len(m.MarketId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryAccountAddressDerivativeOrdersRequest) Size() (n int) { +func (m *QuerySubaccountEffectivePositionInMarketRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) + l = len(m.SubaccountId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - l = len(m.AccountAddress) + l = len(m.MarketId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *TrimmedDerivativeLimitOrder) Size() (n int) { +func (m *QuerySubaccountOrderMetadataRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = m.Price.Size() - n += 1 + l + sovQuery(uint64(l)) - l = m.Quantity.Size() - n += 1 + l + sovQuery(uint64(l)) - l = m.Margin.Size() - n += 1 + l + sovQuery(uint64(l)) - l = m.Fillable.Size() - n += 1 + l + sovQuery(uint64(l)) - if m.IsBuy { - n += 2 - } - l = len(m.OrderHash) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - l = len(m.Cid) + l = len(m.SubaccountId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryTraderDerivativeOrdersResponse) Size() (n int) { +func (m *QuerySubaccountPositionsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Orders) > 0 { - for _, e := range m.Orders { + if len(m.State) > 0 { + for _, e := range m.State { l = e.Size() n += 1 + l + sovQuery(uint64(l)) } @@ -15617,309 +17312,263 @@ func (m *QueryTraderDerivativeOrdersResponse) Size() (n int) { return n } -func (m *QueryAccountAddressDerivativeOrdersResponse) Size() (n int) { +func (m *QuerySubaccountPositionInMarketResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Orders) > 0 { - for _, e := range m.Orders { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } + if m.State != nil { + l = m.State.Size() + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryDerivativeOrdersByHashesRequest) Size() (n int) { +func (m *EffectivePosition) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - l = len(m.SubaccountId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - if len(m.OrderHashes) > 0 { - for _, s := range m.OrderHashes { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } + if m.IsLong { + n += 2 } + l = m.Quantity.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.EntryPrice.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.EffectiveMargin.Size() + n += 1 + l + sovQuery(uint64(l)) return n } -func (m *QueryDerivativeOrdersByHashesResponse) Size() (n int) { +func (m *QuerySubaccountEffectivePositionInMarketResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Orders) > 0 { - for _, e := range m.Orders { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } + if m.State != nil { + l = m.State.Size() + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryDerivativeMarketsRequest) Size() (n int) { +func (m *QueryPerpetualMarketInfoRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Status) + l = len(m.MarketId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - if len(m.MarketIds) > 0 { - for _, s := range m.MarketIds { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } - } - if m.WithMidPriceAndTob { - n += 2 - } return n } -func (m *PriceLevel) Size() (n int) { +func (m *QueryPerpetualMarketInfoResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = m.Price.Size() - n += 1 + l + sovQuery(uint64(l)) - l = m.Quantity.Size() + l = m.Info.Size() n += 1 + l + sovQuery(uint64(l)) return n } -func (m *PerpetualMarketState) Size() (n int) { +func (m *QueryExpiryFuturesMarketInfoRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.MarketInfo != nil { - l = m.MarketInfo.Size() - n += 1 + l + sovQuery(uint64(l)) - } - if m.FundingInfo != nil { - l = m.FundingInfo.Size() + l = len(m.MarketId) + if l > 0 { n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *FullDerivativeMarket) Size() (n int) { +func (m *QueryExpiryFuturesMarketInfoResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.Market != nil { - l = m.Market.Size() - n += 1 + l + sovQuery(uint64(l)) - } - if m.Info != nil { - n += m.Info.Size() - } - l = m.MarkPrice.Size() + l = m.Info.Size() n += 1 + l + sovQuery(uint64(l)) - if m.MidPriceAndTob != nil { - l = m.MidPriceAndTob.Size() - n += 1 + l + sovQuery(uint64(l)) - } return n } -func (m *FullDerivativeMarket_PerpetualInfo) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.PerpetualInfo != nil { - l = m.PerpetualInfo.Size() - n += 1 + l + sovQuery(uint64(l)) - } - return n -} -func (m *FullDerivativeMarket_FuturesInfo) Size() (n int) { +func (m *QueryPerpetualMarketFundingRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.FuturesInfo != nil { - l = m.FuturesInfo.Size() + l = len(m.MarketId) + if l > 0 { n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryDerivativeMarketsResponse) Size() (n int) { + +func (m *QueryPerpetualMarketFundingResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Markets) > 0 { - for _, e := range m.Markets { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } - } + l = m.State.Size() + n += 1 + l + sovQuery(uint64(l)) return n } -func (m *QueryDerivativeMarketRequest) Size() (n int) { +func (m *QuerySubaccountOrderMetadataResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + if len(m.Metadata) > 0 { + for _, e := range m.Metadata { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } } return n } -func (m *QueryDerivativeMarketResponse) Size() (n int) { +func (m *QuerySubaccountTradeNonceResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.Market != nil { - l = m.Market.Size() - n += 1 + l + sovQuery(uint64(l)) + if m.Nonce != 0 { + n += 1 + sovQuery(uint64(m.Nonce)) } return n } -func (m *QueryDerivativeMarketAddressRequest) Size() (n int) { +func (m *QueryModuleStateRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } return n } -func (m *QueryDerivativeMarketAddressResponse) Size() (n int) { +func (m *QueryModuleStateResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Address) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - l = len(m.SubaccountId) - if l > 0 { + if m.State != nil { + l = m.State.Size() n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QuerySubaccountTradeNonceRequest) Size() (n int) { +func (m *QueryPositionsRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.SubaccountId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } return n } -func (m *QuerySubaccountPositionsRequest) Size() (n int) { +func (m *QueryPositionsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.SubaccountId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + if len(m.State) > 0 { + for _, e := range m.State { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } } return n } -func (m *QuerySubaccountPositionInMarketRequest) Size() (n int) { +func (m *QueryTradeRewardPointsRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.SubaccountId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + if len(m.Accounts) > 0 { + for _, s := range m.Accounts { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } } - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + if m.PendingPoolTimestamp != 0 { + n += 1 + sovQuery(uint64(m.PendingPoolTimestamp)) } return n } -func (m *QuerySubaccountEffectivePositionInMarketRequest) Size() (n int) { +func (m *QueryTradeRewardPointsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.SubaccountId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + if len(m.AccountTradeRewardPoints) > 0 { + for _, e := range m.AccountTradeRewardPoints { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } } return n } -func (m *QuerySubaccountOrderMetadataRequest) Size() (n int) { +func (m *QueryTradeRewardCampaignRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.SubaccountId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } return n } -func (m *QuerySubaccountPositionsResponse) Size() (n int) { +func (m *QueryTradeRewardCampaignResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.State) > 0 { - for _, e := range m.State { + if m.TradingRewardCampaignInfo != nil { + l = m.TradingRewardCampaignInfo.Size() + n += 1 + l + sovQuery(uint64(l)) + } + if len(m.TradingRewardPoolCampaignSchedule) > 0 { + for _, e := range m.TradingRewardPoolCampaignSchedule { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + l = m.TotalTradeRewardPoints.Size() + n += 1 + l + sovQuery(uint64(l)) + if len(m.PendingTradingRewardPoolCampaignSchedule) > 0 { + for _, e := range m.PendingTradingRewardPoolCampaignSchedule { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + if len(m.PendingTotalTradeRewardPoints) > 0 { + for _, e := range m.PendingTotalTradeRewardPoints { l = e.Size() n += 1 + l + sovQuery(uint64(l)) } @@ -15927,150 +17576,165 @@ func (m *QuerySubaccountPositionsResponse) Size() (n int) { return n } -func (m *QuerySubaccountPositionInMarketResponse) Size() (n int) { +func (m *QueryIsOptedOutOfRewardsRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.State != nil { - l = m.State.Size() + l = len(m.Account) + if l > 0 { n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *EffectivePosition) Size() (n int) { +func (m *QueryIsOptedOutOfRewardsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.IsLong { + if m.IsOptedOut { n += 2 } - l = m.Quantity.Size() - n += 1 + l + sovQuery(uint64(l)) - l = m.EntryPrice.Size() - n += 1 + l + sovQuery(uint64(l)) - l = m.EffectiveMargin.Size() - n += 1 + l + sovQuery(uint64(l)) return n } -func (m *QuerySubaccountEffectivePositionInMarketResponse) Size() (n int) { +func (m *QueryOptedOutOfRewardsAccountsRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.State != nil { - l = m.State.Size() - n += 1 + l + sovQuery(uint64(l)) - } return n } -func (m *QueryPerpetualMarketInfoRequest) Size() (n int) { +func (m *QueryOptedOutOfRewardsAccountsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + if len(m.Accounts) > 0 { + for _, s := range m.Accounts { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } } return n } -func (m *QueryPerpetualMarketInfoResponse) Size() (n int) { +func (m *QueryFeeDiscountAccountInfoRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = m.Info.Size() - n += 1 + l + sovQuery(uint64(l)) + l = len(m.Account) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } return n } -func (m *QueryExpiryFuturesMarketInfoRequest) Size() (n int) { +func (m *QueryFeeDiscountAccountInfoResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) - if l > 0 { + if m.TierLevel != 0 { + n += 1 + sovQuery(uint64(m.TierLevel)) + } + if m.AccountInfo != nil { + l = m.AccountInfo.Size() + n += 1 + l + sovQuery(uint64(l)) + } + if m.AccountTtl != nil { + l = m.AccountTtl.Size() n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryExpiryFuturesMarketInfoResponse) Size() (n int) { +func (m *QueryFeeDiscountScheduleRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = m.Info.Size() - n += 1 + l + sovQuery(uint64(l)) return n } -func (m *QueryPerpetualMarketFundingRequest) Size() (n int) { +func (m *QueryFeeDiscountScheduleResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) - if l > 0 { + if m.FeeDiscountSchedule != nil { + l = m.FeeDiscountSchedule.Size() n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryPerpetualMarketFundingResponse) Size() (n int) { +func (m *QueryBalanceMismatchesRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = m.State.Size() - n += 1 + l + sovQuery(uint64(l)) + if m.DustFactor != 0 { + n += 1 + sovQuery(uint64(m.DustFactor)) + } return n } -func (m *QuerySubaccountOrderMetadataResponse) Size() (n int) { +func (m *BalanceMismatch) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Metadata) > 0 { - for _, e := range m.Metadata { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } + l = len(m.SubaccountId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } + l = m.Available.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.Total.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.BalanceHold.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.ExpectedTotal.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.Difference.Size() + n += 1 + l + sovQuery(uint64(l)) return n } -func (m *QuerySubaccountTradeNonceResponse) Size() (n int) { +func (m *QueryBalanceMismatchesResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.Nonce != 0 { - n += 1 + sovQuery(uint64(m.Nonce)) + if len(m.BalanceMismatches) > 0 { + for _, e := range m.BalanceMismatches { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } } return n } -func (m *QueryModuleStateRequest) Size() (n int) { +func (m *QueryBalanceWithBalanceHoldsRequest) Size() (n int) { if m == nil { return 0 } @@ -16079,36 +17743,37 @@ func (m *QueryModuleStateRequest) Size() (n int) { return n } -func (m *QueryModuleStateResponse) Size() (n int) { +func (m *BalanceWithMarginHold) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.State != nil { - l = m.State.Size() + l = len(m.SubaccountId) + if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - return n -} - -func (m *QueryPositionsRequest) Size() (n int) { - if m == nil { - return 0 + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } - var l int - _ = l + l = m.Available.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.Total.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.BalanceHold.Size() + n += 1 + l + sovQuery(uint64(l)) return n } -func (m *QueryPositionsResponse) Size() (n int) { +func (m *QueryBalanceWithBalanceHoldsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.State) > 0 { - for _, e := range m.State { + if len(m.BalanceWithBalanceHolds) > 0 { + for _, e := range m.BalanceWithBalanceHolds { l = e.Size() n += 1 + l + sovQuery(uint64(l)) } @@ -16116,32 +17781,38 @@ func (m *QueryPositionsResponse) Size() (n int) { return n } -func (m *QueryTradeRewardPointsRequest) Size() (n int) { +func (m *QueryFeeDiscountTierStatisticsRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *TierStatistic) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Accounts) > 0 { - for _, s := range m.Accounts { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } + if m.Tier != 0 { + n += 1 + sovQuery(uint64(m.Tier)) } - if m.PendingPoolTimestamp != 0 { - n += 1 + sovQuery(uint64(m.PendingPoolTimestamp)) + if m.Count != 0 { + n += 1 + sovQuery(uint64(m.Count)) } return n } -func (m *QueryTradeRewardPointsResponse) Size() (n int) { +func (m *QueryFeeDiscountTierStatisticsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.AccountTradeRewardPoints) > 0 { - for _, e := range m.AccountTradeRewardPoints { + if len(m.Statistics) > 0 { + for _, e := range m.Statistics { l = e.Size() n += 1 + l + sovQuery(uint64(l)) } @@ -16149,7 +17820,7 @@ func (m *QueryTradeRewardPointsResponse) Size() (n int) { return n } -func (m *QueryTradeRewardCampaignRequest) Size() (n int) { +func (m *MitoVaultInfosRequest) Size() (n int) { if m == nil { return 0 } @@ -16158,156 +17829,183 @@ func (m *QueryTradeRewardCampaignRequest) Size() (n int) { return n } -func (m *QueryTradeRewardCampaignResponse) Size() (n int) { +func (m *MitoVaultInfosResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.TradingRewardCampaignInfo != nil { - l = m.TradingRewardCampaignInfo.Size() - n += 1 + l + sovQuery(uint64(l)) + if len(m.MasterAddresses) > 0 { + for _, s := range m.MasterAddresses { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } } - if len(m.TradingRewardPoolCampaignSchedule) > 0 { - for _, e := range m.TradingRewardPoolCampaignSchedule { - l = e.Size() + if len(m.DerivativeAddresses) > 0 { + for _, s := range m.DerivativeAddresses { + l = len(s) n += 1 + l + sovQuery(uint64(l)) } } - l = m.TotalTradeRewardPoints.Size() - n += 1 + l + sovQuery(uint64(l)) - if len(m.PendingTradingRewardPoolCampaignSchedule) > 0 { - for _, e := range m.PendingTradingRewardPoolCampaignSchedule { - l = e.Size() + if len(m.SpotAddresses) > 0 { + for _, s := range m.SpotAddresses { + l = len(s) n += 1 + l + sovQuery(uint64(l)) } } - if len(m.PendingTotalTradeRewardPoints) > 0 { - for _, e := range m.PendingTotalTradeRewardPoints { - l = e.Size() + if len(m.Cw20Addresses) > 0 { + for _, s := range m.Cw20Addresses { + l = len(s) n += 1 + l + sovQuery(uint64(l)) } } return n } -func (m *QueryIsOptedOutOfRewardsRequest) Size() (n int) { +func (m *QueryMarketIDFromVaultRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Account) + l = len(m.VaultAddress) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryIsOptedOutOfRewardsResponse) Size() (n int) { +func (m *QueryMarketIDFromVaultResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.IsOptedOut { - n += 2 + l = len(m.MarketId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryOptedOutOfRewardsAccountsRequest) Size() (n int) { +func (m *QueryHistoricalTradeRecordsRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l + l = len(m.MarketId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } return n } -func (m *QueryOptedOutOfRewardsAccountsResponse) Size() (n int) { +func (m *QueryHistoricalTradeRecordsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Accounts) > 0 { - for _, s := range m.Accounts { - l = len(s) + if len(m.TradeRecords) > 0 { + for _, e := range m.TradeRecords { + l = e.Size() n += 1 + l + sovQuery(uint64(l)) } } return n } -func (m *QueryFeeDiscountAccountInfoRequest) Size() (n int) { +func (m *TradeHistoryOptions) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Account) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + if m.TradeGroupingSec != 0 { + n += 1 + sovQuery(uint64(m.TradeGroupingSec)) + } + if m.MaxAge != 0 { + n += 1 + sovQuery(uint64(m.MaxAge)) + } + if m.IncludeRawHistory { + n += 2 + } + if m.IncludeMetadata { + n += 2 } return n } -func (m *QueryFeeDiscountAccountInfoResponse) Size() (n int) { +func (m *QueryMarketVolatilityRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.TierLevel != 0 { - n += 1 + sovQuery(uint64(m.TierLevel)) - } - if m.AccountInfo != nil { - l = m.AccountInfo.Size() + l = len(m.MarketId) + if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - if m.AccountTtl != nil { - l = m.AccountTtl.Size() + if m.TradeHistoryOptions != nil { + l = m.TradeHistoryOptions.Size() n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryFeeDiscountScheduleRequest) Size() (n int) { +func (m *QueryMarketVolatilityResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l + if m.Volatility != nil { + l = m.Volatility.Size() + n += 1 + l + sovQuery(uint64(l)) + } + if m.HistoryMetadata != nil { + l = m.HistoryMetadata.Size() + n += 1 + l + sovQuery(uint64(l)) + } + if len(m.RawHistory) > 0 { + for _, e := range m.RawHistory { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } return n } -func (m *QueryFeeDiscountScheduleResponse) Size() (n int) { +func (m *QueryBinaryMarketsRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.FeeDiscountSchedule != nil { - l = m.FeeDiscountSchedule.Size() + l = len(m.Status) + if l > 0 { n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryBalanceMismatchesRequest) Size() (n int) { +func (m *QueryBinaryMarketsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.DustFactor != 0 { - n += 1 + sovQuery(uint64(m.DustFactor)) + if len(m.Markets) > 0 { + for _, e := range m.Markets { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } } return n } -func (m *BalanceMismatch) Size() (n int) { +func (m *QueryTraderDerivativeConditionalOrdersRequest) Size() (n int) { if m == nil { return 0 } @@ -16317,31 +18015,52 @@ func (m *BalanceMismatch) Size() (n int) { if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - l = len(m.Denom) + l = len(m.MarketId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - l = m.Available.Size() - n += 1 + l + sovQuery(uint64(l)) - l = m.Total.Size() + return n +} + +func (m *TrimmedDerivativeConditionalOrder) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Price.Size() n += 1 + l + sovQuery(uint64(l)) - l = m.BalanceHold.Size() + l = m.Quantity.Size() n += 1 + l + sovQuery(uint64(l)) - l = m.ExpectedTotal.Size() + l = m.Margin.Size() n += 1 + l + sovQuery(uint64(l)) - l = m.Difference.Size() + l = m.TriggerPrice.Size() n += 1 + l + sovQuery(uint64(l)) + if m.IsBuy { + n += 2 + } + if m.IsLimit { + n += 2 + } + l = len(m.OrderHash) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.Cid) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } return n } -func (m *QueryBalanceMismatchesResponse) Size() (n int) { +func (m *QueryTraderDerivativeConditionalOrdersResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.BalanceMismatches) > 0 { - for _, e := range m.BalanceMismatches { + if len(m.Orders) > 0 { + for _, e := range m.Orders { l = e.Size() n += 1 + l + sovQuery(uint64(l)) } @@ -16349,46 +18068,67 @@ func (m *QueryBalanceMismatchesResponse) Size() (n int) { return n } -func (m *QueryBalanceWithBalanceHoldsRequest) Size() (n int) { +func (m *QueryFullSpotOrderbookRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l + l = len(m.MarketId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } return n } -func (m *BalanceWithMarginHold) Size() (n int) { +func (m *QueryFullSpotOrderbookResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.SubaccountId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + if len(m.Bids) > 0 { + for _, e := range m.Bids { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } } - l = len(m.Denom) + if len(m.Asks) > 0 { + for _, e := range m.Asks { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryFullDerivativeOrderbookRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.MarketId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - l = m.Available.Size() - n += 1 + l + sovQuery(uint64(l)) - l = m.Total.Size() - n += 1 + l + sovQuery(uint64(l)) - l = m.BalanceHold.Size() - n += 1 + l + sovQuery(uint64(l)) return n } -func (m *QueryBalanceWithBalanceHoldsResponse) Size() (n int) { +func (m *QueryFullDerivativeOrderbookResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.BalanceWithBalanceHolds) > 0 { - for _, e := range m.BalanceWithBalanceHolds { + if len(m.Bids) > 0 { + for _, e := range m.Bids { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + if len(m.Asks) > 0 { + for _, e := range m.Asks { l = e.Size() n += 1 + l + sovQuery(uint64(l)) } @@ -16396,134 +18136,132 @@ func (m *QueryBalanceWithBalanceHoldsResponse) Size() (n int) { return n } -func (m *QueryFeeDiscountTierStatisticsRequest) Size() (n int) { +func (m *TrimmedLimitOrder) Size() (n int) { if m == nil { return 0 } var l int _ = l + l = m.Price.Size() + n += 1 + l + sovQuery(uint64(l)) + l = m.Quantity.Size() + n += 1 + l + sovQuery(uint64(l)) + l = len(m.OrderHash) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.SubaccountId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } return n } -func (m *TierStatistic) Size() (n int) { +func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.Tier != 0 { - n += 1 + sovQuery(uint64(m.Tier)) - } - if m.Count != 0 { - n += 1 + sovQuery(uint64(m.Count)) + l = len(m.MarketId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryFeeDiscountTierStatisticsResponse) Size() (n int) { +func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Statistics) > 0 { - for _, e := range m.Statistics { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } - } + l = m.Multiplier.Size() + n += 1 + l + sovQuery(uint64(l)) return n } -func (m *MitoVaultInfosRequest) Size() (n int) { +func (m *QueryActiveStakeGrantRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l + l = len(m.Grantee) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } return n } -func (m *MitoVaultInfosResponse) Size() (n int) { +func (m *QueryActiveStakeGrantResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.MasterAddresses) > 0 { - for _, s := range m.MasterAddresses { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } - } - if len(m.DerivativeAddresses) > 0 { - for _, s := range m.DerivativeAddresses { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } - } - if len(m.SpotAddresses) > 0 { - for _, s := range m.SpotAddresses { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } + if m.Grant != nil { + l = m.Grant.Size() + n += 1 + l + sovQuery(uint64(l)) } - if len(m.Cw20Addresses) > 0 { - for _, s := range m.Cw20Addresses { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } + if m.EffectiveGrant != nil { + l = m.EffectiveGrant.Size() + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryMarketIDFromVaultRequest) Size() (n int) { +func (m *QueryGrantAuthorizationRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.VaultAddress) + l = len(m.Granter) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.Grantee) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryMarketIDFromVaultResponse) Size() (n int) { +func (m *QueryGrantAuthorizationResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } + l = m.Amount.Size() + n += 1 + l + sovQuery(uint64(l)) return n } -func (m *QueryHistoricalTradeRecordsRequest) Size() (n int) { +func (m *QueryGrantAuthorizationsRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) + l = len(m.Granter) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryHistoricalTradeRecordsResponse) Size() (n int) { +func (m *QueryGrantAuthorizationsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.TradeRecords) > 0 { - for _, e := range m.TradeRecords { + l = m.TotalGrantAmount.Size() + n += 1 + l + sovQuery(uint64(l)) + if len(m.Grants) > 0 { + for _, e := range m.Grants { l = e.Size() n += 1 + l + sovQuery(uint64(l)) } @@ -16531,60 +18269,47 @@ func (m *QueryHistoricalTradeRecordsResponse) Size() (n int) { return n } -func (m *TradeHistoryOptions) Size() (n int) { +func (m *QueryMarketBalanceRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.TradeGroupingSec != 0 { - n += 1 + sovQuery(uint64(m.TradeGroupingSec)) - } - if m.MaxAge != 0 { - n += 1 + sovQuery(uint64(m.MaxAge)) - } - if m.IncludeRawHistory { - n += 2 - } - if m.IncludeMetadata { - n += 2 + l = len(m.MarketId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryMarketVolatilityRequest) Size() (n int) { +func (m *QueryMarketBalanceResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - if m.TradeHistoryOptions != nil { - l = m.TradeHistoryOptions.Size() - n += 1 + l + sovQuery(uint64(l)) - } + l = m.Balance.Size() + n += 1 + l + sovQuery(uint64(l)) return n } -func (m *QueryMarketVolatilityResponse) Size() (n int) { +func (m *QueryMarketBalancesRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.Volatility != nil { - l = m.Volatility.Size() - n += 1 + l + sovQuery(uint64(l)) - } - if m.HistoryMetadata != nil { - l = m.HistoryMetadata.Size() - n += 1 + l + sovQuery(uint64(l)) + return n +} + +func (m *QueryMarketBalancesResponse) Size() (n int) { + if m == nil { + return 0 } - if len(m.RawHistory) > 0 { - for _, e := range m.RawHistory { + var l int + _ = l + if len(m.Balances) > 0 { + for _, e := range m.Balances { l = e.Size() n += 1 + l + sovQuery(uint64(l)) } @@ -16592,90 +18317,62 @@ func (m *QueryMarketVolatilityResponse) Size() (n int) { return n } -func (m *QueryBinaryMarketsRequest) Size() (n int) { +func (m *MarketBalance) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Status) + l = len(m.MarketId) if l > 0 { n += 1 + l + sovQuery(uint64(l)) } + l = m.Balance.Size() + n += 1 + l + sovQuery(uint64(l)) return n } -func (m *QueryBinaryMarketsResponse) Size() (n int) { +func (m *QueryDenomMinNotionalRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Markets) > 0 { - for _, e := range m.Markets { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } return n } -func (m *QueryTraderDerivativeConditionalOrdersRequest) Size() (n int) { +func (m *QueryDenomMinNotionalResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.SubaccountId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } + l = m.Amount.Size() + n += 1 + l + sovQuery(uint64(l)) return n } -func (m *TrimmedDerivativeConditionalOrder) Size() (n int) { +func (m *QueryDenomMinNotionalsRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = m.Price.Size() - n += 1 + l + sovQuery(uint64(l)) - l = m.Quantity.Size() - n += 1 + l + sovQuery(uint64(l)) - l = m.Margin.Size() - n += 1 + l + sovQuery(uint64(l)) - l = m.TriggerPrice.Size() - n += 1 + l + sovQuery(uint64(l)) - if m.IsBuy { - n += 2 - } - if m.IsLimit { - n += 2 - } - l = len(m.OrderHash) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - l = len(m.Cid) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } return n } -func (m *QueryTraderDerivativeConditionalOrdersResponse) Size() (n int) { +func (m *QueryDenomMinNotionalsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Orders) > 0 { - for _, e := range m.Orders { + if len(m.DenomMinNotionals) > 0 { + for _, e := range m.DenomMinNotionals { l = e.Size() n += 1 + l + sovQuery(uint64(l)) } @@ -16683,125 +18380,534 @@ func (m *QueryTraderDerivativeConditionalOrdersResponse) Size() (n int) { return n } -func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.MarketId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) +func sovQuery(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozQuery(x uint64) (n int) { + return sovQuery(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (m *Subaccount) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Subaccount: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Subaccount: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Trader", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Trader = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountNonce", wireType) + } + m.SubaccountNonce = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.SubaccountNonce |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } } - return n -} -func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) Size() (n int) { - if m == nil { - return 0 + if iNdEx > l { + return io.ErrUnexpectedEOF } - var l int - _ = l - l = m.Multiplier.Size() - n += 1 + l + sovQuery(uint64(l)) - return n + return nil } - -func (m *QueryActiveStakeGrantRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Grantee) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) +func (m *QuerySubaccountOrdersRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QuerySubaccountOrdersRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QuerySubaccountOrdersRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SubaccountId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MarketId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } } - return n -} -func (m *QueryActiveStakeGrantResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Grant != nil { - l = m.Grant.Size() - n += 1 + l + sovQuery(uint64(l)) + if iNdEx > l { + return io.ErrUnexpectedEOF } - if m.EffectiveGrant != nil { - l = m.EffectiveGrant.Size() - n += 1 + l + sovQuery(uint64(l)) + return nil +} +func (m *QuerySubaccountOrdersResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QuerySubaccountOrdersResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QuerySubaccountOrdersResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BuyOrders", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BuyOrders = append(m.BuyOrders, &SubaccountOrderData{}) + if err := m.BuyOrders[len(m.BuyOrders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SellOrders", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SellOrders = append(m.SellOrders, &SubaccountOrderData{}) + if err := m.SellOrders[len(m.SellOrders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } } - return n -} -func (m *QueryGrantAuthorizationRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Granter) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - l = len(m.Grantee) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + if iNdEx > l { + return io.ErrUnexpectedEOF } - return n + return nil } - -func (m *QueryGrantAuthorizationResponse) Size() (n int) { - if m == nil { - return 0 +func (m *SubaccountOrderbookMetadataWithMarket) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SubaccountOrderbookMetadataWithMarket: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SubaccountOrderbookMetadataWithMarket: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &SubaccountOrderbookMetadata{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MarketId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IsBuy", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IsBuy = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } } - var l int - _ = l - l = m.Amount.Size() - n += 1 + l + sovQuery(uint64(l)) - return n -} -func (m *QueryGrantAuthorizationsRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Granter) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + if iNdEx > l { + return io.ErrUnexpectedEOF } - return n + return nil } - -func (m *QueryGrantAuthorizationsResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = m.TotalGrantAmount.Size() - n += 1 + l + sovQuery(uint64(l)) - if len(m.Grants) > 0 { - for _, e := range m.Grants { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) +func (m *QueryExchangeParamsRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryExchangeParamsRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryExchangeParamsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy } } - return n -} -func sovQuery(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 -} -func sozQuery(x uint64) (n int) { - return sovQuery(uint64((x << 1) ^ uint64((int64(x) >> 63)))) + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil } -func (m *Subaccount) Unmarshal(dAtA []byte) error { +func (m *QueryExchangeParamsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -16824,17 +18930,17 @@ func (m *Subaccount) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: Subaccount: wiretype end group for non-group") + return fmt.Errorf("proto: QueryExchangeParamsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: Subaccount: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryExchangeParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Trader", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Params", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -16844,43 +18950,25 @@ func (m *Subaccount) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.Trader = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountNonce", wireType) - } - m.SubaccountNonce = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.SubaccountNonce |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } + if err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -16902,7 +18990,7 @@ func (m *Subaccount) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountOrdersRequest) Unmarshal(dAtA []byte) error { +func (m *QuerySubaccountDepositsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -16925,10 +19013,10 @@ func (m *QuerySubaccountOrdersRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountOrdersRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySubaccountDepositsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountOrdersRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySubaccountDepositsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -16965,9 +19053,9 @@ func (m *QuerySubaccountOrdersRequest) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Subaccount", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -16977,23 +19065,27 @@ func (m *QuerySubaccountOrdersRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + if m.Subaccount == nil { + m.Subaccount = &Subaccount{} + } + if err := m.Subaccount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -17016,7 +19108,7 @@ func (m *QuerySubaccountOrdersRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountOrdersResponse) Unmarshal(dAtA []byte) error { +func (m *QuerySubaccountDepositsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17039,15 +19131,15 @@ func (m *QuerySubaccountOrdersResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountOrdersResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySubaccountDepositsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountOrdersResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySubaccountDepositsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BuyOrders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Deposits", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -17074,44 +19166,105 @@ func (m *QuerySubaccountOrdersResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.BuyOrders = append(m.BuyOrders, &SubaccountOrderData{}) - if err := m.BuyOrders[len(m.BuyOrders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SellOrders", wireType) + if m.Deposits == nil { + m.Deposits = make(map[string]*Deposit) } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF + var mapkey string + var mapvalue *Deposit + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthQuery + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthQuery + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var mapmsglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + mapmsglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if mapmsglen < 0 { + return ErrInvalidLengthQuery + } + postmsgIndex := iNdEx + mapmsglen + if postmsgIndex < 0 { + return ErrInvalidLengthQuery + } + if postmsgIndex > l { + return io.ErrUnexpectedEOF + } + mapvalue = &Deposit{} + if err := mapvalue.Unmarshal(dAtA[iNdEx:postmsgIndex]); err != nil { + return err + } + iNdEx = postmsgIndex + } else { + iNdEx = entryPreIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy } } - if msglen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.SellOrders = append(m.SellOrders, &SubaccountOrderData{}) - if err := m.SellOrders[len(m.SellOrders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Deposits[mapkey] = mapvalue iNdEx = postIndex default: iNdEx = preIndex @@ -17134,7 +19287,7 @@ func (m *QuerySubaccountOrdersResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *SubaccountOrderbookMetadataWithMarket) Unmarshal(dAtA []byte) error { +func (m *QueryExchangeBalancesRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17157,53 +19310,67 @@ func (m *SubaccountOrderbookMetadataWithMarket) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SubaccountOrderbookMetadataWithMarket: wiretype end group for non-group") + return fmt.Errorf("proto: QueryExchangeBalancesRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SubaccountOrderbookMetadataWithMarket: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryExchangeBalancesRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthQuery + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err } - postIndex := iNdEx + msglen - if postIndex < 0 { + if (skippy < 0) || (iNdEx+skippy) < 0 { return ErrInvalidLengthQuery } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - if m.Metadata == nil { - m.Metadata = &SubaccountOrderbookMetadata{} + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryExchangeBalancesResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break } - iNdEx = postIndex - case 2: + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryExchangeBalancesResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryExchangeBalancesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Balances", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -17213,44 +19380,26 @@ func (m *SubaccountOrderbookMetadataWithMarket) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field IsBuy", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } + m.Balances = append(m.Balances, Balance{}) + if err := m.Balances[len(m.Balances)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.IsBuy = bool(v != 0) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -17272,7 +19421,7 @@ func (m *SubaccountOrderbookMetadataWithMarket) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryExchangeParamsRequest) Unmarshal(dAtA []byte) error { +func (m *QueryAggregateVolumeRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17295,12 +19444,44 @@ func (m *QueryExchangeParamsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryExchangeParamsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryAggregateVolumeRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryExchangeParamsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryAggregateVolumeRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Account", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Account = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -17322,7 +19503,7 @@ func (m *QueryExchangeParamsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryExchangeParamsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryAggregateVolumeResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17345,15 +19526,15 @@ func (m *QueryExchangeParamsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryExchangeParamsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryAggregateVolumeResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryExchangeParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryAggregateVolumeResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Params", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AggregateVolumes", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -17380,7 +19561,8 @@ func (m *QueryExchangeParamsResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.AggregateVolumes = append(m.AggregateVolumes, &MarketVolume{}) + if err := m.AggregateVolumes[len(m.AggregateVolumes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -17405,7 +19587,7 @@ func (m *QueryExchangeParamsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountDepositsRequest) Unmarshal(dAtA []byte) error { +func (m *QueryAggregateVolumesRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17428,15 +19610,15 @@ func (m *QuerySubaccountDepositsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountDepositsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryAggregateVolumesRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountDepositsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryAggregateVolumesRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Accounts", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -17464,13 +19646,13 @@ func (m *QuerySubaccountDepositsRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) + m.Accounts = append(m.Accounts, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Subaccount", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketIds", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -17480,27 +19662,23 @@ func (m *QuerySubaccountDepositsRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if m.Subaccount == nil { - m.Subaccount = &Subaccount{} - } - if err := m.Subaccount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MarketIds = append(m.MarketIds, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex default: iNdEx = preIndex @@ -17523,7 +19701,7 @@ func (m *QuerySubaccountDepositsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountDepositsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryAggregateVolumesResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17546,15 +19724,15 @@ func (m *QuerySubaccountDepositsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountDepositsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryAggregateVolumesResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountDepositsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryAggregateVolumesResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Deposits", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AggregateAccountVolumes", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -17581,105 +19759,44 @@ func (m *QuerySubaccountDepositsResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Deposits == nil { - m.Deposits = make(map[string]*Deposit) + m.AggregateAccountVolumes = append(m.AggregateAccountVolumes, &AggregateAccountVolumeRecord{}) + if err := m.AggregateAccountVolumes[len(m.AggregateAccountVolumes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - var mapkey string - var mapvalue *Deposit - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AggregateMarketVolumes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthQuery - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthQuery - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var mapmsglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - mapmsglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if mapmsglen < 0 { - return ErrInvalidLengthQuery - } - postmsgIndex := iNdEx + mapmsglen - if postmsgIndex < 0 { - return ErrInvalidLengthQuery - } - if postmsgIndex > l { - return io.ErrUnexpectedEOF - } - mapvalue = &Deposit{} - if err := mapvalue.Unmarshal(dAtA[iNdEx:postmsgIndex]); err != nil { - return err - } - iNdEx = postmsgIndex - } else { - iNdEx = entryPreIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break } } - m.Deposits[mapkey] = mapvalue + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AggregateMarketVolumes = append(m.AggregateMarketVolumes, &MarketVolume{}) + if err := m.AggregateMarketVolumes[len(m.AggregateMarketVolumes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -17702,7 +19819,7 @@ func (m *QuerySubaccountDepositsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryExchangeBalancesRequest) Unmarshal(dAtA []byte) error { +func (m *QueryAggregateMarketVolumeRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17725,12 +19842,44 @@ func (m *QueryExchangeBalancesRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryExchangeBalancesRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryAggregateMarketVolumeRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryExchangeBalancesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryAggregateMarketVolumeRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MarketId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -17752,7 +19901,7 @@ func (m *QueryExchangeBalancesRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryExchangeBalancesResponse) Unmarshal(dAtA []byte) error { +func (m *QueryAggregateMarketVolumeResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17775,15 +19924,15 @@ func (m *QueryExchangeBalancesResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryExchangeBalancesResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryAggregateMarketVolumeResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryExchangeBalancesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryAggregateMarketVolumeResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Balances", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Volume", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -17810,8 +19959,7 @@ func (m *QueryExchangeBalancesResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Balances = append(m.Balances, Balance{}) - if err := m.Balances[len(m.Balances)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Volume.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -17836,7 +19984,7 @@ func (m *QueryExchangeBalancesResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAggregateVolumeRequest) Unmarshal(dAtA []byte) error { +func (m *QueryDenomDecimalRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17859,15 +20007,15 @@ func (m *QueryAggregateVolumeRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAggregateVolumeRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDenomDecimalRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAggregateVolumeRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryDenomDecimalRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Account", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -17895,7 +20043,7 @@ func (m *QueryAggregateVolumeRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Account = string(dAtA[iNdEx:postIndex]) + m.Denom = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -17918,7 +20066,7 @@ func (m *QueryAggregateVolumeRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAggregateVolumeResponse) Unmarshal(dAtA []byte) error { +func (m *QueryDenomDecimalResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17941,17 +20089,17 @@ func (m *QueryAggregateVolumeResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAggregateVolumeResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDenomDecimalResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAggregateVolumeResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryDenomDecimalResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AggregateVolumes", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Decimal", wireType) } - var msglen int + m.Decimal = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -17961,26 +20109,11 @@ func (m *QueryAggregateVolumeResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + m.Decimal |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.AggregateVolumes = append(m.AggregateVolumes, &MarketVolume{}) - if err := m.AggregateVolumes[len(m.AggregateVolumes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -18002,7 +20135,7 @@ func (m *QueryAggregateVolumeResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAggregateVolumesRequest) Unmarshal(dAtA []byte) error { +func (m *QueryDenomDecimalsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18025,15 +20158,15 @@ func (m *QueryAggregateVolumesRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAggregateVolumesRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDenomDecimalsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAggregateVolumesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryDenomDecimalsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Accounts", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Denoms", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -18061,13 +20194,63 @@ func (m *QueryAggregateVolumesRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Accounts = append(m.Accounts, string(dAtA[iNdEx:postIndex])) + m.Denoms = append(m.Denoms, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 2: + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryDenomDecimalsResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryDenomDecimalsResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryDenomDecimalsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketIds", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DenomDecimals", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -18077,23 +20260,25 @@ func (m *QueryAggregateVolumesRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketIds = append(m.MarketIds, string(dAtA[iNdEx:postIndex])) + m.DenomDecimals = append(m.DenomDecimals, DenomDecimals{}) + if err := m.DenomDecimals[len(m.DenomDecimals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -18116,7 +20301,7 @@ func (m *QueryAggregateVolumesRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAggregateVolumesResponse) Unmarshal(dAtA []byte) error { +func (m *QueryAggregateMarketVolumesRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18139,17 +20324,17 @@ func (m *QueryAggregateVolumesResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAggregateVolumesResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryAggregateMarketVolumesRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAggregateVolumesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryAggregateMarketVolumesRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AggregateAccountVolumes", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketIds", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -18159,29 +20344,77 @@ func (m *QueryAggregateVolumesResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.AggregateAccountVolumes = append(m.AggregateAccountVolumes, &AggregateAccountVolumeRecord{}) - if err := m.AggregateAccountVolumes[len(m.AggregateAccountVolumes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.MarketIds = append(m.MarketIds, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { return err } - iNdEx = postIndex - case 2: + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryAggregateMarketVolumesResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryAggregateMarketVolumesResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryAggregateMarketVolumesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AggregateMarketVolumes", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Volumes", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -18208,8 +20441,8 @@ func (m *QueryAggregateVolumesResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AggregateMarketVolumes = append(m.AggregateMarketVolumes, &MarketVolume{}) - if err := m.AggregateMarketVolumes[len(m.AggregateMarketVolumes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Volumes = append(m.Volumes, &MarketVolume{}) + if err := m.Volumes[len(m.Volumes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -18234,7 +20467,7 @@ func (m *QueryAggregateVolumesResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAggregateMarketVolumeRequest) Unmarshal(dAtA []byte) error { +func (m *QuerySubaccountDepositRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18257,15 +20490,15 @@ func (m *QueryAggregateMarketVolumeRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAggregateMarketVolumeRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySubaccountDepositRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAggregateMarketVolumeRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySubaccountDepositRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -18293,7 +20526,39 @@ func (m *QueryAggregateMarketVolumeRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + m.SubaccountId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Denom = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -18316,7 +20581,7 @@ func (m *QueryAggregateMarketVolumeRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAggregateMarketVolumeResponse) Unmarshal(dAtA []byte) error { +func (m *QuerySubaccountDepositResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18339,15 +20604,15 @@ func (m *QueryAggregateMarketVolumeResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAggregateMarketVolumeResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySubaccountDepositResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAggregateMarketVolumeResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySubaccountDepositResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Volume", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Deposits", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -18374,7 +20639,10 @@ func (m *QueryAggregateMarketVolumeResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Volume.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Deposits == nil { + m.Deposits = &Deposit{} + } + if err := m.Deposits.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -18399,7 +20667,7 @@ func (m *QueryAggregateMarketVolumeResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryDenomDecimalRequest) Unmarshal(dAtA []byte) error { +func (m *QuerySpotMarketsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18422,15 +20690,15 @@ func (m *QueryDenomDecimalRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDenomDecimalRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySpotMarketsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDenomDecimalRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySpotMarketsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -18458,7 +20726,39 @@ func (m *QueryDenomDecimalRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Denom = string(dAtA[iNdEx:postIndex]) + m.Status = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MarketIds", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MarketIds = append(m.MarketIds, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex default: iNdEx = preIndex @@ -18481,7 +20781,7 @@ func (m *QueryDenomDecimalRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryDenomDecimalResponse) Unmarshal(dAtA []byte) error { +func (m *QuerySpotMarketsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18504,17 +20804,17 @@ func (m *QueryDenomDecimalResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDenomDecimalResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySpotMarketsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDenomDecimalResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySpotMarketsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Decimal", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Markets", wireType) } - m.Decimal = 0 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -18524,11 +20824,26 @@ func (m *QueryDenomDecimalResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Decimal |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Markets = append(m.Markets, &SpotMarket{}) + if err := m.Markets[len(m.Markets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -18550,7 +20865,7 @@ func (m *QueryDenomDecimalResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryDenomDecimalsRequest) Unmarshal(dAtA []byte) error { +func (m *QuerySpotMarketRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18573,15 +20888,15 @@ func (m *QueryDenomDecimalsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDenomDecimalsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySpotMarketRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDenomDecimalsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySpotMarketRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Denoms", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -18609,7 +20924,7 @@ func (m *QueryDenomDecimalsRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Denoms = append(m.Denoms, string(dAtA[iNdEx:postIndex])) + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -18632,7 +20947,7 @@ func (m *QueryDenomDecimalsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryDenomDecimalsResponse) Unmarshal(dAtA []byte) error { +func (m *QuerySpotMarketResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18655,15 +20970,15 @@ func (m *QueryDenomDecimalsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDenomDecimalsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySpotMarketResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDenomDecimalsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySpotMarketResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DenomDecimals", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Market", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -18690,8 +21005,10 @@ func (m *QueryDenomDecimalsResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DenomDecimals = append(m.DenomDecimals, DenomDecimals{}) - if err := m.DenomDecimals[len(m.DenomDecimals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Market == nil { + m.Market = &SpotMarket{} + } + if err := m.Market.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -18716,7 +21033,7 @@ func (m *QueryDenomDecimalsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAggregateMarketVolumesRequest) Unmarshal(dAtA []byte) error { +func (m *QuerySpotOrderbookRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18739,15 +21056,15 @@ func (m *QueryAggregateMarketVolumesRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAggregateMarketVolumesRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySpotOrderbookRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAggregateMarketVolumesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySpotOrderbookRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketIds", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -18775,63 +21092,87 @@ func (m *QueryAggregateMarketVolumesRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketIds = append(m.MarketIds, string(dAtA[iNdEx:postIndex])) + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Limit", wireType) } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery + m.Limit = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Limit |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field OrderSide", wireType) } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryAggregateMarketVolumesResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery + m.OrderSide = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.OrderSide |= OrderSide(b&0x7F) << shift + if b < 0x80 { + break + } } - if iNdEx >= l { - return io.ErrUnexpectedEOF + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LimitCumulativeNotional", wireType) } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryAggregateMarketVolumesResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAggregateMarketVolumesResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + var v cosmossdk_io_math.LegacyDec + m.LimitCumulativeNotional = &v + if err := m.LimitCumulativeNotional.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Volumes", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field LimitCumulativeQuantity", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -18841,23 +21182,25 @@ func (m *QueryAggregateMarketVolumesResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.Volumes = append(m.Volumes, &MarketVolume{}) - if err := m.Volumes[len(m.Volumes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + var v cosmossdk_io_math.LegacyDec + m.LimitCumulativeQuantity = &v + if err := m.LimitCumulativeQuantity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -18882,7 +21225,7 @@ func (m *QueryAggregateMarketVolumesResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountDepositRequest) Unmarshal(dAtA []byte) error { +func (m *QuerySpotOrderbookResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18905,17 +21248,17 @@ func (m *QuerySubaccountDepositRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountDepositRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySpotOrderbookResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountDepositRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySpotOrderbookResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BuysPriceLevel", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -18925,29 +21268,31 @@ func (m *QuerySubaccountDepositRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) + m.BuysPriceLevel = append(m.BuysPriceLevel, &Level{}) + if err := m.BuysPriceLevel[len(m.BuysPriceLevel)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SellsPriceLevel", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -18957,23 +21302,25 @@ func (m *QuerySubaccountDepositRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.Denom = string(dAtA[iNdEx:postIndex]) + m.SellsPriceLevel = append(m.SellsPriceLevel, &Level{}) + if err := m.SellsPriceLevel[len(m.SellsPriceLevel)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -18996,7 +21343,7 @@ func (m *QuerySubaccountDepositRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountDepositResponse) Unmarshal(dAtA []byte) error { +func (m *FullSpotMarket) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19019,15 +21366,15 @@ func (m *QuerySubaccountDepositResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountDepositResponse: wiretype end group for non-group") + return fmt.Errorf("proto: FullSpotMarket: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountDepositResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: FullSpotMarket: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Deposits", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Market", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -19054,10 +21401,46 @@ func (m *QuerySubaccountDepositResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Deposits == nil { - m.Deposits = &Deposit{} + if m.Market == nil { + m.Market = &SpotMarket{} } - if err := m.Deposits.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Market.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MidPriceAndTob", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.MidPriceAndTob == nil { + m.MidPriceAndTob = &MidPriceAndTOB{} + } + if err := m.MidPriceAndTob.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -19082,7 +21465,7 @@ func (m *QuerySubaccountDepositResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySpotMarketsRequest) Unmarshal(dAtA []byte) error { +func (m *QueryFullSpotMarketsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19105,10 +21488,10 @@ func (m *QuerySpotMarketsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySpotMarketsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryFullSpotMarketsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySpotMarketsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryFullSpotMarketsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -19175,6 +21558,26 @@ func (m *QuerySpotMarketsRequest) Unmarshal(dAtA []byte) error { } m.MarketIds = append(m.MarketIds, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field WithMidPriceAndTob", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.WithMidPriceAndTob = bool(v != 0) default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -19196,7 +21599,7 @@ func (m *QuerySpotMarketsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySpotMarketsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryFullSpotMarketsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19219,10 +21622,10 @@ func (m *QuerySpotMarketsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySpotMarketsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryFullSpotMarketsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySpotMarketsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryFullSpotMarketsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -19254,7 +21657,7 @@ func (m *QuerySpotMarketsResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Markets = append(m.Markets, &SpotMarket{}) + m.Markets = append(m.Markets, &FullSpotMarket{}) if err := m.Markets[len(m.Markets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -19280,7 +21683,7 @@ func (m *QuerySpotMarketsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySpotMarketRequest) Unmarshal(dAtA []byte) error { +func (m *QueryFullSpotMarketRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19303,10 +21706,10 @@ func (m *QuerySpotMarketRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySpotMarketRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryFullSpotMarketRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySpotMarketRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryFullSpotMarketRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -19341,6 +21744,26 @@ func (m *QuerySpotMarketRequest) Unmarshal(dAtA []byte) error { } m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field WithMidPriceAndTob", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.WithMidPriceAndTob = bool(v != 0) default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -19362,7 +21785,7 @@ func (m *QuerySpotMarketRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySpotMarketResponse) Unmarshal(dAtA []byte) error { +func (m *QueryFullSpotMarketResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19385,10 +21808,10 @@ func (m *QuerySpotMarketResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySpotMarketResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryFullSpotMarketResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySpotMarketResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryFullSpotMarketResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -19421,7 +21844,7 @@ func (m *QuerySpotMarketResponse) Unmarshal(dAtA []byte) error { return io.ErrUnexpectedEOF } if m.Market == nil { - m.Market = &SpotMarket{} + m.Market = &FullSpotMarket{} } if err := m.Market.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err @@ -19448,7 +21871,7 @@ func (m *QuerySpotMarketResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySpotOrderbookRequest) Unmarshal(dAtA []byte) error { +func (m *QuerySpotOrdersByHashesRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19471,10 +21894,10 @@ func (m *QuerySpotOrderbookRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySpotOrderbookRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySpotOrdersByHashesRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySpotOrderbookRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySpotOrdersByHashesRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -19510,10 +21933,10 @@ func (m *QuerySpotOrderbookRequest) Unmarshal(dAtA []byte) error { m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Limit", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } - m.Limit = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -19523,33 +21946,27 @@ func (m *QuerySpotOrderbookRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Limit |= uint64(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field OrderSide", wireType) + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery } - m.OrderSide = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.OrderSide |= OrderSide(b&0x7F) << shift - if b < 0x80 { - break - } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery } - case 4: + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SubaccountId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field LimitCumulativeNotional", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field OrderHashes", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -19574,20 +21991,66 @@ func (m *QuerySpotOrderbookRequest) Unmarshal(dAtA []byte) error { if postIndex < 0 { return ErrInvalidLengthQuery } - if postIndex > l { + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.OrderHashes = append(m.OrderHashes, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QuerySpotOrdersByHashesResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { return io.ErrUnexpectedEOF } - var v cosmossdk_io_math.LegacyDec - m.LimitCumulativeNotional = &v - if err := m.LimitCumulativeNotional.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break } - iNdEx = postIndex - case 5: + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QuerySpotOrdersByHashesResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QuerySpotOrdersByHashesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field LimitCumulativeQuantity", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -19597,25 +22060,23 @@ func (m *QuerySpotOrderbookRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - var v cosmossdk_io_math.LegacyDec - m.LimitCumulativeQuantity = &v - if err := m.LimitCumulativeQuantity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Orders = append(m.Orders, &TrimmedSpotLimitOrder{}) + if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -19640,7 +22101,7 @@ func (m *QuerySpotOrderbookRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySpotOrderbookResponse) Unmarshal(dAtA []byte) error { +func (m *QueryTraderSpotOrdersRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19663,17 +22124,17 @@ func (m *QuerySpotOrderbookResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySpotOrderbookResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryTraderSpotOrdersRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySpotOrderbookResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryTraderSpotOrdersRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BuysPriceLevel", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -19683,31 +22144,29 @@ func (m *QuerySpotOrderbookResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.BuysPriceLevel = append(m.BuysPriceLevel, &Level{}) - if err := m.BuysPriceLevel[len(m.BuysPriceLevel)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SellsPriceLevel", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -19717,25 +22176,23 @@ func (m *QuerySpotOrderbookResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.SellsPriceLevel = append(m.SellsPriceLevel, &Level{}) - if err := m.SellsPriceLevel[len(m.SellsPriceLevel)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.SubaccountId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -19758,7 +22215,7 @@ func (m *QuerySpotOrderbookResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *FullSpotMarket) Unmarshal(dAtA []byte) error { +func (m *QueryAccountAddressSpotOrdersRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19781,17 +22238,17 @@ func (m *FullSpotMarket) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: FullSpotMarket: wiretype end group for non-group") + return fmt.Errorf("proto: QueryAccountAddressSpotOrdersRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: FullSpotMarket: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryAccountAddressSpotOrdersRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Market", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -19801,33 +22258,29 @@ func (m *FullSpotMarket) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if m.Market == nil { - m.Market = &SpotMarket{} - } - if err := m.Market.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MidPriceAndTob", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AccountAddress", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -19837,27 +22290,23 @@ func (m *FullSpotMarket) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if m.MidPriceAndTob == nil { - m.MidPriceAndTob = &MidPriceAndTOB{} - } - if err := m.MidPriceAndTob.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.AccountAddress = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -19880,7 +22329,7 @@ func (m *FullSpotMarket) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryFullSpotMarketsRequest) Unmarshal(dAtA []byte) error { +func (m *TrimmedSpotLimitOrder) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19903,15 +22352,15 @@ func (m *QueryFullSpotMarketsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryFullSpotMarketsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: TrimmedSpotLimitOrder: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryFullSpotMarketsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: TrimmedSpotLimitOrder: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Price", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -19939,11 +22388,13 @@ func (m *QueryFullSpotMarketsRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Status = string(dAtA[iNdEx:postIndex]) + if err := m.Price.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketIds", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Quantity", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -19971,11 +22422,47 @@ func (m *QueryFullSpotMarketsRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketIds = append(m.MarketIds, string(dAtA[iNdEx:postIndex])) + if err := m.Quantity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Fillable", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Fillable.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field WithMidPriceAndTob", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field IsBuy", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19992,7 +22479,71 @@ func (m *QueryFullSpotMarketsRequest) Unmarshal(dAtA []byte) error { break } } - m.WithMidPriceAndTob = bool(v != 0) + m.IsBuy = bool(v != 0) + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OrderHash", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.OrderHash = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Cid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Cid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -20014,7 +22565,7 @@ func (m *QueryFullSpotMarketsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryFullSpotMarketsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryTraderSpotOrdersResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -20037,15 +22588,15 @@ func (m *QueryFullSpotMarketsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryFullSpotMarketsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryTraderSpotOrdersResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryFullSpotMarketsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryTraderSpotOrdersResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Markets", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -20072,8 +22623,8 @@ func (m *QueryFullSpotMarketsResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Markets = append(m.Markets, &FullSpotMarket{}) - if err := m.Markets[len(m.Markets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Orders = append(m.Orders, &TrimmedSpotLimitOrder{}) + if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -20098,7 +22649,7 @@ func (m *QueryFullSpotMarketsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryFullSpotMarketRequest) Unmarshal(dAtA []byte) error { +func (m *QueryAccountAddressSpotOrdersResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -20121,17 +22672,17 @@ func (m *QueryFullSpotMarketRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryFullSpotMarketRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryAccountAddressSpotOrdersResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryFullSpotMarketRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryAccountAddressSpotOrdersResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -20141,44 +22692,26 @@ func (m *QueryFullSpotMarketRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field WithMidPriceAndTob", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } + m.Orders = append(m.Orders, &TrimmedSpotLimitOrder{}) + if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.WithMidPriceAndTob = bool(v != 0) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -20200,7 +22733,7 @@ func (m *QueryFullSpotMarketRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryFullSpotMarketResponse) Unmarshal(dAtA []byte) error { +func (m *QuerySpotMidPriceAndTOBRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -20223,17 +22756,17 @@ func (m *QueryFullSpotMarketResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryFullSpotMarketResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySpotMidPriceAndTOBRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryFullSpotMarketResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySpotMidPriceAndTOBRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Market", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -20243,27 +22776,23 @@ func (m *QueryFullSpotMarketResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if m.Market == nil { - m.Market = &FullSpotMarket{} - } - if err := m.Market.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -20286,7 +22815,7 @@ func (m *QueryFullSpotMarketResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySpotOrdersByHashesRequest) Unmarshal(dAtA []byte) error { +func (m *QuerySpotMidPriceAndTOBResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -20309,15 +22838,15 @@ func (m *QuerySpotOrdersByHashesRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySpotOrdersByHashesRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySpotMidPriceAndTOBResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySpotOrdersByHashesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySpotMidPriceAndTOBResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MidPrice", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20345,11 +22874,15 @@ func (m *QuerySpotOrdersByHashesRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + var v cosmossdk_io_math.LegacyDec + m.MidPrice = &v + if err := m.MidPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BestBuyPrice", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20377,11 +22910,15 @@ func (m *QuerySpotOrdersByHashesRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) + var v cosmossdk_io_math.LegacyDec + m.BestBuyPrice = &v + if err := m.BestBuyPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OrderHashes", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BestSellPrice", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20409,7 +22946,11 @@ func (m *QuerySpotOrdersByHashesRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.OrderHashes = append(m.OrderHashes, string(dAtA[iNdEx:postIndex])) + var v cosmossdk_io_math.LegacyDec + m.BestSellPrice = &v + if err := m.BestSellPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -20432,7 +22973,89 @@ func (m *QuerySpotOrdersByHashesRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySpotOrdersByHashesResponse) Unmarshal(dAtA []byte) error { +func (m *QueryDerivativeMidPriceAndTOBRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryDerivativeMidPriceAndTOBRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryDerivativeMidPriceAndTOBRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MarketId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryDerivativeMidPriceAndTOBResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -20442,30 +23065,102 @@ func (m *QuerySpotOrdersByHashesResponse) Unmarshal(dAtA []byte) error { if shift >= 64 { return ErrIntOverflowQuery } - if iNdEx >= l { + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryDerivativeMidPriceAndTOBResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryDerivativeMidPriceAndTOBResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MidPrice", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + var v cosmossdk_io_math.LegacyDec + m.MidPrice = &v + if err := m.MidPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BestBuyPrice", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + var v cosmossdk_io_math.LegacyDec + m.BestBuyPrice = &v + if err := m.BestBuyPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QuerySpotOrdersByHashesResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySpotOrdersByHashesResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + iNdEx = postIndex + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BestSellPrice", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -20475,23 +23170,25 @@ func (m *QuerySpotOrdersByHashesResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.Orders = append(m.Orders, &TrimmedSpotLimitOrder{}) - if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + var v cosmossdk_io_math.LegacyDec + m.BestSellPrice = &v + if err := m.BestSellPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -20516,7 +23213,7 @@ func (m *QuerySpotOrdersByHashesResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryTraderSpotOrdersRequest) Unmarshal(dAtA []byte) error { +func (m *QueryDerivativeOrderbookRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -20539,10 +23236,10 @@ func (m *QueryTraderSpotOrdersRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryTraderSpotOrdersRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDerivativeOrderbookRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryTraderSpotOrdersRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryDerivativeOrderbookRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -20578,8 +23275,27 @@ func (m *QueryTraderSpotOrdersRequest) Unmarshal(dAtA []byte) error { m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Limit", wireType) + } + m.Limit = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Limit |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field LimitCumulativeNotional", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20607,7 +23323,11 @@ func (m *QueryTraderSpotOrdersRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) + var v cosmossdk_io_math.LegacyDec + m.LimitCumulativeNotional = &v + if err := m.LimitCumulativeNotional.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -20630,7 +23350,7 @@ func (m *QueryTraderSpotOrdersRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAccountAddressSpotOrdersRequest) Unmarshal(dAtA []byte) error { +func (m *QueryDerivativeOrderbookResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -20653,17 +23373,17 @@ func (m *QueryAccountAddressSpotOrdersRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAccountAddressSpotOrdersRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDerivativeOrderbookResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAccountAddressSpotOrdersRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryDerivativeOrderbookResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BuysPriceLevel", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -20673,29 +23393,31 @@ func (m *QueryAccountAddressSpotOrdersRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + m.BuysPriceLevel = append(m.BuysPriceLevel, &Level{}) + if err := m.BuysPriceLevel[len(m.BuysPriceLevel)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AccountAddress", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SellsPriceLevel", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -20705,23 +23427,25 @@ func (m *QueryAccountAddressSpotOrdersRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.AccountAddress = string(dAtA[iNdEx:postIndex]) + m.SellsPriceLevel = append(m.SellsPriceLevel, &Level{}) + if err := m.SellsPriceLevel[len(m.SellsPriceLevel)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -20744,7 +23468,7 @@ func (m *QueryAccountAddressSpotOrdersRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *TrimmedSpotLimitOrder) Unmarshal(dAtA []byte) error { +func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -20767,15 +23491,15 @@ func (m *TrimmedSpotLimitOrder) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: TrimmedSpotLimitOrder: wiretype end group for non-group") + return fmt.Errorf("proto: QueryTraderSpotOrdersToCancelUpToAmountRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: TrimmedSpotLimitOrder: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryTraderSpotOrdersToCancelUpToAmountRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Price", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20803,13 +23527,11 @@ func (m *TrimmedSpotLimitOrder) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Price.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Quantity", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20837,13 +23559,11 @@ func (m *TrimmedSpotLimitOrder) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Quantity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.SubaccountId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Fillable", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BaseAmount", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20871,33 +23591,13 @@ func (m *TrimmedSpotLimitOrder) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Fillable.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.BaseAmount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 4: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field IsBuy", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.IsBuy = bool(v != 0) - case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OrderHash", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field QuoteAmount", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20925,13 +23625,15 @@ func (m *TrimmedSpotLimitOrder) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.OrderHash = string(dAtA[iNdEx:postIndex]) + if err := m.QuoteAmount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Cid", wireType) + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Strategy", wireType) } - var stringLen uint64 + m.Strategy = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -20941,79 +23643,16 @@ func (m *TrimmedSpotLimitOrder) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Cid = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryTraderSpotOrdersResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryTraderSpotOrdersResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryTraderSpotOrdersResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + m.Strategy |= CancellationStrategy(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ReferencePrice", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -21023,23 +23662,25 @@ func (m *QueryTraderSpotOrdersResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.Orders = append(m.Orders, &TrimmedSpotLimitOrder{}) - if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + var v cosmossdk_io_math.LegacyDec + m.ReferencePrice = &v + if err := m.ReferencePrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -21064,7 +23705,7 @@ func (m *QueryTraderSpotOrdersResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAccountAddressSpotOrdersResponse) Unmarshal(dAtA []byte) error { +func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -21087,17 +23728,17 @@ func (m *QueryAccountAddressSpotOrdersResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAccountAddressSpotOrdersResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryTraderDerivativeOrdersToCancelUpToAmountRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAccountAddressSpotOrdersResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryTraderDerivativeOrdersToCancelUpToAmountRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -21107,79 +23748,112 @@ func (m *QueryAccountAddressSpotOrdersResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.Orders = append(m.Orders, &TrimmedSpotLimitOrder{}) - if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } - if (skippy < 0) || (iNdEx+skippy) < 0 { + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - if (iNdEx + skippy) > l { + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { return io.ErrUnexpectedEOF } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QuerySpotMidPriceAndTOBRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery + m.SubaccountId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field QuoteAmount", wireType) } - if iNdEx >= l { + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + if err := m.QuoteAmount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QuerySpotMidPriceAndTOBRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySpotMidPriceAndTOBRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + iNdEx = postIndex + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Strategy", wireType) + } + m.Strategy = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Strategy |= CancellationStrategy(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ReferencePrice", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21207,7 +23881,11 @@ func (m *QuerySpotMidPriceAndTOBRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + var v cosmossdk_io_math.LegacyDec + m.ReferencePrice = &v + if err := m.ReferencePrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -21230,7 +23908,7 @@ func (m *QuerySpotMidPriceAndTOBRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySpotMidPriceAndTOBResponse) Unmarshal(dAtA []byte) error { +func (m *QueryTraderDerivativeOrdersRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -21253,15 +23931,15 @@ func (m *QuerySpotMidPriceAndTOBResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySpotMidPriceAndTOBResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryTraderDerivativeOrdersRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySpotMidPriceAndTOBResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryTraderDerivativeOrdersRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MidPrice", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21289,51 +23967,11 @@ func (m *QuerySpotMidPriceAndTOBResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - var v cosmossdk_io_math.LegacyDec - m.MidPrice = &v - if err := m.MidPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BestBuyPrice", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - var v cosmossdk_io_math.LegacyDec - m.BestBuyPrice = &v - if err := m.BestBuyPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BestSellPrice", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21361,11 +23999,7 @@ func (m *QuerySpotMidPriceAndTOBResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - var v cosmossdk_io_math.LegacyDec - m.BestSellPrice = &v - if err := m.BestSellPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.SubaccountId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -21388,7 +24022,7 @@ func (m *QuerySpotMidPriceAndTOBResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryDerivativeMidPriceAndTOBRequest) Unmarshal(dAtA []byte) error { +func (m *QueryAccountAddressDerivativeOrdersRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -21411,15 +24045,47 @@ func (m *QueryDerivativeMidPriceAndTOBRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDerivativeMidPriceAndTOBRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryAccountAddressDerivativeOrdersRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDerivativeMidPriceAndTOBRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryAccountAddressDerivativeOrdersRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MarketId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AccountAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21447,7 +24113,7 @@ func (m *QueryDerivativeMidPriceAndTOBRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + m.AccountAddress = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -21470,7 +24136,7 @@ func (m *QueryDerivativeMidPriceAndTOBRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryDerivativeMidPriceAndTOBResponse) Unmarshal(dAtA []byte) error { +func (m *TrimmedDerivativeLimitOrder) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -21493,15 +24159,15 @@ func (m *QueryDerivativeMidPriceAndTOBResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDerivativeMidPriceAndTOBResponse: wiretype end group for non-group") + return fmt.Errorf("proto: TrimmedDerivativeLimitOrder: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDerivativeMidPriceAndTOBResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: TrimmedDerivativeLimitOrder: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MidPrice", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Price", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21529,15 +24195,13 @@ func (m *QueryDerivativeMidPriceAndTOBResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - var v cosmossdk_io_math.LegacyDec - m.MidPrice = &v - if err := m.MidPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Price.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BestBuyPrice", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Quantity", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21565,15 +24229,13 @@ func (m *QueryDerivativeMidPriceAndTOBResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - var v cosmossdk_io_math.LegacyDec - m.BestBuyPrice = &v - if err := m.BestBuyPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Quantity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BestSellPrice", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Margin", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21601,65 +24263,13 @@ func (m *QueryDerivativeMidPriceAndTOBResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - var v cosmossdk_io_math.LegacyDec - m.BestSellPrice = &v - if err := m.BestSellPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Margin.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryDerivativeOrderbookRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryDerivativeOrderbookRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDerivativeOrderbookRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Fillable", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21687,13 +24297,15 @@ func (m *QueryDerivativeOrderbookRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + if err := m.Fillable.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 2: + case 5: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Limit", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field IsBuy", wireType) } - m.Limit = 0 + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -21703,14 +24315,15 @@ func (m *QueryDerivativeOrderbookRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Limit |= uint64(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - case 3: + m.IsBuy = bool(v != 0) + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field LimitCumulativeNotional", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field OrderHash", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21738,11 +24351,39 @@ func (m *QueryDerivativeOrderbookRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - var v cosmossdk_io_math.LegacyDec - m.LimitCumulativeNotional = &v - if err := m.LimitCumulativeNotional.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + m.OrderHash = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Cid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF } + m.Cid = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -21765,7 +24406,7 @@ func (m *QueryDerivativeOrderbookRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryDerivativeOrderbookResponse) Unmarshal(dAtA []byte) error { +func (m *QueryTraderDerivativeOrdersResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -21788,15 +24429,15 @@ func (m *QueryDerivativeOrderbookResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDerivativeOrderbookResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryTraderDerivativeOrdersResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDerivativeOrderbookResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryTraderDerivativeOrdersResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BuysPriceLevel", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -21823,14 +24464,64 @@ func (m *QueryDerivativeOrderbookResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.BuysPriceLevel = append(m.BuysPriceLevel, &Level{}) - if err := m.BuysPriceLevel[len(m.BuysPriceLevel)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Orders = append(m.Orders, &TrimmedDerivativeLimitOrder{}) + if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 2: + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryAccountAddressDerivativeOrdersResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryAccountAddressDerivativeOrdersResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryAccountAddressDerivativeOrdersResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SellsPriceLevel", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -21857,8 +24548,8 @@ func (m *QueryDerivativeOrderbookResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SellsPriceLevel = append(m.SellsPriceLevel, &Level{}) - if err := m.SellsPriceLevel[len(m.SellsPriceLevel)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Orders = append(m.Orders, &TrimmedDerivativeLimitOrder{}) + if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -21883,7 +24574,7 @@ func (m *QueryDerivativeOrderbookResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) Unmarshal(dAtA []byte) error { +func (m *QueryDerivativeOrdersByHashesRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -21906,47 +24597,15 @@ func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) Unmarshal(dAtA []byte) fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryTraderSpotOrdersToCancelUpToAmountRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDerivativeOrdersByHashesRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryTraderSpotOrdersToCancelUpToAmountRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.MarketId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: + return fmt.Errorf("proto: QueryDerivativeOrdersByHashesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21974,11 +24633,11 @@ func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) Unmarshal(dAtA []byte) if postIndex > l { return io.ErrUnexpectedEOF } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 3: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BaseAmount", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -22006,13 +24665,11 @@ func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) Unmarshal(dAtA []byte) if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.BaseAmount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.SubaccountId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 4: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field QuoteAmount", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field OrderHashes", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -22040,34 +24697,63 @@ func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) Unmarshal(dAtA []byte) if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.QuoteAmount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.OrderHashes = append(m.OrderHashes, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { return err } - iNdEx = postIndex - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Strategy", wireType) + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery } - m.Strategy = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Strategy |= CancellationStrategy(b&0x7F) << shift - if b < 0x80 { - break - } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF } - case 6: + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryDerivativeOrdersByHashesResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryDerivativeOrdersByHashesResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryDerivativeOrdersByHashesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ReferencePrice", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -22077,25 +24763,23 @@ func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) Unmarshal(dAtA []byte) } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - var v cosmossdk_io_math.LegacyDec - m.ReferencePrice = &v - if err := m.ReferencePrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Orders = append(m.Orders, &TrimmedDerivativeLimitOrder{}) + if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -22120,7 +24804,7 @@ func (m *QueryTraderSpotOrdersToCancelUpToAmountRequest) Unmarshal(dAtA []byte) } return nil } -func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) Unmarshal(dAtA []byte) error { +func (m *QueryDerivativeMarketsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -22143,15 +24827,15 @@ func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) Unmarshal(dAtA [] fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryTraderDerivativeOrdersToCancelUpToAmountRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDerivativeMarketsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryTraderDerivativeOrdersToCancelUpToAmountRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryDerivativeMarketsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -22179,11 +24863,11 @@ func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) Unmarshal(dAtA [] if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + m.Status = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketIds", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -22211,66 +24895,13 @@ func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) Unmarshal(dAtA [] if postIndex > l { return io.ErrUnexpectedEOF } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) + m.MarketIds = append(m.MarketIds, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field QuoteAmount", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.QuoteAmount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Strategy", wireType) - } - m.Strategy = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Strategy |= CancellationStrategy(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ReferencePrice", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field WithMidPriceAndTob", wireType) } - var stringLen uint64 + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -22280,28 +24911,12 @@ func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) Unmarshal(dAtA [] } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - var v cosmossdk_io_math.LegacyDec - m.ReferencePrice = &v - if err := m.ReferencePrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex + m.WithMidPriceAndTob = bool(v != 0) default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -22323,7 +24938,7 @@ func (m *QueryTraderDerivativeOrdersToCancelUpToAmountRequest) Unmarshal(dAtA [] } return nil } -func (m *QueryTraderDerivativeOrdersRequest) Unmarshal(dAtA []byte) error { +func (m *PriceLevel) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -22346,15 +24961,15 @@ func (m *QueryTraderDerivativeOrdersRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryTraderDerivativeOrdersRequest: wiretype end group for non-group") + return fmt.Errorf("proto: PriceLevel: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryTraderDerivativeOrdersRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: PriceLevel: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Price", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -22382,11 +24997,13 @@ func (m *QueryTraderDerivativeOrdersRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + if err := m.Price.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Quantity", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -22414,7 +25031,9 @@ func (m *QueryTraderDerivativeOrdersRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) + if err := m.Quantity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -22437,7 +25056,7 @@ func (m *QueryTraderDerivativeOrdersRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAccountAddressDerivativeOrdersRequest) Unmarshal(dAtA []byte) error { +func (m *PerpetualMarketState) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -22460,17 +25079,17 @@ func (m *QueryAccountAddressDerivativeOrdersRequest) Unmarshal(dAtA []byte) erro fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAccountAddressDerivativeOrdersRequest: wiretype end group for non-group") + return fmt.Errorf("proto: PerpetualMarketState: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAccountAddressDerivativeOrdersRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: PerpetualMarketState: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketInfo", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -22480,29 +25099,33 @@ func (m *QueryAccountAddressDerivativeOrdersRequest) Unmarshal(dAtA []byte) erro } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + if m.MarketInfo == nil { + m.MarketInfo = &PerpetualMarketInfo{} + } + if err := m.MarketInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AccountAddress", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field FundingInfo", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -22512,23 +25135,27 @@ func (m *QueryAccountAddressDerivativeOrdersRequest) Unmarshal(dAtA []byte) erro } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.AccountAddress = string(dAtA[iNdEx:postIndex]) + if m.FundingInfo == nil { + m.FundingInfo = &PerpetualMarketFunding{} + } + if err := m.FundingInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -22551,7 +25178,7 @@ func (m *QueryAccountAddressDerivativeOrdersRequest) Unmarshal(dAtA []byte) erro } return nil } -func (m *TrimmedDerivativeLimitOrder) Unmarshal(dAtA []byte) error { +func (m *FullDerivativeMarket) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -22574,17 +25201,17 @@ func (m *TrimmedDerivativeLimitOrder) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: TrimmedDerivativeLimitOrder: wiretype end group for non-group") + return fmt.Errorf("proto: FullDerivativeMarket: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: TrimmedDerivativeLimitOrder: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: FullDerivativeMarket: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Price", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Market", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -22594,31 +25221,33 @@ func (m *TrimmedDerivativeLimitOrder) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Price.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Market == nil { + m.Market = &DerivativeMarket{} + } + if err := m.Market.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Quantity", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PerpetualInfo", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -22628,31 +25257,32 @@ func (m *TrimmedDerivativeLimitOrder) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Quantity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &PerpetualMarketState{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.Info = &FullDerivativeMarket_PerpetualInfo{v} iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Margin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field FuturesInfo", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -22662,29 +25292,30 @@ func (m *TrimmedDerivativeLimitOrder) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Margin.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &ExpiryFuturesMarketInfo{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.Info = &FullDerivativeMarket_FuturesInfo{v} iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Fillable", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarkPrice", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -22712,35 +25343,15 @@ func (m *TrimmedDerivativeLimitOrder) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Fillable.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.MarkPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field IsBuy", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.IsBuy = bool(v != 0) - case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OrderHash", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MidPriceAndTob", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -22750,55 +25361,27 @@ func (m *TrimmedDerivativeLimitOrder) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.OrderHash = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Cid", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery + if m.MidPriceAndTob == nil { + m.MidPriceAndTob = &MidPriceAndTOB{} } - if postIndex > l { - return io.ErrUnexpectedEOF + if err := m.MidPriceAndTob.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.Cid = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -22821,7 +25404,7 @@ func (m *TrimmedDerivativeLimitOrder) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryTraderDerivativeOrdersResponse) Unmarshal(dAtA []byte) error { +func (m *QueryDerivativeMarketsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -22844,15 +25427,15 @@ func (m *QueryTraderDerivativeOrdersResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryTraderDerivativeOrdersResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDerivativeMarketsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryTraderDerivativeOrdersResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryDerivativeMarketsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Markets", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -22879,8 +25462,8 @@ func (m *QueryTraderDerivativeOrdersResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Orders = append(m.Orders, &TrimmedDerivativeLimitOrder{}) - if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Markets = append(m.Markets, &FullDerivativeMarket{}) + if err := m.Markets[len(m.Markets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -22905,7 +25488,7 @@ func (m *QueryTraderDerivativeOrdersResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAccountAddressDerivativeOrdersResponse) Unmarshal(dAtA []byte) error { +func (m *QueryDerivativeMarketRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -22928,17 +25511,17 @@ func (m *QueryAccountAddressDerivativeOrdersResponse) Unmarshal(dAtA []byte) err fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAccountAddressDerivativeOrdersResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDerivativeMarketRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAccountAddressDerivativeOrdersResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryDerivativeMarketRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -22948,25 +25531,23 @@ func (m *QueryAccountAddressDerivativeOrdersResponse) Unmarshal(dAtA []byte) err } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.Orders = append(m.Orders, &TrimmedDerivativeLimitOrder{}) - if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -22989,7 +25570,7 @@ func (m *QueryAccountAddressDerivativeOrdersResponse) Unmarshal(dAtA []byte) err } return nil } -func (m *QueryDerivativeOrdersByHashesRequest) Unmarshal(dAtA []byte) error { +func (m *QueryDerivativeMarketResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -23012,49 +25593,17 @@ func (m *QueryDerivativeOrdersByHashesRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDerivativeOrdersByHashesRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDerivativeMarketResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDerivativeOrdersByHashesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryDerivativeMarketResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.MarketId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Market", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -23064,55 +25613,27 @@ func (m *QueryDerivativeOrdersByHashesRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OrderHashes", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery + if m.Market == nil { + m.Market = &FullDerivativeMarket{} } - if postIndex > l { - return io.ErrUnexpectedEOF + if err := m.Market.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.OrderHashes = append(m.OrderHashes, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex default: iNdEx = preIndex @@ -23135,7 +25656,7 @@ func (m *QueryDerivativeOrdersByHashesRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryDerivativeOrdersByHashesResponse) Unmarshal(dAtA []byte) error { +func (m *QueryDerivativeMarketAddressRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -23158,17 +25679,17 @@ func (m *QueryDerivativeOrdersByHashesResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDerivativeOrdersByHashesResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDerivativeMarketAddressRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDerivativeOrdersByHashesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryDerivativeMarketAddressRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -23178,25 +25699,23 @@ func (m *QueryDerivativeOrdersByHashesResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.Orders = append(m.Orders, &TrimmedDerivativeLimitOrder{}) - if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -23219,7 +25738,7 @@ func (m *QueryDerivativeOrdersByHashesResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryDerivativeMarketsRequest) Unmarshal(dAtA []byte) error { +func (m *QueryDerivativeMarketAddressResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -23242,15 +25761,15 @@ func (m *QueryDerivativeMarketsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDerivativeMarketsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDerivativeMarketAddressResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDerivativeMarketsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryDerivativeMarketAddressResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -23278,11 +25797,11 @@ func (m *QueryDerivativeMarketsRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Status = string(dAtA[iNdEx:postIndex]) + m.Address = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketIds", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -23310,28 +25829,8 @@ func (m *QueryDerivativeMarketsRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketIds = append(m.MarketIds, string(dAtA[iNdEx:postIndex])) + m.SubaccountId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field WithMidPriceAndTob", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.WithMidPriceAndTob = bool(v != 0) default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -23353,7 +25852,7 @@ func (m *QueryDerivativeMarketsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *PriceLevel) Unmarshal(dAtA []byte) error { +func (m *QuerySubaccountTradeNonceRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -23376,49 +25875,15 @@ func (m *PriceLevel) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: PriceLevel: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySubaccountTradeNonceRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: PriceLevel: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySubaccountTradeNonceRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Price", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Price.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Quantity", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -23446,9 +25911,7 @@ func (m *PriceLevel) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Quantity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.SubaccountId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -23471,7 +25934,7 @@ func (m *PriceLevel) Unmarshal(dAtA []byte) error { } return nil } -func (m *PerpetualMarketState) Unmarshal(dAtA []byte) error { +func (m *QuerySubaccountPositionsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -23494,53 +25957,17 @@ func (m *PerpetualMarketState) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: PerpetualMarketState: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySubaccountPositionsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: PerpetualMarketState: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySubaccountPositionsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketInfo", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.MarketInfo == nil { - m.MarketInfo = &PerpetualMarketInfo{} - } - if err := m.MarketInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field FundingInfo", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -23550,27 +25977,23 @@ func (m *PerpetualMarketState) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if m.FundingInfo == nil { - m.FundingInfo = &PerpetualMarketFunding{} - } - if err := m.FundingInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.SubaccountId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -23593,7 +26016,7 @@ func (m *PerpetualMarketState) Unmarshal(dAtA []byte) error { } return nil } -func (m *FullDerivativeMarket) Unmarshal(dAtA []byte) error { +func (m *QuerySubaccountPositionInMarketRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -23616,17 +26039,17 @@ func (m *FullDerivativeMarket) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: FullDerivativeMarket: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySubaccountPositionInMarketRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: FullDerivativeMarket: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySubaccountPositionInMarketRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Market", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -23636,33 +26059,29 @@ func (m *FullDerivativeMarket) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if m.Market == nil { - m.Market = &DerivativeMarket{} - } - if err := m.Market.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.SubaccountId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PerpetualInfo", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -23672,65 +26091,77 @@ func (m *FullDerivativeMarket) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - v := &PerpetualMarketState{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Info = &FullDerivativeMarket_PerpetualInfo{v} + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field FuturesInfo", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err } - if msglen < 0 { + if (skippy < 0) || (iNdEx+skippy) < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthQuery + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF } - if postIndex > l { + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QuerySubaccountEffectivePositionInMarketRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { return io.ErrUnexpectedEOF } - v := &ExpiryFuturesMarketInfo{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break } - m.Info = &FullDerivativeMarket_FuturesInfo{v} - iNdEx = postIndex - case 4: + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QuerySubaccountEffectivePositionInMarketRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QuerySubaccountEffectivePositionInMarketRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarkPrice", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -23758,15 +26189,13 @@ func (m *FullDerivativeMarket) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.MarkPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.SubaccountId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 5: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MidPriceAndTob", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -23776,27 +26205,23 @@ func (m *FullDerivativeMarket) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if m.MidPriceAndTob == nil { - m.MidPriceAndTob = &MidPriceAndTOB{} - } - if err := m.MidPriceAndTob.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -23819,7 +26244,7 @@ func (m *FullDerivativeMarket) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryDerivativeMarketsResponse) Unmarshal(dAtA []byte) error { +func (m *QuerySubaccountOrderMetadataRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -23842,17 +26267,17 @@ func (m *QueryDerivativeMarketsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDerivativeMarketsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySubaccountOrderMetadataRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDerivativeMarketsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySubaccountOrderMetadataRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Markets", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -23862,25 +26287,23 @@ func (m *QueryDerivativeMarketsResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.Markets = append(m.Markets, &FullDerivativeMarket{}) - if err := m.Markets[len(m.Markets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.SubaccountId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -23903,7 +26326,7 @@ func (m *QueryDerivativeMarketsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryDerivativeMarketRequest) Unmarshal(dAtA []byte) error { +func (m *QuerySubaccountPositionsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -23926,17 +26349,17 @@ func (m *QueryDerivativeMarketRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDerivativeMarketRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySubaccountPositionsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDerivativeMarketRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySubaccountPositionsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -23946,23 +26369,25 @@ func (m *QueryDerivativeMarketRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + m.State = append(m.State, DerivativePosition{}) + if err := m.State[len(m.State)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -23985,7 +26410,7 @@ func (m *QueryDerivativeMarketRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryDerivativeMarketResponse) Unmarshal(dAtA []byte) error { +func (m *QuerySubaccountPositionInMarketResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -24008,15 +26433,15 @@ func (m *QueryDerivativeMarketResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDerivativeMarketResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySubaccountPositionInMarketResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDerivativeMarketResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySubaccountPositionInMarketResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Market", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -24043,10 +26468,10 @@ func (m *QueryDerivativeMarketResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Market == nil { - m.Market = &FullDerivativeMarket{} + if m.State == nil { + m.State = &Position{} } - if err := m.Market.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.State.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -24071,7 +26496,7 @@ func (m *QueryDerivativeMarketResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryDerivativeMarketAddressRequest) Unmarshal(dAtA []byte) error { +func (m *EffectivePosition) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -24094,15 +26519,35 @@ func (m *QueryDerivativeMarketAddressRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDerivativeMarketAddressRequest: wiretype end group for non-group") + return fmt.Errorf("proto: EffectivePosition: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDerivativeMarketAddressRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: EffectivePosition: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IsLong", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IsLong = bool(v != 0) + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Quantity", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -24130,7 +26575,77 @@ func (m *QueryDerivativeMarketAddressRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + if err := m.Quantity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EntryPrice", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.EntryPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EffectiveMargin", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.EffectiveMargin.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -24153,7 +26668,7 @@ func (m *QueryDerivativeMarketAddressRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryDerivativeMarketAddressResponse) Unmarshal(dAtA []byte) error { +func (m *QuerySubaccountEffectivePositionInMarketResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -24176,17 +26691,17 @@ func (m *QueryDerivativeMarketAddressResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryDerivativeMarketAddressResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySubaccountEffectivePositionInMarketResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryDerivativeMarketAddressResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySubaccountEffectivePositionInMarketResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -24196,55 +26711,27 @@ func (m *QueryDerivativeMarketAddressResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.Address = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery + if m.State == nil { + m.State = &EffectivePosition{} } - if postIndex > l { - return io.ErrUnexpectedEOF + if err := m.State.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -24267,7 +26754,7 @@ func (m *QueryDerivativeMarketAddressResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountTradeNonceRequest) Unmarshal(dAtA []byte) error { +func (m *QueryPerpetualMarketInfoRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -24290,15 +26777,15 @@ func (m *QuerySubaccountTradeNonceRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountTradeNonceRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryPerpetualMarketInfoRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountTradeNonceRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryPerpetualMarketInfoRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -24326,7 +26813,7 @@ func (m *QuerySubaccountTradeNonceRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -24349,7 +26836,7 @@ func (m *QuerySubaccountTradeNonceRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountPositionsRequest) Unmarshal(dAtA []byte) error { +func (m *QueryPerpetualMarketInfoResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -24372,17 +26859,17 @@ func (m *QuerySubaccountPositionsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountPositionsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryPerpetualMarketInfoResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountPositionsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryPerpetualMarketInfoResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Info", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -24392,23 +26879,24 @@ func (m *QuerySubaccountPositionsRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) + if err := m.Info.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -24431,7 +26919,7 @@ func (m *QuerySubaccountPositionsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountPositionInMarketRequest) Unmarshal(dAtA []byte) error { +func (m *QueryExpiryFuturesMarketInfoRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -24454,45 +26942,13 @@ func (m *QuerySubaccountPositionInMarketRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountPositionInMarketRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryExpiryFuturesMarketInfoRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountPositionInMarketRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryExpiryFuturesMarketInfoRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } @@ -24545,7 +27001,7 @@ func (m *QuerySubaccountPositionInMarketRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountEffectivePositionInMarketRequest) Unmarshal(dAtA []byte) error { +func (m *QueryExpiryFuturesMarketInfoResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -24568,17 +27024,17 @@ func (m *QuerySubaccountEffectivePositionInMarketRequest) Unmarshal(dAtA []byte) fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountEffectivePositionInMarketRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryExpiryFuturesMarketInfoResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountEffectivePositionInMarketRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryExpiryFuturesMarketInfoResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Info", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -24588,55 +27044,24 @@ func (m *QuerySubaccountEffectivePositionInMarketRequest) Unmarshal(dAtA []byte) } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF + if err := m.Info.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -24659,7 +27084,7 @@ func (m *QuerySubaccountEffectivePositionInMarketRequest) Unmarshal(dAtA []byte) } return nil } -func (m *QuerySubaccountOrderMetadataRequest) Unmarshal(dAtA []byte) error { +func (m *QueryPerpetualMarketFundingRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -24682,15 +27107,15 @@ func (m *QuerySubaccountOrderMetadataRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountOrderMetadataRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryPerpetualMarketFundingRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountOrderMetadataRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryPerpetualMarketFundingRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -24718,7 +27143,7 @@ func (m *QuerySubaccountOrderMetadataRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -24741,7 +27166,7 @@ func (m *QuerySubaccountOrderMetadataRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountPositionsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryPerpetualMarketFundingResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -24764,10 +27189,10 @@ func (m *QuerySubaccountPositionsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountPositionsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryPerpetualMarketFundingResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountPositionsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryPerpetualMarketFundingResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -24799,8 +27224,7 @@ func (m *QuerySubaccountPositionsResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.State = append(m.State, DerivativePosition{}) - if err := m.State[len(m.State)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.State.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -24825,7 +27249,7 @@ func (m *QuerySubaccountPositionsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountPositionInMarketResponse) Unmarshal(dAtA []byte) error { +func (m *QuerySubaccountOrderMetadataResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -24848,15 +27272,15 @@ func (m *QuerySubaccountPositionInMarketResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountPositionInMarketResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySubaccountOrderMetadataResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountPositionInMarketResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySubaccountOrderMetadataResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -24883,10 +27307,8 @@ func (m *QuerySubaccountPositionInMarketResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.State == nil { - m.State = &Position{} - } - if err := m.State.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Metadata = append(m.Metadata, SubaccountOrderbookMetadataWithMarket{}) + if err := m.Metadata[len(m.Metadata)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -24911,7 +27333,7 @@ func (m *QuerySubaccountPositionInMarketResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *EffectivePosition) Unmarshal(dAtA []byte) error { +func (m *QuerySubaccountTradeNonceResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -24934,37 +27356,17 @@ func (m *EffectivePosition) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: EffectivePosition: wiretype end group for non-group") + return fmt.Errorf("proto: QuerySubaccountTradeNonceResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: EffectivePosition: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QuerySubaccountTradeNonceResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field IsLong", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.IsLong = bool(v != 0) - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Quantity", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType) } - var stringLen uint64 + m.Nonce = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -24974,94 +27376,61 @@ func (m *EffectivePosition) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.Nonce |= uint32(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Quantity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { return err } - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EntryPrice", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { + if (skippy < 0) || (iNdEx+skippy) < 0 { return ErrInvalidLengthQuery } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - if err := m.EntryPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EffectiveMargin", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryModuleStateRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery } - if postIndex > l { + if iNdEx >= l { return io.ErrUnexpectedEOF } - if err := m.EffectiveMargin.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break } - iNdEx = postIndex + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryModuleStateRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryModuleStateRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -25083,7 +27452,7 @@ func (m *EffectivePosition) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountEffectivePositionInMarketResponse) Unmarshal(dAtA []byte) error { +func (m *QueryModuleStateResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -25106,10 +27475,10 @@ func (m *QuerySubaccountEffectivePositionInMarketResponse) Unmarshal(dAtA []byte fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountEffectivePositionInMarketResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryModuleStateResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountEffectivePositionInMarketResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryModuleStateResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -25142,7 +27511,7 @@ func (m *QuerySubaccountEffectivePositionInMarketResponse) Unmarshal(dAtA []byte return io.ErrUnexpectedEOF } if m.State == nil { - m.State = &EffectivePosition{} + m.State = &GenesisState{} } if err := m.State.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err @@ -25169,7 +27538,7 @@ func (m *QuerySubaccountEffectivePositionInMarketResponse) Unmarshal(dAtA []byte } return nil } -func (m *QueryPerpetualMarketInfoRequest) Unmarshal(dAtA []byte) error { +func (m *QueryPositionsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -25192,44 +27561,12 @@ func (m *QueryPerpetualMarketInfoRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryPerpetualMarketInfoRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryPositionsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryPerpetualMarketInfoRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryPositionsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.MarketId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -25251,7 +27588,7 @@ func (m *QueryPerpetualMarketInfoRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryPerpetualMarketInfoResponse) Unmarshal(dAtA []byte) error { +func (m *QueryPositionsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -25274,15 +27611,15 @@ func (m *QueryPerpetualMarketInfoResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryPerpetualMarketInfoResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryPositionsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryPerpetualMarketInfoResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryPositionsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Info", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -25309,7 +27646,8 @@ func (m *QueryPerpetualMarketInfoResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Info.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.State = append(m.State, DerivativePosition{}) + if err := m.State[len(m.State)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -25334,7 +27672,7 @@ func (m *QueryPerpetualMarketInfoResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryExpiryFuturesMarketInfoRequest) Unmarshal(dAtA []byte) error { +func (m *QueryTradeRewardPointsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -25357,15 +27695,15 @@ func (m *QueryExpiryFuturesMarketInfoRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryExpiryFuturesMarketInfoRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryTradeRewardPointsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryExpiryFuturesMarketInfoRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryTradeRewardPointsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Accounts", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -25393,8 +27731,27 @@ func (m *QueryExpiryFuturesMarketInfoRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + m.Accounts = append(m.Accounts, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field PendingPoolTimestamp", wireType) + } + m.PendingPoolTimestamp = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.PendingPoolTimestamp |= int64(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -25416,7 +27773,7 @@ func (m *QueryExpiryFuturesMarketInfoRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryExpiryFuturesMarketInfoResponse) Unmarshal(dAtA []byte) error { +func (m *QueryTradeRewardPointsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -25439,17 +27796,17 @@ func (m *QueryExpiryFuturesMarketInfoResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryExpiryFuturesMarketInfoResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryTradeRewardPointsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryExpiryFuturesMarketInfoResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryTradeRewardPointsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Info", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AccountTradeRewardPoints", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -25459,22 +27816,25 @@ func (m *QueryExpiryFuturesMarketInfoResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Info.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + var v cosmossdk_io_math.LegacyDec + m.AccountTradeRewardPoints = append(m.AccountTradeRewardPoints, v) + if err := m.AccountTradeRewardPoints[len(m.AccountTradeRewardPoints)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -25499,7 +27859,7 @@ func (m *QueryExpiryFuturesMarketInfoResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryPerpetualMarketFundingRequest) Unmarshal(dAtA []byte) error { +func (m *QueryTradeRewardCampaignRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -25522,15 +27882,135 @@ func (m *QueryPerpetualMarketFundingRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryPerpetualMarketFundingRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryTradeRewardCampaignRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryPerpetualMarketFundingRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryTradeRewardCampaignRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryTradeRewardCampaignResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryTradeRewardCampaignResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryTradeRewardCampaignResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field TradingRewardCampaignInfo", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.TradingRewardCampaignInfo == nil { + m.TradingRewardCampaignInfo = &TradingRewardCampaignInfo{} + } + if err := m.TradingRewardCampaignInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TradingRewardPoolCampaignSchedule", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TradingRewardPoolCampaignSchedule = append(m.TradingRewardPoolCampaignSchedule, &CampaignRewardPool{}) + if err := m.TradingRewardPoolCampaignSchedule[len(m.TradingRewardPoolCampaignSchedule)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TotalTradeRewardPoints", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -25558,63 +28038,49 @@ func (m *QueryPerpetualMarketFundingRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { + if err := m.TotalTradeRewardPoints.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PendingTradingRewardPoolCampaignSchedule", wireType) } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryPerpetualMarketFundingResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery + if msglen < 0 { + return ErrInvalidLengthQuery } - if iNdEx >= l { + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + m.PendingTradingRewardPoolCampaignSchedule = append(m.PendingTradingRewardPoolCampaignSchedule, &CampaignRewardPool{}) + if err := m.PendingTradingRewardPoolCampaignSchedule[len(m.PendingTradingRewardPoolCampaignSchedule)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryPerpetualMarketFundingResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryPerpetualMarketFundingResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + iNdEx = postIndex + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PendingTotalTradeRewardPoints", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -25624,22 +28090,25 @@ func (m *QueryPerpetualMarketFundingResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.State.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + var v cosmossdk_io_math.LegacyDec + m.PendingTotalTradeRewardPoints = append(m.PendingTotalTradeRewardPoints, v) + if err := m.PendingTotalTradeRewardPoints[len(m.PendingTotalTradeRewardPoints)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -25664,7 +28133,7 @@ func (m *QueryPerpetualMarketFundingResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountOrderMetadataResponse) Unmarshal(dAtA []byte) error { +func (m *QueryIsOptedOutOfRewardsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -25687,17 +28156,17 @@ func (m *QuerySubaccountOrderMetadataResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountOrderMetadataResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryIsOptedOutOfRewardsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountOrderMetadataResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryIsOptedOutOfRewardsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Account", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -25707,25 +28176,23 @@ func (m *QuerySubaccountOrderMetadataResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.Metadata = append(m.Metadata, SubaccountOrderbookMetadataWithMarket{}) - if err := m.Metadata[len(m.Metadata)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Account = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -25748,7 +28215,7 @@ func (m *QuerySubaccountOrderMetadataResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QuerySubaccountTradeNonceResponse) Unmarshal(dAtA []byte) error { +func (m *QueryIsOptedOutOfRewardsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -25771,17 +28238,17 @@ func (m *QuerySubaccountTradeNonceResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QuerySubaccountTradeNonceResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryIsOptedOutOfRewardsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QuerySubaccountTradeNonceResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryIsOptedOutOfRewardsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field IsOptedOut", wireType) } - m.Nonce = 0 + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -25791,11 +28258,12 @@ func (m *QuerySubaccountTradeNonceResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Nonce |= uint32(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } + m.IsOptedOut = bool(v != 0) default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -25817,7 +28285,7 @@ func (m *QuerySubaccountTradeNonceResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryModuleStateRequest) Unmarshal(dAtA []byte) error { +func (m *QueryOptedOutOfRewardsAccountsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -25840,10 +28308,10 @@ func (m *QueryModuleStateRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryModuleStateRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryOptedOutOfRewardsAccountsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryModuleStateRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryOptedOutOfRewardsAccountsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { default: @@ -25867,7 +28335,7 @@ func (m *QueryModuleStateRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryModuleStateResponse) Unmarshal(dAtA []byte) error { +func (m *QueryOptedOutOfRewardsAccountsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -25890,17 +28358,17 @@ func (m *QueryModuleStateResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryModuleStateResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryOptedOutOfRewardsAccountsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryModuleStateResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryOptedOutOfRewardsAccountsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Accounts", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -25910,27 +28378,23 @@ func (m *QueryModuleStateResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if m.State == nil { - m.State = &GenesisState{} - } - if err := m.State.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Accounts = append(m.Accounts, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex default: iNdEx = preIndex @@ -25953,7 +28417,7 @@ func (m *QueryModuleStateResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryPositionsRequest) Unmarshal(dAtA []byte) error { +func (m *QueryFeeDiscountAccountInfoRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -25976,12 +28440,44 @@ func (m *QueryPositionsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryPositionsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryFeeDiscountAccountInfoRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryPositionsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryFeeDiscountAccountInfoRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Account", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Account = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -26003,7 +28499,7 @@ func (m *QueryPositionsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryPositionsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryFeeDiscountAccountInfoResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -26026,15 +28522,70 @@ func (m *QueryPositionsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryPositionsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryFeeDiscountAccountInfoResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryPositionsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryFeeDiscountAccountInfoResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field TierLevel", wireType) + } + m.TierLevel = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.TierLevel |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AccountInfo", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.AccountInfo == nil { + m.AccountInfo = &FeeDiscountTierInfo{} + } + if err := m.AccountInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AccountTtl", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -26061,8 +28612,10 @@ func (m *QueryPositionsResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.State = append(m.State, DerivativePosition{}) - if err := m.State[len(m.State)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.AccountTtl == nil { + m.AccountTtl = &FeeDiscountTierTTL{} + } + if err := m.AccountTtl.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -26087,7 +28640,7 @@ func (m *QueryPositionsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryTradeRewardPointsRequest) Unmarshal(dAtA []byte) error { +func (m *QueryFeeDiscountScheduleRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -26110,63 +28663,12 @@ func (m *QueryTradeRewardPointsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryTradeRewardPointsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryFeeDiscountScheduleRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryTradeRewardPointsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryFeeDiscountScheduleRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Accounts", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Accounts = append(m.Accounts, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field PendingPoolTimestamp", wireType) - } - m.PendingPoolTimestamp = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.PendingPoolTimestamp |= int64(b&0x7F) << shift - if b < 0x80 { - break - } - } default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -26188,7 +28690,7 @@ func (m *QueryTradeRewardPointsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryTradeRewardPointsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryFeeDiscountScheduleResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -26211,17 +28713,17 @@ func (m *QueryTradeRewardPointsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryTradeRewardPointsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryFeeDiscountScheduleResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryTradeRewardPointsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryFeeDiscountScheduleResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AccountTradeRewardPoints", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field FeeDiscountSchedule", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -26231,25 +28733,25 @@ func (m *QueryTradeRewardPointsResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - var v cosmossdk_io_math.LegacyDec - m.AccountTradeRewardPoints = append(m.AccountTradeRewardPoints, v) - if err := m.AccountTradeRewardPoints[len(m.AccountTradeRewardPoints)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.FeeDiscountSchedule == nil { + m.FeeDiscountSchedule = &FeeDiscountSchedule{} + } + if err := m.FeeDiscountSchedule.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -26274,7 +28776,7 @@ func (m *QueryTradeRewardPointsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryTradeRewardCampaignRequest) Unmarshal(dAtA []byte) error { +func (m *QueryBalanceMismatchesRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -26297,12 +28799,31 @@ func (m *QueryTradeRewardCampaignRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryTradeRewardCampaignRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryBalanceMismatchesRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryTradeRewardCampaignRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryBalanceMismatchesRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DustFactor", wireType) + } + m.DustFactor = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.DustFactor |= int64(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -26324,7 +28845,7 @@ func (m *QueryTradeRewardCampaignRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryTradeRewardCampaignResponse) Unmarshal(dAtA []byte) error { +func (m *BalanceMismatch) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -26347,17 +28868,17 @@ func (m *QueryTradeRewardCampaignResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryTradeRewardCampaignResponse: wiretype end group for non-group") + return fmt.Errorf("proto: BalanceMismatch: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryTradeRewardCampaignResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: BalanceMismatch: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TradingRewardCampaignInfo", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -26367,33 +28888,29 @@ func (m *QueryTradeRewardCampaignResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if m.TradingRewardCampaignInfo == nil { - m.TradingRewardCampaignInfo = &TradingRewardCampaignInfo{} - } - if err := m.TradingRewardCampaignInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.SubaccountId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TradingRewardPoolCampaignSchedule", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -26403,29 +28920,27 @@ func (m *QueryTradeRewardCampaignResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.TradingRewardPoolCampaignSchedule = append(m.TradingRewardPoolCampaignSchedule, &CampaignRewardPool{}) - if err := m.TradingRewardPoolCampaignSchedule[len(m.TradingRewardPoolCampaignSchedule)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Denom = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TotalTradeRewardPoints", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Available", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -26453,15 +28968,15 @@ func (m *QueryTradeRewardCampaignResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.TotalTradeRewardPoints.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Available.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PendingTradingRewardPoolCampaignSchedule", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Total", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -26471,29 +28986,29 @@ func (m *QueryTradeRewardCampaignResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.PendingTradingRewardPoolCampaignSchedule = append(m.PendingTradingRewardPoolCampaignSchedule, &CampaignRewardPool{}) - if err := m.PendingTradingRewardPoolCampaignSchedule[len(m.PendingTradingRewardPoolCampaignSchedule)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Total.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PendingTotalTradeRewardPoints", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BalanceHold", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -26521,65 +29036,47 @@ func (m *QueryTradeRewardCampaignResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - var v cosmossdk_io_math.LegacyDec - m.PendingTotalTradeRewardPoints = append(m.PendingTotalTradeRewardPoints, v) - if err := m.PendingTotalTradeRewardPoints[len(m.PendingTotalTradeRewardPoints)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.BalanceHold.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ExpectedTotal", wireType) } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryIsOptedOutOfRewardsRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery } - if iNdEx >= l { + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + if err := m.ExpectedTotal.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryIsOptedOutOfRewardsRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryIsOptedOutOfRewardsRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + iNdEx = postIndex + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Account", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Difference", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -26607,7 +29104,9 @@ func (m *QueryIsOptedOutOfRewardsRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Account = string(dAtA[iNdEx:postIndex]) + if err := m.Difference.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -26630,7 +29129,7 @@ func (m *QueryIsOptedOutOfRewardsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryIsOptedOutOfRewardsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryBalanceMismatchesResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -26653,17 +29152,17 @@ func (m *QueryIsOptedOutOfRewardsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryIsOptedOutOfRewardsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryBalanceMismatchesResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryIsOptedOutOfRewardsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryBalanceMismatchesResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field IsOptedOut", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BalanceMismatches", wireType) } - var v int + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -26673,12 +29172,26 @@ func (m *QueryIsOptedOutOfRewardsResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= int(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - m.IsOptedOut = bool(v != 0) + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BalanceMismatches = append(m.BalanceMismatches, &BalanceMismatch{}) + if err := m.BalanceMismatches[len(m.BalanceMismatches)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -26700,7 +29213,7 @@ func (m *QueryIsOptedOutOfRewardsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryOptedOutOfRewardsAccountsRequest) Unmarshal(dAtA []byte) error { +func (m *QueryBalanceWithBalanceHoldsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -26723,10 +29236,10 @@ func (m *QueryOptedOutOfRewardsAccountsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryOptedOutOfRewardsAccountsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryBalanceWithBalanceHoldsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryOptedOutOfRewardsAccountsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryBalanceWithBalanceHoldsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { default: @@ -26750,7 +29263,7 @@ func (m *QueryOptedOutOfRewardsAccountsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryOptedOutOfRewardsAccountsResponse) Unmarshal(dAtA []byte) error { +func (m *BalanceWithMarginHold) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -26773,15 +29286,15 @@ func (m *QueryOptedOutOfRewardsAccountsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryOptedOutOfRewardsAccountsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: BalanceWithMarginHold: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryOptedOutOfRewardsAccountsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: BalanceWithMarginHold: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Accounts", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -26809,61 +29322,77 @@ func (m *QueryOptedOutOfRewardsAccountsResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Accounts = append(m.Accounts, string(dAtA[iNdEx:postIndex])) + m.SubaccountId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) } - if (skippy < 0) || (iNdEx+skippy) < 0 { + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - if (iNdEx + skippy) > l { + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { return io.ErrUnexpectedEOF } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryFeeDiscountAccountInfoRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery + m.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Available", wireType) } - if iNdEx >= l { + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + if err := m.Available.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryFeeDiscountAccountInfoRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryFeeDiscountAccountInfoRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + iNdEx = postIndex + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Account", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Total", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -26891,7 +29420,43 @@ func (m *QueryFeeDiscountAccountInfoRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Account = string(dAtA[iNdEx:postIndex]) + if err := m.Total.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BalanceHold", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.BalanceHold.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -26914,7 +29479,7 @@ func (m *QueryFeeDiscountAccountInfoRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryFeeDiscountAccountInfoResponse) Unmarshal(dAtA []byte) error { +func (m *QueryBalanceWithBalanceHoldsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -26933,74 +29498,19 @@ func (m *QueryFeeDiscountAccountInfoResponse) Unmarshal(dAtA []byte) error { if b < 0x80 { break } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryFeeDiscountAccountInfoResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryFeeDiscountAccountInfoResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field TierLevel", wireType) - } - m.TierLevel = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.TierLevel |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AccountInfo", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.AccountInfo == nil { - m.AccountInfo = &FeeDiscountTierInfo{} - } - if err := m.AccountInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryBalanceWithBalanceHoldsResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryBalanceWithBalanceHoldsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AccountTtl", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BalanceWithBalanceHolds", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -27027,10 +29537,8 @@ func (m *QueryFeeDiscountAccountInfoResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.AccountTtl == nil { - m.AccountTtl = &FeeDiscountTierTTL{} - } - if err := m.AccountTtl.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.BalanceWithBalanceHolds = append(m.BalanceWithBalanceHolds, &BalanceWithMarginHold{}) + if err := m.BalanceWithBalanceHolds[len(m.BalanceWithBalanceHolds)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -27055,7 +29563,7 @@ func (m *QueryFeeDiscountAccountInfoResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryFeeDiscountScheduleRequest) Unmarshal(dAtA []byte) error { +func (m *QueryFeeDiscountTierStatisticsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -27078,10 +29586,10 @@ func (m *QueryFeeDiscountScheduleRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryFeeDiscountScheduleRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryFeeDiscountTierStatisticsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryFeeDiscountScheduleRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryFeeDiscountTierStatisticsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { default: @@ -27105,7 +29613,7 @@ func (m *QueryFeeDiscountScheduleRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryFeeDiscountScheduleResponse) Unmarshal(dAtA []byte) error { +func (m *TierStatistic) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -27128,17 +29636,17 @@ func (m *QueryFeeDiscountScheduleResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryFeeDiscountScheduleResponse: wiretype end group for non-group") + return fmt.Errorf("proto: TierStatistic: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryFeeDiscountScheduleResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: TierStatistic: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field FeeDiscountSchedule", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Tier", wireType) } - var msglen int + m.Tier = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -27148,28 +29656,30 @@ func (m *QueryFeeDiscountScheduleResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + m.Tier |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.FeeDiscountSchedule == nil { - m.FeeDiscountSchedule = &FeeDiscountSchedule{} + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Count", wireType) } - if err := m.FeeDiscountSchedule.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + m.Count = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Count |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } } - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -27191,7 +29701,7 @@ func (m *QueryFeeDiscountScheduleResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryBalanceMismatchesRequest) Unmarshal(dAtA []byte) error { +func (m *QueryFeeDiscountTierStatisticsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -27214,17 +29724,17 @@ func (m *QueryBalanceMismatchesRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryBalanceMismatchesRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryFeeDiscountTierStatisticsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryBalanceMismatchesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryFeeDiscountTierStatisticsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field DustFactor", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Statistics", wireType) } - m.DustFactor = 0 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -27234,11 +29744,26 @@ func (m *QueryBalanceMismatchesRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.DustFactor |= int64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Statistics = append(m.Statistics, &TierStatistic{}) + if err := m.Statistics[len(m.Statistics)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -27260,7 +29785,7 @@ func (m *QueryBalanceMismatchesRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *BalanceMismatch) Unmarshal(dAtA []byte) error { +func (m *MitoVaultInfosRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -27283,15 +29808,65 @@ func (m *BalanceMismatch) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: BalanceMismatch: wiretype end group for non-group") + return fmt.Errorf("proto: MitoVaultInfosRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: BalanceMismatch: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MitoVaultInfosRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MitoVaultInfosResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MitoVaultInfosResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MitoVaultInfosResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MasterAddresses", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -27319,11 +29894,11 @@ func (m *BalanceMismatch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) + m.MasterAddresses = append(m.MasterAddresses, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DerivativeAddresses", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -27351,11 +29926,11 @@ func (m *BalanceMismatch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Denom = string(dAtA[iNdEx:postIndex]) + m.DerivativeAddresses = append(m.DerivativeAddresses, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Available", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SpotAddresses", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -27383,13 +29958,11 @@ func (m *BalanceMismatch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Available.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.SpotAddresses = append(m.SpotAddresses, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Total", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Cw20Addresses", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -27417,13 +29990,61 @@ func (m *BalanceMismatch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Total.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Cw20Addresses = append(m.Cw20Addresses, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { return err } - iNdEx = postIndex - case 5: + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryMarketIDFromVaultRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryMarketIDFromVaultRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryMarketIDFromVaultRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BalanceHold", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VaultAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -27451,47 +30072,61 @@ func (m *BalanceMismatch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.BalanceHold.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.VaultAddress = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ExpectedTotal", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err } - intStringLen := int(stringLen) - if intStringLen < 0 { + if (skippy < 0) || (iNdEx+skippy) < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF } - if postIndex > l { + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryMarketIDFromVaultResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { return io.ErrUnexpectedEOF } - if err := m.ExpectedTotal.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break } - iNdEx = postIndex - case 7: + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryMarketIDFromVaultResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryMarketIDFromVaultResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Difference", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -27519,9 +30154,7 @@ func (m *BalanceMismatch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Difference.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -27544,7 +30177,7 @@ func (m *BalanceMismatch) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryBalanceMismatchesResponse) Unmarshal(dAtA []byte) error { +func (m *QueryHistoricalTradeRecordsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -27567,17 +30200,17 @@ func (m *QueryBalanceMismatchesResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryBalanceMismatchesResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryHistoricalTradeRecordsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryBalanceMismatchesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryHistoricalTradeRecordsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BalanceMismatches", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -27587,25 +30220,23 @@ func (m *QueryBalanceMismatchesResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.BalanceMismatches = append(m.BalanceMismatches, &BalanceMismatch{}) - if err := m.BalanceMismatches[len(m.BalanceMismatches)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -27628,7 +30259,7 @@ func (m *QueryBalanceMismatchesResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryBalanceWithBalanceHoldsRequest) Unmarshal(dAtA []byte) error { +func (m *QueryHistoricalTradeRecordsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -27651,12 +30282,46 @@ func (m *QueryBalanceWithBalanceHoldsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryBalanceWithBalanceHoldsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryHistoricalTradeRecordsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryBalanceWithBalanceHoldsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryHistoricalTradeRecordsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TradeRecords", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TradeRecords = append(m.TradeRecords, &TradeRecords{}) + if err := m.TradeRecords[len(m.TradeRecords)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -27678,7 +30343,7 @@ func (m *QueryBalanceWithBalanceHoldsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *BalanceWithMarginHold) Unmarshal(dAtA []byte) error { +func (m *TradeHistoryOptions) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -27701,17 +30366,17 @@ func (m *BalanceWithMarginHold) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: BalanceWithMarginHold: wiretype end group for non-group") + return fmt.Errorf("proto: TradeHistoryOptions: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: BalanceWithMarginHold: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: TradeHistoryOptions: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field TradeGroupingSec", wireType) } - var stringLen uint64 + m.TradeGroupingSec = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -27721,29 +30386,16 @@ func (m *BalanceWithMarginHold) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.TradeGroupingSec |= uint64(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field MaxAge", wireType) } - var stringLen uint64 + m.MaxAge = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -27753,29 +30405,36 @@ func (m *BalanceWithMarginHold) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.MaxAge |= uint64(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IncludeRawHistory", wireType) } - if postIndex > l { - return io.ErrUnexpectedEOF + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } } - m.Denom = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Available", wireType) + m.IncludeRawHistory = bool(v != 0) + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IncludeMetadata", wireType) } - var stringLen uint64 + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -27785,29 +30444,65 @@ func (m *BalanceWithMarginHold) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery + m.IncludeMetadata = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err } - postIndex := iNdEx + intStringLen - if postIndex < 0 { + if (skippy < 0) || (iNdEx+skippy) < 0 { return ErrInvalidLengthQuery } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - if err := m.Available.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryMarketVolatilityRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery } - iNdEx = postIndex - case 4: + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryMarketVolatilityRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryMarketVolatilityRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Total", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -27835,15 +30530,13 @@ func (m *BalanceWithMarginHold) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Total.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 5: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BalanceHold", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field TradeHistoryOptions", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -27853,23 +30546,25 @@ func (m *BalanceWithMarginHold) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.BalanceHold.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.TradeHistoryOptions == nil { + m.TradeHistoryOptions = &TradeHistoryOptions{} + } + if err := m.TradeHistoryOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -27894,7 +30589,7 @@ func (m *BalanceWithMarginHold) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryBalanceWithBalanceHoldsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryMarketVolatilityResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -27917,15 +30612,51 @@ func (m *QueryBalanceWithBalanceHoldsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryBalanceWithBalanceHoldsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryMarketVolatilityResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryBalanceWithBalanceHoldsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryMarketVolatilityResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BalanceWithBalanceHolds", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Volatility", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + var v cosmossdk_io_math.LegacyDec + m.Volatility = &v + if err := m.Volatility.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field HistoryMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -27952,61 +30683,47 @@ func (m *QueryBalanceWithBalanceHoldsResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.BalanceWithBalanceHolds = append(m.BalanceWithBalanceHolds, &BalanceWithMarginHold{}) - if err := m.BalanceWithBalanceHolds[len(m.BalanceWithBalanceHolds)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.HistoryMetadata == nil { + m.HistoryMetadata = &types.MetadataStatistics{} + } + if err := m.HistoryMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RawHistory", wireType) } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF + if msglen < 0 { + return ErrInvalidLengthQuery } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryFeeDiscountTierStatisticsRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery } - if iNdEx >= l { + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + m.RawHistory = append(m.RawHistory, &TradeRecord{}) + if err := m.RawHistory[len(m.RawHistory)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryFeeDiscountTierStatisticsRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryFeeDiscountTierStatisticsRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -28028,7 +30745,7 @@ func (m *QueryFeeDiscountTierStatisticsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *TierStatistic) Unmarshal(dAtA []byte) error { +func (m *QueryBinaryMarketsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -28051,17 +30768,17 @@ func (m *TierStatistic) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: TierStatistic: wiretype end group for non-group") + return fmt.Errorf("proto: QueryBinaryMarketsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: TierStatistic: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryBinaryMarketsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Tier", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) } - m.Tier = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -28071,30 +30788,24 @@ func (m *TierStatistic) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Tier |= uint64(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Count", wireType) + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery } - m.Count = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Count |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF } + m.Status = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -28116,7 +30827,7 @@ func (m *TierStatistic) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryFeeDiscountTierStatisticsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryBinaryMarketsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -28139,15 +30850,15 @@ func (m *QueryFeeDiscountTierStatisticsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryFeeDiscountTierStatisticsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryBinaryMarketsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryFeeDiscountTierStatisticsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryBinaryMarketsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Statistics", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Markets", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -28174,8 +30885,8 @@ func (m *QueryFeeDiscountTierStatisticsResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Statistics = append(m.Statistics, &TierStatistic{}) - if err := m.Statistics[len(m.Statistics)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Markets = append(m.Markets, &BinaryOptionsMarket{}) + if err := m.Markets[len(m.Markets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -28200,7 +30911,7 @@ func (m *QueryFeeDiscountTierStatisticsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MitoVaultInfosRequest) Unmarshal(dAtA []byte) error { +func (m *QueryTraderDerivativeConditionalOrdersRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -28223,12 +30934,76 @@ func (m *MitoVaultInfosRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MitoVaultInfosRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryTraderDerivativeConditionalOrdersRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MitoVaultInfosRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryTraderDerivativeConditionalOrdersRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SubaccountId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MarketId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -28250,7 +31025,7 @@ func (m *MitoVaultInfosRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *MitoVaultInfosResponse) Unmarshal(dAtA []byte) error { +func (m *TrimmedDerivativeConditionalOrder) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -28273,15 +31048,15 @@ func (m *MitoVaultInfosResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MitoVaultInfosResponse: wiretype end group for non-group") + return fmt.Errorf("proto: TrimmedDerivativeConditionalOrder: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MitoVaultInfosResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: TrimmedDerivativeConditionalOrder: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MasterAddresses", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Price", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -28309,11 +31084,13 @@ func (m *MitoVaultInfosResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.MasterAddresses = append(m.MasterAddresses, string(dAtA[iNdEx:postIndex])) + if err := m.Price.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DerivativeAddresses", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Quantity", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -28341,11 +31118,13 @@ func (m *MitoVaultInfosResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DerivativeAddresses = append(m.DerivativeAddresses, string(dAtA[iNdEx:postIndex])) + if err := m.Quantity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SpotAddresses", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Margin", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -28373,11 +31152,13 @@ func (m *MitoVaultInfosResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SpotAddresses = append(m.SpotAddresses, string(dAtA[iNdEx:postIndex])) + if err := m.Margin.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Cw20Addresses", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field TriggerPrice", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -28405,61 +31186,85 @@ func (m *MitoVaultInfosResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Cw20Addresses = append(m.Cw20Addresses, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { + if err := m.TriggerPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IsBuy", wireType) } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryMarketIDFromVaultRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery + m.IsBuy = bool(v != 0) + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IsLimit", wireType) } - if iNdEx >= l { - return io.ErrUnexpectedEOF + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + m.IsLimit = bool(v != 0) + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OrderHash", wireType) } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryMarketIDFromVaultRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryMarketIDFromVaultRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.OrderHash = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field VaultAddress", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Cid", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -28487,7 +31292,7 @@ func (m *QueryMarketIDFromVaultRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.VaultAddress = string(dAtA[iNdEx:postIndex]) + m.Cid = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -28510,7 +31315,7 @@ func (m *QueryMarketIDFromVaultRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryMarketIDFromVaultResponse) Unmarshal(dAtA []byte) error { +func (m *QueryTraderDerivativeConditionalOrdersResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -28533,17 +31338,17 @@ func (m *QueryMarketIDFromVaultResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryMarketIDFromVaultResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryTraderDerivativeConditionalOrdersResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryMarketIDFromVaultResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryTraderDerivativeConditionalOrdersResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -28553,23 +31358,25 @@ func (m *QueryMarketIDFromVaultResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + m.Orders = append(m.Orders, &TrimmedDerivativeConditionalOrder{}) + if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -28592,7 +31399,7 @@ func (m *QueryMarketIDFromVaultResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryHistoricalTradeRecordsRequest) Unmarshal(dAtA []byte) error { +func (m *QueryFullSpotOrderbookRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -28615,10 +31422,10 @@ func (m *QueryHistoricalTradeRecordsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryHistoricalTradeRecordsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryFullSpotOrderbookRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryHistoricalTradeRecordsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryFullSpotOrderbookRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -28674,7 +31481,7 @@ func (m *QueryHistoricalTradeRecordsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryHistoricalTradeRecordsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryFullSpotOrderbookResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -28697,15 +31504,15 @@ func (m *QueryHistoricalTradeRecordsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryHistoricalTradeRecordsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryFullSpotOrderbookResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryHistoricalTradeRecordsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryFullSpotOrderbookResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TradeRecords", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Bids", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -28732,8 +31539,42 @@ func (m *QueryHistoricalTradeRecordsResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.TradeRecords = append(m.TradeRecords, &TradeRecords{}) - if err := m.TradeRecords[len(m.TradeRecords)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Bids = append(m.Bids, &TrimmedLimitOrder{}) + if err := m.Bids[len(m.Bids)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Asks", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Asks = append(m.Asks, &TrimmedLimitOrder{}) + if err := m.Asks[len(m.Asks)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -28758,7 +31599,7 @@ func (m *QueryHistoricalTradeRecordsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *TradeHistoryOptions) Unmarshal(dAtA []byte) error { +func (m *QueryFullDerivativeOrderbookRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -28766,70 +31607,32 @@ func (m *TradeHistoryOptions) Unmarshal(dAtA []byte) error { var wire uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: TradeHistoryOptions: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: TradeHistoryOptions: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field TradeGroupingSec", wireType) - } - m.TradeGroupingSec = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.TradeGroupingSec |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field MaxAge", wireType) + return ErrIntOverflowQuery } - m.MaxAge = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.MaxAge |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } + if iNdEx >= l { + return io.ErrUnexpectedEOF } - case 4: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field IncludeRawHistory", wireType) + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break } - var v int + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryFullDerivativeOrderbookRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryFullDerivativeOrderbookRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + } + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -28839,32 +31642,24 @@ func (m *TradeHistoryOptions) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - m.IncludeRawHistory = bool(v != 0) - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field IncludeMetadata", wireType) + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery } - m.IncludeMetadata = bool(v != 0) + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MarketId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -28886,7 +31681,7 @@ func (m *TradeHistoryOptions) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryMarketVolatilityRequest) Unmarshal(dAtA []byte) error { +func (m *QueryFullDerivativeOrderbookResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -28909,17 +31704,17 @@ func (m *QueryMarketVolatilityRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryMarketVolatilityRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryFullDerivativeOrderbookResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryMarketVolatilityRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryFullDerivativeOrderbookResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Bids", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -28929,27 +31724,29 @@ func (m *QueryMarketVolatilityRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + m.Bids = append(m.Bids, &TrimmedLimitOrder{}) + if err := m.Bids[len(m.Bids)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TradeHistoryOptions", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Asks", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -28976,10 +31773,8 @@ func (m *QueryMarketVolatilityRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.TradeHistoryOptions == nil { - m.TradeHistoryOptions = &TradeHistoryOptions{} - } - if err := m.TradeHistoryOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Asks = append(m.Asks, &TrimmedLimitOrder{}) + if err := m.Asks[len(m.Asks)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -29004,7 +31799,7 @@ func (m *QueryMarketVolatilityRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryMarketVolatilityResponse) Unmarshal(dAtA []byte) error { +func (m *TrimmedLimitOrder) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -29027,15 +31822,15 @@ func (m *QueryMarketVolatilityResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryMarketVolatilityResponse: wiretype end group for non-group") + return fmt.Errorf("proto: TrimmedLimitOrder: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryMarketVolatilityResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: TrimmedLimitOrder: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Volatility", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Price", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -29063,17 +31858,15 @@ func (m *QueryMarketVolatilityResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - var v cosmossdk_io_math.LegacyDec - m.Volatility = &v - if err := m.Volatility.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Price.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HistoryMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Quantity", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -29083,33 +31876,31 @@ func (m *QueryMarketVolatilityResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - if m.HistoryMetadata == nil { - m.HistoryMetadata = &types.MetadataStatistics{} - } - if err := m.HistoryMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Quantity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RawHistory", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field OrderHash", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -29119,25 +31910,137 @@ func (m *QueryMarketVolatilityResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.RawHistory = append(m.RawHistory, &TradeRecord{}) - if err := m.RawHistory[len(m.RawHistory)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.OrderHash = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SubaccountId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { return err } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryMarketAtomicExecutionFeeMultiplierRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryMarketAtomicExecutionFeeMultiplierRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -29160,7 +32063,7 @@ func (m *QueryMarketVolatilityResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryBinaryMarketsRequest) Unmarshal(dAtA []byte) error { +func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -29183,15 +32086,15 @@ func (m *QueryBinaryMarketsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryBinaryMarketsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryMarketAtomicExecutionFeeMultiplierResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryBinaryMarketsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryMarketAtomicExecutionFeeMultiplierResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Multiplier", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -29219,7 +32122,9 @@ func (m *QueryBinaryMarketsRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Status = string(dAtA[iNdEx:postIndex]) + if err := m.Multiplier.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -29242,7 +32147,7 @@ func (m *QueryBinaryMarketsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryBinaryMarketsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryActiveStakeGrantRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -29265,17 +32170,17 @@ func (m *QueryBinaryMarketsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryBinaryMarketsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryActiveStakeGrantRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryBinaryMarketsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryActiveStakeGrantRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Markets", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Grantee", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -29285,25 +32190,23 @@ func (m *QueryBinaryMarketsResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.Markets = append(m.Markets, &BinaryOptionsMarket{}) - if err := m.Markets[len(m.Markets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Grantee = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -29326,7 +32229,7 @@ func (m *QueryBinaryMarketsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryTraderDerivativeConditionalOrdersRequest) Unmarshal(dAtA []byte) error { +func (m *QueryActiveStakeGrantResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -29349,17 +32252,17 @@ func (m *QueryTraderDerivativeConditionalOrdersRequest) Unmarshal(dAtA []byte) e fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryTraderDerivativeConditionalOrdersRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryActiveStakeGrantResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryTraderDerivativeConditionalOrdersRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryActiveStakeGrantResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Grant", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -29369,29 +32272,33 @@ func (m *QueryTraderDerivativeConditionalOrdersRequest) Unmarshal(dAtA []byte) e } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.SubaccountId = string(dAtA[iNdEx:postIndex]) + if m.Grant == nil { + m.Grant = &ActiveGrant{} + } + if err := m.Grant.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EffectiveGrant", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -29401,23 +32308,27 @@ func (m *QueryTraderDerivativeConditionalOrdersRequest) Unmarshal(dAtA []byte) e } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.MarketId = string(dAtA[iNdEx:postIndex]) + if m.EffectiveGrant == nil { + m.EffectiveGrant = &EffectiveGrant{} + } + if err := m.EffectiveGrant.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -29440,7 +32351,7 @@ func (m *QueryTraderDerivativeConditionalOrdersRequest) Unmarshal(dAtA []byte) e } return nil } -func (m *TrimmedDerivativeConditionalOrder) Unmarshal(dAtA []byte) error { +func (m *QueryGrantAuthorizationRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -29463,15 +32374,15 @@ func (m *TrimmedDerivativeConditionalOrder) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: TrimmedDerivativeConditionalOrder: wiretype end group for non-group") + return fmt.Errorf("proto: QueryGrantAuthorizationRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: TrimmedDerivativeConditionalOrder: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryGrantAuthorizationRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Price", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Granter", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -29499,13 +32410,11 @@ func (m *TrimmedDerivativeConditionalOrder) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Price.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Granter = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Quantity", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Grantee", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -29533,47 +32442,61 @@ func (m *TrimmedDerivativeConditionalOrder) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Quantity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Grantee = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Margin", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err } - intStringLen := int(stringLen) - if intStringLen < 0 { + if (skippy < 0) || (iNdEx+skippy) < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF } - if postIndex > l { + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryGrantAuthorizationResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { return io.ErrUnexpectedEOF } - if err := m.Margin.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break } - iNdEx = postIndex - case 4: + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryGrantAuthorizationResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryGrantAuthorizationResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TriggerPrice", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -29601,85 +32524,63 @@ func (m *TrimmedDerivativeConditionalOrder) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.TriggerPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field IsBuy", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.IsBuy = bool(v != 0) - case 6: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field IsLimit", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.IsLimit = bool(v != 0) - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OrderHash", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err } - intStringLen := int(stringLen) - if intStringLen < 0 { + if (skippy < 0) || (iNdEx+skippy) < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF } - if postIndex > l { + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryGrantAuthorizationsRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { return io.ErrUnexpectedEOF } - m.OrderHash = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 8: + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryGrantAuthorizationsRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryGrantAuthorizationsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Cid", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Granter", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -29707,7 +32608,7 @@ func (m *TrimmedDerivativeConditionalOrder) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Cid = string(dAtA[iNdEx:postIndex]) + m.Granter = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -29730,7 +32631,7 @@ func (m *TrimmedDerivativeConditionalOrder) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryTraderDerivativeConditionalOrdersResponse) Unmarshal(dAtA []byte) error { +func (m *QueryGrantAuthorizationsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -29753,15 +32654,49 @@ func (m *QueryTraderDerivativeConditionalOrdersResponse) Unmarshal(dAtA []byte) fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryTraderDerivativeConditionalOrdersResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryGrantAuthorizationsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryTraderDerivativeConditionalOrdersResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryGrantAuthorizationsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field TotalGrantAmount", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.TotalGrantAmount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Grants", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -29788,8 +32723,8 @@ func (m *QueryTraderDerivativeConditionalOrdersResponse) Unmarshal(dAtA []byte) if postIndex > l { return io.ErrUnexpectedEOF } - m.Orders = append(m.Orders, &TrimmedDerivativeConditionalOrder{}) - if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Grants = append(m.Grants, &GrantAuthorization{}) + if err := m.Grants[len(m.Grants)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -29814,7 +32749,7 @@ func (m *QueryTraderDerivativeConditionalOrdersResponse) Unmarshal(dAtA []byte) } return nil } -func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) Unmarshal(dAtA []byte) error { +func (m *QueryMarketBalanceRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -29837,10 +32772,10 @@ func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) Unmarshal(dAtA []byte) fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryMarketAtomicExecutionFeeMultiplierRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryMarketBalanceRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryMarketAtomicExecutionFeeMultiplierRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryMarketBalanceRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -29896,7 +32831,7 @@ func (m *QueryMarketAtomicExecutionFeeMultiplierRequest) Unmarshal(dAtA []byte) } return nil } -func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) Unmarshal(dAtA []byte) error { +func (m *QueryMarketBalanceResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -29919,15 +32854,15 @@ func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) Unmarshal(dAtA []byte) fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryMarketAtomicExecutionFeeMultiplierResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryMarketBalanceResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryMarketAtomicExecutionFeeMultiplierResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryMarketBalanceResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Multiplier", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Balance", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -29955,7 +32890,7 @@ func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) Unmarshal(dAtA []byte) if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Multiplier.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Balance.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -29980,7 +32915,7 @@ func (m *QueryMarketAtomicExecutionFeeMultiplierResponse) Unmarshal(dAtA []byte) } return nil } -func (m *QueryActiveStakeGrantRequest) Unmarshal(dAtA []byte) error { +func (m *QueryMarketBalancesRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -30003,44 +32938,12 @@ func (m *QueryActiveStakeGrantRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryActiveStakeGrantRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryMarketBalancesRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryActiveStakeGrantRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryMarketBalancesRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Grantee", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Grantee = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -30062,7 +32965,7 @@ func (m *QueryActiveStakeGrantRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryActiveStakeGrantResponse) Unmarshal(dAtA []byte) error { +func (m *QueryMarketBalancesResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -30085,51 +32988,15 @@ func (m *QueryActiveStakeGrantResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryActiveStakeGrantResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryMarketBalancesResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryActiveStakeGrantResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryMarketBalancesResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Grant", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Grant == nil { - m.Grant = &ActiveGrant{} - } - if err := m.Grant.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EffectiveGrant", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Balances", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -30156,10 +33023,8 @@ func (m *QueryActiveStakeGrantResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.EffectiveGrant == nil { - m.EffectiveGrant = &EffectiveGrant{} - } - if err := m.EffectiveGrant.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Balances = append(m.Balances, &MarketBalance{}) + if err := m.Balances[len(m.Balances)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -30184,7 +33049,7 @@ func (m *QueryActiveStakeGrantResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryGrantAuthorizationRequest) Unmarshal(dAtA []byte) error { +func (m *MarketBalance) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -30207,15 +33072,15 @@ func (m *QueryGrantAuthorizationRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryGrantAuthorizationRequest: wiretype end group for non-group") + return fmt.Errorf("proto: MarketBalance: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryGrantAuthorizationRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MarketBalance: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Granter", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -30243,11 +33108,11 @@ func (m *QueryGrantAuthorizationRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Granter = string(dAtA[iNdEx:postIndex]) + m.MarketId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Grantee", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Balance", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -30275,7 +33140,9 @@ func (m *QueryGrantAuthorizationRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Grantee = string(dAtA[iNdEx:postIndex]) + if err := m.Balance.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -30298,7 +33165,7 @@ func (m *QueryGrantAuthorizationRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryGrantAuthorizationResponse) Unmarshal(dAtA []byte) error { +func (m *QueryDenomMinNotionalRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -30321,15 +33188,15 @@ func (m *QueryGrantAuthorizationResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryGrantAuthorizationResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDenomMinNotionalRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryGrantAuthorizationResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryDenomMinNotionalRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -30357,9 +33224,7 @@ func (m *QueryGrantAuthorizationResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Denom = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -30382,7 +33247,7 @@ func (m *QueryGrantAuthorizationResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryGrantAuthorizationsRequest) Unmarshal(dAtA []byte) error { +func (m *QueryDenomMinNotionalResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -30405,15 +33270,15 @@ func (m *QueryGrantAuthorizationsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryGrantAuthorizationsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDenomMinNotionalResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryGrantAuthorizationsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryDenomMinNotionalResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Granter", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -30441,7 +33306,9 @@ func (m *QueryGrantAuthorizationsRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Granter = string(dAtA[iNdEx:postIndex]) + if err := m.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -30464,7 +33331,7 @@ func (m *QueryGrantAuthorizationsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryGrantAuthorizationsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryDenomMinNotionalsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -30487,49 +33354,65 @@ func (m *QueryGrantAuthorizationsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryGrantAuthorizationsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryDenomMinNotionalsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryGrantAuthorizationsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryDenomMinNotionalsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TotalGrantAmount", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err } - intStringLen := int(stringLen) - if intStringLen < 0 { + if (skippy < 0) || (iNdEx+skippy) < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF } - if postIndex > l { + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryDenomMinNotionalsResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { return io.ErrUnexpectedEOF } - if err := m.TotalGrantAmount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break } - iNdEx = postIndex - case 2: + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryDenomMinNotionalsResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryDenomMinNotionalsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Grants", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DenomMinNotionals", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -30556,8 +33439,8 @@ func (m *QueryGrantAuthorizationsResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Grants = append(m.Grants, &GrantAuthorization{}) - if err := m.Grants[len(m.Grants)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.DenomMinNotionals = append(m.DenomMinNotionals, &DenomMinNotional{}) + if err := m.DenomMinNotionals[len(m.DenomMinNotionals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex diff --git a/chain/exchange/types/reclamation.go b/chain/exchange/types/reclamation.go deleted file mode 100644 index e1d7d3f0..00000000 --- a/chain/exchange/types/reclamation.go +++ /dev/null @@ -1,41 +0,0 @@ -package types - -import ( - "fmt" - - sdksecp256k1 "github.com/cosmos/cosmos-sdk/crypto/keys/secp256k1" - - "github.com/InjectiveLabs/sdk-go/chain/crypto/ethsecp256k1" - - sdk "github.com/cosmos/cosmos-sdk/types" -) - -func ValidateFundsReclaimSignature( - lockedAccountPubKey, signature []byte, -) error { - // validate the signature of the locked account - lockedPubKey := sdksecp256k1.PubKey{ - Key: lockedAccountPubKey, - } - - correctPubKey := ethsecp256k1.PubKey{ - Key: lockedAccountPubKey, - } - - lockedAddress := sdk.AccAddress(lockedPubKey.Address()) - recipient := sdk.AccAddress(correctPubKey.Address()) - - signMessage := ConstructFundsReclaimMessage(recipient, lockedAddress) - - if !lockedPubKey.VerifySignature(signMessage, signature) { - return ErrInvalidSignature - } - return nil -} - -func ConstructFundsReclaimMessage( - recipient, signer sdk.AccAddress, -) []byte { - message := fmt.Sprintf("I authorize %s to reclaim my funds from locked account %s on Injective", recipient.String(), signer.String()) - return []byte(message) -} diff --git a/chain/exchange/types/spot_orders.go b/chain/exchange/types/spot_orders.go index ac5b243e..f7e34d45 100644 --- a/chain/exchange/types/spot_orders.go +++ b/chain/exchange/types/spot_orders.go @@ -24,6 +24,14 @@ func (o *SpotOrder) ToSpotMarketOrder(sender sdk.AccAddress, balanceHold math.Le TriggerPrice: o.TriggerPrice, } } +func (m *SpotLimitOrder) ToStandardized() *TrimmedLimitOrder { + return &TrimmedLimitOrder{ + Price: m.OrderInfo.Price, + Quantity: m.OrderInfo.Quantity, + OrderHash: common.BytesToHash(m.OrderHash).Hex(), + SubaccountId: m.OrderInfo.SubaccountId, + } +} func (o *SpotOrder) GetNewSpotLimitOrder(sender sdk.AccAddress, orderHash common.Hash) *SpotLimitOrder { if o.OrderInfo.FeeRecipient == "" { @@ -143,7 +151,9 @@ func (m *SpotLimitOrder) GetUnfilledFeeAmount(fee math.LegacyDec) math.LegacyDec return m.GetUnfilledNotional().Mul(fee) } -func (m *SpotOrder) GetBalanceHoldAndMarginDenom(market *SpotMarket) (balanceHold math.LegacyDec, denom string) { +func (m *SpotOrder) GetBalanceHoldAndMarginDenom(market *SpotMarket) (math.LegacyDec, string) { + var denom string + var balanceHold math.LegacyDec if m.IsBuy() { denom = market.QuoteDenom if m.OrderType.IsPostOnly() { @@ -165,7 +175,9 @@ func (m *SpotOrder) GetBalanceHoldAndMarginDenom(market *SpotMarket) (balanceHol return balanceHold, denom } -func (m *SpotLimitOrder) GetUnfilledMarginHoldAndMarginDenom(market *SpotMarket, isTransient bool) (balanceHold math.LegacyDec, denom string) { +func (m *SpotLimitOrder) GetUnfilledMarginHoldAndMarginDenom(market *SpotMarket, isTransient bool) (math.LegacyDec, string) { + var denom string + var balanceHold math.LegacyDec if m.IsBuy() { var tradeFeeRate math.LegacyDec diff --git a/chain/exchange/types/tx.pb.go b/chain/exchange/types/tx.pb.go index 4a78fb8f..c1caeb05 100644 --- a/chain/exchange/types/tx.pb.go +++ b/chain/exchange/types/tx.pb.go @@ -638,6 +638,10 @@ type MsgInstantSpotMarketLaunch struct { // min_notional defines the minimum notional (in quote asset) required for // orders in the market MinNotional cosmossdk_io_math.LegacyDec `protobuf:"bytes,7,opt,name=min_notional,json=minNotional,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_notional"` + // base token decimals + BaseDecimals uint32 `protobuf:"varint,8,opt,name=base_decimals,json=baseDecimals,proto3" json:"base_decimals,omitempty"` + // quote token decimals + QuoteDecimals uint32 `protobuf:"varint,9,opt,name=quote_decimals,json=quoteDecimals,proto3" json:"quote_decimals,omitempty"` } func (m *MsgInstantSpotMarketLaunch) Reset() { *m = MsgInstantSpotMarketLaunch{} } @@ -3589,6 +3593,81 @@ func (m *MsgActivateStakeGrantResponse) XXX_DiscardUnknown() { var xxx_messageInfo_MsgActivateStakeGrantResponse proto.InternalMessageInfo +type MsgBatchExchangeModification struct { + // message sender, that is also the TX signer + Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` + Proposal *BatchExchangeModificationProposal `protobuf:"bytes,2,opt,name=proposal,proto3" json:"proposal,omitempty"` +} + +func (m *MsgBatchExchangeModification) Reset() { *m = MsgBatchExchangeModification{} } +func (m *MsgBatchExchangeModification) String() string { return proto.CompactTextString(m) } +func (*MsgBatchExchangeModification) ProtoMessage() {} +func (*MsgBatchExchangeModification) Descriptor() ([]byte, []int) { + return fileDescriptor_bd45b74cb6d81462, []int{77} +} +func (m *MsgBatchExchangeModification) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgBatchExchangeModification) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgBatchExchangeModification.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *MsgBatchExchangeModification) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgBatchExchangeModification.Merge(m, src) +} +func (m *MsgBatchExchangeModification) XXX_Size() int { + return m.Size() +} +func (m *MsgBatchExchangeModification) XXX_DiscardUnknown() { + xxx_messageInfo_MsgBatchExchangeModification.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgBatchExchangeModification proto.InternalMessageInfo + +type MsgBatchExchangeModificationResponse struct { +} + +func (m *MsgBatchExchangeModificationResponse) Reset() { *m = MsgBatchExchangeModificationResponse{} } +func (m *MsgBatchExchangeModificationResponse) String() string { return proto.CompactTextString(m) } +func (*MsgBatchExchangeModificationResponse) ProtoMessage() {} +func (*MsgBatchExchangeModificationResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_bd45b74cb6d81462, []int{78} +} +func (m *MsgBatchExchangeModificationResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgBatchExchangeModificationResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgBatchExchangeModificationResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *MsgBatchExchangeModificationResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgBatchExchangeModificationResponse.Merge(m, src) +} +func (m *MsgBatchExchangeModificationResponse) XXX_Size() int { + return m.Size() +} +func (m *MsgBatchExchangeModificationResponse) XXX_DiscardUnknown() { + xxx_messageInfo_MsgBatchExchangeModificationResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgBatchExchangeModificationResponse proto.InternalMessageInfo + func init() { proto.RegisterType((*MsgUpdateSpotMarket)(nil), "injective.exchange.v1beta1.MsgUpdateSpotMarket") proto.RegisterType((*MsgUpdateSpotMarketResponse)(nil), "injective.exchange.v1beta1.MsgUpdateSpotMarketResponse") @@ -3667,6 +3746,8 @@ func init() { proto.RegisterType((*MsgAuthorizeStakeGrantsResponse)(nil), "injective.exchange.v1beta1.MsgAuthorizeStakeGrantsResponse") proto.RegisterType((*MsgActivateStakeGrant)(nil), "injective.exchange.v1beta1.MsgActivateStakeGrant") proto.RegisterType((*MsgActivateStakeGrantResponse)(nil), "injective.exchange.v1beta1.MsgActivateStakeGrantResponse") + proto.RegisterType((*MsgBatchExchangeModification)(nil), "injective.exchange.v1beta1.MsgBatchExchangeModification") + proto.RegisterType((*MsgBatchExchangeModificationResponse)(nil), "injective.exchange.v1beta1.MsgBatchExchangeModificationResponse") } func init() { @@ -3674,254 +3755,261 @@ func init() { } var fileDescriptor_bd45b74cb6d81462 = []byte{ - // 3942 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x3c, 0x4b, 0x6c, 0x1c, 0xc7, - 0x95, 0x6a, 0x0e, 0x39, 0x24, 0x1f, 0x29, 0x89, 0x6a, 0x52, 0xe2, 0x70, 0xf8, 0x93, 0x9a, 0x92, - 0xf5, 0x27, 0xf5, 0xff, 0x8c, 0x56, 0x96, 0xf8, 0x91, 0x6c, 0xae, 0x45, 0x4b, 0x1e, 0xca, 0xbb, - 0xde, 0x85, 0xbd, 0x83, 0x66, 0x4f, 0x71, 0xd8, 0xe6, 0x4c, 0xf7, 0xa8, 0xbb, 0x47, 0x12, 0x8d, - 0x05, 0xd6, 0xeb, 0xc3, 0x42, 0xfb, 0xc1, 0x62, 0x17, 0x58, 0x60, 0x81, 0x05, 0x0c, 0x18, 0x58, - 0x20, 0x06, 0x9c, 0x20, 0x91, 0x83, 0x20, 0xf0, 0x21, 0x3f, 0x04, 0x39, 0x18, 0x3e, 0x29, 0x01, - 0x02, 0x04, 0x39, 0x28, 0x81, 0x7d, 0xb0, 0xe1, 0x53, 0x90, 0x4b, 0x80, 0xe4, 0x12, 0x74, 0x55, - 0x75, 0x4d, 0x7f, 0xaa, 0xba, 0x7b, 0x46, 0xa4, 0x2d, 0x07, 0xbe, 0x48, 0xec, 0xaa, 0xf7, 0x5e, - 0xbd, 0xf7, 0xea, 0x7d, 0xaa, 0x5e, 0x55, 0x0d, 0x4c, 0xe9, 0xc6, 0xeb, 0x48, 0x73, 0xf4, 0xbb, - 0x68, 0x06, 0xdd, 0xd7, 0xd6, 0x54, 0xa3, 0x82, 0x66, 0xee, 0x9e, 0x5c, 0x41, 0x8e, 0x7a, 0x72, - 0xc6, 0xb9, 0x3f, 0x5d, 0xb7, 0x4c, 0xc7, 0x94, 0xf3, 0x0c, 0x68, 0xda, 0x03, 0x9a, 0xa6, 0x40, - 0xf9, 0x09, 0xcd, 0xb4, 0x6b, 0xa6, 0x3d, 0xb3, 0xa2, 0xda, 0x4d, 0x4c, 0xcd, 0xd4, 0x0d, 0x82, - 0x9b, 0x9f, 0xa6, 0xfd, 0x65, 0xdd, 0x76, 0x2c, 0x7d, 0xa5, 0xe1, 0xe8, 0xa6, 0xc1, 0xe0, 0xfc, - 0x8d, 0x14, 0x7e, 0x98, 0xc2, 0xd7, 0xec, 0xca, 0xcc, 0xdd, 0x93, 0xee, 0x7f, 0xb4, 0x63, 0x84, - 0x74, 0x94, 0xf0, 0xd7, 0x0c, 0xf9, 0xa0, 0x5d, 0x43, 0x15, 0xb3, 0x62, 0x92, 0x76, 0xf7, 0x2f, - 0xda, 0x7a, 0x38, 0x46, 0x34, 0x26, 0x06, 0x01, 0x3d, 0xd0, 0x04, 0x35, 0x2d, 0x55, 0xab, 0x36, - 0x01, 0xc9, 0x27, 0x05, 0xdb, 0xa5, 0xd6, 0x74, 0xc3, 0x9c, 0xc1, 0xff, 0x92, 0x26, 0xe5, 0xdd, - 0x0c, 0x0c, 0x2e, 0xd9, 0x95, 0x97, 0xeb, 0x65, 0xd5, 0x41, 0xcb, 0x75, 0xd3, 0x59, 0x52, 0xad, - 0x75, 0xe4, 0xc8, 0x43, 0xd0, 0xa5, 0x96, 0x6b, 0xba, 0x91, 0x93, 0xf6, 0x4a, 0x87, 0x7a, 0x8b, - 0xe4, 0x43, 0x1e, 0x85, 0xde, 0x1a, 0xee, 0x2f, 0xe9, 0xe5, 0x5c, 0x07, 0xee, 0xe9, 0x21, 0x0d, - 0x8b, 0x65, 0x79, 0x1c, 0xc0, 0x40, 0xf7, 0x4a, 0x8e, 0xae, 0xad, 0x23, 0x2b, 0x97, 0xc1, 0xbd, - 0xbd, 0x06, 0xba, 0x77, 0x1b, 0x37, 0xc8, 0x7f, 0x07, 0xc3, 0x6e, 0x77, 0x4d, 0x37, 0x4a, 0x75, - 0x4b, 0xd7, 0x10, 0x06, 0x2c, 0xd9, 0xfa, 0x1b, 0x28, 0xd7, 0xe9, 0xc2, 0xce, 0x4d, 0x7d, 0xf8, - 0x78, 0x72, 0xdb, 0xaf, 0x1f, 0x4f, 0x8e, 0x12, 0xdd, 0xd8, 0xe5, 0xf5, 0x69, 0xdd, 0x9c, 0xa9, - 0xa9, 0xce, 0xda, 0xf4, 0x0d, 0x54, 0x51, 0xb5, 0x8d, 0x05, 0xa4, 0x15, 0x07, 0x0d, 0x74, 0x6f, - 0x49, 0x37, 0x6e, 0xb9, 0x14, 0x5c, 0xc2, 0xcb, 0xfa, 0x1b, 0x48, 0x2e, 0x41, 0xde, 0x23, 0x7d, - 0xa7, 0xa1, 0x1a, 0x8e, 0xee, 0x6c, 0xf8, 0xa8, 0x77, 0xa5, 0xa7, 0xbe, 0x87, 0x50, 0x7f, 0x89, - 0x12, 0x61, 0x03, 0x2c, 0xc1, 0x80, 0x37, 0x80, 0x61, 0xba, 0x93, 0xad, 0x56, 0x73, 0xd9, 0xf4, - 0x64, 0x77, 0x10, 0xb2, 0x2f, 0x52, 0xd4, 0xc2, 0xe9, 0x07, 0xef, 0x4c, 0x6e, 0xfb, 0xec, 0x9d, - 0xc9, 0x6d, 0x6f, 0x7d, 0xfa, 0xf0, 0x08, 0x51, 0xed, 0xbf, 0x7d, 0xfa, 0xf0, 0xc8, 0x18, 0x9b, - 0x66, 0xce, 0x8c, 0x28, 0xe3, 0x30, 0xca, 0x69, 0x2e, 0x22, 0xbb, 0x6e, 0x1a, 0x36, 0x52, 0xfe, - 0xd0, 0x09, 0x23, 0xac, 0x7f, 0x01, 0x59, 0xfa, 0x5d, 0xd5, 0xb5, 0x87, 0xaf, 0xa7, 0x73, 0xcb, - 0xa7, 0x53, 0x7e, 0x15, 0x72, 0x2e, 0x39, 0xdd, 0xd0, 0x1d, 0x5d, 0xad, 0x96, 0x6a, 0xaa, 0x55, - 0xd1, 0x8d, 0x92, 0xa5, 0x3a, 0xba, 0x99, 0xeb, 0x4e, 0x4f, 0x76, 0xb7, 0x81, 0xee, 0x2d, 0x12, - 0x1a, 0x4b, 0x98, 0x44, 0xd1, 0xa5, 0x20, 0x97, 0x61, 0x0c, 0x33, 0xab, 0xea, 0x86, 0x83, 0x0c, - 0xd5, 0xd0, 0x50, 0x70, 0x84, 0x9e, 0xf4, 0x23, 0x8c, 0xb8, 0x8c, 0x37, 0xe9, 0xf8, 0x46, 0x29, - 0x5c, 0xe4, 0x9b, 0xa4, 0x12, 0x35, 0xc9, 0xb0, 0x6d, 0x29, 0x53, 0xb0, 0x4f, 0xd8, 0xc9, 0xcc, - 0xf3, 0x03, 0x09, 0x76, 0x32, 0xa8, 0x5b, 0xaa, 0xa5, 0xd6, 0x6c, 0xf9, 0x1c, 0xf4, 0xaa, 0x0d, - 0x67, 0xcd, 0xb4, 0x74, 0x67, 0x83, 0x18, 0xe6, 0x5c, 0xee, 0x17, 0xdf, 0x3b, 0x3e, 0x44, 0x63, - 0xe3, 0x6c, 0xb9, 0x6c, 0x21, 0xdb, 0x5e, 0x76, 0x2c, 0xdd, 0xa8, 0x14, 0x9b, 0xa0, 0xf2, 0x55, - 0xc8, 0xd6, 0x31, 0x05, 0x6c, 0xb3, 0x7d, 0xa7, 0x94, 0x69, 0x71, 0x7c, 0x9f, 0x26, 0x63, 0xcd, - 0x75, 0xba, 0xfa, 0x29, 0x52, 0xbc, 0xc2, 0x51, 0x57, 0xca, 0x26, 0x45, 0x57, 0xd2, 0x5c, 0x54, - 0x52, 0x82, 0xaa, 0x8c, 0xc0, 0x70, 0xa8, 0x89, 0x49, 0xf5, 0x1d, 0x09, 0x60, 0xc9, 0xae, 0x2c, - 0xa0, 0xba, 0x69, 0xeb, 0x8e, 0xbc, 0x07, 0xb2, 0x36, 0x32, 0xca, 0xc8, 0xa2, 0x6e, 0x46, 0xbf, - 0xe4, 0x29, 0xd8, 0x6e, 0x37, 0x56, 0x54, 0x4d, 0x33, 0x1b, 0x86, 0xcf, 0xd7, 0xfa, 0x9b, 0x8d, - 0x8b, 0x65, 0xf9, 0x3c, 0x64, 0xd5, 0x9a, 0xfb, 0x37, 0xf6, 0xb5, 0xbe, 0x53, 0x23, 0x34, 0xf3, - 0x4c, 0xbb, 0x99, 0x89, 0x89, 0x33, 0x6f, 0xea, 0x86, 0x27, 0x0c, 0x01, 0x2f, 0x1c, 0xf5, 0x4f, - 0x1d, 0x1d, 0xd2, 0x95, 0x68, 0xd0, 0x2f, 0x11, 0x65, 0x51, 0x19, 0x02, 0xb9, 0xf9, 0xc5, 0xe4, - 0x78, 0x5f, 0x82, 0xbe, 0x25, 0xbb, 0xf2, 0xb7, 0xba, 0xb3, 0x56, 0xb6, 0xd4, 0x7b, 0x5f, 0x92, - 0x20, 0xc7, 0x04, 0x82, 0x0c, 0xf9, 0x05, 0xf1, 0x78, 0x54, 0x76, 0xe3, 0xc4, 0xe5, 0x7d, 0x32, - 0x51, 0xbe, 0x2d, 0xe1, 0xe9, 0x9a, 0xb7, 0x10, 0x8d, 0x93, 0x37, 0xf4, 0x9a, 0xee, 0xdc, 0xb4, - 0x5c, 0xf6, 0x45, 0x62, 0xcd, 0x42, 0x97, 0xe9, 0x02, 0x50, 0x7b, 0x3a, 0x10, 0x67, 0x4f, 0x2e, - 0x49, 0x4c, 0x8d, 0x32, 0x4f, 0x30, 0x0b, 0x17, 0x04, 0xbc, 0xef, 0xf5, 0xf3, 0xce, 0x63, 0x4a, - 0x79, 0x15, 0x26, 0x05, 0x5d, 0x9e, 0x4c, 0x6e, 0x28, 0xc6, 0xa3, 0x94, 0xd6, 0x54, 0x7b, 0x8d, - 0xf2, 0xde, 0x8b, 0x5b, 0x9e, 0x57, 0xed, 0x35, 0x79, 0x00, 0x32, 0x1a, 0x9b, 0x0b, 0xf7, 0xcf, - 0x42, 0x8f, 0xc7, 0x8d, 0xf2, 0x03, 0x09, 0xc6, 0x97, 0xec, 0xca, 0x9c, 0xea, 0x68, 0x6b, 0xbc, - 0x31, 0x6c, 0xa1, 0x52, 0xe6, 0x21, 0x8b, 0x87, 0x70, 0xbd, 0x2c, 0xd3, 0xaa, 0x56, 0x28, 0x6a, - 0xe1, 0x59, 0x81, 0x5a, 0x9e, 0xf1, 0xab, 0x45, 0xcc, 0x9c, 0xf2, 0x5d, 0x09, 0x0e, 0xc4, 0x42, - 0x30, 0x1d, 0xed, 0x83, 0xfe, 0xa6, 0x8e, 0x90, 0x9d, 0x93, 0xf6, 0x66, 0x0e, 0xf5, 0x16, 0xfb, - 0x98, 0x96, 0x90, 0x2d, 0x4f, 0xc3, 0xa0, 0x86, 0x69, 0x94, 0x4b, 0x84, 0xbd, 0x92, 0xa6, 0x97, - 0x89, 0x78, 0xbd, 0xc5, 0x5d, 0xb4, 0x8b, 0x90, 0x9d, 0xd7, 0xcb, 0xb6, 0x7c, 0x0c, 0xe4, 0x55, - 0x55, 0xaf, 0x86, 0xc0, 0x33, 0x18, 0x7c, 0x80, 0xf4, 0x34, 0xa1, 0x7d, 0x3a, 0xff, 0x71, 0x06, - 0xf2, 0x4b, 0x76, 0x65, 0xd1, 0xb0, 0x1d, 0xd5, 0x70, 0x9a, 0xb9, 0xfa, 0x86, 0xda, 0x30, 0xb4, - 0x35, 0xa1, 0xc2, 0xf7, 0x40, 0x96, 0x26, 0x5b, 0x32, 0x93, 0xf4, 0xcb, 0x9d, 0x7d, 0xd7, 0x73, - 0x4a, 0x65, 0x64, 0x98, 0x35, 0x2f, 0x11, 0xbb, 0x2d, 0x0b, 0x6e, 0x83, 0x3c, 0x09, 0x7d, 0x77, - 0x1a, 0xa6, 0xe3, 0xf5, 0xe3, 0xe4, 0x5b, 0x04, 0xdc, 0x44, 0x00, 0x8a, 0x30, 0xc8, 0xcb, 0xd2, - 0x2d, 0xe4, 0xd1, 0x81, 0x5a, 0x38, 0x45, 0xbf, 0x02, 0x7b, 0x04, 0xe9, 0xb9, 0x85, 0x3c, 0xea, - 0xb2, 0x15, 0xc9, 0xcd, 0xd7, 0xa1, 0x3f, 0x90, 0x97, 0x5b, 0x48, 0xa0, 0x7d, 0x35, 0xdf, 0x1a, - 0xeb, 0x92, 0xc0, 0xf2, 0xa6, 0xfc, 0x96, 0x27, 0x98, 0x22, 0x65, 0x3f, 0x28, 0xe2, 0xde, 0x66, - 0xd4, 0xec, 0xc6, 0xae, 0x4b, 0xc1, 0x6e, 0x21, 0xab, 0x8e, 0x9c, 0x06, 0x4e, 0xde, 0xed, 0x4f, - 0x76, 0x68, 0x36, 0x33, 0x91, 0xd9, 0x9c, 0x84, 0x3e, 0xb2, 0xa6, 0x2f, 0xb9, 0x26, 0xe0, 0x4d, - 0x37, 0x69, 0x9a, 0x53, 0x3d, 0x47, 0xc0, 0x00, 0x18, 0x8b, 0xcc, 0x73, 0x91, 0x22, 0xbd, 0xe4, - 0x36, 0xb9, 0x8e, 0x40, 0x41, 0x6c, 0x4d, 0xad, 0xa2, 0xd2, 0xaa, 0xaa, 0x39, 0xa6, 0x85, 0xa7, - 0x6e, 0x7b, 0x71, 0x17, 0xe9, 0x5a, 0x76, 0x7b, 0xae, 0xe3, 0x0e, 0xf9, 0x1a, 0x1b, 0xd3, 0xd9, - 0xa8, 0x23, 0x3c, 0x25, 0x3b, 0x4e, 0xed, 0xf7, 0xc5, 0x03, 0xba, 0xcb, 0xf0, 0xa2, 0xc1, 0x4d, - 0xfc, 0x79, 0x7b, 0xa3, 0x8e, 0x3c, 0xce, 0xdc, 0xbf, 0xe5, 0x45, 0xd8, 0x51, 0x53, 0xd7, 0x91, - 0x55, 0x5a, 0x45, 0xc8, 0x5d, 0xbc, 0xa0, 0x56, 0xd6, 0x2e, 0xfd, 0x18, 0xf5, 0x3a, 0x42, 0x45, - 0xd5, 0xc1, 0xa4, 0x9c, 0x20, 0xa9, 0xde, 0x16, 0x48, 0x39, 0x7e, 0x52, 0x2f, 0xc3, 0x10, 0x77, - 0xe5, 0x06, 0xe9, 0x09, 0xca, 0x7a, 0x74, 0xd9, 0xf6, 0x1a, 0xe4, 0x84, 0x4b, 0xb6, 0xbe, 0x16, - 0x96, 0xb0, 0x35, 0xee, 0x7a, 0x4d, 0xe4, 0xd4, 0xfd, 0x5b, 0xe3, 0xd4, 0xdb, 0x37, 0xd9, 0xa9, - 0x77, 0xb4, 0xe9, 0xd4, 0x57, 0x05, 0x4e, 0x7d, 0x88, 0xe3, 0xd4, 0x5c, 0x7f, 0x54, 0x0e, 0xc3, - 0xc1, 0x04, 0x10, 0xe6, 0xde, 0xff, 0xda, 0x0d, 0x53, 0x4d, 0xd8, 0x39, 0xdd, 0x50, 0xad, 0x8d, - 0x9b, 0x75, 0x97, 0x13, 0xfb, 0x89, 0x5c, 0x7c, 0x0a, 0xb6, 0x7b, 0xde, 0xb7, 0x51, 0x5b, 0x31, - 0xab, 0xd4, 0xc9, 0xa9, 0xd7, 0x2e, 0xe3, 0x36, 0xf9, 0x20, 0xec, 0xa4, 0x40, 0x75, 0xcb, 0xbc, - 0xab, 0xbb, 0xd4, 0x89, 0xab, 0xef, 0x20, 0xcd, 0xb7, 0x68, 0x6b, 0xd8, 0x37, 0xbb, 0xda, 0xf4, - 0xcd, 0x56, 0x43, 0x42, 0xd4, 0x97, 0xbb, 0x37, 0xcf, 0x97, 0x7b, 0xda, 0xf5, 0xe5, 0x93, 0x30, - 0x84, 0xee, 0xd7, 0x75, 0xec, 0x65, 0x46, 0xc9, 0xd1, 0x6b, 0xc8, 0x76, 0xd4, 0x5a, 0x1d, 0x07, - 0x87, 0x4c, 0x71, 0xb0, 0xd9, 0x77, 0xdb, 0xeb, 0x72, 0x51, 0x6c, 0xe4, 0x38, 0x55, 0x54, 0x43, - 0x86, 0xe3, 0x43, 0x01, 0x82, 0xd2, 0xec, 0x6b, 0xa2, 0xb0, 0xcd, 0x74, 0x9f, 0x7f, 0x33, 0x1d, - 0x8a, 0xdc, 0xfd, 0x69, 0xf3, 0xf0, 0xf6, 0xad, 0x71, 0xd9, 0x1d, 0x9b, 0xec, 0xb2, 0x3b, 0xdb, - 0x74, 0xd9, 0x05, 0x81, 0xcb, 0x1e, 0xe3, 0xb8, 0xac, 0xd0, 0xc7, 0x94, 0xe3, 0x70, 0x34, 0x05, - 0x18, 0x73, 0xdd, 0x9f, 0x07, 0x5c, 0xf7, 0x9a, 0x3b, 0xed, 0x1b, 0xd7, 0x1b, 0x4e, 0xc3, 0x42, - 0xf6, 0xd3, 0x9f, 0x9d, 0x43, 0x1e, 0x9d, 0xdd, 0x5c, 0x8f, 0xee, 0x16, 0x79, 0xf4, 0x1e, 0xc8, - 0x62, 0xff, 0xd8, 0xc0, 0xee, 0x97, 0x29, 0xd2, 0x2f, 0x8e, 0xa7, 0xf7, 0x6e, 0x9e, 0xa7, 0xc3, - 0x66, 0x67, 0xed, 0xbe, 0xad, 0xcb, 0xda, 0xfd, 0x5b, 0x96, 0xb5, 0xbf, 0x0e, 0x01, 0xc9, 0xbe, - 0x1a, 0x0c, 0x01, 0x42, 0x30, 0x16, 0x02, 0x1e, 0x4a, 0x90, 0x0b, 0xec, 0xab, 0x09, 0xd4, 0x96, - 0x17, 0x02, 0x2e, 0x0a, 0x84, 0xdd, 0xc7, 0x2f, 0x04, 0xf8, 0xb8, 0x52, 0xde, 0x97, 0x60, 0xaf, - 0xa8, 0x33, 0x6d, 0x2d, 0xa0, 0x08, 0xdd, 0x16, 0xb2, 0x1b, 0x55, 0xc7, 0x2b, 0x8e, 0x9d, 0x4a, - 0x92, 0x21, 0x38, 0x88, 0x8b, 0x89, 0x05, 0x92, 0x8a, 0x1e, 0x21, 0xaf, 0xbe, 0x90, 0xe1, 0xd5, - 0x17, 0x7e, 0x29, 0xc1, 0x1e, 0x3e, 0x15, 0xf9, 0x0a, 0xf4, 0x78, 0x46, 0x49, 0xab, 0x7b, 0xa9, - 0x4c, 0x87, 0x21, 0xc9, 0x17, 0xa1, 0x0b, 0x7b, 0x0a, 0x09, 0xc2, 0xe9, 0xb0, 0x09, 0x86, 0x7c, - 0x16, 0x32, 0xab, 0x08, 0x11, 0x96, 0xd3, 0x21, 0xba, 0xf0, 0xd1, 0xba, 0x09, 0x99, 0x8b, 0x66, - 0x55, 0x33, 0x45, 0x31, 0xe9, 0xb9, 0xa0, 0x0d, 0x1d, 0x8d, 0xd3, 0x7f, 0x93, 0x30, 0xc7, 0x92, - 0x0a, 0x0f, 0x12, 0xea, 0x26, 0x62, 0xe6, 0x94, 0x15, 0x5c, 0x36, 0x11, 0x03, 0x6c, 0x46, 0x69, - 0xe9, 0xa7, 0x7e, 0x73, 0x0d, 0xe4, 0xe4, 0x2f, 0x52, 0x4b, 0x97, 0x39, 0x5a, 0x3a, 0x1c, 0xd5, - 0x92, 0x80, 0x3f, 0x05, 0xc1, 0xa1, 0x24, 0x98, 0xcd, 0xd0, 0xd5, 0x47, 0x12, 0x5e, 0x90, 0xf8, - 0xea, 0x58, 0xbc, 0x59, 0x11, 0x17, 0xe3, 0x16, 0x43, 0xc5, 0xb8, 0x36, 0xf4, 0xe5, 0x95, 0xe4, - 0xae, 0x3e, 0x48, 0x88, 0xc4, 0x49, 0x4c, 0x2a, 0x1f, 0x48, 0x38, 0x14, 0x27, 0xc1, 0x3d, 0x8d, - 0xa5, 0xb9, 0x47, 0x12, 0xae, 0x7f, 0xcf, 0xbb, 0x89, 0xb9, 0xca, 0x22, 0xb8, 0x50, 0xed, 0xb1, - 0x07, 0x64, 0x91, 0x62, 0x78, 0x86, 0x53, 0x0c, 0x0f, 0xda, 0x4c, 0xa7, 0xc0, 0x66, 0xba, 0x9a, - 0x36, 0x33, 0xc3, 0x99, 0x9e, 0xd1, 0x80, 0x3d, 0x07, 0x79, 0x57, 0xc6, 0x70, 0xb1, 0x31, 0xd4, - 0xca, 0xd2, 0xe0, 0x7b, 0x24, 0x0d, 0x92, 0xb9, 0x0a, 0xc2, 0x88, 0xad, 0xed, 0x0a, 0x74, 0x96, - 0x55, 0x47, 0x4d, 0x53, 0xf8, 0xc5, 0x94, 0x16, 0x54, 0x47, 0xa5, 0x56, 0x86, 0x11, 0x0b, 0x67, - 0x1f, 0x24, 0x24, 0x40, 0x2e, 0x3f, 0xca, 0x75, 0x1c, 0x50, 0xb8, 0x7d, 0xcc, 0x98, 0x72, 0xd0, - 0x6d, 0x37, 0x34, 0x0d, 0xd9, 0xc4, 0x8e, 0x7a, 0x8a, 0xde, 0x67, 0x30, 0x78, 0xef, 0x0b, 0x12, - 0x0a, 0xb8, 0xf6, 0x56, 0x4b, 0xff, 0x2c, 0x47, 0xfa, 0x23, 0x02, 0xe9, 0x39, 0x8c, 0x29, 0x37, - 0xe1, 0x70, 0x22, 0x50, 0x4b, 0xfa, 0xf8, 0x7d, 0x37, 0x0c, 0x79, 0x14, 0xc9, 0x39, 0x56, 0x82, - 0x0a, 0x52, 0x9d, 0xf3, 0x5c, 0x81, 0x71, 0xbb, 0x6e, 0x3a, 0x25, 0xe6, 0x21, 0x76, 0xc9, 0x31, - 0x4b, 0x1a, 0xe6, 0xb8, 0xa4, 0x56, 0xab, 0xd4, 0x1d, 0x73, 0x36, 0x5b, 0x1e, 0x2c, 0x96, 0xed, - 0xdb, 0x26, 0x11, 0x69, 0xb6, 0x5a, 0x95, 0x5f, 0x80, 0xa9, 0x32, 0x0b, 0x1c, 0x62, 0x32, 0x9d, - 0x98, 0xcc, 0x44, 0x39, 0x74, 0xb4, 0x18, 0x22, 0xf6, 0x0f, 0xb0, 0x1b, 0x73, 0x43, 0xe3, 0x01, - 0x23, 0x91, 0xeb, 0x6a, 0x75, 0x1a, 0xa5, 0xa2, 0x6c, 0x33, 0xbb, 0xf3, 0x86, 0x90, 0x5f, 0x87, - 0x51, 0x1f, 0xb3, 0x91, 0x51, 0xb2, 0xad, 0x8f, 0x92, 0x2b, 0x07, 0xe3, 0x74, 0x73, 0x2c, 0x8e, - 0x2c, 0x38, 0x02, 0xe6, 0xba, 0x5b, 0x3d, 0x89, 0x09, 0xcb, 0x82, 0xc9, 0xc8, 0x75, 0x91, 0x2c, - 0x64, 0x94, 0x9e, 0xf6, 0x52, 0x0c, 0x5f, 0x22, 0x32, 0xe2, 0x1d, 0x98, 0x5c, 0xc1, 0x46, 0x5c, - 0x32, 0x89, 0x15, 0x47, 0x35, 0xd8, 0xdb, 0xba, 0x06, 0x47, 0x57, 0xa2, 0x8e, 0xc1, 0x94, 0x58, - 0x84, 0x83, 0xa1, 0x21, 0x85, 0x16, 0x06, 0xd8, 0xc2, 0xf6, 0xad, 0x44, 0xeb, 0x0a, 0x21, 0x23, - 0xbb, 0x17, 0x27, 0x06, 0x51, 0x5e, 0x5f, 0xbb, 0xca, 0x13, 0x08, 0x83, 0xa9, 0x16, 0x4e, 0x72, - 0x42, 0xca, 0x78, 0x24, 0xa4, 0xf8, 0x7d, 0x5b, 0x79, 0x90, 0x85, 0x31, 0x5e, 0x07, 0x8b, 0x1c, - 0xd3, 0x30, 0x88, 0xad, 0x8c, 0x2a, 0x22, 0x18, 0x45, 0x76, 0xb9, 0x5d, 0x34, 0x08, 0x93, 0x0e, - 0xb9, 0x00, 0x23, 0x3e, 0xab, 0x09, 0x61, 0x75, 0x60, 0xac, 0xe1, 0x26, 0x40, 0x10, 0xf7, 0x08, - 0xec, 0x6a, 0x5a, 0xb4, 0xb7, 0x0e, 0x20, 0xf1, 0x61, 0x27, 0x33, 0x50, 0xba, 0x16, 0x38, 0x07, - 0xc3, 0x61, 0xeb, 0xf4, 0x30, 0x48, 0x28, 0xd8, 0x1d, 0x32, 0x33, 0x8a, 0x37, 0x0b, 0xe3, 0xa1, - 0xc9, 0x09, 0xf1, 0xd8, 0x85, 0x79, 0xcc, 0x07, 0xf4, 0x1c, 0x64, 0xf3, 0x32, 0x8c, 0xf2, 0xe6, - 0xd7, 0x1b, 0x3e, 0x4b, 0x02, 0x5a, 0x74, 0xa2, 0x28, 0x07, 0xe7, 0x21, 0xe7, 0xad, 0x62, 0xfc, - 0xfe, 0x8b, 0xd7, 0x26, 0xdd, 0x84, 0x75, 0xda, 0xdf, 0x4c, 0x6c, 0x78, 0x39, 0x73, 0x16, 0x86, - 0xe9, 0x72, 0x26, 0x82, 0xd7, 0x83, 0xf1, 0x86, 0x48, 0x77, 0x08, 0x6d, 0x1e, 0x26, 0xbc, 0xf1, - 0xa2, 0xfe, 0x8c, 0xb1, 0x7b, 0x31, 0xf6, 0x28, 0x85, 0x0a, 0x19, 0x1e, 0x21, 0x32, 0x0b, 0xe3, - 0x74, 0x6c, 0x01, 0x0d, 0xe2, 0x1d, 0x79, 0x02, 0xc4, 0x25, 0xf1, 0xd7, 0xa0, 0x78, 0x7c, 0xf0, - 0xdd, 0x03, 0xd3, 0xe9, 0x23, 0x71, 0x9c, 0x42, 0x72, 0x72, 0x1a, 0xa6, 0xf5, 0x3c, 0xec, 0xa3, - 0xec, 0xc4, 0x90, 0xea, 0xc7, 0xa4, 0x28, 0xdf, 0x02, 0x4a, 0xbe, 0xfc, 0xf7, 0x23, 0x09, 0x26, - 0x38, 0xdb, 0xa1, 0x34, 0x15, 0x81, 0x4d, 0xdb, 0xa7, 0x5c, 0xe2, 0x78, 0xf0, 0xc1, 0xb8, 0xdd, - 0x9c, 0xbf, 0x32, 0xf0, 0x43, 0x09, 0x9e, 0x89, 0x07, 0x49, 0xbb, 0x49, 0x79, 0x25, 0x5c, 0x1f, - 0xb8, 0x90, 0x4e, 0xa2, 0x27, 0xab, 0x12, 0xfc, 0xae, 0x03, 0xc6, 0xe2, 0x68, 0x7d, 0x05, 0x6b, - 0x05, 0xf2, 0xdf, 0xc0, 0x0e, 0x7c, 0x89, 0x46, 0x37, 0x8d, 0x52, 0x19, 0x55, 0x1d, 0x15, 0xaf, - 0xee, 0xfb, 0x4e, 0x1d, 0x8e, 0xbd, 0x8d, 0x44, 0x31, 0x16, 0x5c, 0x04, 0x6a, 0x20, 0xdb, 0xeb, - 0xfe, 0x46, 0xf9, 0x12, 0x64, 0xeb, 0xea, 0x86, 0xd9, 0x70, 0x5a, 0x39, 0xa1, 0xa7, 0x28, 0x3e, - 0x95, 0xff, 0x8c, 0xac, 0x81, 0x39, 0x3b, 0xdb, 0x2f, 0xd4, 0xec, 0x13, 0xd7, 0xc2, 0xf1, 0x0c, - 0x2a, 0x3f, 0x91, 0xf0, 0x62, 0x38, 0x1e, 0xea, 0xe9, 0x36, 0xfe, 0x3f, 0xd1, 0x4a, 0x24, 0xce, - 0x34, 0x21, 0x65, 0x7d, 0x79, 0x3b, 0x4f, 0xd6, 0x5d, 0x53, 0xed, 0x75, 0x6c, 0x6a, 0x5d, 0xb4, - 0x7b, 0x49, 0xb5, 0xd7, 0x3d, 0x81, 0xb2, 0x4d, 0x81, 0x12, 0xf7, 0x74, 0x5c, 0x01, 0x15, 0x85, - 0x14, 0x89, 0x78, 0x7d, 0x6c, 0x93, 0xfa, 0xcf, 0x1d, 0xf8, 0x6e, 0xab, 0x68, 0xb3, 0xf3, 0x15, - 0x52, 0xd2, 0x05, 0x8e, 0x92, 0xf6, 0x47, 0x95, 0x14, 0x95, 0x51, 0x39, 0x80, 0x0b, 0x44, 0xa2, - 0x6e, 0xa6, 0xaa, 0xb7, 0x25, 0xe8, 0x65, 0xcb, 0xe0, 0xa0, 0x02, 0xa4, 0x24, 0x05, 0x74, 0x24, - 0x2a, 0x20, 0x13, 0xaf, 0x80, 0x4e, 0x81, 0x02, 0x9a, 0xe5, 0x0b, 0xe5, 0xfb, 0x24, 0xd5, 0xfa, - 0x36, 0xaf, 0xe1, 0x15, 0xc3, 0xd6, 0xed, 0xbb, 0x13, 0x53, 0x6c, 0x0c, 0x57, 0xca, 0x0d, 0x9c, - 0x61, 0x63, 0x20, 0x5a, 0xda, 0x71, 0xff, 0x4b, 0x07, 0xec, 0x5e, 0xb2, 0x2b, 0xcb, 0x4c, 0xd5, - 0xb7, 0x2d, 0xd5, 0xb0, 0x57, 0x63, 0x6c, 0xf9, 0x04, 0x0c, 0xd9, 0x66, 0xc3, 0xd2, 0x50, 0x89, - 0x37, 0x69, 0x32, 0xe9, 0x5b, 0xf6, 0x4f, 0x1d, 0x5e, 0x8f, 0xdb, 0x8e, 0x6e, 0x90, 0xd3, 0x6e, - 0x9e, 0xb1, 0x0f, 0xfb, 0x00, 0x96, 0xf9, 0x77, 0x34, 0x3b, 0x5b, 0xbb, 0xa3, 0x39, 0x1d, 0xd2, - 0xef, 0x84, 0x5f, 0xbf, 0x51, 0x71, 0x95, 0x49, 0x5c, 0x46, 0x8f, 0x76, 0x30, 0x83, 0x7e, 0xab, - 0x03, 0xdf, 0xe3, 0xbc, 0x76, 0xdf, 0x41, 0x96, 0xa1, 0x56, 0xff, 0x52, 0xf4, 0x74, 0x2c, 0xa4, - 0xa7, 0xc0, 0xdd, 0xfe, 0xb0, 0xb0, 0xf4, 0x6e, 0x7f, 0xb8, 0x99, 0xe9, 0xe8, 0x33, 0x09, 0xd7, - 0x6f, 0x6e, 0xe8, 0x77, 0x1a, 0x3a, 0xbe, 0x85, 0x4c, 0x17, 0x0c, 0x4f, 0x56, 0xbf, 0x09, 0x04, - 0x8f, 0x4c, 0x28, 0x78, 0xb0, 0x05, 0x40, 0x67, 0x7b, 0x0b, 0x00, 0xc9, 0x5b, 0x00, 0x1c, 0x8f, - 0xdb, 0xb5, 0x46, 0x24, 0x52, 0x26, 0xf0, 0xa6, 0x35, 0xd2, 0xce, 0x54, 0xf1, 0x2e, 0x49, 0xa6, - 0xd7, 0x6a, 0xc8, 0xaa, 0x20, 0x43, 0xdb, 0x58, 0xc6, 0xf7, 0x33, 0xe8, 0x2b, 0x87, 0x2d, 0x53, - 0x47, 0xe1, 0x64, 0x5c, 0xe2, 0xe3, 0x32, 0x43, 0x13, 0x1f, 0xb7, 0xaf, 0x79, 0x7f, 0xbc, 0x03, - 0x3f, 0xda, 0x58, 0x34, 0xdc, 0x4d, 0x91, 0xcd, 0xa4, 0x25, 0x47, 0xc6, 0x4f, 0x89, 0x0b, 0x04, - 0xf4, 0xd2, 0x19, 0x32, 0x93, 0x4b, 0xcc, 0x3f, 0x5a, 0x59, 0xac, 0x52, 0x1f, 0x39, 0x15, 0x52, - 0xaa, 0x12, 0x3c, 0x0f, 0xe6, 0xe9, 0x84, 0x3e, 0x36, 0xe0, 0x77, 0x86, 0xd5, 0xba, 0x80, 0xbe, - 0x56, 0x6b, 0x58, 0xad, 0x7c, 0x9d, 0x50, 0xb5, 0xf2, 0x3b, 0x99, 0x5a, 0x3f, 0x92, 0xb0, 0x73, - 0xde, 0xb2, 0xf4, 0xbb, 0x7a, 0x15, 0x55, 0x50, 0xf9, 0xda, 0x7d, 0xa4, 0x35, 0x1c, 0x34, 0x6f, - 0x1a, 0x8e, 0xa5, 0x6a, 0x62, 0xff, 0x1b, 0x82, 0xae, 0xd5, 0x86, 0x51, 0xb6, 0xa9, 0x2a, 0xc9, - 0x87, 0x7c, 0x18, 0x06, 0x34, 0x8a, 0x59, 0x52, 0xc9, 0x5b, 0x0f, 0xaa, 0xb4, 0x9d, 0x5e, 0x3b, - 0x7d, 0x02, 0x22, 0xcb, 0x74, 0x69, 0x40, 0xf4, 0x44, 0xb2, 0xfd, 0x65, 0xc1, 0x41, 0xfb, 0x01, - 0xbf, 0xb8, 0x42, 0x5e, 0xdd, 0x40, 0xb2, 0x3f, 0x0e, 0x80, 0xa5, 0xfb, 0xd7, 0x01, 0x30, 0xbf, - 0xa5, 0xb2, 0xbe, 0xba, 0x8a, 0x33, 0x7e, 0x6c, 0x1a, 0x38, 0xe1, 0x4e, 0xd5, 0x7b, 0xbf, 0x99, - 0x3c, 0x54, 0xd1, 0x9d, 0xb5, 0xc6, 0xca, 0xb4, 0x66, 0xd6, 0xe8, 0x63, 0x3f, 0xfa, 0xdf, 0x71, - 0xbb, 0xbc, 0x3e, 0xe3, 0x6c, 0xd4, 0x91, 0x8d, 0x11, 0xec, 0x62, 0x2f, 0x26, 0xbf, 0xa0, 0xaf, - 0xae, 0x16, 0x06, 0x39, 0x32, 0x29, 0xaf, 0xc1, 0xc0, 0x92, 0x5d, 0x29, 0xa2, 0x7b, 0xaa, 0x55, - 0xb6, 0x6f, 0xd6, 0x9d, 0x9b, 0x0d, 0xa1, 0xa6, 0x49, 0x9d, 0x90, 0xa3, 0x94, 0x11, 0xbf, 0x52, - 0x02, 0xa4, 0x94, 0x3c, 0x0e, 0xa8, 0x81, 0x36, 0xff, 0xfb, 0x96, 0xdd, 0xb8, 0x53, 0xab, 0xaa, - 0x7a, 0xed, 0x86, 0xa9, 0xad, 0xa3, 0xf2, 0x75, 0x3c, 0x79, 0x62, 0x27, 0x1a, 0xac, 0x62, 0xb0, - 0x59, 0x62, 0xe9, 0xb7, 0x1a, 0x2b, 0x2f, 0xa0, 0x0d, 0x3c, 0xf1, 0xfd, 0x45, 0x5e, 0x97, 0x3c, - 0x06, 0xbd, 0xb6, 0x5e, 0x31, 0x54, 0xa7, 0x61, 0x91, 0x4d, 0x78, 0x7f, 0xb1, 0xd9, 0x10, 0xbf, - 0xde, 0x88, 0xf2, 0x45, 0xd7, 0x1b, 0xd1, 0x0e, 0x26, 0xd2, 0x9b, 0xe4, 0xa9, 0xcb, 0xb2, 0x5e, - 0x31, 0xf0, 0x12, 0x7a, 0x19, 0xb2, 0xee, 0xdf, 0x54, 0x90, 0xfe, 0xb9, 0x4b, 0x9f, 0x3f, 0x9e, - 0xcc, 0xda, 0xb8, 0xe5, 0x8f, 0x8f, 0x27, 0x8f, 0xa7, 0x98, 0xc5, 0x59, 0x4d, 0xa3, 0x76, 0x5a, - 0xa4, 0xa4, 0xe4, 0x31, 0xe8, 0x5c, 0x20, 0x4b, 0x59, 0x97, 0x64, 0xcf, 0xe7, 0x8f, 0x27, 0xb1, - 0xcd, 0x16, 0x71, 0xab, 0x72, 0x1f, 0x3f, 0x1a, 0xc2, 0x1c, 0x98, 0x9a, 0x7c, 0x80, 0xc8, 0x4f, - 0x2e, 0x7b, 0x91, 0xda, 0x07, 0x46, 0x70, 0xbf, 0x8b, 0x3d, 0x6e, 0x17, 0xbe, 0xce, 0x35, 0x0f, - 0x5d, 0x77, 0xd5, 0x6a, 0x03, 0xd1, 0x9d, 0xeb, 0xc1, 0xb8, 0x84, 0xec, 0x93, 0xcf, 0xdb, 0x8d, - 0x63, 0x5c, 0xe5, 0x3f, 0x32, 0xd8, 0xcf, 0x67, 0xcb, 0x35, 0xdd, 0x20, 0x35, 0x61, 0xce, 0x96, - 0xba, 0xbd, 0xed, 0xd6, 0x8b, 0x30, 0xe0, 0xbb, 0x47, 0x49, 0x6a, 0x31, 0xcd, 0x92, 0x8a, 0x94, - 0x14, 0xbc, 0x76, 0x36, 0x91, 0xf1, 0xf5, 0x26, 0xe1, 0x55, 0xce, 0xce, 0xd6, 0xaf, 0x72, 0x76, - 0x89, 0xaf, 0x72, 0x5e, 0x85, 0xac, 0xed, 0xa8, 0x4e, 0xc3, 0xa6, 0xd7, 0xec, 0x0e, 0xc5, 0xaa, - 0x15, 0xcb, 0xba, 0x8c, 0xe1, 0x8b, 0x14, 0xaf, 0x50, 0x88, 0x2b, 0x6e, 0xc4, 0x2b, 0x5a, 0x39, - 0x8a, 0x6b, 0x1b, 0xf1, 0x40, 0xcc, 0x70, 0xbf, 0x49, 0x1e, 0x36, 0xcd, 0x92, 0x47, 0x6b, 0x6f, - 0xa0, 0x65, 0x47, 0x5d, 0x47, 0xcf, 0x59, 0xaa, 0xe1, 0x88, 0xbd, 0xf1, 0x3a, 0x64, 0x2b, 0x18, - 0x82, 0x6e, 0xaa, 0xa6, 0xe3, 0xc4, 0xc3, 0xb4, 0x3c, 0xf2, 0x58, 0xb5, 0x45, 0x8a, 0x5d, 0x38, - 0x11, 0xf7, 0xaa, 0x89, 0xc7, 0x91, 0xb2, 0x0f, 0x3f, 0x8d, 0xe0, 0x75, 0x31, 0x81, 0x36, 0x70, - 0x6c, 0x99, 0x75, 0xb9, 0x51, 0x1d, 0x1f, 0x84, 0x50, 0x9a, 0x1c, 0x74, 0x63, 0x7e, 0xd8, 0xb5, - 0x4c, 0xef, 0x33, 0x3e, 0x4a, 0x44, 0x47, 0xa0, 0x51, 0x22, 0xda, 0xe1, 0xf1, 0x76, 0xea, 0xd1, - 0x41, 0xc8, 0x2c, 0xd9, 0x15, 0x59, 0x85, 0x6e, 0xef, 0x71, 0xdf, 0x33, 0x09, 0x1e, 0x47, 0xe1, - 0xf2, 0xd3, 0xe9, 0xe0, 0x58, 0x7e, 0x29, 0x43, 0x0f, 0x7b, 0x77, 0x97, 0xe4, 0xd5, 0x1e, 0x60, - 0x7e, 0x26, 0x25, 0x20, 0x1b, 0xe5, 0xbf, 0x25, 0x18, 0x16, 0x3d, 0x48, 0x3a, 0x97, 0x40, 0x4c, - 0x80, 0x97, 0x7f, 0xb6, 0x3d, 0x3c, 0xc6, 0xd3, 0x3b, 0x12, 0x8c, 0xc5, 0x3e, 0x9e, 0xb9, 0x94, - 0x6e, 0x00, 0x2e, 0x72, 0x7e, 0xfe, 0x09, 0x90, 0x19, 0x8b, 0xdf, 0x92, 0x60, 0x6f, 0xe2, 0x2d, - 0xe2, 0x2b, 0xe9, 0x46, 0x12, 0x12, 0xc8, 0x3f, 0xf7, 0x84, 0x04, 0x18, 0xbb, 0x0f, 0x24, 0x18, - 0xe2, 0xbe, 0x7c, 0x3c, 0x9d, 0x30, 0x02, 0x0f, 0x29, 0x7f, 0xa9, 0x0d, 0x24, 0xc6, 0xca, 0xff, - 0x49, 0x90, 0x8f, 0x79, 0x75, 0x78, 0x31, 0x81, 0xb6, 0x18, 0x35, 0x3f, 0xdb, 0x36, 0x2a, 0x63, - 0xee, 0xdf, 0x25, 0xd8, 0xcd, 0xbf, 0x19, 0x7a, 0x26, 0xb5, 0xcc, 0x3e, 0xac, 0xfc, 0x5f, 0xb5, - 0x83, 0xc5, 0xb8, 0xd9, 0x80, 0x9d, 0xe1, 0x0b, 0x49, 0x49, 0x41, 0x24, 0x04, 0x9f, 0x3f, 0xd7, - 0x1a, 0x7c, 0x40, 0x11, 0xfc, 0xbb, 0x41, 0x67, 0x52, 0x69, 0x39, 0x84, 0x95, 0xa8, 0x88, 0xf8, - 0xbb, 0x3d, 0xff, 0x04, 0xbb, 0xa2, 0x77, 0x54, 0x4e, 0xa4, 0x21, 0xe9, 0xc7, 0xc8, 0x5f, 0x68, - 0x15, 0x83, 0x31, 0xf0, 0xbf, 0x12, 0x8c, 0x88, 0xb7, 0x37, 0x49, 0x74, 0x85, 0x98, 0xf9, 0xab, - 0xed, 0x62, 0x06, 0xdc, 0x29, 0xe6, 0x32, 0xea, 0xc5, 0x54, 0x06, 0xc8, 0x43, 0x4d, 0x74, 0xa7, - 0x14, 0x97, 0x48, 0xdd, 0x28, 0x99, 0x78, 0xb5, 0xf1, 0x4a, 0x7a, 0xb7, 0xe5, 0x12, 0x48, 0x8c, - 0x92, 0xa9, 0xef, 0x23, 0xbe, 0x2d, 0xc1, 0x68, 0xdc, 0x59, 0x70, 0xa1, 0x45, 0x8d, 0xf8, 0x23, - 0xc1, 0x5c, 0xfb, 0xb8, 0xc1, 0xe8, 0xc4, 0x3d, 0x2d, 0x3a, 0x93, 0xca, 0xcd, 0x43, 0x58, 0xc9, - 0xd1, 0x29, 0xee, 0x70, 0x06, 0x6b, 0x2b, 0xae, 0x9c, 0x5f, 0x48, 0xef, 0xf2, 0x61, 0xdc, 0x44, - 0x6d, 0xa5, 0x29, 0xc7, 0xfb, 0x52, 0xb4, 0xf8, 0x8d, 0x5e, 0xca, 0x14, 0x2d, 0x24, 0x90, 0x36, - 0x45, 0x27, 0x3e, 0x4d, 0x92, 0xff, 0x5f, 0x82, 0xf1, 0xf8, 0x2b, 0xd3, 0xe9, 0x92, 0x89, 0x00, - 0x3b, 0xbf, 0xf0, 0x24, 0xd8, 0x8c, 0xcb, 0x6f, 0x48, 0x30, 0x91, 0x70, 0x74, 0x7c, 0xb9, 0xf5, - 0x81, 0xfc, 0x8e, 0x72, 0xed, 0x89, 0xd0, 0x19, 0xa3, 0xff, 0x23, 0x41, 0x4e, 0x78, 0x6e, 0x78, - 0x3e, 0x95, 0xe1, 0x47, 0x11, 0xf3, 0x57, 0xda, 0x44, 0x0c, 0xe8, 0x2f, 0xe1, 0xfa, 0xe9, 0xe5, - 0xf4, 0xb6, 0xcf, 0x41, 0x4f, 0xd4, 0x5f, 0xca, 0xeb, 0xa3, 0x6f, 0x49, 0x20, 0x73, 0x4e, 0xa9, - 0x4e, 0x26, 0x95, 0x17, 0x22, 0x28, 0xf9, 0x8b, 0x2d, 0xa3, 0x30, 0x26, 0xfe, 0x11, 0x06, 0x22, - 0xe7, 0x3f, 0x49, 0x3b, 0x9c, 0x30, 0x42, 0xfe, 0x7c, 0x8b, 0x08, 0xfe, 0x55, 0x47, 0xf4, 0x64, - 0x25, 0x69, 0xd5, 0x11, 0xc1, 0x48, 0x5c, 0x75, 0x08, 0xcf, 0x34, 0x70, 0xbc, 0xe7, 0x1f, 0x68, - 0x24, 0xc5, 0x7b, 0x2e, 0x56, 0x62, 0xbc, 0x8f, 0x3d, 0x93, 0x90, 0xff, 0x53, 0x82, 0x3d, 0x82, - 0x03, 0x89, 0xb3, 0x89, 0x41, 0x90, 0x87, 0x96, 0xbf, 0xdc, 0x16, 0x5a, 0x80, 0x21, 0x41, 0x29, - 0xff, 0x6c, 0xe2, 0x5e, 0xbb, 0x2d, 0x86, 0xe2, 0xeb, 0xe0, 0xb2, 0x0d, 0xdb, 0x83, 0xd5, 0xd8, - 0x63, 0x09, 0xf4, 0x02, 0xd0, 0xf9, 0x33, 0xad, 0x40, 0x07, 0x22, 0x4a, 0x42, 0xdd, 0x2e, 0x49, - 0xac, 0x78, 0xf4, 0xc4, 0x88, 0x92, 0xae, 0x4e, 0x25, 0xd7, 0xa1, 0x3f, 0xf0, 0x2b, 0x4f, 0x47, - 0x13, 0xc8, 0xfa, 0x81, 0xf3, 0xa7, 0x5b, 0x00, 0xf6, 0x87, 0x8f, 0xc8, 0xef, 0xd7, 0xcd, 0xa4, - 0x22, 0xd4, 0x44, 0x48, 0x0c, 0x1f, 0xa2, 0x1f, 0x5e, 0xc3, 0xe6, 0x29, 0xf8, 0xd5, 0xb5, 0xb3, - 0xa9, 0x68, 0x86, 0xd1, 0x12, 0xcd, 0x33, 0xfe, 0xa7, 0xb6, 0x70, 0x11, 0x80, 0x5b, 0x25, 0x4c, - 0x52, 0x2e, 0x0f, 0x29, 0xb1, 0x08, 0x10, 0x57, 0xe2, 0xc3, 0xd9, 0x85, 0x53, 0xe0, 0x4b, 0xca, - 0x2e, 0x51, 0x94, 0xc4, 0xec, 0x22, 0xae, 0xe5, 0xe5, 0xbb, 0xde, 0xfc, 0xf4, 0xe1, 0x11, 0x69, - 0x6e, 0xed, 0xc3, 0x8f, 0x27, 0xa4, 0x47, 0x1f, 0x4f, 0x48, 0xbf, 0xfd, 0x78, 0x42, 0xfa, 0xaf, - 0x4f, 0x26, 0xb6, 0x3d, 0xfa, 0x64, 0x62, 0xdb, 0xaf, 0x3e, 0x99, 0xd8, 0xf6, 0xf7, 0x2f, 0xfa, - 0x8a, 0xfc, 0x8b, 0xde, 0x28, 0x37, 0xd4, 0x15, 0x7b, 0x86, 0x8d, 0x79, 0x5c, 0x33, 0x2d, 0xe4, - 0xff, 0x5c, 0x53, 0x75, 0x63, 0xa6, 0x66, 0x96, 0x1b, 0x55, 0x64, 0x37, 0x7f, 0x9e, 0x11, 0x1f, - 0x08, 0xac, 0x64, 0xf1, 0x4f, 0x2b, 0x9e, 0xfe, 0x73, 0x00, 0x00, 0x00, 0xff, 0xff, 0x5c, 0x05, - 0xa8, 0x24, 0x9c, 0x52, 0x00, 0x00, + // 4052 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x3c, 0x4b, 0x6c, 0x1c, 0x47, + 0x76, 0x6a, 0x0d, 0x39, 0x24, 0x1f, 0x49, 0x7d, 0x9a, 0x94, 0x34, 0x1a, 0xfe, 0xa4, 0xa6, 0x65, + 0xfd, 0x49, 0x4b, 0xb6, 0x6c, 0x6b, 0x14, 0x59, 0xe2, 0x47, 0xf2, 0x32, 0x2b, 0x5a, 0xda, 0xa1, + 0x36, 0xd9, 0x0d, 0x76, 0x33, 0x28, 0x76, 0x17, 0x87, 0x6d, 0xce, 0x74, 0x8f, 0xbb, 0x7b, 0x24, + 0xd1, 0x08, 0x90, 0x8d, 0x0f, 0x81, 0x92, 0x0d, 0x82, 0x04, 0x08, 0x10, 0x20, 0xc0, 0x02, 0x06, + 0x02, 0x64, 0x81, 0x4d, 0x90, 0x78, 0x83, 0x20, 0xd8, 0x43, 0x12, 0x04, 0x41, 0x0e, 0x8b, 0x3d, + 0x39, 0x01, 0x02, 0x04, 0x39, 0x28, 0x81, 0x7d, 0xf0, 0xc2, 0xa7, 0x20, 0x97, 0x00, 0xc9, 0x25, + 0xe8, 0xaa, 0xea, 0xea, 0x5f, 0x55, 0x77, 0xcf, 0x88, 0xdc, 0x95, 0x03, 0x5f, 0x24, 0x76, 0xd5, + 0x7b, 0xaf, 0xde, 0x7b, 0xf5, 0x3e, 0x55, 0xaf, 0xaa, 0x06, 0xe6, 0x4d, 0xeb, 0x5d, 0xac, 0x7b, + 0xe6, 0x23, 0xbc, 0x88, 0x9f, 0xe8, 0xdb, 0xc8, 0x6a, 0xe2, 0xc5, 0x47, 0x57, 0x36, 0xb1, 0x87, + 0xae, 0x2c, 0x7a, 0x4f, 0x16, 0x3a, 0x8e, 0xed, 0xd9, 0x6a, 0x95, 0x03, 0x2d, 0x04, 0x40, 0x0b, + 0x0c, 0xa8, 0x3a, 0xab, 0xdb, 0x6e, 0xdb, 0x76, 0x17, 0x37, 0x91, 0x1b, 0x62, 0xea, 0xb6, 0x69, + 0x51, 0xdc, 0xea, 0x02, 0xeb, 0x37, 0x4c, 0xd7, 0x73, 0xcc, 0xcd, 0xae, 0x67, 0xda, 0x16, 0x87, + 0x8b, 0x36, 0x32, 0xf8, 0x13, 0x0c, 0xbe, 0xed, 0x36, 0x17, 0x1f, 0x5d, 0xf1, 0xff, 0x63, 0x1d, + 0x27, 0x69, 0x47, 0x83, 0x7c, 0x2d, 0xd2, 0x0f, 0xd6, 0x35, 0xd9, 0xb4, 0x9b, 0x36, 0x6d, 0xf7, + 0xff, 0x62, 0xad, 0xe7, 0x33, 0x44, 0xe3, 0x62, 0xe4, 0x83, 0x76, 0x1c, 0xbb, 0x63, 0xbb, 0xa8, + 0xc5, 0x40, 0xcf, 0x84, 0xa0, 0xb6, 0x83, 0xf4, 0x56, 0x08, 0x48, 0x3f, 0x19, 0xd8, 0x51, 0xd4, + 0x36, 0x2d, 0x7b, 0x91, 0xfc, 0x4b, 0x9b, 0xb4, 0xef, 0x97, 0x60, 0x62, 0xdd, 0x6d, 0x7e, 0xbd, + 0x63, 0x20, 0x0f, 0x6f, 0x74, 0x6c, 0x6f, 0x1d, 0x39, 0x3b, 0xd8, 0x53, 0x27, 0x61, 0x10, 0x19, + 0x6d, 0xd3, 0xaa, 0x28, 0xa7, 0x94, 0x73, 0x23, 0x75, 0xfa, 0xa1, 0x4e, 0xc1, 0x48, 0x9b, 0xf4, + 0x37, 0x4c, 0xa3, 0x72, 0x90, 0xf4, 0x0c, 0xd3, 0x86, 0x35, 0x43, 0x9d, 0x01, 0xb0, 0xf0, 0xe3, + 0x86, 0x67, 0xea, 0x3b, 0xd8, 0xa9, 0x94, 0x48, 0xef, 0x88, 0x85, 0x1f, 0x3f, 0x24, 0x0d, 0xea, + 0x37, 0xe1, 0x84, 0xdf, 0xdd, 0x36, 0xad, 0x46, 0xc7, 0x31, 0x75, 0x4c, 0x00, 0x1b, 0xae, 0xf9, + 0x3e, 0xae, 0x0c, 0xf8, 0xb0, 0xcb, 0xf3, 0x3f, 0x7e, 0x36, 0x77, 0xe0, 0xdf, 0x9e, 0xcd, 0x4d, + 0x51, 0x35, 0xba, 0xc6, 0xce, 0x82, 0x69, 0x2f, 0xb6, 0x91, 0xb7, 0xbd, 0x70, 0x0f, 0x37, 0x91, + 0xbe, 0xbb, 0x8a, 0xf5, 0xfa, 0x84, 0x85, 0x1f, 0xaf, 0x9b, 0xd6, 0x03, 0x9f, 0x82, 0x4f, 0x78, + 0xc3, 0x7c, 0x1f, 0xab, 0x0d, 0xa8, 0x06, 0xa4, 0xdf, 0xeb, 0x22, 0xcb, 0x33, 0xbd, 0xdd, 0x08, + 0xf5, 0xc1, 0xe2, 0xd4, 0x8f, 0x53, 0xea, 0x5f, 0x63, 0x44, 0xf8, 0x00, 0xeb, 0x70, 0x24, 0x18, + 0xc0, 0xb2, 0x7d, 0xbb, 0x40, 0xad, 0x4a, 0xb9, 0x38, 0xd9, 0x43, 0x94, 0xec, 0x3b, 0x0c, 0xb5, + 0xf6, 0xea, 0xd3, 0x0f, 0xe7, 0x0e, 0xfc, 0xf4, 0xc3, 0xb9, 0x03, 0x1f, 0x7c, 0xf6, 0xd1, 0x05, + 0xaa, 0xda, 0xdf, 0xfe, 0xec, 0xa3, 0x0b, 0xd3, 0x7c, 0x9a, 0x05, 0x33, 0xa2, 0xcd, 0xc0, 0x94, + 0xa0, 0xb9, 0x8e, 0xdd, 0x8e, 0x6d, 0xb9, 0x58, 0xfb, 0xef, 0x01, 0x38, 0xc9, 0xfb, 0x57, 0xb1, + 0x63, 0x3e, 0x42, 0xbe, 0x3d, 0x7c, 0x39, 0x9d, 0xfb, 0x3e, 0x9d, 0xea, 0xb7, 0xa0, 0xe2, 0x93, + 0x33, 0x2d, 0xd3, 0x33, 0x51, 0xab, 0xd1, 0x46, 0x4e, 0xd3, 0xb4, 0x1a, 0x0e, 0xf2, 0x4c, 0xbb, + 0x32, 0x54, 0x9c, 0xec, 0x31, 0x0b, 0x3f, 0x5e, 0xa3, 0x34, 0xd6, 0x09, 0x89, 0xba, 0x4f, 0x41, + 0x35, 0x60, 0x9a, 0x30, 0x8b, 0x4c, 0xcb, 0xc3, 0x16, 0xb2, 0x74, 0x1c, 0x1f, 0x61, 0xb8, 0xf8, + 0x08, 0x27, 0x7d, 0xc6, 0x43, 0x3a, 0x91, 0x51, 0x6a, 0xd7, 0xc5, 0x26, 0xa9, 0xa5, 0x4d, 0x32, + 0x69, 0x5b, 0xda, 0x3c, 0x9c, 0x96, 0x76, 0x72, 0xf3, 0xfc, 0x91, 0x02, 0x87, 0x39, 0xd4, 0x03, + 0xe4, 0xa0, 0xb6, 0xab, 0xbe, 0x0e, 0x23, 0xa8, 0xeb, 0x6d, 0xdb, 0x8e, 0xe9, 0xed, 0x52, 0xc3, + 0x5c, 0xae, 0xfc, 0xf3, 0x5f, 0x5d, 0x9e, 0x64, 0x61, 0x74, 0xc9, 0x30, 0x1c, 0xec, 0xba, 0x1b, + 0x9e, 0x63, 0x5a, 0xcd, 0x7a, 0x08, 0xaa, 0xde, 0x86, 0x72, 0x87, 0x50, 0x20, 0x36, 0x3b, 0x7a, + 0x55, 0x5b, 0x90, 0xa7, 0x82, 0x05, 0x3a, 0xd6, 0xf2, 0x80, 0xaf, 0x9f, 0x3a, 0xc3, 0xab, 0x5d, + 0xf4, 0xa5, 0x0c, 0x29, 0xfa, 0x92, 0x56, 0xd2, 0x92, 0x52, 0x54, 0xed, 0x24, 0x9c, 0x48, 0x34, + 0x71, 0xa9, 0xfe, 0x42, 0x01, 0x58, 0x77, 0x9b, 0xab, 0xb8, 0x63, 0xbb, 0xa6, 0xa7, 0x1e, 0x87, + 0xb2, 0x8b, 0x2d, 0x03, 0x3b, 0xcc, 0xcd, 0xd8, 0x97, 0x3a, 0x0f, 0xe3, 0x6e, 0x77, 0x13, 0xe9, + 0xba, 0xdd, 0xb5, 0x22, 0xbe, 0x36, 0x16, 0x36, 0xae, 0x19, 0xea, 0x1b, 0x50, 0x46, 0x6d, 0xff, + 0x6f, 0xe2, 0x6b, 0xa3, 0x57, 0x4f, 0xb2, 0x24, 0xb5, 0xe0, 0x27, 0x31, 0x2e, 0xce, 0x8a, 0x6d, + 0x5a, 0x81, 0x30, 0x14, 0xbc, 0x76, 0x31, 0x3a, 0x75, 0x6c, 0x48, 0x5f, 0xa2, 0x89, 0xa8, 0x44, + 0x8c, 0x45, 0x6d, 0x12, 0xd4, 0xf0, 0x8b, 0xcb, 0xf1, 0x43, 0x05, 0x46, 0xd7, 0xdd, 0xe6, 0x2f, + 0x9b, 0xde, 0xb6, 0xe1, 0xa0, 0xc7, 0x3f, 0x27, 0x41, 0x2e, 0x49, 0x04, 0x99, 0x8c, 0x0a, 0x12, + 0xf0, 0xa8, 0x1d, 0x23, 0x89, 0x2b, 0xf8, 0xe4, 0xa2, 0xfc, 0xb9, 0x42, 0xa6, 0x6b, 0xc5, 0xc1, + 0x2c, 0x4e, 0xde, 0x33, 0xdb, 0xa6, 0x77, 0xdf, 0xf1, 0xd9, 0x97, 0x89, 0xb5, 0x04, 0x83, 0xb6, + 0x0f, 0xc0, 0xec, 0xe9, 0x4c, 0x96, 0x3d, 0xf9, 0x24, 0x09, 0x35, 0xc6, 0x3c, 0xc5, 0xac, 0xbd, + 0x29, 0xe1, 0xfd, 0x54, 0x94, 0x77, 0x11, 0x53, 0xda, 0xb7, 0x60, 0x4e, 0xd2, 0x15, 0xc8, 0xe4, + 0x87, 0x62, 0x32, 0x4a, 0x63, 0x1b, 0xb9, 0xdb, 0x8c, 0xf7, 0x11, 0xd2, 0xf2, 0x15, 0xe4, 0x6e, + 0xab, 0x47, 0xa0, 0xa4, 0xf3, 0xb9, 0xf0, 0xff, 0xac, 0x0d, 0x07, 0xdc, 0x68, 0x7f, 0xa3, 0xc0, + 0xcc, 0xba, 0xdb, 0x5c, 0x46, 0x9e, 0xbe, 0x2d, 0x1a, 0xc3, 0x95, 0x2a, 0x65, 0x05, 0xca, 0x64, + 0x08, 0xdf, 0xcb, 0x4a, 0xbd, 0x6a, 0x85, 0xa1, 0xd6, 0xde, 0x92, 0xa8, 0xe5, 0xe5, 0xa8, 0x5a, + 0xe4, 0xcc, 0x69, 0x7f, 0xa9, 0xc0, 0x99, 0x4c, 0x08, 0xae, 0xa3, 0xd3, 0x30, 0x16, 0xea, 0x08, + 0xbb, 0x15, 0xe5, 0x54, 0xe9, 0xdc, 0x48, 0x7d, 0x94, 0x6b, 0x09, 0xbb, 0xea, 0x02, 0x4c, 0xe8, + 0x84, 0x86, 0xd1, 0xa0, 0xec, 0x35, 0x74, 0xd3, 0xa0, 0xe2, 0x8d, 0xd4, 0x8f, 0xb2, 0x2e, 0x4a, + 0x76, 0xc5, 0x34, 0x5c, 0xf5, 0x12, 0xa8, 0x5b, 0xc8, 0x6c, 0x25, 0xc0, 0x4b, 0x04, 0xfc, 0x08, + 0xed, 0x09, 0xa1, 0x23, 0x3a, 0xff, 0xee, 0x00, 0x54, 0xd7, 0xdd, 0xe6, 0x9a, 0xe5, 0x7a, 0xc8, + 0xf2, 0xc2, 0x5c, 0x7d, 0x0f, 0x75, 0x2d, 0x7d, 0x5b, 0xaa, 0xf0, 0xe3, 0x50, 0x66, 0xc9, 0x96, + 0xce, 0x24, 0xfb, 0xf2, 0x67, 0xdf, 0xf7, 0x9c, 0x86, 0x81, 0x2d, 0xbb, 0x1d, 0x24, 0x62, 0xbf, + 0x65, 0xd5, 0x6f, 0x50, 0xe7, 0x60, 0xf4, 0xbd, 0xae, 0xed, 0x05, 0xfd, 0x24, 0xf9, 0xd6, 0x81, + 0x34, 0x51, 0x80, 0x3a, 0x4c, 0x88, 0xb2, 0x74, 0x0f, 0x79, 0xf4, 0x48, 0x3b, 0x99, 0xa2, 0xbf, + 0x01, 0xc7, 0x25, 0xe9, 0xb9, 0x87, 0x3c, 0xea, 0xb3, 0x95, 0xca, 0xcd, 0x77, 0x61, 0x2c, 0x96, + 0x97, 0x7b, 0x48, 0xa0, 0xa3, 0xed, 0x48, 0x52, 0x9e, 0x87, 0x71, 0xa6, 0x35, 0xdd, 0x6c, 0xa3, + 0x96, 0x4b, 0xf2, 0xe4, 0x78, 0x7d, 0x8c, 0x2a, 0x8e, 0xb6, 0xa9, 0x67, 0xe0, 0x50, 0xa0, 0x3b, + 0x06, 0x35, 0x42, 0xa0, 0xc6, 0x99, 0xfa, 0x68, 0x63, 0xed, 0x86, 0xc4, 0x8a, 0xe7, 0xa3, 0x56, + 0x2c, 0x99, 0x6e, 0xed, 0x25, 0xd0, 0xe4, 0xbd, 0x61, 0x04, 0x1e, 0x22, 0x61, 0x80, 0x81, 0x3d, + 0xc0, 0x4e, 0x07, 0x7b, 0x5d, 0xb2, 0x10, 0xe8, 0xdf, 0x70, 0x12, 0x96, 0x51, 0x4a, 0x59, 0xc6, + 0x1c, 0x8c, 0xd2, 0xfd, 0x41, 0xc3, 0xd7, 0x4a, 0x60, 0x3a, 0xb4, 0x69, 0x19, 0x05, 0x4e, 0x45, + 0x00, 0x08, 0x16, 0xb5, 0x99, 0x3a, 0x43, 0xfa, 0x9a, 0xdf, 0xe4, 0x3b, 0x15, 0x03, 0x71, 0x75, + 0xd4, 0xc2, 0x8d, 0x2d, 0xa4, 0x7b, 0xb6, 0x43, 0xcc, 0x60, 0xbc, 0x7e, 0x94, 0x76, 0x6d, 0xf8, + 0x3d, 0x77, 0x49, 0x87, 0x7a, 0x87, 0x8f, 0xe9, 0xed, 0x76, 0x30, 0x99, 0xde, 0x43, 0x57, 0x5f, + 0x8a, 0xc4, 0x16, 0xb6, 0x63, 0x09, 0x22, 0xcb, 0x7d, 0xf2, 0xf9, 0x70, 0xb7, 0x83, 0x03, 0xce, + 0xfc, 0xbf, 0xd5, 0x35, 0x38, 0xd4, 0x46, 0x3b, 0xd8, 0x69, 0x6c, 0x61, 0xec, 0x2f, 0x84, 0x70, + 0x2f, 0xeb, 0xa0, 0x31, 0x82, 0x7a, 0x17, 0xe3, 0x3a, 0xf2, 0x08, 0x29, 0x2f, 0x4e, 0x6a, 0xa4, + 0x07, 0x52, 0x5e, 0x94, 0xd4, 0xd7, 0x61, 0x52, 0xb8, 0x0a, 0x84, 0xe2, 0x04, 0x55, 0x33, 0xbd, + 0x04, 0xfc, 0x36, 0x54, 0xa4, 0xcb, 0xbf, 0xd1, 0x1e, 0x96, 0xc3, 0x6d, 0xe1, 0xda, 0x4f, 0x16, + 0x20, 0xc6, 0xf6, 0x27, 0x40, 0x8c, 0xef, 0x71, 0x80, 0x38, 0xd4, 0x5f, 0x80, 0xa8, 0xdd, 0x96, + 0x38, 0xf5, 0x39, 0x81, 0x53, 0x0b, 0xfd, 0x51, 0x3b, 0x0f, 0x67, 0x73, 0x40, 0xb8, 0x7b, 0xff, + 0xd6, 0x10, 0xcc, 0x87, 0xb0, 0xcb, 0xa6, 0x85, 0x9c, 0xdd, 0xfb, 0x1d, 0x9f, 0x13, 0xf7, 0xb9, + 0x5c, 0x7c, 0x1e, 0xc6, 0x03, 0xef, 0xdb, 0x6d, 0x6f, 0xda, 0x2d, 0xe6, 0xe4, 0xcc, 0x6b, 0x37, + 0x48, 0x9b, 0x7a, 0x16, 0x0e, 0x33, 0xa0, 0x8e, 0x63, 0x3f, 0x32, 0x7d, 0xea, 0xd4, 0xd5, 0x0f, + 0xd1, 0xe6, 0x07, 0xac, 0x35, 0xe9, 0x9b, 0x83, 0x7d, 0xfa, 0x66, 0xaf, 0x21, 0x21, 0xed, 0xcb, + 0x43, 0x7b, 0xe7, 0xcb, 0xc3, 0xfd, 0xfa, 0xf2, 0x15, 0x98, 0xc4, 0x4f, 0x3a, 0x26, 0xf1, 0x32, + 0xab, 0xe1, 0x99, 0x6d, 0xec, 0x7a, 0xa8, 0xdd, 0x21, 0xc1, 0xa1, 0x54, 0x9f, 0x08, 0xfb, 0x1e, + 0x06, 0x5d, 0x3e, 0x8a, 0x8b, 0x3d, 0xaf, 0x85, 0xdb, 0xd8, 0xf2, 0x22, 0x28, 0x40, 0x51, 0xc2, + 0xbe, 0x10, 0x85, 0x6f, 0xcc, 0x47, 0xa3, 0x1b, 0xf3, 0x44, 0xe4, 0x1e, 0x2b, 0x9a, 0xd3, 0xc7, + 0xf7, 0xc7, 0x65, 0x0f, 0xed, 0xb1, 0xcb, 0x1e, 0xee, 0xd3, 0x65, 0x57, 0x25, 0x2e, 0x7b, 0x49, + 0xe0, 0xb2, 0x52, 0x1f, 0xd3, 0x2e, 0xc3, 0xc5, 0x02, 0x60, 0xdc, 0x75, 0xff, 0x29, 0xe6, 0xba, + 0x77, 0xfc, 0x69, 0xdf, 0xbd, 0xdb, 0xf5, 0xba, 0x0e, 0x76, 0x5f, 0xfc, 0xec, 0x9c, 0xf0, 0xe8, + 0xf2, 0xde, 0x7a, 0xf4, 0x90, 0xcc, 0xa3, 0x8f, 0x43, 0x99, 0xf8, 0xc7, 0x2e, 0x71, 0xbf, 0x52, + 0x9d, 0x7d, 0x09, 0x3c, 0x7d, 0x64, 0xef, 0x3c, 0x1d, 0xf6, 0x3a, 0x6b, 0x8f, 0xee, 0x5f, 0xd6, + 0x1e, 0xdb, 0xb7, 0xac, 0xfd, 0x65, 0x08, 0xc8, 0xf7, 0xd5, 0x78, 0x08, 0x90, 0x82, 0xf1, 0x10, + 0xf0, 0x91, 0x02, 0x95, 0xd8, 0x1e, 0x9d, 0x42, 0xed, 0x7b, 0x51, 0xe1, 0xba, 0x44, 0xd8, 0xd3, + 0xe2, 0xa2, 0x42, 0x84, 0x2b, 0xed, 0x87, 0x0a, 0x9c, 0x92, 0x75, 0x16, 0xad, 0x2b, 0xd4, 0x61, + 0xc8, 0xc1, 0x6e, 0xb7, 0xe5, 0x05, 0x85, 0xb6, 0xab, 0x79, 0x32, 0xc4, 0x07, 0xf1, 0x31, 0x89, + 0x40, 0x4a, 0x3d, 0x20, 0x14, 0xd4, 0x2a, 0x4a, 0xa2, 0x5a, 0xc5, 0xbf, 0x28, 0x70, 0x5c, 0x4c, + 0x45, 0xbd, 0x05, 0xc3, 0x81, 0x51, 0xb2, 0x4a, 0x61, 0x21, 0xd3, 0xe1, 0x48, 0xea, 0x75, 0x18, + 0x24, 0x9e, 0x42, 0x83, 0x70, 0x31, 0x6c, 0x8a, 0xa1, 0x5e, 0x83, 0xd2, 0x16, 0xc6, 0x94, 0xe5, + 0x62, 0x88, 0x3e, 0x7c, 0xba, 0x06, 0x43, 0xe7, 0x22, 0xac, 0x90, 0x16, 0x28, 0x4c, 0xbd, 0x1d, + 0xb7, 0xa1, 0x8b, 0x59, 0xfa, 0x0f, 0x09, 0x0b, 0x2c, 0xa9, 0xf6, 0x34, 0xa7, 0x06, 0x23, 0x67, + 0x4e, 0xdb, 0x24, 0x25, 0x18, 0x39, 0xc0, 0x5e, 0x94, 0xa9, 0xfe, 0x21, 0x6a, 0xae, 0xb1, 0x9c, + 0xfc, 0xb3, 0xd4, 0xd2, 0x4d, 0x81, 0x96, 0xce, 0xa7, 0xb5, 0x24, 0xe1, 0x4f, 0xc3, 0x70, 0x2e, + 0x0f, 0x66, 0x2f, 0x74, 0xf5, 0x13, 0x85, 0x2c, 0x48, 0x22, 0x35, 0x31, 0xd1, 0xac, 0xc8, 0x0b, + 0x7b, 0x6b, 0x89, 0xc2, 0x5e, 0x1f, 0xfa, 0x0a, 0xca, 0x7b, 0xb7, 0x9f, 0xe6, 0x44, 0xe2, 0x3c, + 0x26, 0xb5, 0x1f, 0x29, 0x24, 0x14, 0xe7, 0xc1, 0xbd, 0x88, 0x65, 0xbe, 0x8f, 0x15, 0x52, 0x4b, + 0x5f, 0xf1, 0x13, 0x73, 0x8b, 0x47, 0x70, 0xa9, 0xda, 0x33, 0x0f, 0xdb, 0x52, 0x85, 0xf5, 0x92, + 0xa0, 0xb0, 0x1e, 0xb7, 0x99, 0x01, 0x89, 0xcd, 0x0c, 0x86, 0x36, 0xb3, 0x28, 0x98, 0x9e, 0xa9, + 0x98, 0x3d, 0xc7, 0x79, 0xd7, 0xa6, 0x49, 0xe1, 0x32, 0xd1, 0xca, 0xd3, 0xe0, 0x0f, 0x68, 0x1a, + 0xa4, 0x73, 0x15, 0x87, 0x91, 0x5b, 0xdb, 0x2d, 0x18, 0x30, 0x90, 0x87, 0x8a, 0x14, 0x91, 0x09, + 0xa5, 0x55, 0xe4, 0x21, 0x66, 0x65, 0x04, 0xb1, 0x76, 0xed, 0x69, 0x4e, 0x02, 0x14, 0xf2, 0xa3, + 0xdd, 0x25, 0x01, 0x45, 0xd8, 0xc7, 0x8d, 0xa9, 0x02, 0x43, 0x6e, 0x57, 0xd7, 0xb1, 0x4b, 0xed, + 0x68, 0xb8, 0x1e, 0x7c, 0xc6, 0x83, 0xf7, 0xe9, 0x38, 0xa1, 0x98, 0x6b, 0xef, 0xb7, 0xf4, 0x6f, + 0x09, 0xa4, 0xbf, 0x20, 0x91, 0x5e, 0xc0, 0x98, 0x76, 0x1f, 0xce, 0xe7, 0x02, 0xf5, 0xa4, 0x8f, + 0xff, 0x1a, 0x82, 0xc9, 0x80, 0x22, 0x3d, 0x13, 0xcb, 0x51, 0x41, 0xa1, 0x33, 0xa3, 0x5b, 0x30, + 0xe3, 0x76, 0x6c, 0xaf, 0xc1, 0x3d, 0xc4, 0x6d, 0x78, 0x76, 0x43, 0x27, 0x1c, 0x37, 0x50, 0xab, + 0xc5, 0xdc, 0xb1, 0xe2, 0xf2, 0xe5, 0xc1, 0x9a, 0xe1, 0x3e, 0xb4, 0xa9, 0x48, 0x4b, 0xad, 0x96, + 0xfa, 0x55, 0x98, 0x37, 0x78, 0xe0, 0x90, 0x93, 0x19, 0x20, 0x64, 0x66, 0x8d, 0xc4, 0x31, 0x65, + 0x82, 0xd8, 0xaf, 0xc2, 0x31, 0xc2, 0x0d, 0x8b, 0x07, 0x9c, 0x44, 0x65, 0xb0, 0xd7, 0x69, 0x54, + 0xea, 0xaa, 0xcb, 0xed, 0x2e, 0x18, 0x42, 0x7d, 0x17, 0xa6, 0x22, 0xcc, 0xa6, 0x46, 0x29, 0xf7, + 0x3e, 0x4a, 0xc5, 0x88, 0xc7, 0xe9, 0x70, 0x2c, 0x81, 0x2c, 0x24, 0x02, 0x56, 0x86, 0x7a, 0x3d, + 0xd5, 0x49, 0xca, 0x42, 0xc8, 0xa8, 0x1d, 0x99, 0x2c, 0x74, 0x94, 0xe1, 0xfe, 0x52, 0x8c, 0x58, + 0x22, 0x3a, 0xe2, 0x7b, 0x30, 0xb7, 0x49, 0x8c, 0xb8, 0x61, 0x53, 0x2b, 0x4e, 0x6b, 0x70, 0xa4, + 0x77, 0x0d, 0x4e, 0x6d, 0xa6, 0x1d, 0x83, 0x2b, 0xb1, 0x0e, 0x67, 0x13, 0x43, 0x4a, 0x2d, 0x0c, + 0x88, 0x85, 0x9d, 0xde, 0x4c, 0xd7, 0x15, 0x12, 0x46, 0xf6, 0x38, 0x4b, 0x0c, 0xaa, 0xbc, 0xd1, + 0x7e, 0x95, 0x27, 0x11, 0x86, 0x50, 0xad, 0x5d, 0x11, 0x84, 0x94, 0x99, 0x54, 0x48, 0x89, 0xfa, + 0xb6, 0xf6, 0xb4, 0x0c, 0xd3, 0xa2, 0x0e, 0x1e, 0x39, 0x16, 0x60, 0x82, 0x58, 0x19, 0x53, 0x44, + 0x3c, 0x8a, 0x1c, 0xf5, 0xbb, 0x58, 0x10, 0xa6, 0x1d, 0x6a, 0x0d, 0x4e, 0x46, 0xac, 0x26, 0x81, + 0x75, 0x90, 0x60, 0x9d, 0x08, 0x01, 0xe2, 0xb8, 0x17, 0xe0, 0x68, 0x68, 0xd1, 0xc1, 0x3a, 0x80, + 0xc6, 0x87, 0xc3, 0xdc, 0x40, 0xd9, 0x5a, 0xe0, 0x75, 0x38, 0x91, 0xb4, 0xce, 0x00, 0x83, 0x86, + 0x82, 0x63, 0x09, 0x33, 0x63, 0x78, 0x4b, 0x30, 0x93, 0x98, 0x9c, 0x04, 0x8f, 0x83, 0x84, 0xc7, + 0x6a, 0x4c, 0xcf, 0x71, 0x36, 0x6f, 0xc2, 0x94, 0x68, 0x7e, 0x83, 0xe1, 0xcb, 0x34, 0xa0, 0xa5, + 0x27, 0x8a, 0x71, 0xf0, 0x06, 0x54, 0x82, 0x55, 0x4c, 0xd4, 0x7f, 0xc9, 0xda, 0x64, 0x88, 0xb2, + 0xce, 0xfa, 0xc3, 0xc4, 0x46, 0x96, 0x33, 0xd7, 0xe0, 0x04, 0x5b, 0xce, 0xa4, 0xf0, 0x86, 0x09, + 0xde, 0x24, 0xed, 0x4e, 0xa0, 0xad, 0xc0, 0x6c, 0x30, 0x5e, 0xda, 0x9f, 0x09, 0xf6, 0x08, 0xc1, + 0x9e, 0x62, 0x50, 0x09, 0xc3, 0xa3, 0x44, 0x96, 0x60, 0x86, 0x8d, 0x2d, 0xa1, 0x41, 0xbd, 0xa3, + 0x4a, 0x81, 0x84, 0x24, 0x7e, 0x11, 0xb4, 0x80, 0x0f, 0xb1, 0x7b, 0x10, 0x3a, 0xa3, 0x34, 0x8e, + 0x33, 0x48, 0x41, 0x4e, 0x23, 0xb4, 0xbe, 0x02, 0xa7, 0x19, 0x3b, 0x19, 0xa4, 0xc6, 0x08, 0x29, + 0xc6, 0xb7, 0x84, 0x52, 0x24, 0xff, 0xfd, 0x9d, 0x02, 0xb3, 0x82, 0xed, 0x50, 0x91, 0x8a, 0xc0, + 0x9e, 0xed, 0x53, 0x6e, 0x08, 0x3c, 0xf8, 0x6c, 0xd6, 0x6e, 0x2e, 0x5a, 0x19, 0xf8, 0x5b, 0x05, + 0x5e, 0xce, 0x06, 0x29, 0xba, 0x49, 0xf9, 0x46, 0xb2, 0x3e, 0xf0, 0x66, 0x31, 0x89, 0x9e, 0xaf, + 0x4a, 0xf0, 0x9f, 0x07, 0x61, 0x3a, 0x8b, 0xd6, 0x17, 0xb0, 0x56, 0xa0, 0xfe, 0x12, 0x1c, 0x22, + 0x17, 0x72, 0x4c, 0xdb, 0x6a, 0x18, 0xb8, 0xe5, 0x21, 0xb2, 0xba, 0x1f, 0xbd, 0x7a, 0x3e, 0xf3, + 0x66, 0x13, 0xc3, 0x58, 0xf5, 0x11, 0x98, 0x81, 0x8c, 0x77, 0xa2, 0x8d, 0xea, 0x0d, 0x28, 0x77, + 0xd0, 0xae, 0xdd, 0xf5, 0x7a, 0x39, 0xed, 0x67, 0x28, 0x11, 0x95, 0xff, 0x23, 0x5d, 0x03, 0x0b, + 0x76, 0xb6, 0x3f, 0x53, 0xb3, 0xcf, 0x5d, 0x0b, 0x67, 0x33, 0xa8, 0xfd, 0xbd, 0x42, 0x16, 0xc3, + 0xd9, 0x50, 0x2f, 0xb6, 0xf1, 0xff, 0x2f, 0xab, 0x44, 0x92, 0x4c, 0x93, 0x50, 0xd6, 0xcf, 0x6f, + 0xe7, 0xc9, 0xbb, 0xdb, 0xc8, 0xdd, 0x21, 0xa6, 0x36, 0xc8, 0xba, 0xd7, 0x91, 0xbb, 0x13, 0x08, + 0x54, 0x0e, 0x05, 0xca, 0xdd, 0xd3, 0x09, 0x05, 0xd4, 0x34, 0x5a, 0x24, 0x12, 0xf5, 0xf1, 0x4d, + 0xea, 0x6f, 0x1c, 0x24, 0xf7, 0x64, 0x65, 0x9b, 0x9d, 0x2f, 0x90, 0x92, 0xde, 0x14, 0x28, 0xe9, + 0xa5, 0xb4, 0x92, 0xd2, 0x32, 0x6a, 0x67, 0x48, 0x81, 0x48, 0xd6, 0xcd, 0x55, 0xf5, 0x3d, 0x05, + 0x46, 0xf8, 0x32, 0x38, 0xae, 0x00, 0x25, 0x4f, 0x01, 0x07, 0x73, 0x15, 0x50, 0xca, 0x56, 0xc0, + 0x80, 0x44, 0x01, 0x61, 0xf9, 0x42, 0xfb, 0x6b, 0x9a, 0x6a, 0x23, 0x9b, 0xd7, 0xe4, 0x8a, 0x61, + 0xff, 0xf6, 0xdd, 0xb9, 0x29, 0x36, 0x83, 0x2b, 0xed, 0x1e, 0xc9, 0xb0, 0x19, 0x10, 0x3d, 0xed, + 0xb8, 0x7f, 0xf3, 0x20, 0x1c, 0x5b, 0x77, 0x9b, 0x1b, 0x5c, 0xd5, 0x0f, 0x1d, 0x64, 0xb9, 0x5b, + 0x19, 0xb6, 0xfc, 0x0a, 0x4c, 0xba, 0x76, 0xd7, 0xd1, 0x71, 0x43, 0x34, 0x69, 0x2a, 0xed, 0xdb, + 0x88, 0x4e, 0x1d, 0x59, 0x8f, 0xbb, 0x9e, 0x69, 0xd1, 0xd3, 0x6e, 0x91, 0xb1, 0x9f, 0x88, 0x00, + 0x6c, 0x88, 0xef, 0x7b, 0x0e, 0xf4, 0x76, 0xdf, 0x73, 0x21, 0xa1, 0xdf, 0xd9, 0xa8, 0x7e, 0xd3, + 0xe2, 0x6a, 0x73, 0xa4, 0x8c, 0x9e, 0xee, 0xe0, 0x06, 0xfd, 0xc1, 0x41, 0x72, 0x27, 0xf4, 0xce, + 0x13, 0x0f, 0x3b, 0x16, 0x6a, 0xfd, 0x7f, 0xd1, 0xd3, 0xa5, 0x84, 0x9e, 0x62, 0xef, 0x04, 0x92, + 0xc2, 0xb2, 0x77, 0x02, 0xc9, 0x66, 0xae, 0xa3, 0x9f, 0x2a, 0xa4, 0x7e, 0x73, 0xcf, 0x7c, 0xaf, + 0x6b, 0x92, 0x1b, 0xcd, 0x6c, 0xc1, 0xf0, 0x7c, 0xf5, 0x9b, 0x58, 0xf0, 0x28, 0x25, 0x82, 0x07, + 0x5f, 0x00, 0x0c, 0xf4, 0xb7, 0x00, 0x50, 0x82, 0x05, 0xc0, 0xe5, 0xac, 0x5d, 0x6b, 0x4a, 0x22, + 0x6d, 0x96, 0x6c, 0x5a, 0x53, 0xed, 0x5c, 0x15, 0xdf, 0xa7, 0xc9, 0xf4, 0x4e, 0x1b, 0x3b, 0x4d, + 0x6c, 0xe9, 0xbb, 0x1b, 0xe4, 0x7e, 0x06, 0x7b, 0x31, 0xb1, 0x6f, 0xea, 0xa8, 0x5d, 0xc9, 0x4a, + 0x7c, 0x42, 0x66, 0x58, 0xe2, 0x13, 0xf6, 0x85, 0x77, 0xd1, 0x0f, 0x92, 0x07, 0x20, 0x6b, 0x96, + 0xbf, 0x29, 0x72, 0xb9, 0xb4, 0xf4, 0xc8, 0xf8, 0x05, 0x71, 0x81, 0x98, 0x5e, 0x06, 0x12, 0x66, + 0x72, 0x83, 0xfb, 0x47, 0x2f, 0x8b, 0x55, 0xe6, 0x23, 0x57, 0x13, 0x4a, 0xd5, 0xe2, 0xe7, 0xc1, + 0x22, 0x9d, 0xb0, 0x87, 0x0b, 0xe2, 0xce, 0xa4, 0x5a, 0x57, 0xf1, 0x97, 0x6a, 0x4d, 0xaa, 0x55, + 0xac, 0x13, 0xa6, 0x56, 0x71, 0x27, 0x57, 0xeb, 0x4f, 0x14, 0xe2, 0x9c, 0x0f, 0x1c, 0xf3, 0x91, + 0xd9, 0xc2, 0x4d, 0x6c, 0xdc, 0x79, 0x82, 0xf5, 0xae, 0x87, 0x57, 0x6c, 0xcb, 0x73, 0x90, 0x2e, + 0xf7, 0xbf, 0x49, 0x18, 0xdc, 0xea, 0x5a, 0x86, 0xcb, 0x54, 0x49, 0x3f, 0xd4, 0xf3, 0x70, 0x44, + 0x67, 0x98, 0x0d, 0x44, 0xdf, 0x8d, 0x30, 0xa5, 0x1d, 0x0e, 0xda, 0xd9, 0x73, 0x12, 0x55, 0x65, + 0x4b, 0x03, 0xaa, 0x27, 0x9a, 0xed, 0x6f, 0x4a, 0x0e, 0xda, 0xcf, 0x44, 0xc5, 0x95, 0xf2, 0xea, + 0x07, 0x92, 0x97, 0xb2, 0x00, 0x78, 0xba, 0x7f, 0x17, 0x80, 0xf0, 0xdb, 0x30, 0xcc, 0xad, 0x2d, + 0x92, 0xf1, 0x33, 0xd3, 0xc0, 0x2b, 0xfe, 0x54, 0xfd, 0xe0, 0xdf, 0xe7, 0xce, 0x35, 0x4d, 0x6f, + 0xbb, 0xbb, 0xb9, 0xa0, 0xdb, 0x6d, 0xf6, 0xc6, 0x90, 0xfd, 0x77, 0xd9, 0x35, 0x76, 0x16, 0xbd, + 0xdd, 0x0e, 0x76, 0x09, 0x82, 0x5b, 0x1f, 0x21, 0xe4, 0x57, 0xcd, 0xad, 0xad, 0xda, 0x84, 0x40, + 0x26, 0xed, 0xdb, 0x70, 0x64, 0xdd, 0x6d, 0xd6, 0xf1, 0x63, 0xe4, 0x18, 0xee, 0xfd, 0x8e, 0x77, + 0xbf, 0x2b, 0xd5, 0x34, 0xad, 0x13, 0x0a, 0x94, 0x72, 0x32, 0xaa, 0x94, 0x18, 0x29, 0xad, 0x4a, + 0x02, 0x6a, 0xac, 0x2d, 0xfa, 0x56, 0xe6, 0x18, 0xe9, 0xd4, 0x5b, 0xc8, 0x6c, 0xdf, 0xb3, 0xf5, + 0x1d, 0x6c, 0xdc, 0x25, 0x93, 0x27, 0x77, 0xa2, 0x89, 0x16, 0x01, 0x5b, 0xa2, 0x96, 0xfe, 0xa0, + 0xbb, 0xf9, 0x55, 0xbc, 0x4b, 0x26, 0x7e, 0xac, 0x2e, 0xea, 0x52, 0xa7, 0x61, 0xc4, 0x35, 0x9b, + 0x16, 0xf2, 0xba, 0x0e, 0xdd, 0x84, 0x8f, 0xd5, 0xc3, 0x86, 0xec, 0xf5, 0x46, 0x9a, 0x2f, 0xb6, + 0xde, 0x48, 0x77, 0x70, 0x91, 0xbe, 0x43, 0x9f, 0xcd, 0x6c, 0x98, 0x4d, 0x8b, 0x2c, 0xa1, 0x37, + 0xa0, 0xec, 0xff, 0xcd, 0x04, 0x19, 0x5b, 0xbe, 0xf1, 0xf9, 0xb3, 0xb9, 0xb2, 0x4b, 0x5a, 0xfe, + 0xe7, 0xd9, 0xdc, 0xe5, 0x02, 0xb3, 0xb8, 0xa4, 0xeb, 0xcc, 0x4e, 0xeb, 0x8c, 0x94, 0x3a, 0x0d, + 0x03, 0xab, 0x74, 0x29, 0xeb, 0x93, 0x1c, 0xfe, 0xfc, 0xd9, 0x1c, 0xb1, 0xd9, 0x3a, 0x69, 0xd5, + 0x9e, 0x90, 0x07, 0x48, 0x84, 0x03, 0x5b, 0x57, 0xcf, 0x50, 0xf9, 0xe9, 0x65, 0x2f, 0x5a, 0xfb, + 0x20, 0x08, 0xfe, 0x77, 0x7d, 0xd8, 0xef, 0x22, 0xd7, 0xb9, 0x56, 0x60, 0xf0, 0x11, 0x6a, 0x75, + 0x31, 0xdb, 0xb9, 0x9e, 0xcd, 0x4a, 0xc8, 0x11, 0xf9, 0x82, 0xdd, 0x38, 0xc1, 0xd5, 0x7e, 0xa7, + 0x44, 0xfc, 0x7c, 0xc9, 0x68, 0x9b, 0x16, 0xad, 0x09, 0x0b, 0xb6, 0xd4, 0xfd, 0x6d, 0xb7, 0xde, + 0x81, 0x23, 0x91, 0x7b, 0x94, 0xb4, 0x16, 0x13, 0x96, 0x54, 0x94, 0xbc, 0xe0, 0x75, 0x38, 0x44, + 0x26, 0xd7, 0x9b, 0xa4, 0x57, 0x39, 0x07, 0x7a, 0xbf, 0xca, 0x39, 0x28, 0xbf, 0xca, 0x79, 0x1b, + 0xca, 0xae, 0x87, 0xbc, 0xae, 0xcb, 0xae, 0xd9, 0x9d, 0xcb, 0x54, 0x2b, 0x91, 0x75, 0x83, 0xc0, + 0xd7, 0x19, 0x5e, 0xad, 0x96, 0x55, 0xdc, 0xc8, 0x56, 0xb4, 0x76, 0x91, 0xd4, 0x36, 0xb2, 0x81, + 0xb8, 0xe1, 0xfe, 0x29, 0x7d, 0x24, 0xb5, 0x44, 0x1f, 0xc0, 0xbd, 0x8f, 0x37, 0x3c, 0xb4, 0x83, + 0xdf, 0x76, 0x90, 0xe5, 0xc9, 0xbd, 0xf1, 0x2e, 0x94, 0x9b, 0x04, 0x82, 0x6d, 0xaa, 0x16, 0xb2, + 0xc4, 0x23, 0xb4, 0x02, 0xf2, 0x44, 0xb5, 0x75, 0x86, 0x5d, 0x7b, 0x25, 0xeb, 0x85, 0x94, 0x88, + 0x23, 0xed, 0x34, 0x79, 0x1a, 0x21, 0xea, 0xe2, 0x02, 0xed, 0x92, 0xd8, 0xb2, 0xe4, 0x73, 0x83, + 0xbc, 0x08, 0x84, 0x54, 0x9a, 0x0a, 0x0c, 0x11, 0x7e, 0xf8, 0xb5, 0xcc, 0xe0, 0x33, 0x3b, 0x4a, + 0xa4, 0x47, 0x60, 0x51, 0x22, 0xdd, 0xc1, 0x79, 0xfb, 0x58, 0x09, 0x0f, 0x4f, 0xee, 0x30, 0x5a, + 0xeb, 0xb6, 0x61, 0x6e, 0x99, 0x3a, 0xca, 0x5c, 0x79, 0x7f, 0x13, 0x86, 0x83, 0x77, 0xde, 0xcc, + 0x53, 0x6f, 0x66, 0xe9, 0x5c, 0x3a, 0xc0, 0x03, 0x46, 0xa4, 0xce, 0xc9, 0x15, 0x4b, 0x78, 0x52, + 0x82, 0xda, 0xcb, 0x24, 0xdf, 0x49, 0xfb, 0x03, 0xd1, 0xaf, 0x7e, 0x7e, 0x0e, 0x4a, 0xeb, 0x6e, + 0x53, 0x45, 0x30, 0x14, 0xbc, 0x91, 0x7c, 0x39, 0x27, 0xd8, 0x30, 0xb8, 0xea, 0x42, 0x31, 0x38, + 0x9e, 0x5a, 0x0d, 0x18, 0xe6, 0xcf, 0x17, 0xf3, 0x02, 0x5a, 0x00, 0x58, 0x5d, 0x2c, 0x08, 0xc8, + 0x47, 0xf9, 0x7d, 0x05, 0x4e, 0xc8, 0xde, 0x75, 0xbd, 0x9e, 0x43, 0x4c, 0x82, 0x57, 0x7d, 0xab, + 0x3f, 0x3c, 0xce, 0xd3, 0x87, 0x0a, 0x4c, 0x67, 0xbe, 0x1b, 0xba, 0x51, 0x6c, 0x00, 0x21, 0x72, + 0x75, 0xe5, 0x39, 0x90, 0x39, 0x8b, 0x7f, 0xa6, 0xc0, 0xa9, 0xdc, 0x0b, 0xd4, 0xb7, 0x8a, 0x8d, + 0x24, 0x25, 0x50, 0x7d, 0xfb, 0x39, 0x09, 0x70, 0x76, 0x9f, 0x2a, 0x30, 0x29, 0x7c, 0x40, 0xfa, + 0x6a, 0xce, 0x08, 0x22, 0xa4, 0xea, 0x8d, 0x3e, 0x90, 0x38, 0x2b, 0x7f, 0xa4, 0x40, 0x35, 0xe3, + 0xf1, 0xe6, 0xf5, 0x1c, 0xda, 0x72, 0xd4, 0xea, 0x52, 0xdf, 0xa8, 0x9c, 0xb9, 0xef, 0x2a, 0x70, + 0x4c, 0x7c, 0x29, 0xf6, 0xb5, 0xc2, 0x32, 0x47, 0xb0, 0xaa, 0xbf, 0xd0, 0x0f, 0x16, 0xe7, 0x66, + 0x17, 0x0e, 0x27, 0xef, 0x62, 0xe5, 0x05, 0x91, 0x04, 0x7c, 0xf5, 0xf5, 0xde, 0xe0, 0x63, 0x8a, + 0x10, 0x5f, 0x8b, 0x7a, 0xad, 0x90, 0x96, 0x13, 0x58, 0xb9, 0x8a, 0xc8, 0xbe, 0xd6, 0xf4, 0xeb, + 0x70, 0x34, 0x7d, 0x3d, 0xe7, 0x95, 0x22, 0x24, 0xa3, 0x18, 0xd5, 0x37, 0x7b, 0xc5, 0xe0, 0x0c, + 0xfc, 0xa1, 0x02, 0x27, 0xe5, 0x3b, 0xbb, 0x3c, 0xba, 0x52, 0xcc, 0xea, 0xed, 0x7e, 0x31, 0x63, + 0xee, 0x94, 0x71, 0x0f, 0xf7, 0x7a, 0x21, 0x03, 0x14, 0xa1, 0xe6, 0xba, 0x53, 0x81, 0xfb, 0xb3, + 0x7e, 0x94, 0xcc, 0xbd, 0xd5, 0x79, 0xab, 0xb8, 0xdb, 0x0a, 0x09, 0xe4, 0x46, 0xc9, 0xc2, 0x57, + 0x31, 0xbf, 0xa7, 0xc0, 0x54, 0xd6, 0x31, 0x78, 0xad, 0x47, 0x8d, 0x44, 0x23, 0xc1, 0x72, 0xff, + 0xb8, 0xf1, 0xe8, 0x24, 0x3c, 0x28, 0x7b, 0xad, 0x90, 0x9b, 0x27, 0xb0, 0xf2, 0xa3, 0x53, 0xd6, + 0xb9, 0x14, 0xd1, 0x56, 0xd6, 0x49, 0x46, 0xad, 0xb8, 0xcb, 0x27, 0x71, 0x73, 0xb5, 0x55, 0xe4, + 0x24, 0x22, 0x92, 0xa2, 0xe5, 0xcf, 0x13, 0x0b, 0xa6, 0x68, 0x29, 0x81, 0xa2, 0x29, 0x3a, 0xf7, + 0x55, 0x96, 0xfa, 0xc7, 0x0a, 0xcc, 0x64, 0xdf, 0x16, 0x2f, 0x96, 0x4c, 0x24, 0xd8, 0xd5, 0xd5, + 0xe7, 0xc1, 0xe6, 0x5c, 0xfe, 0x89, 0x02, 0xb3, 0x39, 0xa7, 0xe6, 0x37, 0x7b, 0x1f, 0x28, 0xea, + 0x28, 0x77, 0x9e, 0x0b, 0x9d, 0x33, 0xfa, 0x07, 0x0a, 0x54, 0xa4, 0x47, 0xa6, 0x6f, 0x14, 0x32, + 0xfc, 0x34, 0x62, 0xf5, 0x56, 0x9f, 0x88, 0x31, 0xfd, 0xe5, 0xdc, 0xbc, 0xbd, 0x59, 0xdc, 0xf6, + 0x05, 0xe8, 0xb9, 0xfa, 0x2b, 0x78, 0x73, 0xf6, 0x03, 0x05, 0x54, 0xc1, 0x01, 0xdd, 0x95, 0xbc, + 0xca, 0x4a, 0x0a, 0xa5, 0x7a, 0xbd, 0x67, 0x14, 0xce, 0xc4, 0xaf, 0xc1, 0x91, 0xd4, 0xd1, 0x57, + 0xde, 0x0e, 0x27, 0x89, 0x50, 0x7d, 0xa3, 0x47, 0x84, 0xe8, 0xaa, 0x23, 0x7d, 0xa8, 0x94, 0xb7, + 0xea, 0x48, 0x61, 0xe4, 0xae, 0x3a, 0xa4, 0xc7, 0x39, 0x24, 0xde, 0x8b, 0xcf, 0x72, 0xf2, 0xe2, + 0xbd, 0x10, 0x2b, 0x37, 0xde, 0x67, 0x1e, 0xc7, 0xa8, 0xbf, 0xab, 0xc0, 0x71, 0xc9, 0x59, 0xcc, + 0xb5, 0xdc, 0x20, 0x28, 0x42, 0xab, 0xde, 0xec, 0x0b, 0x2d, 0xc6, 0x90, 0xe4, 0x14, 0xe3, 0x5a, + 0xee, 0x5e, 0xbb, 0x2f, 0x86, 0xb2, 0x8f, 0x00, 0x54, 0x17, 0xc6, 0xe3, 0x85, 0xe8, 0x4b, 0x39, + 0xf4, 0x62, 0xd0, 0xd5, 0xd7, 0x7a, 0x81, 0x8e, 0x45, 0x94, 0x9c, 0x92, 0x65, 0x9e, 0x58, 0xd9, + 0xe8, 0xb9, 0x11, 0xa5, 0x58, 0x89, 0x4e, 0xed, 0xc0, 0x58, 0xec, 0xc7, 0xb2, 0x2e, 0xe6, 0x90, + 0x8d, 0x02, 0x57, 0x5f, 0xed, 0x01, 0x38, 0x1a, 0x3e, 0x52, 0x3f, 0x03, 0xb8, 0x58, 0x88, 0x50, + 0x88, 0x90, 0x1b, 0x3e, 0x64, 0xbf, 0x5f, 0x47, 0xcc, 0x53, 0xf2, 0xe3, 0x75, 0xd7, 0x0a, 0xd1, + 0x4c, 0xa2, 0xe5, 0x9a, 0x67, 0xf6, 0x2f, 0x96, 0x91, 0x22, 0x80, 0xb0, 0x40, 0x9a, 0xa7, 0x5c, + 0x11, 0x52, 0x6e, 0x11, 0x20, 0xab, 0xba, 0x49, 0xb2, 0x8b, 0xa0, 0xb6, 0x99, 0x97, 0x5d, 0xd2, + 0x28, 0xb9, 0xd9, 0x45, 0x5e, 0xc6, 0x24, 0x9b, 0x3a, 0x79, 0x0d, 0xb3, 0xd0, 0x66, 0x51, 0x84, + 0x99, 0xbb, 0xa9, 0xcb, 0xad, 0x32, 0x56, 0x07, 0xbf, 0xf3, 0xd9, 0x47, 0x17, 0x94, 0xe5, 0xed, + 0x1f, 0x7f, 0x32, 0xab, 0x7c, 0xfc, 0xc9, 0xac, 0xf2, 0x1f, 0x9f, 0xcc, 0x2a, 0xbf, 0xf7, 0xe9, + 0xec, 0x81, 0x8f, 0x3f, 0x9d, 0x3d, 0xf0, 0xaf, 0x9f, 0xce, 0x1e, 0xf8, 0x95, 0x77, 0x22, 0x27, + 0x2f, 0x6b, 0xc1, 0x60, 0xf7, 0xd0, 0xa6, 0xbb, 0xc8, 0x87, 0xbe, 0xac, 0xdb, 0x0e, 0x8e, 0x7e, + 0x6e, 0x23, 0xd3, 0x5a, 0x6c, 0xdb, 0x46, 0xb7, 0x85, 0xdd, 0xf0, 0xf7, 0x37, 0xc9, 0x29, 0xcd, + 0x66, 0x99, 0xfc, 0x76, 0xe6, 0xab, 0xff, 0x17, 0x00, 0x00, 0xff, 0xff, 0x57, 0x4e, 0x1f, 0xdf, + 0xa8, 0x54, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -4024,6 +4112,7 @@ type MsgClient interface { UpdateDerivativeMarket(ctx context.Context, in *MsgUpdateDerivativeMarket, opts ...grpc.CallOption) (*MsgUpdateDerivativeMarketResponse, error) AuthorizeStakeGrants(ctx context.Context, in *MsgAuthorizeStakeGrants, opts ...grpc.CallOption) (*MsgAuthorizeStakeGrantsResponse, error) ActivateStakeGrant(ctx context.Context, in *MsgActivateStakeGrant, opts ...grpc.CallOption) (*MsgActivateStakeGrantResponse, error) + BatchExchangeModification(ctx context.Context, in *MsgBatchExchangeModification, opts ...grpc.CallOption) (*MsgBatchExchangeModificationResponse, error) } type msgClient struct { @@ -4349,6 +4438,15 @@ func (c *msgClient) ActivateStakeGrant(ctx context.Context, in *MsgActivateStake return out, nil } +func (c *msgClient) BatchExchangeModification(ctx context.Context, in *MsgBatchExchangeModification, opts ...grpc.CallOption) (*MsgBatchExchangeModificationResponse, error) { + out := new(MsgBatchExchangeModificationResponse) + err := c.cc.Invoke(ctx, "/injective.exchange.v1beta1.Msg/BatchExchangeModification", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // MsgServer is the server API for Msg service. type MsgServer interface { // Deposit defines a method for transferring coins from the sender's bank @@ -4439,6 +4537,7 @@ type MsgServer interface { UpdateDerivativeMarket(context.Context, *MsgUpdateDerivativeMarket) (*MsgUpdateDerivativeMarketResponse, error) AuthorizeStakeGrants(context.Context, *MsgAuthorizeStakeGrants) (*MsgAuthorizeStakeGrantsResponse, error) ActivateStakeGrant(context.Context, *MsgActivateStakeGrant) (*MsgActivateStakeGrantResponse, error) + BatchExchangeModification(context.Context, *MsgBatchExchangeModification) (*MsgBatchExchangeModificationResponse, error) } // UnimplementedMsgServer can be embedded to have forward compatible implementations. @@ -4550,6 +4649,9 @@ func (*UnimplementedMsgServer) AuthorizeStakeGrants(ctx context.Context, req *Ms func (*UnimplementedMsgServer) ActivateStakeGrant(ctx context.Context, req *MsgActivateStakeGrant) (*MsgActivateStakeGrantResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ActivateStakeGrant not implemented") } +func (*UnimplementedMsgServer) BatchExchangeModification(ctx context.Context, req *MsgBatchExchangeModification) (*MsgBatchExchangeModificationResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method BatchExchangeModification not implemented") +} func RegisterMsgServer(s grpc1.Server, srv MsgServer) { s.RegisterService(&_Msg_serviceDesc, srv) @@ -5185,6 +5287,24 @@ func _Msg_ActivateStakeGrant_Handler(srv interface{}, ctx context.Context, dec f return interceptor(ctx, in, info, handler) } +func _Msg_BatchExchangeModification_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MsgBatchExchangeModification) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(MsgServer).BatchExchangeModification(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.exchange.v1beta1.Msg/BatchExchangeModification", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(MsgServer).BatchExchangeModification(ctx, req.(*MsgBatchExchangeModification)) + } + return interceptor(ctx, in, info, handler) +} + var _Msg_serviceDesc = grpc.ServiceDesc{ ServiceName: "injective.exchange.v1beta1.Msg", HandlerType: (*MsgServer)(nil), @@ -5329,6 +5449,10 @@ var _Msg_serviceDesc = grpc.ServiceDesc{ MethodName: "ActivateStakeGrant", Handler: _Msg_ActivateStakeGrant_Handler, }, + { + MethodName: "BatchExchangeModification", + Handler: _Msg_BatchExchangeModification_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "injective/exchange/v1beta1/tx.proto", @@ -5942,6 +6066,16 @@ func (m *MsgInstantSpotMarketLaunch) MarshalToSizedBuffer(dAtA []byte) (int, err _ = i var l int _ = l + if m.QuoteDecimals != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.QuoteDecimals)) + i-- + dAtA[i] = 0x48 + } + if m.BaseDecimals != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.BaseDecimals)) + i-- + dAtA[i] = 0x40 + } { size := m.MinNotional.Size() i -= size @@ -8959,6 +9093,71 @@ func (m *MsgActivateStakeGrantResponse) MarshalToSizedBuffer(dAtA []byte) (int, return len(dAtA) - i, nil } +func (m *MsgBatchExchangeModification) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *MsgBatchExchangeModification) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgBatchExchangeModification) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Proposal != nil { + { + size, err := m.Proposal.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if len(m.Sender) > 0 { + i -= len(m.Sender) + copy(dAtA[i:], m.Sender) + i = encodeVarintTx(dAtA, i, uint64(len(m.Sender))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *MsgBatchExchangeModificationResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *MsgBatchExchangeModificationResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgBatchExchangeModificationResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + func encodeVarintTx(dAtA []byte, offset int, v uint64) int { offset -= sovTx(v) base := offset @@ -9232,6 +9431,12 @@ func (m *MsgInstantSpotMarketLaunch) Size() (n int) { n += 1 + l + sovTx(uint64(l)) l = m.MinNotional.Size() n += 1 + l + sovTx(uint64(l)) + if m.BaseDecimals != 0 { + n += 1 + sovTx(uint64(m.BaseDecimals)) + } + if m.QuoteDecimals != 0 { + n += 1 + sovTx(uint64(m.QuoteDecimals)) + } return n } @@ -10480,6 +10685,32 @@ func (m *MsgActivateStakeGrantResponse) Size() (n int) { return n } +func (m *MsgBatchExchangeModification) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Sender) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.Proposal != nil { + l = m.Proposal.Size() + n += 1 + l + sovTx(uint64(l)) + } + return n +} + +func (m *MsgBatchExchangeModificationResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + func sovTx(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -12459,6 +12690,44 @@ func (m *MsgInstantSpotMarketLaunch) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 8: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field BaseDecimals", wireType) + } + m.BaseDecimals = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.BaseDecimals |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 9: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field QuoteDecimals", wireType) + } + m.QuoteDecimals = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.QuoteDecimals |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -21554,6 +21823,174 @@ func (m *MsgActivateStakeGrantResponse) Unmarshal(dAtA []byte) error { } return nil } +func (m *MsgBatchExchangeModification) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgBatchExchangeModification: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgBatchExchangeModification: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Sender = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Proposal", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Proposal == nil { + m.Proposal = &BatchExchangeModificationProposal{} + } + if err := m.Proposal.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgBatchExchangeModificationResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgBatchExchangeModificationResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgBatchExchangeModificationResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func skipTx(dAtA []byte) (n int, err error) { l := len(dAtA) iNdEx := 0 diff --git a/chain/exchange/types/wasm_maker_contract.go b/chain/exchange/types/wasm_maker_contract.go deleted file mode 100644 index 8b75eb9f..00000000 --- a/chain/exchange/types/wasm_maker_contract.go +++ /dev/null @@ -1,23 +0,0 @@ -package types - -import ( - "cosmossdk.io/math" -) - -type MintToUser struct { - SubaccountIDSender string `json:"subaccount_id_sender"` - Amount string `json:"amount"` -} - -type MintToUserMsg struct { - MintToUser MintToUser `json:"mint_to_user"` -} - -func NewMintToUserMsg(subaccountIDSender string, amount math.Int) MintToUserMsg { - return MintToUserMsg{ - MintToUser: MintToUser{ - SubaccountIDSender: subaccountIDSender, - Amount: amount.String(), - }, - } -} diff --git a/chain/helpers/common.go b/chain/helpers/common.go new file mode 100644 index 00000000..2254ea53 --- /dev/null +++ b/chain/helpers/common.go @@ -0,0 +1,27 @@ +package helpers + +import ( + sdk "github.com/cosmos/cosmos-sdk/types" +) + +func HasDuplicate[T comparable](elements []T) bool { + seen := make(map[T]struct{}) + for idx := range elements { + if _, ok := seen[elements[idx]]; ok { + return true // Duplicate found + } + seen[elements[idx]] = struct{}{} + } + return false +} + +func HasDuplicateCoins(slice []sdk.Coin) bool { + seen := make(map[string]struct{}) + for _, item := range slice { + if _, ok := seen[item.Denom]; ok { + return true + } + seen[item.Denom] = struct{}{} + } + return false +} diff --git a/chain/insurance/types/errors.go b/chain/insurance/types/errors.go deleted file mode 100644 index fb934756..00000000 --- a/chain/insurance/types/errors.go +++ /dev/null @@ -1,20 +0,0 @@ -package types - -import ( - "cosmossdk.io/errors" -) - -var ( - ErrInsuranceFundAlreadyExists = errors.Register(ModuleName, 1, "insurance fund already exists") - ErrInsuranceFundNotFound = errors.Register(ModuleName, 2, "insurance fund not found") - ErrRedemptionAlreadyExists = errors.Register(ModuleName, 3, "redemption already exists") - ErrInvalidDepositAmount = errors.Register(ModuleName, 4, "invalid deposit amount") - ErrInvalidDepositDenom = errors.Register(ModuleName, 5, "invalid deposit denom") - ErrPayoutTooLarge = errors.Register(ModuleName, 6, "insurance payout exceeds deposits") - ErrInvalidTicker = errors.Register(ModuleName, 7, "invalid ticker") - ErrInvalidQuoteDenom = errors.Register(ModuleName, 8, "invalid quote denom") - ErrInvalidOracle = errors.Register(ModuleName, 9, "invalid oracle") - ErrInvalidExpirationTime = errors.Register(ModuleName, 10, "invalid expiration time") - ErrInvalidMarketID = errors.Register(ModuleName, 11, "invalid marketID") - ErrInvalidShareDenom = errors.Register(ModuleName, 12, "invalid share denom") -) diff --git a/chain/insurance/types/events.go b/chain/insurance/types/events.go deleted file mode 100644 index ab1254f4..00000000 --- a/chain/insurance/types/events.go +++ /dev/null @@ -1 +0,0 @@ -package types diff --git a/chain/insurance/types/expected_keepers.go b/chain/insurance/types/expected_keepers.go deleted file mode 100644 index 0e5195ef..00000000 --- a/chain/insurance/types/expected_keepers.go +++ /dev/null @@ -1,20 +0,0 @@ -package types - -import ( - "context" - - sdk "github.com/cosmos/cosmos-sdk/types" - banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" -) - -// BankKeeper defines the expected bank keeper methods -type BankKeeper interface { - GetBalance(ctx context.Context, addr sdk.AccAddress, denom string) sdk.Coin - GetAllBalances(ctx context.Context, addr sdk.AccAddress) sdk.Coins - SendCoinsFromModuleToModule(ctx context.Context, senderModule, recipientModule string, amt sdk.Coins) error - SendCoinsFromModuleToAccount(ctx context.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error - SendCoinsFromAccountToModule(ctx context.Context, senderAddr sdk.AccAddress, recipientModule string, amt sdk.Coins) error - MintCoins(ctx context.Context, moduleName string, amt sdk.Coins) error - BurnCoins(ctx context.Context, moduleName string, amt sdk.Coins) error - SetDenomMetaData(ctx context.Context, denomMeta banktypes.Metadata) -} diff --git a/chain/insurance/types/genesis.go b/chain/insurance/types/genesis.go deleted file mode 100644 index 701f339e..00000000 --- a/chain/insurance/types/genesis.go +++ /dev/null @@ -1,33 +0,0 @@ -package types - -import ( - "errors" -) - -func NewGenesisState() GenesisState { - return GenesisState{} -} - -func (gs GenesisState) Validate() error { - if gs.NextRedemptionScheduleId == 0 { - return errors.New("NextRedemptionScheduleId should NOT be zero") - } - if gs.NextShareDenomId == 0 { - return errors.New("NextShareDenomId should NOT be zero") - } - - if err := gs.Params.Validate(); err != nil { - return err - } - return nil -} - -func DefaultGenesisState() *GenesisState { - return &GenesisState{ - Params: DefaultParams(), - NextShareDenomId: 1, - NextRedemptionScheduleId: 1, - RedemptionSchedule: []RedemptionSchedule{}, - InsuranceFunds: []InsuranceFund{}, - } -} diff --git a/chain/insurance/types/insurance.go b/chain/insurance/types/insurance.go deleted file mode 100644 index de861276..00000000 --- a/chain/insurance/types/insurance.go +++ /dev/null @@ -1,56 +0,0 @@ -package types - -import ( - "fmt" - "time" - - "cosmossdk.io/math" - "github.com/ethereum/go-ethereum/common" - - oracletypes "github.com/InjectiveLabs/sdk-go/chain/oracle/types" -) - -var ( - InsuranceFundInitialSupply = math.NewIntWithDecimal(1, 18) - InsuranceFundProtocolOwnedLiquiditySupply = math.NewIntWithDecimal(1, 16) - InsuranceFundCreatorSupply = InsuranceFundInitialSupply.Sub(InsuranceFundProtocolOwnedLiquiditySupply) -) - -func NewInsuranceFund( - marketID common.Hash, - depositDenom, poolTokenDenom string, - redemptionNoticePeriodDuration time.Duration, - ticker, oracleBase, oracleQuote string, oracleType oracletypes.OracleType, expiry int64, -) *InsuranceFund { - - return &InsuranceFund{ - DepositDenom: depositDenom, - InsurancePoolTokenDenom: poolTokenDenom, - RedemptionNoticePeriodDuration: redemptionNoticePeriodDuration, - Balance: math.ZeroInt(), - TotalShare: math.ZeroInt(), - MarketId: marketID.Hex(), - MarketTicker: ticker, - OracleBase: oracleBase, - OracleQuote: oracleQuote, - OracleType: oracleType, - Expiry: expiry, - } - -} - -func (fund InsuranceFund) ShareDenom() string { - return fund.InsurancePoolTokenDenom -} - -func (fund *InsuranceFund) AddTotalShare(shares math.Int) { - fund.TotalShare = fund.TotalShare.Add(shares) -} - -func (fund *InsuranceFund) SubTotalShare(shares math.Int) { - fund.TotalShare = fund.TotalShare.Sub(shares) -} - -func ShareDenomFromId(id uint64) string { - return fmt.Sprintf("share%d", id) -} diff --git a/chain/insurance/types/key.go b/chain/insurance/types/key.go deleted file mode 100644 index 1dd40c09..00000000 --- a/chain/insurance/types/key.go +++ /dev/null @@ -1,38 +0,0 @@ -package types - -import ( - "time" - - sdk "github.com/cosmos/cosmos-sdk/types" -) - -const ( - ModuleName = "insurance" - StoreKey = ModuleName -) - -var ( - // Key for insurance prefixes - InsuranceFundPrefixKey = []byte{0x02} - - // Key for insurance redemption prefixes - RedemptionSchedulePrefixKey = []byte{0x03} - - GlobalShareDenomIdPrefixKey = []byte{0x04, 0x00} - GlobalRedemptionScheduleIdPrefixKey = []byte{0x05, 0x00} - - ParamsKey = []byte{0x10} -) - -// GetRedemptionScheduleKey provides the key to store a single pending redemption -func GetRedemptionScheduleKey(redemptionID uint64, claimTime time.Time) []byte { - key := RedemptionSchedulePrefixKey - key = append(key, sdk.FormatTimeBytes(claimTime)...) - key = append(key, sdk.Uint64ToBigEndian(redemptionID)...) - return key -} - -// GetRedemptionScheduleKey provides the key to store a single pending redemption -func (sh RedemptionSchedule) GetRedemptionScheduleKey() []byte { - return GetRedemptionScheduleKey(sh.Id, sh.ClaimableRedemptionTime) -} diff --git a/chain/insurance/types/msgs.go b/chain/insurance/types/msgs.go deleted file mode 100644 index 689f01f8..00000000 --- a/chain/insurance/types/msgs.go +++ /dev/null @@ -1,184 +0,0 @@ -package types - -import ( - "cosmossdk.io/errors" - sdk "github.com/cosmos/cosmos-sdk/types" - sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" - - oracletypes "github.com/InjectiveLabs/sdk-go/chain/oracle/types" -) - -const RouterKey = ModuleName - -var ( - _ sdk.Msg = &MsgCreateInsuranceFund{} - _ sdk.Msg = &MsgUnderwrite{} - _ sdk.Msg = &MsgRequestRedemption{} - _ sdk.Msg = &MsgUpdateParams{} -) - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgUpdateParams) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgUpdateParams) Type() string { return "updateParams" } - -// ValidateBasic implements the sdk.Msg interface. It runs stateless checks on the message -func (msg MsgUpdateParams) ValidateBasic() error { - if _, err := sdk.AccAddressFromBech32(msg.Authority); err != nil { - return errors.Wrap(err, "invalid authority address") - } - - if err := msg.Params.Validate(); err != nil { - return err - } - - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgUpdateParams) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgUpdateParams) GetSigners() []sdk.AccAddress { - sender, err := sdk.AccAddressFromBech32(msg.Authority) - if err != nil { - panic(err) - } - return []sdk.AccAddress{sender} -} - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgCreateInsuranceFund) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgCreateInsuranceFund) Type() string { return "createInsuranceFund" } - -// ValidateBasic implements the sdk.Msg interface. It runs stateless checks on the message -func (msg MsgCreateInsuranceFund) ValidateBasic() error { - if msg.Sender == "" { - return errors.Wrap(sdkerrors.ErrInvalidAddress, msg.Sender) - } - if msg.Ticker == "" || len(msg.Ticker) > 40 { - return errors.Wrapf(ErrInvalidTicker, "ticker should not be empty or exceed 40 characters") - } - if msg.QuoteDenom == "" { - return errors.Wrap(ErrInvalidQuoteDenom, "quote denom should not be empty") - } - if msg.OracleBase == "" { - return errors.Wrap(ErrInvalidOracle, "oracle base should not be empty") - } - if msg.OracleQuote == "" { - return errors.Wrap(ErrInvalidOracle, "oracle quote should not be empty") - } - if msg.OracleType == oracletypes.OracleType_Unspecified { - return errors.Wrap(ErrInvalidOracle, "oracle type should not be unspecified") - } - if msg.QuoteDenom != msg.InitialDeposit.Denom { - return errors.Wrapf(ErrInvalidDepositDenom, "oracle quote denom %s does not match deposit denom %s", msg.QuoteDenom, msg.InitialDeposit.Denom) - } - - if msg.OracleType == oracletypes.OracleType_Provider && msg.Expiry != BinaryOptionsExpiryFlag && msg.Expiry != PerpetualExpiryFlag { - return errors.Wrap(ErrInvalidExpirationTime, "oracle expiration time should be -2 or -1 for OracleType_Provider") - } - - if !msg.InitialDeposit.IsValid() { - return errors.Wrap(sdkerrors.ErrInvalidCoins, msg.InitialDeposit.String()) - } - if !msg.InitialDeposit.IsPositive() || msg.InitialDeposit.Amount.GT(MaxUnderwritingAmount) { - return errors.Wrap(sdkerrors.ErrInvalidCoins, msg.InitialDeposit.String()) - } - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgCreateInsuranceFund) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgCreateInsuranceFund) GetSigners() []sdk.AccAddress { - sender, err := sdk.AccAddressFromBech32(msg.Sender) - if err != nil { - panic(err) - } - return []sdk.AccAddress{sender} -} - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgUnderwrite) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgUnderwrite) Type() string { return "underwrite" } - -// ValidateBasic implements the sdk.Msg interface. It runs stateless checks on the message -func (msg MsgUnderwrite) ValidateBasic() error { - if msg.Sender == "" { - return errors.Wrap(sdkerrors.ErrInvalidAddress, msg.Sender) - } - if msg.MarketId == "" { - return errors.Wrap(ErrInvalidMarketID, msg.MarketId) - } - if !msg.Deposit.IsValid() { - return errors.Wrap(sdkerrors.ErrInvalidCoins, msg.Deposit.String()) - } - if !msg.Deposit.IsPositive() || msg.Deposit.Amount.GT(MaxUnderwritingAmount) { - return errors.Wrap(sdkerrors.ErrInvalidCoins, msg.Deposit.String()) - } - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgUnderwrite) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgUnderwrite) GetSigners() []sdk.AccAddress { - sender, err := sdk.AccAddressFromBech32(msg.Sender) - if err != nil { - panic(err) - } - return []sdk.AccAddress{sender} -} - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgRequestRedemption) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgRequestRedemption) Type() string { return "requestRedemption" } - -// ValidateBasic implements the sdk.Msg interface. It runs stateless checks on the message -func (msg MsgRequestRedemption) ValidateBasic() error { - if msg.Sender == "" { - return errors.Wrap(sdkerrors.ErrInvalidAddress, msg.Sender) - } - if msg.MarketId == "" { - return errors.Wrap(ErrInvalidMarketID, msg.MarketId) - } - - if !msg.Amount.IsValid() { - return errors.Wrap(sdkerrors.ErrInvalidCoins, msg.Amount.String()) - } - - if !msg.Amount.IsPositive() { - return errors.Wrap(sdkerrors.ErrInvalidCoins, msg.Amount.String()) - } - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgRequestRedemption) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgRequestRedemption) GetSigners() []sdk.AccAddress { - sender, err := sdk.AccAddressFromBech32(msg.Sender) - if err != nil { - panic(err) - } - return []sdk.AccAddress{sender} -} diff --git a/chain/insurance/types/params.go b/chain/insurance/types/params.go deleted file mode 100644 index 7cd8f19a..00000000 --- a/chain/insurance/types/params.go +++ /dev/null @@ -1,78 +0,0 @@ -package types - -import ( - "fmt" - "time" - - "cosmossdk.io/math" - paramtypes "github.com/cosmos/cosmos-sdk/x/params/types" -) - -var _ paramtypes.ParamSet = &Params{} - -// insurance params default values -const ( - // DefaultInsurancePeriodDurationSeconds represents the number of seconds in two weeks - DefaultInsurancePeriod = time.Hour * 24 * 14 - DefaultBinaryOptionsInsurancePeriod = time.Minute -) - -// MaxUnderwritingAmount equals 1 trillion * 1e18 -var MaxUnderwritingAmount, _ = math.NewIntFromString("1000000000000000000000000000") -var PerpetualExpiryFlag int64 = -1 -var BinaryOptionsExpiryFlag int64 = -2 - -// Parameter keys -var ( - KeyDefaultRedemptionNoticePeriodDuration = []byte("defaultRedemptionNoticePeriodDuration") -) - -// ParamKeyTable returns the parameter key table. -func ParamKeyTable() paramtypes.KeyTable { - return paramtypes.NewKeyTable().RegisterParamSet(&Params{}) -} - -// NewParams creates a new Params instance -func NewParams( - defaultRedemptionNoticePeriodDuration time.Duration, -) Params { - return Params{ - DefaultRedemptionNoticePeriodDuration: defaultRedemptionNoticePeriodDuration, - } -} - -// ParamSetPairs returns the parameter set pairs. -func (p *Params) ParamSetPairs() paramtypes.ParamSetPairs { - return paramtypes.ParamSetPairs{ - paramtypes.NewParamSetPair(KeyDefaultRedemptionNoticePeriodDuration, &p.DefaultRedemptionNoticePeriodDuration, validateNoticePeriodDuration), - } -} - -// DefaultParams returns a default set of parameters. -func DefaultParams() Params { - return Params{ - DefaultRedemptionNoticePeriodDuration: DefaultInsurancePeriod, - } -} - -// Validate performs basic validation on insurance parameters. -func (p Params) Validate() error { - if err := validateNoticePeriodDuration(p.DefaultRedemptionNoticePeriodDuration); err != nil { - return err - } - - return nil -} - -func validateNoticePeriodDuration(i interface{}) error { - v, ok := i.(time.Duration) - if !ok { - return fmt.Errorf("invalid parameter type: %T", i) - } - - if v == 0 { - return fmt.Errorf("DefaultRedemptionNoticePeriodDuration must be positive: %d", v) - } - - return nil -} diff --git a/chain/insurance/types/paramset.go b/chain/insurance/types/paramset.go deleted file mode 100644 index 80d0852b..00000000 --- a/chain/insurance/types/paramset.go +++ /dev/null @@ -1,26 +0,0 @@ -package types - -type ( - ValueValidatorFn func(value interface{}) error - - // ParamSetPair is used for associating paramsubspace key and field of param - // structs. - ParamSetPair struct { - Key []byte - Value interface{} - ValidatorFn ValueValidatorFn - } -) - -// NewParamSetPair creates a new ParamSetPair instance. -func NewParamSetPair(key []byte, value interface{}, vfn ValueValidatorFn) ParamSetPair { - return ParamSetPair{key, value, vfn} -} - -// ParamSetPairs Slice of KeyFieldPair -type ParamSetPairs []ParamSetPair - -// ParamSet defines an interface for structs containing parameters for a module -type ParamSet interface { - ParamSetPairs() ParamSetPairs -} diff --git a/chain/ocr/types/expected_keepers.go b/chain/ocr/types/expected_keepers.go deleted file mode 100644 index feb64c63..00000000 --- a/chain/ocr/types/expected_keepers.go +++ /dev/null @@ -1,29 +0,0 @@ -package types - -import ( - "context" - - sdk "github.com/cosmos/cosmos-sdk/types" - bank "github.com/cosmos/cosmos-sdk/x/bank/types" - params "github.com/cosmos/cosmos-sdk/x/params/types" -) - -// ParamSubspace defines the expected Subspace interfacace -type ParamSubspace interface { - WithKeyTable(table params.KeyTable) params.Subspace - Get(ctx sdk.Context, key []byte, ptr interface{}) - GetParamSet(ctx sdk.Context, ps params.ParamSet) - SetParamSet(ctx sdk.Context, ps params.ParamSet) -} - -// BankKeeper defines the expected bank keeper methods -type BankKeeper interface { - GetBalance(ctx context.Context, addr sdk.AccAddress, denom string) sdk.Coin - GetAllBalances(ctx context.Context, addr sdk.AccAddress) sdk.Coins - SendCoinsFromModuleToModule(ctx context.Context, senderModule, recipientModule string, amt sdk.Coins) error - SendCoinsFromModuleToAccount(ctx context.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error - SendCoinsFromAccountToModule(ctx context.Context, senderAddr sdk.AccAddress, recipientModule string, amt sdk.Coins) error - MintCoins(ctx context.Context, moduleName string, amt sdk.Coins) error - BurnCoins(ctx context.Context, moduleName string, amt sdk.Coins) error - SetDenomMetaData(ctx context.Context, denomMeta bank.Metadata) -} diff --git a/chain/ocr/types/genesis.go b/chain/ocr/types/genesis.go deleted file mode 100644 index 3739aca4..00000000 --- a/chain/ocr/types/genesis.go +++ /dev/null @@ -1,18 +0,0 @@ -package types - -func NewGenesisState() GenesisState { - return GenesisState{} -} - -func (gs GenesisState) Validate() error { - if err := gs.Params.Validate(); err != nil { - return err - } - return nil -} - -func DefaultGenesisState() *GenesisState { - return &GenesisState{ - Params: DefaultParams(), - } -} diff --git a/chain/ocr/types/hooks.go b/chain/ocr/types/hooks.go deleted file mode 100644 index 5bec4b95..00000000 --- a/chain/ocr/types/hooks.go +++ /dev/null @@ -1,38 +0,0 @@ -package types - -import ( - "cosmossdk.io/math" - sdk "github.com/cosmos/cosmos-sdk/types" -) - -type OcrHooks interface { - AfterSetFeedConfig(ctx sdk.Context, feedConfig *FeedConfig) - AfterTransmit(ctx sdk.Context, feedId string, answer math.LegacyDec, timestamp int64) - AfterFundFeedRewardPool(ctx sdk.Context, feedId string, newPoolAmount sdk.Coin) -} - -var _ OcrHooks = MultiOcrHooks{} - -type MultiOcrHooks []OcrHooks - -func NewMultiOcrHooks(hooks ...OcrHooks) MultiOcrHooks { - return hooks -} - -func (h MultiOcrHooks) AfterSetFeedConfig(ctx sdk.Context, feedConfig *FeedConfig) { - for i := range h { - h[i].AfterSetFeedConfig(ctx, feedConfig) - } -} - -func (h MultiOcrHooks) AfterTransmit(ctx sdk.Context, feedId string, answer math.LegacyDec, timestamp int64) { - for i := range h { - h[i].AfterTransmit(ctx, feedId, answer, timestamp) - } -} - -func (h MultiOcrHooks) AfterFundFeedRewardPool(ctx sdk.Context, feedId string, newPoolAmount sdk.Coin) { - for i := range h { - h[i].AfterFundFeedRewardPool(ctx, feedId, newPoolAmount) - } -} diff --git a/chain/ocr/types/msgs.go b/chain/ocr/types/msgs.go deleted file mode 100644 index 836a1c4a..00000000 --- a/chain/ocr/types/msgs.go +++ /dev/null @@ -1,470 +0,0 @@ -package types - -import ( - "cosmossdk.io/errors" - sdk "github.com/cosmos/cosmos-sdk/types" - sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" -) - -const ( - TypeMsgCreateFeed = "createFeed" - TypeMsgUpdateFeed = "updateFeed" - TypeMsgTransmit = "transmit" - TypeMsgFundFeedRewardPool = "fundFeedRewardPool" - TypeMsgWithdrawFeedRewardPool = "withdrawFeedRewardPool" - TypeMsgSetPayees = "setPayees" - TypeMsgTransferPayeeship = "transferPayeeship" - TypeMsgAcceptPayeeship = "acceptPayeeship" - TypeMsgUpdateParams = "updateParams" -) - -var ( - _ sdk.Msg = &MsgCreateFeed{} - _ sdk.Msg = &MsgUpdateFeed{} - _ sdk.Msg = &MsgTransmit{} - _ sdk.Msg = &MsgFundFeedRewardPool{} - _ sdk.Msg = &MsgWithdrawFeedRewardPool{} - _ sdk.Msg = &MsgSetPayees{} - _ sdk.Msg = &MsgTransferPayeeship{} - _ sdk.Msg = &MsgAcceptPayeeship{} - _ sdk.Msg = &MsgUpdateParams{} -) - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgUpdateParams) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgUpdateParams) Type() string { return TypeMsgUpdateParams } - -// ValidateBasic implements the sdk.Msg interface for MsgUpdateParams. -func (msg MsgUpdateParams) ValidateBasic() error { - if _, err := sdk.AccAddressFromBech32(msg.Authority); err != nil { - return errors.Wrap(err, "invalid authority address") - } - - if err := msg.Params.Validate(); err != nil { - return err - } - - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgUpdateParams) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgUpdateParams) GetSigners() []sdk.AccAddress { - sender, err := sdk.AccAddressFromBech32(msg.Authority) - if err != nil { - panic(err) - } - - return []sdk.AccAddress{sender} -} - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgCreateFeed) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgCreateFeed) Type() string { return TypeMsgCreateFeed } - -// ValidateBasic implements the sdk.Msg interface for MsgCreateFeed. -func (msg MsgCreateFeed) ValidateBasic() error { - if msg.Sender == "" { - return errors.Wrap(sdkerrors.ErrInvalidAddress, msg.Sender) - } - - if err := msg.Config.ValidateBasic(); err != nil { - return err - } - - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgCreateFeed) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgCreateFeed) GetSigners() []sdk.AccAddress { - sender, err := sdk.AccAddressFromBech32(msg.Sender) - if err != nil { - panic(err) - } - - return []sdk.AccAddress{sender} -} - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgUpdateFeed) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgUpdateFeed) Type() string { return TypeMsgUpdateFeed } - -// ValidateBasic implements the sdk.Msg interface for MsgUpdateFeed. -func (msg MsgUpdateFeed) ValidateBasic() error { - if msg.Sender == "" { - return errors.Wrap(sdkerrors.ErrInvalidAddress, msg.Sender) - } - - if msg.FeedId == "" || len(msg.FeedId) > FeedIDMaxLength { - return errors.Wrap(sdkerrors.ErrInvalidRequest, "feedId not valid") - } - - seenTransmitters := make(map[string]struct{}, len(msg.Transmitters)) - for _, transmitter := range msg.Transmitters { - addr, err := sdk.AccAddressFromBech32(transmitter) - if err != nil { - return err - } - - if _, ok := seenTransmitters[addr.String()]; ok { - return ErrRepeatedAddress - } else { - seenTransmitters[addr.String()] = struct{}{} - } - } - - seenSigners := make(map[string]struct{}, len(msg.Signers)) - for _, signer := range msg.Signers { - addr, err := sdk.AccAddressFromBech32(signer) - if err != nil { - return err - } - - if _, ok := seenSigners[addr.String()]; ok { - return ErrRepeatedAddress - } else { - seenSigners[addr.String()] = struct{}{} - } - } - - if msg.LinkPerTransmission != nil { - if msg.LinkPerTransmission.IsNil() || !msg.LinkPerTransmission.IsPositive() { - return errors.Wrap(ErrIncorrectConfig, "LinkPerTransmission must be positive") - } - } - - if msg.LinkPerObservation != nil { - if msg.LinkPerObservation.IsNil() || !msg.LinkPerObservation.IsPositive() { - return errors.Wrap(ErrIncorrectConfig, "LinkPerObservation must be positive") - } - } - - if msg.LinkDenom == "" { - return sdkerrors.ErrInvalidCoins - } - - if msg.FeedAdmin != "" { - if _, err := sdk.AccAddressFromBech32(msg.FeedAdmin); err != nil { - return err - } - } - - if msg.BillingAdmin != "" { - if _, err := sdk.AccAddressFromBech32(msg.BillingAdmin); err != nil { - return err - } - } - - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgUpdateFeed) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgUpdateFeed) GetSigners() []sdk.AccAddress { - sender, err := sdk.AccAddressFromBech32(msg.Sender) - if err != nil { - panic(err) - } - - return []sdk.AccAddress{sender} -} - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgTransmit) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgTransmit) Type() string { return TypeMsgTransmit } - -// ValidateBasic implements the sdk.Msg interface for MsgTransmit. -func (msg MsgTransmit) ValidateBasic() error { - if msg.Transmitter == "" { - return ErrNoTransmitter - } - - switch { - case len(msg.ConfigDigest) == 0: - return errors.Wrap(ErrIncorrectTransmissionData, "missing config digest") - case msg.FeedId == "": - return errors.Wrap(ErrIncorrectTransmissionData, "missing feed hash") - case msg.Report == nil: - return errors.Wrap(ErrIncorrectTransmissionData, "missing report") - } - - if len(msg.Report.Observers) > MaxNumOracles { - return errors.Wrap(ErrIncorrectTransmissionData, "too many observers") - } else if len(msg.Report.Observations) != len(msg.Report.Observers) { - return errors.Wrap(ErrIncorrectTransmissionData, "wrong observations count") - } - - if len(msg.Report.Observations) > MaxNumOracles { - return errors.Wrap(sdkerrors.ErrInvalidRequest, "num observations out of bounds") - } - - for i := 0; i < len(msg.Report.Observations)-1; i++ { - inOrder := msg.Report.Observations[i].LTE(msg.Report.Observations[i+1]) - if !inOrder { - return errors.Wrap(sdkerrors.ErrInvalidRequest, "observations not sorted") - } - } - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgTransmit) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgTransmit) GetSigners() []sdk.AccAddress { - transmitter, err := sdk.AccAddressFromBech32(msg.Transmitter) - if err != nil { - panic(err) - } - - return []sdk.AccAddress{transmitter} -} - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgFundFeedRewardPool) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgFundFeedRewardPool) Type() string { return TypeMsgFundFeedRewardPool } - -// ValidateBasic implements the sdk.Msg interface for MsgFundFeedRewardPool. -func (msg MsgFundFeedRewardPool) ValidateBasic() error { - if msg.Sender == "" { - return errors.Wrap(sdkerrors.ErrInvalidAddress, msg.Sender) - } - - if msg.FeedId == "" || len(msg.FeedId) > FeedIDMaxLength { - return errors.Wrap(sdkerrors.ErrInvalidRequest, "feedId not valid") - } - - if !msg.Amount.IsValid() { - return errors.Wrap(sdkerrors.ErrInvalidCoins, msg.Amount.String()) - } - - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgFundFeedRewardPool) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgFundFeedRewardPool) GetSigners() []sdk.AccAddress { - sender, err := sdk.AccAddressFromBech32(msg.Sender) - if err != nil { - panic(err) - } - - return []sdk.AccAddress{sender} -} - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgWithdrawFeedRewardPool) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgWithdrawFeedRewardPool) Type() string { return TypeMsgWithdrawFeedRewardPool } - -// ValidateBasic implements the sdk.Msg interface for MsgWithdrawFeedRewardPool. -func (msg MsgWithdrawFeedRewardPool) ValidateBasic() error { - if msg.Sender == "" { - return errors.Wrap(sdkerrors.ErrInvalidAddress, msg.Sender) - } - - if msg.FeedId == "" || len(msg.FeedId) > FeedIDMaxLength { - return errors.Wrap(sdkerrors.ErrInvalidRequest, "feedId not valid") - } - - if !msg.Amount.IsValid() { - return errors.Wrap(sdkerrors.ErrInvalidCoins, msg.Amount.String()) - } - - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgWithdrawFeedRewardPool) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgWithdrawFeedRewardPool) GetSigners() []sdk.AccAddress { - sender, err := sdk.AccAddressFromBech32(msg.Sender) - if err != nil { - panic(err) - } - - return []sdk.AccAddress{sender} -} - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgSetPayees) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgSetPayees) Type() string { return TypeMsgSetPayees } - -// ValidateBasic implements the sdk.Msg interface for MsgSetPayees. -func (msg MsgSetPayees) ValidateBasic() error { - if msg.Sender == "" { - return errors.Wrap(sdkerrors.ErrInvalidAddress, msg.Sender) - } - - if msg.FeedId == "" || len(msg.FeedId) > FeedIDMaxLength { - return errors.Wrap(sdkerrors.ErrInvalidRequest, "feedId not valid") - } - - if len(msg.Transmitters) != len(msg.Payees) || len(msg.Payees) == 0 { - return ErrInvalidPayees - } - - seenTransmitters := make(map[string]struct{}, len(msg.Transmitters)) - for _, transmitter := range msg.Transmitters { - addr, err := sdk.AccAddressFromBech32(transmitter) - if err != nil { - return err - } - - if _, ok := seenTransmitters[addr.String()]; ok { - return ErrRepeatedAddress - } else { - seenTransmitters[addr.String()] = struct{}{} - } - } - - seenPayees := make(map[string]struct{}, len(msg.Payees)) - for _, payee := range msg.Payees { - addr, err := sdk.AccAddressFromBech32(payee) - if err != nil { - return err - } - - if _, ok := seenPayees[addr.String()]; ok { - return ErrRepeatedAddress - } else { - seenPayees[addr.String()] = struct{}{} - } - } - - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgSetPayees) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgSetPayees) GetSigners() []sdk.AccAddress { - sender, err := sdk.AccAddressFromBech32(msg.Sender) - if err != nil { - panic(err) - } - - return []sdk.AccAddress{sender} -} - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgTransferPayeeship) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgTransferPayeeship) Type() string { return TypeMsgTransferPayeeship } - -// ValidateBasic implements the sdk.Msg interface for MsgTransferPayeeship. -func (msg MsgTransferPayeeship) ValidateBasic() error { - if msg.Sender == "" { - return errors.Wrap(sdkerrors.ErrInvalidAddress, msg.Sender) - } - - if msg.FeedId == "" || len(msg.FeedId) > FeedIDMaxLength { - return errors.Wrap(sdkerrors.ErrInvalidRequest, "feedId not valid") - } - - if _, err := sdk.AccAddressFromBech32(msg.Transmitter); err != nil { - return errors.Wrap(sdkerrors.ErrInvalidAddress, msg.Transmitter) - } - - if _, err := sdk.AccAddressFromBech32(msg.Proposed); err != nil { - return errors.Wrap(sdkerrors.ErrInvalidAddress, msg.Proposed) - } - - if msg.Transmitter == msg.Proposed { - return errors.Wrap(sdkerrors.ErrInvalidAddress, "proposed cannot be the same as transmitter") - } - - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgTransferPayeeship) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgTransferPayeeship) GetSigners() []sdk.AccAddress { - sender, err := sdk.AccAddressFromBech32(msg.Sender) - if err != nil { - panic(err) - } - - return []sdk.AccAddress{sender} -} - -// Route implements the sdk.Msg interface. It should return the name of the module -func (msg MsgAcceptPayeeship) Route() string { return RouterKey } - -// Type implements the sdk.Msg interface. It should return the action. -func (msg MsgAcceptPayeeship) Type() string { return TypeMsgAcceptPayeeship } - -// ValidateBasic implements the sdk.Msg interface for MsgAcceptPayeeship. -func (msg MsgAcceptPayeeship) ValidateBasic() error { - if msg.Payee == "" { - return errors.Wrap(sdkerrors.ErrInvalidAddress, msg.Payee) - } - - if msg.FeedId == "" || len(msg.FeedId) > FeedIDMaxLength { - return errors.Wrap(sdkerrors.ErrInvalidRequest, "feedId not valid") - } - - if _, err := sdk.AccAddressFromBech32(msg.Transmitter); err != nil { - return errors.Wrap(sdkerrors.ErrInvalidAddress, msg.Transmitter) - } - - return nil -} - -// GetSignBytes implements the sdk.Msg interface. It encodes the message for signing -func (msg *MsgAcceptPayeeship) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(msg)) -} - -// GetSigners implements the sdk.Msg interface. It defines whose signature is required -func (msg MsgAcceptPayeeship) GetSigners() []sdk.AccAddress { - sender, err := sdk.AccAddressFromBech32(msg.Payee) - if err != nil { - panic(err) - } - - return []sdk.AccAddress{sender} -} diff --git a/chain/oracle/types/band_ibc.go b/chain/oracle/types/band_ibc.go deleted file mode 100644 index 820053db..00000000 --- a/chain/oracle/types/band_ibc.go +++ /dev/null @@ -1,129 +0,0 @@ -package types - -import ( - "fmt" - - bandobi "github.com/bandprotocol/bandchain-packet/obi" - bandPacket "github.com/bandprotocol/bandchain-packet/packet" - - bandprice "github.com/InjectiveLabs/sdk-go/chain/oracle/bandchain/hooks/price" -) - -func NewOracleRequestPacketData(clientID string, calldata []byte, r *BandOracleRequest) bandPacket.OracleRequestPacketData { - return bandPacket.OracleRequestPacketData{ - ClientID: clientID, - OracleScriptID: uint64(r.OracleScriptId), - Calldata: calldata, - AskCount: r.AskCount, - MinCount: r.MinCount, - FeeLimit: r.FeeLimit, - PrepareGas: r.PrepareGas, - ExecuteGas: r.ExecuteGas, - } -} - -// GetCalldata gets the Band IBC request call data based on the symbols and multiplier. -func (r *BandOracleRequest) GetCalldata(legacyScheme bool) []byte { - if legacyScheme { - return bandobi.MustEncode(bandprice.Input{ - Symbols: r.Symbols, - Multiplier: BandPriceMultiplier, - }) - } - - return bandobi.MustEncode(bandprice.SymbolInput{ - Symbols: r.Symbols, - MinimumSourceCount: uint8(r.MinSourceCount), - }) -} - -func DecodeOracleInput(data []byte) (OracleInput, error) { - var ( - legacyInput LegacyBandInput - newInput BandInput - err error - ) - - if err = bandobi.Decode(data, &legacyInput); err == nil { - return legacyInput, nil - } - - if err = bandobi.Decode(data, &newInput); err == nil { - return newInput, nil - } - - return nil, fmt.Errorf("failed to decode oracle input: %w", err) -} - -func DecodeOracleOutput(data []byte) (OracleOutput, error) { - var ( - legacyOutput LegacyBandOutput - newOutput BandOutput - err error - ) - - if err = bandobi.Decode(data, &legacyOutput); err == nil { - return legacyOutput, nil - } - - if err = bandobi.Decode(data, &newOutput); err == nil { - return newOutput, nil - } - - return nil, fmt.Errorf("failed to decode oracle output: %w", err) -} - -// it is assumed that the id of a symbol -// within OracleInput exists within OracleOutput - -type OracleInput interface { - PriceSymbols() []string - PriceMultiplier() uint64 -} - -type ( - LegacyBandInput bandprice.Input - BandInput bandprice.SymbolInput -) - -func (in LegacyBandInput) PriceSymbols() []string { - return in.Symbols -} - -func (in LegacyBandInput) PriceMultiplier() uint64 { - return in.Multiplier -} - -func (in BandInput) PriceSymbols() []string { - return in.Symbols -} - -func (in BandInput) PriceMultiplier() uint64 { - return BandPriceMultiplier -} - -type OracleOutput interface { - Rate(id int) uint64 - Valid(id int) bool -} - -type ( - LegacyBandOutput bandprice.Output - BandOutput bandprice.SymbolOutput -) - -func (out LegacyBandOutput) Rate(id int) uint64 { - return out.Pxs[id] -} - -func (out LegacyBandOutput) Valid(id int) bool { - return true -} - -func (out BandOutput) Rate(id int) uint64 { - return out.Responses[id].Rate -} - -func (out BandOutput) Valid(id int) bool { - return out.Responses[id].ResponseCode == 0 -} diff --git a/chain/oracle/types/coinbase_oracle.go b/chain/oracle/types/coinbase_oracle.go deleted file mode 100644 index ab02126b..00000000 --- a/chain/oracle/types/coinbase_oracle.go +++ /dev/null @@ -1,101 +0,0 @@ -package types - -import ( - "bytes" - "strings" - - "cosmossdk.io/errors" - "github.com/ethereum/go-ethereum/accounts/abi" - "github.com/ethereum/go-ethereum/common" - "github.com/ethereum/go-ethereum/crypto" -) - -const ( - CoinbaseOraclePublicKey = "0xfCEAdAFab14d46e20144F48824d0C09B1a03F2BC" - preamblePrefix = "\x19Ethereum Signed Message:\n32" -) - -const CoinbaseABIJSON = `[{ - "name": "coinbase", - "stateMutability": "pure", - "type": "function", - "inputs": [ - { "internalType": "string", "name": "kind", "type": "string" }, - { "internalType": "uint64", "name": "timestamp", "type": "uint64" }, - { "internalType": "string", "name": "key", "type": "string" }, - { "internalType": "uint64", "name": "value", "type": "uint64" } - ], - "outputs": [] -}]` - -func ValidateCoinbaseSignature(message, signature []byte) error { - hash := crypto.Keccak256Hash(message) - return ValidateEthereumSignature(hash, signature, common.HexToAddress(CoinbaseOraclePublicKey)) -} - -func ParseCoinbaseMessage(message []byte) (*CoinbasePriceState, error) { - contractAbi, abiErr := abi.JSON(strings.NewReader(CoinbaseABIJSON)) - if abiErr != nil { - panic("Bad ABI constant!") - } - - // computed from web3.sha3('coinbase(string,uint64,string,uint64)').substr(0,10) - coinbaseMethod := common.FromHex("0x96f180bf") - method, err := contractAbi.MethodById(coinbaseMethod) - if err != nil { - return nil, err - } - - values, err := method.Inputs.Unpack(message) - if err != nil { - return nil, err - } - - var priceState CoinbasePriceState - if err := method.Inputs.Copy(&priceState, values); err != nil { - return nil, err - } - - if priceState.Kind != "prices" || priceState.Timestamp == 0 || priceState.Key == "" || priceState.Value == 0 { - return nil, ErrBadCoinbaseMessage - } - - return &priceState, nil -} - -// ValidateEthereumSignature takes a message, an associated signature and public key and -// returns an error if the signature isn't valid -// TODO: refactor to shared common dir, copy pasted below code from Peggy -func ValidateEthereumSignature(hash common.Hash, signature []byte, ethAddress common.Address) error { - - // convert malformed coinbase sig in oracle response to 65-byte signature - trimmedSig := signature[:65] - trimmedSig[64] = signature[95] - - if len(trimmedSig) < 65 { - return errors.Wrap(ErrInvalidEthereumSignature, "signature too short") - } - - // calculate recover id - if trimmedSig[64] == 27 || signature[64] == 28 { - trimmedSig[64] -= 27 - } - - // manually build the hash with ethereum prefix - preamblePrefix := []byte(preamblePrefix) - preambleMessage := append(preamblePrefix, hash.Bytes()...) // nolint:gocritic - preambleHash := crypto.Keccak256Hash(preambleMessage) - - // verify signature - pubkey, err := crypto.SigToPub(preambleHash.Bytes(), trimmedSig) - if err != nil { - return errors.Wrap(err, "signature to public key") - } - addr := crypto.PubkeyToAddress(*pubkey) - - if !bytes.Equal(addr.Bytes(), ethAddress.Bytes()) { - return errors.Wrapf(ErrInvalidEthereumSignature, "signature not matching, expected %s but got %s", ethAddress.Hex(), addr.Hex()) - } - - return nil -} diff --git a/chain/oracle/types/events.go b/chain/oracle/types/events.go deleted file mode 100644 index 2789dc3c..00000000 --- a/chain/oracle/types/events.go +++ /dev/null @@ -1,6 +0,0 @@ -package types - -// Auction module event types -const ( - EventTypeNewBid = "new_bid" -) diff --git a/chain/oracle/types/expected_keepers.go b/chain/oracle/types/expected_keepers.go deleted file mode 100644 index dd6e7ed2..00000000 --- a/chain/oracle/types/expected_keepers.go +++ /dev/null @@ -1,46 +0,0 @@ -package types - -import ( - "context" - - sdk "github.com/cosmos/cosmos-sdk/types" - capabilitytypes "github.com/cosmos/ibc-go/modules/capability/types" - clienttypes "github.com/cosmos/ibc-go/v8/modules/core/02-client/types" - channeltypes "github.com/cosmos/ibc-go/v8/modules/core/04-channel/types" - - ocrtypes "github.com/InjectiveLabs/sdk-go/chain/ocr/types" -) - -// BankKeeper defines the expected bank keeper methods -type BankKeeper interface { - GetAllBalances(ctx context.Context, addr sdk.AccAddress) sdk.Coins - SendCoinsFromModuleToModule(ctx context.Context, senderModule, recipientModule string, amt sdk.Coins) error - SendCoinsFromModuleToAccount(ctx context.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error - SendCoinsFromAccountToModule(ctx context.Context, senderAddr sdk.AccAddress, recipientModule string, amt sdk.Coins) error - BurnCoins(ctx context.Context, moduleName string, amt sdk.Coins) error -} - -// ChannelKeeper defines the expected IBC channel keeper -type ChannelKeeper interface { - GetChannel(ctx sdk.Context, srcPort, srcChan string) (channel channeltypes.Channel, found bool) - GetNextSequenceSend(ctx sdk.Context, portID, channelID string) (uint64, bool) - SendPacket( - ctx sdk.Context, - chanCap *capabilitytypes.Capability, - sourcePort string, - sourceChannel string, - timeoutHeight clienttypes.Height, - timeoutTimestamp uint64, - data []byte, - ) (sequence uint64, err error) - ChanCloseInit(ctx sdk.Context, portID, channelID string, chanCap *capabilitytypes.Capability) error -} - -// PortKeeper defines the expected IBC port keeper -type PortKeeper interface { - BindPort(ctx sdk.Context, portID string) *capabilitytypes.Capability -} - -type OcrKeeper interface { - GetTransmission(ctx sdk.Context, feedId string) *ocrtypes.Transmission -} diff --git a/chain/oracle/types/genesis.go b/chain/oracle/types/genesis.go deleted file mode 100644 index 561d04e5..00000000 --- a/chain/oracle/types/genesis.go +++ /dev/null @@ -1,23 +0,0 @@ -package types - -// DefaultIndex is the default capability global index -const DefaultIndex uint64 = 1 - -func NewGenesisState() GenesisState { - return GenesisState{} -} - -func (gs GenesisState) Validate() error { - // TODO: validate stuff in genesis - if err := gs.Params.Validate(); err != nil { - return err - } - return nil -} - -func DefaultGenesisState() *GenesisState { - return &GenesisState{ - Params: DefaultParams(), - BandIbcParams: DefaultBandIBCParams(), - } -} diff --git a/chain/oracle/types/paramset.go b/chain/oracle/types/paramset.go deleted file mode 100644 index 80d0852b..00000000 --- a/chain/oracle/types/paramset.go +++ /dev/null @@ -1,26 +0,0 @@ -package types - -type ( - ValueValidatorFn func(value interface{}) error - - // ParamSetPair is used for associating paramsubspace key and field of param - // structs. - ParamSetPair struct { - Key []byte - Value interface{} - ValidatorFn ValueValidatorFn - } -) - -// NewParamSetPair creates a new ParamSetPair instance. -func NewParamSetPair(key []byte, value interface{}, vfn ValueValidatorFn) ParamSetPair { - return ParamSetPair{key, value, vfn} -} - -// ParamSetPairs Slice of KeyFieldPair -type ParamSetPairs []ParamSetPair - -// ParamSet defines an interface for structs containing parameters for a module -type ParamSet interface { - ParamSetPairs() ParamSetPairs -} diff --git a/chain/oracle/types/pyth.go b/chain/oracle/types/pyth.go deleted file mode 100644 index 4b986b39..00000000 --- a/chain/oracle/types/pyth.go +++ /dev/null @@ -1,75 +0,0 @@ -package types - -import ( - "cosmossdk.io/math" - "github.com/ethereum/go-ethereum/common" -) - -func NewPythPriceState( - priceID common.Hash, - emaPrice, emaConf, conf math.LegacyDec, - publishTime int64, - price math.LegacyDec, - blockTime int64, -) *PythPriceState { - return &PythPriceState{ - PriceId: priceID.Hex(), - EmaPrice: emaPrice, - EmaConf: emaConf, - Conf: conf, - PublishTime: uint64(publishTime), - PriceState: *NewPriceState(price, blockTime), - } -} - -func (p *PythPriceState) Update( - emaPrice, emaConf, conf math.LegacyDec, - publishTime uint64, - price math.LegacyDec, - blockTime int64, -) { - p.EmaPrice = emaPrice - p.EmaConf = emaConf - p.Conf = conf - p.PublishTime = publishTime - p.PriceState.UpdatePrice(price, blockTime) -} - -func (p *PriceAttestation) GetPriceID() string { - return p.PriceId -} - -func (p *PriceAttestation) GetPriceIDHash() common.Hash { - return common.HexToHash(p.PriceId) -} - -func (p *PriceAttestation) Validate() error { - if len(p.GetPriceIDHash().Bytes()) != 32 { - return ErrInvalidPythPriceID - } - - if !(p.Price > 0) { - return ErrBadPrice - } - - if p.Expo > MaxPythExponent || p.Expo < MinPythExponent { - return ErrInvalidPythExponent - } - - if !(p.PublishTime > 0) { - return ErrInvalidPythPublishTime - } - - // validating EMA price/conf is omitted since it's not mission critical and we don't want to block normal price updates - return nil -} - -func GetExponentiatedDec(value, expo int64) math.LegacyDec { - // price * 10^-expo - if expo <= 0 { - return math.LegacyNewDecWithPrec(value, -expo) - } - - // price * 10^expo - return math.LegacyNewDec(value).Power(uint64(expo)) -} diff --git a/chain/oracle/types/stork.go b/chain/oracle/types/stork.go deleted file mode 100644 index 343eb8e8..00000000 --- a/chain/oracle/types/stork.go +++ /dev/null @@ -1,29 +0,0 @@ -package types - -import ( - "cosmossdk.io/math" -) - -func NewStorkPriceState( - price math.LegacyDec, - timestamp uint64, - symbol string, - blockTime int64, -) *StorkPriceState { - return &StorkPriceState{ - Timestamp: timestamp, - Symbol: symbol, - Value: price, - PriceState: *NewPriceState(price, blockTime), - } -} - -func (s *StorkPriceState) Update(price math.LegacyDec, timestamp uint64, blockTime int64) { - s.Value = price - s.Timestamp = timestamp - s.PriceState.UpdatePrice(price, blockTime) -} - -func ScaleStorkPrice(price math.LegacyDec) math.LegacyDec { - return price.QuoTruncate(EighteenDecimals) -} diff --git a/chain/peggy/types/batch.go b/chain/peggy/types/batch.go deleted file mode 100644 index dc1d77da..00000000 --- a/chain/peggy/types/batch.go +++ /dev/null @@ -1,67 +0,0 @@ -package types - -import ( - "fmt" - "math/big" - "strings" - - accountsabi "github.com/ethereum/go-ethereum/accounts/abi" - "github.com/ethereum/go-ethereum/common" - "github.com/ethereum/go-ethereum/crypto" -) - -// GetCheckpoint gets the checkpoint signature from the given outgoing tx batch -func (b OutgoingTxBatch) GetCheckpoint(peggyIDstring string) common.Hash { - - abi, err := accountsabi.JSON(strings.NewReader(OutgoingBatchTxCheckpointABIJSON)) - if err != nil { - panic("Bad ABI constant!") - } - - // the contract argument is not a arbitrary length array but a fixed length 32 byte - // array, therefore we have to utf8 encode the string (the default in this case) and - // then copy the variable length encoded data into a fixed length array. This function - // will panic if peggyId is too long to fit in 32 bytes - peggyID, err := strToFixByteArray(peggyIDstring) - if err != nil { - panic(err) - } - - // Create the methodName argument which salts the signature - methodNameBytes := []uint8("transactionBatch") - var batchMethodName [32]uint8 - copy(batchMethodName[:], methodNameBytes) - - // Run through the elements of the batch and serialize them - txAmounts := make([]*big.Int, len(b.Transactions)) - txDestinations := make([]common.Address, len(b.Transactions)) - txFees := make([]*big.Int, len(b.Transactions)) - for i, tx := range b.Transactions { - txAmounts[i] = tx.Erc20Token.Amount.BigInt() - txDestinations[i] = common.HexToAddress(tx.DestAddress) - txFees[i] = tx.Erc20Fee.Amount.BigInt() - } - - // the methodName needs to be the same as the 'name' above in the checkpointAbiJson - // but other than that it's a constant that has no impact on the output. This is because - // it gets encoded as a function name which we must then discard. - abiEncodedBatch, err := abi.Pack("submitBatch", - peggyID, - batchMethodName, - txAmounts, - txDestinations, - txFees, - big.NewInt(int64(b.BatchNonce)), - common.HexToAddress(b.TokenContract), - big.NewInt(int64(b.BatchTimeout)), - ) - - // this should never happen outside of test since any case that could crash on encoding - // should be filtered above. - if err != nil { - panic(fmt.Sprintf("Error packing checkpoint! %s/n", err)) - } - - hash := crypto.Keccak256Hash(abiEncodedBatch[4:]) - return hash -} diff --git a/chain/peggy/types/events.go b/chain/peggy/types/events.go deleted file mode 100644 index 413735c0..00000000 --- a/chain/peggy/types/events.go +++ /dev/null @@ -1,28 +0,0 @@ -package types - -const ( - EventTypeObservation = "observation" - EventTypeOutgoingBatch = "outgoing_batch" - - EventTypeMultisigUpdateRequest = "multisig_update_request" - EventTypeOutgoingBatchCanceled = "outgoing_batch_canceled" - EventTypeBridgeWithdrawalReceived = "withdrawal_received" - EventTypeBridgeDepositReceived = "deposit_received" - EventTypeBridgeWithdrawCanceled = "withdraw_canceled" - - AttributeKeyAttestationID = "attestation_id" - AttributeKeyBatchConfirmKey = "batch_confirm_key" - AttributeKeyValsetConfirmKey = "valset_confirm_key" - AttributeKeyMultisigID = "multisig_id" - AttributeKeyOutgoingBatchID = "batch_id" - AttributeKeyOutgoingTXID = "outgoing_tx_id" - AttributeKeyAttestationType = "attestation_type" - AttributeKeyContract = "bridge_contract" - AttributeKeyNonce = "nonce" - AttributeKeyValsetNonce = "valset_nonce" - AttributeKeyBatchNonce = "batch_nonce" - AttributeKeyBridgeChainID = "bridge_chain_id" - AttributeKeySetOperatorAddr = "set_operator_address" - AttributeKeyBadEthSignature = "bad_eth_signature" - AttributeKeyBadEthSignatureSubject = "bad_eth_signature_subject" -) diff --git a/chain/peggy/types/events.pb.go b/chain/peggy/types/events.pb.go index ac80a720..179da07d 100644 --- a/chain/peggy/types/events.pb.go +++ b/chain/peggy/types/events.pb.go @@ -1210,6 +1210,172 @@ func (m *EventValidatorSlash) GetMoniker() string { return "" } +type EventDepositReceived struct { + // Ethereum sender address + Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` + // Injective receiver address + Receiver string `protobuf:"bytes,2,opt,name=receiver,proto3" json:"receiver,omitempty"` + // Coin deposited to Injective + Amount github_com_cosmos_cosmos_sdk_types.Coin `protobuf:"bytes,3,opt,name=amount,proto3,customtype=github.com/cosmos/cosmos-sdk/types.Coin" json:"amount"` +} + +func (m *EventDepositReceived) Reset() { *m = EventDepositReceived{} } +func (m *EventDepositReceived) String() string { return proto.CompactTextString(m) } +func (*EventDepositReceived) ProtoMessage() {} +func (*EventDepositReceived) Descriptor() ([]byte, []int) { + return fileDescriptor_95f217691d2f42c2, []int{17} +} +func (m *EventDepositReceived) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *EventDepositReceived) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_EventDepositReceived.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *EventDepositReceived) XXX_Merge(src proto.Message) { + xxx_messageInfo_EventDepositReceived.Merge(m, src) +} +func (m *EventDepositReceived) XXX_Size() int { + return m.Size() +} +func (m *EventDepositReceived) XXX_DiscardUnknown() { + xxx_messageInfo_EventDepositReceived.DiscardUnknown(m) +} + +var xxx_messageInfo_EventDepositReceived proto.InternalMessageInfo + +func (m *EventDepositReceived) GetSender() string { + if m != nil { + return m.Sender + } + return "" +} + +func (m *EventDepositReceived) GetReceiver() string { + if m != nil { + return m.Receiver + } + return "" +} + +type EventWithdrawalsCompleted struct { + // token denom of each withdrawal + Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` + // individual withdrawals + Withdrawals []*Withdrawal `protobuf:"bytes,2,rep,name=withdrawals,proto3" json:"withdrawals,omitempty"` +} + +func (m *EventWithdrawalsCompleted) Reset() { *m = EventWithdrawalsCompleted{} } +func (m *EventWithdrawalsCompleted) String() string { return proto.CompactTextString(m) } +func (*EventWithdrawalsCompleted) ProtoMessage() {} +func (*EventWithdrawalsCompleted) Descriptor() ([]byte, []int) { + return fileDescriptor_95f217691d2f42c2, []int{18} +} +func (m *EventWithdrawalsCompleted) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *EventWithdrawalsCompleted) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_EventWithdrawalsCompleted.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *EventWithdrawalsCompleted) XXX_Merge(src proto.Message) { + xxx_messageInfo_EventWithdrawalsCompleted.Merge(m, src) +} +func (m *EventWithdrawalsCompleted) XXX_Size() int { + return m.Size() +} +func (m *EventWithdrawalsCompleted) XXX_DiscardUnknown() { + xxx_messageInfo_EventWithdrawalsCompleted.DiscardUnknown(m) +} + +var xxx_messageInfo_EventWithdrawalsCompleted proto.InternalMessageInfo + +func (m *EventWithdrawalsCompleted) GetDenom() string { + if m != nil { + return m.Denom + } + return "" +} + +func (m *EventWithdrawalsCompleted) GetWithdrawals() []*Withdrawal { + if m != nil { + return m.Withdrawals + } + return nil +} + +type Withdrawal struct { + // Injective sender address + Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` + // Ethereum receiver address + Receiver string `protobuf:"bytes,2,opt,name=receiver,proto3" json:"receiver,omitempty"` + // Amount of tokens withdrawn to Ethereum + Amount cosmossdk_io_math.Int `protobuf:"bytes,3,opt,name=amount,proto3,customtype=cosmossdk.io/math.Int" json:"amount"` +} + +func (m *Withdrawal) Reset() { *m = Withdrawal{} } +func (m *Withdrawal) String() string { return proto.CompactTextString(m) } +func (*Withdrawal) ProtoMessage() {} +func (*Withdrawal) Descriptor() ([]byte, []int) { + return fileDescriptor_95f217691d2f42c2, []int{19} +} +func (m *Withdrawal) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Withdrawal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_Withdrawal.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *Withdrawal) XXX_Merge(src proto.Message) { + xxx_messageInfo_Withdrawal.Merge(m, src) +} +func (m *Withdrawal) XXX_Size() int { + return m.Size() +} +func (m *Withdrawal) XXX_DiscardUnknown() { + xxx_messageInfo_Withdrawal.DiscardUnknown(m) +} + +var xxx_messageInfo_Withdrawal proto.InternalMessageInfo + +func (m *Withdrawal) GetSender() string { + if m != nil { + return m.Sender + } + return "" +} + +func (m *Withdrawal) GetReceiver() string { + if m != nil { + return m.Receiver + } + return "" +} + func init() { proto.RegisterType((*EventAttestationObserved)(nil), "injective.peggy.v1.EventAttestationObserved") proto.RegisterType((*EventBridgeWithdrawCanceled)(nil), "injective.peggy.v1.EventBridgeWithdrawCanceled") @@ -1228,92 +1394,99 @@ func init() { proto.RegisterType((*EventCancelSendToEth)(nil), "injective.peggy.v1.EventCancelSendToEth") proto.RegisterType((*EventSubmitBadSignatureEvidence)(nil), "injective.peggy.v1.EventSubmitBadSignatureEvidence") proto.RegisterType((*EventValidatorSlash)(nil), "injective.peggy.v1.EventValidatorSlash") + proto.RegisterType((*EventDepositReceived)(nil), "injective.peggy.v1.EventDepositReceived") + proto.RegisterType((*EventWithdrawalsCompleted)(nil), "injective.peggy.v1.EventWithdrawalsCompleted") + proto.RegisterType((*Withdrawal)(nil), "injective.peggy.v1.Withdrawal") } func init() { proto.RegisterFile("injective/peggy/v1/events.proto", fileDescriptor_95f217691d2f42c2) } var fileDescriptor_95f217691d2f42c2 = []byte{ - // 1265 bytes of a gzipped FileDescriptorProto + // 1340 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x57, 0xcf, 0x6f, 0x1b, 0xc5, - 0x17, 0xcf, 0xda, 0x4e, 0x52, 0x4f, 0x1c, 0x3b, 0x9d, 0xe6, 0xdb, 0xaf, 0x1b, 0x54, 0xc7, 0xdd, - 0xb6, 0x24, 0x80, 0x6a, 0xb7, 0x45, 0x1c, 0x90, 0xb8, 0xd4, 0xae, 0xa1, 0xe1, 0x47, 0x2b, 0x6d, - 0x42, 0x91, 0xb8, 0x58, 0xb3, 0x3b, 0xaf, 0xde, 0x69, 0xbc, 0x33, 0x66, 0x67, 0xec, 0x36, 0x67, - 0x2e, 0x1c, 0x38, 0x70, 0xe1, 0xca, 0xff, 0xc0, 0x81, 0x3f, 0x01, 0xa9, 0xdc, 0x7a, 0x44, 0x1c, - 0x2a, 0xd4, 0xfe, 0x07, 0x48, 0x5c, 0x38, 0xa1, 0x9d, 0x99, 0xdd, 0x38, 0x59, 0x5b, 0xa4, 0x01, - 0xca, 0xc9, 0x3b, 0x6f, 0xde, 0x7b, 0xf3, 0xe6, 0xf3, 0x3e, 0xf3, 0xde, 0x33, 0xda, 0x64, 0xfc, - 0x21, 0x04, 0x8a, 0x4d, 0xa0, 0x3d, 0x82, 0xc1, 0xe0, 0xa0, 0x3d, 0xb9, 0xd1, 0x86, 0x09, 0x70, - 0x25, 0x5b, 0xa3, 0x58, 0x28, 0x81, 0x71, 0xa6, 0xd0, 0xd2, 0x0a, 0xad, 0xc9, 0x8d, 0x8d, 0xf5, - 0x81, 0x18, 0x08, 0xbd, 0xdd, 0x4e, 0xbe, 0x8c, 0xe6, 0xc6, 0x95, 0x19, 0xae, 0x88, 0x52, 0x20, - 0x15, 0x51, 0x4c, 0x70, 0xab, 0xd5, 0x98, 0xa1, 0xa5, 0x0e, 0x46, 0x60, 0xcf, 0x73, 0x7f, 0x73, - 0x50, 0xbd, 0x97, 0x04, 0x70, 0xeb, 0xd0, 0xf4, 0x9e, 0x2f, 0x21, 0x9e, 0x00, 0xc5, 0x77, 0xd0, - 0xda, 0x94, 0xc7, 0x7e, 0x62, 0x57, 0x77, 0x9a, 0xce, 0x76, 0xf5, 0xe6, 0xc5, 0x56, 0x3e, 0xce, - 0x56, 0x77, 0x48, 0x58, 0xb4, 0x77, 0x30, 0x02, 0xaf, 0x36, 0x65, 0x96, 0x08, 0xf0, 0x16, 0xaa, - 0xf9, 0x31, 0xa3, 0x03, 0xe8, 0x07, 0x82, 0xab, 0x98, 0x04, 0xaa, 0x5e, 0x68, 0x3a, 0xdb, 0x65, - 0xaf, 0x6a, 0xc4, 0x5d, 0x2b, 0xc5, 0xaf, 0x1f, 0x2a, 0x86, 0x84, 0xf1, 0x3e, 0xa3, 0xf5, 0x62, - 0xd3, 0xd9, 0x2e, 0x79, 0xab, 0x56, 0x31, 0x91, 0xee, 0x50, 0x7c, 0x15, 0x55, 0xa7, 0x43, 0x63, - 0xb4, 0x5e, 0x6a, 0x3a, 0xdb, 0x15, 0x6f, 0x75, 0x4a, 0xba, 0x43, 0xf1, 0x3a, 0x5a, 0xe4, 0x82, - 0x07, 0x50, 0x5f, 0xd4, 0x4e, 0xcc, 0xc2, 0xe5, 0xe8, 0x35, 0x7d, 0xe7, 0x8e, 0x76, 0xf9, 0x19, - 0x53, 0x21, 0x8d, 0xc9, 0xa3, 0x2e, 0xe1, 0x01, 0x0c, 0x81, 0xce, 0x0a, 0xd6, 0x39, 0x69, 0xb0, - 0x85, 0x19, 0xc1, 0xba, 0x3f, 0x3a, 0x08, 0xeb, 0x03, 0xef, 0x8d, 0xd5, 0x40, 0x30, 0x3e, 0xe8, - 0x10, 0x15, 0x84, 0x49, 0x70, 0x14, 0xb8, 0x88, 0xac, 0x77, 0xb3, 0xc0, 0x37, 0xd0, 0xba, 0x88, - 0x83, 0x10, 0xa4, 0x8a, 0x89, 0x12, 0x71, 0x9f, 0x50, 0x1a, 0x83, 0x94, 0x16, 0xaf, 0x73, 0xd3, - 0x7b, 0xb7, 0xcc, 0x16, 0xde, 0x44, 0x2b, 0x7e, 0xe2, 0xb1, 0x6f, 0xee, 0x6a, 0x00, 0x43, 0x5a, - 0x74, 0x37, 0x91, 0xe0, 0xcb, 0x68, 0xd5, 0x28, 0x28, 0x16, 0x81, 0x18, 0x2b, 0x0d, 0x56, 0xc9, - 0xab, 0x68, 0xe1, 0x9e, 0x91, 0xe1, 0x26, 0xaa, 0x58, 0xa5, 0xc7, 0x7d, 0x46, 0x65, 0x7d, 0xb1, - 0x59, 0xcc, 0xdc, 0xec, 0x3d, 0xde, 0xa1, 0xd2, 0xfd, 0xce, 0x41, 0x1b, 0xf9, 0x7b, 0xfc, 0x6b, - 0xb8, 0xe1, 0x0b, 0xe8, 0x8c, 0x89, 0x28, 0x63, 0xc1, 0xb2, 0x5e, 0x4f, 0x27, 0xb6, 0x34, 0x9d, - 0xd8, 0x6f, 0x0b, 0x96, 0xcd, 0xf7, 0xc9, 0x50, 0x82, 0xfa, 0x74, 0x44, 0x89, 0x02, 0x0f, 0xbe, - 0x18, 0x83, 0x54, 0xf8, 0x12, 0xaa, 0x4c, 0xb4, 0xd8, 0xc2, 0xe4, 0x68, 0xcb, 0x15, 0x23, 0xcb, - 0x70, 0xb2, 0x2a, 0x21, 0xb0, 0x41, 0xa8, 0x6c, 0x58, 0xd6, 0xee, 0x8e, 0x96, 0xe1, 0x0f, 0x51, - 0xd5, 0x2a, 0x45, 0x10, 0xf9, 0x10, 0xcb, 0x7a, 0xb1, 0x59, 0xdc, 0x5e, 0xb9, 0x79, 0x79, 0xd6, - 0x9b, 0x30, 0x14, 0xbb, 0x4f, 0x86, 0x8c, 0x26, 0x19, 0xf3, 0xac, 0xff, 0x4f, 0x8c, 0x25, 0xee, - 0xa0, 0xd5, 0x18, 0x1e, 0x91, 0x98, 0xf6, 0x49, 0x24, 0xc6, 0xdc, 0x24, 0xa6, 0xdc, 0xb9, 0xf8, - 0xe4, 0xd9, 0xe6, 0xc2, 0x2f, 0xcf, 0x36, 0xff, 0x17, 0x08, 0x19, 0x09, 0x29, 0xe9, 0x7e, 0x8b, - 0x89, 0x76, 0x44, 0x54, 0xd8, 0xda, 0xe1, 0xca, 0xab, 0x18, 0x9b, 0x5b, 0xda, 0x24, 0xb9, 0x97, - 0xf5, 0xa1, 0xc4, 0x3e, 0x70, 0x4d, 0xf5, 0xb2, 0xb7, 0x62, 0x64, 0x7b, 0x89, 0xc8, 0xfd, 0xde, - 0x41, 0x17, 0x35, 0x2e, 0xbb, 0xa0, 0xee, 0xe5, 0x09, 0x04, 0x12, 0xbf, 0x85, 0xce, 0x4e, 0xd2, - 0x20, 0x33, 0xca, 0x99, 0xec, 0xad, 0x65, 0x1b, 0x29, 0xdf, 0x4e, 0x41, 0xd1, 0xeb, 0x68, 0x5d, - 0x8c, 0xc0, 0xa8, 0x83, 0x0a, 0x33, 0x93, 0xa2, 0x36, 0xc1, 0xe9, 0x5e, 0x4f, 0x85, 0xd6, 0xc2, - 0x7d, 0x68, 0xdf, 0x8c, 0x49, 0x65, 0x57, 0xf0, 0x07, 0x2c, 0x8e, 0x4e, 0x92, 0xc4, 0x97, 0x8f, - 0xce, 0xfd, 0xb2, 0x80, 0xaa, 0x16, 0x1f, 0x4e, 0xf7, 0x44, 0x4f, 0x85, 0xf8, 0x0a, 0xaa, 0x0a, - 0xcb, 0x72, 0xf3, 0x20, 0xec, 0x51, 0x95, 0x54, 0x9a, 0x3c, 0x09, 0x7c, 0x1e, 0x2d, 0x49, 0xe0, - 0x14, 0x62, 0xeb, 0xdd, 0xae, 0xf0, 0x06, 0x3a, 0x13, 0x43, 0x00, 0x6c, 0x02, 0xb1, 0xbd, 0x62, - 0xb6, 0xc6, 0x1f, 0xa0, 0xa5, 0x23, 0xc9, 0x6e, 0xdb, 0x64, 0x6f, 0x0d, 0x98, 0x0a, 0xc7, 0x7e, - 0x2b, 0x10, 0x51, 0xdb, 0xe4, 0xdd, 0xfe, 0x5c, 0x93, 0x74, 0xdf, 0x16, 0xed, 0xae, 0x60, 0xdc, - 0xb3, 0xe6, 0xf8, 0x2e, 0x42, 0xf6, 0x19, 0x3d, 0x00, 0x53, 0xe1, 0x4e, 0xe1, 0xac, 0x6c, 0x5c, - 0xbc, 0x0f, 0xe0, 0x0e, 0xd0, 0x59, 0x0d, 0x82, 0xc5, 0xda, 0x14, 0xa9, 0x63, 0xb5, 0xc5, 0xc9, - 0xd5, 0x96, 0x53, 0xc0, 0xad, 0xd0, 0xfa, 0xf1, 0x9e, 0x73, 0x5f, 0x28, 0x48, 0xce, 0xd2, 0xcd, - 0xf0, 0xe8, 0x59, 0x5a, 0x64, 0xce, 0xca, 0x57, 0xfd, 0xc2, 0x9c, 0xaa, 0x3f, 0x11, 0x2a, 0x83, - 0xde, 0x2c, 0xdc, 0xdf, 0x0b, 0xf6, 0x7e, 0xb7, 0x61, 0x24, 0x24, 0x53, 0xba, 0x5d, 0xfd, 0xf5, - 0x99, 0x97, 0x50, 0xc5, 0x28, 0x1c, 0x29, 0x09, 0xc6, 0xc8, 0x56, 0x84, 0x7c, 0x58, 0xc5, 0x59, - 0x61, 0x6d, 0xa1, 0x1a, 0xa8, 0x10, 0x62, 0x18, 0x47, 0x7d, 0xcb, 0x9a, 0x92, 0xa9, 0x8f, 0xa9, - 0x78, 0xd7, 0xb0, 0x67, 0x0b, 0xd5, 0x4c, 0xb2, 0xfa, 0x19, 0x89, 0xcc, 0xa3, 0xae, 0x1a, 0xb1, - 0x97, 0x52, 0xe9, 0x2a, 0xaa, 0xea, 0x37, 0x7f, 0x58, 0x70, 0x97, 0xb4, 0xde, 0xaa, 0x96, 0x66, - 0xf5, 0xf6, 0x9d, 0x8c, 0x71, 0xcb, 0x27, 0x29, 0x2f, 0x29, 0xbf, 0xe6, 0x65, 0xf6, 0xcc, 0xfc, - 0x67, 0x8e, 0x51, 0x89, 0x12, 0x45, 0xea, 0x65, 0xad, 0xa2, 0xbf, 0xdd, 0x3f, 0xd2, 0xee, 0x97, - 0x35, 0xda, 0x57, 0x0d, 0xfc, 0x31, 0x0e, 0x97, 0x72, 0x1c, 0xce, 0xe3, 0xb8, 0x38, 0x0b, 0xc7, - 0x79, 0x80, 0x2c, 0xcd, 0xa7, 0xfa, 0x4f, 0x05, 0xf4, 0x7f, 0x7d, 0xf9, 0x9e, 0xd7, 0xbd, 0x79, - 0xfd, 0x36, 0x8c, 0x86, 0xe2, 0x00, 0xe8, 0x2b, 0x47, 0xe0, 0x12, 0xaa, 0x58, 0x46, 0x99, 0x89, - 0xc3, 0xf0, 0x6e, 0xc5, 0xc8, 0x6e, 0xeb, 0xb9, 0xe3, 0x84, 0x18, 0x60, 0x54, 0xe2, 0x24, 0x02, - 0x7b, 0x67, 0xfd, 0xad, 0xab, 0xe0, 0x41, 0xe4, 0x8b, 0xa1, 0xe1, 0x97, 0x67, 0x57, 0x49, 0x15, - 0xa4, 0x10, 0xb0, 0x88, 0x0c, 0x0d, 0x69, 0x4a, 0x5e, 0xb6, 0x9e, 0x8b, 0x65, 0x79, 0x3e, 0x96, - 0x5f, 0x17, 0xd1, 0xf9, 0x5c, 0x77, 0xff, 0x2f, 0xa0, 0x3c, 0xd2, 0x81, 0x4a, 0xf9, 0x0e, 0x94, - 0x9f, 0x10, 0x16, 0xff, 0xb9, 0x09, 0x61, 0xe9, 0xef, 0x4f, 0x08, 0xcb, 0xb9, 0x09, 0xe1, 0x14, - 0x6f, 0xdd, 0x7d, 0xcf, 0x56, 0x71, 0x33, 0xff, 0xbd, 0x64, 0xe7, 0x74, 0xbf, 0x72, 0xd0, 0xa6, - 0x69, 0xb9, 0x63, 0x3f, 0x62, 0xaa, 0x43, 0xe8, 0x2e, 0x1b, 0x70, 0xa2, 0xc6, 0x31, 0xf4, 0x26, - 0x8c, 0x42, 0x82, 0xe3, 0x9b, 0xe8, 0xac, 0x4f, 0xa8, 0x9e, 0x17, 0x64, 0xba, 0x69, 0x87, 0x92, - 0x9a, 0x4f, 0x68, 0x4f, 0x85, 0x99, 0x0d, 0x7e, 0x17, 0x5d, 0xc8, 0xe9, 0xf6, 0xe5, 0xd8, 0x4f, - 0xf0, 0xb6, 0xbd, 0xe8, 0xfc, 0x31, 0x9b, 0x5d, 0xb3, 0xeb, 0xfe, 0xe0, 0xa0, 0x73, 0x29, 0xaf, - 0x4c, 0x12, 0x76, 0x87, 0x44, 0xea, 0xf9, 0x7c, 0x24, 0x1e, 0x41, 0xac, 0x8f, 0x2c, 0x7a, 0x66, - 0x91, 0x90, 0x3d, 0x06, 0x22, 0x05, 0x4f, 0x5b, 0xbe, 0x59, 0x25, 0x13, 0x54, 0x20, 0xb8, 0x04, - 0x2e, 0xc7, 0xf2, 0xd8, 0x78, 0xb3, 0x96, 0x6d, 0xa4, 0x75, 0xf2, 0x0d, 0xb4, 0x96, 0x8d, 0x43, - 0xa9, 0xae, 0x79, 0x93, 0xb5, 0x54, 0x9e, 0xaa, 0xd6, 0xd1, 0x72, 0x24, 0x38, 0xdb, 0xcf, 0x9a, - 0x40, 0xba, 0xec, 0xc0, 0x93, 0xe7, 0x0d, 0xe7, 0xe9, 0xf3, 0x86, 0xf3, 0xeb, 0xf3, 0x86, 0xf3, - 0xcd, 0x8b, 0xc6, 0xc2, 0xd3, 0x17, 0x8d, 0x85, 0x9f, 0x5f, 0x34, 0x16, 0x3e, 0xff, 0x68, 0xaa, - 0xfb, 0xef, 0xa4, 0x94, 0xfb, 0x98, 0xf8, 0xb2, 0x9d, 0x11, 0xf0, 0x5a, 0x20, 0x62, 0x98, 0x5e, - 0x26, 0x33, 0x77, 0x3b, 0x12, 0x74, 0x3c, 0x04, 0x69, 0xff, 0x2b, 0xea, 0x31, 0xc1, 0x5f, 0xd2, - 0xff, 0x14, 0xdf, 0xfe, 0x33, 0x00, 0x00, 0xff, 0xff, 0x1e, 0x8d, 0x4c, 0x9e, 0xbc, 0x0e, 0x00, - 0x00, + 0x17, 0xcf, 0xda, 0x4e, 0xd2, 0xbc, 0x38, 0x4e, 0x3a, 0xcd, 0xb7, 0x5f, 0x37, 0xa8, 0x8e, 0xbb, + 0x6d, 0x49, 0x00, 0xd5, 0x6e, 0x8b, 0x7a, 0x40, 0xe2, 0x40, 0xe3, 0x06, 0x1a, 0x7e, 0xb4, 0xd2, + 0x26, 0x14, 0x89, 0x8b, 0x35, 0xde, 0x79, 0xf5, 0x4e, 0xe3, 0xdd, 0x31, 0x3b, 0x63, 0xa7, 0x39, + 0x73, 0xe1, 0xc0, 0x01, 0x09, 0x71, 0xe5, 0x7f, 0xe0, 0xc0, 0x9f, 0x80, 0x54, 0x6e, 0x3d, 0x22, + 0x0e, 0x15, 0x6a, 0xfe, 0x03, 0x24, 0x2e, 0x9c, 0xd0, 0xce, 0xcc, 0x6e, 0x9c, 0xac, 0x2d, 0xd2, + 0x14, 0xca, 0xc9, 0x9e, 0x37, 0xef, 0xbd, 0x79, 0xf3, 0x79, 0x9f, 0x79, 0xef, 0x2d, 0xac, 0xf2, + 0xe8, 0x11, 0xfa, 0x8a, 0x0f, 0xb1, 0xd9, 0xc7, 0x6e, 0x77, 0xbf, 0x39, 0xbc, 0xd1, 0xc4, 0x21, + 0x46, 0x4a, 0x36, 0xfa, 0xb1, 0x50, 0x82, 0x90, 0x4c, 0xa1, 0xa1, 0x15, 0x1a, 0xc3, 0x1b, 0x2b, + 0xcb, 0x5d, 0xd1, 0x15, 0x7a, 0xbb, 0x99, 0xfc, 0x33, 0x9a, 0x2b, 0x57, 0xc6, 0xb8, 0xa2, 0x4a, + 0xa1, 0x54, 0x54, 0x71, 0x11, 0x59, 0xad, 0xda, 0x18, 0x2d, 0xb5, 0xdf, 0x47, 0x7b, 0x9e, 0xfb, + 0xbb, 0x03, 0xd5, 0xcd, 0x24, 0x80, 0xdb, 0x87, 0xa6, 0xf7, 0x3b, 0x12, 0xe3, 0x21, 0x32, 0x72, + 0x17, 0x96, 0x46, 0x3c, 0xb6, 0x13, 0xbb, 0xaa, 0x53, 0x77, 0xd6, 0x2b, 0x37, 0x2f, 0x36, 0xf2, + 0x71, 0x36, 0x5a, 0x3d, 0xca, 0xc3, 0x9d, 0xfd, 0x3e, 0x7a, 0x8b, 0x23, 0x66, 0x89, 0x80, 0xac, + 0xc1, 0x62, 0x27, 0xe6, 0xac, 0x8b, 0x6d, 0x5f, 0x44, 0x2a, 0xa6, 0xbe, 0xaa, 0x16, 0xea, 0xce, + 0xfa, 0x9c, 0x57, 0x31, 0xe2, 0x96, 0x95, 0x92, 0xd7, 0x0f, 0x15, 0x03, 0xca, 0xa3, 0x36, 0x67, + 0xd5, 0x62, 0xdd, 0x59, 0x2f, 0x79, 0x0b, 0x56, 0x31, 0x91, 0x6e, 0x31, 0x72, 0x15, 0x2a, 0xa3, + 0xa1, 0x71, 0x56, 0x2d, 0xd5, 0x9d, 0xf5, 0xb2, 0xb7, 0x30, 0x22, 0xdd, 0x62, 0x64, 0x19, 0xa6, + 0x23, 0x11, 0xf9, 0x58, 0x9d, 0xd6, 0x4e, 0xcc, 0xc2, 0x8d, 0xe0, 0x35, 0x7d, 0xe7, 0x0d, 0xed, + 0xf2, 0x33, 0xae, 0x02, 0x16, 0xd3, 0xbd, 0x16, 0x8d, 0x7c, 0xec, 0x21, 0x1b, 0x17, 0xac, 0x73, + 0xd2, 0x60, 0x0b, 0x63, 0x82, 0x75, 0x7f, 0x72, 0x80, 0xe8, 0x03, 0xef, 0x0f, 0x54, 0x57, 0xf0, + 0xa8, 0xbb, 0x41, 0x95, 0x1f, 0x24, 0xc1, 0x31, 0x8c, 0x44, 0x68, 0xbd, 0x9b, 0x05, 0xb9, 0x01, + 0xcb, 0x22, 0xf6, 0x03, 0x94, 0x2a, 0xa6, 0x4a, 0xc4, 0x6d, 0xca, 0x58, 0x8c, 0x52, 0x5a, 0xbc, + 0xce, 0x8d, 0xee, 0xdd, 0x36, 0x5b, 0x64, 0x15, 0xe6, 0x3b, 0x89, 0xc7, 0xb6, 0xb9, 0xab, 0x01, + 0x0c, 0xb4, 0xe8, 0x5e, 0x22, 0x21, 0x97, 0x61, 0xc1, 0x28, 0x28, 0x1e, 0xa2, 0x18, 0x28, 0x0d, + 0x56, 0xc9, 0x2b, 0x6b, 0xe1, 0x8e, 0x91, 0x91, 0x3a, 0x94, 0xad, 0xd2, 0xe3, 0x36, 0x67, 0xb2, + 0x3a, 0x5d, 0x2f, 0x66, 0x6e, 0x76, 0x1e, 0x6f, 0x31, 0xe9, 0x7e, 0xef, 0xc0, 0x4a, 0xfe, 0x1e, + 0xff, 0x1a, 0x6e, 0xe4, 0x02, 0x9c, 0x31, 0x11, 0x65, 0x2c, 0x98, 0xd5, 0xeb, 0xd1, 0xc4, 0x96, + 0x46, 0x13, 0xfb, 0x5d, 0xc1, 0xb2, 0xf9, 0x01, 0xed, 0x49, 0x54, 0x9f, 0xf6, 0x19, 0x55, 0xe8, + 0xe1, 0x17, 0x03, 0x94, 0x8a, 0x5c, 0x82, 0xf2, 0x50, 0x8b, 0x2d, 0x4c, 0x8e, 0xb6, 0x9c, 0x37, + 0xb2, 0x0c, 0x27, 0xab, 0x12, 0x20, 0xef, 0x06, 0xca, 0x86, 0x65, 0xed, 0xee, 0x6a, 0x19, 0xf9, + 0x10, 0x2a, 0x56, 0x29, 0xc4, 0xb0, 0x83, 0xb1, 0xac, 0x16, 0xeb, 0xc5, 0xf5, 0xf9, 0x9b, 0x97, + 0xc7, 0xbd, 0x09, 0x43, 0xb1, 0x07, 0xb4, 0xc7, 0x59, 0x92, 0x31, 0xcf, 0xfa, 0xff, 0xc4, 0x58, + 0x92, 0x0d, 0x58, 0x88, 0x71, 0x8f, 0xc6, 0xac, 0x4d, 0x43, 0x31, 0x88, 0x4c, 0x62, 0xe6, 0x36, + 0x2e, 0x3e, 0x79, 0xb6, 0x3a, 0xf5, 0xeb, 0xb3, 0xd5, 0xff, 0xf9, 0x42, 0x86, 0x42, 0x4a, 0xb6, + 0xdb, 0xe0, 0xa2, 0x19, 0x52, 0x15, 0x34, 0xb6, 0x22, 0xe5, 0x95, 0x8d, 0xcd, 0x6d, 0x6d, 0x92, + 0xdc, 0xcb, 0xfa, 0x50, 0x62, 0x17, 0x23, 0x4d, 0xf5, 0x39, 0x6f, 0xde, 0xc8, 0x76, 0x12, 0x91, + 0xfb, 0x83, 0x03, 0x17, 0x35, 0x2e, 0xdb, 0xa8, 0xee, 0xe7, 0x09, 0x84, 0x92, 0xbc, 0x05, 0x67, + 0x87, 0x69, 0x90, 0x19, 0xe5, 0x4c, 0xf6, 0x96, 0xb2, 0x8d, 0x94, 0x6f, 0xa7, 0xa0, 0xe8, 0x75, + 0x58, 0x16, 0x7d, 0x34, 0xea, 0xa8, 0x82, 0xcc, 0xa4, 0xa8, 0x4d, 0x48, 0xba, 0xb7, 0xa9, 0x02, + 0x6b, 0xe1, 0x3e, 0xb2, 0x6f, 0xc6, 0xa4, 0xb2, 0x25, 0xa2, 0x87, 0x3c, 0x0e, 0x4f, 0x92, 0xc4, + 0x17, 0x8f, 0xce, 0xfd, 0xb2, 0x00, 0x15, 0x8b, 0x4f, 0xc4, 0x76, 0xc4, 0xa6, 0x0a, 0xc8, 0x15, + 0xa8, 0x08, 0xcb, 0x72, 0xf3, 0x20, 0xec, 0x51, 0xe5, 0x54, 0x9a, 0x3c, 0x09, 0x72, 0x1e, 0x66, + 0x24, 0x46, 0x0c, 0x63, 0xeb, 0xdd, 0xae, 0xc8, 0x0a, 0x9c, 0x89, 0xd1, 0x47, 0x3e, 0xc4, 0xd8, + 0x5e, 0x31, 0x5b, 0x93, 0x0f, 0x60, 0xe6, 0x48, 0xb2, 0x9b, 0x36, 0xd9, 0x6b, 0x5d, 0xae, 0x82, + 0x41, 0xa7, 0xe1, 0x8b, 0xb0, 0x69, 0xf2, 0x6e, 0x7f, 0xae, 0x49, 0xb6, 0x6b, 0x8b, 0x76, 0x4b, + 0xf0, 0xc8, 0xb3, 0xe6, 0xe4, 0x1e, 0x80, 0x7d, 0x46, 0x0f, 0xd1, 0x54, 0xb8, 0x53, 0x38, 0x9b, + 0x33, 0x2e, 0xde, 0x47, 0x74, 0xbb, 0x70, 0x56, 0x83, 0x60, 0xb1, 0x36, 0x45, 0xea, 0x58, 0x6d, + 0x71, 0x72, 0xb5, 0xe5, 0x14, 0x70, 0x2b, 0x58, 0x3e, 0xde, 0x73, 0x1e, 0x08, 0x85, 0xc9, 0x59, + 0xba, 0x19, 0x1e, 0x3d, 0x4b, 0x8b, 0xcc, 0x59, 0xf9, 0xaa, 0x5f, 0x98, 0x50, 0xf5, 0x87, 0x42, + 0x65, 0xd0, 0x9b, 0x85, 0xfb, 0x47, 0xc1, 0xde, 0xef, 0x0e, 0xf6, 0x85, 0xe4, 0x4a, 0xb7, 0xab, + 0xbf, 0x3f, 0xf3, 0x12, 0x94, 0x8d, 0xc2, 0x91, 0x92, 0x60, 0x8c, 0x6c, 0x45, 0xc8, 0x87, 0x55, + 0x1c, 0x17, 0xd6, 0x1a, 0x2c, 0xa2, 0x0a, 0x30, 0xc6, 0x41, 0xd8, 0xb6, 0xac, 0x29, 0x99, 0xfa, + 0x98, 0x8a, 0xb7, 0x0d, 0x7b, 0xd6, 0x60, 0xd1, 0x24, 0xab, 0x9d, 0x91, 0xc8, 0x3c, 0xea, 0x8a, + 0x11, 0x7b, 0x29, 0x95, 0xae, 0x42, 0x45, 0xbf, 0xf9, 0xc3, 0x82, 0x3b, 0xa3, 0xf5, 0x16, 0xb4, + 0x34, 0xab, 0xb7, 0xb7, 0x32, 0xc6, 0xcd, 0x9e, 0xa4, 0xbc, 0xa4, 0xfc, 0x9a, 0x94, 0xd9, 0x33, + 0x93, 0x9f, 0x39, 0x81, 0x12, 0xa3, 0x8a, 0x56, 0xe7, 0xb4, 0x8a, 0xfe, 0xef, 0xfe, 0x99, 0x76, + 0xbf, 0xac, 0xd1, 0xbe, 0x6a, 0xe0, 0x8f, 0x71, 0xb8, 0x94, 0xe3, 0x70, 0x1e, 0xc7, 0xe9, 0x71, + 0x38, 0x4e, 0x02, 0x64, 0x66, 0x32, 0xd5, 0x7f, 0x2e, 0xc0, 0xff, 0xf5, 0xe5, 0x37, 0xbd, 0xd6, + 0xcd, 0xeb, 0x77, 0xb0, 0xdf, 0x13, 0xfb, 0xc8, 0x5e, 0x39, 0x02, 0x97, 0xa0, 0x6c, 0x19, 0x65, + 0x26, 0x0e, 0xc3, 0xbb, 0x79, 0x23, 0xbb, 0xa3, 0xe7, 0x8e, 0x13, 0x62, 0x40, 0xa0, 0x14, 0xd1, + 0x10, 0xed, 0x9d, 0xf5, 0x7f, 0x5d, 0x05, 0xf7, 0xc3, 0x8e, 0xe8, 0x19, 0x7e, 0x79, 0x76, 0x95, + 0x54, 0x41, 0x86, 0x3e, 0x0f, 0x69, 0xcf, 0x90, 0xa6, 0xe4, 0x65, 0xeb, 0x89, 0x58, 0xce, 0x4d, + 0xc6, 0xf2, 0xeb, 0x22, 0x9c, 0xcf, 0x75, 0xf7, 0xff, 0x02, 0xca, 0x23, 0x1d, 0xa8, 0x94, 0xef, + 0x40, 0xf9, 0x09, 0x61, 0xfa, 0x9f, 0x9b, 0x10, 0x66, 0x5e, 0x7e, 0x42, 0x98, 0xcd, 0x4d, 0x08, + 0xa7, 0x78, 0xeb, 0xee, 0xbb, 0xb6, 0x8a, 0x9b, 0xf9, 0xef, 0x05, 0x3b, 0xa7, 0xfb, 0x95, 0x03, + 0xab, 0xa6, 0xe5, 0x0e, 0x3a, 0x21, 0x57, 0x1b, 0x94, 0x6d, 0xf3, 0x6e, 0x44, 0xd5, 0x20, 0xc6, + 0xcd, 0x21, 0x67, 0x98, 0xe0, 0xf8, 0x26, 0x9c, 0xed, 0x50, 0xa6, 0xe7, 0x05, 0x99, 0x6e, 0xda, + 0xa1, 0x64, 0xb1, 0x43, 0xd9, 0xa6, 0x0a, 0x32, 0x1b, 0xf2, 0x0e, 0x5c, 0xc8, 0xe9, 0xb6, 0xe5, + 0xa0, 0x93, 0xe0, 0x6d, 0x7b, 0xd1, 0xf9, 0x63, 0x36, 0xdb, 0x66, 0xd7, 0xfd, 0xd1, 0x81, 0x73, + 0x29, 0xaf, 0x4c, 0x12, 0xb6, 0x7b, 0x54, 0xea, 0xf9, 0xbc, 0x2f, 0xf6, 0x30, 0xd6, 0x47, 0x16, + 0x3d, 0xb3, 0x48, 0xc8, 0x1e, 0x23, 0x95, 0x22, 0x4a, 0x5b, 0xbe, 0x59, 0x25, 0x13, 0x94, 0x2f, + 0x22, 0x89, 0x91, 0x1c, 0xc8, 0x63, 0xe3, 0xcd, 0x52, 0xb6, 0x91, 0xd6, 0xc9, 0x37, 0x60, 0x29, + 0x1b, 0x87, 0x52, 0x5d, 0xf3, 0x26, 0x17, 0x53, 0x79, 0xaa, 0x5a, 0x85, 0xd9, 0x50, 0x44, 0x7c, + 0x37, 0x6b, 0x02, 0xe9, 0xd2, 0xfd, 0xd6, 0xb1, 0x19, 0xb0, 0x0d, 0xcd, 0xb6, 0x85, 0xd1, 0xa9, + 0xc4, 0x99, 0x38, 0x95, 0x14, 0x26, 0x4e, 0x25, 0xc5, 0x97, 0x9a, 0x4a, 0x5c, 0x09, 0x17, 0x8e, + 0x54, 0x7b, 0xda, 0x93, 0x2d, 0x11, 0xf6, 0x7b, 0xa8, 0x90, 0x4d, 0xf8, 0xe4, 0x79, 0x0f, 0xe6, + 0xf7, 0x0e, 0xb5, 0xab, 0x05, 0xfd, 0x58, 0x6a, 0xe3, 0x1e, 0xcb, 0xa1, 0x53, 0x6f, 0xd4, 0xc4, + 0xdd, 0x03, 0x38, 0xdc, 0x3a, 0xd5, 0xfd, 0x6f, 0x1d, 0xbb, 0xff, 0xc9, 0x7a, 0xe4, 0x06, 0x3e, + 0x79, 0x5e, 0x73, 0x9e, 0x3e, 0xaf, 0x39, 0xbf, 0x3d, 0xaf, 0x39, 0xdf, 0x1c, 0xd4, 0xa6, 0x9e, + 0x1e, 0xd4, 0xa6, 0x7e, 0x39, 0xa8, 0x4d, 0x7d, 0xfe, 0xd1, 0x08, 0x70, 0x5b, 0xe9, 0x4d, 0x3e, + 0xa6, 0x1d, 0xd9, 0xcc, 0xee, 0x75, 0xcd, 0x17, 0x31, 0x8e, 0x2e, 0x93, 0xef, 0x9e, 0x66, 0x28, + 0xd8, 0xa0, 0x87, 0xd2, 0x7e, 0xaf, 0x6b, 0x84, 0x3b, 0x33, 0xfa, 0x6b, 0xfd, 0xed, 0xbf, 0x02, + 0x00, 0x00, 0xff, 0xff, 0xb0, 0x7a, 0xbb, 0x0c, 0x40, 0x10, 0x00, 0x00, } func (m *EventAttestationObserved) Marshal() (dAtA []byte, err error) { @@ -2223,6 +2396,144 @@ func (m *EventValidatorSlash) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *EventDepositReceived) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *EventDepositReceived) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EventDepositReceived) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + { + size := m.Amount.Size() + i -= size + if _, err := m.Amount.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + if len(m.Receiver) > 0 { + i -= len(m.Receiver) + copy(dAtA[i:], m.Receiver) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Receiver))) + i-- + dAtA[i] = 0x12 + } + if len(m.Sender) > 0 { + i -= len(m.Sender) + copy(dAtA[i:], m.Sender) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Sender))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *EventWithdrawalsCompleted) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *EventWithdrawalsCompleted) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EventWithdrawalsCompleted) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Withdrawals) > 0 { + for iNdEx := len(m.Withdrawals) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Withdrawals[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *Withdrawal) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Withdrawal) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Withdrawal) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + { + size := m.Amount.Size() + i -= size + if _, err := m.Amount.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + if len(m.Receiver) > 0 { + i -= len(m.Receiver) + copy(dAtA[i:], m.Receiver) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Receiver))) + i-- + dAtA[i] = 0x12 + } + if len(m.Sender) > 0 { + i -= len(m.Sender) + copy(dAtA[i:], m.Sender) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Sender))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func encodeVarintEvents(dAtA []byte, offset int, v uint64) int { offset -= sovEvents(v) base := offset @@ -2660,15 +2971,72 @@ func (m *EventValidatorSlash) Size() (n int) { return n } -func sovEvents(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 +func (m *EventDepositReceived) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Sender) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.Receiver) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = m.Amount.Size() + n += 1 + l + sovEvents(uint64(l)) + return n } -func sozEvents(x uint64) (n int) { - return sovEvents(uint64((x << 1) ^ uint64((int64(x) >> 63)))) + +func (m *EventWithdrawalsCompleted) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if len(m.Withdrawals) > 0 { + for _, e := range m.Withdrawals { + l = e.Size() + n += 1 + l + sovEvents(uint64(l)) + } + } + return n } -func (m *EventAttestationObserved) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 + +func (m *Withdrawal) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Sender) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.Receiver) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = m.Amount.Size() + n += 1 + l + sovEvents(uint64(l)) + return n +} + +func sovEvents(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozEvents(x uint64) (n int) { + return sovEvents(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (m *EventAttestationObserved) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 for iNdEx < l { preIndex := iNdEx var wire uint64 @@ -5654,6 +6022,418 @@ func (m *EventValidatorSlash) Unmarshal(dAtA []byte) error { } return nil } +func (m *EventDepositReceived) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: EventDepositReceived: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: EventDepositReceived: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Sender = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Receiver", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Receiver = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *EventWithdrawalsCompleted) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: EventWithdrawalsCompleted: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: EventWithdrawalsCompleted: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Withdrawals", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Withdrawals = append(m.Withdrawals, &Withdrawal{}) + if err := m.Withdrawals[len(m.Withdrawals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Withdrawal) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Withdrawal: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Withdrawal: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Sender = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Receiver", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Receiver = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func skipEvents(dAtA []byte) (n int, err error) { l := len(dAtA) iNdEx := 0 diff --git a/chain/peggy/types/expected_keepers.go b/chain/peggy/types/expected_keepers.go deleted file mode 100644 index a76278f5..00000000 --- a/chain/peggy/types/expected_keepers.go +++ /dev/null @@ -1,54 +0,0 @@ -package types - -import ( - "context" - "time" - - "cosmossdk.io/math" - storetypes "cosmossdk.io/store/types" - sdk "github.com/cosmos/cosmos-sdk/types" - bank "github.com/cosmos/cosmos-sdk/x/bank/types" - "github.com/cosmos/cosmos-sdk/x/distribution/types" - slashingtypes "github.com/cosmos/cosmos-sdk/x/slashing/types" - stakingtypes "github.com/cosmos/cosmos-sdk/x/staking/types" -) - -// StakingKeeper defines the expected staking keeper methods -type StakingKeeper interface { - GetBondedValidatorsByPower(ctx context.Context) ([]stakingtypes.Validator, error) - GetLastValidatorPower(ctx context.Context, operator sdk.ValAddress) (int64, error) - GetLastTotalPower(ctx context.Context) (power math.Int, err error) - IterateValidators(context.Context, func(index int64, validator stakingtypes.ValidatorI) (stop bool)) error - ValidatorQueueIterator(ctx context.Context, endTime time.Time, endHeight int64) (storetypes.Iterator, error) - GetParams(ctx context.Context) (stakingtypes.Params, error) - GetValidator(ctx context.Context, addr sdk.ValAddress) (validator stakingtypes.Validator, err error) - IterateBondedValidatorsByPower(context.Context, func(index int64, validator stakingtypes.ValidatorI) (stop bool)) error - IterateLastValidators(context.Context, func(index int64, validator stakingtypes.ValidatorI) (stop bool)) error - Validator(context.Context, sdk.ValAddress) (stakingtypes.ValidatorI, error) - ValidatorByConsAddr(context.Context, sdk.ConsAddress) (stakingtypes.ValidatorI, error) - Slash(context.Context, sdk.ConsAddress, int64, int64, math.LegacyDec) (math.Int, error) - Jail(context.Context, sdk.ConsAddress) error - PowerReduction(ctx context.Context) (res math.Int) -} - -// BankKeeper defines the expected bank keeper methods -type BankKeeper interface { - SendCoinsFromModuleToModule(ctx context.Context, senderModule, recipientModule string, amt sdk.Coins) error - SendCoinsFromModuleToAccount(ctx context.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error - SendCoinsFromAccountToModule(ctx context.Context, senderAddr sdk.AccAddress, recipientModule string, amt sdk.Coins) error - MintCoins(ctx context.Context, name string, amt sdk.Coins) error - BurnCoins(ctx context.Context, name string, amt sdk.Coins) error - GetAllBalances(ctx context.Context, addr sdk.AccAddress) sdk.Coins - GetDenomMetaData(ctx context.Context, denom string) (bank.Metadata, bool) - GetSupply(ctx context.Context, denom string) sdk.Coin -} - -type SlashingKeeper interface { - GetValidatorSigningInfo(ctx context.Context, address sdk.ConsAddress) (info slashingtypes.ValidatorSigningInfo, err error) -} - -type DistributionKeeper interface { - FundCommunityPool(ctx context.Context, amount sdk.Coins, sender sdk.AccAddress) error - GetFeePool(ctx context.Context) (feePool types.FeePool) - SetFeePool(ctx context.Context, feePool types.FeePool) -} diff --git a/chain/peggy/types/genesis.go b/chain/peggy/types/genesis.go deleted file mode 100644 index 46fd33ed..00000000 --- a/chain/peggy/types/genesis.go +++ /dev/null @@ -1,19 +0,0 @@ -package types - -import "cosmossdk.io/errors" - -// ValidateBasic validates genesis state by looping through the params and -// calling their validation functions -func (s GenesisState) ValidateBasic() error { - if err := s.Params.ValidateBasic(); err != nil { - return errors.Wrap(err, "params") - } - return nil -} - -// DefaultGenesisState returns empty genesis state -func DefaultGenesisState() *GenesisState { - return &GenesisState{ - Params: DefaultParams(), - } -} diff --git a/chain/peggy/types/key.go b/chain/peggy/types/key.go index f1c4449c..c6091c9d 100644 --- a/chain/peggy/types/key.go +++ b/chain/peggy/types/key.go @@ -113,6 +113,9 @@ var ( PastEthSignatureCheckpointKey = []byte{0x1b} EthereumBlacklistKey = []byte{0x1c} + + // FakeCheckpointKey indexes eth signature checkpoints that never existed + FakeCheckpointKey = []byte{0x1d} ) func GetEthereumBlacklistStoreKey(addr common.Address) []byte { @@ -291,3 +294,8 @@ func GetERC20ToCosmosDenomKey(tokenContract common.Address) []byte { func GetPastEthSignatureCheckpointKey(checkpoint common.Hash) []byte { return append(PastEthSignatureCheckpointKey, checkpoint[:]...) } + +// GetFakeCheckpointKey indexes fake checkpoints previously signed by a validator +func GetFakeCheckpointKey(signature []byte) []byte { + return append(FakeCheckpointKey, signature...) +} diff --git a/chain/peggy/types/msgs.go b/chain/peggy/types/msgs.go index c1910b4f..2b866974 100644 --- a/chain/peggy/types/msgs.go +++ b/chain/peggy/types/msgs.go @@ -331,7 +331,7 @@ func (msg MsgDepositClaim) GetSignBytes() []byte { func (msg MsgDepositClaim) GetClaimer() sdk.AccAddress { err := msg.ValidateBasic() if err != nil { - panic("MsgDepositClaim failed ValidateBasic! Should have been handled earlier") + panic("MsgDepositClaim failed ValidateBasic! Should have been handled earlier:" + err.Error()) } val, _ := sdk.AccAddressFromBech32(msg.Orchestrator) diff --git a/chain/peggy/types/params.go b/chain/peggy/types/params.go index b518fc22..3185f14b 100644 --- a/chain/peggy/types/params.go +++ b/chain/peggy/types/params.go @@ -34,6 +34,7 @@ func DefaultParams() *Params { UnbondSlashingValsetsWindow: 10000, ClaimSlashingEnabled: false, Admins: nil, + SegregatedWalletAddress: "", } } @@ -103,6 +104,10 @@ func (p Params) ValidateBasic() error { return errors.Wrap(err, "admins") } + if err := validateSegregatedWallet(p.SegregatedWalletAddress); err != nil { + return errors.Wrap(err, "segregated wallet address") + } + return nil } @@ -320,3 +325,20 @@ func validateAdmins(i interface{}) error { return nil } + +func validateSegregatedWallet(i interface{}) error { + str, ok := i.(string) + if !ok { + return fmt.Errorf("invalid parameter type: %T", i) + } + + if str == "" { + return nil + } + + if _, err := sdk.AccAddressFromBech32(str); err != nil { + return fmt.Errorf("invalid address %s: %w", str, err) + } + + return nil +} diff --git a/chain/peggy/types/params.pb.go b/chain/peggy/types/params.pb.go index 0d2bacca..e31cb171 100644 --- a/chain/peggy/types/params.pb.go +++ b/chain/peggy/types/params.pb.go @@ -49,6 +49,8 @@ type Params struct { BridgeContractStartHeight uint64 `protobuf:"varint,20,opt,name=bridge_contract_start_height,json=bridgeContractStartHeight,proto3" json:"bridge_contract_start_height,omitempty"` ValsetReward types.Coin `protobuf:"bytes,21,opt,name=valset_reward,json=valsetReward,proto3" json:"valset_reward"` Admins []string `protobuf:"bytes,22,rep,name=admins,proto3" json:"admins,omitempty"` + // address for receiving Peggy Deposits from sanctioned Ethereum addresses + SegregatedWalletAddress string `protobuf:"bytes,23,opt,name=segregated_wallet_address,json=segregatedWalletAddress,proto3" json:"segregated_wallet_address,omitempty"` } func (m *Params) Reset() { *m = Params{} } @@ -203,6 +205,13 @@ func (m *Params) GetAdmins() []string { return nil } +func (m *Params) GetSegregatedWalletAddress() string { + if m != nil { + return m.SegregatedWalletAddress + } + return "" +} + func init() { proto.RegisterType((*Params)(nil), "injective.peggy.v1.Params") } @@ -210,58 +219,59 @@ func init() { func init() { proto.RegisterFile("injective/peggy/v1/params.proto", fileDescriptor_f21ffdf8d29783da) } var fileDescriptor_f21ffdf8d29783da = []byte{ - // 803 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x95, 0x41, 0x6f, 0x23, 0x35, - 0x14, 0xc7, 0x33, 0x6c, 0xe9, 0xb6, 0xde, 0x96, 0x6e, 0xdd, 0xa4, 0xeb, 0xb6, 0x4b, 0x1a, 0x81, - 0x84, 0xa2, 0x15, 0xcc, 0xb4, 0x05, 0x71, 0x00, 0x21, 0x44, 0xd2, 0xa2, 0xad, 0xd8, 0x03, 0x4a, - 0x81, 0x95, 0xb8, 0x58, 0x9e, 0xb1, 0x77, 0xc6, 0x74, 0xc6, 0xae, 0xc6, 0x4e, 0xaa, 0xde, 0x38, - 0x73, 0xe2, 0xa3, 0xf0, 0x31, 0xf6, 0xb8, 0x47, 0x84, 0xd0, 0x0a, 0xb5, 0x07, 0x24, 0x3e, 0x05, - 0xf2, 0xb3, 0x27, 0x49, 0x03, 0x87, 0x6a, 0x2f, 0x55, 0xed, 0xdf, 0xff, 0xff, 0x9e, 0xf3, 0xec, - 0xfc, 0x83, 0xf6, 0xa5, 0xfa, 0x49, 0x64, 0x56, 0x4e, 0x44, 0x72, 0x21, 0xf2, 0xfc, 0x2a, 0x99, - 0x1c, 0x26, 0x17, 0xac, 0x66, 0x95, 0x89, 0x2f, 0x6a, 0x6d, 0x35, 0xc6, 0x53, 0x41, 0x0c, 0x82, - 0x78, 0x72, 0xb8, 0xdb, 0xce, 0x75, 0xae, 0x01, 0x27, 0xee, 0x3f, 0xaf, 0xdc, 0xed, 0x66, 0xda, - 0x54, 0xda, 0x24, 0x29, 0x33, 0x22, 0x99, 0x1c, 0xa6, 0xc2, 0xb2, 0xc3, 0x24, 0xd3, 0x52, 0x05, - 0xbe, 0xc9, 0x2a, 0xa9, 0x74, 0x02, 0x7f, 0xfd, 0xd6, 0x7b, 0xff, 0x20, 0xb4, 0xfc, 0x2d, 0x74, - 0xc3, 0x3b, 0x68, 0x05, 0xea, 0x53, 0xc9, 0x49, 0xd4, 0x8b, 0xfa, 0xab, 0xa3, 0xfb, 0xb0, 0x3e, - 0xe5, 0xf8, 0x00, 0xb5, 0x33, 0xad, 0x6c, 0xcd, 0x32, 0x4b, 0x8d, 0x1e, 0xd7, 0x99, 0xa0, 0x05, - 0x33, 0x05, 0x79, 0x0b, 0x64, 0xb8, 0x61, 0x67, 0x80, 0x9e, 0x32, 0x53, 0xe0, 0x4f, 0xd1, 0xa3, - 0xb4, 0x96, 0x3c, 0x17, 0x54, 0xd8, 0x42, 0xd4, 0x62, 0x5c, 0x51, 0xc6, 0x79, 0x2d, 0x8c, 0x21, - 0xf7, 0xc0, 0xd4, 0xf1, 0xf8, 0x24, 0xd0, 0xaf, 0x3c, 0xc4, 0x1f, 0xa0, 0x8d, 0xe0, 0xcb, 0x0a, - 0x26, 0x95, 0x3b, 0xcb, 0x52, 0x2f, 0xea, 0x2f, 0x8d, 0xd6, 0xfd, 0xf6, 0xd0, 0xed, 0x9e, 0x72, - 0x7c, 0x84, 0x3a, 0x46, 0xe6, 0x4a, 0x70, 0x3a, 0x61, 0xa5, 0x11, 0xd6, 0xd0, 0x4b, 0xa9, 0xb8, - 0xbe, 0x24, 0x6f, 0x83, 0x7a, 0xcb, 0xc3, 0x1f, 0x3c, 0x7b, 0x0e, 0x68, 0xce, 0x93, 0x32, 0x9b, - 0x15, 0x62, 0xea, 0x59, 0x9e, 0xf7, 0x0c, 0x3c, 0x0b, 0x9e, 0x03, 0xd4, 0x0e, 0x9e, 0xac, 0x64, - 0xb2, 0x9a, 0x5a, 0xee, 0x83, 0x05, 0x7b, 0x36, 0x04, 0x34, 0x73, 0x58, 0x56, 0xe7, 0xc2, 0xfa, - 0x2e, 0xd4, 0xca, 0x4a, 0xe8, 0xb1, 0x25, 0x2b, 0xde, 0xe1, 0x19, 0x34, 0xf9, 0xce, 0x13, 0xfc, - 0x21, 0xc2, 0x6c, 0x22, 0x6a, 0x96, 0x0b, 0x9a, 0x96, 0x3a, 0x3b, 0x07, 0x0b, 0x59, 0x05, 0xfd, - 0xc3, 0x40, 0x06, 0x0e, 0x38, 0x03, 0xfe, 0x02, 0xed, 0x35, 0xea, 0xe9, 0x68, 0xe7, 0x6c, 0x08, - 0x6c, 0x24, 0x48, 0x9a, 0xf1, 0xce, 0xec, 0xcf, 0x51, 0xc7, 0x94, 0xcc, 0x14, 0xf4, 0x85, 0xbb, - 0x31, 0xa9, 0x55, 0x18, 0x20, 0x79, 0xd0, 0x8b, 0xfa, 0x6b, 0x83, 0xf7, 0x5f, 0xbe, 0xde, 0x6f, - 0xfd, 0xf1, 0x7a, 0x7f, 0xcf, 0x3f, 0x25, 0xc3, 0xcf, 0x63, 0xa9, 0x93, 0x8a, 0xd9, 0x22, 0x7e, - 0x26, 0x72, 0x96, 0x5d, 0x1d, 0x8b, 0x6c, 0xb4, 0x05, 0x15, 0xbe, 0x0e, 0x05, 0xfc, 0x90, 0xf1, - 0xf7, 0xa8, 0xbd, 0x50, 0x18, 0x3e, 0x3f, 0x59, 0xbb, 0x7b, 0x5d, 0x7c, 0xab, 0x2e, 0xcc, 0xe8, - 0x7f, 0xca, 0xc2, 0x45, 0x90, 0xf5, 0x37, 0x2d, 0x0b, 0x97, 0x85, 0x4b, 0xd4, 0x5b, 0x2c, 0xab, - 0xd5, 0x8b, 0x52, 0x66, 0x56, 0xaa, 0x3c, 0xb4, 0x78, 0xe7, 0xee, 0x2d, 0xde, 0xbd, 0xdd, 0x62, - 0x56, 0xca, 0x77, 0x1b, 0xa2, 0xee, 0x58, 0xa5, 0x5a, 0x71, 0x0a, 0x3a, 0xd7, 0x62, 0xe1, 0xd9, - 0x6e, 0xc0, 0xb5, 0xed, 0x79, 0xd5, 0x59, 0x10, 0xdd, 0x7e, 0xbe, 0xe7, 0xff, 0x39, 0x72, 0xca, - 0xb8, 0x7b, 0x03, 0xd4, 0xbd, 0x42, 0x66, 0xc7, 0xb5, 0x20, 0x0f, 0xef, 0x7e, 0xe4, 0xc7, 0x0b, - 0xc3, 0xe6, 0x27, 0xb6, 0x38, 0x6b, 0x0a, 0xe1, 0x27, 0x68, 0xd3, 0x9b, 0xa9, 0xcb, 0x0f, 0xca, - 0x85, 0xd2, 0x15, 0xd9, 0x84, 0x6f, 0xee, 0x86, 0x07, 0x43, 0x2d, 0xd5, 0xb1, 0xdb, 0xc6, 0x9f, - 0xa3, 0xdd, 0x79, 0xad, 0xa8, 0xb3, 0xa3, 0x03, 0xda, 0x64, 0x02, 0xc1, 0x60, 0x7a, 0x34, 0x33, - 0x9d, 0x38, 0x3e, 0x0c, 0x18, 0x7f, 0x82, 0xb6, 0x61, 0xda, 0xb3, 0xc9, 0x08, 0xc5, 0xd2, 0x52, - 0x70, 0xb2, 0xd5, 0x8b, 0xfa, 0x2b, 0xa3, 0x36, 0xd0, 0x66, 0x22, 0x27, 0x9e, 0xe1, 0x2f, 0xd1, - 0xe3, 0x26, 0x26, 0xa6, 0xb9, 0x64, 0x59, 0x6d, 0x69, 0x21, 0x64, 0x5e, 0x58, 0xd2, 0x86, 0x71, - 0xee, 0x84, 0xcc, 0x68, 0xe2, 0xc9, 0x29, 0x9e, 0x82, 0x00, 0x1f, 0xa3, 0x75, 0x7f, 0x03, 0xb4, - 0x16, 0x97, 0xac, 0xe6, 0xa4, 0xd3, 0x8b, 0xfa, 0x0f, 0x8e, 0x76, 0x62, 0x7f, 0xce, 0xd8, 0x45, - 0x68, 0x1c, 0x22, 0x34, 0x76, 0xa7, 0x1e, 0x2c, 0xb9, 0xa1, 0x8e, 0xd6, 0xbc, 0x6b, 0x04, 0x26, - 0xbc, 0x8d, 0x96, 0x19, 0xaf, 0xa4, 0x32, 0x64, 0xbb, 0x77, 0xaf, 0xbf, 0x3a, 0x0a, 0xab, 0xcf, - 0x3a, 0x3f, 0xff, 0xd9, 0x6b, 0xfd, 0xf2, 0xf7, 0x6f, 0x4f, 0xd6, 0x7c, 0xa4, 0xfb, 0x84, 0x1d, - 0x88, 0x97, 0xd7, 0xdd, 0xe8, 0xd5, 0x75, 0x37, 0xfa, 0xeb, 0xba, 0x1b, 0xfd, 0x7a, 0xd3, 0x6d, - 0xbd, 0xba, 0xe9, 0xb6, 0x7e, 0xbf, 0xe9, 0xb6, 0x7e, 0xfc, 0x26, 0x97, 0xb6, 0x18, 0xa7, 0x71, - 0xa6, 0xab, 0xe4, 0xb4, 0x89, 0xfb, 0x67, 0x2c, 0x35, 0xc9, 0x34, 0xfc, 0x3f, 0xca, 0x74, 0x2d, - 0xe6, 0x97, 0x2e, 0x09, 0x93, 0x4a, 0xf3, 0x71, 0x29, 0x4c, 0xf8, 0xe9, 0xb0, 0x57, 0x17, 0xc2, - 0xa4, 0xcb, 0x10, 0xed, 0x1f, 0xff, 0x1b, 0x00, 0x00, 0xff, 0xff, 0x8b, 0xfa, 0xa0, 0xe8, 0x5a, - 0x06, 0x00, 0x00, + // 830 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x55, 0xcf, 0x6f, 0x23, 0x35, + 0x18, 0xcd, 0xb0, 0xa5, 0xdb, 0xba, 0x2d, 0xdd, 0xba, 0x49, 0xeb, 0xb6, 0x4b, 0x3a, 0x02, 0x09, + 0x45, 0x2b, 0x98, 0x69, 0x0b, 0xe2, 0xb0, 0x08, 0x21, 0x92, 0x16, 0x6d, 0xc5, 0x1e, 0x50, 0x0a, + 0x54, 0xe2, 0x62, 0x79, 0xc6, 0xdf, 0xce, 0x98, 0xce, 0x8c, 0xab, 0xb1, 0x93, 0xaa, 0x37, 0xce, + 0x9c, 0xf8, 0x2b, 0x38, 0xf3, 0x67, 0xec, 0x71, 0x8f, 0x08, 0xa1, 0x0a, 0xb5, 0x07, 0xfe, 0x0d, + 0xe4, 0x1f, 0x93, 0xa4, 0x81, 0x43, 0xc5, 0x25, 0x8a, 0xfd, 0xde, 0xfb, 0x3e, 0xe7, 0xd9, 0x79, + 0x1f, 0xda, 0x17, 0xd5, 0x8f, 0x90, 0x6a, 0x31, 0x86, 0xf8, 0x12, 0xb2, 0xec, 0x3a, 0x1e, 0x1f, + 0xc6, 0x97, 0xac, 0x66, 0xa5, 0x8a, 0x2e, 0x6b, 0xa9, 0x25, 0xc6, 0x13, 0x42, 0x64, 0x09, 0xd1, + 0xf8, 0x70, 0xb7, 0x9d, 0xc9, 0x4c, 0x5a, 0x38, 0x36, 0xdf, 0x1c, 0x73, 0xb7, 0x9b, 0x4a, 0x55, + 0x4a, 0x15, 0x27, 0x4c, 0x41, 0x3c, 0x3e, 0x4c, 0x40, 0xb3, 0xc3, 0x38, 0x95, 0xa2, 0xf2, 0xf8, + 0x06, 0x2b, 0x45, 0x25, 0x63, 0xfb, 0xe9, 0xb6, 0xde, 0xfb, 0x75, 0x05, 0x2d, 0x7e, 0x63, 0xbb, + 0xe1, 0x1d, 0xb4, 0x64, 0xeb, 0x53, 0xc1, 0x49, 0x10, 0x06, 0xbd, 0xe5, 0xe1, 0x63, 0xbb, 0x3e, + 0xe5, 0xf8, 0x00, 0xb5, 0x53, 0x59, 0xe9, 0x9a, 0xa5, 0x9a, 0x2a, 0x39, 0xaa, 0x53, 0xa0, 0x39, + 0x53, 0x39, 0x79, 0xcb, 0xd2, 0x70, 0x83, 0x9d, 0x59, 0xe8, 0x05, 0x53, 0x39, 0xfe, 0x14, 0x6d, + 0x27, 0xb5, 0xe0, 0x19, 0x50, 0xd0, 0x39, 0xd4, 0x30, 0x2a, 0x29, 0xe3, 0xbc, 0x06, 0xa5, 0xc8, + 0x23, 0x2b, 0xea, 0x38, 0xf8, 0xc4, 0xa3, 0x5f, 0x3a, 0x10, 0x7f, 0x80, 0xd6, 0xbd, 0x2e, 0xcd, + 0x99, 0xa8, 0xcc, 0x59, 0x16, 0xc2, 0xa0, 0xb7, 0x30, 0x5c, 0x73, 0xdb, 0x03, 0xb3, 0x7b, 0xca, + 0xf1, 0x11, 0xea, 0x28, 0x91, 0x55, 0xc0, 0xe9, 0x98, 0x15, 0x0a, 0xb4, 0xa2, 0x57, 0xa2, 0xe2, + 0xf2, 0x8a, 0xbc, 0x6d, 0xd9, 0x9b, 0x0e, 0xfc, 0xde, 0x61, 0xe7, 0x16, 0x9a, 0xd1, 0x24, 0x4c, + 0xa7, 0x39, 0x4c, 0x34, 0x8b, 0xb3, 0x9a, 0xbe, 0xc3, 0xbc, 0xe6, 0x00, 0xb5, 0xbd, 0x26, 0x2d, + 0x98, 0x28, 0x27, 0x92, 0xc7, 0x56, 0x82, 0x1d, 0x36, 0xb0, 0xd0, 0x54, 0xa1, 0x59, 0x9d, 0x81, + 0x76, 0x5d, 0xa8, 0x16, 0x25, 0xc8, 0x91, 0x26, 0x4b, 0x4e, 0xe1, 0x30, 0xdb, 0xe4, 0x5b, 0x87, + 0xe0, 0x0f, 0x11, 0x66, 0x63, 0xa8, 0x59, 0x06, 0x34, 0x29, 0x64, 0x7a, 0x61, 0x25, 0x64, 0xd9, + 0xf2, 0x9f, 0x78, 0xa4, 0x6f, 0x00, 0x23, 0xc0, 0x9f, 0xa3, 0xbd, 0x86, 0x3d, 0xb1, 0x76, 0x46, + 0x86, 0xac, 0x8c, 0x78, 0x4a, 0x63, 0xef, 0x54, 0x7e, 0x8e, 0x3a, 0xaa, 0x60, 0x2a, 0xa7, 0xaf, + 0xcc, 0x8d, 0x09, 0x59, 0x79, 0x03, 0xc9, 0x4a, 0x18, 0xf4, 0x56, 0xfb, 0xef, 0xbf, 0xbe, 0xd9, + 0x6f, 0xfd, 0x71, 0xb3, 0xbf, 0xe7, 0x9e, 0x92, 0xe2, 0x17, 0x91, 0x90, 0x71, 0xc9, 0x74, 0x1e, + 0xbd, 0x84, 0x8c, 0xa5, 0xd7, 0xc7, 0x90, 0x0e, 0x37, 0x6d, 0x85, 0xaf, 0x7c, 0x01, 0x67, 0x32, + 0xfe, 0x0e, 0xb5, 0xe7, 0x0a, 0xdb, 0xdf, 0x4f, 0x56, 0x1f, 0x5e, 0x17, 0xdf, 0xab, 0x6b, 0x3d, + 0xfa, 0x8f, 0xb2, 0xf6, 0x22, 0xc8, 0xda, 0xff, 0x2d, 0x6b, 0x2f, 0x0b, 0x17, 0x28, 0x9c, 0x2f, + 0x2b, 0xab, 0x57, 0x85, 0x48, 0xb5, 0xa8, 0x32, 0xdf, 0xe2, 0x9d, 0x87, 0xb7, 0x78, 0xf7, 0x7e, + 0x8b, 0x69, 0x29, 0xd7, 0x6d, 0x80, 0xba, 0xa3, 0x2a, 0x91, 0x15, 0xa7, 0x96, 0x67, 0x5a, 0xcc, + 0x3d, 0xdb, 0x75, 0x7b, 0x6d, 0x7b, 0x8e, 0x75, 0xe6, 0x49, 0xf7, 0x9f, 0xef, 0xc5, 0xbf, 0x8e, + 0x9c, 0x30, 0x6e, 0xde, 0x00, 0x35, 0xaf, 0x90, 0xe9, 0x51, 0x0d, 0xe4, 0xc9, 0xc3, 0x8f, 0xfc, + 0x74, 0xce, 0x6c, 0x7e, 0xa2, 0xf3, 0xb3, 0xa6, 0x10, 0x7e, 0x86, 0x36, 0x9c, 0x98, 0x9a, 0xfc, + 0xa0, 0x1c, 0x2a, 0x59, 0x92, 0x0d, 0xfb, 0xcf, 0x5d, 0x77, 0xc0, 0x40, 0x8a, 0xea, 0xd8, 0x6c, + 0xe3, 0xcf, 0xd0, 0xee, 0x2c, 0x17, 0xea, 0xf4, 0xe8, 0x80, 0x36, 0x99, 0x40, 0xb0, 0x15, 0x6d, + 0x4f, 0x45, 0x27, 0x06, 0x1f, 0x78, 0x18, 0x7f, 0x82, 0xb6, 0xac, 0xdb, 0x53, 0x67, 0xa0, 0x62, + 0x49, 0x01, 0x9c, 0x6c, 0x86, 0x41, 0x6f, 0x69, 0xd8, 0xb6, 0x68, 0xe3, 0xc8, 0x89, 0xc3, 0xf0, + 0x17, 0xe8, 0x69, 0x13, 0x13, 0x93, 0x5c, 0xd2, 0xac, 0xd6, 0x34, 0x07, 0x91, 0xe5, 0x9a, 0xb4, + 0xad, 0x9d, 0x3b, 0x3e, 0x33, 0x9a, 0x78, 0x32, 0x8c, 0x17, 0x96, 0x80, 0x8f, 0xd1, 0x9a, 0xbb, + 0x01, 0x5a, 0xc3, 0x15, 0xab, 0x39, 0xe9, 0x84, 0x41, 0x6f, 0xe5, 0x68, 0x27, 0x72, 0xe7, 0x8c, + 0x4c, 0x84, 0x46, 0x3e, 0x42, 0x23, 0x73, 0xea, 0xfe, 0x82, 0x31, 0x75, 0xb8, 0xea, 0x54, 0x43, + 0x2b, 0xc2, 0x5b, 0x68, 0x91, 0xf1, 0x52, 0x54, 0x8a, 0x6c, 0x85, 0x8f, 0x7a, 0xcb, 0x43, 0xbf, + 0xc2, 0xcf, 0xd1, 0x8e, 0x82, 0xac, 0x86, 0x8c, 0x69, 0xe0, 0xf4, 0x8a, 0x15, 0x05, 0xe8, 0x49, + 0xfe, 0x6d, 0x3b, 0x43, 0xa6, 0x84, 0x73, 0x8b, 0xfb, 0x04, 0x7c, 0xde, 0xf9, 0xe9, 0xcf, 0xb0, + 0xf5, 0xf3, 0xdf, 0xbf, 0x3d, 0x5b, 0x75, 0xe3, 0xc0, 0xa5, 0x73, 0x1f, 0x5e, 0xdf, 0x76, 0x83, + 0x37, 0xb7, 0xdd, 0xe0, 0xaf, 0xdb, 0x6e, 0xf0, 0xcb, 0x5d, 0xb7, 0xf5, 0xe6, 0xae, 0xdb, 0xfa, + 0xfd, 0xae, 0xdb, 0xfa, 0xe1, 0xeb, 0x4c, 0xe8, 0x7c, 0x94, 0x44, 0xa9, 0x2c, 0xe3, 0xd3, 0x66, + 0x54, 0xbc, 0x64, 0x89, 0x8a, 0x27, 0x83, 0xe3, 0xa3, 0x54, 0xd6, 0x30, 0xbb, 0x34, 0x29, 0x1a, + 0x97, 0x92, 0x8f, 0x0a, 0x50, 0x7e, 0xec, 0xe8, 0xeb, 0x4b, 0x50, 0xc9, 0xa2, 0x1d, 0x0b, 0x1f, + 0xff, 0x13, 0x00, 0x00, 0xff, 0xff, 0xec, 0xc3, 0x94, 0xd9, 0x96, 0x06, 0x00, 0x00, } func (m *Params) Marshal() (dAtA []byte, err error) { @@ -284,6 +294,15 @@ func (m *Params) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if len(m.SegregatedWalletAddress) > 0 { + i -= len(m.SegregatedWalletAddress) + copy(dAtA[i:], m.SegregatedWalletAddress) + i = encodeVarintParams(dAtA, i, uint64(len(m.SegregatedWalletAddress))) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xba + } if len(m.Admins) > 0 { for iNdEx := len(m.Admins) - 1; iNdEx >= 0; iNdEx-- { i -= len(m.Admins[iNdEx]) @@ -545,6 +564,10 @@ func (m *Params) Size() (n int) { n += 2 + l + sovParams(uint64(l)) } } + l = len(m.SegregatedWalletAddress) + if l > 0 { + n += 2 + l + sovParams(uint64(l)) + } return n } @@ -1164,6 +1187,38 @@ func (m *Params) Unmarshal(dAtA []byte) error { } m.Admins = append(m.Admins, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex + case 23: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SegregatedWalletAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowParams + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthParams + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthParams + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SegregatedWalletAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipParams(dAtA[iNdEx:]) diff --git a/chain/peggy/types/params_legacy.go b/chain/peggy/types/params_legacy.go deleted file mode 100644 index f64a9856..00000000 --- a/chain/peggy/types/params_legacy.go +++ /dev/null @@ -1,108 +0,0 @@ -package types - -import paramtypes "github.com/cosmos/cosmos-sdk/x/params/types" - -var ( - // ParamsStoreKeyPeggyID stores the peggy id - ParamsStoreKeyPeggyID = []byte("PeggyID") - - // ParamsStoreKeyContractHash stores the contract hash - ParamsStoreKeyContractHash = []byte("ContractHash") - - // ParamsStoreKeyBridgeContractAddress stores the contract address - ParamsStoreKeyBridgeContractAddress = []byte("BridgeContractAddress") - - // ParamsStoreKeyBridgeContractStartHeight stores the bridge contract deployed height - ParamsStoreKeyBridgeContractStartHeight = []byte("BridgeContractChainHeight") - - // ParamsStoreKeyBridgeContractChainID stores the bridge chain id - ParamsStoreKeyBridgeContractChainID = []byte("BridgeChainID") - - // ParamsStoreKeyCosmosCoinDenom stores native cosmos coin denom - ParamsStoreKeyCosmosCoinDenom = []byte("CosmosCoinDenom") - - // ParamsStoreKeyCosmosCoinErc20Contract store L1 erc20 contract address of cosmos native coin - ParamsStoreKeyCosmosCoinErc20Contract = []byte("CosmosCoinErc20Contract") - - // ParamsStoreKeySignedValsetsWindow stores the signed blocks window - ParamsStoreKeySignedValsetsWindow = []byte("SignedValsetsWindow") - - // ParamsStoreKeySignedBatchesWindow stores the signed blocks window - ParamsStoreKeySignedBatchesWindow = []byte("SignedBatchesWindow") - - // ParamsStoreKeySignedClaimsWindow stores the signed blocks window - ParamsStoreKeySignedClaimsWindow = []byte("SignedClaimsWindow") - - // ParamsStoreKeyTargetBatchTimeout stores - ParamsStoreKeyTargetBatchTimeout = []byte("TargetBatchTimeout") - - // ParamsStoreKeyAverageBlockTime stores the average block time of the Injective Chain in milliseconds - ParamsStoreKeyAverageBlockTime = []byte("AverageBlockTime") - - // ParamsStoreKeyAverageEthereumBlockTime stores the average block time of Ethereum in milliseconds - ParamsStoreKeyAverageEthereumBlockTime = []byte("AverageEthereumBlockTime") - - // ParamsStoreSlashFractionValset stores the slash fraction valset - ParamsStoreSlashFractionValset = []byte("SlashFractionValset") - - // ParamsStoreSlashFractionBatch stores the slash fraction Batch - ParamsStoreSlashFractionBatch = []byte("SlashFractionBatch") - - // ParamsStoreSlashFractionClaim stores the slash fraction Claim - ParamsStoreSlashFractionClaim = []byte("SlashFractionClaim") - - // ParamsStoreSlashFractionConflictingClaim stores the slash fraction ConflictingClaim - ParamsStoreSlashFractionConflictingClaim = []byte("SlashFractionConflictingClaim") - - // ParamStoreUnbondSlashingValsetsWindow stores unbond slashing valset window - ParamStoreUnbondSlashingValsetsWindow = []byte("UnbondSlashingValsetsWindow") - - // ParamStoreClaimSlashingEnabled stores ClaimSlashing is enabled or not - ParamStoreClaimSlashingEnabled = []byte("ClaimSlashingEnabled") - - // ParamStoreSlashFractionBadEthSignature stores the amount by which a validator making a fraudulent eth signature will be slashed - ParamStoreSlashFractionBadEthSignature = []byte("SlashFractionBadEthSignature") - - // ParamStoreValsetRewardAmount is the amount of the coin, both denom and amount to issue - // to a relayer when they relay a valset - ParamStoreValsetRewardAmount = []byte("ValsetReward") - - ParamStoreAdmins = []byte("Admins") - - // Ensure that params implements the proper interface - _ paramtypes.ParamSet = &Params{} -) - -// ParamKeyTable for auth module -func ParamKeyTable() paramtypes.KeyTable { - return paramtypes.NewKeyTable().RegisterParamSet(&Params{}) -} - -// ParamSetPairs implements the ParamSet interface and returns all the key/value pairs -// pairs of auth module's parameters. -func (p *Params) ParamSetPairs() paramtypes.ParamSetPairs { - return paramtypes.ParamSetPairs{ - paramtypes.NewParamSetPair(ParamsStoreKeyPeggyID, &p.PeggyId, validatePeggyID), - paramtypes.NewParamSetPair(ParamsStoreKeyContractHash, &p.ContractSourceHash, validateContractHash), - paramtypes.NewParamSetPair(ParamsStoreKeyBridgeContractAddress, &p.BridgeEthereumAddress, validateBridgeContractAddress), - paramtypes.NewParamSetPair(ParamsStoreKeyBridgeContractChainID, &p.BridgeChainId, validateBridgeChainID), - paramtypes.NewParamSetPair(ParamsStoreKeyCosmosCoinDenom, &p.CosmosCoinDenom, validateCosmosCoinDenom), - paramtypes.NewParamSetPair(ParamsStoreKeyCosmosCoinErc20Contract, &p.CosmosCoinErc20Contract, validateCosmosCoinErc20Contract), - paramtypes.NewParamSetPair(ParamsStoreKeySignedValsetsWindow, &p.SignedValsetsWindow, validateSignedValsetsWindow), - paramtypes.NewParamSetPair(ParamsStoreKeySignedBatchesWindow, &p.SignedBatchesWindow, validateSignedBatchesWindow), - paramtypes.NewParamSetPair(ParamsStoreKeySignedClaimsWindow, &p.SignedClaimsWindow, validateSignedClaimsWindow), - paramtypes.NewParamSetPair(ParamsStoreKeyAverageBlockTime, &p.AverageBlockTime, validateAverageBlockTime), - paramtypes.NewParamSetPair(ParamsStoreKeyTargetBatchTimeout, &p.TargetBatchTimeout, validateTargetBatchTimeout), - paramtypes.NewParamSetPair(ParamsStoreKeyAverageEthereumBlockTime, &p.AverageEthereumBlockTime, validateAverageEthereumBlockTime), - paramtypes.NewParamSetPair(ParamsStoreSlashFractionValset, &p.SlashFractionValset, validateSlashFractionValset), - paramtypes.NewParamSetPair(ParamsStoreSlashFractionBatch, &p.SlashFractionBatch, validateSlashFractionBatch), - paramtypes.NewParamSetPair(ParamsStoreSlashFractionClaim, &p.SlashFractionClaim, validateSlashFractionClaim), - paramtypes.NewParamSetPair(ParamsStoreSlashFractionConflictingClaim, &p.SlashFractionConflictingClaim, validateSlashFractionConflictingClaim), - paramtypes.NewParamSetPair(ParamStoreSlashFractionBadEthSignature, &p.SlashFractionBadEthSignature, validateSlashFractionBadEthSignature), - paramtypes.NewParamSetPair(ParamStoreUnbondSlashingValsetsWindow, &p.UnbondSlashingValsetsWindow, validateUnbondSlashingValsetsWindow), - paramtypes.NewParamSetPair(ParamStoreClaimSlashingEnabled, &p.ClaimSlashingEnabled, validateClaimSlashingEnabled), - paramtypes.NewParamSetPair(ParamsStoreKeyBridgeContractStartHeight, &p.BridgeContractStartHeight, validateBridgeContractStartHeight), - paramtypes.NewParamSetPair(ParamStoreValsetRewardAmount, &p.ValsetReward, validateValsetReward), - paramtypes.NewParamSetPair(ParamStoreAdmins, &p.Admins, validateAdmins), - } -} diff --git a/chain/peggy/types/proposal.go b/chain/peggy/types/proposal.go deleted file mode 100644 index 5d55dfbe..00000000 --- a/chain/peggy/types/proposal.go +++ /dev/null @@ -1,76 +0,0 @@ -package types - -import ( - govtypes "github.com/cosmos/cosmos-sdk/x/gov/types/v1beta1" -) - -// constants -const ( - ProposalTypeBlacklistEthereumAddresses string = "ProposalTypeBlacklistEthereumAddresses" - ProposalTypeRevokeEthereumBlacklist string = "ProposalTypeRevokeEthereumBlacklist" -) - -func init() { - govtypes.RegisterProposalType(ProposalTypeBlacklistEthereumAddresses) - govtypes.RegisterProposalType(ProposalTypeRevokeEthereumBlacklist) -} - -// Implements Proposal Interface -var _ govtypes.Content = &BlacklistEthereumAddressesProposal{} -var _ govtypes.Content = &RevokeEthereumBlacklistProposal{} - -// GetTitle returns the title of this proposal. -func (p *BlacklistEthereumAddressesProposal) GetTitle() string { - return p.Title -} - -// GetDescription returns the description of this proposal. -func (p *BlacklistEthereumAddressesProposal) GetDescription() string { - return p.Description -} - -// ProposalRoute returns router key of this proposal. -func (p *BlacklistEthereumAddressesProposal) ProposalRoute() string { return RouterKey } - -// ProposalType returns proposal type of this proposal. -func (p *BlacklistEthereumAddressesProposal) ProposalType() string { - return ProposalTypeBlacklistEthereumAddresses -} - -// ValidateBasic returns ValidateBasic result of this proposal. -func (p *BlacklistEthereumAddressesProposal) ValidateBasic() error { - for _, blacklistAddress := range p.BlacklistAddresses { - if _, err := NewEthAddress(blacklistAddress); err != nil { - return err - } - } - return govtypes.ValidateAbstract(p) -} - -// GetTitle returns the title of this proposal. -func (p *RevokeEthereumBlacklistProposal) GetTitle() string { - return p.Title -} - -// GetDescription returns the description of this proposal. -func (p *RevokeEthereumBlacklistProposal) GetDescription() string { - return p.Description -} - -// ProposalRoute returns router key of this proposal. -func (p *RevokeEthereumBlacklistProposal) ProposalRoute() string { return RouterKey } - -// ProposalType returns proposal type of this proposal. -func (p *RevokeEthereumBlacklistProposal) ProposalType() string { - return ProposalTypeRevokeEthereumBlacklist -} - -// ValidateBasic returns ValidateBasic result of this proposal. -func (p *RevokeEthereumBlacklistProposal) ValidateBasic() error { - for _, blacklistAddress := range p.BlacklistAddresses { - if _, err := NewEthAddress(blacklistAddress); err != nil { - return err - } - } - return govtypes.ValidateAbstract(p) -} diff --git a/chain/peggy/types/proposal.pb.go b/chain/peggy/types/proposal.pb.go deleted file mode 100644 index dd9ece2a..00000000 --- a/chain/peggy/types/proposal.pb.go +++ /dev/null @@ -1,667 +0,0 @@ -// Code generated by protoc-gen-gogo. DO NOT EDIT. -// source: injective/peggy/v1/proposal.proto - -package types - -import ( - fmt "fmt" - _ "github.com/cosmos/cosmos-proto" - _ "github.com/cosmos/gogoproto/gogoproto" - proto "github.com/cosmos/gogoproto/proto" - io "io" - math "math" - math_bits "math/bits" -) - -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the proto package it is being compiled against. -// A compilation error at this line likely means your copy of the -// proto package needs to be updated. -const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package - -type BlacklistEthereumAddressesProposal struct { - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` - Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` - BlacklistAddresses []string `protobuf:"bytes,3,rep,name=blacklist_addresses,json=blacklistAddresses,proto3" json:"blacklist_addresses,omitempty"` -} - -func (m *BlacklistEthereumAddressesProposal) Reset() { *m = BlacklistEthereumAddressesProposal{} } -func (m *BlacklistEthereumAddressesProposal) String() string { return proto.CompactTextString(m) } -func (*BlacklistEthereumAddressesProposal) ProtoMessage() {} -func (*BlacklistEthereumAddressesProposal) Descriptor() ([]byte, []int) { - return fileDescriptor_e5b158ea063afb2f, []int{0} -} -func (m *BlacklistEthereumAddressesProposal) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *BlacklistEthereumAddressesProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_BlacklistEthereumAddressesProposal.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *BlacklistEthereumAddressesProposal) XXX_Merge(src proto.Message) { - xxx_messageInfo_BlacklistEthereumAddressesProposal.Merge(m, src) -} -func (m *BlacklistEthereumAddressesProposal) XXX_Size() int { - return m.Size() -} -func (m *BlacklistEthereumAddressesProposal) XXX_DiscardUnknown() { - xxx_messageInfo_BlacklistEthereumAddressesProposal.DiscardUnknown(m) -} - -var xxx_messageInfo_BlacklistEthereumAddressesProposal proto.InternalMessageInfo - -type RevokeEthereumBlacklistProposal struct { - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` - Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` - BlacklistAddresses []string `protobuf:"bytes,3,rep,name=blacklist_addresses,json=blacklistAddresses,proto3" json:"blacklist_addresses,omitempty"` -} - -func (m *RevokeEthereumBlacklistProposal) Reset() { *m = RevokeEthereumBlacklistProposal{} } -func (m *RevokeEthereumBlacklistProposal) String() string { return proto.CompactTextString(m) } -func (*RevokeEthereumBlacklistProposal) ProtoMessage() {} -func (*RevokeEthereumBlacklistProposal) Descriptor() ([]byte, []int) { - return fileDescriptor_e5b158ea063afb2f, []int{1} -} -func (m *RevokeEthereumBlacklistProposal) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *RevokeEthereumBlacklistProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_RevokeEthereumBlacklistProposal.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *RevokeEthereumBlacklistProposal) XXX_Merge(src proto.Message) { - xxx_messageInfo_RevokeEthereumBlacklistProposal.Merge(m, src) -} -func (m *RevokeEthereumBlacklistProposal) XXX_Size() int { - return m.Size() -} -func (m *RevokeEthereumBlacklistProposal) XXX_DiscardUnknown() { - xxx_messageInfo_RevokeEthereumBlacklistProposal.DiscardUnknown(m) -} - -var xxx_messageInfo_RevokeEthereumBlacklistProposal proto.InternalMessageInfo - -func init() { - proto.RegisterType((*BlacklistEthereumAddressesProposal)(nil), "injective.peggy.v1.BlacklistEthereumAddressesProposal") - proto.RegisterType((*RevokeEthereumBlacklistProposal)(nil), "injective.peggy.v1.RevokeEthereumBlacklistProposal") -} - -func init() { proto.RegisterFile("injective/peggy/v1/proposal.proto", fileDescriptor_e5b158ea063afb2f) } - -var fileDescriptor_e5b158ea063afb2f = []byte{ - // 323 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x52, 0x3b, 0x4e, 0xc3, 0x40, - 0x10, 0xf5, 0x12, 0x81, 0x14, 0xd3, 0x99, 0x14, 0x21, 0x85, 0x13, 0x52, 0xa0, 0x34, 0xf1, 0xca, - 0xa2, 0xa3, 0x23, 0x88, 0x02, 0x41, 0x81, 0x52, 0xd2, 0x44, 0xfe, 0x8c, 0x9c, 0x25, 0xb6, 0x67, - 0xb5, 0x3b, 0x59, 0x29, 0x37, 0xa0, 0xe4, 0x08, 0x39, 0x03, 0x82, 0x3b, 0x20, 0xaa, 0x94, 0x94, - 0x28, 0x69, 0x38, 0x06, 0xc2, 0x3f, 0xe5, 0x08, 0x74, 0xfb, 0xde, 0x3c, 0xcd, 0x7b, 0xab, 0x37, - 0xf6, 0x99, 0xc8, 0x9f, 0x20, 0x22, 0x61, 0x80, 0x4b, 0x48, 0x92, 0x15, 0x37, 0x3e, 0x97, 0x0a, - 0x25, 0xea, 0x20, 0xf5, 0xa4, 0x42, 0x42, 0xc7, 0x69, 0x24, 0x5e, 0x21, 0xf1, 0x8c, 0xdf, 0x3b, - 0x8d, 0x50, 0x67, 0xa8, 0x67, 0x85, 0x82, 0x97, 0xa0, 0x94, 0xf7, 0x3a, 0x09, 0x26, 0x58, 0xf2, - 0x7f, 0xaf, 0x92, 0x1d, 0xbe, 0x33, 0x7b, 0x38, 0x49, 0x83, 0x68, 0x91, 0x0a, 0x4d, 0x37, 0x34, - 0x07, 0x05, 0xcb, 0xec, 0x2a, 0x8e, 0x15, 0x68, 0x0d, 0xfa, 0xa1, 0x72, 0x74, 0x3a, 0xf6, 0x21, - 0x09, 0x4a, 0xa1, 0xcb, 0x06, 0x6c, 0xd4, 0x9e, 0x96, 0xc0, 0x19, 0xd8, 0xc7, 0x31, 0xe8, 0x48, - 0x09, 0x49, 0x02, 0xf3, 0xee, 0x41, 0x31, 0xdb, 0xa7, 0x1c, 0x6e, 0x9f, 0x84, 0xf5, 0xf6, 0x59, - 0x50, 0xaf, 0xed, 0xb6, 0x06, 0xad, 0x51, 0x7b, 0xea, 0x34, 0xa3, 0xc6, 0xf0, 0xf2, 0xfc, 0x79, - 0xdd, 0xb7, 0x7e, 0xd6, 0x7d, 0xeb, 0xf3, 0x6d, 0xdc, 0xab, 0xf2, 0x27, 0x68, 0x3c, 0xe3, 0x87, - 0x40, 0x81, 0xef, 0x5d, 0x63, 0x4e, 0x90, 0xd3, 0xf0, 0x95, 0xd9, 0xfd, 0x29, 0x18, 0x5c, 0x40, - 0x1d, 0xba, 0xf9, 0xc5, 0xbf, 0x0d, 0x3d, 0x81, 0x8f, 0xad, 0xcb, 0x36, 0x5b, 0x97, 0x7d, 0x6f, - 0x5d, 0xf6, 0xb2, 0x73, 0xad, 0xcd, 0xce, 0xb5, 0xbe, 0x76, 0xae, 0xf5, 0x78, 0x97, 0x08, 0x9a, - 0x2f, 0x43, 0x2f, 0xc2, 0x8c, 0xdf, 0xd6, 0xb5, 0xde, 0x07, 0xa1, 0xe6, 0x4d, 0xc9, 0xe3, 0x08, - 0x15, 0xec, 0xc3, 0x79, 0x20, 0x72, 0x9e, 0x61, 0xbc, 0x4c, 0x41, 0x57, 0x47, 0x42, 0x2b, 0x09, - 0x3a, 0x3c, 0x2a, 0xaa, 0xbd, 0xf8, 0x0d, 0x00, 0x00, 0xff, 0xff, 0xe1, 0x03, 0x58, 0x94, 0x44, - 0x02, 0x00, 0x00, -} - -func (m *BlacklistEthereumAddressesProposal) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *BlacklistEthereumAddressesProposal) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *BlacklistEthereumAddressesProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.BlacklistAddresses) > 0 { - for iNdEx := len(m.BlacklistAddresses) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.BlacklistAddresses[iNdEx]) - copy(dAtA[i:], m.BlacklistAddresses[iNdEx]) - i = encodeVarintProposal(dAtA, i, uint64(len(m.BlacklistAddresses[iNdEx]))) - i-- - dAtA[i] = 0x1a - } - } - if len(m.Description) > 0 { - i -= len(m.Description) - copy(dAtA[i:], m.Description) - i = encodeVarintProposal(dAtA, i, uint64(len(m.Description))) - i-- - dAtA[i] = 0x12 - } - if len(m.Title) > 0 { - i -= len(m.Title) - copy(dAtA[i:], m.Title) - i = encodeVarintProposal(dAtA, i, uint64(len(m.Title))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *RevokeEthereumBlacklistProposal) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *RevokeEthereumBlacklistProposal) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *RevokeEthereumBlacklistProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.BlacklistAddresses) > 0 { - for iNdEx := len(m.BlacklistAddresses) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.BlacklistAddresses[iNdEx]) - copy(dAtA[i:], m.BlacklistAddresses[iNdEx]) - i = encodeVarintProposal(dAtA, i, uint64(len(m.BlacklistAddresses[iNdEx]))) - i-- - dAtA[i] = 0x1a - } - } - if len(m.Description) > 0 { - i -= len(m.Description) - copy(dAtA[i:], m.Description) - i = encodeVarintProposal(dAtA, i, uint64(len(m.Description))) - i-- - dAtA[i] = 0x12 - } - if len(m.Title) > 0 { - i -= len(m.Title) - copy(dAtA[i:], m.Title) - i = encodeVarintProposal(dAtA, i, uint64(len(m.Title))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func encodeVarintProposal(dAtA []byte, offset int, v uint64) int { - offset -= sovProposal(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ - } - dAtA[offset] = uint8(v) - return base -} -func (m *BlacklistEthereumAddressesProposal) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Title) - if l > 0 { - n += 1 + l + sovProposal(uint64(l)) - } - l = len(m.Description) - if l > 0 { - n += 1 + l + sovProposal(uint64(l)) - } - if len(m.BlacklistAddresses) > 0 { - for _, s := range m.BlacklistAddresses { - l = len(s) - n += 1 + l + sovProposal(uint64(l)) - } - } - return n -} - -func (m *RevokeEthereumBlacklistProposal) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Title) - if l > 0 { - n += 1 + l + sovProposal(uint64(l)) - } - l = len(m.Description) - if l > 0 { - n += 1 + l + sovProposal(uint64(l)) - } - if len(m.BlacklistAddresses) > 0 { - for _, s := range m.BlacklistAddresses { - l = len(s) - n += 1 + l + sovProposal(uint64(l)) - } - } - return n -} - -func sovProposal(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 -} -func sozProposal(x uint64) (n int) { - return sovProposal(uint64((x << 1) ^ uint64((int64(x) >> 63)))) -} -func (m *BlacklistEthereumAddressesProposal) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowProposal - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: BlacklistEthereumAddressesProposal: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: BlacklistEthereumAddressesProposal: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowProposal - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthProposal - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthProposal - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Title = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowProposal - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthProposal - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthProposal - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Description = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BlacklistAddresses", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowProposal - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthProposal - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthProposal - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.BlacklistAddresses = append(m.BlacklistAddresses, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipProposal(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthProposal - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *RevokeEthereumBlacklistProposal) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowProposal - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: RevokeEthereumBlacklistProposal: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: RevokeEthereumBlacklistProposal: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowProposal - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthProposal - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthProposal - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Title = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowProposal - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthProposal - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthProposal - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Description = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BlacklistAddresses", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowProposal - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthProposal - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthProposal - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.BlacklistAddresses = append(m.BlacklistAddresses, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipProposal(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthProposal - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func skipProposal(dAtA []byte) (n int, err error) { - l := len(dAtA) - iNdEx := 0 - depth := 0 - for iNdEx < l { - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowProposal - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - wireType := int(wire & 0x7) - switch wireType { - case 0: - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowProposal - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - iNdEx++ - if dAtA[iNdEx-1] < 0x80 { - break - } - } - case 1: - iNdEx += 8 - case 2: - var length int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowProposal - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - length |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if length < 0 { - return 0, ErrInvalidLengthProposal - } - iNdEx += length - case 3: - depth++ - case 4: - if depth == 0 { - return 0, ErrUnexpectedEndOfGroupProposal - } - depth-- - case 5: - iNdEx += 4 - default: - return 0, fmt.Errorf("proto: illegal wireType %d", wireType) - } - if iNdEx < 0 { - return 0, ErrInvalidLengthProposal - } - if depth == 0 { - return iNdEx, nil - } - } - return 0, io.ErrUnexpectedEOF -} - -var ( - ErrInvalidLengthProposal = fmt.Errorf("proto: negative length found during unmarshaling") - ErrIntOverflowProposal = fmt.Errorf("proto: integer overflow") - ErrUnexpectedEndOfGroupProposal = fmt.Errorf("proto: unexpected end of group") -) diff --git a/chain/peggy/types/types.go b/chain/peggy/types/types.go index 48959e4a..c0d814ed 100644 --- a/chain/peggy/types/types.go +++ b/chain/peggy/types/types.go @@ -252,7 +252,7 @@ func (v Valsets) Swap(i, j int) { func (b OutgoingTxBatch) GetFees() sdkmath.Int { sum := sdkmath.ZeroInt() for _, t := range b.Transactions { - sum.Add(t.Erc20Fee.Amount) + sum = sum.Add(t.Erc20Fee.Amount) } return sum } diff --git a/chain/permissions/types/codec.go b/chain/permissions/types/codec.go index a5cc7fea..099707ec 100644 --- a/chain/permissions/types/codec.go +++ b/chain/permissions/types/codec.go @@ -14,10 +14,7 @@ const ModuleName = "permissions" func RegisterCodec(cdc *codec.LegacyAmino) { cdc.RegisterConcrete(&MsgUpdateParams{}, "permissions/MsgUpdateParams", nil) cdc.RegisterConcrete(&MsgCreateNamespace{}, "permissions/MsgCreateNamespace", nil) - cdc.RegisterConcrete(&MsgDeleteNamespace{}, "permissions/MsgDeleteNamespace", nil) cdc.RegisterConcrete(&MsgUpdateNamespace{}, "permissions/MsgUpdateNamespace", nil) - cdc.RegisterConcrete(&MsgUpdateNamespaceRoles{}, "permissions/MsgUpdateNamespaceRoles", nil) - cdc.RegisterConcrete(&MsgRevokeNamespaceRoles{}, "permissions/MsgRevokeNamespaceRoles", nil) cdc.RegisterConcrete(&MsgClaimVoucher{}, "permissions/MsgClaimVoucher", nil) } @@ -25,10 +22,7 @@ func RegisterInterfaces(registry cdctypes.InterfaceRegistry) { registry.RegisterImplementations((*sdk.Msg)(nil), &MsgUpdateParams{}, &MsgCreateNamespace{}, - &MsgDeleteNamespace{}, &MsgUpdateNamespace{}, - &MsgUpdateNamespaceRoles{}, - &MsgRevokeNamespaceRoles{}, &MsgClaimVoucher{}, ) diff --git a/chain/permissions/types/errors.go b/chain/permissions/types/errors.go deleted file mode 100644 index f104edaf..00000000 --- a/chain/permissions/types/errors.go +++ /dev/null @@ -1,24 +0,0 @@ -package types - -// DONTCOVER - -import ( - "cosmossdk.io/errors" -) - -// x/tokenfactory module sentinel errors -var ( - ErrDenomNamespaceExists = errors.Register(ModuleName, 2, "attempting to create a namespace for denom that already exists") - ErrUnauthorized = errors.Register(ModuleName, 3, "unauthorized account") - ErrInvalidGenesis = errors.Register(ModuleName, 4, "invalid genesis") - ErrInvalidNamespace = errors.Register(ModuleName, 5, "invalid namespace") - ErrInvalidPermission = errors.Register(ModuleName, 6, "invalid permissions") - ErrUnknownRole = errors.Register(ModuleName, 7, "unknown role") - ErrUnknownWasmHook = errors.Register(ModuleName, 8, "unknown contract address") - ErrRestrictedAction = errors.Register(ModuleName, 9, "restricted action") - ErrInvalidRole = errors.Register(ModuleName, 10, "invalid role") - ErrUnknownDenom = errors.Register(ModuleName, 11, "namespace for denom is not existing") - ErrWasmHookError = errors.Register(ModuleName, 12, "wasm hook query error") - ErrVoucherNotFound = errors.Register(ModuleName, 13, "voucher was not found") - ErrInvalidWasmHook = errors.Register(ModuleName, 14, "invalid wasm hook") -) diff --git a/chain/permissions/types/expected_keepers.go b/chain/permissions/types/expected_keepers.go deleted file mode 100644 index 3fdbb230..00000000 --- a/chain/permissions/types/expected_keepers.go +++ /dev/null @@ -1,26 +0,0 @@ -package types - -import ( - "context" - - sdk "github.com/cosmos/cosmos-sdk/types" - banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" - - tftypes "github.com/InjectiveLabs/sdk-go/chain/tokenfactory/types" -) - -type BankKeeper interface { - AppendSendRestriction(restriction banktypes.SendRestrictionFn) - PrependSendRestriction(restriction banktypes.SendRestrictionFn) - ClearSendRestriction() - SendCoinsFromModuleToAccount(ctx context.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error -} - -type TokenFactoryKeeper interface { - GetAuthorityMetadata(ctx sdk.Context, denom string) (tftypes.DenomAuthorityMetadata, error) -} - -type WasmKeeper interface { - HasContractInfo(ctx context.Context, contractAddress sdk.AccAddress) bool - QuerySmart(ctx context.Context, contractAddr sdk.AccAddress, req []byte) ([]byte, error) -} diff --git a/chain/permissions/types/genesis.go b/chain/permissions/types/genesis.go deleted file mode 100644 index 4eff5bb7..00000000 --- a/chain/permissions/types/genesis.go +++ /dev/null @@ -1,38 +0,0 @@ -package types - -import ( - "cosmossdk.io/errors" -) - -// this line is used by starport scaffolding # genesis/types/import - -// DefaultIndex is the default capability global index -const DefaultIndex uint64 = 1 - -// DefaultGenesis returns the default Capability genesis state -func DefaultGenesis() *GenesisState { - return &GenesisState{ - Params: DefaultParams(), - Namespaces: []Namespace{}, - } -} - -// Validate performs basic genesis state validation returning an error upon any -// failure. -func (gs GenesisState) Validate() error { - err := gs.Params.Validate() - if err != nil { - return err - } - - seenDenoms := map[string]struct{}{} - - for _, ns := range gs.GetNamespaces() { - if _, ok := seenDenoms[ns.GetDenom()]; ok { - return errors.Wrapf(ErrInvalidGenesis, "duplicate denom: %s", ns.GetDenom()) - } - seenDenoms[ns.GetDenom()] = struct{}{} - } - - return nil -} diff --git a/chain/permissions/types/genesis.pb.go b/chain/permissions/types/genesis.pb.go index f4b7b7d6..580fd4db 100644 --- a/chain/permissions/types/genesis.pb.go +++ b/chain/permissions/types/genesis.pb.go @@ -26,8 +26,9 @@ const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package // GenesisState defines the permissions module's genesis state. type GenesisState struct { // params defines the parameters of the module. - Params Params `protobuf:"bytes,1,opt,name=params,proto3" json:"params"` - Namespaces []Namespace `protobuf:"bytes,2,rep,name=namespaces,proto3" json:"namespaces"` + Params Params `protobuf:"bytes,1,opt,name=params,proto3" json:"params"` + Namespaces []Namespace `protobuf:"bytes,2,rep,name=namespaces,proto3" json:"namespaces"` + Vouchers []*AddressVoucher `protobuf:"bytes,3,rep,name=vouchers,proto3" json:"vouchers,omitempty"` } func (m *GenesisState) Reset() { *m = GenesisState{} } @@ -77,6 +78,13 @@ func (m *GenesisState) GetNamespaces() []Namespace { return nil } +func (m *GenesisState) GetVouchers() []*AddressVoucher { + if m != nil { + return m.Vouchers + } + return nil +} + func init() { proto.RegisterType((*GenesisState)(nil), "injective.permissions.v1beta1.GenesisState") } @@ -86,24 +94,26 @@ func init() { } var fileDescriptor_5ff1982ce1793022 = []byte{ - // 270 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xd2, 0xce, 0xcc, 0xcb, 0x4a, - 0x4d, 0x2e, 0xc9, 0x2c, 0x4b, 0xd5, 0x2f, 0x48, 0x2d, 0xca, 0xcd, 0x2c, 0x2e, 0xce, 0xcc, 0xcf, - 0x2b, 0xd6, 0x2f, 0x33, 0x4c, 0x4a, 0x2d, 0x49, 0x34, 0xd4, 0x4f, 0x4f, 0xcd, 0x4b, 0x2d, 0xce, - 0x2c, 0xd6, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x92, 0x85, 0x2b, 0xd6, 0x43, 0x52, 0xac, 0x07, - 0x55, 0x2c, 0x25, 0x92, 0x9e, 0x9f, 0x9e, 0x0f, 0x56, 0xa9, 0x0f, 0x62, 0x41, 0x34, 0x49, 0x69, - 0xe1, 0xb7, 0xa1, 0x20, 0xb1, 0x28, 0x31, 0x17, 0x6a, 0x81, 0x94, 0x3e, 0x01, 0xb5, 0x48, 0x96, - 0x82, 0x35, 0x28, 0x2d, 0x66, 0xe4, 0xe2, 0x71, 0x87, 0xb8, 0x31, 0xb8, 0x24, 0xb1, 0x24, 0x55, - 0xc8, 0x99, 0x8b, 0x0d, 0x62, 0xa2, 0x04, 0xa3, 0x02, 0xa3, 0x06, 0xb7, 0x91, 0xaa, 0x1e, 0x5e, - 0x37, 0xeb, 0x05, 0x80, 0x15, 0x3b, 0xb1, 0x9c, 0xb8, 0x27, 0xcf, 0x10, 0x04, 0xd5, 0x2a, 0xe4, - 0xc7, 0xc5, 0x95, 0x97, 0x98, 0x9b, 0x5a, 0x5c, 0x90, 0x98, 0x9c, 0x5a, 0x2c, 0xc1, 0xa4, 0xc0, - 0xac, 0xc1, 0x6d, 0xa4, 0x41, 0xc0, 0x20, 0x3f, 0x98, 0x06, 0xa8, 0x59, 0x48, 0x26, 0x38, 0x65, - 0x9f, 0x78, 0x24, 0xc7, 0x78, 0xe1, 0x91, 0x1c, 0xe3, 0x83, 0x47, 0x72, 0x8c, 0x13, 0x1e, 0xcb, - 0x31, 0x5c, 0x78, 0x2c, 0xc7, 0x70, 0xe3, 0xb1, 0x1c, 0x43, 0x54, 0x60, 0x7a, 0x66, 0x49, 0x46, - 0x69, 0x92, 0x5e, 0x72, 0x7e, 0xae, 0xbe, 0x27, 0xcc, 0x7c, 0x9f, 0xc4, 0xa4, 0x62, 0x44, 0x48, - 0xe8, 0x26, 0xe7, 0x17, 0xa5, 0x22, 0x73, 0x33, 0x12, 0x33, 0xf3, 0xf4, 0x73, 0xf3, 0x53, 0x4a, - 0x73, 0x52, 0x8b, 0x51, 0x82, 0xa9, 0xa4, 0xb2, 0x20, 0xb5, 0x38, 0x89, 0x0d, 0x1c, 0x32, 0xc6, - 0x80, 0x00, 0x00, 0x00, 0xff, 0xff, 0xb9, 0x0c, 0xe9, 0xc0, 0xda, 0x01, 0x00, 0x00, + // 299 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x90, 0x41, 0x4b, 0xc3, 0x30, + 0x14, 0x80, 0x1b, 0x27, 0x43, 0x32, 0x4f, 0xc5, 0xc3, 0x18, 0x18, 0x87, 0x20, 0x0c, 0x65, 0x09, + 0x9b, 0xbf, 0xc0, 0x79, 0x90, 0x81, 0x0c, 0x9d, 0xe0, 0xc1, 0x5b, 0xda, 0x3d, 0xba, 0xa8, 0x6d, + 0x4a, 0x5e, 0x5a, 0xf0, 0x5f, 0xf8, 0xb3, 0x76, 0xdc, 0xd1, 0x93, 0x48, 0x7b, 0xf7, 0x37, 0x88, + 0x6d, 0x37, 0xeb, 0x65, 0xbd, 0x25, 0xf0, 0x7d, 0xdf, 0x7b, 0x3c, 0x7a, 0xa1, 0xa2, 0x67, 0xf0, + 0xad, 0x4a, 0x41, 0xc4, 0x60, 0x42, 0x85, 0xa8, 0x74, 0x84, 0x22, 0x1d, 0x79, 0x60, 0xe5, 0x48, + 0x04, 0x10, 0x01, 0x2a, 0xe4, 0xb1, 0xd1, 0x56, 0xbb, 0xc7, 0x5b, 0x98, 0xd7, 0x60, 0x5e, 0xc1, + 0xbd, 0xa3, 0x40, 0x07, 0xba, 0x20, 0xc5, 0xef, 0xab, 0x94, 0x7a, 0xe7, 0xbb, 0x27, 0xc4, 0xd2, + 0xc8, 0xb0, 0x1a, 0xd0, 0x13, 0x0d, 0x6c, 0x6d, 0x68, 0x21, 0x9c, 0x7e, 0x13, 0x7a, 0x78, 0x53, + 0xee, 0xf8, 0x60, 0xa5, 0x05, 0xf7, 0x9a, 0xb6, 0xcb, 0x62, 0x97, 0xf4, 0xc9, 0xa0, 0x33, 0x3e, + 0xe3, 0x3b, 0x77, 0xe6, 0x77, 0x05, 0x3c, 0xd9, 0x5f, 0x7d, 0x9e, 0x38, 0xf3, 0x4a, 0x75, 0x67, + 0x94, 0x46, 0x32, 0x04, 0x8c, 0xa5, 0x0f, 0xd8, 0xdd, 0xeb, 0xb7, 0x06, 0x9d, 0xf1, 0xa0, 0x21, + 0x34, 0xdb, 0x08, 0x55, 0xab, 0x56, 0x70, 0xa7, 0xf4, 0x20, 0xd5, 0x89, 0xbf, 0x04, 0x83, 0xdd, + 0x56, 0x51, 0x1b, 0x36, 0xd4, 0xae, 0x16, 0x0b, 0x03, 0x88, 0x8f, 0xa5, 0x35, 0xdf, 0xea, 0x93, + 0x97, 0x55, 0xc6, 0xc8, 0x3a, 0x63, 0xe4, 0x2b, 0x63, 0xe4, 0x3d, 0x67, 0xce, 0x3a, 0x67, 0xce, + 0x47, 0xce, 0x9c, 0xa7, 0xfb, 0x40, 0xd9, 0x65, 0xe2, 0x71, 0x5f, 0x87, 0x62, 0xba, 0x89, 0xdf, + 0x4a, 0x0f, 0xff, 0x8e, 0x3a, 0xf4, 0xb5, 0x81, 0xfa, 0x77, 0x29, 0x55, 0x24, 0x42, 0xbd, 0x48, + 0x5e, 0x01, 0xff, 0x5d, 0xdc, 0xbe, 0xc5, 0x80, 0x5e, 0xbb, 0x38, 0xf2, 0xe5, 0x4f, 0x00, 0x00, + 0x00, 0xff, 0xff, 0x83, 0x97, 0x25, 0xeb, 0x25, 0x02, 0x00, 0x00, } func (m *GenesisState) Marshal() (dAtA []byte, err error) { @@ -126,6 +136,20 @@ func (m *GenesisState) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if len(m.Vouchers) > 0 { + for iNdEx := len(m.Vouchers) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Vouchers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintGenesis(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + } if len(m.Namespaces) > 0 { for iNdEx := len(m.Namespaces) - 1; iNdEx >= 0; iNdEx-- { { @@ -178,6 +202,12 @@ func (m *GenesisState) Size() (n int) { n += 1 + l + sovGenesis(uint64(l)) } } + if len(m.Vouchers) > 0 { + for _, e := range m.Vouchers { + l = e.Size() + n += 1 + l + sovGenesis(uint64(l)) + } + } return n } @@ -283,6 +313,40 @@ func (m *GenesisState) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Vouchers", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenesis + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenesis + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthGenesis + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Vouchers = append(m.Vouchers, &AddressVoucher{}) + if err := m.Vouchers[len(m.Vouchers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenesis(dAtA[iNdEx:]) diff --git a/chain/permissions/types/msgs.go b/chain/permissions/types/msgs.go deleted file mode 100644 index e9b762b1..00000000 --- a/chain/permissions/types/msgs.go +++ /dev/null @@ -1,227 +0,0 @@ -package types - -import ( - "fmt" - - "cosmossdk.io/errors" - sdk "github.com/cosmos/cosmos-sdk/types" - - tftypes "github.com/InjectiveLabs/sdk-go/chain/tokenfactory/types" -) - -// constants -const ( - // RouterKey is the message route for slashing - routerKey = ModuleName - - TypeMsgUpdateParams = "update_params" - TypeMsgCreateNamespace = "create_namespace" - TypeMsgDeleteNamespace = "delete_namespace" - TypeUpdateNamespace = "update_namespace" - TypeMsgUpdateNamespaceRoles = "update_namespace_roles" - TypeMsgRevokeNamespaceRoles = "revoke_namespace_roles" - TypeMsgClaimVoucher = "claim_voucher" -) - -var ( - _ sdk.Msg = &MsgUpdateParams{} - _ sdk.Msg = &MsgCreateNamespace{} - _ sdk.Msg = &MsgDeleteNamespace{} - _ sdk.Msg = &MsgUpdateNamespace{} - _ sdk.Msg = &MsgUpdateNamespaceRoles{} - _ sdk.Msg = &MsgRevokeNamespaceRoles{} - _ sdk.Msg = &MsgClaimVoucher{} -) - -func (m MsgUpdateParams) Route() string { return routerKey } - -func (m MsgUpdateParams) Type() string { return TypeMsgUpdateParams } - -func (m MsgUpdateParams) ValidateBasic() error { - if _, err := sdk.AccAddressFromBech32(m.Authority); err != nil { - return err - } - - if err := m.Params.Validate(); err != nil { - return err - } - return nil -} - -func (m *MsgUpdateParams) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshal(m)) -} - -func (m MsgUpdateParams) GetSigners() []sdk.AccAddress { - addr, _ := sdk.AccAddressFromBech32(m.Authority) - return []sdk.AccAddress{addr} -} - -func (m MsgCreateNamespace) Route() string { return routerKey } - -func (m MsgCreateNamespace) Type() string { return TypeMsgCreateNamespace } - -func (msg MsgCreateNamespace) ValidateBasic() error { - if _, err := sdk.AccAddressFromBech32(msg.Sender); err != nil { - return err - } - - if err := msg.Namespace.Validate(); err != nil { - return err - } - return nil -} - -func (m *MsgCreateNamespace) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshal(m)) -} - -func (m MsgCreateNamespace) GetSigners() []sdk.AccAddress { - addr, _ := sdk.AccAddressFromBech32(m.Sender) - return []sdk.AccAddress{addr} -} - -func (m MsgDeleteNamespace) Route() string { return routerKey } - -func (m MsgDeleteNamespace) Type() string { return TypeMsgDeleteNamespace } - -func (m MsgDeleteNamespace) ValidateBasic() error { - if _, err := sdk.AccAddressFromBech32(m.Sender); err != nil { - return err - } - - if _, _, err := tftypes.DeconstructDenom(m.NamespaceDenom); err != nil { - return errors.Wrap(err, "permissions namespace can only be applied to tokenfactory denoms") - } - return nil -} - -func (m *MsgDeleteNamespace) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshal(m)) -} - -func (m MsgDeleteNamespace) GetSigners() []sdk.AccAddress { - addr, _ := sdk.AccAddressFromBech32(m.Sender) - return []sdk.AccAddress{addr} -} - -func (m MsgUpdateNamespace) Route() string { return routerKey } - -func (m MsgUpdateNamespace) Type() string { return TypeUpdateNamespace } - -func (m MsgUpdateNamespace) ValidateBasic() error { - if _, err := sdk.AccAddressFromBech32(m.Sender); err != nil { - return err - } - - if m.WasmHook != nil { - if _, err := sdk.AccAddressFromBech32(m.WasmHook.NewValue); err != nil { - return ErrInvalidWasmHook - } - } - return nil -} - -func (m *MsgUpdateNamespace) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshal(m)) -} - -func (m MsgUpdateNamespace) GetSigners() []sdk.AccAddress { - addr, _ := sdk.AccAddressFromBech32(m.Sender) - return []sdk.AccAddress{addr} -} - -func (m MsgUpdateNamespaceRoles) Route() string { return routerKey } - -func (m MsgUpdateNamespaceRoles) Type() string { return TypeMsgUpdateNamespaceRoles } - -func (msg MsgUpdateNamespaceRoles) ValidateBasic() error { - if _, err := sdk.AccAddressFromBech32(msg.Sender); err != nil { - return err - } - if _, _, err := tftypes.DeconstructDenom(msg.NamespaceDenom); err != nil { - return errors.Wrap(err, "permissions namespace can only be applied to tokenfactory denoms") - } - - for _, role := range msg.AddressRoles { - if _, err := sdk.AccAddressFromBech32(role.Address); err != nil { - return errors.Wrapf(err, "invalid address %s", role.Address) - } - } - - return nil -} - -func (m *MsgUpdateNamespaceRoles) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshal(m)) -} - -func (m MsgUpdateNamespaceRoles) GetSigners() []sdk.AccAddress { - addr, _ := sdk.AccAddressFromBech32(m.Sender) - return []sdk.AccAddress{addr} -} - -func (m MsgRevokeNamespaceRoles) Route() string { return routerKey } - -func (m MsgRevokeNamespaceRoles) Type() string { return TypeMsgRevokeNamespaceRoles } - -func (msg MsgRevokeNamespaceRoles) ValidateBasic() error { - if _, err := sdk.AccAddressFromBech32(msg.Sender); err != nil { - return err - } - - if _, _, err := tftypes.DeconstructDenom(msg.NamespaceDenom); err != nil { - return errors.Wrap(err, "permissions namespace can only be applied to tokenfactory denoms") - } - - // address_roles - foundAddresses := make(map[string]struct{}, len(msg.AddressRolesToRevoke)) - for _, addrRoles := range msg.AddressRolesToRevoke { - if _, err := sdk.AccAddressFromBech32(addrRoles.Address); err != nil { - return errors.Wrapf(err, "invalid address %s", addrRoles.Address) - } - if _, ok := foundAddresses[addrRoles.Address]; ok { - return errors.Wrapf(ErrInvalidRole, "address %s - revoking roles multiple times?", addrRoles.Address) - } - for _, role := range addrRoles.Roles { - if role == EVERYONE { - return errors.Wrapf(ErrInvalidRole, "role %s can not be set / revoked", EVERYONE) - } - } - foundAddresses[addrRoles.Address] = struct{}{} - } - return nil -} - -func (m *MsgRevokeNamespaceRoles) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshal(m)) -} - -func (m MsgRevokeNamespaceRoles) GetSigners() []sdk.AccAddress { - addr, _ := sdk.AccAddressFromBech32(m.Sender) - return []sdk.AccAddress{addr} -} - -func (m MsgClaimVoucher) Route() string { return routerKey } - -func (m MsgClaimVoucher) Type() string { return TypeMsgClaimVoucher } - -func (msg MsgClaimVoucher) ValidateBasic() error { - if _, err := sdk.AccAddressFromBech32(msg.Sender); err != nil { - return err - } - - if msg.Denom == "" { - return fmt.Errorf("invalid denom") - } - return nil -} - -func (m *MsgClaimVoucher) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshal(m)) -} - -func (m MsgClaimVoucher) GetSigners() []sdk.AccAddress { - addr, _ := sdk.AccAddressFromBech32(m.Sender) - return []sdk.AccAddress{addr} -} diff --git a/chain/permissions/types/params.go b/chain/permissions/types/params.go deleted file mode 100644 index c8ff643e..00000000 --- a/chain/permissions/types/params.go +++ /dev/null @@ -1,33 +0,0 @@ -package types - -import ( - paramtypes "github.com/cosmos/cosmos-sdk/x/params/types" -) - -// ParamTable -func ParamKeyTable() paramtypes.KeyTable { - return paramtypes.NewKeyTable().RegisterParamSet(&Params{}) -} - -func NewParams(wasmHookQueryMaxGas uint64) Params { - return Params{ - WasmHookQueryMaxGas: wasmHookQueryMaxGas, - } -} - -// default module parameters. -func DefaultParams() Params { - return Params{ - WasmHookQueryMaxGas: 200_000, - } -} - -// validate params. -func (p Params) Validate() error { - return nil -} - -// Implements params.ParamSet. -func (p *Params) ParamSetPairs() paramtypes.ParamSetPairs { - return paramtypes.ParamSetPairs{} -} diff --git a/chain/permissions/types/permissions.pb.go b/chain/permissions/types/permissions.pb.go index 8dac3cbb..3d5576c4 100644 --- a/chain/permissions/types/permissions.pb.go +++ b/chain/permissions/types/permissions.pb.go @@ -5,8 +5,8 @@ package types import ( fmt "fmt" + _ "github.com/cosmos/cosmos-sdk/types" github_com_cosmos_cosmos_sdk_types "github.com/cosmos/cosmos-sdk/types" - types "github.com/cosmos/cosmos-sdk/types" _ "github.com/cosmos/gogoproto/gogoproto" proto "github.com/cosmos/gogoproto/proto" io "io" @@ -29,24 +29,52 @@ const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package type Action int32 const ( + // 0 is reserved for ACTION_UNSPECIFIED Action_UNSPECIFIED Action = 0 - Action_MINT Action = 1 - Action_RECEIVE Action = 2 - Action_BURN Action = 4 + // 1 is reserved for MINT + Action_MINT Action = 1 + // 2 is reserved for RECEIVE + Action_RECEIVE Action = 2 + // 4 is reserved for BURN + Action_BURN Action = 4 + // 8 is reserved for SEND + Action_SEND Action = 8 + // 16 is reserved for SUPER_BURN + Action_SUPER_BURN Action = 16 + // 2^27 is reserved for MODIFY_POLICY_MANAGERS + Action_MODIFY_POLICY_MANAGERS Action = 134217728 + // 2^28 is reserved for MODIFY_CONTRACT_HOOK + Action_MODIFY_CONTRACT_HOOK Action = 268435456 + // 2^29 is reserved for MODIFY_ROLE_PERMISSIONS + Action_MODIFY_ROLE_PERMISSIONS Action = 536870912 + // 2^30 is reserved for MODIFY_ROLE_MANAGERS + Action_MODIFY_ROLE_MANAGERS Action = 1073741824 ) var Action_name = map[int32]string{ - 0: "UNSPECIFIED", - 1: "MINT", - 2: "RECEIVE", - 4: "BURN", + 0: "UNSPECIFIED", + 1: "MINT", + 2: "RECEIVE", + 4: "BURN", + 8: "SEND", + 16: "SUPER_BURN", + 134217728: "MODIFY_POLICY_MANAGERS", + 268435456: "MODIFY_CONTRACT_HOOK", + 536870912: "MODIFY_ROLE_PERMISSIONS", + 1073741824: "MODIFY_ROLE_MANAGERS", } var Action_value = map[string]int32{ - "UNSPECIFIED": 0, - "MINT": 1, - "RECEIVE": 2, - "BURN": 4, + "UNSPECIFIED": 0, + "MINT": 1, + "RECEIVE": 2, + "BURN": 4, + "SEND": 8, + "SUPER_BURN": 16, + "MODIFY_POLICY_MANAGERS": 134217728, + "MODIFY_CONTRACT_HOOK": 268435456, + "MODIFY_ROLE_PERMISSIONS": 536870912, + "MODIFY_ROLE_MANAGERS": 1073741824, } func (x Action) String() string { @@ -59,13 +87,13 @@ func (Action) EnumDescriptor() ([]byte, []int) { // Namespace defines a permissions namespace type Namespace struct { - Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` - WasmHook string `protobuf:"bytes,2,opt,name=wasm_hook,json=wasmHook,proto3" json:"wasm_hook,omitempty"` - MintsPaused bool `protobuf:"varint,3,opt,name=mints_paused,json=mintsPaused,proto3" json:"mints_paused,omitempty"` - SendsPaused bool `protobuf:"varint,4,opt,name=sends_paused,json=sendsPaused,proto3" json:"sends_paused,omitempty"` - BurnsPaused bool `protobuf:"varint,5,opt,name=burns_paused,json=burnsPaused,proto3" json:"burns_paused,omitempty"` - RolePermissions []*Role `protobuf:"bytes,6,rep,name=role_permissions,json=rolePermissions,proto3" json:"role_permissions,omitempty"` - AddressRoles []*AddressRoles `protobuf:"bytes,7,rep,name=address_roles,json=addressRoles,proto3" json:"address_roles,omitempty"` + Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` + ContractHook string `protobuf:"bytes,2,opt,name=contract_hook,json=contractHook,proto3" json:"contract_hook,omitempty"` + RolePermissions []*Role `protobuf:"bytes,3,rep,name=role_permissions,json=rolePermissions,proto3" json:"role_permissions,omitempty"` + ActorRoles []*ActorRoles `protobuf:"bytes,4,rep,name=actor_roles,json=actorRoles,proto3" json:"actor_roles,omitempty"` + RoleManagers []*RoleManager `protobuf:"bytes,5,rep,name=role_managers,json=roleManagers,proto3" json:"role_managers,omitempty"` + PolicyStatuses []*PolicyStatus `protobuf:"bytes,6,rep,name=policy_statuses,json=policyStatuses,proto3" json:"policy_statuses,omitempty"` + PolicyManagerCapabilities []*PolicyManagerCapability `protobuf:"bytes,7,rep,name=policy_manager_capabilities,json=policyManagerCapabilities,proto3" json:"policy_manager_capabilities,omitempty"` } func (m *Namespace) Reset() { *m = Namespace{} } @@ -108,65 +136,66 @@ func (m *Namespace) GetDenom() string { return "" } -func (m *Namespace) GetWasmHook() string { +func (m *Namespace) GetContractHook() string { if m != nil { - return m.WasmHook + return m.ContractHook } return "" } -func (m *Namespace) GetMintsPaused() bool { +func (m *Namespace) GetRolePermissions() []*Role { if m != nil { - return m.MintsPaused + return m.RolePermissions } - return false + return nil } -func (m *Namespace) GetSendsPaused() bool { +func (m *Namespace) GetActorRoles() []*ActorRoles { if m != nil { - return m.SendsPaused + return m.ActorRoles } - return false + return nil } -func (m *Namespace) GetBurnsPaused() bool { +func (m *Namespace) GetRoleManagers() []*RoleManager { if m != nil { - return m.BurnsPaused + return m.RoleManagers } - return false + return nil } -func (m *Namespace) GetRolePermissions() []*Role { +func (m *Namespace) GetPolicyStatuses() []*PolicyStatus { if m != nil { - return m.RolePermissions + return m.PolicyStatuses } return nil } -func (m *Namespace) GetAddressRoles() []*AddressRoles { +func (m *Namespace) GetPolicyManagerCapabilities() []*PolicyManagerCapability { if m != nil { - return m.AddressRoles + return m.PolicyManagerCapabilities } return nil } -type AddressRoles struct { - Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` - Roles []string `protobuf:"bytes,2,rep,name=roles,proto3" json:"roles,omitempty"` +// AddressRoles defines roles for an actor +type ActorRoles struct { + Actor string `protobuf:"bytes,1,opt,name=actor,proto3" json:"actor,omitempty"` + Roles []string `protobuf:"bytes,2,rep,name=roles,proto3" json:"roles,omitempty"` } -func (m *AddressRoles) Reset() { *m = AddressRoles{} } -func (m *AddressRoles) String() string { return proto.CompactTextString(m) } -func (*AddressRoles) ProtoMessage() {} -func (*AddressRoles) Descriptor() ([]byte, []int) { +func (m *ActorRoles) Reset() { *m = ActorRoles{} } +func (m *ActorRoles) String() string { return proto.CompactTextString(m) } +func (*ActorRoles) ProtoMessage() {} +func (*ActorRoles) Descriptor() ([]byte, []int) { return fileDescriptor_6d25f3ecf3806c6c, []int{1} } -func (m *AddressRoles) XXX_Unmarshal(b []byte) error { +func (m *ActorRoles) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *AddressRoles) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ActorRoles) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_AddressRoles.Marshal(b, m, deterministic) + return xxx_messageInfo_ActorRoles.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -176,43 +205,211 @@ func (m *AddressRoles) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) return b[:n], nil } } -func (m *AddressRoles) XXX_Merge(src proto.Message) { - xxx_messageInfo_AddressRoles.Merge(m, src) +func (m *ActorRoles) XXX_Merge(src proto.Message) { + xxx_messageInfo_ActorRoles.Merge(m, src) } -func (m *AddressRoles) XXX_Size() int { +func (m *ActorRoles) XXX_Size() int { return m.Size() } -func (m *AddressRoles) XXX_DiscardUnknown() { - xxx_messageInfo_AddressRoles.DiscardUnknown(m) +func (m *ActorRoles) XXX_DiscardUnknown() { + xxx_messageInfo_ActorRoles.DiscardUnknown(m) } -var xxx_messageInfo_AddressRoles proto.InternalMessageInfo +var xxx_messageInfo_ActorRoles proto.InternalMessageInfo -func (m *AddressRoles) GetAddress() string { +func (m *ActorRoles) GetActor() string { if m != nil { - return m.Address + return m.Actor + } + return "" +} + +func (m *ActorRoles) GetRoles() []string { + if m != nil { + return m.Roles + } + return nil +} + +// RoleActors defines actors for a role +type RoleActors struct { + Role string `protobuf:"bytes,1,opt,name=role,proto3" json:"role,omitempty"` + Actors []string `protobuf:"bytes,2,rep,name=actors,proto3" json:"actors,omitempty"` +} + +func (m *RoleActors) Reset() { *m = RoleActors{} } +func (m *RoleActors) String() string { return proto.CompactTextString(m) } +func (*RoleActors) ProtoMessage() {} +func (*RoleActors) Descriptor() ([]byte, []int) { + return fileDescriptor_6d25f3ecf3806c6c, []int{2} +} +func (m *RoleActors) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *RoleActors) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_RoleActors.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *RoleActors) XXX_Merge(src proto.Message) { + xxx_messageInfo_RoleActors.Merge(m, src) +} +func (m *RoleActors) XXX_Size() int { + return m.Size() +} +func (m *RoleActors) XXX_DiscardUnknown() { + xxx_messageInfo_RoleActors.DiscardUnknown(m) +} + +var xxx_messageInfo_RoleActors proto.InternalMessageInfo + +func (m *RoleActors) GetRole() string { + if m != nil { + return m.Role + } + return "" +} + +func (m *RoleActors) GetActors() []string { + if m != nil { + return m.Actors + } + return nil +} + +// RoleManager defines roles for a manager address +type RoleManager struct { + Manager string `protobuf:"bytes,1,opt,name=manager,proto3" json:"manager,omitempty"` + Roles []string `protobuf:"bytes,2,rep,name=roles,proto3" json:"roles,omitempty"` +} + +func (m *RoleManager) Reset() { *m = RoleManager{} } +func (m *RoleManager) String() string { return proto.CompactTextString(m) } +func (*RoleManager) ProtoMessage() {} +func (*RoleManager) Descriptor() ([]byte, []int) { + return fileDescriptor_6d25f3ecf3806c6c, []int{3} +} +func (m *RoleManager) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *RoleManager) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_RoleManager.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *RoleManager) XXX_Merge(src proto.Message) { + xxx_messageInfo_RoleManager.Merge(m, src) +} +func (m *RoleManager) XXX_Size() int { + return m.Size() +} +func (m *RoleManager) XXX_DiscardUnknown() { + xxx_messageInfo_RoleManager.DiscardUnknown(m) +} + +var xxx_messageInfo_RoleManager proto.InternalMessageInfo + +func (m *RoleManager) GetManager() string { + if m != nil { + return m.Manager } return "" } -func (m *AddressRoles) GetRoles() []string { +func (m *RoleManager) GetRoles() []string { if m != nil { return m.Roles } return nil } +// PolicyStatus defines the status of a policy +type PolicyStatus struct { + Action Action `protobuf:"varint,1,opt,name=action,proto3,enum=injective.permissions.v1beta1.Action" json:"action,omitempty"` + IsDisabled bool `protobuf:"varint,2,opt,name=is_disabled,json=isDisabled,proto3" json:"is_disabled,omitempty"` + IsSealed bool `protobuf:"varint,3,opt,name=is_sealed,json=isSealed,proto3" json:"is_sealed,omitempty"` +} + +func (m *PolicyStatus) Reset() { *m = PolicyStatus{} } +func (m *PolicyStatus) String() string { return proto.CompactTextString(m) } +func (*PolicyStatus) ProtoMessage() {} +func (*PolicyStatus) Descriptor() ([]byte, []int) { + return fileDescriptor_6d25f3ecf3806c6c, []int{4} +} +func (m *PolicyStatus) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *PolicyStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_PolicyStatus.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *PolicyStatus) XXX_Merge(src proto.Message) { + xxx_messageInfo_PolicyStatus.Merge(m, src) +} +func (m *PolicyStatus) XXX_Size() int { + return m.Size() +} +func (m *PolicyStatus) XXX_DiscardUnknown() { + xxx_messageInfo_PolicyStatus.DiscardUnknown(m) +} + +var xxx_messageInfo_PolicyStatus proto.InternalMessageInfo + +func (m *PolicyStatus) GetAction() Action { + if m != nil { + return m.Action + } + return Action_UNSPECIFIED +} + +func (m *PolicyStatus) GetIsDisabled() bool { + if m != nil { + return m.IsDisabled + } + return false +} + +func (m *PolicyStatus) GetIsSealed() bool { + if m != nil { + return m.IsSealed + } + return false +} + // Role is only used for storage type Role struct { - Role string `protobuf:"bytes,1,opt,name=role,proto3" json:"role,omitempty"` - Permissions uint32 `protobuf:"varint,2,opt,name=permissions,proto3" json:"permissions,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + RoleId uint32 `protobuf:"varint,2,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"` + Permissions uint32 `protobuf:"varint,3,opt,name=permissions,proto3" json:"permissions,omitempty"` } func (m *Role) Reset() { *m = Role{} } func (m *Role) String() string { return proto.CompactTextString(m) } func (*Role) ProtoMessage() {} func (*Role) Descriptor() ([]byte, []int) { - return fileDescriptor_6d25f3ecf3806c6c, []int{2} + return fileDescriptor_6d25f3ecf3806c6c, []int{5} } func (m *Role) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -241,13 +438,20 @@ func (m *Role) XXX_DiscardUnknown() { var xxx_messageInfo_Role proto.InternalMessageInfo -func (m *Role) GetRole() string { +func (m *Role) GetName() string { if m != nil { - return m.Role + return m.Name } return "" } +func (m *Role) GetRoleId() uint32 { + if m != nil { + return m.RoleId + } + return 0 +} + func (m *Role) GetPermissions() uint32 { if m != nil { return m.Permissions @@ -255,23 +459,26 @@ func (m *Role) GetPermissions() uint32 { return 0 } -// used in storage -type RoleIDs struct { - RoleIds []uint32 `protobuf:"varint,1,rep,packed,name=role_ids,json=roleIds,proto3" json:"role_ids,omitempty"` +// PolicyManagerCapability defines the capabilities of a manager for a policy +type PolicyManagerCapability struct { + Manager string `protobuf:"bytes,1,opt,name=manager,proto3" json:"manager,omitempty"` + Action Action `protobuf:"varint,2,opt,name=action,proto3,enum=injective.permissions.v1beta1.Action" json:"action,omitempty"` + CanDisable bool `protobuf:"varint,3,opt,name=can_disable,json=canDisable,proto3" json:"can_disable,omitempty"` + CanSeal bool `protobuf:"varint,4,opt,name=can_seal,json=canSeal,proto3" json:"can_seal,omitempty"` } -func (m *RoleIDs) Reset() { *m = RoleIDs{} } -func (m *RoleIDs) String() string { return proto.CompactTextString(m) } -func (*RoleIDs) ProtoMessage() {} -func (*RoleIDs) Descriptor() ([]byte, []int) { - return fileDescriptor_6d25f3ecf3806c6c, []int{3} +func (m *PolicyManagerCapability) Reset() { *m = PolicyManagerCapability{} } +func (m *PolicyManagerCapability) String() string { return proto.CompactTextString(m) } +func (*PolicyManagerCapability) ProtoMessage() {} +func (*PolicyManagerCapability) Descriptor() ([]byte, []int) { + return fileDescriptor_6d25f3ecf3806c6c, []int{6} } -func (m *RoleIDs) XXX_Unmarshal(b []byte) error { +func (m *PolicyManagerCapability) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *RoleIDs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *PolicyManagerCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_RoleIDs.Marshal(b, m, deterministic) + return xxx_messageInfo_PolicyManagerCapability.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -281,41 +488,63 @@ func (m *RoleIDs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return b[:n], nil } } -func (m *RoleIDs) XXX_Merge(src proto.Message) { - xxx_messageInfo_RoleIDs.Merge(m, src) +func (m *PolicyManagerCapability) XXX_Merge(src proto.Message) { + xxx_messageInfo_PolicyManagerCapability.Merge(m, src) } -func (m *RoleIDs) XXX_Size() int { +func (m *PolicyManagerCapability) XXX_Size() int { return m.Size() } -func (m *RoleIDs) XXX_DiscardUnknown() { - xxx_messageInfo_RoleIDs.DiscardUnknown(m) +func (m *PolicyManagerCapability) XXX_DiscardUnknown() { + xxx_messageInfo_PolicyManagerCapability.DiscardUnknown(m) } -var xxx_messageInfo_RoleIDs proto.InternalMessageInfo +var xxx_messageInfo_PolicyManagerCapability proto.InternalMessageInfo -func (m *RoleIDs) GetRoleIds() []uint32 { +func (m *PolicyManagerCapability) GetManager() string { if m != nil { - return m.RoleIds + return m.Manager } - return nil + return "" } -type Voucher struct { - Coins github_com_cosmos_cosmos_sdk_types.Coins `protobuf:"bytes,1,rep,name=coins,proto3,castrepeated=github.com/cosmos/cosmos-sdk/types.Coins" json:"coins"` +func (m *PolicyManagerCapability) GetAction() Action { + if m != nil { + return m.Action + } + return Action_UNSPECIFIED } -func (m *Voucher) Reset() { *m = Voucher{} } -func (m *Voucher) String() string { return proto.CompactTextString(m) } -func (*Voucher) ProtoMessage() {} -func (*Voucher) Descriptor() ([]byte, []int) { - return fileDescriptor_6d25f3ecf3806c6c, []int{4} +func (m *PolicyManagerCapability) GetCanDisable() bool { + if m != nil { + return m.CanDisable + } + return false +} + +func (m *PolicyManagerCapability) GetCanSeal() bool { + if m != nil { + return m.CanSeal + } + return false +} + +// used in storage +type RoleIDs struct { + RoleIds []uint32 `protobuf:"varint,1,rep,packed,name=role_ids,json=roleIds,proto3" json:"role_ids,omitempty"` } -func (m *Voucher) XXX_Unmarshal(b []byte) error { + +func (m *RoleIDs) Reset() { *m = RoleIDs{} } +func (m *RoleIDs) String() string { return proto.CompactTextString(m) } +func (*RoleIDs) ProtoMessage() {} +func (*RoleIDs) Descriptor() ([]byte, []int) { + return fileDescriptor_6d25f3ecf3806c6c, []int{7} +} +func (m *RoleIDs) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *Voucher) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *RoleIDs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_Voucher.Marshal(b, m, deterministic) + return xxx_messageInfo_RoleIDs.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -325,35 +554,36 @@ func (m *Voucher) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return b[:n], nil } } -func (m *Voucher) XXX_Merge(src proto.Message) { - xxx_messageInfo_Voucher.Merge(m, src) +func (m *RoleIDs) XXX_Merge(src proto.Message) { + xxx_messageInfo_RoleIDs.Merge(m, src) } -func (m *Voucher) XXX_Size() int { +func (m *RoleIDs) XXX_Size() int { return m.Size() } -func (m *Voucher) XXX_DiscardUnknown() { - xxx_messageInfo_Voucher.DiscardUnknown(m) +func (m *RoleIDs) XXX_DiscardUnknown() { + xxx_messageInfo_RoleIDs.DiscardUnknown(m) } -var xxx_messageInfo_Voucher proto.InternalMessageInfo +var xxx_messageInfo_RoleIDs proto.InternalMessageInfo -func (m *Voucher) GetCoins() github_com_cosmos_cosmos_sdk_types.Coins { +func (m *RoleIDs) GetRoleIds() []uint32 { if m != nil { - return m.Coins + return m.RoleIds } return nil } +// AddressVoucher is used to represent a voucher for a specific address type AddressVoucher struct { - Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` - Voucher *Voucher `protobuf:"bytes,2,opt,name=voucher,proto3" json:"voucher,omitempty"` + Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` + Voucher github_com_cosmos_cosmos_sdk_types.Coin `protobuf:"bytes,2,opt,name=voucher,proto3,customtype=github.com/cosmos/cosmos-sdk/types.Coin" json:"voucher,omitempty"` } func (m *AddressVoucher) Reset() { *m = AddressVoucher{} } func (m *AddressVoucher) String() string { return proto.CompactTextString(m) } func (*AddressVoucher) ProtoMessage() {} func (*AddressVoucher) Descriptor() ([]byte, []int) { - return fileDescriptor_6d25f3ecf3806c6c, []int{5} + return fileDescriptor_6d25f3ecf3806c6c, []int{8} } func (m *AddressVoucher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -389,20 +619,16 @@ func (m *AddressVoucher) GetAddress() string { return "" } -func (m *AddressVoucher) GetVoucher() *Voucher { - if m != nil { - return m.Voucher - } - return nil -} - func init() { proto.RegisterEnum("injective.permissions.v1beta1.Action", Action_name, Action_value) proto.RegisterType((*Namespace)(nil), "injective.permissions.v1beta1.Namespace") - proto.RegisterType((*AddressRoles)(nil), "injective.permissions.v1beta1.AddressRoles") + proto.RegisterType((*ActorRoles)(nil), "injective.permissions.v1beta1.ActorRoles") + proto.RegisterType((*RoleActors)(nil), "injective.permissions.v1beta1.RoleActors") + proto.RegisterType((*RoleManager)(nil), "injective.permissions.v1beta1.RoleManager") + proto.RegisterType((*PolicyStatus)(nil), "injective.permissions.v1beta1.PolicyStatus") proto.RegisterType((*Role)(nil), "injective.permissions.v1beta1.Role") + proto.RegisterType((*PolicyManagerCapability)(nil), "injective.permissions.v1beta1.PolicyManagerCapability") proto.RegisterType((*RoleIDs)(nil), "injective.permissions.v1beta1.RoleIDs") - proto.RegisterType((*Voucher)(nil), "injective.permissions.v1beta1.Voucher") proto.RegisterType((*AddressVoucher)(nil), "injective.permissions.v1beta1.AddressVoucher") } @@ -411,43 +637,62 @@ func init() { } var fileDescriptor_6d25f3ecf3806c6c = []byte{ - // 567 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x53, 0x4d, 0x8f, 0xd2, 0x4e, - 0x18, 0xa7, 0xbc, 0x15, 0xa6, 0xf0, 0x5f, 0x32, 0xd9, 0x43, 0x77, 0xff, 0xb1, 0x8b, 0xd5, 0x18, - 0xa2, 0xd9, 0xd6, 0xc5, 0x9b, 0x31, 0xc6, 0x85, 0xc5, 0xd8, 0x44, 0x09, 0x56, 0x77, 0x0f, 0x5e, - 0x48, 0x5f, 0x26, 0x30, 0x42, 0x3b, 0xa4, 0x4f, 0xc1, 0xf8, 0x2d, 0xfc, 0x1c, 0x7e, 0x92, 0xf5, - 0xb6, 0x47, 0x4f, 0x6a, 0xe0, 0x8b, 0x98, 0x99, 0x29, 0x50, 0x0f, 0xba, 0x27, 0xfa, 0xfc, 0x5e, - 0x9e, 0xe1, 0xf9, 0xcd, 0x33, 0xc8, 0xa6, 0xf1, 0x47, 0x12, 0xa4, 0x74, 0x45, 0xec, 0x05, 0x49, - 0x22, 0x0a, 0x40, 0x59, 0x0c, 0xf6, 0xea, 0xcc, 0x27, 0xa9, 0x77, 0x96, 0xc7, 0xac, 0x45, 0xc2, - 0x52, 0x86, 0xef, 0xec, 0x0c, 0x56, 0x9e, 0xcc, 0x0c, 0xc7, 0x87, 0x13, 0x36, 0x61, 0x42, 0x69, - 0xf3, 0x2f, 0x69, 0x3a, 0x36, 0x02, 0x06, 0x11, 0x03, 0xdb, 0xf7, 0x80, 0xec, 0x7a, 0x07, 0x8c, - 0xc6, 0x92, 0x37, 0xbf, 0x15, 0x51, 0x7d, 0xe8, 0x45, 0x04, 0x16, 0x5e, 0x40, 0xf0, 0x21, 0xaa, - 0x84, 0x24, 0x66, 0x91, 0xae, 0xb4, 0x95, 0x4e, 0xdd, 0x95, 0x05, 0xfe, 0x1f, 0xd5, 0x3f, 0x79, - 0x10, 0x8d, 0xa7, 0x8c, 0xcd, 0xf4, 0xa2, 0x60, 0x6a, 0x1c, 0x78, 0xc5, 0xd8, 0x0c, 0xdf, 0x45, - 0x8d, 0x88, 0xc6, 0x29, 0x8c, 0x17, 0xde, 0x12, 0x48, 0xa8, 0x97, 0xda, 0x4a, 0xa7, 0xe6, 0x6a, - 0x02, 0x1b, 0x09, 0x88, 0x4b, 0x80, 0xc4, 0xe1, 0x4e, 0x52, 0x96, 0x12, 0x81, 0xed, 0x25, 0xfe, - 0x32, 0x89, 0x77, 0x92, 0x8a, 0x94, 0x08, 0x2c, 0x93, 0x0c, 0x51, 0x2b, 0x61, 0x73, 0x32, 0xce, - 0xcd, 0xae, 0x57, 0xdb, 0xa5, 0x8e, 0xd6, 0xbd, 0x67, 0xfd, 0x33, 0x19, 0xcb, 0x65, 0x73, 0xe2, - 0x1e, 0x70, 0xf3, 0x68, 0xcf, 0xe2, 0x11, 0x6a, 0x7a, 0x61, 0x98, 0x10, 0x80, 0x31, 0xa7, 0x40, - 0x57, 0x45, 0xb3, 0x47, 0xb7, 0x34, 0x3b, 0x97, 0x1e, 0xde, 0x13, 0xdc, 0x86, 0x97, 0xab, 0xcc, - 0xe7, 0xa8, 0x91, 0x67, 0xb1, 0x8e, 0xd4, 0x8c, 0xcf, 0xf2, 0xdc, 0x96, 0x3c, 0x67, 0x79, 0x66, - 0xb1, 0x5d, 0xe2, 0x39, 0x8b, 0xc2, 0x7c, 0x86, 0xca, 0xdc, 0x88, 0x31, 0x2a, 0x73, 0x20, 0x33, - 0x89, 0x6f, 0xdc, 0x46, 0x5a, 0x7e, 0x70, 0x7e, 0x0b, 0x4d, 0x37, 0x0f, 0x99, 0xf7, 0x91, 0xca, - 0xdd, 0xce, 0x05, 0xe0, 0x23, 0x54, 0x13, 0x51, 0xd1, 0x90, 0x9f, 0x5c, 0xea, 0x34, 0x5d, 0x95, - 0xd7, 0x4e, 0x08, 0xe6, 0x1c, 0xa9, 0x57, 0x6c, 0x19, 0x4c, 0x49, 0x82, 0x3d, 0x54, 0xe1, 0x8b, - 0x20, 0x25, 0x5a, 0xf7, 0xc8, 0x92, 0xab, 0x62, 0xf1, 0x55, 0xd9, 0x8d, 0xdb, 0x67, 0x34, 0xee, - 0x3d, 0xbe, 0xfe, 0x71, 0x52, 0xf8, 0xfa, 0xf3, 0xa4, 0x33, 0xa1, 0xe9, 0x74, 0xe9, 0x5b, 0x01, - 0x8b, 0xec, 0x6c, 0xaf, 0xe4, 0xcf, 0x29, 0x84, 0x33, 0x3b, 0xfd, 0xbc, 0x20, 0x20, 0x0c, 0xe0, - 0xca, 0xce, 0xe6, 0x1c, 0xfd, 0x97, 0x25, 0xb2, 0x3d, 0xf4, 0xef, 0x99, 0xbc, 0x40, 0xea, 0x4a, - 0x8a, 0xc4, 0x74, 0x5a, 0xf7, 0xc1, 0x2d, 0x37, 0x91, 0xb5, 0x74, 0xb7, 0xb6, 0x87, 0x4f, 0x51, - 0xf5, 0x3c, 0x48, 0x29, 0x8b, 0xf1, 0x01, 0xd2, 0x2e, 0x87, 0xef, 0x46, 0x83, 0xbe, 0xf3, 0xd2, - 0x19, 0x5c, 0xb4, 0x0a, 0xb8, 0x86, 0xca, 0x6f, 0x9c, 0xe1, 0xfb, 0x96, 0x82, 0x35, 0xa4, 0xba, - 0x83, 0xfe, 0xc0, 0xb9, 0x1a, 0xb4, 0x8a, 0x1c, 0xee, 0x5d, 0xba, 0xc3, 0x56, 0xb9, 0x37, 0xbb, - 0x5e, 0x1b, 0xca, 0xcd, 0xda, 0x50, 0x7e, 0xad, 0x0d, 0xe5, 0xcb, 0xc6, 0x28, 0xdc, 0x6c, 0x8c, - 0xc2, 0xf7, 0x8d, 0x51, 0xf8, 0xf0, 0x36, 0x37, 0xb4, 0xb3, 0xfd, 0x43, 0xaf, 0x3d, 0x1f, 0xf6, - 0x0f, 0xf8, 0x34, 0x60, 0x09, 0xc9, 0x97, 0x53, 0x8f, 0xc6, 0x76, 0xc4, 0xc2, 0xe5, 0x9c, 0xc0, - 0x1f, 0xaf, 0x5b, 0x64, 0xe4, 0x57, 0xc5, 0xdb, 0x7b, 0xf2, 0x3b, 0x00, 0x00, 0xff, 0xff, 0xf3, - 0xf2, 0xce, 0xa8, 0x03, 0x04, 0x00, 0x00, + // 871 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x55, 0x4d, 0x6f, 0xdb, 0x46, + 0x10, 0x15, 0x25, 0x45, 0x92, 0x47, 0xfe, 0x50, 0x17, 0x46, 0x4c, 0x27, 0x8d, 0x24, 0x28, 0x2d, + 0xea, 0xa6, 0x8d, 0x84, 0xb8, 0x40, 0xd1, 0x4b, 0x80, 0xca, 0x12, 0xd3, 0xb0, 0xb5, 0x28, 0x75, + 0x65, 0x07, 0x48, 0x2f, 0xc4, 0x8a, 0x5a, 0xd8, 0x5b, 0x8b, 0x5c, 0x82, 0x4b, 0x0b, 0xd0, 0x4d, + 0x3d, 0xf7, 0xd2, 0x3f, 0xd1, 0x6b, 0x7f, 0x47, 0x8e, 0x3e, 0x16, 0x3d, 0x18, 0x85, 0x7d, 0xeb, + 0xaf, 0x28, 0x76, 0xb9, 0x94, 0x18, 0xa0, 0x89, 0x83, 0x9e, 0x34, 0x33, 0x6f, 0xdf, 0xdb, 0x99, + 0xc7, 0x11, 0x09, 0x1d, 0x16, 0xfc, 0x4c, 0xbd, 0x98, 0xcd, 0x69, 0x27, 0xa4, 0x91, 0xcf, 0x84, + 0x60, 0x3c, 0x10, 0x9d, 0xf9, 0xb3, 0x09, 0x8d, 0xc9, 0xb3, 0x6c, 0xad, 0x1d, 0x46, 0x3c, 0xe6, + 0xe8, 0xd1, 0x8a, 0xd0, 0xce, 0x82, 0x9a, 0xf0, 0xa0, 0xee, 0x71, 0xe1, 0x73, 0xd1, 0x99, 0x10, + 0x41, 0x57, 0x2a, 0x1e, 0x67, 0x41, 0x42, 0x7f, 0xb0, 0x7b, 0xc6, 0xcf, 0xb8, 0x0a, 0x3b, 0x32, + 0x4a, 0xaa, 0xad, 0x5f, 0x8a, 0xb0, 0xe1, 0x10, 0x9f, 0x8a, 0x90, 0x78, 0x14, 0xed, 0xc2, 0xbd, + 0x29, 0x0d, 0xb8, 0x6f, 0x1a, 0x4d, 0xe3, 0x60, 0x03, 0x27, 0x09, 0x7a, 0x0c, 0x5b, 0x1e, 0x0f, + 0xe2, 0x88, 0x78, 0xb1, 0x7b, 0xce, 0xf9, 0x85, 0x99, 0x57, 0xe8, 0x66, 0x5a, 0x7c, 0xc9, 0xf9, + 0x05, 0x72, 0xa0, 0x16, 0xf1, 0x19, 0x75, 0x33, 0xad, 0x99, 0x85, 0x66, 0xe1, 0xa0, 0x7a, 0xf8, + 0xb8, 0xfd, 0xde, 0xc6, 0xdb, 0x98, 0xcf, 0x28, 0xde, 0x91, 0xe4, 0xd1, 0x1a, 0x45, 0xdf, 0x43, + 0x95, 0x78, 0x31, 0x8f, 0x5c, 0x09, 0x08, 0xb3, 0xa8, 0xa4, 0x3e, 0xbf, 0x43, 0xaa, 0x2b, 0x19, + 0x52, 0x4f, 0x60, 0x20, 0xab, 0x18, 0x0d, 0x61, 0x4b, 0xf5, 0xe6, 0x93, 0x80, 0x9c, 0xd1, 0x48, + 0x98, 0xf7, 0x94, 0xda, 0x93, 0x0f, 0x68, 0x6c, 0x90, 0x50, 0xf0, 0x66, 0xb4, 0x4e, 0x04, 0x3a, + 0x81, 0x9d, 0x90, 0xcf, 0x98, 0xb7, 0x70, 0x45, 0x4c, 0xe2, 0x4b, 0x41, 0x85, 0x59, 0x52, 0x92, + 0x5f, 0xdc, 0x21, 0x39, 0x52, 0xac, 0xb1, 0x22, 0xe1, 0xed, 0x30, 0x93, 0x51, 0x81, 0xe6, 0xf0, + 0x50, 0xab, 0xea, 0x46, 0x5d, 0x8f, 0x84, 0x64, 0xc2, 0x66, 0x2c, 0x66, 0x54, 0x98, 0x65, 0x75, + 0xc3, 0xd7, 0x1f, 0x74, 0x83, 0xee, 0xb4, 0x97, 0xf2, 0x17, 0x78, 0x3f, 0xfc, 0x4f, 0x80, 0x51, + 0xd1, 0xfa, 0x06, 0x60, 0x6d, 0x9c, 0xdc, 0x01, 0x65, 0x5d, 0xba, 0x03, 0x2a, 0x91, 0xd5, 0xe4, + 0x41, 0xe4, 0x9b, 0x05, 0x59, 0x55, 0x89, 0x64, 0x4a, 0x92, 0x62, 0x0b, 0x84, 0xa0, 0x28, 0xcb, + 0x9a, 0xa8, 0x62, 0x74, 0x1f, 0x4a, 0x4a, 0x20, 0x25, 0xea, 0xac, 0xf5, 0x1c, 0xaa, 0x19, 0x7b, + 0x91, 0x09, 0x65, 0x3d, 0xb3, 0x66, 0xa7, 0xe9, 0x3b, 0x2e, 0xfe, 0xd5, 0x80, 0xcd, 0xac, 0x97, + 0xe8, 0xb9, 0xba, 0x87, 0xf1, 0x40, 0xf1, 0xb7, 0x0f, 0x3f, 0xbd, 0x7b, 0x53, 0x18, 0x0f, 0xb0, + 0x26, 0xa1, 0x06, 0x54, 0x99, 0x70, 0xa7, 0x4c, 0x90, 0xc9, 0x8c, 0x4e, 0xd5, 0x82, 0x57, 0x30, + 0x30, 0xd1, 0xd7, 0x15, 0xf4, 0x10, 0x36, 0x98, 0x70, 0x05, 0x25, 0x12, 0x2e, 0x28, 0xb8, 0xc2, + 0xc4, 0x58, 0xe5, 0xad, 0x53, 0x28, 0xca, 0x61, 0xa4, 0x01, 0x01, 0xf1, 0x57, 0x06, 0xc8, 0x18, + 0xed, 0x41, 0x59, 0xed, 0x1e, 0x4b, 0x54, 0xb7, 0x70, 0x49, 0xa6, 0xf6, 0x14, 0x35, 0xa1, 0xfa, + 0xf6, 0x7f, 0x45, 0x82, 0xd9, 0x52, 0xeb, 0x0f, 0x03, 0xf6, 0xde, 0xf1, 0x38, 0xdf, 0x63, 0xd8, + 0xda, 0x89, 0xfc, 0xff, 0x74, 0xc2, 0x23, 0x41, 0x6a, 0x85, 0x1e, 0x15, 0x3c, 0x12, 0x68, 0x2b, + 0xd0, 0x3e, 0x54, 0xe4, 0x01, 0x69, 0x85, 0x59, 0x54, 0x68, 0xd9, 0x23, 0x81, 0x74, 0xa2, 0xf5, + 0x09, 0x94, 0xa5, 0x0f, 0x76, 0x5f, 0xc8, 0x53, 0x7a, 0x6c, 0x61, 0x1a, 0xcd, 0xc2, 0xc1, 0x16, + 0x2e, 0x27, 0x73, 0x8b, 0xd6, 0xef, 0x06, 0x6c, 0x77, 0xa7, 0xd3, 0x88, 0x0a, 0xf1, 0x8a, 0x5f, + 0x7a, 0xe7, 0xc9, 0xe3, 0x27, 0x49, 0x25, 0x9d, 0x46, 0xa7, 0x68, 0x01, 0xe5, 0x79, 0x72, 0x48, + 0x8d, 0x53, 0x3d, 0xdc, 0x6f, 0x27, 0xef, 0xb9, 0xb6, 0x7c, 0xcf, 0xad, 0x86, 0xe8, 0x71, 0x16, + 0x1c, 0xf5, 0xdf, 0x5c, 0x37, 0x72, 0x7f, 0x5d, 0x37, 0x3e, 0x3b, 0x63, 0xf1, 0xf9, 0xe5, 0xa4, + 0xed, 0x71, 0xbf, 0xa3, 0x5f, 0x8a, 0xc9, 0xcf, 0x53, 0x31, 0xbd, 0xe8, 0xc4, 0x8b, 0x90, 0x0a, + 0x45, 0xf8, 0xe7, 0xba, 0xf1, 0x91, 0x16, 0xff, 0x92, 0xfb, 0x2c, 0xa6, 0x7e, 0x18, 0x2f, 0x70, + 0x7a, 0xdf, 0x93, 0x2b, 0x03, 0x4a, 0x89, 0x39, 0x68, 0x07, 0xaa, 0xa7, 0xce, 0x78, 0x64, 0xf5, + 0xec, 0x17, 0xb6, 0xd5, 0xaf, 0xe5, 0x50, 0x05, 0x8a, 0x03, 0xdb, 0x39, 0xa9, 0x19, 0xa8, 0x0a, + 0x65, 0x6c, 0xf5, 0x2c, 0xfb, 0x95, 0x55, 0xcb, 0xcb, 0xf2, 0xd1, 0x29, 0x76, 0x6a, 0x45, 0x19, + 0x8d, 0x2d, 0xa7, 0x5f, 0xab, 0xa0, 0x6d, 0x80, 0xf1, 0xe9, 0xc8, 0xc2, 0xae, 0x42, 0x6a, 0xe8, + 0x11, 0xdc, 0x1f, 0x0c, 0xfb, 0xf6, 0x8b, 0xd7, 0xee, 0x68, 0x78, 0x6c, 0xf7, 0x5e, 0xbb, 0x83, + 0xae, 0xd3, 0xfd, 0xce, 0xc2, 0xe3, 0xda, 0x72, 0xb9, 0xfc, 0x16, 0x7d, 0x0c, 0xbb, 0x1a, 0xee, + 0x0d, 0x9d, 0x13, 0xdc, 0xed, 0x9d, 0xb8, 0x2f, 0x87, 0xc3, 0x1f, 0x24, 0xb8, 0x34, 0x50, 0x03, + 0xf6, 0x34, 0x8a, 0x87, 0xc7, 0x96, 0x3b, 0xb2, 0xf0, 0xc0, 0x1e, 0x8f, 0xed, 0xa1, 0xa3, 0xd8, + 0xcb, 0x7c, 0x86, 0xae, 0x0e, 0x64, 0xb5, 0x97, 0xc5, 0xa3, 0x8b, 0x37, 0x37, 0x75, 0xe3, 0xea, + 0xa6, 0x6e, 0xfc, 0x7d, 0x53, 0x37, 0x7e, 0xbb, 0xad, 0xe7, 0xae, 0x6e, 0xeb, 0xb9, 0x3f, 0x6f, + 0xeb, 0xb9, 0x9f, 0x7e, 0xcc, 0x78, 0x66, 0xa7, 0xfb, 0x72, 0x4c, 0x26, 0x62, 0xfd, 0x99, 0x7a, + 0xea, 0xf1, 0x88, 0x66, 0xd3, 0x73, 0xc2, 0x82, 0x8e, 0xcf, 0xa7, 0x97, 0x33, 0x2a, 0xde, 0xfa, + 0x86, 0x29, 0x8b, 0x27, 0x25, 0xf5, 0x85, 0xf9, 0xea, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x62, + 0x3a, 0xbf, 0x78, 0xe9, 0x06, 0x00, 0x00, } func (m *Namespace) Marshal() (dAtA []byte, err error) { @@ -470,10 +715,10 @@ func (m *Namespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - if len(m.AddressRoles) > 0 { - for iNdEx := len(m.AddressRoles) - 1; iNdEx >= 0; iNdEx-- { + if len(m.PolicyManagerCapabilities) > 0 { + for iNdEx := len(m.PolicyManagerCapabilities) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.AddressRoles[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.PolicyManagerCapabilities[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -484,10 +729,10 @@ func (m *Namespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0x3a } } - if len(m.RolePermissions) > 0 { - for iNdEx := len(m.RolePermissions) - 1; iNdEx >= 0; iNdEx-- { + if len(m.PolicyStatuses) > 0 { + for iNdEx := len(m.PolicyStatuses) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.RolePermissions[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.PolicyStatuses[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -498,40 +743,52 @@ func (m *Namespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0x32 } } - if m.BurnsPaused { - i-- - if m.BurnsPaused { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + if len(m.RoleManagers) > 0 { + for iNdEx := len(m.RoleManagers) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RoleManagers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPermissions(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - i-- - dAtA[i] = 0x28 } - if m.SendsPaused { - i-- - if m.SendsPaused { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + if len(m.ActorRoles) > 0 { + for iNdEx := len(m.ActorRoles) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ActorRoles[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPermissions(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - i-- - dAtA[i] = 0x20 } - if m.MintsPaused { - i-- - if m.MintsPaused { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + if len(m.RolePermissions) > 0 { + for iNdEx := len(m.RolePermissions) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RolePermissions[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPermissions(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - i-- - dAtA[i] = 0x18 } - if len(m.WasmHook) > 0 { - i -= len(m.WasmHook) - copy(dAtA[i:], m.WasmHook) - i = encodeVarintPermissions(dAtA, i, uint64(len(m.WasmHook))) + if len(m.ContractHook) > 0 { + i -= len(m.ContractHook) + copy(dAtA[i:], m.ContractHook) + i = encodeVarintPermissions(dAtA, i, uint64(len(m.ContractHook))) i-- dAtA[i] = 0x12 } @@ -545,7 +802,7 @@ func (m *Namespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *AddressRoles) Marshal() (dAtA []byte, err error) { +func (m *ActorRoles) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -555,12 +812,12 @@ func (m *AddressRoles) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *AddressRoles) MarshalTo(dAtA []byte) (int, error) { +func (m *ActorRoles) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AddressRoles) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ActorRoles) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -574,17 +831,17 @@ func (m *AddressRoles) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0x12 } } - if len(m.Address) > 0 { - i -= len(m.Address) - copy(dAtA[i:], m.Address) - i = encodeVarintPermissions(dAtA, i, uint64(len(m.Address))) + if len(m.Actor) > 0 { + i -= len(m.Actor) + copy(dAtA[i:], m.Actor) + i = encodeVarintPermissions(dAtA, i, uint64(len(m.Actor))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *Role) Marshal() (dAtA []byte, err error) { +func (m *RoleActors) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -594,20 +851,24 @@ func (m *Role) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *Role) MarshalTo(dAtA []byte) (int, error) { +func (m *RoleActors) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *Role) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *RoleActors) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Permissions != 0 { - i = encodeVarintPermissions(dAtA, i, uint64(m.Permissions)) - i-- - dAtA[i] = 0x10 + if len(m.Actors) > 0 { + for iNdEx := len(m.Actors) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Actors[iNdEx]) + copy(dAtA[i:], m.Actors[iNdEx]) + i = encodeVarintPermissions(dAtA, i, uint64(len(m.Actors[iNdEx]))) + i-- + dAtA[i] = 0x12 + } } if len(m.Role) > 0 { i -= len(m.Role) @@ -619,7 +880,7 @@ func (m *Role) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *RoleIDs) Marshal() (dAtA []byte, err error) { +func (m *RoleManager) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -629,38 +890,36 @@ func (m *RoleIDs) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *RoleIDs) MarshalTo(dAtA []byte) (int, error) { +func (m *RoleManager) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RoleIDs) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *RoleManager) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.RoleIds) > 0 { - dAtA2 := make([]byte, len(m.RoleIds)*10) - var j1 int - for _, num := range m.RoleIds { - for num >= 1<<7 { - dAtA2[j1] = uint8(uint64(num)&0x7f | 0x80) - num >>= 7 - j1++ - } - dAtA2[j1] = uint8(num) - j1++ + if len(m.Roles) > 0 { + for iNdEx := len(m.Roles) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Roles[iNdEx]) + copy(dAtA[i:], m.Roles[iNdEx]) + i = encodeVarintPermissions(dAtA, i, uint64(len(m.Roles[iNdEx]))) + i-- + dAtA[i] = 0x12 } - i -= j1 - copy(dAtA[i:], dAtA2[:j1]) - i = encodeVarintPermissions(dAtA, i, uint64(j1)) + } + if len(m.Manager) > 0 { + i -= len(m.Manager) + copy(dAtA[i:], m.Manager) + i = encodeVarintPermissions(dAtA, i, uint64(len(m.Manager))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *Voucher) Marshal() (dAtA []byte, err error) { +func (m *PolicyStatus) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -670,29 +929,176 @@ func (m *Voucher) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *Voucher) MarshalTo(dAtA []byte) (int, error) { +func (m *PolicyStatus) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *Voucher) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *PolicyStatus) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Coins) > 0 { - for iNdEx := len(m.Coins) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Coins[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPermissions(dAtA, i, uint64(size)) + if m.IsSealed { + i-- + if m.IsSealed { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x18 + } + if m.IsDisabled { + i-- + if m.IsDisabled { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x10 + } + if m.Action != 0 { + i = encodeVarintPermissions(dAtA, i, uint64(m.Action)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *Role) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Role) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Role) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Permissions != 0 { + i = encodeVarintPermissions(dAtA, i, uint64(m.Permissions)) + i-- + dAtA[i] = 0x18 + } + if m.RoleId != 0 { + i = encodeVarintPermissions(dAtA, i, uint64(m.RoleId)) + i-- + dAtA[i] = 0x10 + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPermissions(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *PolicyManagerCapability) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *PolicyManagerCapability) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PolicyManagerCapability) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.CanSeal { + i-- + if m.CanSeal { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x20 + } + if m.CanDisable { + i-- + if m.CanDisable { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x18 + } + if m.Action != 0 { + i = encodeVarintPermissions(dAtA, i, uint64(m.Action)) + i-- + dAtA[i] = 0x10 + } + if len(m.Manager) > 0 { + i -= len(m.Manager) + copy(dAtA[i:], m.Manager) + i = encodeVarintPermissions(dAtA, i, uint64(len(m.Manager))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *RoleIDs) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *RoleIDs) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RoleIDs) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.RoleIds) > 0 { + dAtA2 := make([]byte, len(m.RoleIds)*10) + var j1 int + for _, num := range m.RoleIds { + for num >= 1<<7 { + dAtA2[j1] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j1++ } - i-- - dAtA[i] = 0xa + dAtA2[j1] = uint8(num) + j1++ } + i -= j1 + copy(dAtA[i:], dAtA2[:j1]) + i = encodeVarintPermissions(dAtA, i, uint64(j1)) + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } @@ -717,18 +1123,16 @@ func (m *AddressVoucher) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - if m.Voucher != nil { - { - size, err := m.Voucher.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPermissions(dAtA, i, uint64(size)) + { + size := m.Voucher.Size() + i -= size + if _, err := m.Voucher.MarshalTo(dAtA[i:]); err != nil { + return 0, err } - i-- - dAtA[i] = 0x12 + i = encodeVarintPermissions(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x12 if len(m.Address) > 0 { i -= len(m.Address) copy(dAtA[i:], m.Address) @@ -760,27 +1164,36 @@ func (m *Namespace) Size() (n int) { if l > 0 { n += 1 + l + sovPermissions(uint64(l)) } - l = len(m.WasmHook) + l = len(m.ContractHook) if l > 0 { n += 1 + l + sovPermissions(uint64(l)) } - if m.MintsPaused { - n += 2 + if len(m.RolePermissions) > 0 { + for _, e := range m.RolePermissions { + l = e.Size() + n += 1 + l + sovPermissions(uint64(l)) + } } - if m.SendsPaused { - n += 2 + if len(m.ActorRoles) > 0 { + for _, e := range m.ActorRoles { + l = e.Size() + n += 1 + l + sovPermissions(uint64(l)) + } } - if m.BurnsPaused { - n += 2 + if len(m.RoleManagers) > 0 { + for _, e := range m.RoleManagers { + l = e.Size() + n += 1 + l + sovPermissions(uint64(l)) + } } - if len(m.RolePermissions) > 0 { - for _, e := range m.RolePermissions { + if len(m.PolicyStatuses) > 0 { + for _, e := range m.PolicyStatuses { l = e.Size() n += 1 + l + sovPermissions(uint64(l)) } } - if len(m.AddressRoles) > 0 { - for _, e := range m.AddressRoles { + if len(m.PolicyManagerCapabilities) > 0 { + for _, e := range m.PolicyManagerCapabilities { l = e.Size() n += 1 + l + sovPermissions(uint64(l)) } @@ -788,13 +1201,13 @@ func (m *Namespace) Size() (n int) { return n } -func (m *AddressRoles) Size() (n int) { +func (m *ActorRoles) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Address) + l = len(m.Actor) if l > 0 { n += 1 + l + sovPermissions(uint64(l)) } @@ -807,7 +1220,7 @@ func (m *AddressRoles) Size() (n int) { return n } -func (m *Role) Size() (n int) { +func (m *RoleActors) Size() (n int) { if m == nil { return 0 } @@ -817,39 +1230,105 @@ func (m *Role) Size() (n int) { if l > 0 { n += 1 + l + sovPermissions(uint64(l)) } + if len(m.Actors) > 0 { + for _, s := range m.Actors { + l = len(s) + n += 1 + l + sovPermissions(uint64(l)) + } + } + return n +} + +func (m *RoleManager) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Manager) + if l > 0 { + n += 1 + l + sovPermissions(uint64(l)) + } + if len(m.Roles) > 0 { + for _, s := range m.Roles { + l = len(s) + n += 1 + l + sovPermissions(uint64(l)) + } + } + return n +} + +func (m *PolicyStatus) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Action != 0 { + n += 1 + sovPermissions(uint64(m.Action)) + } + if m.IsDisabled { + n += 2 + } + if m.IsSealed { + n += 2 + } + return n +} + +func (m *Role) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPermissions(uint64(l)) + } + if m.RoleId != 0 { + n += 1 + sovPermissions(uint64(m.RoleId)) + } if m.Permissions != 0 { n += 1 + sovPermissions(uint64(m.Permissions)) } return n } -func (m *RoleIDs) Size() (n int) { +func (m *PolicyManagerCapability) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.RoleIds) > 0 { - l = 0 - for _, e := range m.RoleIds { - l += sovPermissions(uint64(e)) - } - n += 1 + sovPermissions(uint64(l)) + l + l = len(m.Manager) + if l > 0 { + n += 1 + l + sovPermissions(uint64(l)) + } + if m.Action != 0 { + n += 1 + sovPermissions(uint64(m.Action)) + } + if m.CanDisable { + n += 2 + } + if m.CanSeal { + n += 2 } return n } -func (m *Voucher) Size() (n int) { +func (m *RoleIDs) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.Coins) > 0 { - for _, e := range m.Coins { - l = e.Size() - n += 1 + l + sovPermissions(uint64(l)) + if len(m.RoleIds) > 0 { + l = 0 + for _, e := range m.RoleIds { + l += sovPermissions(uint64(e)) } + n += 1 + sovPermissions(uint64(l)) + l } return n } @@ -864,10 +1343,8 @@ func (m *AddressVoucher) Size() (n int) { if l > 0 { n += 1 + l + sovPermissions(uint64(l)) } - if m.Voucher != nil { - l = m.Voucher.Size() - n += 1 + l + sovPermissions(uint64(l)) - } + l = m.Voucher.Size() + n += 1 + l + sovPermissions(uint64(l)) return n } @@ -940,7 +1417,7 @@ func (m *Namespace) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field WasmHook", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ContractHook", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -965,16 +1442,578 @@ func (m *Namespace) Unmarshal(dAtA []byte) error { if postIndex < 0 { return ErrInvalidLengthPermissions } - if postIndex > l { + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ContractHook = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RolePermissions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPermissions + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPermissions + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RolePermissions = append(m.RolePermissions, &Role{}) + if err := m.RolePermissions[len(m.RolePermissions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ActorRoles", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPermissions + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPermissions + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ActorRoles = append(m.ActorRoles, &ActorRoles{}) + if err := m.ActorRoles[len(m.ActorRoles)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RoleManagers", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPermissions + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPermissions + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RoleManagers = append(m.RoleManagers, &RoleManager{}) + if err := m.RoleManagers[len(m.RoleManagers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PolicyStatuses", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPermissions + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPermissions + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PolicyStatuses = append(m.PolicyStatuses, &PolicyStatus{}) + if err := m.PolicyStatuses[len(m.PolicyStatuses)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PolicyManagerCapabilities", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPermissions + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPermissions + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PolicyManagerCapabilities = append(m.PolicyManagerCapabilities, &PolicyManagerCapability{}) + if err := m.PolicyManagerCapabilities[len(m.PolicyManagerCapabilities)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPermissions(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthPermissions + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ActorRoles) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ActorRoles: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ActorRoles: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Actor", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPermissions + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPermissions + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Actor = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Roles", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPermissions + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPermissions + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Roles = append(m.Roles, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPermissions(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthPermissions + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *RoleActors) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: RoleActors: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RoleActors: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Role", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPermissions + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPermissions + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Role = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Actors", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPermissions + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPermissions + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Actors = append(m.Actors, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPermissions(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthPermissions + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *RoleManager) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: RoleManager: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RoleManager: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Manager", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPermissions + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPermissions + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Manager = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Roles", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPermissions + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPermissions + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Roles = append(m.Roles, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPermissions(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthPermissions + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *PolicyStatus) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { return io.ErrUnexpectedEOF } - m.WasmHook = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: PolicyStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: PolicyStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field MintsPaused", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Action", wireType) } - var v int + m.Action = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowPermissions @@ -984,15 +2023,14 @@ func (m *Namespace) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= int(b&0x7F) << shift + m.Action |= Action(b&0x7F) << shift if b < 0x80 { break } } - m.MintsPaused = bool(v != 0) - case 4: + case 2: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field SendsPaused", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field IsDisabled", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -1009,10 +2047,10 @@ func (m *Namespace) Unmarshal(dAtA []byte) error { break } } - m.SendsPaused = bool(v != 0) - case 5: + m.IsDisabled = bool(v != 0) + case 3: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field BurnsPaused", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field IsSealed", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -1029,75 +2067,7 @@ func (m *Namespace) Unmarshal(dAtA []byte) error { break } } - m.BurnsPaused = bool(v != 0) - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RolePermissions", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPermissions - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPermissions - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPermissions - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.RolePermissions = append(m.RolePermissions, &Role{}) - if err := m.RolePermissions[len(m.RolePermissions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AddressRoles", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPermissions - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPermissions - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPermissions - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.AddressRoles = append(m.AddressRoles, &AddressRoles{}) - if err := m.AddressRoles[len(m.AddressRoles)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex + m.IsSealed = bool(v != 0) default: iNdEx = preIndex skippy, err := skipPermissions(dAtA[iNdEx:]) @@ -1119,7 +2089,7 @@ func (m *Namespace) Unmarshal(dAtA []byte) error { } return nil } -func (m *AddressRoles) Unmarshal(dAtA []byte) error { +func (m *Role) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -1142,15 +2112,15 @@ func (m *AddressRoles) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AddressRoles: wiretype end group for non-group") + return fmt.Errorf("proto: Role: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AddressRoles: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: Role: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -1178,13 +2148,13 @@ func (m *AddressRoles) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Address = string(dAtA[iNdEx:postIndex]) + m.Name = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Roles", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field RoleId", wireType) } - var stringLen uint64 + m.RoleId = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowPermissions @@ -1194,24 +2164,30 @@ func (m *AddressRoles) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.RoleId |= uint32(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPermissions - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPermissions + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) } - if postIndex > l { - return io.ErrUnexpectedEOF + m.Permissions = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Permissions |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } } - m.Roles = append(m.Roles, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipPermissions(dAtA[iNdEx:]) @@ -1233,7 +2209,7 @@ func (m *AddressRoles) Unmarshal(dAtA []byte) error { } return nil } -func (m *Role) Unmarshal(dAtA []byte) error { +func (m *PolicyManagerCapability) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -1256,15 +2232,15 @@ func (m *Role) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: Role: wiretype end group for non-group") + return fmt.Errorf("proto: PolicyManagerCapability: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: Role: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: PolicyManagerCapability: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Role", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Manager", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -1292,13 +2268,13 @@ func (m *Role) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Role = string(dAtA[iNdEx:postIndex]) + m.Manager = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Action", wireType) } - m.Permissions = 0 + m.Action = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowPermissions @@ -1308,11 +2284,51 @@ func (m *Role) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Permissions |= uint32(b&0x7F) << shift + m.Action |= Action(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CanDisable", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.CanDisable = bool(v != 0) + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CanSeal", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPermissions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift if b < 0x80 { break } } + m.CanSeal = bool(v != 0) default: iNdEx = preIndex skippy, err := skipPermissions(dAtA[iNdEx:]) @@ -1460,90 +2476,6 @@ func (m *RoleIDs) Unmarshal(dAtA []byte) error { } return nil } -func (m *Voucher) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPermissions - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: Voucher: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: Voucher: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Coins", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPermissions - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPermissions - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPermissions - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Coins = append(m.Coins, types.Coin{}) - if err := m.Coins[len(m.Coins)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipPermissions(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthPermissions - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func (m *AddressVoucher) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -1634,9 +2566,6 @@ func (m *AddressVoucher) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Voucher == nil { - m.Voucher = &Voucher{} - } if err := m.Voucher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } diff --git a/chain/permissions/types/query.pb.go b/chain/permissions/types/query.pb.go index 78206717..6fe5e1e4 100644 --- a/chain/permissions/types/query.pb.go +++ b/chain/permissions/types/query.pb.go @@ -6,8 +6,8 @@ package types import ( context "context" fmt "fmt" + _ "github.com/cosmos/cosmos-sdk/types" github_com_cosmos_cosmos_sdk_types "github.com/cosmos/cosmos-sdk/types" - types "github.com/cosmos/cosmos-sdk/types" _ "github.com/cosmos/cosmos-sdk/types/query" _ "github.com/cosmos/gogoproto/gogoproto" grpc1 "github.com/cosmos/gogoproto/grpc" @@ -115,23 +115,23 @@ func (m *QueryParamsResponse) GetParams() Params { return Params{} } -// QueryAllNamespacesRequest is the request type for the Query/AllNamespaces RPC +// QueryNamespaceDenomsRequest is the request type for the Query/NamespaceDenoms RPC // method. -type QueryAllNamespacesRequest struct { +type QueryNamespaceDenomsRequest struct { } -func (m *QueryAllNamespacesRequest) Reset() { *m = QueryAllNamespacesRequest{} } -func (m *QueryAllNamespacesRequest) String() string { return proto.CompactTextString(m) } -func (*QueryAllNamespacesRequest) ProtoMessage() {} -func (*QueryAllNamespacesRequest) Descriptor() ([]byte, []int) { +func (m *QueryNamespaceDenomsRequest) Reset() { *m = QueryNamespaceDenomsRequest{} } +func (m *QueryNamespaceDenomsRequest) String() string { return proto.CompactTextString(m) } +func (*QueryNamespaceDenomsRequest) ProtoMessage() {} +func (*QueryNamespaceDenomsRequest) Descriptor() ([]byte, []int) { return fileDescriptor_e0ae50f1018498b3, []int{2} } -func (m *QueryAllNamespacesRequest) XXX_Unmarshal(b []byte) error { +func (m *QueryNamespaceDenomsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *QueryAllNamespacesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *QueryNamespaceDenomsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_QueryAllNamespacesRequest.Marshal(b, m, deterministic) + return xxx_messageInfo_QueryNamespaceDenomsRequest.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -141,36 +141,36 @@ func (m *QueryAllNamespacesRequest) XXX_Marshal(b []byte, deterministic bool) ([ return b[:n], nil } } -func (m *QueryAllNamespacesRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryAllNamespacesRequest.Merge(m, src) +func (m *QueryNamespaceDenomsRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryNamespaceDenomsRequest.Merge(m, src) } -func (m *QueryAllNamespacesRequest) XXX_Size() int { +func (m *QueryNamespaceDenomsRequest) XXX_Size() int { return m.Size() } -func (m *QueryAllNamespacesRequest) XXX_DiscardUnknown() { - xxx_messageInfo_QueryAllNamespacesRequest.DiscardUnknown(m) +func (m *QueryNamespaceDenomsRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryNamespaceDenomsRequest.DiscardUnknown(m) } -var xxx_messageInfo_QueryAllNamespacesRequest proto.InternalMessageInfo +var xxx_messageInfo_QueryNamespaceDenomsRequest proto.InternalMessageInfo -// QueryAllNamespacesResponse is the response type for the Query/AllNamespaces +// QueryNamespaceDenomsResponse is the response type for the Query/NamespaceDenoms // RPC method. -type QueryAllNamespacesResponse struct { - Namespaces []*Namespace `protobuf:"bytes,1,rep,name=namespaces,proto3" json:"namespaces,omitempty"` +type QueryNamespaceDenomsResponse struct { + Denoms []string `protobuf:"bytes,1,rep,name=denoms,proto3" json:"denoms,omitempty"` } -func (m *QueryAllNamespacesResponse) Reset() { *m = QueryAllNamespacesResponse{} } -func (m *QueryAllNamespacesResponse) String() string { return proto.CompactTextString(m) } -func (*QueryAllNamespacesResponse) ProtoMessage() {} -func (*QueryAllNamespacesResponse) Descriptor() ([]byte, []int) { +func (m *QueryNamespaceDenomsResponse) Reset() { *m = QueryNamespaceDenomsResponse{} } +func (m *QueryNamespaceDenomsResponse) String() string { return proto.CompactTextString(m) } +func (*QueryNamespaceDenomsResponse) ProtoMessage() {} +func (*QueryNamespaceDenomsResponse) Descriptor() ([]byte, []int) { return fileDescriptor_e0ae50f1018498b3, []int{3} } -func (m *QueryAllNamespacesResponse) XXX_Unmarshal(b []byte) error { +func (m *QueryNamespaceDenomsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *QueryAllNamespacesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *QueryNamespaceDenomsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_QueryAllNamespacesResponse.Marshal(b, m, deterministic) + return xxx_messageInfo_QueryNamespaceDenomsResponse.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -180,44 +180,81 @@ func (m *QueryAllNamespacesResponse) XXX_Marshal(b []byte, deterministic bool) ( return b[:n], nil } } -func (m *QueryAllNamespacesResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryAllNamespacesResponse.Merge(m, src) +func (m *QueryNamespaceDenomsResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryNamespaceDenomsResponse.Merge(m, src) } -func (m *QueryAllNamespacesResponse) XXX_Size() int { +func (m *QueryNamespaceDenomsResponse) XXX_Size() int { return m.Size() } -func (m *QueryAllNamespacesResponse) XXX_DiscardUnknown() { - xxx_messageInfo_QueryAllNamespacesResponse.DiscardUnknown(m) +func (m *QueryNamespaceDenomsResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryNamespaceDenomsResponse.DiscardUnknown(m) } -var xxx_messageInfo_QueryAllNamespacesResponse proto.InternalMessageInfo +var xxx_messageInfo_QueryNamespaceDenomsResponse proto.InternalMessageInfo -func (m *QueryAllNamespacesResponse) GetNamespaces() []*Namespace { +func (m *QueryNamespaceDenomsResponse) GetDenoms() []string { if m != nil { - return m.Namespaces + return m.Denoms } return nil } -// QueryNamespaceByDenomRequest is the request type for the -// Query/NamespaceByDenom RPC method. -type QueryNamespaceByDenomRequest struct { - Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` - IncludeRoles bool `protobuf:"varint,2,opt,name=include_roles,json=includeRoles,proto3" json:"include_roles,omitempty"` +// QueryNamespacesRequest is the request type for the Query/Namespaces RPC +// method. +type QueryNamespacesRequest struct { } -func (m *QueryNamespaceByDenomRequest) Reset() { *m = QueryNamespaceByDenomRequest{} } -func (m *QueryNamespaceByDenomRequest) String() string { return proto.CompactTextString(m) } -func (*QueryNamespaceByDenomRequest) ProtoMessage() {} -func (*QueryNamespaceByDenomRequest) Descriptor() ([]byte, []int) { +func (m *QueryNamespacesRequest) Reset() { *m = QueryNamespacesRequest{} } +func (m *QueryNamespacesRequest) String() string { return proto.CompactTextString(m) } +func (*QueryNamespacesRequest) ProtoMessage() {} +func (*QueryNamespacesRequest) Descriptor() ([]byte, []int) { return fileDescriptor_e0ae50f1018498b3, []int{4} } -func (m *QueryNamespaceByDenomRequest) XXX_Unmarshal(b []byte) error { +func (m *QueryNamespacesRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryNamespacesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryNamespacesRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *QueryNamespacesRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryNamespacesRequest.Merge(m, src) +} +func (m *QueryNamespacesRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryNamespacesRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryNamespacesRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_QueryNamespacesRequest proto.InternalMessageInfo + +// QueryNamespacesResponse is the response type for the Query/Namespaces +// RPC method. +type QueryNamespacesResponse struct { + Namespaces []*Namespace `protobuf:"bytes,1,rep,name=namespaces,proto3" json:"namespaces,omitempty"` +} + +func (m *QueryNamespacesResponse) Reset() { *m = QueryNamespacesResponse{} } +func (m *QueryNamespacesResponse) String() string { return proto.CompactTextString(m) } +func (*QueryNamespacesResponse) ProtoMessage() {} +func (*QueryNamespacesResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{5} +} +func (m *QueryNamespacesResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *QueryNamespaceByDenomRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *QueryNamespacesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_QueryNamespaceByDenomRequest.Marshal(b, m, deterministic) + return xxx_messageInfo_QueryNamespacesResponse.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -227,50 +264,89 @@ func (m *QueryNamespaceByDenomRequest) XXX_Marshal(b []byte, deterministic bool) return b[:n], nil } } -func (m *QueryNamespaceByDenomRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryNamespaceByDenomRequest.Merge(m, src) +func (m *QueryNamespacesResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryNamespacesResponse.Merge(m, src) } -func (m *QueryNamespaceByDenomRequest) XXX_Size() int { +func (m *QueryNamespacesResponse) XXX_Size() int { return m.Size() } -func (m *QueryNamespaceByDenomRequest) XXX_DiscardUnknown() { - xxx_messageInfo_QueryNamespaceByDenomRequest.DiscardUnknown(m) +func (m *QueryNamespacesResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryNamespacesResponse.DiscardUnknown(m) } -var xxx_messageInfo_QueryNamespaceByDenomRequest proto.InternalMessageInfo +var xxx_messageInfo_QueryNamespacesResponse proto.InternalMessageInfo -func (m *QueryNamespaceByDenomRequest) GetDenom() string { +func (m *QueryNamespacesResponse) GetNamespaces() []*Namespace { if m != nil { - return m.Denom + return m.Namespaces } - return "" + return nil } -func (m *QueryNamespaceByDenomRequest) GetIncludeRoles() bool { +// QueryNamespaceRequest is the request type for the +// Query/Namespace RPC method. +type QueryNamespaceRequest struct { + Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` +} + +func (m *QueryNamespaceRequest) Reset() { *m = QueryNamespaceRequest{} } +func (m *QueryNamespaceRequest) String() string { return proto.CompactTextString(m) } +func (*QueryNamespaceRequest) ProtoMessage() {} +func (*QueryNamespaceRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{6} +} +func (m *QueryNamespaceRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryNamespaceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryNamespaceRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *QueryNamespaceRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryNamespaceRequest.Merge(m, src) +} +func (m *QueryNamespaceRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryNamespaceRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryNamespaceRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_QueryNamespaceRequest proto.InternalMessageInfo + +func (m *QueryNamespaceRequest) GetDenom() string { if m != nil { - return m.IncludeRoles + return m.Denom } - return false + return "" } -// QueryNamespaceByDenomResponse is the response type for the +// QueryNamespaceResponse is the response type for the // Query/NamespaceByDenom RPC method. -type QueryNamespaceByDenomResponse struct { +type QueryNamespaceResponse struct { Namespace *Namespace `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` } -func (m *QueryNamespaceByDenomResponse) Reset() { *m = QueryNamespaceByDenomResponse{} } -func (m *QueryNamespaceByDenomResponse) String() string { return proto.CompactTextString(m) } -func (*QueryNamespaceByDenomResponse) ProtoMessage() {} -func (*QueryNamespaceByDenomResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e0ae50f1018498b3, []int{5} +func (m *QueryNamespaceResponse) Reset() { *m = QueryNamespaceResponse{} } +func (m *QueryNamespaceResponse) String() string { return proto.CompactTextString(m) } +func (*QueryNamespaceResponse) ProtoMessage() {} +func (*QueryNamespaceResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{7} } -func (m *QueryNamespaceByDenomResponse) XXX_Unmarshal(b []byte) error { +func (m *QueryNamespaceResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *QueryNamespaceByDenomResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *QueryNamespaceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_QueryNamespaceByDenomResponse.Marshal(b, m, deterministic) + return xxx_messageInfo_QueryNamespaceResponse.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -280,19 +356,19 @@ func (m *QueryNamespaceByDenomResponse) XXX_Marshal(b []byte, deterministic bool return b[:n], nil } } -func (m *QueryNamespaceByDenomResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryNamespaceByDenomResponse.Merge(m, src) +func (m *QueryNamespaceResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryNamespaceResponse.Merge(m, src) } -func (m *QueryNamespaceByDenomResponse) XXX_Size() int { +func (m *QueryNamespaceResponse) XXX_Size() int { return m.Size() } -func (m *QueryNamespaceByDenomResponse) XXX_DiscardUnknown() { - xxx_messageInfo_QueryNamespaceByDenomResponse.DiscardUnknown(m) +func (m *QueryNamespaceResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryNamespaceResponse.DiscardUnknown(m) } -var xxx_messageInfo_QueryNamespaceByDenomResponse proto.InternalMessageInfo +var xxx_messageInfo_QueryNamespaceResponse proto.InternalMessageInfo -func (m *QueryNamespaceByDenomResponse) GetNamespace() *Namespace { +func (m *QueryNamespaceResponse) GetNamespace() *Namespace { if m != nil { return m.Namespace } @@ -301,23 +377,23 @@ func (m *QueryNamespaceByDenomResponse) GetNamespace() *Namespace { // QueryAddressesByRoleRequest is the request type for the Query/AddressesByRole // RPC method. -type QueryAddressesByRoleRequest struct { +type QueryActorsByRoleRequest struct { Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` Role string `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"` } -func (m *QueryAddressesByRoleRequest) Reset() { *m = QueryAddressesByRoleRequest{} } -func (m *QueryAddressesByRoleRequest) String() string { return proto.CompactTextString(m) } -func (*QueryAddressesByRoleRequest) ProtoMessage() {} -func (*QueryAddressesByRoleRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e0ae50f1018498b3, []int{6} +func (m *QueryActorsByRoleRequest) Reset() { *m = QueryActorsByRoleRequest{} } +func (m *QueryActorsByRoleRequest) String() string { return proto.CompactTextString(m) } +func (*QueryActorsByRoleRequest) ProtoMessage() {} +func (*QueryActorsByRoleRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{8} } -func (m *QueryAddressesByRoleRequest) XXX_Unmarshal(b []byte) error { +func (m *QueryActorsByRoleRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *QueryAddressesByRoleRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *QueryActorsByRoleRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_QueryAddressesByRoleRequest.Marshal(b, m, deterministic) + return xxx_messageInfo_QueryActorsByRoleRequest.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -327,26 +403,26 @@ func (m *QueryAddressesByRoleRequest) XXX_Marshal(b []byte, deterministic bool) return b[:n], nil } } -func (m *QueryAddressesByRoleRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryAddressesByRoleRequest.Merge(m, src) +func (m *QueryActorsByRoleRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryActorsByRoleRequest.Merge(m, src) } -func (m *QueryAddressesByRoleRequest) XXX_Size() int { +func (m *QueryActorsByRoleRequest) XXX_Size() int { return m.Size() } -func (m *QueryAddressesByRoleRequest) XXX_DiscardUnknown() { - xxx_messageInfo_QueryAddressesByRoleRequest.DiscardUnknown(m) +func (m *QueryActorsByRoleRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryActorsByRoleRequest.DiscardUnknown(m) } -var xxx_messageInfo_QueryAddressesByRoleRequest proto.InternalMessageInfo +var xxx_messageInfo_QueryActorsByRoleRequest proto.InternalMessageInfo -func (m *QueryAddressesByRoleRequest) GetDenom() string { +func (m *QueryActorsByRoleRequest) GetDenom() string { if m != nil { return m.Denom } return "" } -func (m *QueryAddressesByRoleRequest) GetRole() string { +func (m *QueryActorsByRoleRequest) GetRole() string { if m != nil { return m.Role } @@ -355,22 +431,22 @@ func (m *QueryAddressesByRoleRequest) GetRole() string { // QueryAddressesByRoleResponse is the response type for the // Query/AddressesByRole RPC method. -type QueryAddressesByRoleResponse struct { - Addresses []string `protobuf:"bytes,1,rep,name=addresses,proto3" json:"addresses,omitempty"` +type QueryActorsByRoleResponse struct { + Actors []string `protobuf:"bytes,1,rep,name=actors,proto3" json:"actors,omitempty"` } -func (m *QueryAddressesByRoleResponse) Reset() { *m = QueryAddressesByRoleResponse{} } -func (m *QueryAddressesByRoleResponse) String() string { return proto.CompactTextString(m) } -func (*QueryAddressesByRoleResponse) ProtoMessage() {} -func (*QueryAddressesByRoleResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e0ae50f1018498b3, []int{7} +func (m *QueryActorsByRoleResponse) Reset() { *m = QueryActorsByRoleResponse{} } +func (m *QueryActorsByRoleResponse) String() string { return proto.CompactTextString(m) } +func (*QueryActorsByRoleResponse) ProtoMessage() {} +func (*QueryActorsByRoleResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{9} } -func (m *QueryAddressesByRoleResponse) XXX_Unmarshal(b []byte) error { +func (m *QueryActorsByRoleResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *QueryAddressesByRoleResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *QueryActorsByRoleResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_QueryAddressesByRoleResponse.Marshal(b, m, deterministic) + return xxx_messageInfo_QueryActorsByRoleResponse.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -380,42 +456,44 @@ func (m *QueryAddressesByRoleResponse) XXX_Marshal(b []byte, deterministic bool) return b[:n], nil } } -func (m *QueryAddressesByRoleResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryAddressesByRoleResponse.Merge(m, src) +func (m *QueryActorsByRoleResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryActorsByRoleResponse.Merge(m, src) } -func (m *QueryAddressesByRoleResponse) XXX_Size() int { +func (m *QueryActorsByRoleResponse) XXX_Size() int { return m.Size() } -func (m *QueryAddressesByRoleResponse) XXX_DiscardUnknown() { - xxx_messageInfo_QueryAddressesByRoleResponse.DiscardUnknown(m) +func (m *QueryActorsByRoleResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryActorsByRoleResponse.DiscardUnknown(m) } -var xxx_messageInfo_QueryAddressesByRoleResponse proto.InternalMessageInfo +var xxx_messageInfo_QueryActorsByRoleResponse proto.InternalMessageInfo -func (m *QueryAddressesByRoleResponse) GetAddresses() []string { +func (m *QueryActorsByRoleResponse) GetActors() []string { if m != nil { - return m.Addresses + return m.Actors } return nil } -type QueryAddressRolesRequest struct { - Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` - Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` +// QueryRolesByActorRequest is the request type for the +// Query/RolesByActor RPC method. +type QueryRolesByActorRequest struct { + Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` + Actor string `protobuf:"bytes,2,opt,name=actor,proto3" json:"actor,omitempty"` } -func (m *QueryAddressRolesRequest) Reset() { *m = QueryAddressRolesRequest{} } -func (m *QueryAddressRolesRequest) String() string { return proto.CompactTextString(m) } -func (*QueryAddressRolesRequest) ProtoMessage() {} -func (*QueryAddressRolesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e0ae50f1018498b3, []int{8} +func (m *QueryRolesByActorRequest) Reset() { *m = QueryRolesByActorRequest{} } +func (m *QueryRolesByActorRequest) String() string { return proto.CompactTextString(m) } +func (*QueryRolesByActorRequest) ProtoMessage() {} +func (*QueryRolesByActorRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{10} } -func (m *QueryAddressRolesRequest) XXX_Unmarshal(b []byte) error { +func (m *QueryRolesByActorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *QueryAddressRolesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *QueryRolesByActorRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_QueryAddressRolesRequest.Marshal(b, m, deterministic) + return xxx_messageInfo_QueryRolesByActorRequest.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -425,48 +503,50 @@ func (m *QueryAddressRolesRequest) XXX_Marshal(b []byte, deterministic bool) ([] return b[:n], nil } } -func (m *QueryAddressRolesRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryAddressRolesRequest.Merge(m, src) +func (m *QueryRolesByActorRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryRolesByActorRequest.Merge(m, src) } -func (m *QueryAddressRolesRequest) XXX_Size() int { +func (m *QueryRolesByActorRequest) XXX_Size() int { return m.Size() } -func (m *QueryAddressRolesRequest) XXX_DiscardUnknown() { - xxx_messageInfo_QueryAddressRolesRequest.DiscardUnknown(m) +func (m *QueryRolesByActorRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryRolesByActorRequest.DiscardUnknown(m) } -var xxx_messageInfo_QueryAddressRolesRequest proto.InternalMessageInfo +var xxx_messageInfo_QueryRolesByActorRequest proto.InternalMessageInfo -func (m *QueryAddressRolesRequest) GetDenom() string { +func (m *QueryRolesByActorRequest) GetDenom() string { if m != nil { return m.Denom } return "" } -func (m *QueryAddressRolesRequest) GetAddress() string { +func (m *QueryRolesByActorRequest) GetActor() string { if m != nil { - return m.Address + return m.Actor } return "" } -type QueryAddressRolesResponse struct { +// QueryRolesByActorResponse is the response type for the +// Query/RolesByActor RPC method. +type QueryRolesByActorResponse struct { Roles []string `protobuf:"bytes,1,rep,name=roles,proto3" json:"roles,omitempty"` } -func (m *QueryAddressRolesResponse) Reset() { *m = QueryAddressRolesResponse{} } -func (m *QueryAddressRolesResponse) String() string { return proto.CompactTextString(m) } -func (*QueryAddressRolesResponse) ProtoMessage() {} -func (*QueryAddressRolesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e0ae50f1018498b3, []int{9} +func (m *QueryRolesByActorResponse) Reset() { *m = QueryRolesByActorResponse{} } +func (m *QueryRolesByActorResponse) String() string { return proto.CompactTextString(m) } +func (*QueryRolesByActorResponse) ProtoMessage() {} +func (*QueryRolesByActorResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{11} } -func (m *QueryAddressRolesResponse) XXX_Unmarshal(b []byte) error { +func (m *QueryRolesByActorResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *QueryAddressRolesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *QueryRolesByActorResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_QueryAddressRolesResponse.Marshal(b, m, deterministic) + return xxx_messageInfo_QueryRolesByActorResponse.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -476,41 +556,43 @@ func (m *QueryAddressRolesResponse) XXX_Marshal(b []byte, deterministic bool) ([ return b[:n], nil } } -func (m *QueryAddressRolesResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryAddressRolesResponse.Merge(m, src) +func (m *QueryRolesByActorResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryRolesByActorResponse.Merge(m, src) } -func (m *QueryAddressRolesResponse) XXX_Size() int { +func (m *QueryRolesByActorResponse) XXX_Size() int { return m.Size() } -func (m *QueryAddressRolesResponse) XXX_DiscardUnknown() { - xxx_messageInfo_QueryAddressRolesResponse.DiscardUnknown(m) +func (m *QueryRolesByActorResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryRolesByActorResponse.DiscardUnknown(m) } -var xxx_messageInfo_QueryAddressRolesResponse proto.InternalMessageInfo +var xxx_messageInfo_QueryRolesByActorResponse proto.InternalMessageInfo -func (m *QueryAddressRolesResponse) GetRoles() []string { +func (m *QueryRolesByActorResponse) GetRoles() []string { if m != nil { return m.Roles } return nil } -type QueryVouchersForAddressRequest struct { - Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` +// QueryRoleManagersRequest is the request type for the Query/RoleManagers +// RPC method. +type QueryRoleManagersRequest struct { + Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` } -func (m *QueryVouchersForAddressRequest) Reset() { *m = QueryVouchersForAddressRequest{} } -func (m *QueryVouchersForAddressRequest) String() string { return proto.CompactTextString(m) } -func (*QueryVouchersForAddressRequest) ProtoMessage() {} -func (*QueryVouchersForAddressRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_e0ae50f1018498b3, []int{10} +func (m *QueryRoleManagersRequest) Reset() { *m = QueryRoleManagersRequest{} } +func (m *QueryRoleManagersRequest) String() string { return proto.CompactTextString(m) } +func (*QueryRoleManagersRequest) ProtoMessage() {} +func (*QueryRoleManagersRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{12} } -func (m *QueryVouchersForAddressRequest) XXX_Unmarshal(b []byte) error { +func (m *QueryRoleManagersRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *QueryVouchersForAddressRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *QueryRoleManagersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_QueryVouchersForAddressRequest.Marshal(b, m, deterministic) + return xxx_messageInfo_QueryRoleManagersRequest.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -520,41 +602,43 @@ func (m *QueryVouchersForAddressRequest) XXX_Marshal(b []byte, deterministic boo return b[:n], nil } } -func (m *QueryVouchersForAddressRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryVouchersForAddressRequest.Merge(m, src) +func (m *QueryRoleManagersRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryRoleManagersRequest.Merge(m, src) } -func (m *QueryVouchersForAddressRequest) XXX_Size() int { +func (m *QueryRoleManagersRequest) XXX_Size() int { return m.Size() } -func (m *QueryVouchersForAddressRequest) XXX_DiscardUnknown() { - xxx_messageInfo_QueryVouchersForAddressRequest.DiscardUnknown(m) +func (m *QueryRoleManagersRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryRoleManagersRequest.DiscardUnknown(m) } -var xxx_messageInfo_QueryVouchersForAddressRequest proto.InternalMessageInfo +var xxx_messageInfo_QueryRoleManagersRequest proto.InternalMessageInfo -func (m *QueryVouchersForAddressRequest) GetAddress() string { +func (m *QueryRoleManagersRequest) GetDenom() string { if m != nil { - return m.Address + return m.Denom } return "" } -type QueryVouchersForAddressResponse struct { - Vouchers github_com_cosmos_cosmos_sdk_types.Coins `protobuf:"bytes,1,rep,name=vouchers,proto3,castrepeated=github.com/cosmos/cosmos-sdk/types.Coins" json:"vouchers,omitempty"` +// QueryRoleManagersResponse is the response type for the +// Query/RoleManagers RPC method. +type QueryRoleManagersResponse struct { + RoleManagers []*RoleManager `protobuf:"bytes,1,rep,name=role_managers,json=roleManagers,proto3" json:"role_managers,omitempty"` } -func (m *QueryVouchersForAddressResponse) Reset() { *m = QueryVouchersForAddressResponse{} } -func (m *QueryVouchersForAddressResponse) String() string { return proto.CompactTextString(m) } -func (*QueryVouchersForAddressResponse) ProtoMessage() {} -func (*QueryVouchersForAddressResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_e0ae50f1018498b3, []int{11} +func (m *QueryRoleManagersResponse) Reset() { *m = QueryRoleManagersResponse{} } +func (m *QueryRoleManagersResponse) String() string { return proto.CompactTextString(m) } +func (*QueryRoleManagersResponse) ProtoMessage() {} +func (*QueryRoleManagersResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{13} } -func (m *QueryVouchersForAddressResponse) XXX_Unmarshal(b []byte) error { +func (m *QueryRoleManagersResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *QueryVouchersForAddressResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *QueryRoleManagersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_QueryVouchersForAddressResponse.Marshal(b, m, deterministic) + return xxx_messageInfo_QueryRoleManagersResponse.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -564,964 +648,3567 @@ func (m *QueryVouchersForAddressResponse) XXX_Marshal(b []byte, deterministic bo return b[:n], nil } } -func (m *QueryVouchersForAddressResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryVouchersForAddressResponse.Merge(m, src) +func (m *QueryRoleManagersResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryRoleManagersResponse.Merge(m, src) } -func (m *QueryVouchersForAddressResponse) XXX_Size() int { +func (m *QueryRoleManagersResponse) XXX_Size() int { return m.Size() } -func (m *QueryVouchersForAddressResponse) XXX_DiscardUnknown() { - xxx_messageInfo_QueryVouchersForAddressResponse.DiscardUnknown(m) +func (m *QueryRoleManagersResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryRoleManagersResponse.DiscardUnknown(m) } -var xxx_messageInfo_QueryVouchersForAddressResponse proto.InternalMessageInfo +var xxx_messageInfo_QueryRoleManagersResponse proto.InternalMessageInfo -func (m *QueryVouchersForAddressResponse) GetVouchers() github_com_cosmos_cosmos_sdk_types.Coins { +func (m *QueryRoleManagersResponse) GetRoleManagers() []*RoleManager { if m != nil { - return m.Vouchers + return m.RoleManagers } return nil } -func init() { - proto.RegisterType((*QueryParamsRequest)(nil), "injective.permissions.v1beta1.QueryParamsRequest") - proto.RegisterType((*QueryParamsResponse)(nil), "injective.permissions.v1beta1.QueryParamsResponse") - proto.RegisterType((*QueryAllNamespacesRequest)(nil), "injective.permissions.v1beta1.QueryAllNamespacesRequest") - proto.RegisterType((*QueryAllNamespacesResponse)(nil), "injective.permissions.v1beta1.QueryAllNamespacesResponse") - proto.RegisterType((*QueryNamespaceByDenomRequest)(nil), "injective.permissions.v1beta1.QueryNamespaceByDenomRequest") - proto.RegisterType((*QueryNamespaceByDenomResponse)(nil), "injective.permissions.v1beta1.QueryNamespaceByDenomResponse") - proto.RegisterType((*QueryAddressesByRoleRequest)(nil), "injective.permissions.v1beta1.QueryAddressesByRoleRequest") - proto.RegisterType((*QueryAddressesByRoleResponse)(nil), "injective.permissions.v1beta1.QueryAddressesByRoleResponse") - proto.RegisterType((*QueryAddressRolesRequest)(nil), "injective.permissions.v1beta1.QueryAddressRolesRequest") - proto.RegisterType((*QueryAddressRolesResponse)(nil), "injective.permissions.v1beta1.QueryAddressRolesResponse") - proto.RegisterType((*QueryVouchersForAddressRequest)(nil), "injective.permissions.v1beta1.QueryVouchersForAddressRequest") - proto.RegisterType((*QueryVouchersForAddressResponse)(nil), "injective.permissions.v1beta1.QueryVouchersForAddressResponse") +// QueryRoleManagerRequest is the request type for the Query/RoleManager +// RPC method. +type QueryRoleManagerRequest struct { + Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` + Manager string `protobuf:"bytes,2,opt,name=manager,proto3" json:"manager,omitempty"` } -func init() { - proto.RegisterFile("injective/permissions/v1beta1/query.proto", fileDescriptor_e0ae50f1018498b3) +func (m *QueryRoleManagerRequest) Reset() { *m = QueryRoleManagerRequest{} } +func (m *QueryRoleManagerRequest) String() string { return proto.CompactTextString(m) } +func (*QueryRoleManagerRequest) ProtoMessage() {} +func (*QueryRoleManagerRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{14} } - -var fileDescriptor_e0ae50f1018498b3 = []byte{ - // 816 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x56, 0x4d, 0x4f, 0xdb, 0x4a, - 0x14, 0xcd, 0xf0, 0x80, 0x47, 0x06, 0xd0, 0x7b, 0x9a, 0x66, 0x11, 0x0c, 0x38, 0xc8, 0x15, 0x6a, - 0xfa, 0x11, 0xbb, 0x09, 0x42, 0xe5, 0xab, 0x95, 0x1a, 0x2a, 0xfa, 0xa1, 0xaa, 0x2a, 0x5e, 0x54, - 0x2a, 0x9b, 0xc8, 0x71, 0x06, 0xe3, 0x62, 0x7b, 0x8c, 0xc7, 0x41, 0xca, 0xa2, 0x9b, 0xee, 0xba, - 0xab, 0xd4, 0x7d, 0xd5, 0x75, 0xff, 0x02, 0xdb, 0x2e, 0x58, 0x22, 0x75, 0xd3, 0x15, 0xad, 0xa0, - 0xab, 0xfe, 0x8a, 0xca, 0xe3, 0xb1, 0xe3, 0x10, 0x12, 0x87, 0x74, 0x45, 0x66, 0xee, 0x3d, 0xf7, - 0x9e, 0x73, 0x3d, 0xf7, 0x08, 0x78, 0xd3, 0x74, 0xde, 0x60, 0xdd, 0x37, 0x0f, 0xb1, 0xe2, 0x62, - 0xcf, 0x36, 0x29, 0x35, 0x89, 0x43, 0x95, 0xc3, 0x72, 0x1d, 0xfb, 0x5a, 0x59, 0x39, 0x68, 0x62, - 0xaf, 0x25, 0xbb, 0x1e, 0xf1, 0x09, 0x9a, 0x8f, 0x53, 0xe5, 0x44, 0xaa, 0xcc, 0x53, 0x85, 0x9c, - 0x41, 0x0c, 0xc2, 0x32, 0x95, 0xe0, 0x57, 0x08, 0x12, 0xe6, 0x0c, 0x42, 0x0c, 0x0b, 0x2b, 0x9a, - 0x6b, 0x2a, 0x9a, 0xe3, 0x10, 0x5f, 0xf3, 0x19, 0x2a, 0x8c, 0x8a, 0x3a, 0xa1, 0x36, 0xa1, 0x4a, - 0x5d, 0xa3, 0x38, 0xee, 0xa9, 0x13, 0xd3, 0xe1, 0xf1, 0x5b, 0xc9, 0x38, 0xe3, 0x12, 0x67, 0xb9, - 0x9a, 0x61, 0x3a, 0xac, 0x58, 0x94, 0xdb, 0x5f, 0x89, 0xab, 0x79, 0x9a, 0x1d, 0xf5, 0xbd, 0xdd, - 0x3f, 0xd7, 0xc0, 0x0e, 0xa6, 0x66, 0x94, 0xac, 0xa4, 0x14, 0x4e, 0xcc, 0x82, 0x01, 0xa4, 0x1c, - 0x44, 0xdb, 0x01, 0xd7, 0x97, 0xac, 0xa5, 0x8a, 0x0f, 0x9a, 0x98, 0xfa, 0xd2, 0x0e, 0xbc, 0xd6, - 0x71, 0x4b, 0x5d, 0xe2, 0x50, 0x8c, 0x36, 0xe1, 0x78, 0x48, 0x2d, 0x0f, 0x16, 0x40, 0x71, 0xb2, - 0xb2, 0x28, 0xf7, 0x1d, 0xb3, 0x1c, 0xc2, 0xab, 0xa3, 0xc7, 0xa7, 0x85, 0x8c, 0xca, 0xa1, 0xd2, - 0x2c, 0x9c, 0x61, 0xb5, 0x1f, 0x5a, 0xd6, 0x0b, 0xcd, 0xc6, 0xd4, 0xd5, 0x74, 0x1c, 0x37, 0xde, - 0x85, 0xc2, 0x65, 0x41, 0xde, 0xff, 0x09, 0x84, 0x4e, 0x7c, 0x9b, 0x07, 0x0b, 0xff, 0x14, 0x27, - 0x2b, 0xc5, 0x14, 0x0e, 0x71, 0x19, 0x35, 0x81, 0x95, 0x5e, 0xc3, 0x39, 0xd6, 0x27, 0x8e, 0x56, - 0x5b, 0x8f, 0xb0, 0x43, 0x6c, 0xce, 0x03, 0xe5, 0xe0, 0x58, 0x23, 0x38, 0x33, 0xa1, 0x59, 0x35, - 0x3c, 0xa0, 0xeb, 0x70, 0xda, 0x74, 0x74, 0xab, 0xd9, 0xc0, 0x35, 0x8f, 0x58, 0x98, 0xe6, 0x47, - 0x16, 0x40, 0x71, 0x42, 0x9d, 0xe2, 0x97, 0x6a, 0x70, 0x27, 0x19, 0x70, 0xbe, 0x47, 0x69, 0xae, - 0x62, 0x0b, 0x66, 0x63, 0x26, 0x7c, 0x90, 0x83, 0x8b, 0x68, 0x43, 0xa5, 0xc7, 0x70, 0x36, 0x9c, - 0x55, 0xa3, 0xe1, 0x61, 0x4a, 0x31, 0xad, 0xb6, 0x02, 0x06, 0xfd, 0x25, 0x20, 0x38, 0x1a, 0x50, - 0x67, 0xcc, 0xb3, 0x2a, 0xfb, 0x2d, 0x6d, 0xf0, 0x61, 0x74, 0x15, 0xe2, 0x84, 0xe7, 0x60, 0x56, - 0x8b, 0x42, 0x6c, 0xea, 0x59, 0xb5, 0x7d, 0x21, 0x3d, 0x83, 0xf9, 0x24, 0x9a, 0x0d, 0xa1, 0x3f, - 0x87, 0x3c, 0xfc, 0x97, 0xc3, 0x39, 0x8d, 0xe8, 0x28, 0x95, 0xa3, 0xb7, 0xd1, 0x51, 0x8b, 0xd3, - 0xc8, 0xc1, 0xb1, 0x70, 0xea, 0x21, 0x85, 0xf0, 0x20, 0xad, 0x41, 0x91, 0x41, 0x5e, 0x91, 0xa6, - 0xbe, 0x87, 0x3d, 0xba, 0x45, 0xbc, 0x08, 0xcd, 0x49, 0x24, 0xda, 0x81, 0xce, 0x76, 0x9f, 0x01, - 0x2c, 0xf4, 0x04, 0xf3, 0xae, 0x6f, 0xe1, 0xc4, 0x21, 0x8f, 0xf2, 0x17, 0x37, 0x23, 0x87, 0x9b, - 0x2e, 0x07, 0x9b, 0x1e, 0x7f, 0xa2, 0x4d, 0x62, 0x3a, 0xd5, 0xad, 0xe0, 0xa5, 0xff, 0x3e, 0x2d, - 0xa0, 0x08, 0x72, 0x87, 0xd8, 0xa6, 0x8f, 0x6d, 0xd7, 0x6f, 0x7d, 0xf9, 0x51, 0x28, 0x1a, 0xa6, - 0xbf, 0xd7, 0xac, 0xcb, 0x3a, 0xb1, 0x15, 0x6e, 0x16, 0xe1, 0x9f, 0x12, 0x6d, 0xec, 0x2b, 0x7e, - 0xcb, 0xc5, 0x94, 0x95, 0xa1, 0x6a, 0xdc, 0xb2, 0xf2, 0x3e, 0x0b, 0xc7, 0x18, 0x45, 0xf4, 0x09, - 0xc0, 0xf1, 0x70, 0xa1, 0x50, 0x39, 0xe5, 0xb9, 0x74, 0x6f, 0xb4, 0x50, 0xb9, 0x0a, 0x24, 0x94, - 0x2e, 0x95, 0xde, 0x7d, 0xfb, 0xf5, 0x71, 0xe4, 0x06, 0x5a, 0x54, 0x06, 0xb1, 0x2b, 0x74, 0x04, - 0xe0, 0x74, 0xc7, 0xde, 0xa2, 0x95, 0x41, 0x9a, 0x5e, 0xe6, 0x03, 0xc2, 0xea, 0x10, 0x48, 0xce, - 0x7a, 0x99, 0xb1, 0x56, 0x50, 0x29, 0x85, 0xb5, 0x66, 0x59, 0xb5, 0xb6, 0x23, 0xa0, 0x63, 0x00, - 0xff, 0xbf, 0xb8, 0xb2, 0x68, 0x7d, 0x10, 0x1a, 0x3d, 0x3c, 0x44, 0xd8, 0x18, 0x0e, 0xcc, 0x65, - 0xac, 0x32, 0x19, 0x4b, 0xa8, 0x9c, 0x22, 0x23, 0x96, 0x50, 0xab, 0xb7, 0x6a, 0xe1, 0x7e, 0x1d, - 0x01, 0x38, 0x95, 0xdc, 0x20, 0x74, 0x6f, 0xa0, 0x69, 0x76, 0xef, 0xaf, 0xb0, 0x72, 0x75, 0x20, - 0xa7, 0xbf, 0xc2, 0xe8, 0x57, 0xd0, 0xdd, 0xb4, 0xaf, 0x10, 0xf9, 0x48, 0x40, 0x3f, 0xd8, 0x68, - 0xf4, 0x15, 0xc0, 0xff, 0x2e, 0x38, 0x11, 0x5a, 0xbb, 0x02, 0x8f, 0x0b, 0x3e, 0x28, 0xac, 0x0f, - 0x85, 0xfd, 0x6b, 0x19, 0x27, 0x00, 0xa2, 0x6e, 0x5b, 0x41, 0xf7, 0x07, 0x61, 0xd3, 0xd3, 0xcb, - 0x84, 0x07, 0xc3, 0xc2, 0xb9, 0x9e, 0x75, 0xa6, 0x67, 0x19, 0x2d, 0xa5, 0xe8, 0x89, 0xfc, 0xa7, - 0xb6, 0x4b, 0xbc, 0x1a, 0x17, 0x57, 0xdd, 0x3f, 0x3e, 0x13, 0xc1, 0xc9, 0x99, 0x08, 0x7e, 0x9e, - 0x89, 0xe0, 0xc3, 0xb9, 0x98, 0x39, 0x39, 0x17, 0x33, 0xdf, 0xcf, 0xc5, 0xcc, 0xce, 0x76, 0xc2, - 0xd9, 0x9e, 0x46, 0x85, 0x9f, 0x6b, 0x75, 0xda, 0x6e, 0x53, 0xd2, 0x89, 0x87, 0x93, 0xc7, 0x3d, - 0xcd, 0x74, 0x14, 0x9b, 0x34, 0x9a, 0x16, 0xa6, 0x1d, 0x1c, 0x98, 0x11, 0xd6, 0xc7, 0xd9, 0xff, - 0x27, 0x4b, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x50, 0xbf, 0x64, 0x1e, 0xf5, 0x09, 0x00, 0x00, +func (m *QueryRoleManagerRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryRoleManagerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryRoleManagerRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *QueryRoleManagerRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryRoleManagerRequest.Merge(m, src) +} +func (m *QueryRoleManagerRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryRoleManagerRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryRoleManagerRequest.DiscardUnknown(m) } -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConn - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion4 +var xxx_messageInfo_QueryRoleManagerRequest proto.InternalMessageInfo -// QueryClient is the client API for Query service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type QueryClient interface { - // Params defines a gRPC query method that returns the permissions module's - // parameters. - Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error) - // AllNamespaces defines a gRPC query method that returns the permissions - // module's created namespaces. - AllNamespaces(ctx context.Context, in *QueryAllNamespacesRequest, opts ...grpc.CallOption) (*QueryAllNamespacesResponse, error) - // NamespaceByDenom defines a gRPC query method that returns the permissions - // module's namespace associated with the provided denom. - NamespaceByDenom(ctx context.Context, in *QueryNamespaceByDenomRequest, opts ...grpc.CallOption) (*QueryNamespaceByDenomResponse, error) - // AddressRoles defines a gRPC query method that returns address roles in the - // namespace - AddressRoles(ctx context.Context, in *QueryAddressRolesRequest, opts ...grpc.CallOption) (*QueryAddressRolesResponse, error) - // AddressesByRole defines a gRPC query method that returns a namespace's - // roles associated with the provided address. - AddressesByRole(ctx context.Context, in *QueryAddressesByRoleRequest, opts ...grpc.CallOption) (*QueryAddressesByRoleResponse, error) - // VouchersForAddress defines a gRPC query method that returns a map of - // vouchers that are held by permissions module for this address, keyed by the - // originator address - VouchersForAddress(ctx context.Context, in *QueryVouchersForAddressRequest, opts ...grpc.CallOption) (*QueryVouchersForAddressResponse, error) +func (m *QueryRoleManagerRequest) GetDenom() string { + if m != nil { + return m.Denom + } + return "" } -type queryClient struct { - cc grpc1.ClientConn +func (m *QueryRoleManagerRequest) GetManager() string { + if m != nil { + return m.Manager + } + return "" } -func NewQueryClient(cc grpc1.ClientConn) QueryClient { - return &queryClient{cc} +// QueryRoleManagerResponse is the response type for the +// Query/RoleManager RPC method. +type QueryRoleManagerResponse struct { + RoleManager *RoleManager `protobuf:"bytes,1,opt,name=role_manager,json=roleManager,proto3" json:"role_manager,omitempty"` } -func (c *queryClient) Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error) { - out := new(QueryParamsResponse) - err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/Params", in, out, opts...) - if err != nil { - return nil, err +func (m *QueryRoleManagerResponse) Reset() { *m = QueryRoleManagerResponse{} } +func (m *QueryRoleManagerResponse) String() string { return proto.CompactTextString(m) } +func (*QueryRoleManagerResponse) ProtoMessage() {} +func (*QueryRoleManagerResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{15} +} +func (m *QueryRoleManagerResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryRoleManagerResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryRoleManagerResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return out, nil +} +func (m *QueryRoleManagerResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryRoleManagerResponse.Merge(m, src) +} +func (m *QueryRoleManagerResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryRoleManagerResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryRoleManagerResponse.DiscardUnknown(m) } -func (c *queryClient) AllNamespaces(ctx context.Context, in *QueryAllNamespacesRequest, opts ...grpc.CallOption) (*QueryAllNamespacesResponse, error) { - out := new(QueryAllNamespacesResponse) - err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/AllNamespaces", in, out, opts...) - if err != nil { - return nil, err +var xxx_messageInfo_QueryRoleManagerResponse proto.InternalMessageInfo + +func (m *QueryRoleManagerResponse) GetRoleManager() *RoleManager { + if m != nil { + return m.RoleManager } - return out, nil + return nil } -func (c *queryClient) NamespaceByDenom(ctx context.Context, in *QueryNamespaceByDenomRequest, opts ...grpc.CallOption) (*QueryNamespaceByDenomResponse, error) { - out := new(QueryNamespaceByDenomResponse) - err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/NamespaceByDenom", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +// QueryPolicyStatusesRequest is the request type for the Query/PolicyStatuses +// RPC method. +type QueryPolicyStatusesRequest struct { + Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` } -func (c *queryClient) AddressRoles(ctx context.Context, in *QueryAddressRolesRequest, opts ...grpc.CallOption) (*QueryAddressRolesResponse, error) { - out := new(QueryAddressRolesResponse) - err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/AddressRoles", in, out, opts...) - if err != nil { - return nil, err +func (m *QueryPolicyStatusesRequest) Reset() { *m = QueryPolicyStatusesRequest{} } +func (m *QueryPolicyStatusesRequest) String() string { return proto.CompactTextString(m) } +func (*QueryPolicyStatusesRequest) ProtoMessage() {} +func (*QueryPolicyStatusesRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{16} +} +func (m *QueryPolicyStatusesRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryPolicyStatusesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryPolicyStatusesRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return out, nil +} +func (m *QueryPolicyStatusesRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryPolicyStatusesRequest.Merge(m, src) +} +func (m *QueryPolicyStatusesRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryPolicyStatusesRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryPolicyStatusesRequest.DiscardUnknown(m) } -func (c *queryClient) AddressesByRole(ctx context.Context, in *QueryAddressesByRoleRequest, opts ...grpc.CallOption) (*QueryAddressesByRoleResponse, error) { - out := new(QueryAddressesByRoleResponse) - err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/AddressesByRole", in, out, opts...) - if err != nil { - return nil, err +var xxx_messageInfo_QueryPolicyStatusesRequest proto.InternalMessageInfo + +func (m *QueryPolicyStatusesRequest) GetDenom() string { + if m != nil { + return m.Denom } - return out, nil + return "" } -func (c *queryClient) VouchersForAddress(ctx context.Context, in *QueryVouchersForAddressRequest, opts ...grpc.CallOption) (*QueryVouchersForAddressResponse, error) { - out := new(QueryVouchersForAddressResponse) - err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/VouchersForAddress", in, out, opts...) - if err != nil { - return nil, err +// QueryRoleManagerResponse is the response type for the +// Query/RoleManager RPC method. +type QueryPolicyStatusesResponse struct { + PolicyStatuses []*PolicyStatus `protobuf:"bytes,1,rep,name=policy_statuses,json=policyStatuses,proto3" json:"policy_statuses,omitempty"` +} + +func (m *QueryPolicyStatusesResponse) Reset() { *m = QueryPolicyStatusesResponse{} } +func (m *QueryPolicyStatusesResponse) String() string { return proto.CompactTextString(m) } +func (*QueryPolicyStatusesResponse) ProtoMessage() {} +func (*QueryPolicyStatusesResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{17} +} +func (m *QueryPolicyStatusesResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryPolicyStatusesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryPolicyStatusesResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return out, nil +} +func (m *QueryPolicyStatusesResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryPolicyStatusesResponse.Merge(m, src) +} +func (m *QueryPolicyStatusesResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryPolicyStatusesResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryPolicyStatusesResponse.DiscardUnknown(m) } -// QueryServer is the server API for Query service. -type QueryServer interface { - // Params defines a gRPC query method that returns the permissions module's - // parameters. - Params(context.Context, *QueryParamsRequest) (*QueryParamsResponse, error) - // AllNamespaces defines a gRPC query method that returns the permissions - // module's created namespaces. - AllNamespaces(context.Context, *QueryAllNamespacesRequest) (*QueryAllNamespacesResponse, error) - // NamespaceByDenom defines a gRPC query method that returns the permissions - // module's namespace associated with the provided denom. - NamespaceByDenom(context.Context, *QueryNamespaceByDenomRequest) (*QueryNamespaceByDenomResponse, error) - // AddressRoles defines a gRPC query method that returns address roles in the - // namespace - AddressRoles(context.Context, *QueryAddressRolesRequest) (*QueryAddressRolesResponse, error) - // AddressesByRole defines a gRPC query method that returns a namespace's - // roles associated with the provided address. - AddressesByRole(context.Context, *QueryAddressesByRoleRequest) (*QueryAddressesByRoleResponse, error) - // VouchersForAddress defines a gRPC query method that returns a map of - // vouchers that are held by permissions module for this address, keyed by the - // originator address - VouchersForAddress(context.Context, *QueryVouchersForAddressRequest) (*QueryVouchersForAddressResponse, error) +var xxx_messageInfo_QueryPolicyStatusesResponse proto.InternalMessageInfo + +func (m *QueryPolicyStatusesResponse) GetPolicyStatuses() []*PolicyStatus { + if m != nil { + return m.PolicyStatuses + } + return nil } -// UnimplementedQueryServer can be embedded to have forward compatible implementations. -type UnimplementedQueryServer struct { +// QueryPolicyManagerCapabilitiesRequest is the request type for the Query/PolicyManagerCapabilities +// RPC method. +type QueryPolicyManagerCapabilitiesRequest struct { + Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` } -func (*UnimplementedQueryServer) Params(ctx context.Context, req *QueryParamsRequest) (*QueryParamsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Params not implemented") +func (m *QueryPolicyManagerCapabilitiesRequest) Reset() { *m = QueryPolicyManagerCapabilitiesRequest{} } +func (m *QueryPolicyManagerCapabilitiesRequest) String() string { return proto.CompactTextString(m) } +func (*QueryPolicyManagerCapabilitiesRequest) ProtoMessage() {} +func (*QueryPolicyManagerCapabilitiesRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{18} } -func (*UnimplementedQueryServer) AllNamespaces(ctx context.Context, req *QueryAllNamespacesRequest) (*QueryAllNamespacesResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AllNamespaces not implemented") +func (m *QueryPolicyManagerCapabilitiesRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) } -func (*UnimplementedQueryServer) NamespaceByDenom(ctx context.Context, req *QueryNamespaceByDenomRequest) (*QueryNamespaceByDenomResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method NamespaceByDenom not implemented") +func (m *QueryPolicyManagerCapabilitiesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryPolicyManagerCapabilitiesRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } } -func (*UnimplementedQueryServer) AddressRoles(ctx context.Context, req *QueryAddressRolesRequest) (*QueryAddressRolesResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddressRoles not implemented") +func (m *QueryPolicyManagerCapabilitiesRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryPolicyManagerCapabilitiesRequest.Merge(m, src) } -func (*UnimplementedQueryServer) AddressesByRole(ctx context.Context, req *QueryAddressesByRoleRequest) (*QueryAddressesByRoleResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddressesByRole not implemented") +func (m *QueryPolicyManagerCapabilitiesRequest) XXX_Size() int { + return m.Size() } -func (*UnimplementedQueryServer) VouchersForAddress(ctx context.Context, req *QueryVouchersForAddressRequest) (*QueryVouchersForAddressResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method VouchersForAddress not implemented") +func (m *QueryPolicyManagerCapabilitiesRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryPolicyManagerCapabilitiesRequest.DiscardUnknown(m) } -func RegisterQueryServer(s grpc1.Server, srv QueryServer) { - s.RegisterService(&_Query_serviceDesc, srv) -} +var xxx_messageInfo_QueryPolicyManagerCapabilitiesRequest proto.InternalMessageInfo -func _Query_Params_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryParamsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).Params(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.permissions.v1beta1.Query/Params", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).Params(ctx, req.(*QueryParamsRequest)) +func (m *QueryPolicyManagerCapabilitiesRequest) GetDenom() string { + if m != nil { + return m.Denom } - return interceptor(ctx, in, info, handler) + return "" } -func _Query_AllNamespaces_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryAllNamespacesRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).AllNamespaces(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.permissions.v1beta1.Query/AllNamespaces", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).AllNamespaces(ctx, req.(*QueryAllNamespacesRequest)) - } - return interceptor(ctx, in, info, handler) +// QueryPolicyManagerCapabilitiesResponse is the response type for the +// Query/PolicyManagerCapabilities RPC method. +type QueryPolicyManagerCapabilitiesResponse struct { + PolicyManagerCapabilities []*PolicyManagerCapability `protobuf:"bytes,1,rep,name=policy_manager_capabilities,json=policyManagerCapabilities,proto3" json:"policy_manager_capabilities,omitempty"` } -func _Query_NamespaceByDenom_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryNamespaceByDenomRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).NamespaceByDenom(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.permissions.v1beta1.Query/NamespaceByDenom", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).NamespaceByDenom(ctx, req.(*QueryNamespaceByDenomRequest)) - } - return interceptor(ctx, in, info, handler) +func (m *QueryPolicyManagerCapabilitiesResponse) Reset() { + *m = QueryPolicyManagerCapabilitiesResponse{} } - -func _Query_AddressRoles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryAddressRolesRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).AddressRoles(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.permissions.v1beta1.Query/AddressRoles", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).AddressRoles(ctx, req.(*QueryAddressRolesRequest)) - } - return interceptor(ctx, in, info, handler) +func (m *QueryPolicyManagerCapabilitiesResponse) String() string { return proto.CompactTextString(m) } +func (*QueryPolicyManagerCapabilitiesResponse) ProtoMessage() {} +func (*QueryPolicyManagerCapabilitiesResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{19} } - -func _Query_AddressesByRole_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryAddressesByRoleRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).AddressesByRole(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.permissions.v1beta1.Query/AddressesByRole", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).AddressesByRole(ctx, req.(*QueryAddressesByRoleRequest)) +func (m *QueryPolicyManagerCapabilitiesResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryPolicyManagerCapabilitiesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryPolicyManagerCapabilitiesResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return interceptor(ctx, in, info, handler) +} +func (m *QueryPolicyManagerCapabilitiesResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryPolicyManagerCapabilitiesResponse.Merge(m, src) +} +func (m *QueryPolicyManagerCapabilitiesResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryPolicyManagerCapabilitiesResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryPolicyManagerCapabilitiesResponse.DiscardUnknown(m) } -func _Query_VouchersForAddress_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryVouchersForAddressRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).VouchersForAddress(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.permissions.v1beta1.Query/VouchersForAddress", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).VouchersForAddress(ctx, req.(*QueryVouchersForAddressRequest)) +var xxx_messageInfo_QueryPolicyManagerCapabilitiesResponse proto.InternalMessageInfo + +func (m *QueryPolicyManagerCapabilitiesResponse) GetPolicyManagerCapabilities() []*PolicyManagerCapability { + if m != nil { + return m.PolicyManagerCapabilities } - return interceptor(ctx, in, info, handler) + return nil } -var _Query_serviceDesc = grpc.ServiceDesc{ - ServiceName: "injective.permissions.v1beta1.Query", - HandlerType: (*QueryServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "Params", - Handler: _Query_Params_Handler, - }, - { - MethodName: "AllNamespaces", - Handler: _Query_AllNamespaces_Handler, - }, - { - MethodName: "NamespaceByDenom", - Handler: _Query_NamespaceByDenom_Handler, - }, - { - MethodName: "AddressRoles", - Handler: _Query_AddressRoles_Handler, - }, - { - MethodName: "AddressesByRole", - Handler: _Query_AddressesByRole_Handler, - }, - { - MethodName: "VouchersForAddress", - Handler: _Query_VouchersForAddress_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "injective/permissions/v1beta1/query.proto", +type QueryVouchersRequest struct { + Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` } -func (m *QueryParamsRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *QueryVouchersRequest) Reset() { *m = QueryVouchersRequest{} } +func (m *QueryVouchersRequest) String() string { return proto.CompactTextString(m) } +func (*QueryVouchersRequest) ProtoMessage() {} +func (*QueryVouchersRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{20} +} +func (m *QueryVouchersRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryVouchersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryVouchersRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return dAtA[:n], nil } - -func (m *QueryParamsRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *QueryVouchersRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryVouchersRequest.Merge(m, src) } - -func (m *QueryParamsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil +func (m *QueryVouchersRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryVouchersRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryVouchersRequest.DiscardUnknown(m) } -func (m *QueryParamsResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +var xxx_messageInfo_QueryVouchersRequest proto.InternalMessageInfo + +func (m *QueryVouchersRequest) GetDenom() string { + if m != nil { + return m.Denom } - return dAtA[:n], nil + return "" } -func (m *QueryParamsResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +type QueryVouchersResponse struct { + Vouchers []*AddressVoucher `protobuf:"bytes,1,rep,name=vouchers,proto3" json:"vouchers,omitempty"` } -func (m *QueryParamsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - { - size, err := m.Params.MarshalToSizedBuffer(dAtA[:i]) +func (m *QueryVouchersResponse) Reset() { *m = QueryVouchersResponse{} } +func (m *QueryVouchersResponse) String() string { return proto.CompactTextString(m) } +func (*QueryVouchersResponse) ProtoMessage() {} +func (*QueryVouchersResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{21} +} +func (m *QueryVouchersResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryVouchersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryVouchersResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) if err != nil { - return 0, err + return nil, err } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + return b[:n], nil } - i-- - dAtA[i] = 0xa - return len(dAtA) - i, nil +} +func (m *QueryVouchersResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryVouchersResponse.Merge(m, src) +} +func (m *QueryVouchersResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryVouchersResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryVouchersResponse.DiscardUnknown(m) } -func (m *QueryAllNamespacesRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +var xxx_messageInfo_QueryVouchersResponse proto.InternalMessageInfo + +func (m *QueryVouchersResponse) GetVouchers() []*AddressVoucher { + if m != nil { + return m.Vouchers } - return dAtA[:n], nil + return nil } -func (m *QueryAllNamespacesRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +type QueryVoucherRequest struct { + Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` + Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` } -func (m *QueryAllNamespacesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil +func (m *QueryVoucherRequest) Reset() { *m = QueryVoucherRequest{} } +func (m *QueryVoucherRequest) String() string { return proto.CompactTextString(m) } +func (*QueryVoucherRequest) ProtoMessage() {} +func (*QueryVoucherRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{22} } - -func (m *QueryAllNamespacesResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *QueryVoucherRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryVoucherRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryVoucherRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return dAtA[:n], nil } - -func (m *QueryAllNamespacesResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *QueryVoucherRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryVoucherRequest.Merge(m, src) +} +func (m *QueryVoucherRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryVoucherRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryVoucherRequest.DiscardUnknown(m) } -func (m *QueryAllNamespacesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Namespaces) > 0 { - for iNdEx := len(m.Namespaces) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Namespaces[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } +var xxx_messageInfo_QueryVoucherRequest proto.InternalMessageInfo + +func (m *QueryVoucherRequest) GetDenom() string { + if m != nil { + return m.Denom } - return len(dAtA) - i, nil + return "" } -func (m *QueryNamespaceByDenomRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *QueryVoucherRequest) GetAddress() string { + if m != nil { + return m.Address } - return dAtA[:n], nil + return "" } -func (m *QueryNamespaceByDenomRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +type QueryVoucherResponse struct { + Voucher github_com_cosmos_cosmos_sdk_types.Coin `protobuf:"bytes,1,opt,name=voucher,proto3,customtype=github.com/cosmos/cosmos-sdk/types.Coin" json:"voucher,omitempty"` } -func (m *QueryNamespaceByDenomRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.IncludeRoles { - i-- - if m.IncludeRoles { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (m *QueryVoucherResponse) Reset() { *m = QueryVoucherResponse{} } +func (m *QueryVoucherResponse) String() string { return proto.CompactTextString(m) } +func (*QueryVoucherResponse) ProtoMessage() {} +func (*QueryVoucherResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{23} +} +func (m *QueryVoucherResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryVoucherResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryVoucherResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } - i-- - dAtA[i] = 0x10 + return b[:n], nil } - if len(m.Denom) > 0 { - i -= len(m.Denom) - copy(dAtA[i:], m.Denom) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil +} +func (m *QueryVoucherResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryVoucherResponse.Merge(m, src) +} +func (m *QueryVoucherResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryVoucherResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryVoucherResponse.DiscardUnknown(m) } -func (m *QueryNamespaceByDenomResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +var xxx_messageInfo_QueryVoucherResponse proto.InternalMessageInfo + +// QueryModuleStateRequest is the request type for the Query/PermissionsModuleState +// RPC method. +type QueryModuleStateRequest struct { +} + +func (m *QueryModuleStateRequest) Reset() { *m = QueryModuleStateRequest{} } +func (m *QueryModuleStateRequest) String() string { return proto.CompactTextString(m) } +func (*QueryModuleStateRequest) ProtoMessage() {} +func (*QueryModuleStateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{24} +} +func (m *QueryModuleStateRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryModuleStateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryModuleStateRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return dAtA[:n], nil +} +func (m *QueryModuleStateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryModuleStateRequest.Merge(m, src) +} +func (m *QueryModuleStateRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryModuleStateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryModuleStateRequest.DiscardUnknown(m) } -func (m *QueryNamespaceByDenomResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +var xxx_messageInfo_QueryModuleStateRequest proto.InternalMessageInfo + +// QueryModuleStateResponse is the response type for the Query/PermissionsModuleState +// RPC method. +type QueryModuleStateResponse struct { + State *GenesisState `protobuf:"bytes,1,opt,name=state,proto3" json:"state,omitempty"` } -func (m *QueryNamespaceByDenomResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Namespace != nil { - { - size, err := m.Namespace.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) +func (m *QueryModuleStateResponse) Reset() { *m = QueryModuleStateResponse{} } +func (m *QueryModuleStateResponse) String() string { return proto.CompactTextString(m) } +func (*QueryModuleStateResponse) ProtoMessage() {} +func (*QueryModuleStateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_e0ae50f1018498b3, []int{25} +} +func (m *QueryModuleStateResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryModuleStateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryModuleStateResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } - i-- - dAtA[i] = 0xa + return b[:n], nil } - return len(dAtA) - i, nil +} +func (m *QueryModuleStateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryModuleStateResponse.Merge(m, src) +} +func (m *QueryModuleStateResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryModuleStateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryModuleStateResponse.DiscardUnknown(m) } -func (m *QueryAddressesByRoleRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +var xxx_messageInfo_QueryModuleStateResponse proto.InternalMessageInfo + +func (m *QueryModuleStateResponse) GetState() *GenesisState { + if m != nil { + return m.State } - return dAtA[:n], nil + return nil } -func (m *QueryAddressesByRoleRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func init() { + proto.RegisterType((*QueryParamsRequest)(nil), "injective.permissions.v1beta1.QueryParamsRequest") + proto.RegisterType((*QueryParamsResponse)(nil), "injective.permissions.v1beta1.QueryParamsResponse") + proto.RegisterType((*QueryNamespaceDenomsRequest)(nil), "injective.permissions.v1beta1.QueryNamespaceDenomsRequest") + proto.RegisterType((*QueryNamespaceDenomsResponse)(nil), "injective.permissions.v1beta1.QueryNamespaceDenomsResponse") + proto.RegisterType((*QueryNamespacesRequest)(nil), "injective.permissions.v1beta1.QueryNamespacesRequest") + proto.RegisterType((*QueryNamespacesResponse)(nil), "injective.permissions.v1beta1.QueryNamespacesResponse") + proto.RegisterType((*QueryNamespaceRequest)(nil), "injective.permissions.v1beta1.QueryNamespaceRequest") + proto.RegisterType((*QueryNamespaceResponse)(nil), "injective.permissions.v1beta1.QueryNamespaceResponse") + proto.RegisterType((*QueryActorsByRoleRequest)(nil), "injective.permissions.v1beta1.QueryActorsByRoleRequest") + proto.RegisterType((*QueryActorsByRoleResponse)(nil), "injective.permissions.v1beta1.QueryActorsByRoleResponse") + proto.RegisterType((*QueryRolesByActorRequest)(nil), "injective.permissions.v1beta1.QueryRolesByActorRequest") + proto.RegisterType((*QueryRolesByActorResponse)(nil), "injective.permissions.v1beta1.QueryRolesByActorResponse") + proto.RegisterType((*QueryRoleManagersRequest)(nil), "injective.permissions.v1beta1.QueryRoleManagersRequest") + proto.RegisterType((*QueryRoleManagersResponse)(nil), "injective.permissions.v1beta1.QueryRoleManagersResponse") + proto.RegisterType((*QueryRoleManagerRequest)(nil), "injective.permissions.v1beta1.QueryRoleManagerRequest") + proto.RegisterType((*QueryRoleManagerResponse)(nil), "injective.permissions.v1beta1.QueryRoleManagerResponse") + proto.RegisterType((*QueryPolicyStatusesRequest)(nil), "injective.permissions.v1beta1.QueryPolicyStatusesRequest") + proto.RegisterType((*QueryPolicyStatusesResponse)(nil), "injective.permissions.v1beta1.QueryPolicyStatusesResponse") + proto.RegisterType((*QueryPolicyManagerCapabilitiesRequest)(nil), "injective.permissions.v1beta1.QueryPolicyManagerCapabilitiesRequest") + proto.RegisterType((*QueryPolicyManagerCapabilitiesResponse)(nil), "injective.permissions.v1beta1.QueryPolicyManagerCapabilitiesResponse") + proto.RegisterType((*QueryVouchersRequest)(nil), "injective.permissions.v1beta1.QueryVouchersRequest") + proto.RegisterType((*QueryVouchersResponse)(nil), "injective.permissions.v1beta1.QueryVouchersResponse") + proto.RegisterType((*QueryVoucherRequest)(nil), "injective.permissions.v1beta1.QueryVoucherRequest") + proto.RegisterType((*QueryVoucherResponse)(nil), "injective.permissions.v1beta1.QueryVoucherResponse") + proto.RegisterType((*QueryModuleStateRequest)(nil), "injective.permissions.v1beta1.QueryModuleStateRequest") + proto.RegisterType((*QueryModuleStateResponse)(nil), "injective.permissions.v1beta1.QueryModuleStateResponse") } -func (m *QueryAddressesByRoleRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Role) > 0 { - i -= len(m.Role) - copy(dAtA[i:], m.Role) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Role))) - i-- - dAtA[i] = 0x12 - } - if len(m.Denom) > 0 { - i -= len(m.Denom) - copy(dAtA[i:], m.Denom) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil +func init() { + proto.RegisterFile("injective/permissions/v1beta1/query.proto", fileDescriptor_e0ae50f1018498b3) } -func (m *QueryAddressesByRoleResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil +var fileDescriptor_e0ae50f1018498b3 = []byte{ + // 1263 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x98, 0x4f, 0x6f, 0x1b, 0xc5, + 0x1b, 0xc7, 0xb3, 0xfd, 0x35, 0x49, 0xf3, 0x24, 0xbf, 0x56, 0x4c, 0x4d, 0x70, 0xdc, 0xd6, 0xa9, + 0x46, 0x0a, 0x4d, 0x9b, 0xda, 0x5b, 0x3b, 0xa9, 0x13, 0x42, 0x5b, 0x88, 0xe3, 0x14, 0x82, 0x08, + 0xb4, 0x0b, 0xe2, 0x50, 0x09, 0x99, 0xf5, 0x7a, 0xe4, 0x2c, 0xb5, 0x77, 0xb6, 0x9e, 0x75, 0x24, + 0xab, 0xca, 0x85, 0x57, 0x00, 0xe2, 0x8e, 0x78, 0x05, 0x3d, 0x20, 0xce, 0x70, 0x40, 0x88, 0x1c, + 0x2b, 0x71, 0x41, 0x48, 0x44, 0x28, 0xe1, 0xc4, 0x99, 0x17, 0x80, 0x76, 0xf6, 0xd9, 0xf5, 0xda, + 0x71, 0xbc, 0xbb, 0xe1, 0x14, 0xcf, 0x9f, 0xe7, 0xfb, 0x7c, 0x9e, 0x99, 0xd9, 0x99, 0xaf, 0x02, + 0x37, 0x4d, 0xeb, 0x73, 0x66, 0x38, 0xe6, 0x1e, 0x53, 0x6d, 0xd6, 0x6e, 0x99, 0x42, 0x98, 0xdc, + 0x12, 0xea, 0x5e, 0xa1, 0xc6, 0x1c, 0xbd, 0xa0, 0x3e, 0xeb, 0xb0, 0x76, 0x37, 0x6f, 0xb7, 0xb9, + 0xc3, 0xc9, 0xb5, 0x60, 0x6a, 0x3e, 0x34, 0x35, 0x8f, 0x53, 0x33, 0xa9, 0x06, 0x6f, 0x70, 0x39, + 0x53, 0x75, 0x7f, 0x79, 0x41, 0x99, 0xab, 0x0d, 0xce, 0x1b, 0x4d, 0xa6, 0xea, 0xb6, 0xa9, 0xea, + 0x96, 0xc5, 0x1d, 0xdd, 0x91, 0x51, 0xde, 0x68, 0xd6, 0xe0, 0xa2, 0xc5, 0x85, 0x5a, 0xd3, 0x05, + 0x0b, 0x72, 0x1a, 0xdc, 0xb4, 0x70, 0xfc, 0x56, 0x78, 0x5c, 0xb2, 0x04, 0xb3, 0x6c, 0xbd, 0x61, + 0x5a, 0x52, 0xcc, 0x9f, 0x3b, 0xba, 0x12, 0x5b, 0x6f, 0xeb, 0x2d, 0x3f, 0xef, 0xd2, 0xe8, 0xb9, + 0x0d, 0x66, 0x31, 0x61, 0xfa, 0x93, 0xd5, 0x08, 0xe1, 0xd0, 0x5a, 0xc8, 0x00, 0x9a, 0x02, 0xf2, + 0xd8, 0x65, 0x7d, 0x24, 0x53, 0x6a, 0xec, 0x59, 0x87, 0x09, 0x87, 0x3e, 0x81, 0xcb, 0x7d, 0xbd, + 0xc2, 0xe6, 0x96, 0x60, 0x64, 0x13, 0x26, 0x3c, 0xb4, 0xb4, 0x72, 0x5d, 0x59, 0x9c, 0x2e, 0x2e, + 0xe4, 0x47, 0x2e, 0x73, 0xde, 0x0b, 0x2f, 0x9f, 0x3f, 0x38, 0x9c, 0x1f, 0xd3, 0x30, 0x94, 0x5e, + 0x83, 0x2b, 0x52, 0xfb, 0x03, 0xbd, 0xc5, 0x84, 0xad, 0x1b, 0xac, 0xc2, 0x2c, 0xde, 0x4b, 0x5d, + 0x82, 0xab, 0xc3, 0x87, 0x91, 0x61, 0x16, 0x26, 0xea, 0xb2, 0x27, 0xad, 0x5c, 0xff, 0xdf, 0xe2, + 0x94, 0x86, 0x2d, 0x9a, 0x86, 0xd9, 0xfe, 0xb8, 0x40, 0xd1, 0x80, 0xd7, 0x4e, 0x8c, 0xa0, 0xd8, + 0xbb, 0x00, 0x56, 0xd0, 0x2b, 0x05, 0xa7, 0x8b, 0x8b, 0x11, 0x45, 0x05, 0x32, 0x5a, 0x28, 0x96, + 0xe6, 0xe0, 0xd5, 0xfe, 0x24, 0x98, 0x9d, 0xa4, 0x60, 0x5c, 0x12, 0xca, 0x25, 0x9b, 0xd2, 0xbc, + 0x06, 0xfd, 0x6c, 0x90, 0x36, 0x40, 0x7a, 0x08, 0x53, 0x81, 0x2c, 0x2e, 0x73, 0x7c, 0xa2, 0x5e, + 0x28, 0xad, 0x40, 0x5a, 0x66, 0xd8, 0x30, 0x1c, 0xde, 0x16, 0xe5, 0xae, 0xc6, 0x9b, 0xa3, 0x99, + 0x08, 0x81, 0xf3, 0x6d, 0xde, 0x64, 0xe9, 0x73, 0xb2, 0x53, 0xfe, 0xa6, 0xcb, 0x30, 0x37, 0x44, + 0xa5, 0xb7, 0x15, 0xba, 0xec, 0xf7, 0xb7, 0xc2, 0x6b, 0xd1, 0x87, 0x98, 0xda, 0x9d, 0x2c, 0xca, + 0x5e, 0xec, 0xe8, 0xd4, 0x29, 0x18, 0x97, 0xb1, 0x98, 0xdb, 0x6b, 0xd0, 0x02, 0x26, 0xef, 0xd7, + 0xc1, 0xe4, 0x29, 0x18, 0x77, 0x09, 0xfd, 0xdc, 0x5e, 0x83, 0xde, 0x09, 0xa5, 0xde, 0xd1, 0x2d, + 0xbd, 0xc1, 0xda, 0x62, 0xf4, 0x4e, 0x34, 0x43, 0x49, 0x7a, 0x11, 0x98, 0xe4, 0x43, 0xf8, 0xbf, + 0xab, 0x5b, 0x6d, 0xe1, 0x00, 0x1e, 0x91, 0x5b, 0x11, 0x1b, 0x12, 0xd2, 0xd2, 0x66, 0xda, 0x21, + 0x61, 0xba, 0x8d, 0x67, 0x31, 0x3c, 0x63, 0xe4, 0xca, 0xa4, 0x61, 0x12, 0x93, 0xe3, 0xda, 0xf8, + 0x4d, 0x6a, 0x9e, 0x2c, 0x35, 0xe0, 0xde, 0x81, 0x99, 0x30, 0x37, 0x9e, 0xa3, 0x24, 0xd8, 0xd3, + 0x21, 0x6c, 0x5a, 0x84, 0x8c, 0x77, 0x1d, 0xf0, 0xa6, 0x69, 0x74, 0x3f, 0x72, 0x74, 0xa7, 0x23, + 0x58, 0xc4, 0xba, 0x0a, 0xfc, 0xcc, 0x07, 0x63, 0x90, 0xf0, 0x63, 0xb8, 0x64, 0xcb, 0x91, 0xaa, + 0xc0, 0x21, 0x5c, 0xdb, 0xa5, 0xa8, 0x3b, 0x25, 0xa4, 0xa7, 0x5d, 0xb4, 0xfb, 0xd4, 0xe9, 0x7d, + 0x58, 0x08, 0x25, 0x45, 0xfc, 0x4d, 0xdd, 0xd6, 0x6b, 0x66, 0xd3, 0x74, 0xcc, 0x28, 0xe6, 0x6f, + 0x15, 0x78, 0x3d, 0x2a, 0x1e, 0xf9, 0xf7, 0xe0, 0x0a, 0xf2, 0xe3, 0x1a, 0x57, 0x8d, 0xd0, 0x34, + 0xac, 0xa5, 0x14, 0xab, 0x96, 0xc1, 0x34, 0x5d, 0x6d, 0xce, 0x3e, 0x2d, 0x3f, 0xbd, 0x0d, 0x29, + 0x49, 0xf8, 0x09, 0xef, 0x18, 0xbb, 0x91, 0x87, 0xbb, 0x86, 0xb7, 0x52, 0x6f, 0x36, 0xe2, 0x6f, + 0xc3, 0x85, 0x3d, 0xec, 0x43, 0xd6, 0x5c, 0x04, 0xeb, 0x46, 0xbd, 0xde, 0x66, 0x42, 0xa0, 0x92, + 0x16, 0x84, 0xd3, 0x2d, 0x7c, 0x2b, 0xfc, 0x91, 0xa8, 0xe3, 0xac, 0x7b, 0x42, 0xfe, 0x71, 0xc6, + 0x26, 0xfd, 0x4a, 0xe9, 0xaf, 0x2c, 0x40, 0xed, 0xc2, 0x24, 0xe6, 0xc2, 0x63, 0x3c, 0x97, 0xf7, + 0x5e, 0xda, 0xbc, 0xfb, 0xd2, 0x06, 0x7c, 0x9b, 0xdc, 0xb4, 0xca, 0x15, 0xf7, 0xa5, 0xf9, 0xfd, + 0x70, 0xfe, 0x46, 0xc3, 0x74, 0x76, 0x3b, 0xb5, 0xbc, 0xc1, 0x5b, 0x2a, 0x3e, 0xcb, 0xde, 0x9f, + 0x9c, 0xa8, 0x3f, 0x55, 0x9d, 0xae, 0xcd, 0x84, 0x0c, 0xf8, 0xfb, 0x70, 0xfe, 0x15, 0x14, 0xbf, + 0xcd, 0x5b, 0xa6, 0xc3, 0x5a, 0xb6, 0xd3, 0xd5, 0xfc, 0x7c, 0x74, 0x0e, 0xbf, 0xd6, 0x1d, 0x5e, + 0xef, 0x34, 0x99, 0x7b, 0xca, 0xfc, 0x2b, 0x94, 0x7e, 0x8a, 0x5f, 0x5f, 0xdf, 0x10, 0x12, 0x6f, + 0xc0, 0xb8, 0x7b, 0xa8, 0xfd, 0xeb, 0x3b, 0xea, 0x44, 0xbf, 0xe3, 0xbd, 0xe0, 0x9e, 0x86, 0x17, + 0x59, 0xfc, 0xe3, 0x32, 0x8c, 0x4b, 0x7d, 0xf2, 0x8d, 0x02, 0x13, 0xde, 0x3b, 0x4a, 0x0a, 0x11, + 0x42, 0x27, 0x1f, 0xf2, 0x4c, 0x31, 0x49, 0x88, 0x87, 0x4f, 0x73, 0x5f, 0xfc, 0xfa, 0xd7, 0xd7, + 0xe7, 0x6e, 0x90, 0x05, 0x35, 0x8e, 0x4b, 0x21, 0x3f, 0x29, 0x70, 0x69, 0xe0, 0xb1, 0x26, 0xeb, + 0x71, 0xd2, 0x0e, 0x37, 0x00, 0x99, 0x37, 0xcf, 0x14, 0x8b, 0xec, 0xab, 0x92, 0xbd, 0x40, 0xd4, + 0x08, 0xf6, 0xe0, 0x9d, 0xac, 0x7a, 0xf6, 0x81, 0xbc, 0x50, 0x00, 0x7a, 0x06, 0x81, 0xdc, 0x4d, + 0x04, 0x11, 0xb0, 0x97, 0x92, 0x86, 0x21, 0x76, 0x41, 0x62, 0x2f, 0x91, 0x9b, 0x71, 0xb1, 0x05, + 0xf9, 0x4e, 0x81, 0xa9, 0x40, 0x89, 0xac, 0x24, 0x4a, 0xec, 0xe3, 0xde, 0x4d, 0x18, 0x85, 0xb4, + 0x6b, 0x92, 0xb6, 0x48, 0xee, 0xc4, 0xa5, 0x55, 0x9f, 0xcb, 0x55, 0xde, 0x27, 0x07, 0x0a, 0xcc, + 0x84, 0x5f, 0x73, 0xb2, 0x1a, 0x87, 0x60, 0x88, 0x8f, 0xc8, 0xac, 0x25, 0x0f, 0x44, 0xfa, 0x2d, + 0x49, 0xff, 0x16, 0xb9, 0x1f, 0x41, 0x2f, 0x0d, 0x45, 0xb5, 0xd6, 0xad, 0x4a, 0x33, 0xe2, 0x97, + 0xa0, 0x3e, 0x97, 0xcd, 0x7d, 0xf2, 0x8b, 0x02, 0x33, 0x61, 0x57, 0x14, 0xaf, 0x94, 0x21, 0x6e, + 0x2c, 0x5e, 0x29, 0xc3, 0x0c, 0x18, 0xad, 0xc8, 0x52, 0x1e, 0x90, 0x7b, 0x11, 0xa5, 0x78, 0xbe, + 0xcc, 0xad, 0xc5, 0x2d, 0xaa, 0x57, 0x8a, 0xdb, 0xda, 0x27, 0x3f, 0xe2, 0xa6, 0xf8, 0x26, 0x25, + 0xfe, 0xa6, 0x0c, 0x38, 0xac, 0xf8, 0x9b, 0x32, 0x68, 0xb4, 0xe8, 0x3d, 0x59, 0x49, 0x89, 0xac, + 0xc4, 0xd8, 0x94, 0xc0, 0x8d, 0x05, 0xc7, 0xea, 0x67, 0x05, 0xa6, 0x43, 0xb2, 0xa4, 0x94, 0x90, + 0xc3, 0xe7, 0x5f, 0x4d, 0x1c, 0x77, 0x86, 0x33, 0xe5, 0xe3, 0xf7, 0xb6, 0x01, 0x3b, 0xe4, 0x99, + 0xba, 0xd8, 0xef, 0x97, 0xc8, 0x1b, 0xb1, 0x2e, 0xf0, 0x61, 0xbe, 0x2c, 0xb3, 0x7e, 0x96, 0x50, + 0x2c, 0xe8, 0x81, 0x2c, 0x68, 0x8d, 0x94, 0xa2, 0xde, 0x80, 0x7e, 0x0f, 0x17, 0xec, 0xc8, 0x3f, + 0x0a, 0xcc, 0x9d, 0x6a, 0xa2, 0x48, 0x25, 0x3e, 0xd9, 0xe9, 0x1e, 0x2e, 0xb3, 0xf5, 0x1f, 0x55, + 0xb0, 0xd4, 0xf7, 0x64, 0xa9, 0x15, 0x52, 0x8e, 0x57, 0xea, 0x30, 0xbb, 0x17, 0x94, 0xfd, 0x42, + 0x81, 0x0b, 0xbe, 0xd7, 0x22, 0xcb, 0x71, 0xf8, 0x06, 0x7c, 0x5c, 0x66, 0x25, 0x59, 0x50, 0xc2, + 0x67, 0xcf, 0x37, 0x6d, 0x01, 0xf0, 0xf7, 0x0a, 0x4c, 0xa2, 0x1a, 0x29, 0x26, 0x48, 0xed, 0xe3, + 0x2e, 0x27, 0x8a, 0x41, 0xda, 0xb7, 0x25, 0xed, 0x3a, 0x59, 0x8b, 0x47, 0x1b, 0xba, 0x7a, 0x3d, + 0xaf, 0xb8, 0x4f, 0x7e, 0x50, 0x60, 0xf6, 0x51, 0x2f, 0x22, 0x64, 0xc2, 0xe2, 0x7d, 0xfb, 0x27, + 0x0d, 0x5d, 0xbc, 0x6f, 0x7f, 0x88, 0xdb, 0xa3, 0xcb, 0xb2, 0x9a, 0x1c, 0x59, 0x8a, 0xa8, 0xa6, + 0x25, 0x63, 0xe5, 0xa7, 0xc2, 0xca, 0x4f, 0x0f, 0x8e, 0xb2, 0xca, 0xcb, 0xa3, 0xac, 0xf2, 0xe7, + 0x51, 0x56, 0xf9, 0xf2, 0x38, 0x3b, 0xf6, 0xf2, 0x38, 0x3b, 0xf6, 0xdb, 0x71, 0x76, 0xec, 0xc9, + 0xe3, 0x90, 0x75, 0xdd, 0xf6, 0x05, 0xdf, 0xd7, 0x6b, 0xa2, 0x27, 0x9f, 0x33, 0x78, 0x9b, 0x85, + 0x9b, 0xbb, 0xba, 0x69, 0xa1, 0xbe, 0xe8, 0xcb, 0x2d, 0x9d, 0x6e, 0x6d, 0x42, 0xfe, 0xab, 0x67, + 0xf9, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x36, 0x6c, 0x4e, 0x0d, 0x40, 0x13, 0x00, 0x00, } -func (m *QueryAddressesByRoleResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// QueryClient is the client API for Query service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type QueryClient interface { + // Params defines a gRPC query method that returns the permissions module's + // parameters. + Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error) + // NamespaceDenoms defines a gRPC query method that returns the denoms for which a namespace exists + NamespaceDenoms(ctx context.Context, in *QueryNamespaceDenomsRequest, opts ...grpc.CallOption) (*QueryNamespaceDenomsResponse, error) + // Namespaces defines a gRPC query method that returns the permissions + // module's created namespaces. + Namespaces(ctx context.Context, in *QueryNamespacesRequest, opts ...grpc.CallOption) (*QueryNamespacesResponse, error) + // Namespace defines a gRPC query method that returns the permissions + // module's namespace associated with the provided denom. + Namespace(ctx context.Context, in *QueryNamespaceRequest, opts ...grpc.CallOption) (*QueryNamespaceResponse, error) + // RolesByActor defines a gRPC query method that returns roles for the actor in the namespace + RolesByActor(ctx context.Context, in *QueryRolesByActorRequest, opts ...grpc.CallOption) (*QueryRolesByActorResponse, error) + // ActorsByRole defines a gRPC query method that returns a namespace's roles associated with the provided actor. + ActorsByRole(ctx context.Context, in *QueryActorsByRoleRequest, opts ...grpc.CallOption) (*QueryActorsByRoleResponse, error) + // RoleManagers defines a gRPC query method that returns a namespace's role managers + RoleManagers(ctx context.Context, in *QueryRoleManagersRequest, opts ...grpc.CallOption) (*QueryRoleManagersResponse, error) + // RoleManager defines a gRPC query method that returns the roles a given role manager manages for a given namespace + RoleManager(ctx context.Context, in *QueryRoleManagerRequest, opts ...grpc.CallOption) (*QueryRoleManagerResponse, error) + // PolicyStatuses defines a gRPC query method that returns a namespace's policy statuses + PolicyStatuses(ctx context.Context, in *QueryPolicyStatusesRequest, opts ...grpc.CallOption) (*QueryPolicyStatusesResponse, error) + // PolicyManagerCapabilities defines a gRPC query method that returns a namespace's policy manager capabilities + PolicyManagerCapabilities(ctx context.Context, in *QueryPolicyManagerCapabilitiesRequest, opts ...grpc.CallOption) (*QueryPolicyManagerCapabilitiesResponse, error) + // Vouchers defines a gRPC query method for the vouchers for a given denom + Vouchers(ctx context.Context, in *QueryVouchersRequest, opts ...grpc.CallOption) (*QueryVouchersResponse, error) + // Voucher defines a gRPC query method for the vouchers for a given denom and address + Voucher(ctx context.Context, in *QueryVoucherRequest, opts ...grpc.CallOption) (*QueryVoucherResponse, error) + // Retrieves the entire permissions module's state + PermissionsModuleState(ctx context.Context, in *QueryModuleStateRequest, opts ...grpc.CallOption) (*QueryModuleStateResponse, error) } -func (m *QueryAddressesByRoleResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Addresses) > 0 { - for iNdEx := len(m.Addresses) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Addresses[iNdEx]) - copy(dAtA[i:], m.Addresses[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Addresses[iNdEx]))) - i-- - dAtA[i] = 0xa - } +type queryClient struct { + cc grpc1.ClientConn +} + +func NewQueryClient(cc grpc1.ClientConn) QueryClient { + return &queryClient{cc} +} + +func (c *queryClient) Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error) { + out := new(QueryParamsResponse) + err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/Params", in, out, opts...) + if err != nil { + return nil, err } - return len(dAtA) - i, nil + return out, nil } -func (m *QueryAddressRolesRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) +func (c *queryClient) NamespaceDenoms(ctx context.Context, in *QueryNamespaceDenomsRequest, opts ...grpc.CallOption) (*QueryNamespaceDenomsResponse, error) { + out := new(QueryNamespaceDenomsResponse) + err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/NamespaceDenoms", in, out, opts...) if err != nil { return nil, err } - return dAtA[:n], nil + return out, nil } -func (m *QueryAddressRolesRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (c *queryClient) Namespaces(ctx context.Context, in *QueryNamespacesRequest, opts ...grpc.CallOption) (*QueryNamespacesResponse, error) { + out := new(QueryNamespacesResponse) + err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/Namespaces", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (m *QueryAddressRolesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Address) > 0 { - i -= len(m.Address) - copy(dAtA[i:], m.Address) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Address))) - i-- - dAtA[i] = 0x12 +func (c *queryClient) Namespace(ctx context.Context, in *QueryNamespaceRequest, opts ...grpc.CallOption) (*QueryNamespaceResponse, error) { + out := new(QueryNamespaceResponse) + err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/Namespace", in, out, opts...) + if err != nil { + return nil, err } - if len(m.Denom) > 0 { - i -= len(m.Denom) - copy(dAtA[i:], m.Denom) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) - i-- - dAtA[i] = 0xa + return out, nil +} + +func (c *queryClient) RolesByActor(ctx context.Context, in *QueryRolesByActorRequest, opts ...grpc.CallOption) (*QueryRolesByActorResponse, error) { + out := new(QueryRolesByActorResponse) + err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/RolesByActor", in, out, opts...) + if err != nil { + return nil, err } - return len(dAtA) - i, nil + return out, nil } -func (m *QueryAddressRolesResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) +func (c *queryClient) ActorsByRole(ctx context.Context, in *QueryActorsByRoleRequest, opts ...grpc.CallOption) (*QueryActorsByRoleResponse, error) { + out := new(QueryActorsByRoleResponse) + err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/ActorsByRole", in, out, opts...) if err != nil { return nil, err } - return dAtA[:n], nil + return out, nil } -func (m *QueryAddressRolesResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (c *queryClient) RoleManagers(ctx context.Context, in *QueryRoleManagersRequest, opts ...grpc.CallOption) (*QueryRoleManagersResponse, error) { + out := new(QueryRoleManagersResponse) + err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/RoleManagers", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (m *QueryAddressRolesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Roles) > 0 { - for iNdEx := len(m.Roles) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Roles[iNdEx]) - copy(dAtA[i:], m.Roles[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Roles[iNdEx]))) - i-- - dAtA[i] = 0xa - } +func (c *queryClient) RoleManager(ctx context.Context, in *QueryRoleManagerRequest, opts ...grpc.CallOption) (*QueryRoleManagerResponse, error) { + out := new(QueryRoleManagerResponse) + err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/RoleManager", in, out, opts...) + if err != nil { + return nil, err } - return len(dAtA) - i, nil + return out, nil } -func (m *QueryVouchersForAddressRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) +func (c *queryClient) PolicyStatuses(ctx context.Context, in *QueryPolicyStatusesRequest, opts ...grpc.CallOption) (*QueryPolicyStatusesResponse, error) { + out := new(QueryPolicyStatusesResponse) + err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/PolicyStatuses", in, out, opts...) if err != nil { return nil, err } - return dAtA[:n], nil + return out, nil } -func (m *QueryVouchersForAddressRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (c *queryClient) PolicyManagerCapabilities(ctx context.Context, in *QueryPolicyManagerCapabilitiesRequest, opts ...grpc.CallOption) (*QueryPolicyManagerCapabilitiesResponse, error) { + out := new(QueryPolicyManagerCapabilitiesResponse) + err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/PolicyManagerCapabilities", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (m *QueryVouchersForAddressRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Address) > 0 { - i -= len(m.Address) - copy(dAtA[i:], m.Address) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Address))) - i-- - dAtA[i] = 0xa +func (c *queryClient) Vouchers(ctx context.Context, in *QueryVouchersRequest, opts ...grpc.CallOption) (*QueryVouchersResponse, error) { + out := new(QueryVouchersResponse) + err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/Vouchers", in, out, opts...) + if err != nil { + return nil, err } - return len(dAtA) - i, nil + return out, nil } -func (m *QueryVouchersForAddressResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) +func (c *queryClient) Voucher(ctx context.Context, in *QueryVoucherRequest, opts ...grpc.CallOption) (*QueryVoucherResponse, error) { + out := new(QueryVoucherResponse) + err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/Voucher", in, out, opts...) if err != nil { return nil, err } - return dAtA[:n], nil + return out, nil } -func (m *QueryVouchersForAddressResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (c *queryClient) PermissionsModuleState(ctx context.Context, in *QueryModuleStateRequest, opts ...grpc.CallOption) (*QueryModuleStateResponse, error) { + out := new(QueryModuleStateResponse) + err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Query/PermissionsModuleState", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (m *QueryVouchersForAddressResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Vouchers) > 0 { - for iNdEx := len(m.Vouchers) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Vouchers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } +// QueryServer is the server API for Query service. +type QueryServer interface { + // Params defines a gRPC query method that returns the permissions module's + // parameters. + Params(context.Context, *QueryParamsRequest) (*QueryParamsResponse, error) + // NamespaceDenoms defines a gRPC query method that returns the denoms for which a namespace exists + NamespaceDenoms(context.Context, *QueryNamespaceDenomsRequest) (*QueryNamespaceDenomsResponse, error) + // Namespaces defines a gRPC query method that returns the permissions + // module's created namespaces. + Namespaces(context.Context, *QueryNamespacesRequest) (*QueryNamespacesResponse, error) + // Namespace defines a gRPC query method that returns the permissions + // module's namespace associated with the provided denom. + Namespace(context.Context, *QueryNamespaceRequest) (*QueryNamespaceResponse, error) + // RolesByActor defines a gRPC query method that returns roles for the actor in the namespace + RolesByActor(context.Context, *QueryRolesByActorRequest) (*QueryRolesByActorResponse, error) + // ActorsByRole defines a gRPC query method that returns a namespace's roles associated with the provided actor. + ActorsByRole(context.Context, *QueryActorsByRoleRequest) (*QueryActorsByRoleResponse, error) + // RoleManagers defines a gRPC query method that returns a namespace's role managers + RoleManagers(context.Context, *QueryRoleManagersRequest) (*QueryRoleManagersResponse, error) + // RoleManager defines a gRPC query method that returns the roles a given role manager manages for a given namespace + RoleManager(context.Context, *QueryRoleManagerRequest) (*QueryRoleManagerResponse, error) + // PolicyStatuses defines a gRPC query method that returns a namespace's policy statuses + PolicyStatuses(context.Context, *QueryPolicyStatusesRequest) (*QueryPolicyStatusesResponse, error) + // PolicyManagerCapabilities defines a gRPC query method that returns a namespace's policy manager capabilities + PolicyManagerCapabilities(context.Context, *QueryPolicyManagerCapabilitiesRequest) (*QueryPolicyManagerCapabilitiesResponse, error) + // Vouchers defines a gRPC query method for the vouchers for a given denom + Vouchers(context.Context, *QueryVouchersRequest) (*QueryVouchersResponse, error) + // Voucher defines a gRPC query method for the vouchers for a given denom and address + Voucher(context.Context, *QueryVoucherRequest) (*QueryVoucherResponse, error) + // Retrieves the entire permissions module's state + PermissionsModuleState(context.Context, *QueryModuleStateRequest) (*QueryModuleStateResponse, error) +} + +// UnimplementedQueryServer can be embedded to have forward compatible implementations. +type UnimplementedQueryServer struct { +} + +func (*UnimplementedQueryServer) Params(ctx context.Context, req *QueryParamsRequest) (*QueryParamsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Params not implemented") +} +func (*UnimplementedQueryServer) NamespaceDenoms(ctx context.Context, req *QueryNamespaceDenomsRequest) (*QueryNamespaceDenomsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method NamespaceDenoms not implemented") +} +func (*UnimplementedQueryServer) Namespaces(ctx context.Context, req *QueryNamespacesRequest) (*QueryNamespacesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Namespaces not implemented") +} +func (*UnimplementedQueryServer) Namespace(ctx context.Context, req *QueryNamespaceRequest) (*QueryNamespaceResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Namespace not implemented") +} +func (*UnimplementedQueryServer) RolesByActor(ctx context.Context, req *QueryRolesByActorRequest) (*QueryRolesByActorResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method RolesByActor not implemented") +} +func (*UnimplementedQueryServer) ActorsByRole(ctx context.Context, req *QueryActorsByRoleRequest) (*QueryActorsByRoleResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ActorsByRole not implemented") +} +func (*UnimplementedQueryServer) RoleManagers(ctx context.Context, req *QueryRoleManagersRequest) (*QueryRoleManagersResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method RoleManagers not implemented") +} +func (*UnimplementedQueryServer) RoleManager(ctx context.Context, req *QueryRoleManagerRequest) (*QueryRoleManagerResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method RoleManager not implemented") +} +func (*UnimplementedQueryServer) PolicyStatuses(ctx context.Context, req *QueryPolicyStatusesRequest) (*QueryPolicyStatusesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method PolicyStatuses not implemented") +} +func (*UnimplementedQueryServer) PolicyManagerCapabilities(ctx context.Context, req *QueryPolicyManagerCapabilitiesRequest) (*QueryPolicyManagerCapabilitiesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method PolicyManagerCapabilities not implemented") +} +func (*UnimplementedQueryServer) Vouchers(ctx context.Context, req *QueryVouchersRequest) (*QueryVouchersResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Vouchers not implemented") +} +func (*UnimplementedQueryServer) Voucher(ctx context.Context, req *QueryVoucherRequest) (*QueryVoucherResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Voucher not implemented") +} +func (*UnimplementedQueryServer) PermissionsModuleState(ctx context.Context, req *QueryModuleStateRequest) (*QueryModuleStateResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method PermissionsModuleState not implemented") +} + +func RegisterQueryServer(s grpc1.Server, srv QueryServer) { + s.RegisterService(&_Query_serviceDesc, srv) +} + +func _Query_Params_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryParamsRequest) + if err := dec(in); err != nil { + return nil, err } - return len(dAtA) - i, nil + if interceptor == nil { + return srv.(QueryServer).Params(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.permissions.v1beta1.Query/Params", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).Params(ctx, req.(*QueryParamsRequest)) + } + return interceptor(ctx, in, info, handler) } -func encodeVarintQuery(dAtA []byte, offset int, v uint64) int { - offset -= sovQuery(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ +func _Query_NamespaceDenoms_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryNamespaceDenomsRequest) + if err := dec(in); err != nil { + return nil, err } - dAtA[offset] = uint8(v) - return base + if interceptor == nil { + return srv.(QueryServer).NamespaceDenoms(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.permissions.v1beta1.Query/NamespaceDenoms", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).NamespaceDenoms(ctx, req.(*QueryNamespaceDenomsRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryParamsRequest) Size() (n int) { - if m == nil { - return 0 + +func _Query_Namespaces_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryNamespacesRequest) + if err := dec(in); err != nil { + return nil, err } - var l int - _ = l - return n + if interceptor == nil { + return srv.(QueryServer).Namespaces(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.permissions.v1beta1.Query/Namespaces", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).Namespaces(ctx, req.(*QueryNamespacesRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryParamsResponse) Size() (n int) { - if m == nil { - return 0 +func _Query_Namespace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryNamespaceRequest) + if err := dec(in); err != nil { + return nil, err } - var l int - _ = l - l = m.Params.Size() - n += 1 + l + sovQuery(uint64(l)) - return n + if interceptor == nil { + return srv.(QueryServer).Namespace(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.permissions.v1beta1.Query/Namespace", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).Namespace(ctx, req.(*QueryNamespaceRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAllNamespacesRequest) Size() (n int) { - if m == nil { - return 0 +func _Query_RolesByActor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryRolesByActorRequest) + if err := dec(in); err != nil { + return nil, err } - var l int - _ = l - return n + if interceptor == nil { + return srv.(QueryServer).RolesByActor(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.permissions.v1beta1.Query/RolesByActor", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).RolesByActor(ctx, req.(*QueryRolesByActorRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAllNamespacesResponse) Size() (n int) { - if m == nil { - return 0 +func _Query_ActorsByRole_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryActorsByRoleRequest) + if err := dec(in); err != nil { + return nil, err } - var l int - _ = l - if len(m.Namespaces) > 0 { - for _, e := range m.Namespaces { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } + if interceptor == nil { + return srv.(QueryServer).ActorsByRole(ctx, in) } - return n + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.permissions.v1beta1.Query/ActorsByRole", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).ActorsByRole(ctx, req.(*QueryActorsByRoleRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryNamespaceByDenomRequest) Size() (n int) { - if m == nil { - return 0 +func _Query_RoleManagers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryRoleManagersRequest) + if err := dec(in); err != nil { + return nil, err } - var l int - _ = l - l = len(m.Denom) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + if interceptor == nil { + return srv.(QueryServer).RoleManagers(ctx, in) } - if m.IncludeRoles { - n += 2 + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.permissions.v1beta1.Query/RoleManagers", } - return n + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).RoleManagers(ctx, req.(*QueryRoleManagersRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryNamespaceByDenomResponse) Size() (n int) { - if m == nil { - return 0 +func _Query_RoleManager_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryRoleManagerRequest) + if err := dec(in); err != nil { + return nil, err } - var l int - _ = l - if m.Namespace != nil { - l = m.Namespace.Size() - n += 1 + l + sovQuery(uint64(l)) + if interceptor == nil { + return srv.(QueryServer).RoleManager(ctx, in) } - return n + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.permissions.v1beta1.Query/RoleManager", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).RoleManager(ctx, req.(*QueryRoleManagerRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAddressesByRoleRequest) Size() (n int) { - if m == nil { - return 0 +func _Query_PolicyStatuses_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryPolicyStatusesRequest) + if err := dec(in); err != nil { + return nil, err } - var l int - _ = l - l = len(m.Denom) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + if interceptor == nil { + return srv.(QueryServer).PolicyStatuses(ctx, in) } - l = len(m.Role) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.permissions.v1beta1.Query/PolicyStatuses", } - return n + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).PolicyStatuses(ctx, req.(*QueryPolicyStatusesRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAddressesByRoleResponse) Size() (n int) { - if m == nil { - return 0 +func _Query_PolicyManagerCapabilities_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryPolicyManagerCapabilitiesRequest) + if err := dec(in); err != nil { + return nil, err } - var l int - _ = l - if len(m.Addresses) > 0 { - for _, s := range m.Addresses { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } + if interceptor == nil { + return srv.(QueryServer).PolicyManagerCapabilities(ctx, in) } - return n + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.permissions.v1beta1.Query/PolicyManagerCapabilities", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).PolicyManagerCapabilities(ctx, req.(*QueryPolicyManagerCapabilitiesRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAddressRolesRequest) Size() (n int) { - if m == nil { - return 0 +func _Query_Vouchers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryVouchersRequest) + if err := dec(in); err != nil { + return nil, err } - var l int - _ = l - l = len(m.Denom) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + if interceptor == nil { + return srv.(QueryServer).Vouchers(ctx, in) } - l = len(m.Address) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.permissions.v1beta1.Query/Vouchers", } - return n + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).Vouchers(ctx, req.(*QueryVouchersRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *QueryAddressRolesResponse) Size() (n int) { - if m == nil { - return 0 +func _Query_Voucher_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryVoucherRequest) + if err := dec(in); err != nil { + return nil, err } - var l int - _ = l - if len(m.Roles) > 0 { - for _, s := range m.Roles { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) + if interceptor == nil { + return srv.(QueryServer).Voucher(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.permissions.v1beta1.Query/Voucher", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).Voucher(ctx, req.(*QueryVoucherRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _Query_PermissionsModuleState_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryModuleStateRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).PermissionsModuleState(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective.permissions.v1beta1.Query/PermissionsModuleState", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).PermissionsModuleState(ctx, req.(*QueryModuleStateRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _Query_serviceDesc = grpc.ServiceDesc{ + ServiceName: "injective.permissions.v1beta1.Query", + HandlerType: (*QueryServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Params", + Handler: _Query_Params_Handler, + }, + { + MethodName: "NamespaceDenoms", + Handler: _Query_NamespaceDenoms_Handler, + }, + { + MethodName: "Namespaces", + Handler: _Query_Namespaces_Handler, + }, + { + MethodName: "Namespace", + Handler: _Query_Namespace_Handler, + }, + { + MethodName: "RolesByActor", + Handler: _Query_RolesByActor_Handler, + }, + { + MethodName: "ActorsByRole", + Handler: _Query_ActorsByRole_Handler, + }, + { + MethodName: "RoleManagers", + Handler: _Query_RoleManagers_Handler, + }, + { + MethodName: "RoleManager", + Handler: _Query_RoleManager_Handler, + }, + { + MethodName: "PolicyStatuses", + Handler: _Query_PolicyStatuses_Handler, + }, + { + MethodName: "PolicyManagerCapabilities", + Handler: _Query_PolicyManagerCapabilities_Handler, + }, + { + MethodName: "Vouchers", + Handler: _Query_Vouchers_Handler, + }, + { + MethodName: "Voucher", + Handler: _Query_Voucher_Handler, + }, + { + MethodName: "PermissionsModuleState", + Handler: _Query_PermissionsModuleState_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "injective/permissions/v1beta1/query.proto", +} + +func (m *QueryParamsRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryParamsRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryParamsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func (m *QueryParamsResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryParamsResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryParamsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + { + size, err := m.Params.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + +func (m *QueryNamespaceDenomsRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryNamespaceDenomsRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryNamespaceDenomsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func (m *QueryNamespaceDenomsResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryNamespaceDenomsResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryNamespaceDenomsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Denoms) > 0 { + for iNdEx := len(m.Denoms) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Denoms[iNdEx]) + copy(dAtA[i:], m.Denoms[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denoms[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryNamespacesRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryNamespacesRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryNamespacesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func (m *QueryNamespacesResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryNamespacesResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryNamespacesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Namespaces) > 0 { + for iNdEx := len(m.Namespaces) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Namespaces[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryNamespaceRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryNamespaceRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryNamespaceRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryNamespaceResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryNamespaceResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryNamespaceResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Namespace != nil { + { + size, err := m.Namespace.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryActorsByRoleRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryActorsByRoleRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryActorsByRoleRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Role) > 0 { + i -= len(m.Role) + copy(dAtA[i:], m.Role) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Role))) + i-- + dAtA[i] = 0x12 + } + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryActorsByRoleResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryActorsByRoleResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryActorsByRoleResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Actors) > 0 { + for iNdEx := len(m.Actors) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Actors[iNdEx]) + copy(dAtA[i:], m.Actors[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Actors[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryRolesByActorRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryRolesByActorRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryRolesByActorRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Actor) > 0 { + i -= len(m.Actor) + copy(dAtA[i:], m.Actor) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Actor))) + i-- + dAtA[i] = 0x12 + } + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryRolesByActorResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryRolesByActorResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryRolesByActorResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Roles) > 0 { + for iNdEx := len(m.Roles) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Roles[iNdEx]) + copy(dAtA[i:], m.Roles[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Roles[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryRoleManagersRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryRoleManagersRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryRoleManagersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryRoleManagersResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryRoleManagersResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryRoleManagersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.RoleManagers) > 0 { + for iNdEx := len(m.RoleManagers) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RoleManagers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryRoleManagerRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryRoleManagerRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryRoleManagerRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Manager) > 0 { + i -= len(m.Manager) + copy(dAtA[i:], m.Manager) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Manager))) + i-- + dAtA[i] = 0x12 + } + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryRoleManagerResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryRoleManagerResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryRoleManagerResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.RoleManager != nil { + { + size, err := m.RoleManager.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryPolicyStatusesRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryPolicyStatusesRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryPolicyStatusesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryPolicyStatusesResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryPolicyStatusesResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryPolicyStatusesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.PolicyStatuses) > 0 { + for iNdEx := len(m.PolicyStatuses) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.PolicyStatuses[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryPolicyManagerCapabilitiesRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryPolicyManagerCapabilitiesRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryPolicyManagerCapabilitiesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryPolicyManagerCapabilitiesResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryPolicyManagerCapabilitiesResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryPolicyManagerCapabilitiesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.PolicyManagerCapabilities) > 0 { + for iNdEx := len(m.PolicyManagerCapabilities) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.PolicyManagerCapabilities[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryVouchersRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryVouchersRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryVouchersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryVouchersResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryVouchersResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryVouchersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Vouchers) > 0 { + for iNdEx := len(m.Vouchers) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Vouchers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *QueryVoucherRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryVoucherRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryVoucherRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Address) > 0 { + i -= len(m.Address) + copy(dAtA[i:], m.Address) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Address))) + i-- + dAtA[i] = 0x12 + } + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryVoucherResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryVoucherResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryVoucherResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + { + size := m.Voucher.Size() + i -= size + if _, err := m.Voucher.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + +func (m *QueryModuleStateRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryModuleStateRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryModuleStateRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func (m *QueryModuleStateResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryModuleStateResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryModuleStateResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.State != nil { + { + size, err := m.State.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintQuery(dAtA []byte, offset int, v uint64) int { + offset -= sovQuery(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *QueryParamsRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *QueryParamsResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Params.Size() + n += 1 + l + sovQuery(uint64(l)) + return n +} + +func (m *QueryNamespaceDenomsRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *QueryNamespaceDenomsResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Denoms) > 0 { + for _, s := range m.Denoms { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryNamespacesRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *QueryNamespacesResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Namespaces) > 0 { + for _, e := range m.Namespaces { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryNamespaceRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryNamespaceResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Namespace != nil { + l = m.Namespace.Size() + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryActorsByRoleRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.Role) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryActorsByRoleResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Actors) > 0 { + for _, s := range m.Actors { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryRolesByActorRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.Actor) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryRolesByActorResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Roles) > 0 { + for _, s := range m.Roles { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryRoleManagersRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryRoleManagersResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.RoleManagers) > 0 { + for _, e := range m.RoleManagers { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryRoleManagerRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.Manager) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryRoleManagerResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RoleManager != nil { + l = m.RoleManager.Size() + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryPolicyStatusesRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryPolicyStatusesResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.PolicyStatuses) > 0 { + for _, e := range m.PolicyStatuses { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryPolicyManagerCapabilitiesRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryPolicyManagerCapabilitiesResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.PolicyManagerCapabilities) > 0 { + for _, e := range m.PolicyManagerCapabilities { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryVouchersRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryVouchersResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Vouchers) > 0 { + for _, e := range m.Vouchers { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + +func (m *QueryVoucherRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.Address) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryVoucherResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Voucher.Size() + n += 1 + l + sovQuery(uint64(l)) + return n +} + +func (m *QueryModuleStateRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *QueryModuleStateResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.State != nil { + l = m.State.Size() + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func sovQuery(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozQuery(x uint64) (n int) { + return sovQuery(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (m *QueryParamsRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryParamsRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryParamsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryParamsResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryParamsResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Params", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryNamespaceDenomsRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryNamespaceDenomsRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryNamespaceDenomsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryNamespaceDenomsResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryNamespaceDenomsResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryNamespaceDenomsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Denoms", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Denoms = append(m.Denoms, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryNamespacesRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryNamespacesRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryNamespacesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryNamespacesResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryNamespacesResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryNamespacesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespaces", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespaces = append(m.Namespaces, &Namespace{}) + if err := m.Namespaces[len(m.Namespaces)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryNamespaceRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryNamespaceRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryNamespaceRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryNamespaceResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryNamespaceResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryNamespaceResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Namespace == nil { + m.Namespace = &Namespace{} + } + if err := m.Namespace.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryActorsByRoleRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryActorsByRoleRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryActorsByRoleRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Role", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Role = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryActorsByRoleResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryActorsByRoleResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryActorsByRoleResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Actors", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Actors = append(m.Actors, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryRolesByActorRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryRolesByActorRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryRolesByActorRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Actor", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Actor = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryRolesByActorResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryRolesByActorResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryRolesByActorResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Roles", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Roles = append(m.Roles, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryRoleManagersRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryRoleManagersRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryRoleManagersRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryRoleManagersResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryRoleManagersResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryRoleManagersResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RoleManagers", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RoleManagers = append(m.RoleManagers, &RoleManager{}) + if err := m.RoleManagers[len(m.RoleManagers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy } } - return n -} - -func (m *QueryVouchersForAddressRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Address) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - return n -} -func (m *QueryVouchersForAddressResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Vouchers) > 0 { - for _, e := range m.Vouchers { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } + if iNdEx > l { + return io.ErrUnexpectedEOF } - return n -} - -func sovQuery(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 -} -func sozQuery(x uint64) (n int) { - return sovQuery(uint64((x << 1) ^ uint64((int64(x) >> 63)))) + return nil } -func (m *QueryParamsRequest) Unmarshal(dAtA []byte) error { +func (m *QueryRoleManagerRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -1544,12 +4231,76 @@ func (m *QueryParamsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryParamsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryRoleManagerRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryParamsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryRoleManagerRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Manager", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Manager = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -1571,7 +4322,7 @@ func (m *QueryParamsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryParamsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryRoleManagerResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -1594,15 +4345,15 @@ func (m *QueryParamsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryParamsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryRoleManagerResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryRoleManagerResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Params", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RoleManager", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1629,7 +4380,10 @@ func (m *QueryParamsResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.RoleManager == nil { + m.RoleManager = &RoleManager{} + } + if err := m.RoleManager.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -1654,7 +4408,7 @@ func (m *QueryParamsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAllNamespacesRequest) Unmarshal(dAtA []byte) error { +func (m *QueryPolicyStatusesRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -1677,12 +4431,44 @@ func (m *QueryAllNamespacesRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAllNamespacesRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryPolicyStatusesRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAllNamespacesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryPolicyStatusesRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -1704,7 +4490,7 @@ func (m *QueryAllNamespacesRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAllNamespacesResponse) Unmarshal(dAtA []byte) error { +func (m *QueryPolicyStatusesResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -1727,15 +4513,15 @@ func (m *QueryAllNamespacesResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAllNamespacesResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryPolicyStatusesResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAllNamespacesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryPolicyStatusesResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespaces", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PolicyStatuses", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1762,8 +4548,8 @@ func (m *QueryAllNamespacesResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Namespaces = append(m.Namespaces, &Namespace{}) - if err := m.Namespaces[len(m.Namespaces)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.PolicyStatuses = append(m.PolicyStatuses, &PolicyStatus{}) + if err := m.PolicyStatuses[len(m.PolicyStatuses)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -1788,7 +4574,7 @@ func (m *QueryAllNamespacesResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryNamespaceByDenomRequest) Unmarshal(dAtA []byte) error { +func (m *QueryPolicyManagerCapabilitiesRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -1811,10 +4597,10 @@ func (m *QueryNamespaceByDenomRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryNamespaceByDenomRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryPolicyManagerCapabilitiesRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryNamespaceByDenomRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryPolicyManagerCapabilitiesRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -1849,26 +4635,6 @@ func (m *QueryNamespaceByDenomRequest) Unmarshal(dAtA []byte) error { } m.Denom = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field IncludeRoles", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.IncludeRoles = bool(v != 0) default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -1890,7 +4656,7 @@ func (m *QueryNamespaceByDenomRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryNamespaceByDenomResponse) Unmarshal(dAtA []byte) error { +func (m *QueryPolicyManagerCapabilitiesResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -1913,15 +4679,15 @@ func (m *QueryNamespaceByDenomResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryNamespaceByDenomResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryPolicyManagerCapabilitiesResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryNamespaceByDenomResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryPolicyManagerCapabilitiesResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PolicyManagerCapabilities", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1948,10 +4714,8 @@ func (m *QueryNamespaceByDenomResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Namespace == nil { - m.Namespace = &Namespace{} - } - if err := m.Namespace.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.PolicyManagerCapabilities = append(m.PolicyManagerCapabilities, &PolicyManagerCapability{}) + if err := m.PolicyManagerCapabilities[len(m.PolicyManagerCapabilities)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -1976,7 +4740,7 @@ func (m *QueryNamespaceByDenomResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAddressesByRoleRequest) Unmarshal(dAtA []byte) error { +func (m *QueryVouchersRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -1999,10 +4763,10 @@ func (m *QueryAddressesByRoleRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAddressesByRoleRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryVouchersRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAddressesByRoleRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryVouchersRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -2037,38 +4801,6 @@ func (m *QueryAddressesByRoleRequest) Unmarshal(dAtA []byte) error { } m.Denom = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Role", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Role = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -2090,7 +4822,7 @@ func (m *QueryAddressesByRoleRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAddressesByRoleResponse) Unmarshal(dAtA []byte) error { +func (m *QueryVouchersResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -2113,17 +4845,17 @@ func (m *QueryAddressesByRoleResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAddressesByRoleResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryVouchersResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAddressesByRoleResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryVouchersResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Addresses", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Vouchers", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -2133,23 +4865,25 @@ func (m *QueryAddressesByRoleResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.Addresses = append(m.Addresses, string(dAtA[iNdEx:postIndex])) + m.Vouchers = append(m.Vouchers, &AddressVoucher{}) + if err := m.Vouchers[len(m.Vouchers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -2172,7 +4906,7 @@ func (m *QueryAddressesByRoleResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAddressRolesRequest) Unmarshal(dAtA []byte) error { +func (m *QueryVoucherRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -2195,10 +4929,10 @@ func (m *QueryAddressRolesRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAddressRolesRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryVoucherRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAddressRolesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryVoucherRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -2286,7 +5020,7 @@ func (m *QueryAddressRolesRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAddressRolesResponse) Unmarshal(dAtA []byte) error { +func (m *QueryVoucherResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -2309,17 +5043,17 @@ func (m *QueryAddressRolesResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAddressRolesResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryVoucherResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAddressRolesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryVoucherResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Roles", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Voucher", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -2329,23 +5063,24 @@ func (m *QueryAddressRolesResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.Roles = append(m.Roles, string(dAtA[iNdEx:postIndex])) + if err := m.Voucher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -2368,7 +5103,7 @@ func (m *QueryAddressRolesResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryVouchersForAddressRequest) Unmarshal(dAtA []byte) error { +func (m *QueryModuleStateRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -2391,44 +5126,12 @@ func (m *QueryVouchersForAddressRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryVouchersForAddressRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryModuleStateRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryVouchersForAddressRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryModuleStateRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Address = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) @@ -2450,7 +5153,7 @@ func (m *QueryVouchersForAddressRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryVouchersForAddressResponse) Unmarshal(dAtA []byte) error { +func (m *QueryModuleStateResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -2473,15 +5176,15 @@ func (m *QueryVouchersForAddressResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryVouchersForAddressResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryModuleStateResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryVouchersForAddressResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryModuleStateResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Vouchers", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -2508,8 +5211,10 @@ func (m *QueryVouchersForAddressResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Vouchers = append(m.Vouchers, types.Coin{}) - if err := m.Vouchers[len(m.Vouchers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.State == nil { + m.State = &GenesisState{} + } + if err := m.State.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex diff --git a/chain/permissions/types/tx.pb.go b/chain/permissions/types/tx.pb.go index 7516812d..cdeff028 100644 --- a/chain/permissions/types/tx.pb.go +++ b/chain/permissions/types/tx.pb.go @@ -213,108 +213,21 @@ func (m *MsgCreateNamespaceResponse) XXX_DiscardUnknown() { var xxx_messageInfo_MsgCreateNamespaceResponse proto.InternalMessageInfo -type MsgDeleteNamespace struct { - Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` - NamespaceDenom string `protobuf:"bytes,2,opt,name=namespace_denom,json=namespaceDenom,proto3" json:"namespace_denom,omitempty"` -} - -func (m *MsgDeleteNamespace) Reset() { *m = MsgDeleteNamespace{} } -func (m *MsgDeleteNamespace) String() string { return proto.CompactTextString(m) } -func (*MsgDeleteNamespace) ProtoMessage() {} -func (*MsgDeleteNamespace) Descriptor() ([]byte, []int) { - return fileDescriptor_ab9bfdcab1d9b6fa, []int{4} -} -func (m *MsgDeleteNamespace) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgDeleteNamespace) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgDeleteNamespace.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *MsgDeleteNamespace) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgDeleteNamespace.Merge(m, src) -} -func (m *MsgDeleteNamespace) XXX_Size() int { - return m.Size() -} -func (m *MsgDeleteNamespace) XXX_DiscardUnknown() { - xxx_messageInfo_MsgDeleteNamespace.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgDeleteNamespace proto.InternalMessageInfo - -func (m *MsgDeleteNamespace) GetSender() string { - if m != nil { - return m.Sender - } - return "" -} - -func (m *MsgDeleteNamespace) GetNamespaceDenom() string { - if m != nil { - return m.NamespaceDenom - } - return "" -} - -type MsgDeleteNamespaceResponse struct { -} - -func (m *MsgDeleteNamespaceResponse) Reset() { *m = MsgDeleteNamespaceResponse{} } -func (m *MsgDeleteNamespaceResponse) String() string { return proto.CompactTextString(m) } -func (*MsgDeleteNamespaceResponse) ProtoMessage() {} -func (*MsgDeleteNamespaceResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_ab9bfdcab1d9b6fa, []int{5} -} -func (m *MsgDeleteNamespaceResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgDeleteNamespaceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgDeleteNamespaceResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *MsgDeleteNamespaceResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgDeleteNamespaceResponse.Merge(m, src) -} -func (m *MsgDeleteNamespaceResponse) XXX_Size() int { - return m.Size() -} -func (m *MsgDeleteNamespaceResponse) XXX_DiscardUnknown() { - xxx_messageInfo_MsgDeleteNamespaceResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgDeleteNamespaceResponse proto.InternalMessageInfo - type MsgUpdateNamespace struct { - Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` - NamespaceDenom string `protobuf:"bytes,2,opt,name=namespace_denom,json=namespaceDenom,proto3" json:"namespace_denom,omitempty"` - WasmHook *MsgUpdateNamespace_MsgSetWasmHook `protobuf:"bytes,3,opt,name=wasm_hook,json=wasmHook,proto3" json:"wasm_hook,omitempty"` - MintsPaused *MsgUpdateNamespace_MsgSetMintsPaused `protobuf:"bytes,4,opt,name=mints_paused,json=mintsPaused,proto3" json:"mints_paused,omitempty"` - SendsPaused *MsgUpdateNamespace_MsgSetSendsPaused `protobuf:"bytes,5,opt,name=sends_paused,json=sendsPaused,proto3" json:"sends_paused,omitempty"` - BurnsPaused *MsgUpdateNamespace_MsgSetBurnsPaused `protobuf:"bytes,6,opt,name=burns_paused,json=burnsPaused,proto3" json:"burns_paused,omitempty"` + Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` + Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` + ContractHook *MsgUpdateNamespace_SetContractHook `protobuf:"bytes,3,opt,name=contract_hook,json=contractHook,proto3" json:"contract_hook,omitempty"` + RolePermissions []*Role `protobuf:"bytes,4,rep,name=role_permissions,json=rolePermissions,proto3" json:"role_permissions,omitempty"` + RoleManagers []*RoleManager `protobuf:"bytes,5,rep,name=role_managers,json=roleManagers,proto3" json:"role_managers,omitempty"` + PolicyStatuses []*PolicyStatus `protobuf:"bytes,6,rep,name=policy_statuses,json=policyStatuses,proto3" json:"policy_statuses,omitempty"` + PolicyManagerCapabilities []*PolicyManagerCapability `protobuf:"bytes,7,rep,name=policy_manager_capabilities,json=policyManagerCapabilities,proto3" json:"policy_manager_capabilities,omitempty"` } func (m *MsgUpdateNamespace) Reset() { *m = MsgUpdateNamespace{} } func (m *MsgUpdateNamespace) String() string { return proto.CompactTextString(m) } func (*MsgUpdateNamespace) ProtoMessage() {} func (*MsgUpdateNamespace) Descriptor() ([]byte, []int) { - return fileDescriptor_ab9bfdcab1d9b6fa, []int{6} + return fileDescriptor_ab9bfdcab1d9b6fa, []int{4} } func (m *MsgUpdateNamespace) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -350,189 +263,64 @@ func (m *MsgUpdateNamespace) GetSender() string { return "" } -func (m *MsgUpdateNamespace) GetNamespaceDenom() string { +func (m *MsgUpdateNamespace) GetDenom() string { if m != nil { - return m.NamespaceDenom + return m.Denom } return "" } -func (m *MsgUpdateNamespace) GetWasmHook() *MsgUpdateNamespace_MsgSetWasmHook { +func (m *MsgUpdateNamespace) GetContractHook() *MsgUpdateNamespace_SetContractHook { if m != nil { - return m.WasmHook + return m.ContractHook } return nil } -func (m *MsgUpdateNamespace) GetMintsPaused() *MsgUpdateNamespace_MsgSetMintsPaused { +func (m *MsgUpdateNamespace) GetRolePermissions() []*Role { if m != nil { - return m.MintsPaused + return m.RolePermissions } return nil } -func (m *MsgUpdateNamespace) GetSendsPaused() *MsgUpdateNamespace_MsgSetSendsPaused { +func (m *MsgUpdateNamespace) GetRoleManagers() []*RoleManager { if m != nil { - return m.SendsPaused + return m.RoleManagers } return nil } -func (m *MsgUpdateNamespace) GetBurnsPaused() *MsgUpdateNamespace_MsgSetBurnsPaused { +func (m *MsgUpdateNamespace) GetPolicyStatuses() []*PolicyStatus { if m != nil { - return m.BurnsPaused + return m.PolicyStatuses } return nil } -type MsgUpdateNamespace_MsgSetWasmHook struct { - NewValue string `protobuf:"bytes,1,opt,name=new_value,json=newValue,proto3" json:"new_value,omitempty"` -} - -func (m *MsgUpdateNamespace_MsgSetWasmHook) Reset() { *m = MsgUpdateNamespace_MsgSetWasmHook{} } -func (m *MsgUpdateNamespace_MsgSetWasmHook) String() string { return proto.CompactTextString(m) } -func (*MsgUpdateNamespace_MsgSetWasmHook) ProtoMessage() {} -func (*MsgUpdateNamespace_MsgSetWasmHook) Descriptor() ([]byte, []int) { - return fileDescriptor_ab9bfdcab1d9b6fa, []int{6, 0} -} -func (m *MsgUpdateNamespace_MsgSetWasmHook) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgUpdateNamespace_MsgSetWasmHook) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgUpdateNamespace_MsgSetWasmHook.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *MsgUpdateNamespace_MsgSetWasmHook) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgUpdateNamespace_MsgSetWasmHook.Merge(m, src) -} -func (m *MsgUpdateNamespace_MsgSetWasmHook) XXX_Size() int { - return m.Size() -} -func (m *MsgUpdateNamespace_MsgSetWasmHook) XXX_DiscardUnknown() { - xxx_messageInfo_MsgUpdateNamespace_MsgSetWasmHook.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgUpdateNamespace_MsgSetWasmHook proto.InternalMessageInfo - -func (m *MsgUpdateNamespace_MsgSetWasmHook) GetNewValue() string { - if m != nil { - return m.NewValue - } - return "" -} - -type MsgUpdateNamespace_MsgSetMintsPaused struct { - NewValue bool `protobuf:"varint,1,opt,name=new_value,json=newValue,proto3" json:"new_value,omitempty"` -} - -func (m *MsgUpdateNamespace_MsgSetMintsPaused) Reset() { *m = MsgUpdateNamespace_MsgSetMintsPaused{} } -func (m *MsgUpdateNamespace_MsgSetMintsPaused) String() string { return proto.CompactTextString(m) } -func (*MsgUpdateNamespace_MsgSetMintsPaused) ProtoMessage() {} -func (*MsgUpdateNamespace_MsgSetMintsPaused) Descriptor() ([]byte, []int) { - return fileDescriptor_ab9bfdcab1d9b6fa, []int{6, 1} -} -func (m *MsgUpdateNamespace_MsgSetMintsPaused) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgUpdateNamespace_MsgSetMintsPaused) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgUpdateNamespace_MsgSetMintsPaused.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *MsgUpdateNamespace_MsgSetMintsPaused) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgUpdateNamespace_MsgSetMintsPaused.Merge(m, src) -} -func (m *MsgUpdateNamespace_MsgSetMintsPaused) XXX_Size() int { - return m.Size() -} -func (m *MsgUpdateNamespace_MsgSetMintsPaused) XXX_DiscardUnknown() { - xxx_messageInfo_MsgUpdateNamespace_MsgSetMintsPaused.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgUpdateNamespace_MsgSetMintsPaused proto.InternalMessageInfo - -func (m *MsgUpdateNamespace_MsgSetMintsPaused) GetNewValue() bool { - if m != nil { - return m.NewValue - } - return false -} - -type MsgUpdateNamespace_MsgSetSendsPaused struct { - NewValue bool `protobuf:"varint,1,opt,name=new_value,json=newValue,proto3" json:"new_value,omitempty"` -} - -func (m *MsgUpdateNamespace_MsgSetSendsPaused) Reset() { *m = MsgUpdateNamespace_MsgSetSendsPaused{} } -func (m *MsgUpdateNamespace_MsgSetSendsPaused) String() string { return proto.CompactTextString(m) } -func (*MsgUpdateNamespace_MsgSetSendsPaused) ProtoMessage() {} -func (*MsgUpdateNamespace_MsgSetSendsPaused) Descriptor() ([]byte, []int) { - return fileDescriptor_ab9bfdcab1d9b6fa, []int{6, 2} -} -func (m *MsgUpdateNamespace_MsgSetSendsPaused) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgUpdateNamespace_MsgSetSendsPaused) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgUpdateNamespace_MsgSetSendsPaused.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *MsgUpdateNamespace_MsgSetSendsPaused) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgUpdateNamespace_MsgSetSendsPaused.Merge(m, src) -} -func (m *MsgUpdateNamespace_MsgSetSendsPaused) XXX_Size() int { - return m.Size() -} -func (m *MsgUpdateNamespace_MsgSetSendsPaused) XXX_DiscardUnknown() { - xxx_messageInfo_MsgUpdateNamespace_MsgSetSendsPaused.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgUpdateNamespace_MsgSetSendsPaused proto.InternalMessageInfo - -func (m *MsgUpdateNamespace_MsgSetSendsPaused) GetNewValue() bool { +func (m *MsgUpdateNamespace) GetPolicyManagerCapabilities() []*PolicyManagerCapability { if m != nil { - return m.NewValue + return m.PolicyManagerCapabilities } - return false + return nil } -type MsgUpdateNamespace_MsgSetBurnsPaused struct { - NewValue bool `protobuf:"varint,1,opt,name=new_value,json=newValue,proto3" json:"new_value,omitempty"` +type MsgUpdateNamespace_SetContractHook struct { + NewValue string `protobuf:"bytes,1,opt,name=new_value,json=newValue,proto3" json:"new_value,omitempty"` } -func (m *MsgUpdateNamespace_MsgSetBurnsPaused) Reset() { *m = MsgUpdateNamespace_MsgSetBurnsPaused{} } -func (m *MsgUpdateNamespace_MsgSetBurnsPaused) String() string { return proto.CompactTextString(m) } -func (*MsgUpdateNamespace_MsgSetBurnsPaused) ProtoMessage() {} -func (*MsgUpdateNamespace_MsgSetBurnsPaused) Descriptor() ([]byte, []int) { - return fileDescriptor_ab9bfdcab1d9b6fa, []int{6, 3} +func (m *MsgUpdateNamespace_SetContractHook) Reset() { *m = MsgUpdateNamespace_SetContractHook{} } +func (m *MsgUpdateNamespace_SetContractHook) String() string { return proto.CompactTextString(m) } +func (*MsgUpdateNamespace_SetContractHook) ProtoMessage() {} +func (*MsgUpdateNamespace_SetContractHook) Descriptor() ([]byte, []int) { + return fileDescriptor_ab9bfdcab1d9b6fa, []int{4, 0} } -func (m *MsgUpdateNamespace_MsgSetBurnsPaused) XXX_Unmarshal(b []byte) error { +func (m *MsgUpdateNamespace_SetContractHook) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *MsgUpdateNamespace_MsgSetBurnsPaused) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *MsgUpdateNamespace_SetContractHook) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_MsgUpdateNamespace_MsgSetBurnsPaused.Marshal(b, m, deterministic) + return xxx_messageInfo_MsgUpdateNamespace_SetContractHook.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -542,23 +330,23 @@ func (m *MsgUpdateNamespace_MsgSetBurnsPaused) XXX_Marshal(b []byte, determinist return b[:n], nil } } -func (m *MsgUpdateNamespace_MsgSetBurnsPaused) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgUpdateNamespace_MsgSetBurnsPaused.Merge(m, src) +func (m *MsgUpdateNamespace_SetContractHook) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgUpdateNamespace_SetContractHook.Merge(m, src) } -func (m *MsgUpdateNamespace_MsgSetBurnsPaused) XXX_Size() int { +func (m *MsgUpdateNamespace_SetContractHook) XXX_Size() int { return m.Size() } -func (m *MsgUpdateNamespace_MsgSetBurnsPaused) XXX_DiscardUnknown() { - xxx_messageInfo_MsgUpdateNamespace_MsgSetBurnsPaused.DiscardUnknown(m) +func (m *MsgUpdateNamespace_SetContractHook) XXX_DiscardUnknown() { + xxx_messageInfo_MsgUpdateNamespace_SetContractHook.DiscardUnknown(m) } -var xxx_messageInfo_MsgUpdateNamespace_MsgSetBurnsPaused proto.InternalMessageInfo +var xxx_messageInfo_MsgUpdateNamespace_SetContractHook proto.InternalMessageInfo -func (m *MsgUpdateNamespace_MsgSetBurnsPaused) GetNewValue() bool { +func (m *MsgUpdateNamespace_SetContractHook) GetNewValue() string { if m != nil { return m.NewValue } - return false + return "" } type MsgUpdateNamespaceResponse struct { @@ -568,7 +356,7 @@ func (m *MsgUpdateNamespaceResponse) Reset() { *m = MsgUpdateNamespaceRe func (m *MsgUpdateNamespaceResponse) String() string { return proto.CompactTextString(m) } func (*MsgUpdateNamespaceResponse) ProtoMessage() {} func (*MsgUpdateNamespaceResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_ab9bfdcab1d9b6fa, []int{7} + return fileDescriptor_ab9bfdcab1d9b6fa, []int{5} } func (m *MsgUpdateNamespaceResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -597,25 +385,25 @@ func (m *MsgUpdateNamespaceResponse) XXX_DiscardUnknown() { var xxx_messageInfo_MsgUpdateNamespaceResponse proto.InternalMessageInfo -type MsgUpdateNamespaceRoles struct { - Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` - NamespaceDenom string `protobuf:"bytes,2,opt,name=namespace_denom,json=namespaceDenom,proto3" json:"namespace_denom,omitempty"` - RolePermissions []*Role `protobuf:"bytes,3,rep,name=role_permissions,json=rolePermissions,proto3" json:"role_permissions,omitempty"` - AddressRoles []*AddressRoles `protobuf:"bytes,4,rep,name=address_roles,json=addressRoles,proto3" json:"address_roles,omitempty"` +type MsgUpdateActorRoles struct { + Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` + Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` + RoleActorsToAdd []*RoleActors `protobuf:"bytes,3,rep,name=role_actors_to_add,json=roleActorsToAdd,proto3" json:"role_actors_to_add,omitempty"` + RoleActorsToRevoke []*RoleActors `protobuf:"bytes,5,rep,name=role_actors_to_revoke,json=roleActorsToRevoke,proto3" json:"role_actors_to_revoke,omitempty"` } -func (m *MsgUpdateNamespaceRoles) Reset() { *m = MsgUpdateNamespaceRoles{} } -func (m *MsgUpdateNamespaceRoles) String() string { return proto.CompactTextString(m) } -func (*MsgUpdateNamespaceRoles) ProtoMessage() {} -func (*MsgUpdateNamespaceRoles) Descriptor() ([]byte, []int) { - return fileDescriptor_ab9bfdcab1d9b6fa, []int{8} +func (m *MsgUpdateActorRoles) Reset() { *m = MsgUpdateActorRoles{} } +func (m *MsgUpdateActorRoles) String() string { return proto.CompactTextString(m) } +func (*MsgUpdateActorRoles) ProtoMessage() {} +func (*MsgUpdateActorRoles) Descriptor() ([]byte, []int) { + return fileDescriptor_ab9bfdcab1d9b6fa, []int{6} } -func (m *MsgUpdateNamespaceRoles) XXX_Unmarshal(b []byte) error { +func (m *MsgUpdateActorRoles) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *MsgUpdateNamespaceRoles) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *MsgUpdateActorRoles) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_MsgUpdateNamespaceRoles.Marshal(b, m, deterministic) + return xxx_messageInfo_MsgUpdateActorRoles.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -625,157 +413,61 @@ func (m *MsgUpdateNamespaceRoles) XXX_Marshal(b []byte, deterministic bool) ([]b return b[:n], nil } } -func (m *MsgUpdateNamespaceRoles) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgUpdateNamespaceRoles.Merge(m, src) +func (m *MsgUpdateActorRoles) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgUpdateActorRoles.Merge(m, src) } -func (m *MsgUpdateNamespaceRoles) XXX_Size() int { +func (m *MsgUpdateActorRoles) XXX_Size() int { return m.Size() } -func (m *MsgUpdateNamespaceRoles) XXX_DiscardUnknown() { - xxx_messageInfo_MsgUpdateNamespaceRoles.DiscardUnknown(m) +func (m *MsgUpdateActorRoles) XXX_DiscardUnknown() { + xxx_messageInfo_MsgUpdateActorRoles.DiscardUnknown(m) } -var xxx_messageInfo_MsgUpdateNamespaceRoles proto.InternalMessageInfo +var xxx_messageInfo_MsgUpdateActorRoles proto.InternalMessageInfo -func (m *MsgUpdateNamespaceRoles) GetSender() string { +func (m *MsgUpdateActorRoles) GetSender() string { if m != nil { return m.Sender } return "" } -func (m *MsgUpdateNamespaceRoles) GetNamespaceDenom() string { +func (m *MsgUpdateActorRoles) GetDenom() string { if m != nil { - return m.NamespaceDenom + return m.Denom } return "" } -func (m *MsgUpdateNamespaceRoles) GetRolePermissions() []*Role { - if m != nil { - return m.RolePermissions - } - return nil -} - -func (m *MsgUpdateNamespaceRoles) GetAddressRoles() []*AddressRoles { +func (m *MsgUpdateActorRoles) GetRoleActorsToAdd() []*RoleActors { if m != nil { - return m.AddressRoles + return m.RoleActorsToAdd } return nil } -type MsgUpdateNamespaceRolesResponse struct { -} - -func (m *MsgUpdateNamespaceRolesResponse) Reset() { *m = MsgUpdateNamespaceRolesResponse{} } -func (m *MsgUpdateNamespaceRolesResponse) String() string { return proto.CompactTextString(m) } -func (*MsgUpdateNamespaceRolesResponse) ProtoMessage() {} -func (*MsgUpdateNamespaceRolesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_ab9bfdcab1d9b6fa, []int{9} -} -func (m *MsgUpdateNamespaceRolesResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgUpdateNamespaceRolesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgUpdateNamespaceRolesResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *MsgUpdateNamespaceRolesResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgUpdateNamespaceRolesResponse.Merge(m, src) -} -func (m *MsgUpdateNamespaceRolesResponse) XXX_Size() int { - return m.Size() -} -func (m *MsgUpdateNamespaceRolesResponse) XXX_DiscardUnknown() { - xxx_messageInfo_MsgUpdateNamespaceRolesResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgUpdateNamespaceRolesResponse proto.InternalMessageInfo - -type MsgRevokeNamespaceRoles struct { - Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` - NamespaceDenom string `protobuf:"bytes,2,opt,name=namespace_denom,json=namespaceDenom,proto3" json:"namespace_denom,omitempty"` - AddressRolesToRevoke []*AddressRoles `protobuf:"bytes,3,rep,name=address_roles_to_revoke,json=addressRolesToRevoke,proto3" json:"address_roles_to_revoke,omitempty"` -} - -func (m *MsgRevokeNamespaceRoles) Reset() { *m = MsgRevokeNamespaceRoles{} } -func (m *MsgRevokeNamespaceRoles) String() string { return proto.CompactTextString(m) } -func (*MsgRevokeNamespaceRoles) ProtoMessage() {} -func (*MsgRevokeNamespaceRoles) Descriptor() ([]byte, []int) { - return fileDescriptor_ab9bfdcab1d9b6fa, []int{10} -} -func (m *MsgRevokeNamespaceRoles) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgRevokeNamespaceRoles) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgRevokeNamespaceRoles.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *MsgRevokeNamespaceRoles) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgRevokeNamespaceRoles.Merge(m, src) -} -func (m *MsgRevokeNamespaceRoles) XXX_Size() int { - return m.Size() -} -func (m *MsgRevokeNamespaceRoles) XXX_DiscardUnknown() { - xxx_messageInfo_MsgRevokeNamespaceRoles.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgRevokeNamespaceRoles proto.InternalMessageInfo - -func (m *MsgRevokeNamespaceRoles) GetSender() string { - if m != nil { - return m.Sender - } - return "" -} - -func (m *MsgRevokeNamespaceRoles) GetNamespaceDenom() string { - if m != nil { - return m.NamespaceDenom - } - return "" -} - -func (m *MsgRevokeNamespaceRoles) GetAddressRolesToRevoke() []*AddressRoles { +func (m *MsgUpdateActorRoles) GetRoleActorsToRevoke() []*RoleActors { if m != nil { - return m.AddressRolesToRevoke + return m.RoleActorsToRevoke } return nil } -type MsgRevokeNamespaceRolesResponse struct { +type MsgUpdateActorRolesResponse struct { } -func (m *MsgRevokeNamespaceRolesResponse) Reset() { *m = MsgRevokeNamespaceRolesResponse{} } -func (m *MsgRevokeNamespaceRolesResponse) String() string { return proto.CompactTextString(m) } -func (*MsgRevokeNamespaceRolesResponse) ProtoMessage() {} -func (*MsgRevokeNamespaceRolesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_ab9bfdcab1d9b6fa, []int{11} +func (m *MsgUpdateActorRolesResponse) Reset() { *m = MsgUpdateActorRolesResponse{} } +func (m *MsgUpdateActorRolesResponse) String() string { return proto.CompactTextString(m) } +func (*MsgUpdateActorRolesResponse) ProtoMessage() {} +func (*MsgUpdateActorRolesResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_ab9bfdcab1d9b6fa, []int{7} } -func (m *MsgRevokeNamespaceRolesResponse) XXX_Unmarshal(b []byte) error { +func (m *MsgUpdateActorRolesResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *MsgRevokeNamespaceRolesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *MsgUpdateActorRolesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_MsgRevokeNamespaceRolesResponse.Marshal(b, m, deterministic) + return xxx_messageInfo_MsgUpdateActorRolesResponse.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -785,17 +477,17 @@ func (m *MsgRevokeNamespaceRolesResponse) XXX_Marshal(b []byte, deterministic bo return b[:n], nil } } -func (m *MsgRevokeNamespaceRolesResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgRevokeNamespaceRolesResponse.Merge(m, src) +func (m *MsgUpdateActorRolesResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgUpdateActorRolesResponse.Merge(m, src) } -func (m *MsgRevokeNamespaceRolesResponse) XXX_Size() int { +func (m *MsgUpdateActorRolesResponse) XXX_Size() int { return m.Size() } -func (m *MsgRevokeNamespaceRolesResponse) XXX_DiscardUnknown() { - xxx_messageInfo_MsgRevokeNamespaceRolesResponse.DiscardUnknown(m) +func (m *MsgUpdateActorRolesResponse) XXX_DiscardUnknown() { + xxx_messageInfo_MsgUpdateActorRolesResponse.DiscardUnknown(m) } -var xxx_messageInfo_MsgRevokeNamespaceRolesResponse proto.InternalMessageInfo +var xxx_messageInfo_MsgUpdateActorRolesResponse proto.InternalMessageInfo type MsgClaimVoucher struct { Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` @@ -806,7 +498,7 @@ func (m *MsgClaimVoucher) Reset() { *m = MsgClaimVoucher{} } func (m *MsgClaimVoucher) String() string { return proto.CompactTextString(m) } func (*MsgClaimVoucher) ProtoMessage() {} func (*MsgClaimVoucher) Descriptor() ([]byte, []int) { - return fileDescriptor_ab9bfdcab1d9b6fa, []int{12} + return fileDescriptor_ab9bfdcab1d9b6fa, []int{8} } func (m *MsgClaimVoucher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -856,7 +548,7 @@ func (m *MsgClaimVoucherResponse) Reset() { *m = MsgClaimVoucherResponse func (m *MsgClaimVoucherResponse) String() string { return proto.CompactTextString(m) } func (*MsgClaimVoucherResponse) ProtoMessage() {} func (*MsgClaimVoucherResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_ab9bfdcab1d9b6fa, []int{13} + return fileDescriptor_ab9bfdcab1d9b6fa, []int{9} } func (m *MsgClaimVoucherResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -890,18 +582,11 @@ func init() { proto.RegisterType((*MsgUpdateParamsResponse)(nil), "injective.permissions.v1beta1.MsgUpdateParamsResponse") proto.RegisterType((*MsgCreateNamespace)(nil), "injective.permissions.v1beta1.MsgCreateNamespace") proto.RegisterType((*MsgCreateNamespaceResponse)(nil), "injective.permissions.v1beta1.MsgCreateNamespaceResponse") - proto.RegisterType((*MsgDeleteNamespace)(nil), "injective.permissions.v1beta1.MsgDeleteNamespace") - proto.RegisterType((*MsgDeleteNamespaceResponse)(nil), "injective.permissions.v1beta1.MsgDeleteNamespaceResponse") proto.RegisterType((*MsgUpdateNamespace)(nil), "injective.permissions.v1beta1.MsgUpdateNamespace") - proto.RegisterType((*MsgUpdateNamespace_MsgSetWasmHook)(nil), "injective.permissions.v1beta1.MsgUpdateNamespace.MsgSetWasmHook") - proto.RegisterType((*MsgUpdateNamespace_MsgSetMintsPaused)(nil), "injective.permissions.v1beta1.MsgUpdateNamespace.MsgSetMintsPaused") - proto.RegisterType((*MsgUpdateNamespace_MsgSetSendsPaused)(nil), "injective.permissions.v1beta1.MsgUpdateNamespace.MsgSetSendsPaused") - proto.RegisterType((*MsgUpdateNamespace_MsgSetBurnsPaused)(nil), "injective.permissions.v1beta1.MsgUpdateNamespace.MsgSetBurnsPaused") + proto.RegisterType((*MsgUpdateNamespace_SetContractHook)(nil), "injective.permissions.v1beta1.MsgUpdateNamespace.SetContractHook") proto.RegisterType((*MsgUpdateNamespaceResponse)(nil), "injective.permissions.v1beta1.MsgUpdateNamespaceResponse") - proto.RegisterType((*MsgUpdateNamespaceRoles)(nil), "injective.permissions.v1beta1.MsgUpdateNamespaceRoles") - proto.RegisterType((*MsgUpdateNamespaceRolesResponse)(nil), "injective.permissions.v1beta1.MsgUpdateNamespaceRolesResponse") - proto.RegisterType((*MsgRevokeNamespaceRoles)(nil), "injective.permissions.v1beta1.MsgRevokeNamespaceRoles") - proto.RegisterType((*MsgRevokeNamespaceRolesResponse)(nil), "injective.permissions.v1beta1.MsgRevokeNamespaceRolesResponse") + proto.RegisterType((*MsgUpdateActorRoles)(nil), "injective.permissions.v1beta1.MsgUpdateActorRoles") + proto.RegisterType((*MsgUpdateActorRolesResponse)(nil), "injective.permissions.v1beta1.MsgUpdateActorRolesResponse") proto.RegisterType((*MsgClaimVoucher)(nil), "injective.permissions.v1beta1.MsgClaimVoucher") proto.RegisterType((*MsgClaimVoucherResponse)(nil), "injective.permissions.v1beta1.MsgClaimVoucherResponse") } @@ -911,68 +596,63 @@ func init() { } var fileDescriptor_ab9bfdcab1d9b6fa = []byte{ - // 961 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x57, 0x4d, 0x6f, 0xe3, 0x44, - 0x18, 0xae, 0xb7, 0x1f, 0x34, 0xd3, 0xee, 0x96, 0x5a, 0x91, 0x9a, 0xf5, 0x82, 0x5b, 0xb2, 0x02, - 0x42, 0x56, 0xb5, 0x49, 0x57, 0xaa, 0x44, 0x0e, 0x08, 0x92, 0x3d, 0x80, 0xb4, 0x59, 0x05, 0x17, - 0x16, 0x09, 0x09, 0x59, 0xe3, 0x64, 0x70, 0x4c, 0x62, 0x8f, 0xe5, 0x71, 0x12, 0x7a, 0x5a, 0xc4, - 0x81, 0x03, 0x07, 0xc4, 0x91, 0x2b, 0xff, 0xa0, 0x07, 0xae, 0x70, 0xe2, 0xb0, 0xc7, 0x15, 0x27, - 0x4e, 0x2b, 0xd4, 0x1e, 0x7a, 0x47, 0xfc, 0x00, 0x34, 0x9e, 0x89, 0xed, 0x4c, 0xd2, 0xd8, 0xe9, - 0x6a, 0xb9, 0xb4, 0x79, 0xbf, 0x9f, 0xe7, 0xb1, 0xde, 0x19, 0x1b, 0xbc, 0xe5, 0x78, 0x5f, 0xa3, - 0x4e, 0xe8, 0x8c, 0x90, 0xee, 0xa3, 0xc0, 0x75, 0x08, 0x71, 0xb0, 0x47, 0xf4, 0x51, 0xcd, 0x42, - 0x21, 0xac, 0xe9, 0xe1, 0x37, 0x9a, 0x1f, 0xe0, 0x10, 0xcb, 0xaf, 0xc7, 0x79, 0x5a, 0x2a, 0x4f, - 0xe3, 0x79, 0x4a, 0xd1, 0xc6, 0x36, 0x8e, 0x32, 0x75, 0xfa, 0x8b, 0x15, 0x29, 0x6a, 0x07, 0x13, - 0x17, 0x13, 0xdd, 0x82, 0x04, 0xc5, 0x2d, 0x3b, 0xd8, 0xf1, 0x66, 0xe2, 0x5e, 0x3f, 0x8e, 0x53, - 0x83, 0xc7, 0xf7, 0x78, 0xdc, 0x25, 0xb6, 0x3e, 0xaa, 0xd1, 0x7f, 0x3c, 0x70, 0x9b, 0x05, 0x4c, - 0x36, 0x91, 0x19, 0x3c, 0x54, 0x5d, 0x4c, 0xc8, 0x87, 0x01, 0x74, 0x27, 0xb9, 0x7a, 0x46, 0x6e, - 0x8a, 0x28, 0x2b, 0xd8, 0x85, 0xae, 0xe3, 0x61, 0x3d, 0xfa, 0xcb, 0x5c, 0xe5, 0xdf, 0x25, 0xb0, - 0xd3, 0x22, 0xf6, 0x67, 0x7e, 0x17, 0x86, 0xa8, 0x1d, 0x75, 0x97, 0x8f, 0x41, 0x01, 0x0e, 0xc3, - 0x1e, 0x0e, 0x9c, 0xf0, 0xb4, 0x24, 0x1d, 0x48, 0x95, 0x42, 0xa3, 0xf4, 0xe7, 0xaf, 0x87, 0x45, - 0x0e, 0xf4, 0xc3, 0x6e, 0x37, 0x40, 0x84, 0x9c, 0x84, 0x81, 0xe3, 0xd9, 0x46, 0x92, 0x2a, 0x37, - 0xc1, 0x06, 0xc3, 0x57, 0xba, 0x71, 0x20, 0x55, 0xb6, 0x8e, 0xde, 0xd4, 0x16, 0xaa, 0xae, 0xb1, - 0x71, 0x8d, 0xb5, 0xa7, 0xcf, 0xf7, 0x57, 0x0c, 0x5e, 0x5a, 0xd7, 0xbe, 0xbb, 0x3c, 0xab, 0x26, - 0x4d, 0x7f, 0xb8, 0x3c, 0xab, 0xde, 0x49, 0xb3, 0x13, 0xc0, 0x96, 0x6f, 0x83, 0x3d, 0xc1, 0x65, - 0x20, 0xe2, 0x63, 0x8f, 0xa0, 0xf2, 0x6f, 0x12, 0x90, 0x5b, 0xc4, 0x6e, 0x06, 0x08, 0x86, 0xe8, - 0x11, 0x74, 0x11, 0xf1, 0x61, 0x07, 0xc9, 0xef, 0x80, 0x0d, 0x82, 0xbc, 0x2e, 0x0a, 0x38, 0xb7, - 0xdd, 0x7f, 0x9e, 0xef, 0xdf, 0x3c, 0x85, 0xee, 0xa0, 0x5e, 0x66, 0xfe, 0xb2, 0xc1, 0x13, 0xe4, - 0x87, 0xa0, 0xe0, 0x4d, 0xea, 0x38, 0xa9, 0x4a, 0x06, 0xa9, 0x78, 0x0e, 0xe7, 0x95, 0x34, 0x60, - 0xd4, 0x78, 0x6b, 0xca, 0x4b, 0x15, 0x78, 0x09, 0x40, 0xcb, 0xaf, 0x01, 0x65, 0xd6, 0x1b, 0xb3, - 0xfb, 0x99, 0xb1, 0x7b, 0x80, 0x06, 0xe8, 0x9a, 0xec, 0xde, 0x06, 0x3b, 0x31, 0x38, 0xb3, 0x8b, - 0x3c, 0xec, 0x46, 0x1c, 0x0b, 0xc6, 0xad, 0xd8, 0xfd, 0x80, 0x7a, 0x33, 0x81, 0x0b, 0x18, 0x38, - 0x70, 0xc1, 0x1b, 0x03, 0xff, 0x77, 0x3d, 0x02, 0xce, 0x1e, 0xd9, 0x4b, 0x05, 0x2e, 0x7f, 0x09, - 0x0a, 0x63, 0x48, 0x5c, 0xb3, 0x87, 0x71, 0xbf, 0xb4, 0x1a, 0x3d, 0xbf, 0x0f, 0x32, 0x9e, 0xdf, - 0x2c, 0x32, 0xea, 0x3a, 0x41, 0xe1, 0xe7, 0x90, 0xb8, 0x1f, 0x61, 0xdc, 0x37, 0x36, 0xc7, 0xfc, - 0x97, 0xfc, 0x15, 0xd8, 0x76, 0x1d, 0x2f, 0x24, 0xa6, 0x0f, 0x87, 0x04, 0x75, 0x4b, 0x6b, 0xd1, - 0x84, 0xe6, 0x75, 0x27, 0xb4, 0x68, 0xaf, 0x76, 0xd4, 0xca, 0xd8, 0x72, 0x13, 0x83, 0xce, 0xa1, - 0xcc, 0xe3, 0x39, 0xeb, 0x2f, 0x36, 0xe7, 0x84, 0xf6, 0x9a, 0xcc, 0x21, 0x89, 0x41, 0xe7, 0x58, - 0xc3, 0xc0, 0x8b, 0xe7, 0x6c, 0xbc, 0xd8, 0x9c, 0x06, 0xed, 0x35, 0x99, 0x63, 0x25, 0x86, 0x72, - 0x08, 0x6e, 0x4d, 0x6b, 0x2a, 0xdf, 0x01, 0x05, 0x0f, 0x8d, 0xcd, 0x11, 0x1c, 0x0c, 0x11, 0x7b, - 0xfe, 0xc6, 0xa6, 0x87, 0xc6, 0x8f, 0xa9, 0xad, 0xbc, 0x0b, 0x76, 0x67, 0x04, 0x9a, 0xad, 0xd8, - 0x9c, 0x57, 0x91, 0xa2, 0x9a, 0xb3, 0x22, 0x05, 0x7a, 0x61, 0x45, 0xe6, 0x52, 0x08, 0x9a, 0xf0, - 0xa5, 0x10, 0xbc, 0xf1, 0x52, 0xfc, 0x71, 0x23, 0x75, 0x8e, 0x25, 0x61, 0x3c, 0x40, 0xe4, 0xa5, - 0x6c, 0xc6, 0x23, 0xf0, 0x6a, 0x80, 0x07, 0xc8, 0x4c, 0x81, 0x2e, 0xad, 0x1e, 0xac, 0x56, 0xb6, - 0x8e, 0xee, 0x66, 0x3c, 0x6e, 0x8a, 0xc9, 0xd8, 0xa1, 0xc5, 0xed, 0x24, 0x2a, 0xb7, 0xc1, 0x4d, - 0xc8, 0xee, 0x05, 0x93, 0x86, 0x48, 0x69, 0x2d, 0x6a, 0x76, 0x2f, 0xa3, 0x19, 0xbf, 0x4b, 0x22, - 0x9e, 0xc6, 0x36, 0x4c, 0x59, 0xf5, 0xfb, 0x82, 0xbe, 0x77, 0x17, 0xeb, 0x1b, 0x15, 0x95, 0xdf, - 0x00, 0xfb, 0x57, 0x84, 0x62, 0xa5, 0xbf, 0x67, 0x4a, 0x1b, 0x68, 0x84, 0xfb, 0xff, 0x87, 0xd2, - 0x16, 0xd8, 0x9b, 0x52, 0xc6, 0x0c, 0xb1, 0x19, 0x44, 0xc3, 0xb9, 0xe0, 0x4b, 0x69, 0x54, 0x4c, - 0x6b, 0xf4, 0x29, 0x66, 0x2c, 0x32, 0xb5, 0x9a, 0x47, 0x96, 0x6b, 0x35, 0x2f, 0x14, 0x6b, 0xf5, - 0x24, 0x7a, 0x39, 0x68, 0x0e, 0xa0, 0xe3, 0x3e, 0xc6, 0xc3, 0x4e, 0x0f, 0x05, 0xcb, 0x48, 0x54, - 0x04, 0xeb, 0x69, 0x61, 0x98, 0x51, 0xbf, 0x27, 0x60, 0x15, 0x6f, 0xf7, 0xf4, 0x34, 0x7e, 0xbb, - 0xa7, 0x5d, 0x13, 0x6c, 0x47, 0xbf, 0xbc, 0x02, 0x56, 0x5b, 0xc4, 0x96, 0x47, 0x60, 0x7b, 0xea, - 0xed, 0x45, 0xcb, 0x7b, 0x5c, 0xb1, 0x7c, 0xe5, 0x78, 0xb9, 0xfc, 0xc9, 0x7c, 0xf9, 0x09, 0xd8, - 0x11, 0xdf, 0x2c, 0x6a, 0xd9, 0xad, 0x84, 0x12, 0xe5, 0xbd, 0xa5, 0x4b, 0xd2, 0x00, 0xc4, 0xcb, - 0x3f, 0x07, 0x00, 0xa1, 0x24, 0x0f, 0x80, 0x2b, 0x2e, 0x72, 0x0a, 0x40, 0xbc, 0xc4, 0x6b, 0x4b, - 0xdf, 0x15, 0x79, 0x00, 0x5c, 0x71, 0x68, 0xca, 0x3f, 0x4a, 0xa0, 0x38, 0xf7, 0xc4, 0x3c, 0x5e, - 0xbe, 0x27, 0xad, 0x53, 0xde, 0xbf, 0x5e, 0xdd, 0x14, 0xa0, 0xb9, 0x07, 0x4b, 0x0e, 0x40, 0xf3, - 0xea, 0xf2, 0x00, 0x5a, 0xb4, 0xc0, 0x74, 0x39, 0xa6, 0xb6, 0x37, 0xc7, 0x72, 0xa4, 0xf3, 0xf3, - 0x2c, 0xc7, 0xbc, 0xe5, 0x54, 0xd6, 0xbf, 0xbd, 0x3c, 0xab, 0x4a, 0x8d, 0xfe, 0xd3, 0x73, 0x55, - 0x7a, 0x76, 0xae, 0x4a, 0x7f, 0x9f, 0xab, 0xd2, 0x4f, 0x17, 0xea, 0xca, 0xb3, 0x0b, 0x75, 0xe5, - 0xaf, 0x0b, 0x75, 0xe5, 0x8b, 0x4f, 0x6c, 0x27, 0xec, 0x0d, 0x2d, 0xad, 0x83, 0x5d, 0xfd, 0xe3, - 0xc9, 0x88, 0x87, 0xd0, 0x22, 0xc9, 0x47, 0xcd, 0x61, 0x07, 0x07, 0x28, 0x6d, 0xf6, 0xa0, 0xe3, - 0xe9, 0x2e, 0xee, 0x0e, 0x07, 0x88, 0x4c, 0x7d, 0xf1, 0x84, 0xa7, 0x3e, 0x22, 0xd6, 0x46, 0xf4, - 0x45, 0x73, 0xff, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x72, 0x97, 0x38, 0xd1, 0x14, 0x0e, 0x00, - 0x00, + // 889 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x56, 0xcf, 0x6f, 0x1b, 0x45, + 0x14, 0xce, 0x36, 0x75, 0xc0, 0xd3, 0x04, 0xb7, 0x43, 0x50, 0x37, 0x0e, 0x75, 0x22, 0x23, 0x50, + 0xea, 0xaa, 0xbb, 0x72, 0x90, 0x22, 0xe1, 0x5b, 0xe2, 0x0b, 0x48, 0x4d, 0x29, 0x9b, 0x92, 0x03, + 0x42, 0xb2, 0xc6, 0xbb, 0x8f, 0xf5, 0x60, 0xef, 0xce, 0x6a, 0x66, 0xec, 0xe2, 0x53, 0x51, 0xb9, + 0x21, 0x0e, 0xfc, 0x29, 0x39, 0x70, 0x85, 0x73, 0x8f, 0x15, 0x27, 0x4e, 0x15, 0x4a, 0x0e, 0xb9, + 0xf3, 0x17, 0x20, 0xcf, 0x8c, 0xbd, 0x9b, 0x8d, 0xa9, 0xd7, 0xf4, 0x92, 0xf8, 0xfd, 0xfa, 0xde, + 0xf7, 0xbd, 0x79, 0x3b, 0xbb, 0xe8, 0x13, 0x1a, 0x7f, 0x0f, 0xbe, 0xa4, 0x23, 0x70, 0x13, 0xe0, + 0x11, 0x15, 0x82, 0xb2, 0x58, 0xb8, 0xa3, 0x66, 0x17, 0x24, 0x69, 0xba, 0xf2, 0x07, 0x27, 0xe1, + 0x4c, 0x32, 0x7c, 0x6f, 0x96, 0xe7, 0x64, 0xf2, 0x1c, 0x93, 0x57, 0xdd, 0x0c, 0x59, 0xc8, 0x54, + 0xa6, 0x3b, 0xf9, 0xa5, 0x8b, 0xaa, 0x35, 0x9f, 0x89, 0x88, 0x09, 0xb7, 0x4b, 0x04, 0xcc, 0x20, + 0x7d, 0x46, 0xe3, 0x6b, 0xf1, 0xb8, 0x3f, 0x8b, 0x4f, 0x0c, 0x13, 0xbf, 0x6b, 0xe2, 0x91, 0x08, + 0xdd, 0x51, 0x73, 0xf2, 0xcf, 0x04, 0xb6, 0x74, 0xa0, 0xa3, 0x3b, 0x6a, 0xc3, 0x84, 0x1a, 0x6f, + 0x16, 0x94, 0x10, 0x4e, 0xa2, 0x69, 0xae, 0xbb, 0x20, 0x37, 0x23, 0x54, 0x17, 0xdc, 0x21, 0x11, + 0x8d, 0x99, 0xab, 0xfe, 0x6a, 0x57, 0xfd, 0x0f, 0x0b, 0x55, 0x8e, 0x45, 0xf8, 0x75, 0x12, 0x10, + 0x09, 0x4f, 0x14, 0x3a, 0x3e, 0x40, 0x65, 0x32, 0x94, 0x3d, 0xc6, 0xa9, 0x1c, 0xdb, 0xd6, 0xae, + 0xb5, 0x57, 0x3e, 0xb2, 0xff, 0xfc, 0xed, 0xe1, 0xa6, 0x21, 0x7a, 0x18, 0x04, 0x1c, 0x84, 0x38, + 0x91, 0x9c, 0xc6, 0xa1, 0x97, 0xa6, 0xe2, 0x36, 0x5a, 0xd3, 0xfc, 0xec, 0x1b, 0xbb, 0xd6, 0xde, + 0xad, 0xfd, 0x8f, 0x9d, 0x37, 0x4e, 0xdd, 0xd1, 0xed, 0x8e, 0x6e, 0xbe, 0x7c, 0xbd, 0xb3, 0xe2, + 0x99, 0xd2, 0x96, 0xf3, 0xe2, 0xf2, 0xac, 0x91, 0x82, 0xfe, 0x7c, 0x79, 0xd6, 0xd8, 0xce, 0xaa, + 0xcb, 0x91, 0xad, 0x6f, 0xa1, 0xbb, 0x39, 0x97, 0x07, 0x22, 0x61, 0xb1, 0x80, 0xfa, 0xef, 0x16, + 0xc2, 0xc7, 0x22, 0x6c, 0x73, 0x20, 0x12, 0x1e, 0x93, 0x08, 0x44, 0x42, 0x7c, 0xc0, 0xf7, 0xd1, + 0x9a, 0x80, 0x38, 0x00, 0x6e, 0xb4, 0xdd, 0xf9, 0xe7, 0xf5, 0xce, 0xc6, 0x98, 0x44, 0x83, 0x56, + 0x5d, 0xfb, 0xeb, 0x9e, 0x49, 0xc0, 0x8f, 0x50, 0x39, 0x9e, 0xd6, 0x19, 0x51, 0x7b, 0x0b, 0x44, + 0xcd, 0xfa, 0x18, 0x5d, 0x29, 0x80, 0x96, 0x66, 0xa0, 0x27, 0xba, 0x6a, 0x39, 0x5d, 0x39, 0xa2, + 0xf5, 0x0f, 0x51, 0xf5, 0xba, 0x77, 0xa6, 0xee, 0x97, 0x92, 0x52, 0xa7, 0x95, 0xff, 0x2f, 0x75, + 0x9b, 0xa8, 0x14, 0x40, 0xcc, 0x22, 0xa5, 0xac, 0xec, 0x69, 0x03, 0x7f, 0x87, 0x36, 0x7c, 0x16, + 0x4b, 0x4e, 0x7c, 0xd9, 0xe9, 0x31, 0xd6, 0xb7, 0x57, 0x95, 0xee, 0xc3, 0x05, 0xba, 0xaf, 0x53, + 0x71, 0x4e, 0x40, 0xb6, 0x0d, 0xd2, 0xe7, 0x8c, 0xf5, 0xbd, 0x75, 0x3f, 0x63, 0xe1, 0xc7, 0xe8, + 0x36, 0x67, 0x03, 0xe8, 0x64, 0xc0, 0xec, 0x9b, 0xbb, 0xab, 0x7b, 0xb7, 0xf6, 0x3f, 0x5a, 0xd0, + 0xca, 0x63, 0x03, 0xf0, 0x2a, 0x93, 0xe2, 0x27, 0x69, 0x14, 0x7f, 0x89, 0x36, 0x14, 0x5e, 0x44, + 0x62, 0x12, 0x02, 0x17, 0x76, 0x49, 0x81, 0x35, 0x0a, 0x80, 0x1d, 0xeb, 0x12, 0x6f, 0x9d, 0xa7, + 0x86, 0xc0, 0x4f, 0x51, 0x25, 0x61, 0x03, 0xea, 0x8f, 0x3b, 0x42, 0x12, 0x39, 0x14, 0x20, 0xec, + 0x35, 0x05, 0xf9, 0x60, 0xd1, 0x5e, 0xab, 0xaa, 0x13, 0x55, 0xe4, 0xbd, 0x97, 0x64, 0x2c, 0x10, + 0x78, 0x84, 0xb6, 0x0d, 0xaa, 0x21, 0xda, 0xf1, 0x49, 0x42, 0xba, 0x74, 0x40, 0x25, 0x05, 0x61, + 0xbf, 0xa3, 0x3a, 0x1c, 0x14, 0xea, 0x60, 0x98, 0xb6, 0xa7, 0xf5, 0x63, 0x6f, 0x2b, 0x99, 0x1b, + 0xa0, 0x20, 0xaa, 0x0e, 0xaa, 0xe4, 0xce, 0x03, 0x6f, 0xa3, 0x72, 0x0c, 0xcf, 0x3a, 0x23, 0x32, + 0x18, 0x82, 0xde, 0x16, 0xef, 0xdd, 0x18, 0x9e, 0x9d, 0x4e, 0xec, 0x85, 0xcb, 0x9a, 0x3b, 0x6c, + 0xb3, 0xac, 0x39, 0x6f, 0xfa, 0x28, 0xde, 0x40, 0xef, 0xcf, 0xc2, 0x87, 0xbe, 0x64, 0x7c, 0x32, + 0x77, 0xf1, 0xf6, 0xdb, 0x7a, 0x8a, 0xb0, 0x3a, 0x75, 0x32, 0xc1, 0x14, 0x1d, 0xc9, 0x3a, 0x24, + 0x08, 0xec, 0x55, 0x35, 0xc5, 0xfb, 0x05, 0x8e, 0x5e, 0x71, 0x11, 0x7a, 0x9b, 0xf4, 0xef, 0xa7, + 0xec, 0x30, 0x08, 0xf0, 0xb7, 0xe8, 0x83, 0x1c, 0x2e, 0x87, 0x11, 0xeb, 0x83, 0xd9, 0xaa, 0x25, + 0xa0, 0x71, 0x16, 0xda, 0x53, 0x20, 0x2d, 0x37, 0x37, 0xdc, 0x9d, 0xb9, 0xc3, 0x4d, 0xe7, 0x54, + 0xbf, 0x87, 0xb6, 0xe7, 0xb8, 0x67, 0xe3, 0x7d, 0xae, 0x2e, 0xf1, 0xf6, 0x80, 0xd0, 0xe8, 0x94, + 0x0d, 0xfd, 0x1e, 0xf0, 0xb7, 0x9e, 0x6c, 0xeb, 0x41, 0x8e, 0x63, 0xfe, 0x16, 0xce, 0x76, 0x33, + 0xb7, 0x70, 0xd6, 0x35, 0xe5, 0xb6, 0xff, 0x53, 0x09, 0xad, 0x1e, 0x8b, 0x10, 0x8f, 0xd0, 0xfa, + 0x95, 0xb7, 0x8c, 0x53, 0xf4, 0x42, 0xd1, 0xf9, 0xd5, 0x83, 0xe5, 0xf2, 0xa7, 0xfd, 0xf1, 0x73, + 0x54, 0xc9, 0xbf, 0x01, 0x9a, 0x8b, 0xa1, 0x72, 0x25, 0xd5, 0xcf, 0x96, 0x2e, 0xc9, 0x12, 0xc8, + 0x5f, 0xd2, 0xcd, 0xa5, 0x2f, 0xd3, 0x22, 0x04, 0xfe, 0xe3, 0xe1, 0xc3, 0x2f, 0x2c, 0x74, 0xfb, + 0xda, 0x93, 0xb7, 0x5f, 0x14, 0x2f, 0xad, 0xa9, 0xb6, 0x96, 0xaf, 0x99, 0x91, 0x18, 0xa1, 0xf5, + 0x2b, 0xfb, 0x59, 0xe0, 0xf8, 0xb3, 0xf9, 0x45, 0x8e, 0x7f, 0xde, 0xfa, 0x55, 0x4b, 0x3f, 0x5e, + 0x9e, 0x35, 0xac, 0xa3, 0xfe, 0xcb, 0xf3, 0x9a, 0xf5, 0xea, 0xbc, 0x66, 0xfd, 0x7d, 0x5e, 0xb3, + 0x7e, 0xbd, 0xa8, 0xad, 0xbc, 0xba, 0xa8, 0xad, 0xfc, 0x75, 0x51, 0x5b, 0xf9, 0xe6, 0xab, 0x90, + 0xca, 0xde, 0xb0, 0xeb, 0xf8, 0x2c, 0x72, 0xbf, 0x98, 0xb6, 0x78, 0x44, 0xba, 0x22, 0xfd, 0xbc, + 0x7a, 0xe8, 0x33, 0x0e, 0x59, 0xb3, 0x47, 0x68, 0xec, 0x46, 0x2c, 0x18, 0x0e, 0x40, 0x5c, 0xf9, + 0xf6, 0x92, 0xe3, 0x04, 0x44, 0x77, 0x4d, 0x7d, 0x5b, 0x7d, 0xfa, 0x6f, 0x00, 0x00, 0x00, 0xff, + 0xff, 0x89, 0x70, 0x57, 0xeb, 0x9e, 0x0a, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -989,10 +669,8 @@ const _ = grpc.SupportPackageIsVersion4 type MsgClient interface { UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error) CreateNamespace(ctx context.Context, in *MsgCreateNamespace, opts ...grpc.CallOption) (*MsgCreateNamespaceResponse, error) - DeleteNamespace(ctx context.Context, in *MsgDeleteNamespace, opts ...grpc.CallOption) (*MsgDeleteNamespaceResponse, error) UpdateNamespace(ctx context.Context, in *MsgUpdateNamespace, opts ...grpc.CallOption) (*MsgUpdateNamespaceResponse, error) - UpdateNamespaceRoles(ctx context.Context, in *MsgUpdateNamespaceRoles, opts ...grpc.CallOption) (*MsgUpdateNamespaceRolesResponse, error) - RevokeNamespaceRoles(ctx context.Context, in *MsgRevokeNamespaceRoles, opts ...grpc.CallOption) (*MsgRevokeNamespaceRolesResponse, error) + UpdateActorRoles(ctx context.Context, in *MsgUpdateActorRoles, opts ...grpc.CallOption) (*MsgUpdateActorRolesResponse, error) ClaimVoucher(ctx context.Context, in *MsgClaimVoucher, opts ...grpc.CallOption) (*MsgClaimVoucherResponse, error) } @@ -1022,15 +700,6 @@ func (c *msgClient) CreateNamespace(ctx context.Context, in *MsgCreateNamespace, return out, nil } -func (c *msgClient) DeleteNamespace(ctx context.Context, in *MsgDeleteNamespace, opts ...grpc.CallOption) (*MsgDeleteNamespaceResponse, error) { - out := new(MsgDeleteNamespaceResponse) - err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Msg/DeleteNamespace", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *msgClient) UpdateNamespace(ctx context.Context, in *MsgUpdateNamespace, opts ...grpc.CallOption) (*MsgUpdateNamespaceResponse, error) { out := new(MsgUpdateNamespaceResponse) err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Msg/UpdateNamespace", in, out, opts...) @@ -1040,18 +709,9 @@ func (c *msgClient) UpdateNamespace(ctx context.Context, in *MsgUpdateNamespace, return out, nil } -func (c *msgClient) UpdateNamespaceRoles(ctx context.Context, in *MsgUpdateNamespaceRoles, opts ...grpc.CallOption) (*MsgUpdateNamespaceRolesResponse, error) { - out := new(MsgUpdateNamespaceRolesResponse) - err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Msg/UpdateNamespaceRoles", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) RevokeNamespaceRoles(ctx context.Context, in *MsgRevokeNamespaceRoles, opts ...grpc.CallOption) (*MsgRevokeNamespaceRolesResponse, error) { - out := new(MsgRevokeNamespaceRolesResponse) - err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Msg/RevokeNamespaceRoles", in, out, opts...) +func (c *msgClient) UpdateActorRoles(ctx context.Context, in *MsgUpdateActorRoles, opts ...grpc.CallOption) (*MsgUpdateActorRolesResponse, error) { + out := new(MsgUpdateActorRolesResponse) + err := c.cc.Invoke(ctx, "/injective.permissions.v1beta1.Msg/UpdateActorRoles", in, out, opts...) if err != nil { return nil, err } @@ -1071,10 +731,8 @@ func (c *msgClient) ClaimVoucher(ctx context.Context, in *MsgClaimVoucher, opts type MsgServer interface { UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error) CreateNamespace(context.Context, *MsgCreateNamespace) (*MsgCreateNamespaceResponse, error) - DeleteNamespace(context.Context, *MsgDeleteNamespace) (*MsgDeleteNamespaceResponse, error) UpdateNamespace(context.Context, *MsgUpdateNamespace) (*MsgUpdateNamespaceResponse, error) - UpdateNamespaceRoles(context.Context, *MsgUpdateNamespaceRoles) (*MsgUpdateNamespaceRolesResponse, error) - RevokeNamespaceRoles(context.Context, *MsgRevokeNamespaceRoles) (*MsgRevokeNamespaceRolesResponse, error) + UpdateActorRoles(context.Context, *MsgUpdateActorRoles) (*MsgUpdateActorRolesResponse, error) ClaimVoucher(context.Context, *MsgClaimVoucher) (*MsgClaimVoucherResponse, error) } @@ -1088,17 +746,11 @@ func (*UnimplementedMsgServer) UpdateParams(ctx context.Context, req *MsgUpdateP func (*UnimplementedMsgServer) CreateNamespace(ctx context.Context, req *MsgCreateNamespace) (*MsgCreateNamespaceResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method CreateNamespace not implemented") } -func (*UnimplementedMsgServer) DeleteNamespace(ctx context.Context, req *MsgDeleteNamespace) (*MsgDeleteNamespaceResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method DeleteNamespace not implemented") -} func (*UnimplementedMsgServer) UpdateNamespace(ctx context.Context, req *MsgUpdateNamespace) (*MsgUpdateNamespaceResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method UpdateNamespace not implemented") } -func (*UnimplementedMsgServer) UpdateNamespaceRoles(ctx context.Context, req *MsgUpdateNamespaceRoles) (*MsgUpdateNamespaceRolesResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method UpdateNamespaceRoles not implemented") -} -func (*UnimplementedMsgServer) RevokeNamespaceRoles(ctx context.Context, req *MsgRevokeNamespaceRoles) (*MsgRevokeNamespaceRolesResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method RevokeNamespaceRoles not implemented") +func (*UnimplementedMsgServer) UpdateActorRoles(ctx context.Context, req *MsgUpdateActorRoles) (*MsgUpdateActorRolesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateActorRoles not implemented") } func (*UnimplementedMsgServer) ClaimVoucher(ctx context.Context, req *MsgClaimVoucher) (*MsgClaimVoucherResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ClaimVoucher not implemented") @@ -1144,24 +796,6 @@ func _Msg_CreateNamespace_Handler(srv interface{}, ctx context.Context, dec func return interceptor(ctx, in, info, handler) } -func _Msg_DeleteNamespace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MsgDeleteNamespace) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).DeleteNamespace(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.permissions.v1beta1.Msg/DeleteNamespace", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).DeleteNamespace(ctx, req.(*MsgDeleteNamespace)) - } - return interceptor(ctx, in, info, handler) -} - func _Msg_UpdateNamespace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(MsgUpdateNamespace) if err := dec(in); err != nil { @@ -1180,38 +814,20 @@ func _Msg_UpdateNamespace_Handler(srv interface{}, ctx context.Context, dec func return interceptor(ctx, in, info, handler) } -func _Msg_UpdateNamespaceRoles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MsgUpdateNamespaceRoles) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).UpdateNamespaceRoles(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective.permissions.v1beta1.Msg/UpdateNamespaceRoles", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).UpdateNamespaceRoles(ctx, req.(*MsgUpdateNamespaceRoles)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_RevokeNamespaceRoles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MsgRevokeNamespaceRoles) +func _Msg_UpdateActorRoles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MsgUpdateActorRoles) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(MsgServer).RevokeNamespaceRoles(ctx, in) + return srv.(MsgServer).UpdateActorRoles(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/injective.permissions.v1beta1.Msg/RevokeNamespaceRoles", + FullMethod: "/injective.permissions.v1beta1.Msg/UpdateActorRoles", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).RevokeNamespaceRoles(ctx, req.(*MsgRevokeNamespaceRoles)) + return srv.(MsgServer).UpdateActorRoles(ctx, req.(*MsgUpdateActorRoles)) } return interceptor(ctx, in, info, handler) } @@ -1246,21 +862,13 @@ var _Msg_serviceDesc = grpc.ServiceDesc{ MethodName: "CreateNamespace", Handler: _Msg_CreateNamespace_Handler, }, - { - MethodName: "DeleteNamespace", - Handler: _Msg_DeleteNamespace_Handler, - }, { MethodName: "UpdateNamespace", Handler: _Msg_UpdateNamespace_Handler, }, { - MethodName: "UpdateNamespaceRoles", - Handler: _Msg_UpdateNamespaceRoles_Handler, - }, - { - MethodName: "RevokeNamespaceRoles", - Handler: _Msg_RevokeNamespaceRoles_Handler, + MethodName: "UpdateActorRoles", + Handler: _Msg_UpdateActorRoles_Handler, }, { MethodName: "ClaimVoucher", @@ -1397,7 +1005,7 @@ func (m *MsgCreateNamespaceResponse) MarshalToSizedBuffer(dAtA []byte) (int, err return len(dAtA) - i, nil } -func (m *MsgDeleteNamespace) Marshal() (dAtA []byte, err error) { +func (m *MsgUpdateNamespace) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -1407,115 +1015,75 @@ func (m *MsgDeleteNamespace) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgDeleteNamespace) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgUpdateNamespace) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgDeleteNamespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgUpdateNamespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.NamespaceDenom) > 0 { - i -= len(m.NamespaceDenom) - copy(dAtA[i:], m.NamespaceDenom) - i = encodeVarintTx(dAtA, i, uint64(len(m.NamespaceDenom))) - i-- - dAtA[i] = 0x12 - } - if len(m.Sender) > 0 { - i -= len(m.Sender) - copy(dAtA[i:], m.Sender) - i = encodeVarintTx(dAtA, i, uint64(len(m.Sender))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *MsgDeleteNamespaceResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *MsgDeleteNamespaceResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgDeleteNamespaceResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - -func (m *MsgUpdateNamespace) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if len(m.PolicyManagerCapabilities) > 0 { + for iNdEx := len(m.PolicyManagerCapabilities) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.PolicyManagerCapabilities[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } } - return dAtA[:n], nil -} - -func (m *MsgUpdateNamespace) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgUpdateNamespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.BurnsPaused != nil { - { - size, err := m.BurnsPaused.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.PolicyStatuses) > 0 { + for iNdEx := len(m.PolicyStatuses) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.PolicyStatuses[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) } - i -= size - i = encodeVarintTx(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0x32 } - i-- - dAtA[i] = 0x32 } - if m.SendsPaused != nil { - { - size, err := m.SendsPaused.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.RoleManagers) > 0 { + for iNdEx := len(m.RoleManagers) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RoleManagers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) } - i -= size - i = encodeVarintTx(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0x2a } - i-- - dAtA[i] = 0x2a } - if m.MintsPaused != nil { - { - size, err := m.MintsPaused.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.RolePermissions) > 0 { + for iNdEx := len(m.RolePermissions) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RolePermissions[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) } - i -= size - i = encodeVarintTx(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0x22 } - i-- - dAtA[i] = 0x22 } - if m.WasmHook != nil { + if m.ContractHook != nil { { - size, err := m.WasmHook.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ContractHook.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -1525,10 +1093,10 @@ func (m *MsgUpdateNamespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x1a } - if len(m.NamespaceDenom) > 0 { - i -= len(m.NamespaceDenom) - copy(dAtA[i:], m.NamespaceDenom) - i = encodeVarintTx(dAtA, i, uint64(len(m.NamespaceDenom))) + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintTx(dAtA, i, uint64(len(m.Denom))) i-- dAtA[i] = 0x12 } @@ -1542,7 +1110,7 @@ func (m *MsgUpdateNamespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgUpdateNamespace_MsgSetWasmHook) Marshal() (dAtA []byte, err error) { +func (m *MsgUpdateNamespace_SetContractHook) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -1552,12 +1120,12 @@ func (m *MsgUpdateNamespace_MsgSetWasmHook) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgUpdateNamespace_MsgSetWasmHook) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgUpdateNamespace_SetContractHook) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgUpdateNamespace_MsgSetWasmHook) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgUpdateNamespace_SetContractHook) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -1572,105 +1140,6 @@ func (m *MsgUpdateNamespace_MsgSetWasmHook) MarshalToSizedBuffer(dAtA []byte) (i return len(dAtA) - i, nil } -func (m *MsgUpdateNamespace_MsgSetMintsPaused) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *MsgUpdateNamespace_MsgSetMintsPaused) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgUpdateNamespace_MsgSetMintsPaused) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.NewValue { - i-- - if m.NewValue { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x8 - } - return len(dAtA) - i, nil -} - -func (m *MsgUpdateNamespace_MsgSetSendsPaused) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *MsgUpdateNamespace_MsgSetSendsPaused) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgUpdateNamespace_MsgSetSendsPaused) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.NewValue { - i-- - if m.NewValue { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x8 - } - return len(dAtA) - i, nil -} - -func (m *MsgUpdateNamespace_MsgSetBurnsPaused) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *MsgUpdateNamespace_MsgSetBurnsPaused) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgUpdateNamespace_MsgSetBurnsPaused) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.NewValue { - i-- - if m.NewValue { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x8 - } - return len(dAtA) - i, nil -} - func (m *MsgUpdateNamespaceResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -1694,7 +1163,7 @@ func (m *MsgUpdateNamespaceResponse) MarshalToSizedBuffer(dAtA []byte) (int, err return len(dAtA) - i, nil } -func (m *MsgUpdateNamespaceRoles) Marshal() (dAtA []byte, err error) { +func (m *MsgUpdateActorRoles) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -1704,34 +1173,20 @@ func (m *MsgUpdateNamespaceRoles) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgUpdateNamespaceRoles) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgUpdateActorRoles) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgUpdateNamespaceRoles) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgUpdateActorRoles) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.AddressRoles) > 0 { - for iNdEx := len(m.AddressRoles) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.AddressRoles[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTx(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - } - } - if len(m.RolePermissions) > 0 { - for iNdEx := len(m.RolePermissions) - 1; iNdEx >= 0; iNdEx-- { + if len(m.RoleActorsToRevoke) > 0 { + for iNdEx := len(m.RoleActorsToRevoke) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.RolePermissions[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.RoleActorsToRevoke[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -1739,73 +1194,13 @@ func (m *MsgUpdateNamespaceRoles) MarshalToSizedBuffer(dAtA []byte) (int, error) i = encodeVarintTx(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1a + dAtA[i] = 0x2a } } - if len(m.NamespaceDenom) > 0 { - i -= len(m.NamespaceDenom) - copy(dAtA[i:], m.NamespaceDenom) - i = encodeVarintTx(dAtA, i, uint64(len(m.NamespaceDenom))) - i-- - dAtA[i] = 0x12 - } - if len(m.Sender) > 0 { - i -= len(m.Sender) - copy(dAtA[i:], m.Sender) - i = encodeVarintTx(dAtA, i, uint64(len(m.Sender))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *MsgUpdateNamespaceRolesResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *MsgUpdateNamespaceRolesResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgUpdateNamespaceRolesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - -func (m *MsgRevokeNamespaceRoles) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *MsgRevokeNamespaceRoles) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgRevokeNamespaceRoles) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.AddressRolesToRevoke) > 0 { - for iNdEx := len(m.AddressRolesToRevoke) - 1; iNdEx >= 0; iNdEx-- { + if len(m.RoleActorsToAdd) > 0 { + for iNdEx := len(m.RoleActorsToAdd) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.AddressRolesToRevoke[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.RoleActorsToAdd[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -1816,10 +1211,10 @@ func (m *MsgRevokeNamespaceRoles) MarshalToSizedBuffer(dAtA []byte) (int, error) dAtA[i] = 0x1a } } - if len(m.NamespaceDenom) > 0 { - i -= len(m.NamespaceDenom) - copy(dAtA[i:], m.NamespaceDenom) - i = encodeVarintTx(dAtA, i, uint64(len(m.NamespaceDenom))) + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintTx(dAtA, i, uint64(len(m.Denom))) i-- dAtA[i] = 0x12 } @@ -1833,7 +1228,7 @@ func (m *MsgRevokeNamespaceRoles) MarshalToSizedBuffer(dAtA []byte) (int, error) return len(dAtA) - i, nil } -func (m *MsgRevokeNamespaceRolesResponse) Marshal() (dAtA []byte, err error) { +func (m *MsgUpdateActorRolesResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -1843,12 +1238,12 @@ func (m *MsgRevokeNamespaceRolesResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgRevokeNamespaceRolesResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgUpdateActorRolesResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgRevokeNamespaceRolesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgUpdateActorRolesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -1975,7 +1370,7 @@ func (m *MsgCreateNamespaceResponse) Size() (n int) { return n } -func (m *MsgDeleteNamespace) Size() (n int) { +func (m *MsgUpdateNamespace) Size() (n int) { if m == nil { return 0 } @@ -1985,56 +1380,42 @@ func (m *MsgDeleteNamespace) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.NamespaceDenom) + l = len(m.Denom) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - return n -} - -func (m *MsgDeleteNamespaceResponse) Size() (n int) { - if m == nil { - return 0 + if m.ContractHook != nil { + l = m.ContractHook.Size() + n += 1 + l + sovTx(uint64(l)) } - var l int - _ = l - return n -} - -func (m *MsgUpdateNamespace) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Sender) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.NamespaceDenom) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - if m.WasmHook != nil { - l = m.WasmHook.Size() - n += 1 + l + sovTx(uint64(l)) + if len(m.RolePermissions) > 0 { + for _, e := range m.RolePermissions { + l = e.Size() + n += 1 + l + sovTx(uint64(l)) + } } - if m.MintsPaused != nil { - l = m.MintsPaused.Size() - n += 1 + l + sovTx(uint64(l)) + if len(m.RoleManagers) > 0 { + for _, e := range m.RoleManagers { + l = e.Size() + n += 1 + l + sovTx(uint64(l)) + } } - if m.SendsPaused != nil { - l = m.SendsPaused.Size() - n += 1 + l + sovTx(uint64(l)) + if len(m.PolicyStatuses) > 0 { + for _, e := range m.PolicyStatuses { + l = e.Size() + n += 1 + l + sovTx(uint64(l)) + } } - if m.BurnsPaused != nil { - l = m.BurnsPaused.Size() - n += 1 + l + sovTx(uint64(l)) + if len(m.PolicyManagerCapabilities) > 0 { + for _, e := range m.PolicyManagerCapabilities { + l = e.Size() + n += 1 + l + sovTx(uint64(l)) + } } return n } -func (m *MsgUpdateNamespace_MsgSetWasmHook) Size() (n int) { +func (m *MsgUpdateNamespace_SetContractHook) Size() (n int) { if m == nil { return 0 } @@ -2047,42 +1428,6 @@ func (m *MsgUpdateNamespace_MsgSetWasmHook) Size() (n int) { return n } -func (m *MsgUpdateNamespace_MsgSetMintsPaused) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NewValue { - n += 2 - } - return n -} - -func (m *MsgUpdateNamespace_MsgSetSendsPaused) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NewValue { - n += 2 - } - return n -} - -func (m *MsgUpdateNamespace_MsgSetBurnsPaused) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NewValue { - n += 2 - } - return n -} - func (m *MsgUpdateNamespaceResponse) Size() (n int) { if m == nil { return 0 @@ -2092,7 +1437,7 @@ func (m *MsgUpdateNamespaceResponse) Size() (n int) { return n } -func (m *MsgUpdateNamespaceRoles) Size() (n int) { +func (m *MsgUpdateActorRoles) Size() (n int) { if m == nil { return 0 } @@ -2102,50 +1447,18 @@ func (m *MsgUpdateNamespaceRoles) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.NamespaceDenom) + l = len(m.Denom) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if len(m.RolePermissions) > 0 { - for _, e := range m.RolePermissions { - l = e.Size() - n += 1 + l + sovTx(uint64(l)) - } - } - if len(m.AddressRoles) > 0 { - for _, e := range m.AddressRoles { + if len(m.RoleActorsToAdd) > 0 { + for _, e := range m.RoleActorsToAdd { l = e.Size() n += 1 + l + sovTx(uint64(l)) } } - return n -} - -func (m *MsgUpdateNamespaceRolesResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n -} - -func (m *MsgRevokeNamespaceRoles) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Sender) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.NamespaceDenom) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - if len(m.AddressRolesToRevoke) > 0 { - for _, e := range m.AddressRolesToRevoke { + if len(m.RoleActorsToRevoke) > 0 { + for _, e := range m.RoleActorsToRevoke { l = e.Size() n += 1 + l + sovTx(uint64(l)) } @@ -2153,7 +1466,7 @@ func (m *MsgRevokeNamespaceRoles) Size() (n int) { return n } -func (m *MsgRevokeNamespaceRolesResponse) Size() (n int) { +func (m *MsgUpdateActorRolesResponse) Size() (n int) { if m == nil { return 0 } @@ -2413,795 +1726,18 @@ func (m *MsgCreateNamespace) Unmarshal(dAtA []byte) error { } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Namespace.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgCreateNamespaceResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgCreateNamespaceResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgCreateNamespaceResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgDeleteNamespace) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgDeleteNamespace: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgDeleteNamespace: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NamespaceDenom", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.NamespaceDenom = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgDeleteNamespaceResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgDeleteNamespaceResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgDeleteNamespaceResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgUpdateNamespace) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgUpdateNamespace: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgUpdateNamespace: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NamespaceDenom", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.NamespaceDenom = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field WasmHook", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.WasmHook == nil { - m.WasmHook = &MsgUpdateNamespace_MsgSetWasmHook{} - } - if err := m.WasmHook.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MintsPaused", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.MintsPaused == nil { - m.MintsPaused = &MsgUpdateNamespace_MsgSetMintsPaused{} - } - if err := m.MintsPaused.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SendsPaused", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.SendsPaused == nil { - m.SendsPaused = &MsgUpdateNamespace_MsgSetSendsPaused{} - } - if err := m.SendsPaused.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BurnsPaused", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.BurnsPaused == nil { - m.BurnsPaused = &MsgUpdateNamespace_MsgSetBurnsPaused{} - } - if err := m.BurnsPaused.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgUpdateNamespace_MsgSetWasmHook) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgSetWasmHook: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgSetWasmHook: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NewValue", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.NewValue = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgUpdateNamespace_MsgSetMintsPaused) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgSetMintsPaused: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgSetMintsPaused: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NewValue", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.NewValue = bool(v != 0) - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgUpdateNamespace_MsgSetSendsPaused) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgSetSendsPaused: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgSetSendsPaused: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NewValue", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.NewValue = bool(v != 0) - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgUpdateNamespace_MsgSetBurnsPaused) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + return ErrInvalidLengthTx } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgSetBurnsPaused: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgSetBurnsPaused: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NewValue", wireType) + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Sender = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) } - var v int + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -3211,12 +1747,25 @@ func (m *MsgUpdateNamespace_MsgSetBurnsPaused) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= int(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - m.NewValue = bool(v != 0) + if msglen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Namespace.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -3238,7 +1787,7 @@ func (m *MsgUpdateNamespace_MsgSetBurnsPaused) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgUpdateNamespaceResponse) Unmarshal(dAtA []byte) error { +func (m *MsgCreateNamespaceResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -3261,10 +1810,10 @@ func (m *MsgUpdateNamespaceResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgUpdateNamespaceResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgCreateNamespaceResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgUpdateNamespaceResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgCreateNamespaceResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { default: @@ -3288,7 +1837,7 @@ func (m *MsgUpdateNamespaceResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgUpdateNamespaceRoles) Unmarshal(dAtA []byte) error { +func (m *MsgUpdateNamespace) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -3311,10 +1860,10 @@ func (m *MsgUpdateNamespaceRoles) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgUpdateNamespaceRoles: wiretype end group for non-group") + return fmt.Errorf("proto: MsgUpdateNamespace: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgUpdateNamespaceRoles: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgUpdateNamespace: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -3351,7 +1900,7 @@ func (m *MsgUpdateNamespaceRoles) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NamespaceDenom", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -3379,9 +1928,45 @@ func (m *MsgUpdateNamespaceRoles) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.NamespaceDenom = string(dAtA[iNdEx:postIndex]) + m.Denom = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ContractHook", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ContractHook == nil { + m.ContractHook = &MsgUpdateNamespace_SetContractHook{} + } + if err := m.ContractHook.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field RolePermissions", wireType) } @@ -3415,9 +2000,77 @@ func (m *MsgUpdateNamespaceRoles) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 4: + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RoleManagers", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RoleManagers = append(m.RoleManagers, &RoleManager{}) + if err := m.RoleManagers[len(m.RoleManagers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PolicyStatuses", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PolicyStatuses = append(m.PolicyStatuses, &PolicyStatus{}) + if err := m.PolicyStatuses[len(m.PolicyStatuses)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AddressRoles", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PolicyManagerCapabilities", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -3444,10 +2097,92 @@ func (m *MsgUpdateNamespaceRoles) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AddressRoles = append(m.AddressRoles, &AddressRoles{}) - if err := m.AddressRoles[len(m.AddressRoles)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.PolicyManagerCapabilities = append(m.PolicyManagerCapabilities, &PolicyManagerCapability{}) + if err := m.PolicyManagerCapabilities[len(m.PolicyManagerCapabilities)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { return err } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgUpdateNamespace_SetContractHook) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SetContractHook: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SetContractHook: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NewValue", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NewValue = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -3470,7 +2205,7 @@ func (m *MsgUpdateNamespaceRoles) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgUpdateNamespaceRolesResponse) Unmarshal(dAtA []byte) error { +func (m *MsgUpdateNamespaceResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -3493,10 +2228,10 @@ func (m *MsgUpdateNamespaceRolesResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgUpdateNamespaceRolesResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgUpdateNamespaceResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgUpdateNamespaceRolesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgUpdateNamespaceResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { default: @@ -3520,7 +2255,7 @@ func (m *MsgUpdateNamespaceRolesResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgRevokeNamespaceRoles) Unmarshal(dAtA []byte) error { +func (m *MsgUpdateActorRoles) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -3543,10 +2278,10 @@ func (m *MsgRevokeNamespaceRoles) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgRevokeNamespaceRoles: wiretype end group for non-group") + return fmt.Errorf("proto: MsgUpdateActorRoles: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgRevokeNamespaceRoles: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgUpdateActorRoles: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -3583,7 +2318,7 @@ func (m *MsgRevokeNamespaceRoles) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NamespaceDenom", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -3611,11 +2346,45 @@ func (m *MsgRevokeNamespaceRoles) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.NamespaceDenom = string(dAtA[iNdEx:postIndex]) + m.Denom = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AddressRolesToRevoke", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RoleActorsToAdd", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RoleActorsToAdd = append(m.RoleActorsToAdd, &RoleActors{}) + if err := m.RoleActorsToAdd[len(m.RoleActorsToAdd)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RoleActorsToRevoke", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -3642,8 +2411,8 @@ func (m *MsgRevokeNamespaceRoles) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AddressRolesToRevoke = append(m.AddressRolesToRevoke, &AddressRoles{}) - if err := m.AddressRolesToRevoke[len(m.AddressRolesToRevoke)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.RoleActorsToRevoke = append(m.RoleActorsToRevoke, &RoleActors{}) + if err := m.RoleActorsToRevoke[len(m.RoleActorsToRevoke)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -3668,7 +2437,7 @@ func (m *MsgRevokeNamespaceRoles) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgRevokeNamespaceRolesResponse) Unmarshal(dAtA []byte) error { +func (m *MsgUpdateActorRolesResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -3691,10 +2460,10 @@ func (m *MsgRevokeNamespaceRolesResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgRevokeNamespaceRolesResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgUpdateActorRolesResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgRevokeNamespaceRolesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgUpdateActorRolesResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { default: diff --git a/chain/permissions/types/types.go b/chain/permissions/types/types.go deleted file mode 100644 index 12a6b08f..00000000 --- a/chain/permissions/types/types.go +++ /dev/null @@ -1,156 +0,0 @@ -package types - -import ( - "encoding/json" - - "cosmossdk.io/errors" - sdk "github.com/cosmos/cosmos-sdk/types" - - tftypes "github.com/InjectiveLabs/sdk-go/chain/tokenfactory/types" -) - -const ( - EVERYONE = "EVERYONE" - MaxPerm = uint32(Action_MINT) | uint32(Action_RECEIVE) | uint32(Action_BURN) -) - -type WasmHookMsg struct { - From sdk.AccAddress `json:"from_address"` - To sdk.AccAddress `json:"to_address"` - Action string `json:"action"` - Amounts sdk.Coins `json:"amounts"` -} - -func NewWasmHookMsg(fromAddr, toAddr sdk.AccAddress, action Action, amount sdk.Coin) WasmHookMsg { - return WasmHookMsg{ - From: fromAddr, - To: toAddr, - Action: action.String(), - Amounts: sdk.NewCoins(amount), - } -} - -func GetWasmHookMsgBytes(fromAddr, toAddr sdk.AccAddress, action Action, amount sdk.Coin) ([]byte, error) { - wasmHookMsg := struct { - SendRestriction WasmHookMsg `json:"send_restriction"` - }{NewWasmHookMsg(fromAddr, toAddr, action, amount)} - - bz, err := json.Marshal(wasmHookMsg) - if err != nil { - return nil, err - } - - return bz, nil -} - -func (n *Namespace) Validate() error { - if err := n.ValidateBasicParams(); err != nil { - return err - } - - if err := n.ValidateEveryoneRole(); err != nil { - return err - } - - if err := n.ValidateRoles(false); err != nil { - return err - } - - return nil -} - -func (n *Namespace) ValidateBasicParams() error { - if _, _, err := tftypes.DeconstructDenom(n.Denom); err != nil { - return errors.Wrap(err, "permissions namespace can only be applied to tokenfactory denoms") - } - - // existing wasm hook contract - if n.WasmHook != "" { - if _, err := sdk.AccAddressFromBech32(n.WasmHook); err != nil { - return ErrInvalidWasmHook - } - } - - return nil -} - -func (n *Namespace) ValidateRoles(isForUpdate bool) error { - // role_permissions - foundRoles := make(map[string]struct{}, len(n.RolePermissions)) - for _, rolePerm := range n.RolePermissions { - if _, ok := foundRoles[rolePerm.Role]; ok { - return errors.Wrapf(ErrInvalidPermission, "permissions for the role %s set multiple times?", rolePerm.Role) - } - if rolePerm.Permissions > MaxPerm { - return errors.Wrapf(ErrInvalidPermission, "permissions %d for the role %s is bigger than maximum expected %d", rolePerm.Permissions, rolePerm.Role, MaxPerm) - } - foundRoles[rolePerm.Role] = struct{}{} - } - - // address_roles - foundAddresses := make(map[string]struct{}, len(n.AddressRoles)) - for _, addrRoles := range n.AddressRoles { - if _, err := sdk.AccAddressFromBech32(addrRoles.Address); err != nil { - return errors.Wrapf(err, "invalid address %s", addrRoles.Address) - } - if _, ok := foundAddresses[addrRoles.Address]; ok { - return errors.Wrapf(ErrInvalidRole, "address %s is assigned new roles multiple times?", addrRoles.Address) - } - for _, role := range addrRoles.Roles { - _, found := foundRoles[role] - if !isForUpdate && !found { - return errors.Wrapf(ErrUnknownRole, "role %s has no defined permissions", role) - } - if role == EVERYONE { - return errors.Wrapf(ErrInvalidRole, "role %s should not be explicitly attached to address, you need to remove address from the list completely instead", EVERYONE) - } - } - foundAddresses[addrRoles.Address] = struct{}{} - } - - return nil -} - -func (n *Namespace) ValidateEveryoneRole() error { - // role_permissions - for _, rolePerm := range n.RolePermissions { - if rolePerm.Role == EVERYONE { - return nil - } - } - - return errors.Wrapf(ErrInvalidPermission, "permissions for role %s should be explicitly set", EVERYONE) -} - -func (n *Namespace) CheckActionValidity(action Action) error { - // check that action is not paused - switch action { - case Action_MINT: - if n.MintsPaused { - return errors.Wrap(ErrRestrictedAction, "mints paused") - } - case Action_RECEIVE: - if n.SendsPaused { - return errors.Wrap(ErrRestrictedAction, "sends paused") - } - case Action_BURN: - if n.BurnsPaused { - return errors.Wrap(ErrRestrictedAction, "burns paused") - } - } - return nil -} - -func (a Action) DeriveActor(fromAddr, toAddr sdk.AccAddress) sdk.AccAddress { - switch a { - case Action_MINT, Action_RECEIVE: - return toAddr - case Action_BURN: - return fromAddr - } - return fromAddr -} - -func NewEmptyVoucher(denom string) sdk.Coin { - return sdk.NewInt64Coin(denom, 0) -} diff --git a/chain/stream/types/query.pb.go b/chain/stream/types/query.pb.go index be31fd77..73d96e9e 100644 --- a/chain/stream/types/query.pb.go +++ b/chain/stream/types/query.pb.go @@ -581,7 +581,7 @@ func (m *SubaccountDeposit) GetDeposit() types.Deposit { type SpotOrderUpdate struct { Status OrderUpdateStatus `protobuf:"varint,1,opt,name=status,proto3,enum=injective.stream.v1beta1.OrderUpdateStatus" json:"status,omitempty"` - OrderHash []byte `protobuf:"bytes,2,opt,name=order_hash,json=orderHash,proto3" json:"order_hash,omitempty"` + OrderHash string `protobuf:"bytes,2,opt,name=order_hash,json=orderHash,proto3" json:"order_hash,omitempty"` Cid string `protobuf:"bytes,3,opt,name=cid,proto3" json:"cid,omitempty"` Order *SpotOrder `protobuf:"bytes,4,opt,name=order,proto3" json:"order,omitempty"` } @@ -626,11 +626,11 @@ func (m *SpotOrderUpdate) GetStatus() OrderUpdateStatus { return OrderUpdateStatus_Unspecified } -func (m *SpotOrderUpdate) GetOrderHash() []byte { +func (m *SpotOrderUpdate) GetOrderHash() string { if m != nil { return m.OrderHash } - return nil + return "" } func (m *SpotOrderUpdate) GetCid() string { @@ -701,7 +701,7 @@ func (m *SpotOrder) GetOrder() types.SpotLimitOrder { type DerivativeOrderUpdate struct { Status OrderUpdateStatus `protobuf:"varint,1,opt,name=status,proto3,enum=injective.stream.v1beta1.OrderUpdateStatus" json:"status,omitempty"` - OrderHash []byte `protobuf:"bytes,2,opt,name=order_hash,json=orderHash,proto3" json:"order_hash,omitempty"` + OrderHash string `protobuf:"bytes,2,opt,name=order_hash,json=orderHash,proto3" json:"order_hash,omitempty"` Cid string `protobuf:"bytes,3,opt,name=cid,proto3" json:"cid,omitempty"` Order *DerivativeOrder `protobuf:"bytes,4,opt,name=order,proto3" json:"order,omitempty"` } @@ -746,11 +746,11 @@ func (m *DerivativeOrderUpdate) GetStatus() OrderUpdateStatus { return OrderUpdateStatus_Unspecified } -func (m *DerivativeOrderUpdate) GetOrderHash() []byte { +func (m *DerivativeOrderUpdate) GetOrderHash() string { if m != nil { return m.OrderHash } - return nil + return "" } func (m *DerivativeOrderUpdate) GetCid() string { @@ -953,7 +953,7 @@ type SpotTrade struct { // bytes32 subaccount ID that executed the trade SubaccountId string `protobuf:"bytes,6,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` Fee cosmossdk_io_math.LegacyDec `protobuf:"bytes,7,opt,name=fee,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"fee"` - OrderHash []byte `protobuf:"bytes,8,opt,name=order_hash,json=orderHash,proto3" json:"order_hash,omitempty"` + OrderHash string `protobuf:"bytes,8,opt,name=order_hash,json=orderHash,proto3" json:"order_hash,omitempty"` FeeRecipientAddress string `protobuf:"bytes,9,opt,name=fee_recipient_address,json=feeRecipientAddress,proto3" json:"fee_recipient_address,omitempty"` Cid string `protobuf:"bytes,10,opt,name=cid,proto3" json:"cid,omitempty"` TradeId string `protobuf:"bytes,11,opt,name=trade_id,json=tradeId,proto3" json:"trade_id,omitempty"` @@ -1020,11 +1020,11 @@ func (m *SpotTrade) GetSubaccountId() string { return "" } -func (m *SpotTrade) GetOrderHash() []byte { +func (m *SpotTrade) GetOrderHash() string { if m != nil { return m.OrderHash } - return nil + return "" } func (m *SpotTrade) GetFeeRecipientAddress() string { @@ -1521,110 +1521,110 @@ func init() { } var fileDescriptor_e23b7dcfb2fbc9c7 = []byte{ - // 1640 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0xcd, 0x6e, 0xdb, 0xc6, - 0x16, 0xb6, 0x2c, 0x5b, 0x16, 0x8f, 0x64, 0x5b, 0x9e, 0x38, 0x06, 0xe3, 0xdc, 0x6b, 0x27, 0x74, - 0x72, 0x63, 0xe7, 0x47, 0x72, 0x7c, 0x71, 0x81, 0x5b, 0x74, 0x91, 0x44, 0x76, 0x83, 0x38, 0x70, - 0xd0, 0x80, 0x76, 0x5a, 0x20, 0x68, 0x4a, 0x50, 0xe4, 0x48, 0x9a, 0x4a, 0x22, 0x65, 0x0e, 0x69, - 0x44, 0x4f, 0xd0, 0xae, 0x8a, 0x6c, 0xbb, 0xec, 0xb6, 0x8b, 0x3e, 0x44, 0xbb, 0xc9, 0xaa, 0xc8, - 0xb2, 0x28, 0x8a, 0xb4, 0x48, 0x5e, 0xa4, 0x98, 0x1f, 0x52, 0x24, 0x25, 0x4b, 0x72, 0x9a, 0x22, - 0x2b, 0x91, 0xa3, 0x73, 0xbe, 0x6f, 0xce, 0x99, 0x39, 0xdf, 0x1c, 0x0e, 0x5c, 0x21, 0xce, 0x57, - 0xd8, 0xf2, 0xc9, 0x09, 0xae, 0x50, 0xdf, 0xc3, 0x66, 0xa7, 0x72, 0x72, 0xbb, 0x86, 0x7d, 0xf3, - 0x76, 0xe5, 0x38, 0xc0, 0x5e, 0xaf, 0xdc, 0xf5, 0x5c, 0xdf, 0x45, 0x6a, 0x64, 0x55, 0x16, 0x56, - 0x65, 0x69, 0xb5, 0xba, 0x66, 0xb9, 0xb4, 0xe3, 0xd2, 0x4a, 0xcd, 0xa4, 0x38, 0x72, 0xb5, 0x5c, - 0xe2, 0x08, 0xcf, 0xd5, 0xe5, 0x86, 0xdb, 0x70, 0xf9, 0x63, 0x85, 0x3d, 0xc9, 0xd1, 0x6b, 0x7d, - 0x56, 0xfc, 0xdc, 0x6a, 0x9a, 0x4e, 0xa3, 0xef, 0x8c, 0x4f, 0xb0, 0xe3, 0x53, 0x69, 0xb8, 0x35, - 0xca, 0x50, 0x0e, 0x08, 0x53, 0xed, 0xdb, 0x3c, 0xcc, 0x1f, 0xf2, 0xc9, 0xe9, 0xf8, 0x38, 0xc0, - 0xd4, 0x47, 0x36, 0x2c, 0xd7, 0x4c, 0xa7, 0x65, 0xd4, 0xcc, 0xb6, 0xe9, 0x58, 0x98, 0x1a, 0x75, - 0xd2, 0xf6, 0xb1, 0xa7, 0x66, 0x2e, 0x65, 0x36, 0x0b, 0x3b, 0x37, 0xcb, 0xa7, 0x05, 0x55, 0xae, - 0x9a, 0x4e, 0xab, 0x2a, 0x9d, 0xee, 0x73, 0x9f, 0xea, 0xcc, 0xcb, 0xd7, 0xeb, 0x19, 0x1d, 0xd5, - 0x06, 0xfe, 0x41, 0x27, 0xb0, 0x4a, 0x83, 0x9a, 0x69, 0x59, 0x6e, 0xe0, 0xf8, 0x86, 0x8d, 0xbb, - 0x2e, 0x25, 0x7e, 0xc4, 0x35, 0xcd, 0xb9, 0x76, 0x4e, 0xe7, 0x3a, 0x8c, 0x7c, 0xf7, 0xa4, 0x6b, - 0x82, 0x51, 0xa5, 0xa7, 0xfc, 0x8f, 0x9e, 0x02, 0xa2, 0x5d, 0xd7, 0x37, 0x7c, 0xcf, 0xb4, 0xfb, - 0xb1, 0x65, 0x39, 0xdf, 0x7f, 0x4e, 0xe7, 0x3b, 0xe2, 0xe6, 0x09, 0x8e, 0x12, 0xc3, 0x89, 0x8f, - 0xa3, 0x3a, 0xa8, 0x36, 0xf6, 0xc8, 0x89, 0xc9, 0x10, 0x52, 0x0c, 0x33, 0xef, 0xc0, 0xb0, 0xd2, - 0x47, 0x4b, 0xf0, 0x84, 0x31, 0xb8, 0x9e, 0x8d, 0xbd, 0x88, 0x61, 0x76, 0x1c, 0xc3, 0xa7, 0xdc, - 0x7c, 0x30, 0x86, 0xf8, 0x78, 0x2a, 0x86, 0x24, 0x43, 0xee, 0x1d, 0x18, 0x62, 0x31, 0x24, 0x78, - 0x30, 0xac, 0xf4, 0x63, 0xa8, 0xb9, 0x6e, 0x2b, 0x62, 0x99, 0xe3, 0x2c, 0x5b, 0x63, 0x58, 0x98, - 0x4b, 0x82, 0x68, 0x39, 0x0a, 0x85, 0xa3, 0x49, 0x9a, 0x63, 0xf8, 0x57, 0x3a, 0x9c, 0x04, 0x59, - 0xfe, 0xdd, 0xc8, 0x56, 0x53, 0x51, 0xc5, 0x29, 0x9f, 0x42, 0x89, 0xef, 0x38, 0xe2, 0x3a, 0x11, - 0x8d, 0x32, 0x8e, 0xe6, 0x71, 0xe8, 0x91, 0xa0, 0x59, 0xec, 0x26, 0x87, 0x91, 0x09, 0xe7, 0x5c, - 0xcf, 0xb4, 0xda, 0xd8, 0xe8, 0x7a, 0xc4, 0xc2, 0x21, 0x3c, 0x70, 0xf8, 0x1b, 0xa3, 0xa2, 0x60, - 0x4e, 0x8f, 0x99, 0x4f, 0x82, 0x60, 0xc9, 0x4d, 0xff, 0xa1, 0x7d, 0x3f, 0x07, 0x0b, 0xa1, 0x20, - 0xd0, 0xae, 0xeb, 0x50, 0x8c, 0x2e, 0x43, 0xb1, 0xd6, 0x76, 0xad, 0x96, 0xd1, 0xc4, 0xa4, 0xd1, - 0xf4, 0xb9, 0x12, 0xcc, 0xe8, 0x05, 0x3e, 0xf6, 0x80, 0x0f, 0xa1, 0x7f, 0x03, 0x08, 0x13, 0x9f, - 0x74, 0x30, 0x2f, 0xdf, 0xac, 0xae, 0xf0, 0x91, 0x23, 0xd2, 0xc1, 0xe8, 0x21, 0xcc, 0x27, 0x34, - 0x45, 0xcd, 0x5e, 0xca, 0x6e, 0x16, 0x76, 0xae, 0x4e, 0x24, 0x26, 0x7a, 0x31, 0xae, 0x1f, 0xe8, - 0x19, 0x9c, 0x1b, 0xa2, 0x1c, 0xea, 0x0c, 0x47, 0xbc, 0x79, 0x16, 0xc9, 0xd0, 0xd1, 0xa0, 0x4c, - 0xa0, 0x3d, 0x28, 0xc4, 0x04, 0x42, 0x9d, 0xe5, 0xb0, 0x1b, 0x23, 0x60, 0x43, 0x15, 0xd0, 0xa1, - 0x2f, 0x08, 0xe8, 0x33, 0x58, 0x1a, 0x90, 0x02, 0x35, 0xc7, 0xb1, 0x46, 0xec, 0x82, 0xbd, 0x64, - 0xbd, 0xeb, 0xa5, 0xb4, 0x00, 0xa0, 0x87, 0x72, 0x76, 0xa2, 0x30, 0xd5, 0xb9, 0x71, 0x88, 0x87, - 0x61, 0x51, 0x3c, 0xe9, 0xda, 0xa6, 0x2f, 0xe7, 0x28, 0x0a, 0x11, 0x7d, 0x91, 0x98, 0xa3, 0x44, - 0xcc, 0x73, 0xc4, 0xca, 0x24, 0x73, 0x8c, 0xe3, 0x96, 0xd2, 0x65, 0x8e, 0x8c, 0x74, 0x81, 0x1b, - 0x01, 0x37, 0xa5, 0xaa, 0x32, 0x6e, 0xd2, 0x51, 0x49, 0x49, 0xf0, 0x64, 0x69, 0x8b, 0x41, 0x8a, - 0x5a, 0xc3, 0x4b, 0x3b, 0xa2, 0x81, 0xb3, 0xd2, 0x0c, 0x2b, 0xea, 0x90, 0xec, 0x2e, 0x28, 0x51, - 0x2d, 0xaa, 0x05, 0x8e, 0xac, 0x8d, 0xaf, 0x66, 0xbd, 0xef, 0xc4, 0x4a, 0x20, 0x5e, 0xba, 0x54, - 0x2d, 0x8e, 0x2b, 0x81, 0x58, 0xd1, 0xea, 0xc5, 0x58, 0xa1, 0x52, 0xad, 0x0e, 0x8b, 0xa9, 0x19, - 0xa2, 0x12, 0x64, 0x29, 0x3e, 0x96, 0xa5, 0xc9, 0x1e, 0xd1, 0x3d, 0x50, 0xa2, 0xa4, 0xc8, 0x03, - 0x75, 0x63, 0x82, 0x64, 0xe8, 0x7d, 0x2f, 0xed, 0xc7, 0x0c, 0x28, 0xd1, 0x1f, 0xe8, 0x22, 0x28, - 0x1d, 0xd3, 0x6b, 0x61, 0xdf, 0x20, 0x36, 0x27, 0x52, 0xf4, 0xbc, 0x18, 0xd8, 0xb7, 0xd1, 0x5d, - 0x80, 0x5a, 0xd0, 0x33, 0xda, 0xf8, 0x04, 0xb7, 0xa9, 0x3a, 0xcd, 0x63, 0xbb, 0x1c, 0xa3, 0x8b, - 0xda, 0x8e, 0x90, 0xf0, 0x80, 0x59, 0xea, 0x4a, 0x2d, 0xe8, 0xf1, 0x27, 0x8a, 0xaa, 0x50, 0xa0, - 0xb8, 0xdd, 0x0e, 0x21, 0xb2, 0x93, 0x42, 0x00, 0xf3, 0x12, 0x18, 0xda, 0x8b, 0x0c, 0x14, 0x62, - 0xca, 0x81, 0x54, 0x98, 0x93, 0xf5, 0x2d, 0x27, 0x1c, 0xbe, 0xa2, 0x06, 0xe4, 0x23, 0x31, 0x12, - 0xb3, 0xbd, 0x50, 0x16, 0x4d, 0x59, 0x99, 0x35, 0x65, 0x11, 0xc7, 0xae, 0x4b, 0x9c, 0xea, 0xf6, - 0xcb, 0xd7, 0xeb, 0x53, 0x3f, 0xfc, 0xb1, 0xbe, 0xd9, 0x20, 0x7e, 0x33, 0xa8, 0x95, 0x2d, 0xb7, - 0x53, 0x91, 0x1d, 0x9c, 0xf8, 0xb9, 0x45, 0xed, 0x56, 0xc5, 0xef, 0x75, 0x31, 0xe5, 0x0e, 0x54, - 0x8f, 0xc0, 0xb5, 0x6f, 0x32, 0x80, 0x06, 0xa5, 0x07, 0x6d, 0xc0, 0x7c, 0x4c, 0xc5, 0xa2, 0x84, - 0x16, 0xfb, 0x83, 0xfb, 0x36, 0x7a, 0x04, 0xf9, 0x48, 0xdf, 0xc4, 0x24, 0x6f, 0x9c, 0x41, 0xdf, - 0xb8, 0xc6, 0x4f, 0xe9, 0x11, 0x84, 0xe6, 0xc0, 0xd2, 0x80, 0x11, 0x5a, 0x86, 0x59, 0x1b, 0x3b, - 0x6e, 0x47, 0x4e, 0x40, 0xbc, 0xa0, 0x5d, 0x98, 0x93, 0x6e, 0x43, 0xb6, 0xce, 0xc0, 0x42, 0x24, - 0x09, 0x43, 0x4f, 0xed, 0xa7, 0x0c, 0x2c, 0xa6, 0x04, 0x08, 0xed, 0x42, 0x8e, 0xfa, 0xa6, 0x1f, - 0x50, 0xce, 0xb7, 0x30, 0xfa, 0xd0, 0x8a, 0xdc, 0x0e, 0xb9, 0x8b, 0x2e, 0x5d, 0xd9, 0x69, 0xc3, - 0x37, 0xa9, 0xd1, 0x34, 0x69, 0x93, 0x4f, 0xb0, 0x28, 0xb7, 0xed, 0x03, 0x93, 0x36, 0x59, 0x2d, - 0x58, 0xc4, 0xe6, 0x4d, 0x9d, 0xa2, 0xb3, 0x47, 0xf4, 0x11, 0xcc, 0xf2, 0xbf, 0x65, 0x1b, 0xb6, - 0x31, 0x81, 0x60, 0xea, 0xc2, 0x43, 0xeb, 0x82, 0x12, 0x8d, 0x8d, 0x2e, 0x81, 0xfb, 0x21, 0x89, - 0xc8, 0xd8, 0xf5, 0x51, 0x19, 0x63, 0x90, 0x07, 0xa4, 0x43, 0x04, 0xae, 0x4c, 0x9c, 0x64, 0xfc, - 0x25, 0x03, 0xe7, 0x87, 0xaa, 0xec, 0x07, 0x4a, 0xde, 0x9d, 0x64, 0xf2, 0xb6, 0x26, 0x3e, 0x1b, - 0xc2, 0x80, 0xbe, 0xcb, 0xc0, 0x62, 0xea, 0xaf, 0xd1, 0x99, 0x3c, 0x48, 0x66, 0x72, 0x7b, 0xf4, - 0xde, 0x0b, 0x81, 0x4f, 0xc9, 0x27, 0xa3, 0x22, 0xd4, 0x10, 0xe0, 0x3c, 0xae, 0xbc, 0x9e, 0x27, - 0xf4, 0x11, 0x7f, 0xd7, 0xbe, 0xce, 0x42, 0x3e, 0x94, 0xeb, 0xd1, 0x93, 0x1a, 0xa8, 0xd8, 0xe9, - 0x21, 0x15, 0xbb, 0x02, 0x39, 0x42, 0x0f, 0x5c, 0xa7, 0x21, 0x89, 0xe4, 0x1b, 0xba, 0x03, 0xf9, - 0xe3, 0xc0, 0x74, 0x7c, 0xe2, 0xf7, 0x78, 0x1a, 0x95, 0xea, 0x06, 0x9b, 0xe2, 0x6f, 0xaf, 0xd7, - 0x2f, 0x0a, 0x05, 0xa1, 0x76, 0xab, 0x4c, 0xdc, 0x4a, 0xc7, 0xf4, 0x9b, 0xe5, 0x03, 0xdc, 0x30, - 0xad, 0xde, 0x1e, 0xb6, 0xf4, 0xc8, 0x89, 0xb5, 0x25, 0xd8, 0xf1, 0xbd, 0x9e, 0x38, 0x3d, 0x78, - 0xb3, 0x3f, 0x21, 0x06, 0x70, 0x3f, 0x7e, 0x72, 0xa0, 0x8f, 0x21, 0xd7, 0x31, 0xbd, 0x06, 0x71, - 0x78, 0x2f, 0x3f, 0x21, 0x80, 0x74, 0x41, 0xcf, 0x40, 0xb5, 0x82, 0x4e, 0xd0, 0x16, 0x07, 0x6e, - 0x3d, 0x70, 0x6c, 0xe2, 0x34, 0x0c, 0x8e, 0xce, 0x9b, 0xf6, 0x09, 0xe1, 0x56, 0xfa, 0x20, 0xf7, - 0x05, 0xc6, 0x27, 0x0c, 0x42, 0xf3, 0xa1, 0x10, 0x3b, 0xf1, 0x58, 0x26, 0x69, 0xaf, 0x53, 0x73, - 0xdb, 0x72, 0x21, 0xe4, 0x1b, 0x2b, 0x65, 0x91, 0x82, 0xe9, 0xc9, 0x29, 0x85, 0x07, 0x42, 0x30, - 0xc3, 0x34, 0x5a, 0xee, 0x6d, 0xfe, 0xac, 0xfd, 0x9c, 0x15, 0xf5, 0xcd, 0xfb, 0xab, 0xd1, 0x1b, - 0xe0, 0x3c, 0x5b, 0x5b, 0xa3, 0x16, 0xf4, 0x38, 0x75, 0x5e, 0x9f, 0x25, 0xb4, 0x1a, 0xf4, 0xd0, - 0x15, 0x98, 0xc7, 0xcf, 0xb1, 0x15, 0xb0, 0x1d, 0x74, 0xd4, 0x87, 0x4f, 0x0e, 0xfe, 0xfd, 0x0d, - 0x10, 0xc5, 0x3d, 0x7b, 0xe6, 0xb8, 0x07, 0x76, 0x6e, 0x6e, 0xc8, 0xce, 0xfd, 0x1f, 0x64, 0xeb, - 0x18, 0x9f, 0x65, 0x21, 0x99, 0x7d, 0x4a, 0x4d, 0xf2, 0x69, 0x35, 0xf9, 0x3f, 0x9c, 0xaf, 0x63, - 0x6c, 0x78, 0xd8, 0x22, 0x5d, 0x82, 0x1d, 0xdf, 0x30, 0x6d, 0xdb, 0xc3, 0x94, 0xf2, 0x2f, 0x22, - 0x45, 0x7e, 0x85, 0x9c, 0xab, 0x63, 0xac, 0x87, 0x16, 0xf7, 0x84, 0x41, 0xa8, 0x43, 0xd0, 0xd7, - 0xa1, 0x0b, 0x90, 0xe7, 0x8d, 0x34, 0x8b, 0xa0, 0x20, 0x4e, 0x73, 0xfe, 0xbe, 0x6f, 0x6b, 0xbf, - 0x67, 0xe3, 0x0a, 0xf3, 0x4f, 0xaf, 0xe5, 0x40, 0x3e, 0x67, 0x86, 0xe4, 0xf3, 0x31, 0x2c, 0x84, - 0xcd, 0x9f, 0x61, 0xe3, 0xb6, 0x6f, 0xca, 0x0f, 0xf4, 0xad, 0x51, 0x62, 0x16, 0x2a, 0xd1, 0x1e, - 0x73, 0xd0, 0xe7, 0xbb, 0xf1, 0x57, 0x56, 0xbc, 0x5d, 0xb3, 0xe7, 0x06, 0xfe, 0x99, 0x8a, 0x57, - 0xb8, 0xbc, 0xbf, 0xe5, 0x55, 0x3e, 0xc0, 0xf2, 0x1e, 0x41, 0x31, 0x71, 0x01, 0x72, 0x15, 0x16, - 0x12, 0x0b, 0xc0, 0xce, 0xc3, 0x2c, 0x5b, 0xa7, 0xf8, 0x0a, 0xf0, 0x93, 0x2e, 0xda, 0x01, 0xa2, - 0x81, 0x52, 0x74, 0x25, 0xdc, 0x02, 0x54, 0xfb, 0x1c, 0x16, 0x53, 0x9f, 0xdd, 0xef, 0x09, 0xf8, - 0x08, 0x8a, 0x89, 0xbb, 0x8e, 0xf7, 0x83, 0xba, 0x1d, 0x6b, 0xfa, 0x25, 0x70, 0xd2, 0x23, 0x33, - 0xe8, 0x81, 0x06, 0xef, 0xe4, 0xd0, 0x2a, 0xe4, 0x25, 0x69, 0xe8, 0x12, 0xbd, 0x6b, 0xf7, 0x40, - 0x3d, 0xed, 0x66, 0x6d, 0xc2, 0x28, 0xb4, 0x1b, 0xb0, 0x34, 0x70, 0xdb, 0x90, 0x10, 0xf3, 0x6c, - 0x5f, 0xcc, 0xaf, 0x1f, 0x30, 0xe3, 0x54, 0xa3, 0x82, 0x16, 0xa1, 0xf0, 0xc4, 0xa1, 0x5d, 0x6c, - 0x91, 0x3a, 0xc1, 0x76, 0x69, 0x0a, 0x01, 0xe4, 0xaa, 0xae, 0xdb, 0xc2, 0x76, 0x29, 0x83, 0x0a, - 0x30, 0xf7, 0xc8, 0xf4, 0xad, 0x26, 0xb6, 0x4b, 0xd3, 0x68, 0x1e, 0x94, 0x5d, 0x16, 0x5a, 0xbb, - 0x8d, 0xed, 0x52, 0x76, 0xa7, 0x01, 0x39, 0x71, 0x73, 0x81, 0x9e, 0x45, 0x4f, 0xd7, 0x46, 0xb4, - 0x7a, 0xf1, 0x6b, 0xcf, 0xd5, 0xcd, 0xf1, 0x86, 0xe2, 0x3a, 0x64, 0x3b, 0x53, 0xfd, 0xf2, 0xe5, - 0x9b, 0xb5, 0xcc, 0xab, 0x37, 0x6b, 0x99, 0x3f, 0xdf, 0xac, 0x65, 0x5e, 0xbc, 0x5d, 0x9b, 0x7a, - 0xf5, 0x76, 0x6d, 0xea, 0xd7, 0xb7, 0x6b, 0x53, 0x4f, 0xf7, 0x62, 0x5f, 0x08, 0xfb, 0x21, 0xde, - 0x81, 0x59, 0xa3, 0x95, 0x08, 0xfd, 0x96, 0xe5, 0x7a, 0x38, 0xfe, 0xda, 0x34, 0x89, 0x13, 0x5e, - 0x23, 0xf3, 0x6f, 0x88, 0x5a, 0x8e, 0xdf, 0xcd, 0xfe, 0xf7, 0xaf, 0x00, 0x00, 0x00, 0xff, 0xff, - 0x78, 0x25, 0xda, 0xad, 0x67, 0x16, 0x00, 0x00, + // 1638 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x58, 0xcd, 0x6f, 0xdb, 0x46, + 0x16, 0xb7, 0x2c, 0x5b, 0x16, 0x9f, 0xfc, 0x21, 0x4f, 0x1c, 0x83, 0x71, 0x76, 0xed, 0x84, 0x4e, + 0x36, 0x76, 0x3e, 0x24, 0xc7, 0x8b, 0x05, 0x76, 0xb1, 0x87, 0x24, 0xb2, 0x37, 0x88, 0x03, 0x07, + 0x1b, 0xd0, 0xce, 0x2e, 0x10, 0x6c, 0x96, 0xe0, 0xc7, 0x48, 0x9a, 0x4a, 0x22, 0x65, 0x0e, 0x69, + 0x44, 0x7f, 0x41, 0x7b, 0x2a, 0x72, 0xed, 0xb1, 0xd7, 0x1e, 0xfa, 0x47, 0xb4, 0x97, 0x9c, 0x8a, + 0x1c, 0x8b, 0xa2, 0x48, 0x8b, 0xe4, 0x1f, 0x29, 0xe6, 0x83, 0x14, 0x49, 0xc9, 0x92, 0x9c, 0xa6, + 0x28, 0x7a, 0x12, 0x39, 0x7a, 0xef, 0xf7, 0x9b, 0xf7, 0x66, 0xde, 0x6f, 0x1e, 0x07, 0xae, 0x11, + 0xf7, 0x13, 0x6c, 0x07, 0xe4, 0x14, 0x57, 0x69, 0xe0, 0x63, 0xb3, 0x53, 0x3d, 0xbd, 0x6b, 0xe1, + 0xc0, 0xbc, 0x5b, 0x3d, 0x09, 0xb1, 0xdf, 0xab, 0x74, 0x7d, 0x2f, 0xf0, 0x90, 0x1a, 0x5b, 0x55, + 0x84, 0x55, 0x45, 0x5a, 0xad, 0xad, 0xdb, 0x1e, 0xed, 0x78, 0xb4, 0x6a, 0x99, 0x14, 0xc7, 0xae, + 0xb6, 0x47, 0x5c, 0xe1, 0xb9, 0xb6, 0xd2, 0xf0, 0x1a, 0x1e, 0x7f, 0xac, 0xb2, 0x27, 0x39, 0x7a, + 0xa3, 0xcf, 0x8a, 0x5f, 0xda, 0x4d, 0xd3, 0x6d, 0xf4, 0x9d, 0xf1, 0x29, 0x76, 0x03, 0x2a, 0x0d, + 0xb7, 0x47, 0x19, 0xca, 0x01, 0x61, 0xaa, 0x7d, 0x5e, 0x84, 0x85, 0x23, 0x3e, 0x39, 0x1d, 0x9f, + 0x84, 0x98, 0x06, 0xc8, 0x81, 0x15, 0xcb, 0x74, 0x5b, 0x86, 0x65, 0xb6, 0x4d, 0xd7, 0xc6, 0xd4, + 0xa8, 0x93, 0x76, 0x80, 0x7d, 0x35, 0x77, 0x25, 0xb7, 0x55, 0xda, 0xbd, 0x5d, 0x39, 0x2b, 0xa8, + 0x4a, 0xcd, 0x74, 0x5b, 0x35, 0xe9, 0xf4, 0x90, 0xfb, 0xd4, 0x66, 0x5e, 0xbf, 0xdd, 0xc8, 0xe9, + 0xc8, 0x1a, 0xf8, 0x07, 0x9d, 0xc2, 0x1a, 0x0d, 0x2d, 0xd3, 0xb6, 0xbd, 0xd0, 0x0d, 0x0c, 0x07, + 0x77, 0x3d, 0x4a, 0x82, 0x98, 0x6b, 0x9a, 0x73, 0xed, 0x9e, 0xcd, 0x75, 0x14, 0xfb, 0xee, 0x4b, + 0xd7, 0x14, 0xa3, 0x4a, 0xcf, 0xf8, 0x1f, 0x3d, 0x07, 0x44, 0xbb, 0x5e, 0x60, 0x04, 0xbe, 0xe9, + 0xf4, 0x63, 0xcb, 0x73, 0xbe, 0xbf, 0x9c, 0xcd, 0x77, 0xcc, 0xcd, 0x53, 0x1c, 0x65, 0x86, 0x93, + 0x1c, 0x47, 0x75, 0x50, 0x1d, 0xec, 0x93, 0x53, 0x93, 0x21, 0x64, 0x18, 0x66, 0x3e, 0x80, 0x61, + 0xb5, 0x8f, 0x96, 0xe2, 0x89, 0x62, 0xf0, 0x7c, 0x07, 0xfb, 0x31, 0xc3, 0xec, 0x38, 0x86, 0x7f, + 0x73, 0xf3, 0xc1, 0x18, 0x92, 0xe3, 0x99, 0x18, 0xd2, 0x0c, 0x85, 0x0f, 0x60, 0x48, 0xc4, 0x90, + 0xe2, 0xc1, 0xb0, 0xda, 0x8f, 0xc1, 0xf2, 0xbc, 0x56, 0xcc, 0x32, 0xc7, 0x59, 0xb6, 0xc7, 0xb0, + 0x30, 0x97, 0x14, 0xd1, 0x4a, 0x1c, 0x0a, 0x47, 0x93, 0x34, 0x27, 0xf0, 0xa7, 0x6c, 0x38, 0x29, + 0xb2, 0xe2, 0x87, 0x91, 0xad, 0x65, 0xa2, 0x4a, 0x52, 0x3e, 0x87, 0x32, 0xdf, 0x71, 0xc4, 0x73, + 0x63, 0x1a, 0x65, 0x1c, 0xcd, 0xd3, 0xc8, 0x23, 0x45, 0xb3, 0xd4, 0x4d, 0x0f, 0x23, 0x13, 0x2e, + 0x78, 0xbe, 0x69, 0xb7, 0xb1, 0xd1, 0xf5, 0x89, 0x8d, 0x23, 0x78, 0xe0, 0xf0, 0xb7, 0x46, 0x45, + 0xc1, 0x9c, 0x9e, 0x32, 0x9f, 0x14, 0xc1, 0xb2, 0x97, 0xfd, 0x43, 0xfb, 0x72, 0x0e, 0x16, 0x23, + 0x41, 0xa0, 0x5d, 0xcf, 0xa5, 0x18, 0x5d, 0x85, 0x79, 0xab, 0xed, 0xd9, 0x2d, 0xa3, 0x89, 0x49, + 0xa3, 0x19, 0x70, 0x25, 0x98, 0xd1, 0x4b, 0x7c, 0xec, 0x11, 0x1f, 0x42, 0x7f, 0x06, 0x10, 0x26, + 0x01, 0xe9, 0x60, 0x5e, 0xbe, 0x79, 0x5d, 0xe1, 0x23, 0xc7, 0xa4, 0x83, 0xd1, 0x63, 0x58, 0x48, + 0x69, 0x8a, 0x9a, 0xbf, 0x92, 0xdf, 0x2a, 0xed, 0x5e, 0x9f, 0x48, 0x4c, 0xf4, 0xf9, 0xa4, 0x7e, + 0xa0, 0x17, 0x70, 0x61, 0x88, 0x72, 0xa8, 0x33, 0x1c, 0xf1, 0xf6, 0x79, 0x24, 0x43, 0x47, 0x83, + 0x32, 0x81, 0xf6, 0xa1, 0x94, 0x10, 0x08, 0x75, 0x96, 0xc3, 0x6e, 0x8e, 0x80, 0x8d, 0x54, 0x40, + 0x87, 0xbe, 0x20, 0xa0, 0xff, 0xc0, 0xf2, 0x80, 0x14, 0xa8, 0x05, 0x8e, 0x35, 0x62, 0x17, 0xec, + 0xa7, 0xeb, 0x5d, 0x2f, 0x67, 0x05, 0x00, 0x3d, 0x96, 0xb3, 0x13, 0x85, 0xa9, 0xce, 0x8d, 0x43, + 0x3c, 0x8a, 0x8a, 0xe2, 0x59, 0xd7, 0x31, 0x03, 0x39, 0x47, 0x51, 0x88, 0xe8, 0x7f, 0xa9, 0x39, + 0x4a, 0xc4, 0x22, 0x47, 0xac, 0x4e, 0x32, 0xc7, 0x24, 0x6e, 0x39, 0x5b, 0xe6, 0xc8, 0xc8, 0x16, + 0xb8, 0x11, 0x72, 0x53, 0xaa, 0x2a, 0xe3, 0x26, 0x1d, 0x97, 0x94, 0x04, 0x4f, 0x97, 0xb6, 0x18, + 0xa4, 0xa8, 0x35, 0xbc, 0xb4, 0x63, 0x1a, 0x38, 0x2f, 0xcd, 0xb0, 0xa2, 0x8e, 0xc8, 0xee, 0x83, + 0x12, 0xd7, 0xa2, 0x5a, 0xe2, 0xc8, 0xda, 0xf8, 0x6a, 0xd6, 0xfb, 0x4e, 0xac, 0x04, 0x92, 0xa5, + 0x4b, 0xd5, 0xf9, 0x71, 0x25, 0x90, 0x28, 0x5a, 0x7d, 0x3e, 0x51, 0xa8, 0x54, 0xab, 0xc3, 0x52, + 0x66, 0x86, 0xa8, 0x0c, 0x79, 0x8a, 0x4f, 0x64, 0x69, 0xb2, 0x47, 0xf4, 0x00, 0x94, 0x38, 0x29, + 0xf2, 0x40, 0xdd, 0x9c, 0x20, 0x19, 0x7a, 0xdf, 0x4b, 0xfb, 0x3a, 0x07, 0x4a, 0xfc, 0x07, 0xba, + 0x0c, 0x4a, 0xc7, 0xf4, 0x5b, 0x38, 0x30, 0x88, 0xc3, 0x89, 0x14, 0xbd, 0x28, 0x06, 0x0e, 0x1c, + 0x74, 0x1f, 0xc0, 0x0a, 0x7b, 0x46, 0x1b, 0x9f, 0xe2, 0x36, 0x55, 0xa7, 0x79, 0x6c, 0x57, 0x13, + 0x74, 0x71, 0xdb, 0x11, 0x11, 0x1e, 0x32, 0x4b, 0x5d, 0xb1, 0xc2, 0x1e, 0x7f, 0xa2, 0xa8, 0x06, + 0x25, 0x8a, 0xdb, 0xed, 0x08, 0x22, 0x3f, 0x29, 0x04, 0x30, 0x2f, 0x81, 0xa1, 0xbd, 0xca, 0x41, + 0x29, 0xa1, 0x1c, 0x48, 0x85, 0x39, 0x59, 0xdf, 0x72, 0xc2, 0xd1, 0x2b, 0x6a, 0x40, 0x31, 0x16, + 0x23, 0x31, 0xdb, 0x4b, 0x15, 0xd1, 0x94, 0x55, 0x58, 0x53, 0x16, 0x73, 0xec, 0x79, 0xc4, 0xad, + 0xed, 0xbc, 0x7e, 0xbb, 0x31, 0xf5, 0xd5, 0x4f, 0x1b, 0x5b, 0x0d, 0x12, 0x34, 0x43, 0xab, 0x62, + 0x7b, 0x9d, 0xaa, 0xec, 0xe0, 0xc4, 0xcf, 0x1d, 0xea, 0xb4, 0xaa, 0x41, 0xaf, 0x8b, 0x29, 0x77, + 0xa0, 0x7a, 0x0c, 0xae, 0x7d, 0x96, 0x03, 0x34, 0x28, 0x3d, 0x68, 0x13, 0x16, 0x12, 0x2a, 0x16, + 0x27, 0x74, 0xbe, 0x3f, 0x78, 0xe0, 0xa0, 0x27, 0x50, 0x8c, 0xf5, 0x4d, 0x4c, 0xf2, 0xd6, 0x39, + 0xf4, 0x8d, 0x6b, 0xfc, 0x94, 0x1e, 0x43, 0x68, 0x2e, 0x2c, 0x0f, 0x18, 0xa1, 0x15, 0x98, 0x75, + 0xb0, 0xeb, 0x75, 0xe4, 0x04, 0xc4, 0x0b, 0xda, 0x83, 0x39, 0xe9, 0x36, 0x64, 0xeb, 0x0c, 0x2c, + 0x44, 0x9a, 0x30, 0xf2, 0xd4, 0xbe, 0xc9, 0xc1, 0x52, 0x46, 0x80, 0xd0, 0x1e, 0x14, 0x68, 0x60, + 0x06, 0x21, 0xe5, 0x7c, 0x8b, 0xa3, 0x0f, 0xad, 0xd8, 0xed, 0x88, 0xbb, 0xe8, 0xd2, 0x95, 0x9d, + 0x36, 0x7c, 0x93, 0x1a, 0x4d, 0x93, 0x36, 0xf9, 0x04, 0x15, 0xb9, 0x6d, 0x1f, 0x99, 0xb4, 0xc9, + 0x6a, 0xc1, 0x26, 0x0e, 0x6f, 0xea, 0x14, 0x9d, 0x3d, 0xa2, 0x7f, 0xc0, 0x2c, 0xff, 0x5b, 0xb6, + 0x61, 0x9b, 0x13, 0x08, 0xa6, 0x2e, 0x3c, 0xb4, 0x2e, 0x28, 0xf1, 0xd8, 0xe8, 0x12, 0x78, 0x18, + 0x91, 0x88, 0x8c, 0xdd, 0x1c, 0x95, 0x31, 0x06, 0x79, 0x48, 0x3a, 0x44, 0xe0, 0xca, 0xc4, 0x49, + 0xc6, 0xef, 0x72, 0x70, 0x71, 0xa8, 0xca, 0xfe, 0x4e, 0xc9, 0xbb, 0x97, 0x4e, 0xde, 0xf6, 0xc4, + 0x67, 0x43, 0x14, 0xd0, 0x17, 0x39, 0x58, 0xca, 0xfc, 0x35, 0x3a, 0x93, 0x87, 0xe9, 0x4c, 0xee, + 0x8c, 0xde, 0x7b, 0x11, 0xf0, 0x19, 0xf9, 0x64, 0x54, 0x84, 0x1a, 0x02, 0x9c, 0xc7, 0x55, 0xd4, + 0x8b, 0x84, 0x3e, 0xe1, 0xef, 0xda, 0xa7, 0x79, 0x28, 0x46, 0x72, 0x3d, 0x7a, 0x52, 0x03, 0x15, + 0x3b, 0x3d, 0xa4, 0x62, 0x57, 0xa1, 0x40, 0xe8, 0xa1, 0xe7, 0x36, 0x24, 0x91, 0x7c, 0x43, 0xf7, + 0xa0, 0x78, 0x12, 0x9a, 0x6e, 0x40, 0x82, 0x1e, 0x4f, 0xa3, 0x52, 0xdb, 0x64, 0x53, 0xfc, 0xe1, + 0xed, 0xc6, 0x65, 0xa1, 0x20, 0xd4, 0x69, 0x55, 0x88, 0x57, 0xed, 0x98, 0x41, 0xb3, 0x72, 0x88, + 0x1b, 0xa6, 0xdd, 0xdb, 0xc7, 0xb6, 0x1e, 0x3b, 0xb1, 0xb6, 0x04, 0xbb, 0x81, 0xdf, 0x13, 0xa7, + 0x07, 0x6f, 0xf6, 0x27, 0xc4, 0x00, 0xee, 0xc7, 0x4f, 0x0e, 0xf4, 0x4f, 0x28, 0x74, 0x4c, 0xbf, + 0x41, 0x5c, 0xde, 0xcb, 0x4f, 0x08, 0x20, 0x5d, 0xd0, 0x0b, 0x50, 0xed, 0xb0, 0x13, 0xb6, 0xc5, + 0x81, 0x5b, 0x0f, 0x5d, 0x87, 0xb8, 0x0d, 0x83, 0xa3, 0xf3, 0xa6, 0x7d, 0x42, 0xb8, 0xd5, 0x3e, + 0xc8, 0x43, 0x81, 0xf1, 0x2f, 0x06, 0xa1, 0x05, 0x50, 0x4a, 0x9c, 0x78, 0x2c, 0x93, 0xb4, 0xd7, + 0xb1, 0xbc, 0xb6, 0x5c, 0x08, 0xf9, 0xc6, 0x4a, 0x59, 0xa4, 0x60, 0x7a, 0x72, 0x4a, 0xe1, 0x81, + 0x10, 0xcc, 0x30, 0x8d, 0x96, 0x7b, 0x9b, 0x3f, 0x6b, 0xdf, 0xe6, 0x45, 0x7d, 0xf3, 0xfe, 0x6a, + 0xf4, 0x06, 0xb8, 0xc8, 0xd6, 0xd6, 0xb0, 0xc2, 0x1e, 0xa7, 0x2e, 0xea, 0xb3, 0x84, 0xd6, 0xc2, + 0x1e, 0xba, 0x06, 0x0b, 0xf8, 0x25, 0xb6, 0x43, 0xb6, 0x83, 0x8e, 0xfb, 0xf0, 0xe9, 0xc1, 0x5f, + 0xbf, 0x01, 0xe2, 0xb8, 0x67, 0xcf, 0x1d, 0xf7, 0xc0, 0xce, 0x2d, 0x0c, 0xd9, 0xb9, 0x7f, 0x83, + 0x7c, 0x1d, 0xe3, 0xf3, 0x2c, 0x24, 0xb3, 0xcf, 0xa8, 0x49, 0x31, 0xab, 0x26, 0x7f, 0x87, 0x8b, + 0x75, 0x8c, 0x0d, 0x1f, 0xdb, 0xa4, 0x4b, 0xb0, 0x1b, 0x18, 0xa6, 0xe3, 0xf8, 0x98, 0x52, 0xfe, + 0x45, 0xa4, 0xc8, 0xaf, 0x90, 0x0b, 0x75, 0x8c, 0xf5, 0xc8, 0xe2, 0x81, 0x30, 0x88, 0x74, 0x08, + 0xfa, 0x3a, 0x74, 0x09, 0x8a, 0xbc, 0x91, 0x66, 0x11, 0x94, 0xc4, 0x69, 0xce, 0xdf, 0x0f, 0x1c, + 0xed, 0xc7, 0x7c, 0x52, 0x61, 0x7e, 0xeb, 0xb5, 0x1c, 0xc8, 0xe7, 0xcc, 0x90, 0x7c, 0x3e, 0x85, + 0xc5, 0xa8, 0xf9, 0x33, 0x1c, 0xdc, 0x0e, 0x4c, 0xf9, 0x81, 0xbe, 0x3d, 0x4a, 0xcc, 0x22, 0x25, + 0xda, 0x67, 0x0e, 0xfa, 0x42, 0x37, 0xf9, 0xca, 0x8a, 0xb7, 0x6b, 0xf6, 0xbc, 0x30, 0x38, 0x57, + 0xf1, 0x0a, 0x97, 0x3f, 0xf6, 0xf2, 0x1e, 0xc3, 0x7c, 0xea, 0x02, 0xe4, 0x3a, 0x2c, 0xa6, 0x16, + 0x80, 0x9d, 0x87, 0x79, 0xb6, 0x4e, 0xc9, 0x15, 0xe0, 0x27, 0x5d, 0xbc, 0x03, 0x44, 0x03, 0xa5, + 0xe8, 0x4a, 0xb4, 0x05, 0xa8, 0xf6, 0x5f, 0x58, 0xca, 0x7c, 0x76, 0x7f, 0x24, 0xe0, 0x63, 0x98, + 0x4f, 0xdd, 0x75, 0x7c, 0x1c, 0xd4, 0x9d, 0x44, 0xd3, 0x2f, 0x81, 0xd3, 0x1e, 0xb9, 0x41, 0x0f, + 0x34, 0x78, 0x27, 0x87, 0xd6, 0xa0, 0x28, 0x49, 0x23, 0x97, 0xf8, 0x5d, 0x7b, 0x00, 0xea, 0x59, + 0x37, 0x6b, 0x13, 0x46, 0xa1, 0xdd, 0x82, 0xe5, 0x81, 0xdb, 0x86, 0x94, 0x98, 0xe7, 0xfb, 0x62, + 0x7e, 0xf3, 0x90, 0x19, 0x67, 0x1a, 0x15, 0xb4, 0x04, 0xa5, 0x67, 0x2e, 0xed, 0x62, 0x9b, 0xd4, + 0x09, 0x76, 0xca, 0x53, 0x08, 0xa0, 0x50, 0xf3, 0xbc, 0x16, 0x76, 0xca, 0x39, 0x54, 0x82, 0xb9, + 0x27, 0x66, 0x60, 0x37, 0xb1, 0x53, 0x9e, 0x46, 0x0b, 0xa0, 0xec, 0xb1, 0xd0, 0xda, 0x6d, 0xec, + 0x94, 0xf3, 0xbb, 0x0d, 0x28, 0x88, 0x9b, 0x0b, 0xf4, 0x22, 0x7e, 0xba, 0x31, 0xa2, 0xd5, 0x4b, + 0x5e, 0x7b, 0xae, 0x6d, 0x8d, 0x37, 0x14, 0xd7, 0x21, 0x3b, 0xb9, 0xda, 0xff, 0x5f, 0xbf, 0x5b, + 0xcf, 0xbd, 0x79, 0xb7, 0x9e, 0xfb, 0xf9, 0xdd, 0x7a, 0xee, 0xd5, 0xfb, 0xf5, 0xa9, 0x37, 0xef, + 0xd7, 0xa7, 0xbe, 0x7f, 0xbf, 0x3e, 0xf5, 0x7c, 0x3f, 0xf1, 0x85, 0x70, 0x10, 0xe1, 0x1d, 0x9a, + 0x16, 0xad, 0xc6, 0xe8, 0x77, 0x6c, 0xcf, 0xc7, 0xc9, 0xd7, 0xa6, 0x49, 0xdc, 0xe8, 0x1a, 0x99, + 0x7f, 0x43, 0x58, 0x05, 0x7e, 0x37, 0xfb, 0xd7, 0x5f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x1a, 0x42, + 0x1d, 0x82, 0x67, 0x16, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -5157,7 +5157,7 @@ func (m *SpotOrderUpdate) Unmarshal(dAtA []byte) error { if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field OrderHash", wireType) } - var byteLen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -5167,25 +5167,23 @@ func (m *SpotOrderUpdate) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - byteLen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if byteLen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + byteLen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.OrderHash = append(m.OrderHash[:0], dAtA[iNdEx:postIndex]...) - if m.OrderHash == nil { - m.OrderHash = []byte{} - } + m.OrderHash = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { @@ -5443,7 +5441,7 @@ func (m *DerivativeOrderUpdate) Unmarshal(dAtA []byte) error { if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field OrderHash", wireType) } - var byteLen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -5453,25 +5451,23 @@ func (m *DerivativeOrderUpdate) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - byteLen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if byteLen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + byteLen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.OrderHash = append(m.OrderHash[:0], dAtA[iNdEx:postIndex]...) - if m.OrderHash == nil { - m.OrderHash = []byte{} - } + m.OrderHash = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { @@ -6366,7 +6362,7 @@ func (m *SpotTrade) Unmarshal(dAtA []byte) error { if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field OrderHash", wireType) } - var byteLen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -6376,25 +6372,23 @@ func (m *SpotTrade) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - byteLen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if byteLen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthQuery } - postIndex := iNdEx + byteLen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthQuery } if postIndex > l { return io.ErrUnexpectedEOF } - m.OrderHash = append(m.OrderHash[:0], dAtA[iNdEx:postIndex]...) - if m.OrderHash == nil { - m.OrderHash = []byte{} - } + m.OrderHash = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 9: if wireType != 2 { diff --git a/chain/stream/types/request.go b/chain/stream/types/request.go deleted file mode 100644 index 3bf542aa..00000000 --- a/chain/stream/types/request.go +++ /dev/null @@ -1,54 +0,0 @@ -package types - -func NewFullStreamRequest() *StreamRequest { - return &StreamRequest{ - BankBalancesFilter: &BankBalancesFilter{ - Accounts: []string{}, - }, - SpotOrdersFilter: &OrdersFilter{ - MarketIds: []string{"*"}, - SubaccountIds: []string{"*"}, - }, - DerivativeOrdersFilter: &OrdersFilter{ - MarketIds: []string{"*"}, - SubaccountIds: []string{"*"}, - }, - SpotTradesFilter: &TradesFilter{ - MarketIds: []string{"*"}, - SubaccountIds: []string{"*"}, - }, - SubaccountDepositsFilter: &SubaccountDepositsFilter{ - SubaccountIds: []string{"*"}, - }, - DerivativeOrderbooksFilter: &OrderbookFilter{ - MarketIds: []string{"*"}, - }, - SpotOrderbooksFilter: &OrderbookFilter{ - MarketIds: []string{"*"}, - }, - PositionsFilter: &PositionsFilter{ - SubaccountIds: []string{"*"}, - MarketIds: []string{"*"}, - }, - DerivativeTradesFilter: &TradesFilter{ - SubaccountIds: []string{"*"}, - MarketIds: []string{"*"}, - }, - OraclePriceFilter: &OraclePriceFilter{ - Symbol: []string{"*"}, - }, - } -} - -// Empty query matches any set of events. -type Empty struct { -} - -// Matches always returns true. -func (Empty) Matches(tags map[string][]string) (bool, error) { - return true, nil -} - -func (Empty) String() string { - return "empty" -} diff --git a/chain/stream/types/response.go b/chain/stream/types/response.go deleted file mode 100644 index 3a215960..00000000 --- a/chain/stream/types/response.go +++ /dev/null @@ -1,84 +0,0 @@ -package types - -import ( - "fmt" - "time" -) - -type StreamResponseMap struct { - tradeEventsCounter uint64 - BlockHeight uint64 - BlockTime time.Time - BankBalancesByAccount map[string][]*BankBalance - SpotOrdersBySubaccount map[string][]*SpotOrderUpdate - SpotOrdersByMarketID map[string][]*SpotOrderUpdate - DerivativeOrdersBySubaccount map[string][]*DerivativeOrderUpdate - DerivativeOrdersByMarketID map[string][]*DerivativeOrderUpdate - SpotOrderbookUpdatesByMarketID map[string][]*OrderbookUpdate - DerivativeOrderbookUpdatesByMarketID map[string][]*OrderbookUpdate - SubaccountDepositsBySubaccountID map[string][]*SubaccountDeposits - SpotTradesBySubaccount map[string][]*SpotTrade - SpotTradesByMarketID map[string][]*SpotTrade - DerivativeTradesBySubaccount map[string][]*DerivativeTrade - DerivativeTradesByMarketID map[string][]*DerivativeTrade - PositionsBySubaccount map[string][]*Position - PositionsByMarketID map[string][]*Position - OraclePriceBySymbol map[string][]*OraclePrice -} - -func NewStreamResponseMap() *StreamResponseMap { - return &StreamResponseMap{ - BankBalancesByAccount: map[string][]*BankBalance{}, - SpotOrdersBySubaccount: map[string][]*SpotOrderUpdate{}, - SpotOrdersByMarketID: map[string][]*SpotOrderUpdate{}, - DerivativeOrdersBySubaccount: map[string][]*DerivativeOrderUpdate{}, - DerivativeOrdersByMarketID: map[string][]*DerivativeOrderUpdate{}, - SpotOrderbookUpdatesByMarketID: map[string][]*OrderbookUpdate{}, - DerivativeOrderbookUpdatesByMarketID: map[string][]*OrderbookUpdate{}, - SubaccountDepositsBySubaccountID: map[string][]*SubaccountDeposits{}, - SpotTradesBySubaccount: map[string][]*SpotTrade{}, - SpotTradesByMarketID: map[string][]*SpotTrade{}, - DerivativeTradesBySubaccount: map[string][]*DerivativeTrade{}, - DerivativeTradesByMarketID: map[string][]*DerivativeTrade{}, - PositionsBySubaccount: map[string][]*Position{}, - PositionsByMarketID: map[string][]*Position{}, - OraclePriceBySymbol: map[string][]*OraclePrice{}, - } -} - -func NewChainStreamResponse() *StreamResponse { - return &StreamResponse{ - BankBalances: []*BankBalance{}, - SubaccountDeposits: []*SubaccountDeposits{}, - SpotTrades: []*SpotTrade{}, - DerivativeTrades: []*DerivativeTrade{}, - SpotOrders: []*SpotOrderUpdate{}, - DerivativeOrders: []*DerivativeOrderUpdate{}, - SpotOrderbookUpdates: []*OrderbookUpdate{}, - DerivativeOrderbookUpdates: []*OrderbookUpdate{}, - Positions: []*Position{}, - OraclePrices: []*OraclePrice{}, - } -} - -func (m *StreamRequest) Validate() error { - if m.BankBalancesFilter == nil && - m.SubaccountDepositsFilter == nil && - m.SpotTradesFilter == nil && - m.DerivativeTradesFilter == nil && - m.SpotOrdersFilter == nil && - m.DerivativeOrdersFilter == nil && - m.SpotOrderbooksFilter == nil && - m.DerivativeOrderbooksFilter == nil && - m.PositionsFilter == nil && - m.OraclePriceFilter == nil { - return fmt.Errorf("at least one filter must be set") - } - return nil -} - -func (m *StreamResponseMap) NextTradeEventNumber() (tradeNumber uint64) { - currentTradesNumber := m.tradeEventsCounter - m.tradeEventsCounter++ - return currentTradesNumber -} diff --git a/chain/tokenfactory/types/authorityMetadata.go b/chain/tokenfactory/types/authorityMetadata.go deleted file mode 100644 index b45bffca..00000000 --- a/chain/tokenfactory/types/authorityMetadata.go +++ /dev/null @@ -1,15 +0,0 @@ -package types - -import ( - sdk "github.com/cosmos/cosmos-sdk/types" -) - -func (metadata DenomAuthorityMetadata) Validate() error { - if metadata.Admin != "" { - _, err := sdk.AccAddressFromBech32(metadata.Admin) - if err != nil { - return err - } - } - return nil -} diff --git a/chain/tokenfactory/types/authorityMetadata.pb.go b/chain/tokenfactory/types/authorityMetadata.pb.go index 51337590..381387ae 100644 --- a/chain/tokenfactory/types/authorityMetadata.pb.go +++ b/chain/tokenfactory/types/authorityMetadata.pb.go @@ -30,6 +30,8 @@ const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package type DenomAuthorityMetadata struct { // Can be empty for no admin, or a valid injective address Admin string `protobuf:"bytes,1,opt,name=admin,proto3" json:"admin,omitempty" yaml:"admin"` + // true if the admin can burn tokens from other addresses + AdminBurnAllowed bool `protobuf:"varint,2,opt,name=admin_burn_allowed,json=adminBurnAllowed,proto3" json:"admin_burn_allowed,omitempty" yaml:"admin_burn_allowed"` } func (m *DenomAuthorityMetadata) Reset() { *m = DenomAuthorityMetadata{} } @@ -72,6 +74,13 @@ func (m *DenomAuthorityMetadata) GetAdmin() string { return "" } +func (m *DenomAuthorityMetadata) GetAdminBurnAllowed() bool { + if m != nil { + return m.AdminBurnAllowed + } + return false +} + func init() { proto.RegisterType((*DenomAuthorityMetadata)(nil), "injective.tokenfactory.v1beta1.DenomAuthorityMetadata") } @@ -81,24 +90,27 @@ func init() { } var fileDescriptor_525494b77b96b2d3 = []byte{ - // 258 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x32, 0xcb, 0xcc, 0xcb, 0x4a, - 0x4d, 0x2e, 0xc9, 0x2c, 0x4b, 0xd5, 0x2f, 0xc9, 0xcf, 0x4e, 0xcd, 0x4b, 0x4b, 0x4c, 0x2e, 0xc9, - 0x2f, 0xaa, 0xd4, 0x2f, 0x33, 0x4c, 0x4a, 0x2d, 0x49, 0x34, 0xd4, 0x4f, 0x2c, 0x2d, 0xc9, 0xc8, - 0x2f, 0xca, 0x2c, 0xa9, 0xf4, 0x4d, 0x2d, 0x49, 0x4c, 0x49, 0x2c, 0x49, 0xd4, 0x2b, 0x28, 0xca, - 0x2f, 0xc9, 0x17, 0x92, 0x83, 0xeb, 0xd3, 0x43, 0xd6, 0xa7, 0x07, 0xd5, 0x27, 0x25, 0x92, 0x9e, - 0x9f, 0x9e, 0x0f, 0x56, 0xaa, 0x0f, 0x62, 0x41, 0x74, 0x49, 0xc9, 0x25, 0xe7, 0x17, 0xe7, 0xe6, - 0x17, 0xeb, 0x27, 0x25, 0x16, 0xa7, 0xc2, 0xad, 0x48, 0xce, 0xcf, 0xcc, 0x83, 0xc8, 0x2b, 0xb9, - 0x71, 0x89, 0xb9, 0xa4, 0xe6, 0xe5, 0xe7, 0x3a, 0xa2, 0xdb, 0x2a, 0xa4, 0xc6, 0xc5, 0x9a, 0x98, - 0x92, 0x9b, 0x99, 0x27, 0xc1, 0xa8, 0xc0, 0xa8, 0xc1, 0xe9, 0x24, 0xf0, 0xe9, 0x9e, 0x3c, 0x4f, - 0x65, 0x62, 0x6e, 0x8e, 0x95, 0x12, 0x58, 0x58, 0x29, 0x08, 0x22, 0x6d, 0xc5, 0xf2, 0x62, 0x81, - 0x3c, 0xa3, 0x53, 0xce, 0x89, 0x47, 0x72, 0x8c, 0x17, 0x1e, 0xc9, 0x31, 0x3e, 0x78, 0x24, 0xc7, - 0x38, 0xe1, 0xb1, 0x1c, 0xc3, 0x85, 0xc7, 0x72, 0x0c, 0x37, 0x1e, 0xcb, 0x31, 0x44, 0x05, 0xa5, - 0x67, 0x96, 0x64, 0x94, 0x26, 0xe9, 0x25, 0xe7, 0xe7, 0xea, 0x7b, 0xc2, 0xbc, 0xe0, 0x93, 0x98, - 0x54, 0xac, 0x0f, 0xf7, 0x90, 0x6e, 0x72, 0x7e, 0x51, 0x2a, 0x32, 0x37, 0x23, 0x31, 0x33, 0x4f, - 0x3f, 0x37, 0x3f, 0xa5, 0x34, 0x27, 0xb5, 0x18, 0x35, 0x94, 0x4a, 0x2a, 0x0b, 0x52, 0x8b, 0x93, - 0xd8, 0xc0, 0x8e, 0x37, 0x06, 0x04, 0x00, 0x00, 0xff, 0xff, 0x17, 0x16, 0x28, 0x7a, 0x4c, 0x01, - 0x00, 0x00, + // 305 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x5c, 0x90, 0xb1, 0x4a, 0x33, 0x41, + 0x10, 0xc7, 0xb3, 0x1f, 0x9f, 0xa2, 0x87, 0x45, 0x38, 0x44, 0x62, 0xc0, 0x4d, 0xb8, 0x42, 0xd2, + 0x78, 0x4b, 0x10, 0x2c, 0xd2, 0xe5, 0xb0, 0x11, 0xb5, 0x49, 0x69, 0x13, 0x66, 0xf7, 0xd6, 0x64, + 0xf5, 0x76, 0x27, 0xec, 0xee, 0x45, 0xee, 0x2d, 0x04, 0x5f, 0xc0, 0xc7, 0xb1, 0x4c, 0x69, 0x15, + 0x24, 0x69, 0xac, 0xf3, 0x04, 0xe2, 0x9d, 0x86, 0xc4, 0x6e, 0xe6, 0x3f, 0xf3, 0xe3, 0x0f, 0xbf, + 0xe0, 0x42, 0x99, 0x07, 0x29, 0xbc, 0x9a, 0x4a, 0xe6, 0xf1, 0x51, 0x9a, 0x7b, 0x10, 0x1e, 0x6d, + 0xc1, 0xa6, 0x5d, 0x2e, 0x3d, 0x74, 0x19, 0xe4, 0x7e, 0x8c, 0x56, 0xf9, 0xe2, 0x56, 0x7a, 0x48, + 0xc1, 0x43, 0x3c, 0xb1, 0xe8, 0x31, 0xa4, 0x6b, 0x2e, 0xde, 0xe4, 0xe2, 0x1f, 0xae, 0x79, 0x38, + 0xc2, 0x11, 0x96, 0xaf, 0xec, 0x7b, 0xaa, 0xa8, 0x26, 0x15, 0xe8, 0x34, 0x3a, 0xc6, 0xc1, 0xc9, + 0x75, 0x85, 0x40, 0x65, 0xaa, 0x7b, 0xf4, 0x42, 0x82, 0xa3, 0x4b, 0x69, 0x50, 0xf7, 0xff, 0xd6, + 0x86, 0xa7, 0xc1, 0x0e, 0xa4, 0x5a, 0x99, 0x06, 0x69, 0x93, 0xce, 0x7e, 0x52, 0x5f, 0xcd, 0x5b, + 0x07, 0x05, 0xe8, 0xac, 0x17, 0x95, 0x71, 0x34, 0xa8, 0xce, 0xe1, 0x75, 0x10, 0x96, 0xc3, 0x90, + 0xe7, 0xd6, 0x0c, 0x21, 0xcb, 0xf0, 0x49, 0xa6, 0x8d, 0x7f, 0x6d, 0xd2, 0xd9, 0x4b, 0x4e, 0x56, + 0xf3, 0xd6, 0xf1, 0x06, 0xb4, 0xf5, 0x13, 0x0d, 0xea, 0x65, 0x98, 0xe4, 0xd6, 0xf4, 0xab, 0xa8, + 0xf7, 0xff, 0xf3, 0xb5, 0x45, 0x92, 0xec, 0x6d, 0x41, 0xc9, 0x6c, 0x41, 0xc9, 0xc7, 0x82, 0x92, + 0xe7, 0x25, 0xad, 0xcd, 0x96, 0xb4, 0xf6, 0xbe, 0xa4, 0xb5, 0xbb, 0xc1, 0x48, 0xf9, 0x71, 0xce, + 0x63, 0x81, 0x9a, 0x5d, 0xfd, 0x0a, 0xb9, 0x01, 0xee, 0xd8, 0x5a, 0xcf, 0x99, 0x40, 0x2b, 0x37, + 0xd7, 0x31, 0x28, 0xc3, 0x34, 0xa6, 0x79, 0x26, 0xdd, 0xb6, 0x73, 0x5f, 0x4c, 0xa4, 0xe3, 0xbb, + 0xa5, 0x8a, 0xf3, 0xaf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xf5, 0x06, 0x42, 0x33, 0x9a, 0x01, 0x00, + 0x00, } func (this *DenomAuthorityMetadata) Equal(that interface{}) bool { @@ -123,6 +135,9 @@ func (this *DenomAuthorityMetadata) Equal(that interface{}) bool { if this.Admin != that1.Admin { return false } + if this.AdminBurnAllowed != that1.AdminBurnAllowed { + return false + } return true } func (m *DenomAuthorityMetadata) Marshal() (dAtA []byte, err error) { @@ -145,6 +160,16 @@ func (m *DenomAuthorityMetadata) MarshalToSizedBuffer(dAtA []byte) (int, error) _ = i var l int _ = l + if m.AdminBurnAllowed { + i-- + if m.AdminBurnAllowed { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x10 + } if len(m.Admin) > 0 { i -= len(m.Admin) copy(dAtA[i:], m.Admin) @@ -176,6 +201,9 @@ func (m *DenomAuthorityMetadata) Size() (n int) { if l > 0 { n += 1 + l + sovAuthorityMetadata(uint64(l)) } + if m.AdminBurnAllowed { + n += 2 + } return n } @@ -246,6 +274,26 @@ func (m *DenomAuthorityMetadata) Unmarshal(dAtA []byte) error { } m.Admin = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AdminBurnAllowed", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAuthorityMetadata + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.AdminBurnAllowed = bool(v != 0) default: iNdEx = preIndex skippy, err := skipAuthorityMetadata(dAtA[iNdEx:]) diff --git a/chain/tokenfactory/types/denoms.go b/chain/tokenfactory/types/denoms.go deleted file mode 100644 index a31d5cef..00000000 --- a/chain/tokenfactory/types/denoms.go +++ /dev/null @@ -1,117 +0,0 @@ -package types - -import ( - "context" - "fmt" - "strings" - - "cosmossdk.io/errors" - sdk "github.com/cosmos/cosmos-sdk/types" - banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" -) - -const ( - ModuleDenomPrefix = "factory" - // See the TokenFactory readme for a derivation of these. - // TL;DR, MaxSubdenomLength + MaxHrpLength = 60 comes from SDK max denom length = 128 - // and the structure of tokenfactory denoms. - MaxSubdenomLength = 44 - MaxHrpLength = 16 - // MaxCreatorLength = 59 + MaxHrpLength - MaxCreatorLength = 59 + MaxHrpLength - MinSubdenomLength = 1 -) - -// GetTokenDenom constructs a denom string for tokens created by tokenfactory -// based on an input creator address and a subdenom -// The denom constructed is factory/{creator}/{subdenom} -func GetTokenDenom(creator, subdenom string) (string, error) { - if len(subdenom) > MaxSubdenomLength { - return "", ErrSubdenomTooLong - } - if len(subdenom) < MinSubdenomLength { - return "", ErrSubdenomTooShort - } - - strParts := strings.Split(subdenom, "/") - - for idx := range strParts { - if len(strParts[idx]) < MinSubdenomLength { - return "", ErrSubdenomNestedTooShort - } - } - - if len(creator) > MaxCreatorLength { - return "", ErrCreatorTooLong - } - if strings.Contains(creator, "/") || len(creator) < 1 { - return "", ErrInvalidCreator - } - - // ensure creator address is in lowercase Bech32 form - creatorAddr, err := sdk.AccAddressFromBech32(creator) - if err != nil { - return "", err - } - - denom := strings.Join([]string{ModuleDenomPrefix, creatorAddr.String(), subdenom}, "/") - return denom, sdk.ValidateDenom(denom) -} - -// DeconstructDenom takes a token denom string and verifies that it is a valid -// denom of the tokenfactory module, and is of the form `factory/{creator}/{subdenom}` -// If valid, it returns the creator address and subdenom -func DeconstructDenom(denom string) (creator, subdenom string, err error) { - err = sdk.ValidateDenom(denom) - if err != nil { - return "", "", err - } - - strParts := strings.Split(denom, "/") - if len(strParts) < 3 { - return "", "", errors.Wrapf(ErrInvalidDenom, "not enough parts of denom %s", denom) - } - - if strParts[0] != ModuleDenomPrefix { - return "", "", errors.Wrapf(ErrInvalidDenom, "denom prefix is incorrect. Is: %s. Should be: %s", strParts[0], ModuleDenomPrefix) - } - - creator = strParts[1] - creatorAddr, err := sdk.AccAddressFromBech32(creator) - if err != nil { - return "", "", errors.Wrapf(ErrInvalidDenom, "Invalid creator address (%s)", err) - } - - if len(strParts[2]) < MinSubdenomLength { - return "", "", errors.Wrapf(ErrSubdenomTooShort, "subdenom too short. Has length of: %d. Should have length at least of: %d", len(strParts[2]), MinSubdenomLength) - } - - if len(strParts) > 3 { - for i := 2; i <= len(strParts)-1; i++ { - if len(strParts[i]) < MinSubdenomLength { - return "", "", errors.Wrapf(ErrSubdenomNestedTooShort, "nested subdenom too short. Has length of: %d. Should have length at least of: %d", len(strParts[i]), MinSubdenomLength) - } - } - } - - // Handle the case where a denom has a slash in its subdenom. For example, - // when we did the split, we'd turn factory/accaddr/atomderivative/sikka into ["factory", "accaddr", "atomderivative", "sikka"] - // So we have to join [2:] with a "/" as the delimiter to get back the correct subdenom which should be "atomderivative/sikka" - subdenom = strings.Join(strParts[2:], "/") - - return creatorAddr.String(), subdenom, nil -} - -// NewTokenFactoryDenomMintCoinsRestriction creates and returns a MintingRestrictionFn that only allows minting of -// valid tokenfactory denoms -func NewTokenFactoryDenomMintCoinsRestriction() banktypes.MintingRestrictionFn { - return func(ctx context.Context, coinsToMint sdk.Coins) error { - for _, coin := range coinsToMint { - _, _, err := DeconstructDenom(coin.Denom) - if err != nil { - return fmt.Errorf("does not have permission to mint %s", coin.Denom) - } - } - return nil - } -} diff --git a/chain/tokenfactory/types/errors.go b/chain/tokenfactory/types/errors.go deleted file mode 100644 index 48ebec3a..00000000 --- a/chain/tokenfactory/types/errors.go +++ /dev/null @@ -1,25 +0,0 @@ -package types - -// DONTCOVER - -import ( - "fmt" - - "cosmossdk.io/errors" -) - -// x/tokenfactory module sentinel errors -var ( - ErrDenomExists = errors.Register(ModuleName, 2, "attempting to create a denom that already exists (has bank metadata)") - ErrUnauthorized = errors.Register(ModuleName, 3, "unauthorized account") - ErrInvalidDenom = errors.Register(ModuleName, 4, "invalid denom") - ErrInvalidCreator = errors.Register(ModuleName, 5, "invalid creator") - ErrInvalidAuthorityMetadata = errors.Register(ModuleName, 6, "invalid authority metadata") - ErrInvalidGenesis = errors.Register(ModuleName, 7, "invalid genesis") - ErrSubdenomTooLong = errors.Register(ModuleName, 8, fmt.Sprintf("subdenom too long, max length is %d bytes", MaxSubdenomLength)) - ErrSubdenomTooShort = errors.Register(ModuleName, 9, fmt.Sprintf("subdenom too short, min length is %d bytes", MinSubdenomLength)) - ErrSubdenomNestedTooShort = errors.Register(ModuleName, 10, fmt.Sprintf("nested subdenom too short, each one should have at least %d bytes", MinSubdenomLength)) - ErrCreatorTooLong = errors.Register(ModuleName, 11, fmt.Sprintf("creator too long, max length is %d bytes", MaxCreatorLength)) - ErrDenomDoesNotExist = errors.Register(ModuleName, 12, "denom does not exist") - ErrAmountNotPositive = errors.Register(ModuleName, 13, "amount has to be positive") -) diff --git a/chain/tokenfactory/types/events.pb.go b/chain/tokenfactory/types/events.pb.go index 8d71b85d..d6e06990 100644 --- a/chain/tokenfactory/types/events.pb.go +++ b/chain/tokenfactory/types/events.pb.go @@ -25,23 +25,23 @@ var _ = math.Inf // proto package needs to be updated. const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package -type EventCreateTFDenom struct { +type EventCreateDenom struct { Account string `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"` Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` } -func (m *EventCreateTFDenom) Reset() { *m = EventCreateTFDenom{} } -func (m *EventCreateTFDenom) String() string { return proto.CompactTextString(m) } -func (*EventCreateTFDenom) ProtoMessage() {} -func (*EventCreateTFDenom) Descriptor() ([]byte, []int) { +func (m *EventCreateDenom) Reset() { *m = EventCreateDenom{} } +func (m *EventCreateDenom) String() string { return proto.CompactTextString(m) } +func (*EventCreateDenom) ProtoMessage() {} +func (*EventCreateDenom) Descriptor() ([]byte, []int) { return fileDescriptor_b9fd0c5434c2a5b7, []int{0} } -func (m *EventCreateTFDenom) XXX_Unmarshal(b []byte) error { +func (m *EventCreateDenom) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *EventCreateTFDenom) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *EventCreateDenom) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_EventCreateTFDenom.Marshal(b, m, deterministic) + return xxx_messageInfo_EventCreateDenom.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -51,49 +51,50 @@ func (m *EventCreateTFDenom) XXX_Marshal(b []byte, deterministic bool) ([]byte, return b[:n], nil } } -func (m *EventCreateTFDenom) XXX_Merge(src proto.Message) { - xxx_messageInfo_EventCreateTFDenom.Merge(m, src) +func (m *EventCreateDenom) XXX_Merge(src proto.Message) { + xxx_messageInfo_EventCreateDenom.Merge(m, src) } -func (m *EventCreateTFDenom) XXX_Size() int { +func (m *EventCreateDenom) XXX_Size() int { return m.Size() } -func (m *EventCreateTFDenom) XXX_DiscardUnknown() { - xxx_messageInfo_EventCreateTFDenom.DiscardUnknown(m) +func (m *EventCreateDenom) XXX_DiscardUnknown() { + xxx_messageInfo_EventCreateDenom.DiscardUnknown(m) } -var xxx_messageInfo_EventCreateTFDenom proto.InternalMessageInfo +var xxx_messageInfo_EventCreateDenom proto.InternalMessageInfo -func (m *EventCreateTFDenom) GetAccount() string { +func (m *EventCreateDenom) GetAccount() string { if m != nil { return m.Account } return "" } -func (m *EventCreateTFDenom) GetDenom() string { +func (m *EventCreateDenom) GetDenom() string { if m != nil { return m.Denom } return "" } -type EventMintTFDenom struct { - RecipientAddress string `protobuf:"bytes,1,opt,name=recipient_address,json=recipientAddress,proto3" json:"recipient_address,omitempty"` - Amount types.Coin `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount"` +type EventMint struct { + Minter string `protobuf:"bytes,1,opt,name=minter,proto3" json:"minter,omitempty"` + Amount types.Coin `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount"` + Receiver string `protobuf:"bytes,3,opt,name=receiver,proto3" json:"receiver,omitempty"` } -func (m *EventMintTFDenom) Reset() { *m = EventMintTFDenom{} } -func (m *EventMintTFDenom) String() string { return proto.CompactTextString(m) } -func (*EventMintTFDenom) ProtoMessage() {} -func (*EventMintTFDenom) Descriptor() ([]byte, []int) { +func (m *EventMint) Reset() { *m = EventMint{} } +func (m *EventMint) String() string { return proto.CompactTextString(m) } +func (*EventMint) ProtoMessage() {} +func (*EventMint) Descriptor() ([]byte, []int) { return fileDescriptor_b9fd0c5434c2a5b7, []int{1} } -func (m *EventMintTFDenom) XXX_Unmarshal(b []byte) error { +func (m *EventMint) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *EventMintTFDenom) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *EventMint) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_EventMintTFDenom.Marshal(b, m, deterministic) + return xxx_messageInfo_EventMint.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -103,49 +104,57 @@ func (m *EventMintTFDenom) XXX_Marshal(b []byte, deterministic bool) ([]byte, er return b[:n], nil } } -func (m *EventMintTFDenom) XXX_Merge(src proto.Message) { - xxx_messageInfo_EventMintTFDenom.Merge(m, src) +func (m *EventMint) XXX_Merge(src proto.Message) { + xxx_messageInfo_EventMint.Merge(m, src) } -func (m *EventMintTFDenom) XXX_Size() int { +func (m *EventMint) XXX_Size() int { return m.Size() } -func (m *EventMintTFDenom) XXX_DiscardUnknown() { - xxx_messageInfo_EventMintTFDenom.DiscardUnknown(m) +func (m *EventMint) XXX_DiscardUnknown() { + xxx_messageInfo_EventMint.DiscardUnknown(m) } -var xxx_messageInfo_EventMintTFDenom proto.InternalMessageInfo +var xxx_messageInfo_EventMint proto.InternalMessageInfo -func (m *EventMintTFDenom) GetRecipientAddress() string { +func (m *EventMint) GetMinter() string { if m != nil { - return m.RecipientAddress + return m.Minter } return "" } -func (m *EventMintTFDenom) GetAmount() types.Coin { +func (m *EventMint) GetAmount() types.Coin { if m != nil { return m.Amount } return types.Coin{} } -type EventBurnDenom struct { - BurnerAddress string `protobuf:"bytes,1,opt,name=burner_address,json=burnerAddress,proto3" json:"burner_address,omitempty"` - Amount types.Coin `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount"` +func (m *EventMint) GetReceiver() string { + if m != nil { + return m.Receiver + } + return "" +} + +type EventBurn struct { + Burner string `protobuf:"bytes,1,opt,name=burner,proto3" json:"burner,omitempty"` + Amount types.Coin `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount"` + BurnFrom string `protobuf:"bytes,3,opt,name=burn_from,json=burnFrom,proto3" json:"burn_from,omitempty"` } -func (m *EventBurnDenom) Reset() { *m = EventBurnDenom{} } -func (m *EventBurnDenom) String() string { return proto.CompactTextString(m) } -func (*EventBurnDenom) ProtoMessage() {} -func (*EventBurnDenom) Descriptor() ([]byte, []int) { +func (m *EventBurn) Reset() { *m = EventBurn{} } +func (m *EventBurn) String() string { return proto.CompactTextString(m) } +func (*EventBurn) ProtoMessage() {} +func (*EventBurn) Descriptor() ([]byte, []int) { return fileDescriptor_b9fd0c5434c2a5b7, []int{2} } -func (m *EventBurnDenom) XXX_Unmarshal(b []byte) error { +func (m *EventBurn) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *EventBurnDenom) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *EventBurn) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_EventBurnDenom.Marshal(b, m, deterministic) + return xxx_messageInfo_EventBurn.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -155,49 +164,56 @@ func (m *EventBurnDenom) XXX_Marshal(b []byte, deterministic bool) ([]byte, erro return b[:n], nil } } -func (m *EventBurnDenom) XXX_Merge(src proto.Message) { - xxx_messageInfo_EventBurnDenom.Merge(m, src) +func (m *EventBurn) XXX_Merge(src proto.Message) { + xxx_messageInfo_EventBurn.Merge(m, src) } -func (m *EventBurnDenom) XXX_Size() int { +func (m *EventBurn) XXX_Size() int { return m.Size() } -func (m *EventBurnDenom) XXX_DiscardUnknown() { - xxx_messageInfo_EventBurnDenom.DiscardUnknown(m) +func (m *EventBurn) XXX_DiscardUnknown() { + xxx_messageInfo_EventBurn.DiscardUnknown(m) } -var xxx_messageInfo_EventBurnDenom proto.InternalMessageInfo +var xxx_messageInfo_EventBurn proto.InternalMessageInfo -func (m *EventBurnDenom) GetBurnerAddress() string { +func (m *EventBurn) GetBurner() string { if m != nil { - return m.BurnerAddress + return m.Burner } return "" } -func (m *EventBurnDenom) GetAmount() types.Coin { +func (m *EventBurn) GetAmount() types.Coin { if m != nil { return m.Amount } return types.Coin{} } -type EventChangeTFAdmin struct { +func (m *EventBurn) GetBurnFrom() string { + if m != nil { + return m.BurnFrom + } + return "" +} + +type EventChangeAdmin struct { Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` NewAdminAddress string `protobuf:"bytes,2,opt,name=new_admin_address,json=newAdminAddress,proto3" json:"new_admin_address,omitempty"` } -func (m *EventChangeTFAdmin) Reset() { *m = EventChangeTFAdmin{} } -func (m *EventChangeTFAdmin) String() string { return proto.CompactTextString(m) } -func (*EventChangeTFAdmin) ProtoMessage() {} -func (*EventChangeTFAdmin) Descriptor() ([]byte, []int) { +func (m *EventChangeAdmin) Reset() { *m = EventChangeAdmin{} } +func (m *EventChangeAdmin) String() string { return proto.CompactTextString(m) } +func (*EventChangeAdmin) ProtoMessage() {} +func (*EventChangeAdmin) Descriptor() ([]byte, []int) { return fileDescriptor_b9fd0c5434c2a5b7, []int{3} } -func (m *EventChangeTFAdmin) XXX_Unmarshal(b []byte) error { +func (m *EventChangeAdmin) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *EventChangeTFAdmin) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *EventChangeAdmin) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_EventChangeTFAdmin.Marshal(b, m, deterministic) + return xxx_messageInfo_EventChangeAdmin.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -207,49 +223,49 @@ func (m *EventChangeTFAdmin) XXX_Marshal(b []byte, deterministic bool) ([]byte, return b[:n], nil } } -func (m *EventChangeTFAdmin) XXX_Merge(src proto.Message) { - xxx_messageInfo_EventChangeTFAdmin.Merge(m, src) +func (m *EventChangeAdmin) XXX_Merge(src proto.Message) { + xxx_messageInfo_EventChangeAdmin.Merge(m, src) } -func (m *EventChangeTFAdmin) XXX_Size() int { +func (m *EventChangeAdmin) XXX_Size() int { return m.Size() } -func (m *EventChangeTFAdmin) XXX_DiscardUnknown() { - xxx_messageInfo_EventChangeTFAdmin.DiscardUnknown(m) +func (m *EventChangeAdmin) XXX_DiscardUnknown() { + xxx_messageInfo_EventChangeAdmin.DiscardUnknown(m) } -var xxx_messageInfo_EventChangeTFAdmin proto.InternalMessageInfo +var xxx_messageInfo_EventChangeAdmin proto.InternalMessageInfo -func (m *EventChangeTFAdmin) GetDenom() string { +func (m *EventChangeAdmin) GetDenom() string { if m != nil { return m.Denom } return "" } -func (m *EventChangeTFAdmin) GetNewAdminAddress() string { +func (m *EventChangeAdmin) GetNewAdminAddress() string { if m != nil { return m.NewAdminAddress } return "" } -type EventSetTFDenomMetadata struct { +type EventSetDenomMetadata struct { Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` Metadata types1.Metadata `protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata"` } -func (m *EventSetTFDenomMetadata) Reset() { *m = EventSetTFDenomMetadata{} } -func (m *EventSetTFDenomMetadata) String() string { return proto.CompactTextString(m) } -func (*EventSetTFDenomMetadata) ProtoMessage() {} -func (*EventSetTFDenomMetadata) Descriptor() ([]byte, []int) { +func (m *EventSetDenomMetadata) Reset() { *m = EventSetDenomMetadata{} } +func (m *EventSetDenomMetadata) String() string { return proto.CompactTextString(m) } +func (*EventSetDenomMetadata) ProtoMessage() {} +func (*EventSetDenomMetadata) Descriptor() ([]byte, []int) { return fileDescriptor_b9fd0c5434c2a5b7, []int{4} } -func (m *EventSetTFDenomMetadata) XXX_Unmarshal(b []byte) error { +func (m *EventSetDenomMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *EventSetTFDenomMetadata) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *EventSetDenomMetadata) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_EventSetTFDenomMetadata.Marshal(b, m, deterministic) + return xxx_messageInfo_EventSetDenomMetadata.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -259,26 +275,26 @@ func (m *EventSetTFDenomMetadata) XXX_Marshal(b []byte, deterministic bool) ([]b return b[:n], nil } } -func (m *EventSetTFDenomMetadata) XXX_Merge(src proto.Message) { - xxx_messageInfo_EventSetTFDenomMetadata.Merge(m, src) +func (m *EventSetDenomMetadata) XXX_Merge(src proto.Message) { + xxx_messageInfo_EventSetDenomMetadata.Merge(m, src) } -func (m *EventSetTFDenomMetadata) XXX_Size() int { +func (m *EventSetDenomMetadata) XXX_Size() int { return m.Size() } -func (m *EventSetTFDenomMetadata) XXX_DiscardUnknown() { - xxx_messageInfo_EventSetTFDenomMetadata.DiscardUnknown(m) +func (m *EventSetDenomMetadata) XXX_DiscardUnknown() { + xxx_messageInfo_EventSetDenomMetadata.DiscardUnknown(m) } -var xxx_messageInfo_EventSetTFDenomMetadata proto.InternalMessageInfo +var xxx_messageInfo_EventSetDenomMetadata proto.InternalMessageInfo -func (m *EventSetTFDenomMetadata) GetDenom() string { +func (m *EventSetDenomMetadata) GetDenom() string { if m != nil { return m.Denom } return "" } -func (m *EventSetTFDenomMetadata) GetMetadata() types1.Metadata { +func (m *EventSetDenomMetadata) GetMetadata() types1.Metadata { if m != nil { return m.Metadata } @@ -286,11 +302,11 @@ func (m *EventSetTFDenomMetadata) GetMetadata() types1.Metadata { } func init() { - proto.RegisterType((*EventCreateTFDenom)(nil), "injective.tokenfactory.v1beta1.EventCreateTFDenom") - proto.RegisterType((*EventMintTFDenom)(nil), "injective.tokenfactory.v1beta1.EventMintTFDenom") - proto.RegisterType((*EventBurnDenom)(nil), "injective.tokenfactory.v1beta1.EventBurnDenom") - proto.RegisterType((*EventChangeTFAdmin)(nil), "injective.tokenfactory.v1beta1.EventChangeTFAdmin") - proto.RegisterType((*EventSetTFDenomMetadata)(nil), "injective.tokenfactory.v1beta1.EventSetTFDenomMetadata") + proto.RegisterType((*EventCreateDenom)(nil), "injective.tokenfactory.v1beta1.EventCreateDenom") + proto.RegisterType((*EventMint)(nil), "injective.tokenfactory.v1beta1.EventMint") + proto.RegisterType((*EventBurn)(nil), "injective.tokenfactory.v1beta1.EventBurn") + proto.RegisterType((*EventChangeAdmin)(nil), "injective.tokenfactory.v1beta1.EventChangeAdmin") + proto.RegisterType((*EventSetDenomMetadata)(nil), "injective.tokenfactory.v1beta1.EventSetDenomMetadata") } func init() { @@ -298,38 +314,39 @@ func init() { } var fileDescriptor_b9fd0c5434c2a5b7 = []byte{ - // 442 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x52, 0xc1, 0x6a, 0x14, 0x41, - 0x10, 0xdd, 0x11, 0x8d, 0xda, 0x62, 0x4c, 0x86, 0x80, 0x6b, 0xc0, 0x51, 0x16, 0x04, 0x31, 0x38, - 0x43, 0x14, 0xf4, 0x28, 0xd9, 0xc4, 0x80, 0x60, 0x2e, 0x6b, 0xf0, 0xe0, 0x25, 0xf4, 0xf4, 0x94, - 0xbb, 0xed, 0x66, 0xaa, 0x86, 0xee, 0x9a, 0x8d, 0xfb, 0x17, 0x7e, 0x56, 0x8e, 0x39, 0x7a, 0x12, - 0xd9, 0xfd, 0x11, 0x99, 0x99, 0xee, 0xce, 0xaa, 0x88, 0x87, 0xdc, 0xa6, 0xba, 0x5e, 0xbd, 0x57, - 0xef, 0x4d, 0x89, 0x1d, 0x8d, 0x5f, 0x40, 0xb1, 0x9e, 0x41, 0xc6, 0x34, 0x05, 0xfc, 0x2c, 0x15, - 0x93, 0x99, 0x67, 0xb3, 0xdd, 0x1c, 0x58, 0xee, 0x66, 0x30, 0x03, 0x64, 0x9b, 0x56, 0x86, 0x98, - 0xe2, 0x24, 0x80, 0xd3, 0x55, 0x70, 0xea, 0xc0, 0xdb, 0x5b, 0x63, 0x1a, 0x53, 0x0b, 0xcd, 0x9a, - 0xaf, 0x6e, 0x6a, 0x3b, 0x51, 0x64, 0x4b, 0xb2, 0x59, 0x2e, 0x2d, 0x04, 0x5e, 0x45, 0x1a, 0xff, - 0xea, 0xe3, 0x34, 0xf4, 0x9b, 0xc2, 0xf5, 0x5f, 0xfd, 0x67, 0x45, 0x59, 0xf3, 0x84, 0x8c, 0xe6, - 0xf9, 0x11, 0xb0, 0x2c, 0x24, 0xcb, 0x6e, 0x6e, 0x70, 0x20, 0xe2, 0xb7, 0xcd, 0xf6, 0xfb, 0x06, - 0x24, 0xc3, 0xf1, 0xe1, 0x01, 0x20, 0x95, 0x71, 0x5f, 0xdc, 0x94, 0x4a, 0x51, 0x8d, 0xdc, 0x8f, - 0x1e, 0x47, 0x4f, 0x6f, 0x8f, 0x7c, 0x19, 0x6f, 0x89, 0x1b, 0x45, 0x03, 0xe9, 0x5f, 0x6b, 0xdf, - 0xbb, 0x62, 0xf0, 0x55, 0x6c, 0xb4, 0x2c, 0x47, 0x1a, 0xd9, 0x73, 0xec, 0x88, 0x4d, 0x03, 0x4a, - 0x57, 0x1a, 0x90, 0x4f, 0x64, 0x51, 0x18, 0xb0, 0xd6, 0xb1, 0x6d, 0x84, 0xc6, 0x5e, 0xf7, 0x1e, - 0xbf, 0x16, 0x6b, 0xb2, 0x6c, 0xf5, 0x1a, 0xde, 0x3b, 0x2f, 0x1e, 0xa4, 0x9d, 0xdf, 0xb4, 0xc9, - 0xc3, 0x47, 0x97, 0xee, 0x93, 0xc6, 0xe1, 0xf5, 0xf3, 0x1f, 0x8f, 0x7a, 0x23, 0x07, 0x1f, 0x54, - 0x62, 0xbd, 0x55, 0x1e, 0xd6, 0x06, 0x3b, 0xdd, 0x27, 0x62, 0x3d, 0xaf, 0x0d, 0x82, 0xf9, 0x43, - 0xf4, 0x6e, 0xf7, 0x7a, 0x65, 0xc5, 0x8f, 0x3e, 0xb1, 0x89, 0xc4, 0x31, 0x1c, 0x1f, 0xee, 0x15, - 0xa5, 0xc6, 0xcb, 0x5c, 0xa2, 0x95, 0x5c, 0xe2, 0x67, 0x62, 0x13, 0xe1, 0xec, 0x44, 0x36, 0x90, - 0xb0, 0x4e, 0x97, 0xdc, 0x3d, 0x84, 0xb3, 0x76, 0xd4, 0x2d, 0x34, 0xa8, 0xc4, 0xfd, 0x96, 0xf7, - 0x03, 0xf8, 0x08, 0xfd, 0xaf, 0xfa, 0x07, 0xf9, 0x1b, 0x71, 0xab, 0x74, 0x08, 0xe7, 0xe1, 0xe1, - 0xa5, 0x07, 0x9c, 0x06, 0x0f, 0x9e, 0xc6, 0xf9, 0x08, 0x43, 0xc3, 0xd3, 0xf3, 0x45, 0x12, 0x5d, - 0x2c, 0x92, 0xe8, 0xe7, 0x22, 0x89, 0xbe, 0x2d, 0x93, 0xde, 0xc5, 0x32, 0xe9, 0x7d, 0x5f, 0x26, - 0xbd, 0x4f, 0xa3, 0xb1, 0xe6, 0x49, 0x9d, 0xa7, 0x8a, 0xca, 0xec, 0x9d, 0x3f, 0xac, 0xf7, 0x32, - 0xb7, 0x59, 0x38, 0xb3, 0xe7, 0x8a, 0x0c, 0xac, 0x96, 0x13, 0xa9, 0x31, 0x2b, 0xa9, 0xa8, 0x4f, - 0xc1, 0xfe, 0x7e, 0x83, 0x3c, 0xaf, 0xc0, 0xe6, 0x6b, 0xed, 0xc1, 0xbd, 0xfc, 0x15, 0x00, 0x00, - 0xff, 0xff, 0x0f, 0x75, 0x34, 0xbb, 0x4d, 0x03, 0x00, 0x00, + // 449 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x52, 0x4d, 0x6f, 0xd3, 0x40, + 0x10, 0x8d, 0xf9, 0x08, 0xcd, 0x72, 0x00, 0xac, 0x82, 0x42, 0x10, 0x06, 0xf9, 0x84, 0x40, 0xd8, + 0x2a, 0x48, 0x70, 0x44, 0x4d, 0x01, 0x09, 0x89, 0x5e, 0x02, 0x27, 0x2e, 0xd1, 0x7a, 0x3d, 0x4d, + 0x96, 0x74, 0x67, 0xaa, 0xdd, 0x75, 0x8a, 0xff, 0x05, 0x3f, 0xab, 0xc7, 0x1c, 0x39, 0x21, 0x94, + 0xfc, 0x11, 0xb4, 0xeb, 0xb5, 0x13, 0x84, 0x10, 0x52, 0x6f, 0x7e, 0x33, 0xef, 0xbd, 0xf1, 0x9b, + 0x1d, 0xf6, 0x4c, 0xe2, 0x57, 0x10, 0x56, 0x2e, 0x21, 0xb7, 0xb4, 0x00, 0x3c, 0xe1, 0xc2, 0x92, + 0xae, 0xf3, 0xe5, 0x41, 0x01, 0x96, 0x1f, 0xe4, 0xb0, 0x04, 0xb4, 0x26, 0x3b, 0xd3, 0x64, 0x29, + 0x4e, 0x3a, 0x72, 0xb6, 0x4b, 0xce, 0x02, 0x79, 0xb4, 0x3f, 0xa3, 0x19, 0x79, 0x6a, 0xee, 0xbe, + 0x1a, 0xd5, 0x28, 0x11, 0x64, 0x14, 0x99, 0xbc, 0xe0, 0x06, 0x3a, 0x5f, 0x41, 0x12, 0xff, 0xea, + 0xe3, 0xa2, 0xeb, 0x3b, 0x10, 0xfa, 0xaf, 0xfe, 0xf3, 0x8b, 0xbc, 0xb2, 0x73, 0xd2, 0xd2, 0xd6, + 0xc7, 0x60, 0x79, 0xc9, 0x2d, 0x6f, 0x74, 0xe9, 0x98, 0xdd, 0x7e, 0xe7, 0xfe, 0xfe, 0x48, 0x03, + 0xb7, 0xf0, 0x16, 0x90, 0x54, 0x3c, 0x64, 0x37, 0xb8, 0x10, 0x54, 0xa1, 0x1d, 0x46, 0x8f, 0xa3, + 0x27, 0x83, 0x49, 0x0b, 0xe3, 0x7d, 0x76, 0xbd, 0x74, 0x94, 0xe1, 0x15, 0x5f, 0x6f, 0x40, 0xfa, + 0x8d, 0x0d, 0xbc, 0xc7, 0xb1, 0x44, 0x1b, 0xdf, 0x63, 0x7d, 0x25, 0xd1, 0x82, 0x0e, 0xda, 0x80, + 0xe2, 0xd7, 0xac, 0xcf, 0x95, 0xf7, 0x74, 0xda, 0x9b, 0x2f, 0xee, 0x67, 0x4d, 0xa2, 0xcc, 0x25, + 0x6e, 0x97, 0x93, 0x1d, 0x91, 0xc4, 0xf1, 0xb5, 0x8b, 0x9f, 0x8f, 0x7a, 0x93, 0x40, 0x8f, 0x47, + 0x6c, 0x4f, 0x83, 0x00, 0xb9, 0x04, 0x3d, 0xbc, 0xea, 0x2d, 0x3b, 0x9c, 0xd6, 0x61, 0xf2, 0xb8, + 0xd2, 0xe8, 0x26, 0x17, 0x95, 0xc6, 0xed, 0xe4, 0x06, 0x5d, 0x7e, 0xf2, 0x03, 0x36, 0x70, 0x16, + 0xd3, 0x13, 0x4d, 0xaa, 0x1d, 0xed, 0x0a, 0xef, 0x35, 0xa9, 0xf4, 0x73, 0xbb, 0xb8, 0x39, 0xc7, + 0x19, 0x1c, 0x96, 0x4a, 0xe2, 0x76, 0x3d, 0xd1, 0xce, 0x7a, 0xe2, 0xa7, 0xec, 0x0e, 0xc2, 0xf9, + 0x94, 0x3b, 0xca, 0x94, 0x97, 0xa5, 0x06, 0x63, 0xc2, 0x02, 0x6f, 0x21, 0x9c, 0x7b, 0xe9, 0x61, + 0x53, 0x4e, 0x91, 0xdd, 0xf5, 0xae, 0x9f, 0xc0, 0xfa, 0xb7, 0x68, 0x5f, 0xeb, 0x1f, 0xd6, 0x6f, + 0xd8, 0x9e, 0x0a, 0x8c, 0x10, 0xee, 0xe1, 0x36, 0x1c, 0x2e, 0xba, 0x70, 0xad, 0x4d, 0x08, 0xd8, + 0x89, 0xc6, 0xa7, 0x17, 0xeb, 0x24, 0x5a, 0xad, 0x93, 0xe8, 0xd7, 0x3a, 0x89, 0xbe, 0x6f, 0x92, + 0xde, 0x6a, 0x93, 0xf4, 0x7e, 0x6c, 0x92, 0xde, 0x97, 0xc9, 0x4c, 0xda, 0x79, 0x55, 0x64, 0x82, + 0x54, 0xfe, 0xa1, 0xbd, 0xad, 0x8f, 0xbc, 0x30, 0x79, 0x77, 0x69, 0xcf, 0x05, 0x69, 0xd8, 0x85, + 0x73, 0x2e, 0x31, 0x57, 0x54, 0x56, 0xa7, 0x60, 0xfe, 0x3c, 0x43, 0x5b, 0x9f, 0x81, 0x29, 0xfa, + 0xfe, 0xe6, 0x5e, 0xfe, 0x0e, 0x00, 0x00, 0xff, 0xff, 0x69, 0xd3, 0xee, 0x9b, 0x50, 0x03, 0x00, + 0x00, } -func (m *EventCreateTFDenom) Marshal() (dAtA []byte, err error) { +func (m *EventCreateDenom) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -339,12 +356,12 @@ func (m *EventCreateTFDenom) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *EventCreateTFDenom) MarshalTo(dAtA []byte) (int, error) { +func (m *EventCreateDenom) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *EventCreateTFDenom) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *EventCreateDenom) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -366,7 +383,7 @@ func (m *EventCreateTFDenom) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *EventMintTFDenom) Marshal() (dAtA []byte, err error) { +func (m *EventMint) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -376,16 +393,23 @@ func (m *EventMintTFDenom) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *EventMintTFDenom) MarshalTo(dAtA []byte) (int, error) { +func (m *EventMint) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *EventMintTFDenom) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *EventMint) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + if len(m.Receiver) > 0 { + i -= len(m.Receiver) + copy(dAtA[i:], m.Receiver) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Receiver))) + i-- + dAtA[i] = 0x1a + } { size, err := m.Amount.MarshalToSizedBuffer(dAtA[:i]) if err != nil { @@ -396,17 +420,17 @@ func (m *EventMintTFDenom) MarshalToSizedBuffer(dAtA []byte) (int, error) { } i-- dAtA[i] = 0x12 - if len(m.RecipientAddress) > 0 { - i -= len(m.RecipientAddress) - copy(dAtA[i:], m.RecipientAddress) - i = encodeVarintEvents(dAtA, i, uint64(len(m.RecipientAddress))) + if len(m.Minter) > 0 { + i -= len(m.Minter) + copy(dAtA[i:], m.Minter) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Minter))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *EventBurnDenom) Marshal() (dAtA []byte, err error) { +func (m *EventBurn) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -416,16 +440,23 @@ func (m *EventBurnDenom) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *EventBurnDenom) MarshalTo(dAtA []byte) (int, error) { +func (m *EventBurn) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *EventBurnDenom) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *EventBurn) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + if len(m.BurnFrom) > 0 { + i -= len(m.BurnFrom) + copy(dAtA[i:], m.BurnFrom) + i = encodeVarintEvents(dAtA, i, uint64(len(m.BurnFrom))) + i-- + dAtA[i] = 0x1a + } { size, err := m.Amount.MarshalToSizedBuffer(dAtA[:i]) if err != nil { @@ -436,17 +467,17 @@ func (m *EventBurnDenom) MarshalToSizedBuffer(dAtA []byte) (int, error) { } i-- dAtA[i] = 0x12 - if len(m.BurnerAddress) > 0 { - i -= len(m.BurnerAddress) - copy(dAtA[i:], m.BurnerAddress) - i = encodeVarintEvents(dAtA, i, uint64(len(m.BurnerAddress))) + if len(m.Burner) > 0 { + i -= len(m.Burner) + copy(dAtA[i:], m.Burner) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Burner))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *EventChangeTFAdmin) Marshal() (dAtA []byte, err error) { +func (m *EventChangeAdmin) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -456,12 +487,12 @@ func (m *EventChangeTFAdmin) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *EventChangeTFAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *EventChangeAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *EventChangeTFAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *EventChangeAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -483,7 +514,7 @@ func (m *EventChangeTFAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *EventSetTFDenomMetadata) Marshal() (dAtA []byte, err error) { +func (m *EventSetDenomMetadata) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -493,12 +524,12 @@ func (m *EventSetTFDenomMetadata) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *EventSetTFDenomMetadata) MarshalTo(dAtA []byte) (int, error) { +func (m *EventSetDenomMetadata) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *EventSetTFDenomMetadata) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *EventSetDenomMetadata) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -534,7 +565,7 @@ func encodeVarintEvents(dAtA []byte, offset int, v uint64) int { dAtA[offset] = uint8(v) return base } -func (m *EventCreateTFDenom) Size() (n int) { +func (m *EventCreateDenom) Size() (n int) { if m == nil { return 0 } @@ -551,37 +582,45 @@ func (m *EventCreateTFDenom) Size() (n int) { return n } -func (m *EventMintTFDenom) Size() (n int) { +func (m *EventMint) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.RecipientAddress) + l = len(m.Minter) if l > 0 { n += 1 + l + sovEvents(uint64(l)) } l = m.Amount.Size() n += 1 + l + sovEvents(uint64(l)) + l = len(m.Receiver) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } return n } -func (m *EventBurnDenom) Size() (n int) { +func (m *EventBurn) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.BurnerAddress) + l = len(m.Burner) if l > 0 { n += 1 + l + sovEvents(uint64(l)) } l = m.Amount.Size() n += 1 + l + sovEvents(uint64(l)) + l = len(m.BurnFrom) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } return n } -func (m *EventChangeTFAdmin) Size() (n int) { +func (m *EventChangeAdmin) Size() (n int) { if m == nil { return 0 } @@ -598,7 +637,7 @@ func (m *EventChangeTFAdmin) Size() (n int) { return n } -func (m *EventSetTFDenomMetadata) Size() (n int) { +func (m *EventSetDenomMetadata) Size() (n int) { if m == nil { return 0 } @@ -619,7 +658,7 @@ func sovEvents(x uint64) (n int) { func sozEvents(x uint64) (n int) { return sovEvents(uint64((x << 1) ^ uint64((int64(x) >> 63)))) } -func (m *EventCreateTFDenom) Unmarshal(dAtA []byte) error { +func (m *EventCreateDenom) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -642,10 +681,10 @@ func (m *EventCreateTFDenom) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: EventCreateTFDenom: wiretype end group for non-group") + return fmt.Errorf("proto: EventCreateDenom: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: EventCreateTFDenom: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: EventCreateDenom: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -733,7 +772,7 @@ func (m *EventCreateTFDenom) Unmarshal(dAtA []byte) error { } return nil } -func (m *EventMintTFDenom) Unmarshal(dAtA []byte) error { +func (m *EventMint) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -756,15 +795,15 @@ func (m *EventMintTFDenom) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: EventMintTFDenom: wiretype end group for non-group") + return fmt.Errorf("proto: EventMint: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: EventMintTFDenom: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: EventMint: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RecipientAddress", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Minter", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -792,7 +831,7 @@ func (m *EventMintTFDenom) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.RecipientAddress = string(dAtA[iNdEx:postIndex]) + m.Minter = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { @@ -827,6 +866,38 @@ func (m *EventMintTFDenom) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Receiver", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Receiver = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -848,7 +919,7 @@ func (m *EventMintTFDenom) Unmarshal(dAtA []byte) error { } return nil } -func (m *EventBurnDenom) Unmarshal(dAtA []byte) error { +func (m *EventBurn) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -871,15 +942,15 @@ func (m *EventBurnDenom) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: EventBurnDenom: wiretype end group for non-group") + return fmt.Errorf("proto: EventBurn: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: EventBurnDenom: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: EventBurn: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BurnerAddress", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Burner", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -907,7 +978,7 @@ func (m *EventBurnDenom) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.BurnerAddress = string(dAtA[iNdEx:postIndex]) + m.Burner = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { @@ -942,6 +1013,38 @@ func (m *EventBurnDenom) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BurnFrom", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BurnFrom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -963,7 +1066,7 @@ func (m *EventBurnDenom) Unmarshal(dAtA []byte) error { } return nil } -func (m *EventChangeTFAdmin) Unmarshal(dAtA []byte) error { +func (m *EventChangeAdmin) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -986,10 +1089,10 @@ func (m *EventChangeTFAdmin) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: EventChangeTFAdmin: wiretype end group for non-group") + return fmt.Errorf("proto: EventChangeAdmin: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: EventChangeTFAdmin: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: EventChangeAdmin: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -1077,7 +1180,7 @@ func (m *EventChangeTFAdmin) Unmarshal(dAtA []byte) error { } return nil } -func (m *EventSetTFDenomMetadata) Unmarshal(dAtA []byte) error { +func (m *EventSetDenomMetadata) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -1100,10 +1203,10 @@ func (m *EventSetTFDenomMetadata) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: EventSetTFDenomMetadata: wiretype end group for non-group") + return fmt.Errorf("proto: EventSetDenomMetadata: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: EventSetTFDenomMetadata: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: EventSetDenomMetadata: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: diff --git a/chain/tokenfactory/types/expected_keepers.go b/chain/tokenfactory/types/expected_keepers.go deleted file mode 100644 index 27c25b23..00000000 --- a/chain/tokenfactory/types/expected_keepers.go +++ /dev/null @@ -1,35 +0,0 @@ -package types - -import ( - "context" - - sdk "github.com/cosmos/cosmos-sdk/types" - banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" -) - -type BankKeeper interface { - // Methods imported from bank should be defined here - GetDenomMetaData(ctx context.Context, denom string) (banktypes.Metadata, bool) - SetDenomMetaData(ctx context.Context, denomMetaData banktypes.Metadata) - - HasSupply(ctx context.Context, denom string) bool - - SendCoinsFromModuleToAccount(ctx context.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error - SendCoinsFromAccountToModule(ctx context.Context, senderAddr sdk.AccAddress, recipientModule string, amt sdk.Coins) error - MintCoins(ctx context.Context, moduleName string, amt sdk.Coins) error - BurnCoins(ctx context.Context, moduleName string, amt sdk.Coins) error - - SendCoins(ctx context.Context, fromAddr sdk.AccAddress, toAddr sdk.AccAddress, amt sdk.Coins) error - HasBalance(ctx context.Context, addr sdk.AccAddress, amt sdk.Coin) bool - BlockedAddr(addr sdk.AccAddress) bool -} - -type AccountKeeper interface { - SetModuleAccount(ctx context.Context, macc sdk.ModuleAccountI) - NewAccount(ctx context.Context, acc sdk.AccountI) sdk.AccountI -} - -// CommunityPoolKeeper defines the contract needed to be fulfilled for community pool interactions. -type CommunityPoolKeeper interface { - FundCommunityPool(ctx context.Context, amount sdk.Coins, sender sdk.AccAddress) error -} diff --git a/chain/tokenfactory/types/genesis.go b/chain/tokenfactory/types/genesis.go deleted file mode 100644 index 3c4bdb6d..00000000 --- a/chain/tokenfactory/types/genesis.go +++ /dev/null @@ -1,51 +0,0 @@ -package types - -import ( - "cosmossdk.io/errors" - sdk "github.com/cosmos/cosmos-sdk/types" -) - -// this line is used by starport scaffolding # genesis/types/import - -// DefaultIndex is the default capability global index -const DefaultIndex uint64 = 1 - -// DefaultGenesis returns the default Capability genesis state -func DefaultGenesis() *GenesisState { - return &GenesisState{ - Params: DefaultParams(), - FactoryDenoms: []GenesisDenom{}, - } -} - -// Validate performs basic genesis state validation returning an error upon any -// failure. -func (gs GenesisState) Validate() error { - err := gs.Params.Validate() - if err != nil { - return err - } - - seenDenoms := map[string]bool{} - - for _, denom := range gs.GetFactoryDenoms() { - if seenDenoms[denom.GetDenom()] { - return errors.Wrapf(ErrInvalidGenesis, "duplicate denom: %s", denom.GetDenom()) - } - seenDenoms[denom.GetDenom()] = true - - _, _, err := DeconstructDenom(denom.GetDenom()) - if err != nil { - return err - } - - if denom.AuthorityMetadata.Admin != "" { - _, err = sdk.AccAddressFromBech32(denom.AuthorityMetadata.Admin) - if err != nil { - return errors.Wrapf(ErrInvalidAuthorityMetadata, "Invalid admin address (%s)", err) - } - } - } - - return nil -} diff --git a/chain/tokenfactory/types/gov.go b/chain/tokenfactory/types/gov.go deleted file mode 100644 index 346c24ae..00000000 --- a/chain/tokenfactory/types/gov.go +++ /dev/null @@ -1,54 +0,0 @@ -package types - -import ( - errorsmod "cosmossdk.io/errors" - sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" - banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" - govtypes "github.com/cosmos/cosmos-sdk/x/gov/types/v1beta1" -) - -const ( - ProposalTypeUpdateDenomsMetaData = "UpdateDenomsMetaData" -) - -func init() { - govtypes.RegisterProposalType(ProposalTypeUpdateDenomsMetaData) -} - -var ( - _ govtypes.Content = &UpdateDenomsMetadataProposal{} -) - -func NewUpdateDenomsMetadataProposal(title, description string, metadatas []banktypes.Metadata) govtypes.Content { - return &UpdateDenomsMetadataProposal{ - Title: title, - Description: description, - Metadatas: metadatas, - } -} - -func (p *UpdateDenomsMetadataProposal) GetTitle() string { return p.Title } - -func (p *UpdateDenomsMetadataProposal) GetDescription() string { return p.Description } - -func (p *UpdateDenomsMetadataProposal) ProposalRoute() string { return RouterKey } - -func (p *UpdateDenomsMetadataProposal) ProposalType() string { - return ProposalTypeUpdateDenomsMetaData -} - -func (p *UpdateDenomsMetadataProposal) ValidateBasic() error { - err := govtypes.ValidateAbstract(p) - if err != nil { - return err - } - - for idx := range p.Metadatas { - metadata := p.Metadatas[idx] - if metadata.Base == "" { - return errorsmod.Wrapf(sdkerrors.ErrInvalidRequest, "invalid denom (%s)", metadata.Base) - } - } - - return nil -} diff --git a/chain/tokenfactory/types/gov.pb.go b/chain/tokenfactory/types/gov.pb.go deleted file mode 100644 index 0a090625..00000000 --- a/chain/tokenfactory/types/gov.pb.go +++ /dev/null @@ -1,465 +0,0 @@ -// Code generated by protoc-gen-gogo. DO NOT EDIT. -// source: injective/tokenfactory/v1beta1/gov.proto - -package types - -import ( - fmt "fmt" - types "github.com/cosmos/cosmos-sdk/x/bank/types" - _ "github.com/cosmos/gogoproto/gogoproto" - proto "github.com/cosmos/gogoproto/proto" - io "io" - math "math" - math_bits "math/bits" -) - -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the proto package it is being compiled against. -// A compilation error at this line likely means your copy of the -// proto package needs to be updated. -const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package - -type UpdateDenomsMetadataProposal struct { - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` - Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` - Metadatas []types.Metadata `protobuf:"bytes,3,rep,name=metadatas,proto3" json:"metadatas"` - Deposit string `protobuf:"bytes,4,opt,name=deposit,proto3" json:"deposit,omitempty" yaml:"deposit"` -} - -func (m *UpdateDenomsMetadataProposal) Reset() { *m = UpdateDenomsMetadataProposal{} } -func (m *UpdateDenomsMetadataProposal) String() string { return proto.CompactTextString(m) } -func (*UpdateDenomsMetadataProposal) ProtoMessage() {} -func (*UpdateDenomsMetadataProposal) Descriptor() ([]byte, []int) { - return fileDescriptor_2c4dd8ce2ae85492, []int{0} -} -func (m *UpdateDenomsMetadataProposal) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *UpdateDenomsMetadataProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_UpdateDenomsMetadataProposal.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *UpdateDenomsMetadataProposal) XXX_Merge(src proto.Message) { - xxx_messageInfo_UpdateDenomsMetadataProposal.Merge(m, src) -} -func (m *UpdateDenomsMetadataProposal) XXX_Size() int { - return m.Size() -} -func (m *UpdateDenomsMetadataProposal) XXX_DiscardUnknown() { - xxx_messageInfo_UpdateDenomsMetadataProposal.DiscardUnknown(m) -} - -var xxx_messageInfo_UpdateDenomsMetadataProposal proto.InternalMessageInfo - -func init() { - proto.RegisterType((*UpdateDenomsMetadataProposal)(nil), "injective.tokenfactory.v1beta1.UpdateDenomsMetadataProposal") -} - -func init() { - proto.RegisterFile("injective/tokenfactory/v1beta1/gov.proto", fileDescriptor_2c4dd8ce2ae85492) -} - -var fileDescriptor_2c4dd8ce2ae85492 = []byte{ - // 332 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x54, 0x91, 0xc1, 0x4e, 0xf2, 0x40, - 0x14, 0x85, 0xdb, 0x1f, 0x7e, 0x0d, 0x25, 0x71, 0xd1, 0xb0, 0x68, 0x88, 0x0e, 0x84, 0x15, 0x0b, - 0x9d, 0x09, 0xba, 0x63, 0x27, 0x71, 0x63, 0xa2, 0x89, 0x69, 0xe2, 0xc6, 0xdd, 0xb4, 0xbd, 0x96, - 0x91, 0xb6, 0x77, 0xd2, 0xb9, 0x90, 0xf0, 0x06, 0x2e, 0x7d, 0x04, 0x1f, 0x87, 0x8d, 0x09, 0x4b, - 0x57, 0xc4, 0xc0, 0x1b, 0xf8, 0x04, 0x86, 0xb6, 0x20, 0xee, 0x7a, 0x7a, 0xbe, 0x7b, 0xcf, 0xcd, - 0x19, 0xa7, 0xaf, 0xb2, 0x17, 0x08, 0x49, 0xcd, 0x40, 0x10, 0x4e, 0x20, 0x7b, 0x96, 0x21, 0x61, - 0x3e, 0x17, 0xb3, 0x41, 0x00, 0x24, 0x07, 0x22, 0xc6, 0x19, 0xd7, 0x39, 0x12, 0xba, 0x6c, 0x4f, - 0xf2, 0x43, 0x92, 0x57, 0x64, 0xbb, 0x15, 0x63, 0x8c, 0x05, 0x2a, 0xb6, 0x5f, 0xe5, 0x54, 0x9b, - 0x85, 0x68, 0x52, 0x34, 0x22, 0x90, 0xd9, 0x64, 0xbf, 0x74, 0x2b, 0x4a, 0xbf, 0xf7, 0x61, 0x3b, - 0xa7, 0x8f, 0x3a, 0x92, 0x04, 0x37, 0x90, 0x61, 0x6a, 0xee, 0x81, 0x64, 0x24, 0x49, 0x3e, 0xe4, - 0xa8, 0xd1, 0xc8, 0xc4, 0x6d, 0x39, 0xff, 0x49, 0x51, 0x02, 0x9e, 0xdd, 0xb5, 0xfb, 0x0d, 0xbf, - 0x14, 0x6e, 0xd7, 0x69, 0x46, 0x60, 0xc2, 0x5c, 0x69, 0x52, 0x98, 0x79, 0xff, 0x0a, 0xef, 0xf0, - 0x97, 0x7b, 0xed, 0x34, 0xd2, 0x6a, 0x97, 0xf1, 0x6a, 0xdd, 0x5a, 0xbf, 0x79, 0x79, 0xc6, 0xcb, - 0x63, 0x78, 0x91, 0x5f, 0x1d, 0xc3, 0x77, 0x89, 0xa3, 0xfa, 0x62, 0xd5, 0xb1, 0xfc, 0xdf, 0x29, - 0xf7, 0xdc, 0x39, 0x8e, 0x40, 0xa3, 0x51, 0xe4, 0xd5, 0xb7, 0x01, 0x23, 0xf7, 0x7b, 0xd5, 0x39, - 0x99, 0xcb, 0x34, 0x19, 0xf6, 0x2a, 0xa3, 0xe7, 0xef, 0x90, 0x61, 0xfd, 0xf5, 0xbd, 0x63, 0x8d, - 0x92, 0xc5, 0x9a, 0xd9, 0xcb, 0x35, 0xb3, 0xbf, 0xd6, 0xcc, 0x7e, 0xdb, 0x30, 0x6b, 0xb9, 0x61, - 0xd6, 0xe7, 0x86, 0x59, 0x4f, 0x7e, 0xac, 0x68, 0x3c, 0x0d, 0x78, 0x88, 0xa9, 0xb8, 0xdd, 0x55, - 0x79, 0x27, 0x03, 0x23, 0xf6, 0xc5, 0x5e, 0x84, 0x98, 0xc3, 0xa1, 0x1c, 0x4b, 0x95, 0x89, 0x14, - 0xa3, 0x69, 0x02, 0xe6, 0xef, 0xfb, 0xd0, 0x5c, 0x83, 0x09, 0x8e, 0x8a, 0x12, 0xaf, 0x7e, 0x02, - 0x00, 0x00, 0xff, 0xff, 0x31, 0xc4, 0xfd, 0x93, 0xc6, 0x01, 0x00, 0x00, -} - -func (m *UpdateDenomsMetadataProposal) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *UpdateDenomsMetadataProposal) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *UpdateDenomsMetadataProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Deposit) > 0 { - i -= len(m.Deposit) - copy(dAtA[i:], m.Deposit) - i = encodeVarintGov(dAtA, i, uint64(len(m.Deposit))) - i-- - dAtA[i] = 0x22 - } - if len(m.Metadatas) > 0 { - for iNdEx := len(m.Metadatas) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Metadatas[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintGov(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - } - if len(m.Description) > 0 { - i -= len(m.Description) - copy(dAtA[i:], m.Description) - i = encodeVarintGov(dAtA, i, uint64(len(m.Description))) - i-- - dAtA[i] = 0x12 - } - if len(m.Title) > 0 { - i -= len(m.Title) - copy(dAtA[i:], m.Title) - i = encodeVarintGov(dAtA, i, uint64(len(m.Title))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func encodeVarintGov(dAtA []byte, offset int, v uint64) int { - offset -= sovGov(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ - } - dAtA[offset] = uint8(v) - return base -} -func (m *UpdateDenomsMetadataProposal) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Title) - if l > 0 { - n += 1 + l + sovGov(uint64(l)) - } - l = len(m.Description) - if l > 0 { - n += 1 + l + sovGov(uint64(l)) - } - if len(m.Metadatas) > 0 { - for _, e := range m.Metadatas { - l = e.Size() - n += 1 + l + sovGov(uint64(l)) - } - } - l = len(m.Deposit) - if l > 0 { - n += 1 + l + sovGov(uint64(l)) - } - return n -} - -func sovGov(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 -} -func sozGov(x uint64) (n int) { - return sovGov(uint64((x << 1) ^ uint64((int64(x) >> 63)))) -} -func (m *UpdateDenomsMetadataProposal) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGov - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: UpdateDenomsMetadataProposal: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: UpdateDenomsMetadataProposal: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGov - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthGov - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthGov - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Title = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGov - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthGov - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthGov - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Description = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadatas", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGov - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthGov - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthGov - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Metadatas = append(m.Metadatas, types.Metadata{}) - if err := m.Metadatas[len(m.Metadatas)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Deposit", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGov - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthGov - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthGov - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Deposit = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipGov(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthGov - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func skipGov(dAtA []byte) (n int, err error) { - l := len(dAtA) - iNdEx := 0 - depth := 0 - for iNdEx < l { - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowGov - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - wireType := int(wire & 0x7) - switch wireType { - case 0: - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowGov - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - iNdEx++ - if dAtA[iNdEx-1] < 0x80 { - break - } - } - case 1: - iNdEx += 8 - case 2: - var length int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowGov - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - length |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if length < 0 { - return 0, ErrInvalidLengthGov - } - iNdEx += length - case 3: - depth++ - case 4: - if depth == 0 { - return 0, ErrUnexpectedEndOfGroupGov - } - depth-- - case 5: - iNdEx += 4 - default: - return 0, fmt.Errorf("proto: illegal wireType %d", wireType) - } - if iNdEx < 0 { - return 0, ErrInvalidLengthGov - } - if depth == 0 { - return iNdEx, nil - } - } - return 0, io.ErrUnexpectedEOF -} - -var ( - ErrInvalidLengthGov = fmt.Errorf("proto: negative length found during unmarshaling") - ErrIntOverflowGov = fmt.Errorf("proto: integer overflow") - ErrUnexpectedEndOfGroupGov = fmt.Errorf("proto: unexpected end of group") -) diff --git a/chain/tokenfactory/types/keys.go b/chain/tokenfactory/types/keys.go deleted file mode 100644 index 6d8aed08..00000000 --- a/chain/tokenfactory/types/keys.go +++ /dev/null @@ -1,50 +0,0 @@ -package types - -import ( - "strings" -) - -const ( - // ModuleName defines the module name - ModuleName = "tokenfactory" - - // StoreKey defines the primary module store key - StoreKey = ModuleName - - // RouterKey is the message route for slashing - RouterKey = ModuleName - - // QuerierRoute defines the module's query routing key - QuerierRoute = ModuleName - - // MemStoreKey defines the in-memory store key - MemStoreKey = "mem_tokenfactory" -) - -// KeySeparator is used to combine parts of the keys in the store -const KeySeparator = "|" - -var ( - DenomAuthorityMetadataKey = []byte{0x01} - DenomsPrefixKey = []byte{0x02} - CreatorPrefixKey = []byte{0x03} - AdminPrefixKey = []byte{0x04} - ParamsKey = []byte{0x05} -) - -// GetDenomPrefixStore returns the store prefix where all the data associated with a specific denom -// is stored -func GetDenomPrefixStore(denom string) []byte { - return []byte(strings.Join([]string{string(DenomsPrefixKey), denom, ""}, KeySeparator)) -} - -// GetCreatorPrefix returns the store prefix where the list of the denoms created by a specific -// creator are stored. -func GetCreatorPrefix(creator string) []byte { - return []byte(strings.Join([]string{string(CreatorPrefixKey), creator, ""}, KeySeparator)) -} - -// GetCreatorsPrefix returns the store prefix where a list of all creator addresses are stored -func GetCreatorsPrefix() []byte { - return append(CreatorPrefixKey, []byte(KeySeparator)...) -} diff --git a/chain/tokenfactory/types/msgs.go b/chain/tokenfactory/types/msgs.go deleted file mode 100644 index c3a62338..00000000 --- a/chain/tokenfactory/types/msgs.go +++ /dev/null @@ -1,288 +0,0 @@ -package types - -import ( - "cosmossdk.io/errors" - "cosmossdk.io/math" - "github.com/InjectiveLabs/sdk-go/chain/types" - sdk "github.com/cosmos/cosmos-sdk/types" - sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" - banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" - "strings" -) - -// constants -const ( - TypeMsgCreateDenom = "create_denom" - TypeMsgMint = "tf_mint" - TypeMsgBurn = "tf_burn" - TypeMsgChangeAdmin = "change_admin" - TypeMsgSetDenomMetadata = "set_denom_metadata" - TypeMsgUpdateParams = "update_params" -) - -var _ sdk.Msg = &MsgCreateDenom{} -var _ sdk.Msg = &MsgMint{} -var _ sdk.Msg = &MsgBurn{} -var _ sdk.Msg = &MsgSetDenomMetadata{} -var _ sdk.Msg = &MsgChangeAdmin{} -var _ sdk.Msg = &MsgUpdateParams{} - -func (m MsgUpdateParams) Route() string { return RouterKey } - -func (m MsgUpdateParams) Type() string { return TypeMsgUpdateParams } - -func (m MsgUpdateParams) ValidateBasic() error { - if _, err := sdk.AccAddressFromBech32(m.Authority); err != nil { - return errors.Wrap(err, "invalid authority address") - } - - if err := m.Params.Validate(); err != nil { - return err - } - - return nil -} - -func (m *MsgUpdateParams) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshal(m)) -} - -func (m MsgUpdateParams) GetSigners() []sdk.AccAddress { - addr, _ := sdk.AccAddressFromBech32(m.Authority) - return []sdk.AccAddress{addr} -} - -// NewMsgCreateDenom creates a msg to create a new denom -func NewMsgCreateDenom(sender, subdenom, name, symbol string, decimals uint32) *MsgCreateDenom { - return &MsgCreateDenom{ - Sender: sender, - Subdenom: subdenom, - Name: name, - Symbol: symbol, - Decimals: decimals, - } -} - -func (m MsgCreateDenom) Route() string { return RouterKey } -func (m MsgCreateDenom) Type() string { return TypeMsgCreateDenom } -func (m MsgCreateDenom) ValidateBasic() error { - _, err := sdk.AccAddressFromBech32(m.Sender) - if err != nil { - return errors.Wrapf(sdkerrors.ErrInvalidAddress, "Invalid sender address (%s)", err) - } - - _, err = GetTokenDenom(m.Sender, m.Subdenom) - if err != nil { - return errors.Wrap(ErrInvalidDenom, err.Error()) - } - - return nil -} - -func (m *MsgCreateDenom) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(m)) -} - -func (m MsgCreateDenom) GetSigners() []sdk.AccAddress { - sender, _ := sdk.AccAddressFromBech32(m.Sender) - return []sdk.AccAddress{sender} -} - -// NewMsgMint creates a message to mint tokens -func NewMsgMint(sender string, amount sdk.Coin) *MsgMint { - return &MsgMint{ - Sender: sender, - Amount: amount, - } -} - -func (m MsgMint) Route() string { return RouterKey } -func (m MsgMint) Type() string { return TypeMsgMint } -func (m MsgMint) ValidateBasic() error { - _, err := sdk.AccAddressFromBech32(m.Sender) - if err != nil { - return errors.Wrapf(sdkerrors.ErrInvalidAddress, "Invalid sender address (%s)", err) - } - - if !m.Amount.IsValid() || m.Amount.Amount.Equal(math.ZeroInt()) { - return errors.Wrap(sdkerrors.ErrInvalidCoins, m.Amount.String()) - } - - return nil -} - -func (m MsgMint) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(&m)) -} - -func (m MsgMint) GetSigners() []sdk.AccAddress { - sender, _ := sdk.AccAddressFromBech32(m.Sender) - return []sdk.AccAddress{sender} -} - -// NewMsgBurn creates a message to burn tokens -func NewMsgBurn(sender string, amount sdk.Coin) *MsgBurn { - return &MsgBurn{ - Sender: sender, - Amount: amount, - } -} - -func (m MsgBurn) Route() string { return RouterKey } -func (m MsgBurn) Type() string { return TypeMsgBurn } -func (m MsgBurn) ValidateBasic() error { - _, err := sdk.AccAddressFromBech32(m.Sender) - if err != nil { - return errors.Wrapf(sdkerrors.ErrInvalidAddress, "Invalid sender address (%s)", err) - } - - if !m.Amount.IsValid() || !m.Amount.IsPositive() { - return errors.Wrap(sdkerrors.ErrInvalidCoins, m.Amount.String()) - } - - return nil -} - -func (m *MsgBurn) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(m)) -} - -func (m MsgBurn) GetSigners() []sdk.AccAddress { - sender, _ := sdk.AccAddressFromBech32(m.Sender) - return []sdk.AccAddress{sender} -} - -// NewMsgChangeAdmin creates a message to change the admin -func NewMsgChangeAdmin(sender, denom, newAdmin string) *MsgChangeAdmin { - return &MsgChangeAdmin{ - Sender: sender, - Denom: denom, - NewAdmin: newAdmin, - } -} - -func (m MsgChangeAdmin) Route() string { return RouterKey } -func (m MsgChangeAdmin) Type() string { return TypeMsgChangeAdmin } -func (m MsgChangeAdmin) ValidateBasic() error { - _, err := sdk.AccAddressFromBech32(m.Sender) - if err != nil { - return errors.Wrapf(sdkerrors.ErrInvalidAddress, "Invalid sender address (%s)", err) - } - - _, err = sdk.AccAddressFromBech32(m.NewAdmin) - if err != nil { - return errors.Wrapf(sdkerrors.ErrInvalidAddress, "Invalid address (%s)", err) - } - - _, _, err = DeconstructDenom(m.Denom) - if err != nil { - return err - } - - return nil -} - -func (m *MsgChangeAdmin) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(m)) -} - -func (m MsgChangeAdmin) GetSigners() []sdk.AccAddress { - sender, _ := sdk.AccAddressFromBech32(m.Sender) - return []sdk.AccAddress{sender} -} - -// NewMsgSetDenomMetadata creates a message to set the denom metadata -func NewMsgSetDenomMetadata(sender string, metadata banktypes.Metadata) *MsgSetDenomMetadata { - return &MsgSetDenomMetadata{ - Sender: sender, - Metadata: metadata, - } -} - -func (m MsgSetDenomMetadata) Route() string { return RouterKey } -func (m MsgSetDenomMetadata) Type() string { return TypeMsgSetDenomMetadata } -func (m MsgSetDenomMetadata) ValidateBasic() error { - _, err := sdk.AccAddressFromBech32(m.Sender) - if err != nil { - return errors.Wrapf(sdkerrors.ErrInvalidAddress, "Invalid sender address (%s)", err) - } - - err = m.Metadata.Validate() - if err != nil { - return err - } - - if m.Metadata.Base == types.InjectiveCoin { - return errors.Wrap(ErrInvalidDenom, "cannot set metadata for INJ") - } - - err = sdk.ValidateDenom(m.Metadata.Base) - if err != nil { - return err - } - - // If denom metadata is for a TokenFactory denom, run the different components validations - strParts := strings.Split(m.Metadata.Base, "/") - if len(strParts) > 2 { - _, _, err = DeconstructDenom(m.Metadata.Base) - if err != nil { - return err - } - } - - return nil -} - -func (m *MsgSetDenomMetadata) GetSignBytes() []byte { - return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(m)) -} - -func (m MsgSetDenomMetadata) GetSigners() []sdk.AccAddress { - sender, _ := sdk.AccAddressFromBech32(m.Sender) - return []sdk.AccAddress{sender} -} - -// var _ sdk.Msg = &MsgForceTransfer{} - -// // NewMsgForceTransfer creates a transfer funds from one account to another -// func NewMsgForceTransfer(sender string, amount sdk.Coin, fromAddr, toAddr string) *MsgForceTransfer { -// return &MsgForceTransfer{ -// Sender: sender, -// Amount: amount, -// TransferFromAddress: fromAddr, -// TransferToAddress: toAddr, -// } -// } - -// func (m MsgForceTransfer) Route() string { return RouterKey } -// func (m MsgForceTransfer) Type() string { return TypeMsgForceTransfer } -// func (m MsgForceTransfer) ValidateBasic() error { -// _, err := sdk.AccAddressFromBech32(m.Sender) -// if err != nil { -// return errors.Wrapf(sdkerrors.ErrInvalidAddress, "Invalid sender address (%s)", err) -// } - -// _, err = sdk.AccAddressFromBech32(m.TransferFromAddress) -// if err != nil { -// return errors.Wrapf(sdkerrors.ErrInvalidAddress, "Invalid address (%s)", err) -// } -// _, err = sdk.AccAddressFromBech32(m.TransferToAddress) -// if err != nil { -// return errors.Wrapf(sdkerrors.ErrInvalidAddress, "Invalid address (%s)", err) -// } - -// if !m.Amount.IsValid() { -// return errors.Wrap(sdkerrors.ErrInvalidCoins, m.Amount.String()) -// } - -// return nil -// } - -// func (m MsgForceTransfer) GetSignBytes() []byte { -// return sdk.MustSortJSON(ModuleCdc.MustMarshalJSON(&m)) -// } - -// func (m MsgForceTransfer) GetSigners() []sdk.AccAddress { -// sender, _ := sdk.AccAddressFromBech32(m.Sender) -// return []sdk.AccAddress{sender} -// } diff --git a/chain/tokenfactory/types/params.go b/chain/tokenfactory/types/params.go deleted file mode 100644 index f1d52477..00000000 --- a/chain/tokenfactory/types/params.go +++ /dev/null @@ -1,63 +0,0 @@ -package types - -import ( - "fmt" - - "cosmossdk.io/math" - sdk "github.com/cosmos/cosmos-sdk/types" - paramtypes "github.com/cosmos/cosmos-sdk/x/params/types" - - chaintypes "github.com/InjectiveLabs/sdk-go/chain/types" -) - -// Parameter store keys. -var ( - KeyDenomCreationFee = []byte("DenomCreationFee") -) - -// ParamTable for gamm module. -func ParamKeyTable() paramtypes.KeyTable { - return paramtypes.NewKeyTable().RegisterParamSet(&Params{}) -} - -func NewParams(denomCreationFee sdk.Coins) Params { - return Params{ - DenomCreationFee: denomCreationFee, - } -} - -// default gamm module parameters. -func DefaultParams() Params { - return Params{ - DenomCreationFee: sdk.NewCoins(sdk.NewCoin(chaintypes.InjectiveCoin, math.NewIntWithDecimal(10, 18))), // 10 INJ - } -} - -// validate params. -func (p Params) Validate() error { - if err := validateDenomCreationFee(p.DenomCreationFee); err != nil { - return err - } - - return nil -} - -// Implements params.ParamSet. -func (p *Params) ParamSetPairs() paramtypes.ParamSetPairs { - return paramtypes.ParamSetPairs{ - paramtypes.NewParamSetPair(KeyDenomCreationFee, &p.DenomCreationFee, validateDenomCreationFee), - } -} - -func validateDenomCreationFee(i interface{}) error { - v, ok := i.(sdk.Coins) - if !ok { - return fmt.Errorf("invalid parameter type: %T", i) - } - - if v.Validate() != nil { - return fmt.Errorf("invalid denom creation fee: %+v", i) - } - - return nil -} diff --git a/chain/tokenfactory/types/tx.pb.go b/chain/tokenfactory/types/tx.pb.go index 10dc706d..5bcfbf5a 100644 --- a/chain/tokenfactory/types/tx.pb.go +++ b/chain/tokenfactory/types/tx.pb.go @@ -49,6 +49,8 @@ type MsgCreateDenom struct { Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty" yaml:"name"` Symbol string `protobuf:"bytes,4,opt,name=symbol,proto3" json:"symbol,omitempty" yaml:"symbol"` Decimals uint32 `protobuf:"varint,5,opt,name=decimals,proto3" json:"decimals,omitempty" yaml:"decimals"` + // true if admins are allowed to burn tokens from other addresses + AllowAdminBurn bool `protobuf:"varint,6,opt,name=allow_admin_burn,json=allowAdminBurn,proto3" json:"allow_admin_burn,omitempty" yaml:"allow_admin_burn"` } func (m *MsgCreateDenom) Reset() { *m = MsgCreateDenom{} } @@ -119,6 +121,13 @@ func (m *MsgCreateDenom) GetDecimals() uint32 { return 0 } +func (m *MsgCreateDenom) GetAllowAdminBurn() bool { + if m != nil { + return m.AllowAdminBurn + } + return false +} + // MsgCreateDenomResponse is the return value of MsgCreateDenom // It returns the full string of the newly created denom type MsgCreateDenomResponse struct { @@ -165,11 +174,12 @@ func (m *MsgCreateDenomResponse) GetNewTokenDenom() string { return "" } -// MsgMint is the sdk.Msg type for allowing an admin account to mint -// more of a token. For now, we only support minting to the sender account +// MsgMint is the sdk.Msg type for allowing an admin account or other permitted accounts to mint +// more of a token. type MsgMint struct { - Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` - Amount types.Coin `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount" yaml:"amount"` + Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` + Amount types.Coin `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount" yaml:"amount"` + Receiver string `protobuf:"bytes,3,opt,name=receiver,proto3" json:"receiver,omitempty" yaml:"receiver"` } func (m *MsgMint) Reset() { *m = MsgMint{} } @@ -219,6 +229,13 @@ func (m *MsgMint) GetAmount() types.Coin { return types.Coin{} } +func (m *MsgMint) GetReceiver() string { + if m != nil { + return m.Receiver + } + return "" +} + type MsgMintResponse struct { } @@ -256,10 +273,11 @@ func (m *MsgMintResponse) XXX_DiscardUnknown() { var xxx_messageInfo_MsgMintResponse proto.InternalMessageInfo // MsgBurn is the sdk.Msg type for allowing an admin account to burn -// a token. For now, we only support burning from the sender account. +// a token. type MsgBurn struct { - Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` - Amount types.Coin `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount" yaml:"amount"` + Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` + Amount types.Coin `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount" yaml:"amount"` + BurnFromAddress string `protobuf:"bytes,3,opt,name=burnFromAddress,proto3" json:"burnFromAddress,omitempty" yaml:"burn_from_address"` } func (m *MsgBurn) Reset() { *m = MsgBurn{} } @@ -309,6 +327,13 @@ func (m *MsgBurn) GetAmount() types.Coin { return types.Coin{} } +func (m *MsgBurn) GetBurnFromAddress() string { + if m != nil { + return m.BurnFromAddress + } + return "" +} + type MsgBurnResponse struct { } @@ -448,8 +473,9 @@ var xxx_messageInfo_MsgChangeAdminResponse proto.InternalMessageInfo // MsgSetDenomMetadata is the sdk.Msg type for allowing an admin account to set // the denom's bank metadata type MsgSetDenomMetadata struct { - Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` - Metadata types1.Metadata `protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata" yaml:"metadata"` + Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` + Metadata types1.Metadata `protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata" yaml:"metadata"` + AdminBurnDisabled *MsgSetDenomMetadata_AdminBurnDisabled `protobuf:"bytes,3,opt,name=admin_burn_disabled,json=adminBurnDisabled,proto3" json:"admin_burn_disabled,omitempty" yaml:"admin_burn_disabled"` } func (m *MsgSetDenomMetadata) Reset() { *m = MsgSetDenomMetadata{} } @@ -499,6 +525,58 @@ func (m *MsgSetDenomMetadata) GetMetadata() types1.Metadata { return types1.Metadata{} } +func (m *MsgSetDenomMetadata) GetAdminBurnDisabled() *MsgSetDenomMetadata_AdminBurnDisabled { + if m != nil { + return m.AdminBurnDisabled + } + return nil +} + +type MsgSetDenomMetadata_AdminBurnDisabled struct { + // true if the admin burn capability should be disabled + ShouldDisable bool `protobuf:"varint,1,opt,name=should_disable,json=shouldDisable,proto3" json:"should_disable,omitempty" yaml:"should_disable"` +} + +func (m *MsgSetDenomMetadata_AdminBurnDisabled) Reset() { *m = MsgSetDenomMetadata_AdminBurnDisabled{} } +func (m *MsgSetDenomMetadata_AdminBurnDisabled) String() string { return proto.CompactTextString(m) } +func (*MsgSetDenomMetadata_AdminBurnDisabled) ProtoMessage() {} +func (*MsgSetDenomMetadata_AdminBurnDisabled) Descriptor() ([]byte, []int) { + return fileDescriptor_b0b26fd7f19ce3c4, []int{8, 0} +} +func (m *MsgSetDenomMetadata_AdminBurnDisabled) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgSetDenomMetadata_AdminBurnDisabled) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgSetDenomMetadata_AdminBurnDisabled.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *MsgSetDenomMetadata_AdminBurnDisabled) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgSetDenomMetadata_AdminBurnDisabled.Merge(m, src) +} +func (m *MsgSetDenomMetadata_AdminBurnDisabled) XXX_Size() int { + return m.Size() +} +func (m *MsgSetDenomMetadata_AdminBurnDisabled) XXX_DiscardUnknown() { + xxx_messageInfo_MsgSetDenomMetadata_AdminBurnDisabled.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgSetDenomMetadata_AdminBurnDisabled proto.InternalMessageInfo + +func (m *MsgSetDenomMetadata_AdminBurnDisabled) GetShouldDisable() bool { + if m != nil { + return m.ShouldDisable + } + return false +} + // MsgSetDenomMetadataResponse defines the response structure for an executed // MsgSetDenomMetadata message. type MsgSetDenomMetadataResponse struct { @@ -639,6 +717,7 @@ func init() { proto.RegisterType((*MsgChangeAdmin)(nil), "injective.tokenfactory.v1beta1.MsgChangeAdmin") proto.RegisterType((*MsgChangeAdminResponse)(nil), "injective.tokenfactory.v1beta1.MsgChangeAdminResponse") proto.RegisterType((*MsgSetDenomMetadata)(nil), "injective.tokenfactory.v1beta1.MsgSetDenomMetadata") + proto.RegisterType((*MsgSetDenomMetadata_AdminBurnDisabled)(nil), "injective.tokenfactory.v1beta1.MsgSetDenomMetadata.AdminBurnDisabled") proto.RegisterType((*MsgSetDenomMetadataResponse)(nil), "injective.tokenfactory.v1beta1.MsgSetDenomMetadataResponse") proto.RegisterType((*MsgUpdateParams)(nil), "injective.tokenfactory.v1beta1.MsgUpdateParams") proto.RegisterType((*MsgUpdateParamsResponse)(nil), "injective.tokenfactory.v1beta1.MsgUpdateParamsResponse") @@ -649,63 +728,74 @@ func init() { } var fileDescriptor_b0b26fd7f19ce3c4 = []byte{ - // 888 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x56, 0xbd, 0x6f, 0xdb, 0x46, - 0x14, 0x37, 0x13, 0x49, 0xb5, 0xcf, 0x71, 0x65, 0x33, 0x6e, 0x2c, 0x33, 0x08, 0x15, 0x30, 0x45, - 0x3e, 0x1c, 0x88, 0x84, 0x62, 0x20, 0x41, 0xd5, 0x29, 0x4a, 0x86, 0x16, 0xa8, 0x80, 0x82, 0x69, - 0x97, 0xa2, 0x80, 0x7b, 0x24, 0xaf, 0x14, 0x6b, 0xf1, 0x4e, 0xe0, 0x1d, 0xed, 0x68, 0x2b, 0x8a, - 0x4e, 0x9d, 0xfa, 0x37, 0x74, 0xed, 0xe2, 0xa1, 0x7b, 0x57, 0x03, 0x1d, 0x1a, 0x74, 0xea, 0x24, - 0x14, 0xf6, 0xe0, 0x5d, 0x7f, 0x41, 0x71, 0x1f, 0xa4, 0x28, 0xa9, 0x6a, 0xa8, 0x4e, 0x5d, 0x24, - 0xf2, 0xde, 0xef, 0x7d, 0xfc, 0x7e, 0xf7, 0xde, 0x93, 0xc0, 0x83, 0x08, 0x7f, 0x83, 0x7c, 0x16, - 0x9d, 0x20, 0x87, 0x91, 0x63, 0x84, 0xbf, 0x86, 0x3e, 0x23, 0xc9, 0xc8, 0x39, 0x69, 0x7b, 0x88, - 0xc1, 0xb6, 0xc3, 0x5e, 0xdb, 0xc3, 0x84, 0x30, 0xa2, 0x9b, 0x39, 0xd0, 0x2e, 0x02, 0x6d, 0x05, - 0x34, 0x76, 0x43, 0x12, 0x12, 0x01, 0x75, 0xf8, 0x93, 0xf4, 0x32, 0x4c, 0x9f, 0xd0, 0x98, 0x50, - 0xc7, 0x83, 0x14, 0xe5, 0x31, 0x7d, 0x12, 0xe1, 0x05, 0x3b, 0x3e, 0xce, 0xed, 0xfc, 0x45, 0xd9, - 0xf7, 0x94, 0x3d, 0xa6, 0xa1, 0x73, 0xd2, 0xe6, 0x5f, 0xca, 0xb0, 0x2f, 0x0d, 0x47, 0x32, 0xa3, - 0x7c, 0x51, 0xa6, 0xc7, 0x6f, 0xa1, 0x34, 0x84, 0x09, 0x8c, 0x33, 0xf0, 0x0e, 0x8c, 0x23, 0x4c, - 0x1c, 0xf1, 0x29, 0x8f, 0xac, 0x9f, 0xae, 0x81, 0x77, 0x7b, 0x34, 0x7c, 0x91, 0x20, 0xc8, 0xd0, - 0x4b, 0x84, 0x49, 0xac, 0x3f, 0x02, 0x35, 0x8a, 0x70, 0x80, 0x92, 0x86, 0x76, 0x57, 0x7b, 0xb8, - 0xd1, 0xdd, 0x99, 0x8c, 0x9b, 0x5b, 0x23, 0x18, 0x0f, 0x3a, 0x96, 0x3c, 0xb7, 0x5c, 0x05, 0xd0, - 0x1d, 0xb0, 0x4e, 0x53, 0x2f, 0xe0, 0x6e, 0x8d, 0x6b, 0x02, 0x7c, 0x73, 0x32, 0x6e, 0xd6, 0x15, - 0x58, 0x59, 0x2c, 0x37, 0x07, 0xe9, 0xf7, 0x40, 0x05, 0xc3, 0x18, 0x35, 0xae, 0x0b, 0x70, 0x7d, - 0x32, 0x6e, 0x6e, 0x4a, 0x30, 0x3f, 0xb5, 0x5c, 0x61, 0x14, 0x05, 0x8c, 0x62, 0x8f, 0x0c, 0x1a, - 0x95, 0x85, 0x02, 0xc4, 0x39, 0x2f, 0x40, 0x3c, 0xf0, 0x02, 0x02, 0xe4, 0x47, 0x31, 0x1c, 0xd0, - 0x46, 0xf5, 0xae, 0xf6, 0x70, 0xab, 0x58, 0x40, 0x66, 0xb1, 0xdc, 0x1c, 0xd4, 0x39, 0xfc, 0xee, - 0xea, 0xec, 0x40, 0x95, 0xff, 0xc3, 0xd5, 0xd9, 0xc1, 0xbd, 0x25, 0xfa, 0xf9, 0x42, 0x90, 0x96, - 0x24, 0xf0, 0x25, 0xb8, 0x35, 0xab, 0x91, 0x8b, 0xe8, 0x90, 0x60, 0x8a, 0xf4, 0x2e, 0xa8, 0x63, - 0x74, 0x7a, 0x24, 0x5c, 0x8f, 0xa4, 0x0e, 0x52, 0x34, 0x63, 0x32, 0x6e, 0xde, 0x52, 0xd4, 0x66, - 0x01, 0x96, 0xbb, 0x85, 0xd1, 0xe9, 0x67, 0xfc, 0x40, 0xc4, 0xb2, 0x7e, 0xd6, 0xc0, 0x3b, 0x3d, - 0x1a, 0xf6, 0x22, 0xcc, 0x56, 0xd1, 0xfe, 0x23, 0x50, 0x83, 0x31, 0x49, 0x31, 0x13, 0xca, 0x6f, - 0x3e, 0xd9, 0xb7, 0x55, 0x63, 0xf0, 0xf6, 0xcb, 0x3a, 0xd5, 0x7e, 0x41, 0x22, 0xdc, 0x7d, 0xef, - 0x7c, 0xdc, 0x5c, 0x9b, 0x46, 0x92, 0x6e, 0x96, 0xab, 0xfc, 0x3b, 0x8f, 0xe7, 0x34, 0xb9, 0xbd, - 0x44, 0x93, 0x38, 0xc2, 0xcc, 0xda, 0x01, 0x75, 0x55, 0x6c, 0x26, 0x42, 0x46, 0xa0, 0x9b, 0x26, - 0xf8, 0xff, 0x4d, 0xc0, 0x4b, 0x13, 0xac, 0x08, 0xf0, 0x62, 0x73, 0x02, 0xbf, 0x69, 0x72, 0x08, - 0xfa, 0x10, 0x87, 0xe8, 0x79, 0x10, 0x47, 0x2b, 0xf1, 0xb8, 0x0f, 0xaa, 0xc5, 0x09, 0xd8, 0x9e, - 0x8c, 0x9b, 0x37, 0xb2, 0x06, 0x14, 0xf7, 0x2d, 0xcd, 0x7a, 0x1b, 0x6c, 0xf0, 0x56, 0x80, 0x3c, - 0xbe, 0x1a, 0x80, 0xdd, 0xc9, 0xb8, 0xb9, 0x3d, 0xed, 0x12, 0x61, 0xb2, 0xdc, 0x75, 0x8c, 0x4e, - 0x45, 0x15, 0xe5, 0xbb, 0x55, 0x54, 0xde, 0x92, 0xfe, 0x0d, 0xd9, 0xad, 0x53, 0x32, 0x39, 0xcf, - 0xdf, 0x35, 0x70, 0xb3, 0x47, 0xc3, 0x57, 0x88, 0x89, 0xce, 0xeb, 0x21, 0x06, 0x03, 0xc8, 0xe0, - 0x2a, 0x64, 0x5d, 0xb0, 0x1e, 0x2b, 0x37, 0x75, 0x6d, 0x77, 0xa6, 0xd7, 0x86, 0x8f, 0xf3, 0x6b, - 0xcb, 0x62, 0x77, 0xf7, 0xd4, 0xd5, 0xa9, 0x99, 0xcc, 0x9c, 0x2d, 0x37, 0x8f, 0xd3, 0xf9, 0x60, - 0x8e, 0xe5, 0xa3, 0x25, 0x2c, 0x29, 0x62, 0x72, 0x20, 0x5b, 0x79, 0x94, 0x3b, 0xe0, 0xf6, 0x3f, - 0x10, 0xca, 0x09, 0x9f, 0x6b, 0xe2, 0xb2, 0x3f, 0x1f, 0x06, 0x90, 0xa1, 0x4f, 0xc5, 0x2a, 0xd4, - 0x9f, 0x82, 0x0d, 0x98, 0xb2, 0x3e, 0x49, 0x22, 0x36, 0x52, 0x7c, 0x1b, 0x7f, 0xfc, 0xd2, 0xda, - 0x55, 0x2c, 0x9e, 0x07, 0x41, 0x82, 0x28, 0x7d, 0xc5, 0x92, 0x08, 0x87, 0xee, 0x14, 0xaa, 0xbf, - 0x04, 0x35, 0xb9, 0x4c, 0x15, 0xef, 0xfb, 0xf6, 0xbf, 0xff, 0x48, 0xd8, 0x32, 0x5f, 0xb7, 0xc2, - 0x05, 0x70, 0x95, 0x6f, 0xe7, 0x19, 0xe7, 0x3a, 0x8d, 0xca, 0xe9, 0xbe, 0xbf, 0x84, 0x6e, 0x2a, - 0xaa, 0x6e, 0x49, 0x47, 0x6b, 0x1f, 0xec, 0xcd, 0x31, 0xc9, 0x58, 0x3e, 0xf9, 0xb5, 0x0a, 0xae, - 0xf7, 0x68, 0xa8, 0xa7, 0x60, 0xb3, 0xb8, 0xc7, 0xed, 0xb7, 0x15, 0x38, 0xbb, 0xd3, 0x8c, 0xa7, - 0xab, 0xe1, 0xf3, 0x1d, 0xf8, 0x15, 0xa8, 0x88, 0xdd, 0xf5, 0xa0, 0x84, 0x3f, 0x07, 0x1a, 0x4e, - 0x49, 0x60, 0x31, 0x83, 0x58, 0x2e, 0x65, 0x32, 0x70, 0x60, 0xa9, 0x0c, 0xc5, 0x0d, 0x20, 0xa4, - 0x2b, 0x4c, 0x7f, 0x29, 0xe9, 0xa6, 0xf8, 0x72, 0xd2, 0x2d, 0x0e, 0xa4, 0xfe, 0xbd, 0x06, 0xb6, - 0x17, 0xa6, 0xf1, 0xb0, 0x44, 0xb0, 0x79, 0x27, 0xe3, 0xc3, 0xff, 0xe0, 0x94, 0x97, 0xf1, 0x1a, - 0xdc, 0x98, 0x19, 0x91, 0x32, 0xf2, 0x15, 0x1d, 0x8c, 0x67, 0x2b, 0x3a, 0x64, 0x99, 0x8d, 0xea, - 0xb7, 0x57, 0x67, 0x07, 0x5a, 0x77, 0x70, 0x7e, 0x61, 0x6a, 0x6f, 0x2e, 0x4c, 0xed, 0xaf, 0x0b, - 0x53, 0xfb, 0xf1, 0xd2, 0x5c, 0x7b, 0x73, 0x69, 0xae, 0xfd, 0x79, 0x69, 0xae, 0x7d, 0xe1, 0x86, - 0x11, 0xeb, 0xa7, 0x9e, 0xed, 0x93, 0xd8, 0xf9, 0x38, 0xcb, 0xf1, 0x09, 0xf4, 0xa8, 0x93, 0x67, - 0x6c, 0xf9, 0x24, 0x41, 0xc5, 0xd7, 0x3e, 0x8c, 0xb0, 0x13, 0x93, 0x20, 0x1d, 0x20, 0x3a, 0x3b, - 0x52, 0x6c, 0x34, 0x44, 0xd4, 0xab, 0x89, 0xbf, 0x3e, 0x87, 0x7f, 0x07, 0x00, 0x00, 0xff, 0xff, - 0xf0, 0x22, 0x4e, 0x61, 0x0f, 0x0a, 0x00, 0x00, + // 1063 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x56, 0xcf, 0x6f, 0xdc, 0x44, + 0x14, 0x8e, 0x9b, 0x1f, 0x24, 0x93, 0xe6, 0x97, 0x93, 0x36, 0x1b, 0x47, 0x5d, 0x07, 0x17, 0xb5, + 0x69, 0xaa, 0xb5, 0x95, 0x44, 0x6a, 0x45, 0xb8, 0x50, 0x37, 0x45, 0x20, 0x58, 0x09, 0xb9, 0xf4, + 0x82, 0x90, 0x96, 0xd9, 0xf5, 0xd4, 0x31, 0x59, 0xcf, 0x44, 0x9e, 0x71, 0xd2, 0xdc, 0x10, 0xe2, + 0xc4, 0x89, 0x0b, 0xff, 0x03, 0xc7, 0x1c, 0x38, 0xc3, 0x35, 0x12, 0x97, 0x8a, 0x13, 0x07, 0x64, + 0xa1, 0xe4, 0x10, 0x71, 0xf5, 0x89, 0x23, 0x9a, 0x1f, 0xf6, 0x3a, 0xbb, 0x0d, 0xf5, 0xf6, 0xd2, + 0x4b, 0xbb, 0x9e, 0xf7, 0x7d, 0xf3, 0xe6, 0x7d, 0xef, 0x7b, 0x33, 0x01, 0x77, 0x43, 0xfc, 0x0d, + 0xea, 0xb0, 0xf0, 0x10, 0x39, 0x8c, 0xec, 0x23, 0xfc, 0x1c, 0x76, 0x18, 0x89, 0x8f, 0x9d, 0xc3, + 0xcd, 0x36, 0x62, 0x70, 0xd3, 0x61, 0x2f, 0xec, 0x83, 0x98, 0x30, 0xa2, 0xd7, 0x0b, 0xa0, 0x5d, + 0x06, 0xda, 0x0a, 0x68, 0x2c, 0x05, 0x24, 0x20, 0x02, 0xea, 0xf0, 0x5f, 0x92, 0x65, 0xd4, 0x3b, + 0x84, 0x46, 0x84, 0x3a, 0x6d, 0x48, 0x51, 0xb1, 0x67, 0x87, 0x84, 0x78, 0x20, 0x8e, 0xf7, 0x8b, + 0x38, 0xff, 0x50, 0xf1, 0x65, 0x15, 0x8f, 0x68, 0xe0, 0x1c, 0x6e, 0xf2, 0xff, 0x54, 0x60, 0x45, + 0x06, 0x5a, 0x32, 0xa3, 0xfc, 0x50, 0xa1, 0xfb, 0xaf, 0x29, 0xe9, 0x00, 0xc6, 0x30, 0xca, 0xc1, + 0x0b, 0x30, 0x0a, 0x31, 0x71, 0xc4, 0xbf, 0x72, 0xc9, 0xfa, 0xe7, 0x1a, 0x98, 0x6d, 0xd2, 0xe0, + 0x71, 0x8c, 0x20, 0x43, 0xbb, 0x08, 0x93, 0x48, 0xbf, 0x07, 0x26, 0x28, 0xc2, 0x3e, 0x8a, 0x6b, + 0xda, 0x9a, 0xb6, 0x3e, 0xe5, 0x2e, 0x64, 0xa9, 0x39, 0x73, 0x0c, 0xa3, 0xee, 0x8e, 0x25, 0xd7, + 0x2d, 0x4f, 0x01, 0x74, 0x07, 0x4c, 0xd2, 0xa4, 0xed, 0x73, 0x5a, 0xed, 0x9a, 0x00, 0x2f, 0x66, + 0xa9, 0x39, 0xa7, 0xc0, 0x2a, 0x62, 0x79, 0x05, 0x48, 0xbf, 0x0d, 0xc6, 0x30, 0x8c, 0x50, 0x6d, + 0x54, 0x80, 0xe7, 0xb2, 0xd4, 0x9c, 0x96, 0x60, 0xbe, 0x6a, 0x79, 0x22, 0x28, 0x0e, 0x70, 0x1c, + 0xb5, 0x49, 0xb7, 0x36, 0x36, 0x70, 0x00, 0xb1, 0xce, 0x0f, 0x20, 0x7e, 0xf0, 0x03, 0xf8, 0xa8, + 0x13, 0x46, 0xb0, 0x4b, 0x6b, 0xe3, 0x6b, 0xda, 0xfa, 0x4c, 0xf9, 0x00, 0x79, 0xc4, 0xf2, 0x0a, + 0x90, 0xfe, 0x04, 0xcc, 0xc3, 0x6e, 0x97, 0x1c, 0xb5, 0xa0, 0x1f, 0x85, 0xb8, 0xd5, 0x4e, 0x62, + 0x5c, 0x9b, 0x58, 0xd3, 0xd6, 0x27, 0xdd, 0xd5, 0x2c, 0x35, 0x97, 0x25, 0xb1, 0x1f, 0x61, 0x79, + 0xb3, 0x62, 0xe9, 0x11, 0x5f, 0x71, 0x93, 0x18, 0xef, 0x6c, 0x7f, 0x77, 0x71, 0xb2, 0xa1, 0x54, + 0xf8, 0xe1, 0xe2, 0x64, 0xe3, 0xf6, 0x15, 0x6d, 0xe8, 0x08, 0x5d, 0x1b, 0x52, 0x87, 0xaf, 0xc0, + 0xcd, 0xcb, 0x52, 0x7b, 0x88, 0x1e, 0x10, 0x4c, 0x91, 0xee, 0x82, 0x39, 0x8c, 0x8e, 0x5a, 0x82, + 0xda, 0x92, 0x72, 0x4a, 0xed, 0x8d, 0x2c, 0x35, 0x6f, 0x2a, 0x85, 0x2e, 0x03, 0x2c, 0x6f, 0x06, + 0xa3, 0xa3, 0x2f, 0xf8, 0x82, 0xd8, 0xcb, 0xfa, 0x4b, 0x03, 0xef, 0x34, 0x69, 0xd0, 0x0c, 0x31, + 0x1b, 0xa6, 0x85, 0x1f, 0x83, 0x09, 0x18, 0x91, 0x04, 0x33, 0xd1, 0xc0, 0xe9, 0xad, 0x15, 0x5b, + 0xf9, 0x8b, 0xbb, 0x38, 0x37, 0xbc, 0xfd, 0x98, 0x84, 0xd8, 0xbd, 0x71, 0x9a, 0x9a, 0x23, 0xbd, + 0x9d, 0x24, 0xcd, 0xf2, 0x14, 0x9f, 0xf7, 0x22, 0x46, 0x1d, 0x14, 0x1e, 0xa2, 0x58, 0xf5, 0xb7, + 0xd4, 0x8b, 0x3c, 0x62, 0x79, 0x05, 0x68, 0xe7, 0x7e, 0x9f, 0x88, 0xab, 0x57, 0x88, 0x18, 0x85, + 0x98, 0x59, 0x0b, 0x60, 0x4e, 0x55, 0x97, 0xab, 0x66, 0xfd, 0x2b, 0x2b, 0xe6, 0x0d, 0x79, 0x3b, + 0x15, 0x7f, 0x0a, 0xe6, 0xb8, 0x3d, 0x3e, 0x8a, 0x49, 0xf4, 0xc8, 0xf7, 0x63, 0x44, 0xa9, 0x2a, + 0xfc, 0xdd, 0x2c, 0x35, 0x6b, 0x92, 0xc3, 0x01, 0xad, 0xe7, 0x31, 0x89, 0x5a, 0x50, 0x42, 0xac, + 0x9f, 0x2f, 0x4e, 0x36, 0x34, 0xaf, 0x9f, 0x59, 0x59, 0x0d, 0x61, 0x48, 0xa9, 0x06, 0xaf, 0xbc, + 0x50, 0xe3, 0x77, 0x4d, 0x4e, 0xf2, 0x1e, 0xc4, 0x01, 0x12, 0x4e, 0x1d, 0x46, 0x94, 0x3b, 0x60, + 0xbc, 0x3c, 0xc6, 0xf3, 0x59, 0x6a, 0x5e, 0xcf, 0xa7, 0x48, 0xb8, 0x4d, 0x86, 0xf5, 0x4d, 0x30, + 0xc5, 0x8d, 0x28, 0x66, 0x43, 0x15, 0xbb, 0x94, 0xa5, 0xe6, 0x7c, 0xcf, 0xa3, 0x22, 0x64, 0x79, + 0x93, 0x18, 0xc9, 0x79, 0xa9, 0x3e, 0x2b, 0xe2, 0xe4, 0x0d, 0xc9, 0xaf, 0xc9, 0x59, 0xe9, 0x15, + 0x53, 0xd4, 0xf9, 0xeb, 0x28, 0x58, 0x6c, 0xd2, 0xe0, 0x29, 0x62, 0xc2, 0xf7, 0x4d, 0xc4, 0xa0, + 0x0f, 0x19, 0x1c, 0xa6, 0x58, 0x0f, 0x4c, 0x46, 0x8a, 0xa6, 0x3c, 0x70, 0xab, 0xe7, 0x01, 0xbc, + 0x5f, 0x78, 0x20, 0xdf, 0xdb, 0x5d, 0x56, 0x3e, 0x50, 0x66, 0xce, 0xc9, 0x96, 0x57, 0xec, 0xa3, + 0xff, 0xa4, 0x81, 0xc5, 0xde, 0x8d, 0xd1, 0xf2, 0x43, 0x0a, 0xdb, 0x5d, 0xe4, 0x0b, 0x8d, 0xa6, + 0xb7, 0x9e, 0xd8, 0xff, 0xff, 0xa2, 0xd8, 0xaf, 0xa8, 0xc8, 0x2e, 0xae, 0x9b, 0x5d, 0xb5, 0x99, + 0x5b, 0xcf, 0x52, 0xd3, 0x50, 0x5e, 0x1c, 0xcc, 0x65, 0x79, 0x0b, 0xb0, 0x9f, 0x62, 0x3c, 0x03, + 0x0b, 0x03, 0xfb, 0xe8, 0x1f, 0x82, 0x59, 0xba, 0x47, 0x92, 0xae, 0x9f, 0x73, 0x85, 0x66, 0x93, + 0xee, 0x4a, 0x96, 0x9a, 0x37, 0x94, 0x66, 0x97, 0xe2, 0x96, 0x37, 0x23, 0x17, 0xd4, 0x16, 0x3b, + 0xef, 0xf7, 0x35, 0xf5, 0xde, 0x15, 0x4d, 0xa5, 0x88, 0xc9, 0xdb, 0xaf, 0x51, 0x88, 0x76, 0x0b, + 0xac, 0xbe, 0xa2, 0xda, 0xa2, 0xbf, 0xa7, 0x9a, 0xf0, 0xf6, 0xb3, 0x03, 0x1f, 0x32, 0xf4, 0xb9, + 0x78, 0xbe, 0xf4, 0x07, 0x60, 0x0a, 0x26, 0x6c, 0x8f, 0xc4, 0x21, 0x3b, 0x56, 0xed, 0xad, 0xfd, + 0xf1, 0x4b, 0x63, 0x49, 0x35, 0x4d, 0x8d, 0xd0, 0x53, 0x16, 0x87, 0x38, 0xf0, 0x7a, 0x50, 0x7d, + 0x17, 0x4c, 0xc8, 0x07, 0x50, 0xb5, 0xf9, 0xce, 0xeb, 0xda, 0x20, 0xf3, 0xb9, 0x63, 0xbc, 0xdf, + 0x9e, 0xe2, 0xee, 0x3c, 0xe4, 0xb5, 0xf6, 0x76, 0xe5, 0xe5, 0xbe, 0x77, 0x45, 0xb9, 0x89, 0x38, + 0x75, 0x43, 0x12, 0xad, 0x15, 0xb0, 0xdc, 0x57, 0x49, 0x5e, 0xe5, 0xd6, 0x6f, 0xe3, 0x60, 0xb4, + 0x49, 0x03, 0x3d, 0x01, 0xd3, 0xe5, 0xb7, 0xd7, 0xae, 0xe0, 0x93, 0x12, 0xde, 0x78, 0x30, 0x1c, + 0xbe, 0x78, 0x70, 0xbe, 0x06, 0x63, 0xe2, 0xa1, 0xb8, 0x5b, 0x81, 0xcf, 0x81, 0x86, 0x53, 0x11, + 0x58, 0xce, 0x20, 0x2e, 0xe6, 0x2a, 0x19, 0x38, 0xb0, 0x52, 0x86, 0xf2, 0x85, 0x27, 0xa4, 0x2b, + 0x5d, 0x76, 0x95, 0xa4, 0xeb, 0xe1, 0xab, 0x49, 0x37, 0x78, 0xff, 0xe8, 0xdf, 0x6b, 0x60, 0x7e, + 0xe0, 0xf2, 0xd9, 0x7e, 0x83, 0xf9, 0x36, 0x3e, 0x78, 0x03, 0x52, 0x71, 0x8c, 0x17, 0xe0, 0xfa, + 0xa5, 0x11, 0xa9, 0x22, 0x5f, 0x99, 0x60, 0x3c, 0x1c, 0x92, 0x90, 0x67, 0x36, 0xc6, 0xbf, 0xe5, + 0x0f, 0x98, 0xdb, 0x3d, 0x3d, 0xab, 0x6b, 0x2f, 0xcf, 0xea, 0xda, 0xdf, 0x67, 0x75, 0xed, 0xc7, + 0xf3, 0xfa, 0xc8, 0xcb, 0xf3, 0xfa, 0xc8, 0x9f, 0xe7, 0xf5, 0x91, 0x2f, 0xbd, 0x20, 0x64, 0x7b, + 0x49, 0xdb, 0xee, 0x90, 0xc8, 0xf9, 0x24, 0xcf, 0xf1, 0x19, 0x6c, 0x53, 0xa7, 0xc8, 0xd8, 0xe8, + 0x90, 0x18, 0x95, 0x3f, 0xf7, 0x60, 0x88, 0x9d, 0x88, 0xf8, 0x49, 0x17, 0xd1, 0xcb, 0x23, 0xc5, + 0x8e, 0x0f, 0x10, 0x6d, 0x4f, 0x88, 0x3f, 0x57, 0xb7, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0xaa, + 0x21, 0x43, 0x44, 0xc3, 0x0b, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -988,6 +1078,16 @@ func (m *MsgCreateDenom) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.AllowAdminBurn { + i-- + if m.AllowAdminBurn { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x30 + } if m.Decimals != 0 { i = encodeVarintTx(dAtA, i, uint64(m.Decimals)) i-- @@ -1074,6 +1174,13 @@ func (m *MsgMint) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if len(m.Receiver) > 0 { + i -= len(m.Receiver) + copy(dAtA[i:], m.Receiver) + i = encodeVarintTx(dAtA, i, uint64(len(m.Receiver))) + i-- + dAtA[i] = 0x1a + } { size, err := m.Amount.MarshalToSizedBuffer(dAtA[:i]) if err != nil { @@ -1137,6 +1244,13 @@ func (m *MsgBurn) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if len(m.BurnFromAddress) > 0 { + i -= len(m.BurnFromAddress) + copy(dAtA[i:], m.BurnFromAddress) + i = encodeVarintTx(dAtA, i, uint64(len(m.BurnFromAddress))) + i-- + dAtA[i] = 0x1a + } { size, err := m.Amount.MarshalToSizedBuffer(dAtA[:i]) if err != nil { @@ -1267,6 +1381,18 @@ func (m *MsgSetDenomMetadata) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.AdminBurnDisabled != nil { + { + size, err := m.AdminBurnDisabled.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } { size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) if err != nil { @@ -1287,6 +1413,39 @@ func (m *MsgSetDenomMetadata) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *MsgSetDenomMetadata_AdminBurnDisabled) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *MsgSetDenomMetadata_AdminBurnDisabled) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgSetDenomMetadata_AdminBurnDisabled) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ShouldDisable { + i-- + if m.ShouldDisable { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + func (m *MsgSetDenomMetadataResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -1409,6 +1568,9 @@ func (m *MsgCreateDenom) Size() (n int) { if m.Decimals != 0 { n += 1 + sovTx(uint64(m.Decimals)) } + if m.AllowAdminBurn { + n += 2 + } return n } @@ -1437,6 +1599,10 @@ func (m *MsgMint) Size() (n int) { } l = m.Amount.Size() n += 1 + l + sovTx(uint64(l)) + l = len(m.Receiver) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } return n } @@ -1461,6 +1627,10 @@ func (m *MsgBurn) Size() (n int) { } l = m.Amount.Size() n += 1 + l + sovTx(uint64(l)) + l = len(m.BurnFromAddress) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } return n } @@ -1515,6 +1685,22 @@ func (m *MsgSetDenomMetadata) Size() (n int) { } l = m.Metadata.Size() n += 1 + l + sovTx(uint64(l)) + if m.AdminBurnDisabled != nil { + l = m.AdminBurnDisabled.Size() + n += 1 + l + sovTx(uint64(l)) + } + return n +} + +func (m *MsgSetDenomMetadata_AdminBurnDisabled) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ShouldDisable { + n += 2 + } return n } @@ -1733,6 +1919,26 @@ func (m *MsgCreateDenom) Unmarshal(dAtA []byte) error { break } } + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AllowAdminBurn", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.AllowAdminBurn = bool(v != 0) default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -1930,6 +2136,38 @@ func (m *MsgMint) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Receiver", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Receiver = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -2095,6 +2333,38 @@ func (m *MsgBurn) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BurnFromAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BurnFromAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -2456,6 +2726,112 @@ func (m *MsgSetDenomMetadata) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AdminBurnDisabled", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.AdminBurnDisabled == nil { + m.AdminBurnDisabled = &MsgSetDenomMetadata_AdminBurnDisabled{} + } + if err := m.AdminBurnDisabled.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgSetDenomMetadata_AdminBurnDisabled) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AdminBurnDisabled: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AdminBurnDisabled: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ShouldDisable", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.ShouldDisable = bool(v != 0) default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) diff --git a/chain/types/account.go b/chain/types/account.go deleted file mode 100644 index 7d6be3d5..00000000 --- a/chain/types/account.go +++ /dev/null @@ -1,186 +0,0 @@ -package types - -import ( - "bytes" - "encoding/json" - "fmt" - "strings" - - authtypes "github.com/cosmos/cosmos-sdk/x/auth/types" - "gopkg.in/yaml.v2" - - "cosmossdk.io/errors" - codectypes "github.com/cosmos/cosmos-sdk/codec/types" - sdk "github.com/cosmos/cosmos-sdk/types" - sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" - - ethcmn "github.com/ethereum/go-ethereum/common" - ethcrypto "github.com/ethereum/go-ethereum/crypto" -) - -var ( - _ sdk.AccountI = (*EthAccount)(nil) - _ authtypes.GenesisAccount = (*EthAccount)(nil) - _ codectypes.UnpackInterfacesMessage = (*EthAccount)(nil) -) - -var EmptyCodeHash = ethcrypto.Keccak256(nil) - -// ---------------------------------------------------------------------------- -// Main Ethermint account -// ---------------------------------------------------------------------------- - -// ProtoAccount defines the prototype function for BaseAccount used for an -// AccountKeeper. -func ProtoAccount() sdk.AccountI { - return &EthAccount{ - BaseAccount: &authtypes.BaseAccount{}, - CodeHash: ethcrypto.Keccak256(nil), - } -} - -// EthAddress returns the account address ethereum format. -func (acc EthAccount) EthAddress() ethcmn.Address { - return ethcmn.BytesToAddress(acc.GetAddress().Bytes()) -} - -type ethAccountPretty struct { - Address string `json:"address" yaml:"address"` - EthAddress string `json:"eth_address" yaml:"eth_address"` - PubKey string `json:"public_key" yaml:"public_key"` - AccountNumber uint64 `json:"account_number" yaml:"account_number"` - Sequence uint64 `json:"sequence" yaml:"sequence"` - CodeHash string `json:"code_hash" yaml:"code_hash"` -} - -// MarshalYAML returns the YAML representation of an account. -func (acc EthAccount) MarshalYAML() (interface{}, error) { - alias := ethAccountPretty{ - Address: acc.Address, - EthAddress: acc.EthAddress().String(), - AccountNumber: acc.AccountNumber, - Sequence: acc.Sequence, - CodeHash: ethcmn.Bytes2Hex(acc.CodeHash), - PubKey: "", - } - - var err error - - bz, err := yaml.Marshal(alias) - if err != nil { - return nil, err - } - - return string(bz), err -} - -// MarshalJSON returns the JSON representation of an EthAccount. -func (acc EthAccount) MarshalJSON() ([]byte, error) { - var ethAddress = "" - - if acc.BaseAccount != nil && acc.Address == "" { - ethAddress = acc.EthAddress().String() - } - - alias := ethAccountPretty{ - Address: acc.Address, - EthAddress: ethAddress, - AccountNumber: acc.AccountNumber, - Sequence: acc.Sequence, - CodeHash: ethcmn.Bytes2Hex(acc.CodeHash), - PubKey: "", - } - - return json.Marshal(alias) -} - -// UnmarshalJSON unmarshals raw JSON bytes into an EthAccount. -func (acc *EthAccount) UnmarshalJSON(bz []byte) error { - var ( - alias ethAccountPretty - err error - ) - - if err := json.Unmarshal(bz, &alias); err != nil { - return err - } - - switch { - case alias.Address != "" && alias.EthAddress != "": - // Both addresses provided. Verify correctness - ethAddress := ethcmn.HexToAddress(alias.EthAddress) - - var address sdk.AccAddress - address, err = sdk.AccAddressFromBech32(alias.Address) - if err != nil { - return err - } - - ethAddressFromAccAddress := ethcmn.BytesToAddress(address.Bytes()) - - if !bytes.Equal(ethAddress.Bytes(), address.Bytes()) { - err = errors.Wrapf( - sdkerrors.ErrInvalidAddress, - "expected %s, got %s", - ethAddressFromAccAddress.String(), ethAddress.String(), - ) - } - - case alias.Address != "" && alias.EthAddress == "": - // unmarshal sdk.AccAddress only. Do nothing here - case alias.Address == "" && alias.EthAddress != "": - // retrieve sdk.AccAddress from ethereum address - ethAddress := ethcmn.HexToAddress(alias.EthAddress) - alias.Address = sdk.AccAddress(ethAddress.Bytes()).String() - case alias.Address == "" && alias.EthAddress == "": - err = errors.Wrapf( - sdkerrors.ErrInvalidAddress, - "account must contain address in Ethereum Hex or Cosmos Bech32 format", - ) - } - - if err != nil { - return err - } - - acc.BaseAccount = &authtypes.BaseAccount{ - Address: alias.Address, - AccountNumber: alias.AccountNumber, - Sequence: alias.Sequence, - } - - acc.CodeHash = ethcmn.HexToHash(alias.CodeHash).Bytes() - - return nil -} - -// String implements the fmt.Stringer interface -func (acc EthAccount) String() string { - out, _ := yaml.Marshal(acc) - return string(out) -} - -func CosmosAddressToEthAddress(addr string) (ethcmn.Address, error) { - if strings.HasPrefix(addr, sdk.GetConfig().GetBech32AccountAddrPrefix()) { - // Check to see if address is Cosmos bech32 formatted - toAddr, err := sdk.AccAddressFromBech32(addr) - if err != nil { - return ethcmn.Address{}, errors.Wrap(err, "must provide a valid Bech32 address") - } - ethAddr := ethcmn.BytesToAddress(toAddr.Bytes()) - return ethAddr, nil - } - - if !strings.HasPrefix(addr, "0x") { - addr = "0x" + addr - } - - valid := ethcmn.IsHexAddress(addr) - if !valid { - return ethcmn.Address{}, fmt.Errorf("%s is not a valid Ethereum or Cosmos address", addr) - } - - ethAddr := ethcmn.HexToAddress(addr) - - return ethAddr, nil -} diff --git a/chain/types/chain_id.go b/chain/types/chain_id.go deleted file mode 100644 index 6882db48..00000000 --- a/chain/types/chain_id.go +++ /dev/null @@ -1,54 +0,0 @@ -package types - -import ( - "fmt" - "math/big" - "regexp" - "strings" - - "cosmossdk.io/errors" - tmrand "github.com/cometbft/cometbft/libs/rand" -) - -var ( - regexChainID = `[a-z]*` - regexSeparator = `-{1}` - regexEpoch = `[1-9][0-9]*` - injectiveChainID = regexp.MustCompile(fmt.Sprintf(`^(%s)%s(%s)$`, regexChainID, regexSeparator, regexEpoch)) -) - -// IsValidChainID returns false if the given chain identifier is incorrectly formatted. -func IsValidChainID(chainID string) bool { - if len(chainID) > 48 { - return false - } - - return injectiveChainID.MatchString(chainID) -} - -// ParseChainID parses a string chain identifier's epoch to an Ethereum-compatible -// chain-id in *big.Int format. The function returns an error if the chain-id has an invalid format -func ParseChainID(chainID string) (*big.Int, error) { - chainID = strings.TrimSpace(chainID) - if len(chainID) > 48 { - return nil, errors.Wrapf(ErrInvalidChainID, "chain-id '%s' cannot exceed 48 chars", chainID) - } - - matches := injectiveChainID.FindStringSubmatch(chainID) - if matches == nil || len(matches) != 3 || matches[1] == "" { - return nil, errors.Wrap(ErrInvalidChainID, chainID) - } - - // verify that the chain-id entered is a base 10 integer - chainIDInt, ok := new(big.Int).SetString(matches[2], 10) - if !ok { - return nil, errors.Wrapf(ErrInvalidChainID, "epoch %s must be base-10 integer format", matches[2]) - } - - return chainIDInt, nil -} - -// GenerateRandomChainID returns a random chain-id in the valid format. -func GenerateRandomChainID() string { - return fmt.Sprintf("injective-%d", 10+tmrand.Intn(10000)) -} diff --git a/chain/types/code.go b/chain/types/code.go deleted file mode 100644 index fa1da75d..00000000 --- a/chain/types/code.go +++ /dev/null @@ -1,12 +0,0 @@ -package types - -// ---------------------------------------------------------------------------- -// Code -// ---------------------------------------------------------------------------- - -// Code is account Code type alias -type Code []byte - -func (c Code) String() string { - return string(c) -} diff --git a/chain/types/coin.go b/chain/types/coin.go deleted file mode 100644 index b8ec01ae..00000000 --- a/chain/types/coin.go +++ /dev/null @@ -1,33 +0,0 @@ -package types - -import ( - "cosmossdk.io/math" - sdk "github.com/cosmos/cosmos-sdk/types" -) - -const ( - // INJ defines the default coin denomination used in Ethermint in: - // - // - Staking parameters: denomination used as stake in the dPoS chain - // - Mint parameters: denomination minted due to fee distribution rewards - // - Governance parameters: denomination used for spam prevention in proposal deposits - // - Crisis parameters: constant fee denomination used for spam prevention to check broken invariant - // - EVM parameters: denomination used for running EVM state transitions in Ethermint. - InjectiveCoin string = "inj" - - // BaseDenomUnit defines the base denomination unit for Photons. - // 1 photon = 1x10^{BaseDenomUnit} inj - BaseDenomUnit = 18 -) - -// NewInjectiveCoin is a utility function that returns an "inj" coin with the given math.Int amount. -// The function will panic if the provided amount is negative. -func NewInjectiveCoin(amount math.Int) sdk.Coin { - return sdk.NewCoin(InjectiveCoin, amount) -} - -// NewInjectiveCoinInt64 is a utility function that returns an "inj" coin with the given int64 amount. -// The function will panic if the provided amount is negative. -func NewInjectiveCoinInt64(amount int64) sdk.Coin { - return sdk.NewInt64Coin(InjectiveCoin, amount) -} diff --git a/chain/types/errors.go b/chain/types/errors.go deleted file mode 100644 index 2408fad5..00000000 --- a/chain/types/errors.go +++ /dev/null @@ -1,15 +0,0 @@ -package types - -import "cosmossdk.io/errors" - -const ( - // RootCodespace is the codespace for all errors defined in this package - RootCodespace = "injective" -) - -// NOTE: We can't use 1 since that error code is reserved for internal errors. - -var ( - // ErrInvalidChainID returns an error resulting from an invalid chain ID. - ErrInvalidChainID = errors.Register(RootCodespace, 3, "invalid chain ID") -) diff --git a/chain/types/gas.go b/chain/types/gas.go deleted file mode 100644 index b14660de..00000000 --- a/chain/types/gas.go +++ /dev/null @@ -1,97 +0,0 @@ -package types - -import ( - "fmt" - "math" - "sync" - - storetypes "cosmossdk.io/store/types" -) - -type infiniteGasMeter struct { - consumed storetypes.Gas - mux sync.RWMutex -} - -// NewThreadsafeInfiniteGasMeter returns a reference to a new thread-safe infiniteGasMeter. -func NewThreadsafeInfiniteGasMeter() storetypes.GasMeter { - return &infiniteGasMeter{ - consumed: 0, - } -} - -func (g *infiniteGasMeter) GasRemaining() storetypes.Gas { - return math.MaxUint64 -} - -func (g *infiniteGasMeter) GasConsumed() storetypes.Gas { - g.mux.RLock() - defer g.mux.RUnlock() - - return g.consumed -} - -func (g *infiniteGasMeter) GasConsumedToLimit() storetypes.Gas { - g.mux.RLock() - defer g.mux.RUnlock() - - return g.consumed -} - -func (g *infiniteGasMeter) Limit() storetypes.Gas { - return 0 -} - -func (g *infiniteGasMeter) ConsumeGas(amount storetypes.Gas, descriptor string) { - g.mux.Lock() - defer g.mux.Unlock() - - var overflow bool - // TODO: Should we set the consumed field after overflow checking? - g.consumed, overflow = addUint64Overflow(g.consumed, amount) - if overflow { - panic(storetypes.ErrorGasOverflow{Descriptor: descriptor}) - } -} - -// RefundGas will deduct the given amount from the gas consumed. If the amount is greater than the -// gas consumed, the function will panic. -// -// Use case: This functionality enables refunding gas to the trasaction or block gas pools so that -// EVM-compatible chains can fully support the go-ethereum StateDb interface. -// See https://github.com/cosmos/cosmos-sdk/pull/9403 for reference. -func (g *infiniteGasMeter) RefundGas(amount storetypes.Gas, descriptor string) { - g.mux.Lock() - defer g.mux.Unlock() - - if g.consumed < amount { - panic(storetypes.ErrorNegativeGasConsumed{Descriptor: descriptor}) - } - - g.consumed -= amount -} - -func (g *infiniteGasMeter) IsPastLimit() bool { - return false -} - -func (g *infiniteGasMeter) IsOutOfGas() bool { - return false -} - -func (g *infiniteGasMeter) String() string { - g.mux.RLock() - defer g.mux.RUnlock() - - return fmt.Sprintf("InfiniteGasMeter:\n consumed: %d", g.consumed) -} - -// addUint64Overflow performs the addition operation on two uint64 integers and -// returns a boolean on whether or not the result overflows. -func addUint64Overflow(a, b uint64) (uint64, bool) { - if math.MaxUint64-a < b { - return 0, true - } - - return a + b, false -} diff --git a/chain/types/int.go b/chain/types/int.go deleted file mode 100644 index af991c40..00000000 --- a/chain/types/int.go +++ /dev/null @@ -1,22 +0,0 @@ -package types - -import "math/big" - -// MarshalBigInt marshals big int into text string for consistent encoding -func MarshalBigInt(i *big.Int) (string, error) { - bz, err := i.MarshalText() - if err != nil { - return "", err - } - return string(bz), nil -} - -// UnmarshalBigInt unmarshals string from *big.Int -func UnmarshalBigInt(s string) (*big.Int, error) { - ret := new(big.Int) - err := ret.UnmarshalText([]byte(s)) - if err != nil { - return nil, err - } - return ret, nil -} diff --git a/chain/types/params.go b/chain/types/params.go deleted file mode 100644 index 9d322668..00000000 --- a/chain/types/params.go +++ /dev/null @@ -1,8 +0,0 @@ -package types - -const ( - // DefaultGasPrice is default gas price for evm transactions - DefaultGasPrice = 0 - // DefaultRPCGasLimit is default gas limit for RPC call operations - DefaultRPCGasLimit = 80000000 -) diff --git a/chain/types/util.go b/chain/types/util.go new file mode 100644 index 00000000..6cb58634 --- /dev/null +++ b/chain/types/util.go @@ -0,0 +1,27 @@ +package types + +import ( + sdk "github.com/cosmos/cosmos-sdk/types" +) + +func HasDuplicate[T comparable](elements []T) bool { + seen := make(map[T]struct{}) + for idx := range elements { + if _, ok := seen[elements[idx]]; ok { + return true // Duplicate found + } + seen[elements[idx]] = struct{}{} + } + return false +} + +func HasDuplicateCoins(slice []sdk.Coin) bool { + seen := make(map[string]struct{}) + for _, item := range slice { + if _, ok := seen[item.Denom]; ok { + return true + } + seen[item.Denom] = struct{}{} + } + return false +} diff --git a/chain/wasmx/types/authz.go b/chain/wasmx/types/authz.go new file mode 100644 index 00000000..e9ab1b1d --- /dev/null +++ b/chain/wasmx/types/authz.go @@ -0,0 +1,72 @@ +package types + +import ( + "context" + + wasmtypes "github.com/CosmWasm/wasmd/x/wasm/types" + cdctypes "github.com/cosmos/cosmos-sdk/codec/types" + sdk "github.com/cosmos/cosmos-sdk/types" + authztypes "github.com/cosmos/cosmos-sdk/x/authz" +) + +var ( + _ authztypes.Authorization = &ContractExecutionCompatAuthorization{} + _ cdctypes.UnpackInterfacesMessage = &ContractExecutionCompatAuthorization{} +) + +// NewContractExecutionCompatAuthorization constructor +func NewContractExecutionCompatAuthorization(grants ...wasmtypes.ContractGrant) *ContractExecutionCompatAuthorization { + return &ContractExecutionCompatAuthorization{ + Grants: grants, + } +} + +// MsgTypeURL implements Authorization.MsgTypeURL. +func (a ContractExecutionCompatAuthorization) MsgTypeURL() string { + return sdk.MsgTypeURL(&MsgExecuteContractCompat{}) +} + +// NewAuthz factory method to create an Authorization with updated grants +func (a ContractExecutionCompatAuthorization) NewAuthz(g []wasmtypes.ContractGrant) authztypes.Authorization { + return NewContractExecutionCompatAuthorization(g...) +} + +// Accept implements Authorization.Accept. +func (a *ContractExecutionCompatAuthorization) Accept(goCtx context.Context, msg sdk.Msg) (authztypes.AcceptResponse, error) { + wasmxMsg := msg.(*MsgExecuteContractCompat) + + // convert MsgExecuteContractCompat to MsgExecuteContract + funds := sdk.Coins{} + if wasmxMsg.Funds != "0" { + funds, _ = sdk.ParseCoinsNormalized(wasmxMsg.Funds) + } + + wasmMsg := &wasmtypes.MsgExecuteContract{ + Sender: wasmxMsg.Sender, + Contract: wasmxMsg.Contract, + Msg: []byte(wasmxMsg.Msg), + Funds: funds, + } + + // convert wasmx auth to wasm auth + wasmAuth := wasmtypes.NewContractExecutionAuthorization(a.Grants...) + + // and check via converted values + return wasmAuth.Accept(goCtx, wasmMsg) +} + +// ValidateBasic implements Authorization.ValidateBasic. +func (a ContractExecutionCompatAuthorization) ValidateBasic() error { + wasmAuth := wasmtypes.NewContractExecutionAuthorization(a.Grants...) + return wasmAuth.ValidateBasic() +} + +// UnpackInterfaces implements UnpackInterfacesMessage.UnpackInterfaces +func (a ContractExecutionCompatAuthorization) UnpackInterfaces(unpacker cdctypes.AnyUnpacker) error { + for _, g := range a.Grants { + if err := g.UnpackInterfaces(unpacker); err != nil { + return err + } + } + return nil +} diff --git a/chain/wasmx/types/authz.pb.go b/chain/wasmx/types/authz.pb.go new file mode 100644 index 00000000..f1a3bce5 --- /dev/null +++ b/chain/wasmx/types/authz.pb.go @@ -0,0 +1,342 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: injective/wasmx/v1/authz.proto + +package types + +import ( + fmt "fmt" + types "github.com/CosmWasm/wasmd/x/wasm/types" + _ "github.com/cosmos/cosmos-proto" + _ "github.com/cosmos/cosmos-sdk/types/tx/amino" + _ "github.com/cosmos/gogoproto/gogoproto" + proto "github.com/cosmos/gogoproto/proto" + io "io" + math "math" + math_bits "math/bits" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// ContractExecutionAuthorization defines authorization for wasm execute. +// Since: wasmd 0.30 +type ContractExecutionCompatAuthorization struct { + // Grants for contract executions + Grants []types.ContractGrant `protobuf:"bytes,1,rep,name=grants,proto3" json:"grants"` +} + +func (m *ContractExecutionCompatAuthorization) Reset() { *m = ContractExecutionCompatAuthorization{} } +func (m *ContractExecutionCompatAuthorization) String() string { return proto.CompactTextString(m) } +func (*ContractExecutionCompatAuthorization) ProtoMessage() {} +func (*ContractExecutionCompatAuthorization) Descriptor() ([]byte, []int) { + return fileDescriptor_8416ae1aea8a23ab, []int{0} +} +func (m *ContractExecutionCompatAuthorization) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ContractExecutionCompatAuthorization) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ContractExecutionCompatAuthorization.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ContractExecutionCompatAuthorization) XXX_Merge(src proto.Message) { + xxx_messageInfo_ContractExecutionCompatAuthorization.Merge(m, src) +} +func (m *ContractExecutionCompatAuthorization) XXX_Size() int { + return m.Size() +} +func (m *ContractExecutionCompatAuthorization) XXX_DiscardUnknown() { + xxx_messageInfo_ContractExecutionCompatAuthorization.DiscardUnknown(m) +} + +var xxx_messageInfo_ContractExecutionCompatAuthorization proto.InternalMessageInfo + +func (m *ContractExecutionCompatAuthorization) GetGrants() []types.ContractGrant { + if m != nil { + return m.Grants + } + return nil +} + +func init() { + proto.RegisterType((*ContractExecutionCompatAuthorization)(nil), "injective.wasmx.v1.ContractExecutionCompatAuthorization") +} + +func init() { proto.RegisterFile("injective/wasmx/v1/authz.proto", fileDescriptor_8416ae1aea8a23ab) } + +var fileDescriptor_8416ae1aea8a23ab = []byte{ + // 312 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0xcb, 0xcc, 0xcb, 0x4a, + 0x4d, 0x2e, 0xc9, 0x2c, 0x4b, 0xd5, 0x2f, 0x4f, 0x2c, 0xce, 0xad, 0xd0, 0x2f, 0x33, 0xd4, 0x4f, + 0x2c, 0x2d, 0xc9, 0xa8, 0xd2, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x12, 0x82, 0xcb, 0xeb, 0x81, + 0xe5, 0xf5, 0xca, 0x0c, 0xa5, 0x64, 0x92, 0xf3, 0x8b, 0x73, 0x41, 0x3c, 0xb0, 0x16, 0x34, 0x1d, + 0x52, 0x92, 0x20, 0xd9, 0xfc, 0xe2, 0x78, 0x30, 0x4f, 0x1f, 0xc2, 0x81, 0x4a, 0x09, 0x26, 0xe6, + 0x66, 0xe6, 0xe5, 0xeb, 0x83, 0x49, 0xa8, 0x90, 0x48, 0x7a, 0x7e, 0x7a, 0x3e, 0x44, 0x29, 0x88, + 0x05, 0x11, 0x55, 0x3a, 0xc8, 0xc8, 0xa5, 0xe2, 0x9c, 0x9f, 0x57, 0x52, 0x94, 0x98, 0x5c, 0xe2, + 0x5a, 0x91, 0x9a, 0x5c, 0x5a, 0x92, 0x99, 0x9f, 0xe7, 0x9c, 0x9f, 0x5b, 0x90, 0x58, 0xe2, 0x58, + 0x5a, 0x92, 0x91, 0x5f, 0x94, 0x59, 0x95, 0x08, 0x12, 0x12, 0x72, 0xe2, 0x62, 0x4b, 0x2f, 0x4a, + 0xcc, 0x2b, 0x29, 0x96, 0x60, 0x54, 0x60, 0xd6, 0xe0, 0x36, 0x92, 0xd7, 0x83, 0xb9, 0x0d, 0xec, + 0x5c, 0xbd, 0x32, 0x43, 0x3d, 0x98, 0x39, 0xee, 0x20, 0x75, 0x4e, 0x9c, 0x27, 0xee, 0xc9, 0x33, + 0xac, 0x78, 0xbe, 0x41, 0x8b, 0x31, 0x08, 0xaa, 0xd3, 0x2a, 0xf4, 0xd4, 0x16, 0x5d, 0x25, 0xa8, + 0x3b, 0x21, 0x1e, 0x29, 0x33, 0x4c, 0x4a, 0x2d, 0x49, 0x34, 0xd4, 0x43, 0xb1, 0xab, 0xeb, 0xf9, + 0x06, 0x2d, 0x2d, 0x48, 0x18, 0x11, 0xe3, 0x34, 0xa7, 0xd4, 0x13, 0x8f, 0xe4, 0x18, 0x2f, 0x3c, + 0x92, 0x63, 0x7c, 0xf0, 0x48, 0x8e, 0x71, 0xc2, 0x63, 0x39, 0x86, 0x0b, 0x8f, 0xe5, 0x18, 0x6e, + 0x3c, 0x96, 0x63, 0x88, 0xf2, 0x4e, 0xcf, 0x2c, 0xc9, 0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, + 0xf7, 0x84, 0x05, 0xaf, 0x4f, 0x62, 0x52, 0xb1, 0x3e, 0x3c, 0xb0, 0x75, 0x93, 0xf3, 0x8b, 0x52, + 0x91, 0xb9, 0x19, 0x89, 0x99, 0x79, 0xfa, 0xb9, 0xf9, 0x29, 0xa5, 0x39, 0xa9, 0xc5, 0xd0, 0x98, + 0x2a, 0xa9, 0x2c, 0x48, 0x2d, 0x4e, 0x62, 0x03, 0x87, 0x98, 0x31, 0x20, 0x00, 0x00, 0xff, 0xff, + 0x58, 0xf0, 0xe6, 0x79, 0xc9, 0x01, 0x00, 0x00, +} + +func (m *ContractExecutionCompatAuthorization) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ContractExecutionCompatAuthorization) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ContractExecutionCompatAuthorization) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Grants) > 0 { + for iNdEx := len(m.Grants) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Grants[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintAuthz(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func encodeVarintAuthz(dAtA []byte, offset int, v uint64) int { + offset -= sovAuthz(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *ContractExecutionCompatAuthorization) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Grants) > 0 { + for _, e := range m.Grants { + l = e.Size() + n += 1 + l + sovAuthz(uint64(l)) + } + } + return n +} + +func sovAuthz(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozAuthz(x uint64) (n int) { + return sovAuthz(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (m *ContractExecutionCompatAuthorization) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAuthz + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ContractExecutionCompatAuthorization: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ContractExecutionCompatAuthorization: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Grants", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAuthz + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthAuthz + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthAuthz + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Grants = append(m.Grants, types.ContractGrant{}) + if err := m.Grants[len(m.Grants)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipAuthz(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthAuthz + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipAuthz(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowAuthz + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowAuthz + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowAuthz + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthAuthz + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupAuthz + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthAuthz + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthAuthz = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowAuthz = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupAuthz = fmt.Errorf("proto: unexpected end of group") +) diff --git a/chain/wasmx/types/codec.go b/chain/wasmx/types/codec.go index 01d03e7a..16f73476 100644 --- a/chain/wasmx/types/codec.go +++ b/chain/wasmx/types/codec.go @@ -6,6 +6,7 @@ import ( cryptocodec "github.com/cosmos/cosmos-sdk/crypto/codec" sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/msgservice" + "github.com/cosmos/cosmos-sdk/x/authz" authzcdc "github.com/cosmos/cosmos-sdk/x/authz/codec" govtypes "github.com/cosmos/cosmos-sdk/x/gov/types/v1beta1" ) @@ -24,6 +25,8 @@ func RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) { cdc.RegisterConcrete(&BatchContractDeregistrationProposal{}, "wasmx/BatchContractDeregistrationProposal", nil) cdc.RegisterConcrete(&BatchStoreCodeProposal{}, "wasmx/BatchStoreCodeProposal", nil) + cdc.RegisterConcrete(&ContractExecutionCompatAuthorization{}, "wasmx/ContractExecutionCompatAuthorization", nil) + cdc.RegisterConcrete(&Params{}, "wasmx/Params", nil) } @@ -45,6 +48,11 @@ func RegisterInterfaces(registry types.InterfaceRegistry) { &MsgUpdateParams{}, ) + registry.RegisterImplementations( + (*authz.Authorization)(nil), + &ContractExecutionCompatAuthorization{}, + ) + msgservice.RegisterMsgServiceDesc(registry, &_Msg_serviceDesc) } diff --git a/chain/wasmx/types/exec_callback_msgs.go b/chain/wasmx/types/exec_callback_msgs.go deleted file mode 100644 index 784a2abe..00000000 --- a/chain/wasmx/types/exec_callback_msgs.go +++ /dev/null @@ -1,25 +0,0 @@ -package types - -func NewRegistryDeregisterCallbackMsg() RegistryDeregisterCallbackMsg { - return RegistryDeregisterCallbackMsg{ - DeregisterCallback: &DeregisterCallbackMsg{}, - } -} - -type RegistryDeregisterCallbackMsg struct { - DeregisterCallback *DeregisterCallbackMsg `json:"deregister,omitempty"` -} - -type DeregisterCallbackMsg struct{} - -func NewRegistryDeactivateCallbackMsg() RegistryDeactivateCallbackMsg { - return RegistryDeactivateCallbackMsg{ - DeactivateCallback: &DeactivateCallbackMsg{}, - } -} - -type RegistryDeactivateCallbackMsg struct { - DeactivateCallback *DeactivateCallbackMsg `json:"deactivate,omitempty"` -} - -type DeactivateCallbackMsg struct{} diff --git a/chain/wasmx/types/exec_msgs.go b/chain/wasmx/types/exec_msgs.go deleted file mode 100644 index 1f6ad121..00000000 --- a/chain/wasmx/types/exec_msgs.go +++ /dev/null @@ -1,26 +0,0 @@ -package types - -import ( - "encoding/json" -) - -func NewBeginBlockerExecMsg() ([]byte, error) { - // Construct Exec message - beginBlocker := CWBeginBlockerExecMsg{BeginBlockerMsg: &BeginBlockerMsg{}} - - // nolint:all - // execMsg := []byte(`{"begin_blocker":{}}`) - execMsg, err := json.Marshal(beginBlocker) - if err != nil { - return nil, err - } - - return execMsg, nil -} - -type CWBeginBlockerExecMsg struct { - BeginBlockerMsg *BeginBlockerMsg `json:"begin_blocker,omitempty"` -} - -type BeginBlockerMsg struct { -} diff --git a/chain/wasmx/types/expected_keepers.go b/chain/wasmx/types/expected_keepers.go deleted file mode 100644 index e9d5d692..00000000 --- a/chain/wasmx/types/expected_keepers.go +++ /dev/null @@ -1,28 +0,0 @@ -package types - -import ( - "context" - - wasmtypes "github.com/CosmWasm/wasmd/x/wasm/types" - sdk "github.com/cosmos/cosmos-sdk/types" -) - -// BankKeeper defines the expected bank keeper methods -type BankKeeper interface { - GetBalance(ctx context.Context, addr sdk.AccAddress, denom string) sdk.Coin - GetAllBalances(ctx context.Context, addr sdk.AccAddress) sdk.Coins - SendCoinsFromModuleToModule(ctx context.Context, senderModule, recipientModule string, amt sdk.Coins) error - SendCoinsFromModuleToAccount(ctx context.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error - SendCoinsFromAccountToModule(ctx context.Context, senderAddr sdk.AccAddress, recipientModule string, amt sdk.Coins) error - BurnCoins(ctx context.Context, moduleName string, amt sdk.Coins) error - IsSendEnabledCoins(ctx context.Context, coins ...sdk.Coin) error - SendCoins(ctx context.Context, from, to sdk.AccAddress, amt sdk.Coins) error -} - -type WasmViewKeeper interface { - wasmtypes.ViewKeeper -} - -type WasmContractOpsKeeper interface { - wasmtypes.ContractOpsKeeper -} diff --git a/chain/wasmx/types/genesis.go b/chain/wasmx/types/genesis.go deleted file mode 100644 index 3739aca4..00000000 --- a/chain/wasmx/types/genesis.go +++ /dev/null @@ -1,18 +0,0 @@ -package types - -func NewGenesisState() GenesisState { - return GenesisState{} -} - -func (gs GenesisState) Validate() error { - if err := gs.Params.Validate(); err != nil { - return err - } - return nil -} - -func DefaultGenesisState() *GenesisState { - return &GenesisState{ - Params: DefaultParams(), - } -} diff --git a/chain/wasmx/types/paramset.go b/chain/wasmx/types/paramset.go deleted file mode 100644 index 80d0852b..00000000 --- a/chain/wasmx/types/paramset.go +++ /dev/null @@ -1,26 +0,0 @@ -package types - -type ( - ValueValidatorFn func(value interface{}) error - - // ParamSetPair is used for associating paramsubspace key and field of param - // structs. - ParamSetPair struct { - Key []byte - Value interface{} - ValidatorFn ValueValidatorFn - } -) - -// NewParamSetPair creates a new ParamSetPair instance. -func NewParamSetPair(key []byte, value interface{}, vfn ValueValidatorFn) ParamSetPair { - return ParamSetPair{key, value, vfn} -} - -// ParamSetPairs Slice of KeyFieldPair -type ParamSetPairs []ParamSetPair - -// ParamSet defines an interface for structs containing parameters for a module -type ParamSet interface { - ParamSetPairs() ParamSetPairs -} diff --git a/chain/wasmx/types/proposal.go b/chain/wasmx/types/proposal.go index 803eeeb8..9562e5f1 100644 --- a/chain/wasmx/types/proposal.go +++ b/chain/wasmx/types/proposal.go @@ -196,17 +196,6 @@ func (p *BatchStoreCodeProposal) ValidateBasic() error { return govtypes.ValidateAbstract(p) } -func HasDuplicates(slice []string) bool { - seen := make(map[string]struct{}) - for _, item := range slice { - if _, ok := seen[item]; ok { - return true - } - seen[item] = struct{}{} - } - return false -} - func hasDuplicatesContractRegistrationRequest(slice []ContractRegistrationRequest) bool { seen := make(map[string]struct{}) for _, item := range slice { diff --git a/chain/wasmx/types/util.go b/chain/wasmx/types/util.go deleted file mode 100644 index 49eb4491..00000000 --- a/chain/wasmx/types/util.go +++ /dev/null @@ -1,17 +0,0 @@ -package types - -import ( - "github.com/CosmWasm/wasmd/x/wasm/types" - sdktypes "github.com/cosmos/cosmos-sdk/types" -) - -func IsAllowed(accessConfig types.AccessConfig, actor sdktypes.AccAddress) bool { - if accessConfig.Permission == types.AccessTypeAnyOfAddresses { - for _, v := range accessConfig.Addresses { - if v == actor.String() { - return true - } - } - } - return false -} diff --git a/client/chain/chain.go b/client/chain/chain.go index 493a7688..559079f0 100644 --- a/client/chain/chain.go +++ b/client/chain/chain.go @@ -236,6 +236,12 @@ type ChainClient interface { FetchChainBinaryOptionsMarkets(ctx context.Context, status string) (*exchangetypes.QueryBinaryMarketsResponse, error) FetchTraderDerivativeConditionalOrders(ctx context.Context, subaccountId string, marketId string) (*exchangetypes.QueryTraderDerivativeConditionalOrdersResponse, error) FetchMarketAtomicExecutionFeeMultiplier(ctx context.Context, marketId string) (*exchangetypes.QueryMarketAtomicExecutionFeeMultiplierResponse, error) + FetchL3DerivativeOrderBook(ctx context.Context, marketId string) (*exchangetypes.QueryFullDerivativeOrderbookResponse, error) + FetchL3SpotOrderBook(ctx context.Context, marketId string) (*exchangetypes.QueryFullSpotOrderbookResponse, error) + FetchMarketBalance(ctx context.Context, marketId string) (*exchangetypes.QueryMarketBalanceResponse, error) + FetchMarketBalances(ctx context.Context) (*exchangetypes.QueryMarketBalancesResponse, error) + FetchDenomMinNotional(ctx context.Context, denom string) (*exchangetypes.QueryDenomMinNotionalResponse, error) + FetchDenomMinNotionals(ctx context.Context) (*exchangetypes.QueryDenomMinNotionalsResponse, error) // Tendermint module FetchNodeInfo(ctx context.Context) (*cmtservice.GetNodeInfoResponse, error) @@ -288,11 +294,18 @@ type ChainClient interface { FetchIBCConnectionParams(ctx context.Context) (*ibcconnectiontypes.QueryConnectionParamsResponse, error) // Permissions module - FetchAllNamespaces(ctx context.Context) (*permissionstypes.QueryAllNamespacesResponse, error) - FetchNamespaceByDenom(ctx context.Context, denom string, includeRoles bool) (*permissionstypes.QueryNamespaceByDenomResponse, error) - FetchAddressRoles(ctx context.Context, denom, address string) (*permissionstypes.QueryAddressRolesResponse, error) - FetchAddressesByRole(ctx context.Context, denom, role string) (*permissionstypes.QueryAddressesByRoleResponse, error) - FetchVouchersForAddress(ctx context.Context, address string) (*permissionstypes.QueryVouchersForAddressResponse, error) + FetchPermissionsNamespaceDenoms(ctx context.Context) (*permissionstypes.QueryNamespaceDenomsResponse, error) + FetchPermissionsNamespaces(ctx context.Context) (*permissionstypes.QueryNamespacesResponse, error) + FetchPermissionsNamespace(ctx context.Context, denom string) (*permissionstypes.QueryNamespaceResponse, error) + FetchPermissionsRolesByActor(ctx context.Context, denom, actor string) (*permissionstypes.QueryRolesByActorResponse, error) + FetchPermissionsActorsByRole(ctx context.Context, denom, role string) (*permissionstypes.QueryActorsByRoleResponse, error) + FetchPermissionsRoleManagers(ctx context.Context, denom string) (*permissionstypes.QueryRoleManagersResponse, error) + FetchPermissionsRoleManager(ctx context.Context, denom, manager string) (*permissionstypes.QueryRoleManagerResponse, error) + FetchPermissionsPolicyStatuses(ctx context.Context, denom string) (*permissionstypes.QueryPolicyStatusesResponse, error) + FetchPermissionsPolicyManagerCapabilities(ctx context.Context, denom string) (*permissionstypes.QueryPolicyManagerCapabilitiesResponse, error) + FetchPermissionsVouchers(ctx context.Context, denom string) (*permissionstypes.QueryVouchersResponse, error) + FetchPermissionsVoucher(ctx context.Context, denom, address string) (*permissionstypes.QueryVoucherResponse, error) + FetchPermissionsModuleState(ctx context.Context) (*permissionstypes.QueryModuleStateResponse, error) GetNetwork() common.Network Close() @@ -381,9 +394,9 @@ func NewChainClient( var err error stickySessionEnabled := true if opts.TLSCert != nil { - conn, err = grpc.Dial(network.ChainGrpcEndpoint, grpc.WithTransportCredentials(opts.TLSCert), grpc.WithContextDialer(common.DialerFunc)) + conn, err = grpc.NewClient(network.ChainGrpcEndpoint, grpc.WithTransportCredentials(opts.TLSCert), grpc.WithContextDialer(common.DialerFunc)) } else { - conn, err = grpc.Dial(network.ChainGrpcEndpoint, grpc.WithTransportCredentials(insecure.NewCredentials()), grpc.WithContextDialer(common.DialerFunc)) + conn, err = grpc.NewClient(network.ChainGrpcEndpoint, grpc.WithTransportCredentials(insecure.NewCredentials()), grpc.WithContextDialer(common.DialerFunc)) stickySessionEnabled = false } if err != nil { @@ -393,9 +406,9 @@ func NewChainClient( var chainStreamConn *grpc.ClientConn if opts.TLSCert != nil { - chainStreamConn, err = grpc.Dial(network.ChainStreamGrpcEndpoint, grpc.WithTransportCredentials(opts.TLSCert), grpc.WithContextDialer(common.DialerFunc)) + chainStreamConn, err = grpc.NewClient(network.ChainStreamGrpcEndpoint, grpc.WithTransportCredentials(opts.TLSCert), grpc.WithContextDialer(common.DialerFunc)) } else { - chainStreamConn, err = grpc.Dial(network.ChainStreamGrpcEndpoint, grpc.WithTransportCredentials(insecure.NewCredentials()), grpc.WithContextDialer(common.DialerFunc)) + chainStreamConn, err = grpc.NewClient(network.ChainStreamGrpcEndpoint, grpc.WithTransportCredentials(insecure.NewCredentials()), grpc.WithContextDialer(common.DialerFunc)) } if err != nil { err = errors.Wrapf(err, "failed to connect to the chain stream gRPC: %s", network.ChainStreamGrpcEndpoint) @@ -2107,6 +2120,56 @@ func (c *chainClient) FetchMarketAtomicExecutionFeeMultiplier(ctx context.Contex return res, err } +func (c *chainClient) FetchL3DerivativeOrderBook(ctx context.Context, marketId string) (*exchangetypes.QueryFullDerivativeOrderbookResponse, error) { + req := &exchangetypes.QueryFullDerivativeOrderbookRequest{ + MarketId: marketId, + } + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.exchangeQueryClient.L3DerivativeOrderBook, req) + + return res, err +} + +func (c *chainClient) FetchL3SpotOrderBook(ctx context.Context, marketId string) (*exchangetypes.QueryFullSpotOrderbookResponse, error) { + req := &exchangetypes.QueryFullSpotOrderbookRequest{ + MarketId: marketId, + } + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.exchangeQueryClient.L3SpotOrderBook, req) + + return res, err +} + +func (c *chainClient) FetchMarketBalance(ctx context.Context, marketId string) (*exchangetypes.QueryMarketBalanceResponse, error) { + req := &exchangetypes.QueryMarketBalanceRequest{ + MarketId: marketId, + } + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.exchangeQueryClient.MarketBalance, req) + + return res, err +} + +func (c *chainClient) FetchMarketBalances(ctx context.Context) (*exchangetypes.QueryMarketBalancesResponse, error) { + req := &exchangetypes.QueryMarketBalancesRequest{} + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.exchangeQueryClient.MarketBalances, req) + + return res, err +} + +func (c *chainClient) FetchDenomMinNotional(ctx context.Context, denom string) (*exchangetypes.QueryDenomMinNotionalResponse, error) { + req := &exchangetypes.QueryDenomMinNotionalRequest{ + Denom: denom, + } + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.exchangeQueryClient.DenomMinNotional, req) + + return res, err +} + +func (c *chainClient) FetchDenomMinNotionals(ctx context.Context) (*exchangetypes.QueryDenomMinNotionalsResponse, error) { + req := &exchangetypes.QueryDenomMinNotionalsRequest{} + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.exchangeQueryClient.DenomMinNotionals, req) + + return res, err +} + // Tendermint module func (c *chainClient) FetchNodeInfo(ctx context.Context) (*cmtservice.GetNodeInfoResponse, error) { @@ -2493,48 +2556,108 @@ func (c *chainClient) FetchIBCConnectionParams(ctx context.Context) (*ibcconnect // Permissions module -func (c *chainClient) FetchAllNamespaces(ctx context.Context) (*permissionstypes.QueryAllNamespacesResponse, error) { - req := &permissionstypes.QueryAllNamespacesRequest{} - res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.AllNamespaces, req) +func (c *chainClient) FetchPermissionsNamespaceDenoms(ctx context.Context) (*permissionstypes.QueryNamespaceDenomsResponse, error) { + req := &permissionstypes.QueryNamespaceDenomsRequest{} + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.NamespaceDenoms, req) return res, err } -func (c *chainClient) FetchNamespaceByDenom(ctx context.Context, denom string, includeRoles bool) (*permissionstypes.QueryNamespaceByDenomResponse, error) { - req := &permissionstypes.QueryNamespaceByDenomRequest{ - Denom: denom, - IncludeRoles: includeRoles, +func (c *chainClient) FetchPermissionsNamespaces(ctx context.Context) (*permissionstypes.QueryNamespacesResponse, error) { + req := &permissionstypes.QueryNamespacesRequest{} + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.Namespaces, req) + + return res, err +} + +func (c *chainClient) FetchPermissionsNamespace(ctx context.Context, denom string) (*permissionstypes.QueryNamespaceResponse, error) { + req := &permissionstypes.QueryNamespaceRequest{ + Denom: denom, } - res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.NamespaceByDenom, req) + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.Namespace, req) return res, err } -func (c *chainClient) FetchAddressRoles(ctx context.Context, denom, address string) (*permissionstypes.QueryAddressRolesResponse, error) { - req := &permissionstypes.QueryAddressRolesRequest{ - Denom: denom, - Address: address, +func (c *chainClient) FetchPermissionsRolesByActor(ctx context.Context, denom, actor string) (*permissionstypes.QueryRolesByActorResponse, error) { + req := &permissionstypes.QueryRolesByActorRequest{ + Denom: denom, + Actor: actor, } - res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.AddressRoles, req) + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.RolesByActor, req) return res, err } -func (c *chainClient) FetchAddressesByRole(ctx context.Context, denom, role string) (*permissionstypes.QueryAddressesByRoleResponse, error) { - req := &permissionstypes.QueryAddressesByRoleRequest{ +func (c *chainClient) FetchPermissionsActorsByRole(ctx context.Context, denom, role string) (*permissionstypes.QueryActorsByRoleResponse, error) { + req := &permissionstypes.QueryActorsByRoleRequest{ Denom: denom, Role: role, } - res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.AddressesByRole, req) + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.ActorsByRole, req) + + return res, err +} + +func (c *chainClient) FetchPermissionsRoleManagers(ctx context.Context, denom string) (*permissionstypes.QueryRoleManagersResponse, error) { + req := &permissionstypes.QueryRoleManagersRequest{ + Denom: denom, + } + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.RoleManagers, req) + + return res, err +} + +func (c *chainClient) FetchPermissionsRoleManager(ctx context.Context, denom, manager string) (*permissionstypes.QueryRoleManagerResponse, error) { + req := &permissionstypes.QueryRoleManagerRequest{ + Denom: denom, + Manager: manager, + } + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.RoleManager, req) + + return res, err +} + +func (c *chainClient) FetchPermissionsPolicyStatuses(ctx context.Context, denom string) (*permissionstypes.QueryPolicyStatusesResponse, error) { + req := &permissionstypes.QueryPolicyStatusesRequest{ + Denom: denom, + } + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.PolicyStatuses, req) + + return res, err +} + +func (c *chainClient) FetchPermissionsPolicyManagerCapabilities(ctx context.Context, denom string) (*permissionstypes.QueryPolicyManagerCapabilitiesResponse, error) { + req := &permissionstypes.QueryPolicyManagerCapabilitiesRequest{ + Denom: denom, + } + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.PolicyManagerCapabilities, req) return res, err } -func (c *chainClient) FetchVouchersForAddress(ctx context.Context, address string) (*permissionstypes.QueryVouchersForAddressResponse, error) { - req := &permissionstypes.QueryVouchersForAddressRequest{ +func (c *chainClient) FetchPermissionsVouchers(ctx context.Context, denom string) (*permissionstypes.QueryVouchersResponse, error) { + req := &permissionstypes.QueryVouchersRequest{ + Denom: denom, + } + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.Vouchers, req) + + return res, err +} + +func (c *chainClient) FetchPermissionsVoucher(ctx context.Context, denom, address string) (*permissionstypes.QueryVoucherResponse, error) { + req := &permissionstypes.QueryVoucherRequest{ + Denom: denom, Address: address, } - res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.VouchersForAddress, req) + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.Voucher, req) + + return res, err +} + +func (c *chainClient) FetchPermissionsModuleState(ctx context.Context) (*permissionstypes.QueryModuleStateResponse, error) { + req := &permissionstypes.QueryModuleStateRequest{} + res, err := common.ExecuteCall(ctx, c.network.ChainCookieAssistant, c.permissionsQueryClient.PermissionsModuleState, req) return res, err } diff --git a/client/chain/chain_test_support.go b/client/chain/chain_test_support.go index 476ef5ce..d2f42e73 100644 --- a/client/chain/chain_test_support.go +++ b/client/chain/chain_test_support.go @@ -587,6 +587,30 @@ func (c *MockChainClient) FetchMarketAtomicExecutionFeeMultiplier(ctx context.Co return &exchangetypes.QueryMarketAtomicExecutionFeeMultiplierResponse{}, nil } +func (c *MockChainClient) FetchL3DerivativeOrderBook(ctx context.Context, marketId string) (*exchangetypes.QueryFullDerivativeOrderbookResponse, error) { + return &exchangetypes.QueryFullDerivativeOrderbookResponse{}, nil +} + +func (c *MockChainClient) FetchL3SpotOrderBook(ctx context.Context, marketId string) (*exchangetypes.QueryFullSpotOrderbookResponse, error) { + return &exchangetypes.QueryFullSpotOrderbookResponse{}, nil +} + +func (c *MockChainClient) FetchMarketBalance(ctx context.Context, marketId string) (*exchangetypes.QueryMarketBalanceResponse, error) { + return &exchangetypes.QueryMarketBalanceResponse{}, nil +} + +func (c *MockChainClient) FetchMarketBalances(ctx context.Context) (*exchangetypes.QueryMarketBalancesResponse, error) { + return &exchangetypes.QueryMarketBalancesResponse{}, nil +} + +func (c *MockChainClient) FetchDenomMinNotional(ctx context.Context, denom string) (*exchangetypes.QueryDenomMinNotionalResponse, error) { + return &exchangetypes.QueryDenomMinNotionalResponse{}, nil +} + +func (c *MockChainClient) FetchDenomMinNotionals(ctx context.Context) (*exchangetypes.QueryDenomMinNotionalsResponse, error) { + return &exchangetypes.QueryDenomMinNotionalsResponse{}, nil +} + // Tendermint module func (c *MockChainClient) FetchNodeInfo(ctx context.Context) (*cmtservice.GetNodeInfoResponse, error) { @@ -755,24 +779,52 @@ func (c *MockChainClient) FetchIBCConnectionParams(ctx context.Context) (*ibccon // Permissions module -func (c *MockChainClient) FetchAllNamespaces(ctx context.Context) (*permissionstypes.QueryAllNamespacesResponse, error) { - return &permissionstypes.QueryAllNamespacesResponse{}, nil +func (c *MockChainClient) FetchPermissionsNamespaceDenoms(ctx context.Context) (*permissionstypes.QueryNamespaceDenomsResponse, error) { + return &permissionstypes.QueryNamespaceDenomsResponse{}, nil +} + +func (c *MockChainClient) FetchPermissionsNamespaces(ctx context.Context) (*permissionstypes.QueryNamespacesResponse, error) { + return &permissionstypes.QueryNamespacesResponse{}, nil +} + +func (c *MockChainClient) FetchPermissionsNamespace(ctx context.Context, denom string) (*permissionstypes.QueryNamespaceResponse, error) { + return &permissionstypes.QueryNamespaceResponse{}, nil +} + +func (c *MockChainClient) FetchPermissionsRolesByActor(ctx context.Context, denom, actor string) (*permissionstypes.QueryRolesByActorResponse, error) { + return &permissionstypes.QueryRolesByActorResponse{}, nil +} + +func (c *MockChainClient) FetchPermissionsActorsByRole(ctx context.Context, denom, role string) (*permissionstypes.QueryActorsByRoleResponse, error) { + return &permissionstypes.QueryActorsByRoleResponse{}, nil +} + +func (c *MockChainClient) FetchPermissionsRoleManagers(ctx context.Context, denom string) (*permissionstypes.QueryRoleManagersResponse, error) { + return &permissionstypes.QueryRoleManagersResponse{}, nil +} + +func (c *MockChainClient) FetchPermissionsRoleManager(ctx context.Context, denom, manager string) (*permissionstypes.QueryRoleManagerResponse, error) { + return &permissionstypes.QueryRoleManagerResponse{}, nil +} + +func (c *MockChainClient) FetchPermissionsPolicyStatuses(ctx context.Context, denom string) (*permissionstypes.QueryPolicyStatusesResponse, error) { + return &permissionstypes.QueryPolicyStatusesResponse{}, nil } -func (c *MockChainClient) FetchNamespaceByDenom(ctx context.Context, denom string, includeRoles bool) (*permissionstypes.QueryNamespaceByDenomResponse, error) { - return &permissionstypes.QueryNamespaceByDenomResponse{}, nil +func (c *MockChainClient) FetchPermissionsPolicyManagerCapabilities(ctx context.Context, denom string) (*permissionstypes.QueryPolicyManagerCapabilitiesResponse, error) { + return &permissionstypes.QueryPolicyManagerCapabilitiesResponse{}, nil } -func (c *MockChainClient) FetchAddressRoles(ctx context.Context, denom, address string) (*permissionstypes.QueryAddressRolesResponse, error) { - return &permissionstypes.QueryAddressRolesResponse{}, nil +func (c *MockChainClient) FetchPermissionsVouchers(ctx context.Context, denom string) (*permissionstypes.QueryVouchersResponse, error) { + return &permissionstypes.QueryVouchersResponse{}, nil } -func (c *MockChainClient) FetchAddressesByRole(ctx context.Context, denom, role string) (*permissionstypes.QueryAddressesByRoleResponse, error) { - return &permissionstypes.QueryAddressesByRoleResponse{}, nil +func (c *MockChainClient) FetchPermissionsVoucher(ctx context.Context, denom, address string) (*permissionstypes.QueryVoucherResponse, error) { + return &permissionstypes.QueryVoucherResponse{}, nil } -func (c *MockChainClient) FetchVouchersForAddress(ctx context.Context, address string) (*permissionstypes.QueryVouchersForAddressResponse, error) { - return &permissionstypes.QueryVouchersForAddressResponse{}, nil +func (c *MockChainClient) FetchPermissionsModuleState(ctx context.Context) (*permissionstypes.QueryModuleStateResponse, error) { + return &permissionstypes.QueryModuleStateResponse{}, nil } func (c *MockChainClient) GetNetwork() common.Network { diff --git a/client/chain/injective_data/ofac.json b/client/chain/injective_data/ofac.json new file mode 100644 index 00000000..66b27cd2 --- /dev/null +++ b/client/chain/injective_data/ofac.json @@ -0,0 +1,162 @@ +[ + "0x01e2919679362dfbc9ee1644ba9c6da6d6245bb1", + "0x03893a7c7463ae47d46bc7f091665f1893656003", + "0x04dba1194ee10112fe6c3207c0687def0e78bacf", + "0x05e0b5b40b7b66098c2161a5ee11c5740a3a7c45", + "0x07687e702b410fa43f4cb4af7fa097918ffd2730", + "0x0836222f2b2b24a3f36f98668ed8f0b38d1a872f", + "0x08723392ed15743cc38513c4925f5e6be5c17243", + "0x08b2efdcdb8822efe5ad0eae55517cf5dc544251", + "0x09193888b3f38c82dedfda55259a82c0e7de875e", + "0x0931ca4d13bb4ba75d9b7132ab690265d749a5e7", + "0x098b716b8aaf21512996dc57eb0615e2383e2f96", + "0x0e3a09dda6b20afbb34ac7cd4a6881493f3e7bf7", + "0x0ee5067b06776a89ccc7dc8ee369984ad7db5e06", + "0x12d66f87a04a9e220743712ce6d9bb1b5616b8fc", + "0x1356c899d8c9467c7f71c195612f8a395abf2f0a", + "0x169ad27a470d064dede56a2d3ff727986b15d52b", + "0x175d44451403edf28469df03a9280c1197adb92c", + "0x178169b423a011fff22b9e3f3abea13414ddd0f1", + "0x179f48c78f57a3a78f0608cc9197b8972921d1d2", + "0x1967d8af5bd86a497fb3dd7899a020e47560daaf", + "0x1999ef52700c34de7ec2b68a28aafb37db0c5ade", + "0x19aa5fe80d33a56d56c78e82ea5e50e5d80b4dff", + "0x19f8f2b0915daa12a3f5c9cf01df9e24d53794f7", + "0x1da5821544e25c636c1417ba96ade4cf6d2f9b5a", + "0x1e34a77868e19a6647b1f2f47b51ed72dede95dd", + "0x21b8d56bda776bbe68655a16895afd96f5534fed", + "0x22aaa7720ddd5388a3c0a3333430953c68f1849b", + "0x23173fe8b96a4ad8d2e17fb83ea5dcccdca1ae52", + "0x23773e65ed146a459791799d01336db287f25334", + "0x242654336ca2205714071898f67e254eb49acdce", + "0x2573bac39ebe2901b4389cd468f2872cf7767faf", + "0x26903a5a198d571422b2b4ea08b56a37cbd68c89", + "0x2717c5e28cf931547b621a5dddb772ab6a35b701", + "0x2f389ce8bd8ff92de3402ffce4691d17fc4f6535", + "0x2f50508a8a3d323b91336fa3ea6ae50e55f32185", + "0x2fc93484614a34f26f7970cbb94615ba109bb4bf", + "0x308ed4b7b49797e1a98d3818bff6fe5385410370", + "0x330bdfade01ee9bf63c209ee33102dd334618e0a", + "0x35fb6f6db4fb05e6a4ce86f2c93691425626d4b1", + "0x38735f03b30fbc022ddd06abed01f0ca823c6a94", + "0x39d908dac893cbcb53cc86e0ecc369aa4def1a29", + "0x3aac1cc67c2ec5db4ea850957b967ba153ad6279", + "0x3ad9db589d201a710ed237c829c7860ba86510fc", + "0x3cbded43efdaf0fc77b9c55f6fc9988fcc9b757d", + "0x3cffd56b47b7b41c56258d9c7731abadc360e073", + "0x3e37627deaa754090fbfbb8bd226c1ce66d255e9", + "0x3efa30704d2b8bbac821307230376556cf8cc39e", + "0x407cceeaa7c95d2fe2250bf9f2c105aa7aafb512", + "0x43fa21d92141ba9db43052492e0deee5aa5f0a93", + "0x4736dcf1b7a3d580672cce6e7c65cd5cc9cfba9d", + "0x47ce0c6ed5b0ce3d3a51fdb1c52dc66a7c3c2936", + "0x48549a34ae37b12f6a30566245176994e17c6b4a", + "0x4f47bc496083c727c5fbe3ce9cdf2b0f6496270c", + "0x502371699497d08d5339c870851898d6d72521dd", + "0x527653ea119f3e6a1f5bd18fbf4714081d7b31ce", + "0x530a64c0ce595026a4a556b703644228179e2d57", + "0x538ab61e8a9fc1b2f93b3dd9011d662d89be6fe6", + "0x53b6936513e738f44fb50d2b9476730c0ab3bfc1", + "0x5512d943ed1f7c8a43f3435c85f7ab68b30121b0", + "0x57b2b8c82f065de8ef5573f9730fc1449b403c9f", + "0x58e8dcc13be9780fc42e8723d8ead4cf46943df2", + "0x5a14e72060c11313e38738009254a90968f58f51", + "0x5a7a51bfb49f190e5a6060a5bc6052ac14a3b59f", + "0x5cab7692d4e94096462119ab7bf57319726eed2a", + "0x5efda50f22d34f262c29268506c5fa42cb56a1ce", + "0x5f48c2a71b2cc96e3f0ccae4e39318ff0dc375b2", + "0x5f6c97c6ad7bdd0ae7e0dd4ca33a4ed3fdabd4d7", + "0x610b717796ad172b316836ac95a2ffad065ceab4", + "0x653477c392c16b0765603074f157314cc4f40c32", + "0x67d40ee1a85bf4a4bb7ffae16de985e8427b6b45", + "0x6be0ae71e6c41f2f9d0d1a3b8d0f75e6f6a0b46e", + "0x6bf694a291df3fec1f7e69701e3ab6c592435ae7", + "0x6f1ca141a28907f78ebaa64fb83a9088b02a8352", + "0x722122df12d4e14e13ac3b6895a86e84145b6967", + "0x723b78e67497e85279cb204544566f4dc5d2aca0", + "0x72a5843cc08275c8171e582972aa4fda8c397b2a", + "0x743494b60097a2230018079c02fe21a7b687eaa5", + "0x746aebc06d2ae31b71ac51429a19d54e797878e9", + "0x756c4628e57f7e7f8a459ec2752968360cf4d1aa", + "0x76d85b4c0fc497eecc38902397ac608000a06607", + "0x776198ccf446dfa168347089d7338879273172cf", + "0x77777feddddffc19ff86db637967013e6c6a116c", + "0x797d7ae72ebddcdea2a346c1834e04d1f8df102b", + "0x7db418b5d567a4e0e8c59ad71be1fce48f3e6107", + "0x7f19720a857f834887fc9a7bc0a0fbe7fc7f8102", + "0x7f367cc41522ce07553e823bf3be79a889debe1b", + "0x7ff9cfad3877f21d41da833e2f775db0569ee3d9", + "0x8281aa6795ade17c8973e1aedca380258bc124f9", + "0x833481186f16cece3f1eeea1a694c42034c3a0db", + "0x83e5bc4ffa856bb84bb88581f5dd62a433a25e0d", + "0x84443cfd09a48af6ef360c6976c5392ac5023a1f", + "0x8576acc5c05d6ce88f4e49bf65bdf0c62f91353c", + "0x8589427373d6d84e98730d7795d8f6f8731fda16", + "0x88fd245fedec4a936e700f9173454d1931b4c307", + "0x901bb9583b24d97e995513c6778dc6888ab6870e", + "0x910cbd523d972eb0a6f4cae4618ad62622b39dbf", + "0x931546d9e66836abf687d2bc64b30407bac8c568", + "0x94a1b5cdb22c43faab4abeb5c74999895464ddaf", + "0x94be88213a387e992dd87de56950a9aef34b9448", + "0x94c92f096437ab9958fc0a37f09348f30389ae79", + "0x961c5be54a2ffc17cf4cb021d863c42dacd47fc1", + "0x97b1043abd9e6fc31681635166d430a458d14f9c", + "0x983a81ca6fb1e441266d2fbcb7d8e530ac2e05a2", + "0x9ad122c22b14202b4490edaf288fdb3c7cb3ff5e", + "0x9c2bc757b66f24d60f016b6237f8cdd414a879fa", + "0x9f4cda013e354b8fc285bf4b9a60460cee7f7ea9", + "0xa0e1c89ef1a489c9c7de96311ed5ce5d32c20e4b", + "0xa160cdab225685da1d56aa342ad8841c3b53f291", + "0xa5c2254e4253490c54cef0a4347fddb8f75a4998", + "0xa60c772958a3ed56c1f15dd055ba37ac8e523a0d", + "0xa7e5d5a720f06526557c513402f2e6b5fa20b008", + "0xaeaac358560e11f52454d997aaff2c5731b6f8a6", + "0xaf4c0b70b2ea9fb7487c7cbb37ada259579fe040", + "0xaf8d1839c3c67cf571aa74b5c12398d4901147b3", + "0xb04e030140b30c27bcdfaafffa98c57d80eda7b4", + "0xb1c8094b234dce6e03f10a5b673c1d8c69739a00", + "0xb20c66c4de72433f3ce747b58b86830c459ca911", + "0xb541fc07bc7619fd4062a54d96268525cbc6ffef", + "0xb6f5ec1a0a9cd1526536d3f0426c429529471f40", + "0xba214c1c1928a32bffe790263e38b4af9bfcd659", + "0xbb93e510bbcd0b7beb5a853875f9ec60275cf498", + "0xc2a3829f459b3edd87791c74cd45402ba0a20be3", + "0xc455f7fd3e0e12afd51fba5c106909934d8a0e4a", + "0xca0840578f57fe71599d29375e16783424023357", + "0xcc84179ffd19a1627e79f8648d09e095252bc418", + "0xcee71753c9820f063b38fdbe4cfdaf1d3d928a80", + "0xd0975b32cea532eadddfc9c60481976e39db3472", + "0xd21be7248e0197ee08e0c20d4a96debdac3d20af", + "0xd47438c816c9e7f2e2888e060936a499af9582b3", + "0xd4b88df4d29f5cedd6857912842cff3b20c8cfa3", + "0xd5d6f8d9e784d0e26222ad3834500801a68d027d", + "0xd691f27f38b395864ea86cfc7253969b409c362d", + "0xd692fd2d0b2fbd2e52cfa5b5b9424bc981c30696", + "0xd82ed8786d7c69dc7e052f7a542ab047971e73d2", + "0xd882cfc20f52f2599d84b8e8d58c7fb62cfe344b", + "0xd8d7de3349ccaa0fde6298fe6d7b7d0d34586193", + "0xd90e2f925da726b50c4ed8d0fb90ad053324f31b", + "0xd96f2b1c14db8458374d9aca76e26c3d18364307", + "0xdcbeffbecce100cce9e4b153c4e15cb885643193", + "0xdd4c48c0b24039969fc16d1cdf626eab821d3384", + "0xdf231d99ff8b6c6cbf4e9b9a945cbacef9339178", + "0xdf3a408c53e5078af6e8fb2a85088d46ee09a61b", + "0xe1d865c3d669dcc8c57c8d023140cb204e672ee4", + "0xe7aa314c77f4233c18c6cc84384a9247c0cf367b", + "0xe950dc316b836e4eefb8308bf32bf7c72a1358ff", + "0xed6e0a7e4ac94d976eebfb82ccf777a3c6bad921", + "0xedc5d01286f99a066559f60a585406f3878a033e", + "0xefe301d259f525ca1ba74a7977b80d5b060b3cca", + "0xf3701f445b6bdafedbca97d1e477357839e4120d", + "0xf4b067dd14e95bab89be928c07cb22e3c94e0daa", + "0xf60dd140cff0706bae9cd734ac3ae76ad9ebc32a", + "0xf67721a2d8f736e75a49fdd7fad2e31d8676542a", + "0xf7b31119c2682c88d88d455dbb9d5932c65cf1be", + "0xfac583c0cf07ea434052c49115a4682172ab6b4f", + "0xfd8610d20aa15b7b2e3be39b396a1bc3516c7144", + "0xfec8a60023265364d066a1212fde3930f6ae8da7", + "0xffbac21a641dcfe4552920138d90f3638b3c9fba", + "0xc5801cd781d168e2d3899ad9c39d8a2541871298", + "0x0992E2D17e0082Df8a31Bf36Bd8Cc662551de68B", + "0x8aa07899eb940f40e514b8effdb3b6af5d1cf7bb" +] diff --git a/client/chain/markets_assistant.go b/client/chain/markets_assistant.go index 52340223..924f41c4 100644 --- a/client/chain/markets_assistant.go +++ b/client/chain/markets_assistant.go @@ -317,16 +317,16 @@ func (assistant *MarketsAssistant) initializeFromChain(ctx context.Context, chai continue } - makerFeeRate := decimal.RequireFromString(marketInfo.GetMakerFeeRate().String()) - takerFeeRate := decimal.RequireFromString(marketInfo.GetTakerFeeRate().String()) - serviceProviderFee := decimal.RequireFromString(marketInfo.GetRelayerFeeShareRate().String()) - minPriceTickSize := decimal.RequireFromString(marketInfo.GetMinPriceTickSize().String()) - minQuantityTickSize := decimal.RequireFromString(marketInfo.GetMinQuantityTickSize().String()) - minNotional := decimal.RequireFromString(marketInfo.GetMinNotional().String()) + makerFeeRate := decimal.RequireFromString(marketInfo.MakerFeeRate.String()) + takerFeeRate := decimal.RequireFromString(marketInfo.TakerFeeRate.String()) + serviceProviderFee := decimal.RequireFromString(marketInfo.RelayerFeeShareRate.String()) + minPriceTickSize := decimal.RequireFromString(marketInfo.MinPriceTickSize.String()) + minQuantityTickSize := decimal.RequireFromString(marketInfo.MinQuantityTickSize.String()) + minNotional := decimal.RequireFromString(marketInfo.MinNotional.String()) market := core.SpotMarket{ Id: marketInfo.GetMarketId(), - Status: marketInfo.GetMarketStatus().String(), + Status: marketInfo.Status.String(), Ticker: marketInfo.GetTicker(), BaseToken: baseToken, QuoteToken: quoteToken, @@ -350,29 +350,29 @@ func (assistant *MarketsAssistant) initializeFromChain(ctx context.Context, chai for _, fullMarket := range derivativeMarkets.GetMarkets() { marketInfo := fullMarket.GetMarket() - quoteToken, quoteTokenFound := assistant.tokensByDenom[marketInfo.GetQuoteDenom()] + quoteToken, quoteTokenFound := assistant.tokensByDenom[marketInfo.QuoteDenom] if !quoteTokenFound { // Ignore the market because it references a token that is not in the token list continue } - initialMarginRatio := decimal.RequireFromString(marketInfo.GetInitialMarginRatio().String()) + initialMarginRatio := decimal.RequireFromString(marketInfo.InitialMarginRatio.String()) maintenanceMarginRatio := decimal.RequireFromString(marketInfo.MaintenanceMarginRatio.String()) - makerFeeRate := decimal.RequireFromString(marketInfo.GetMakerFeeRate().String()) - takerFeeRate := decimal.RequireFromString(marketInfo.GetTakerFeeRate().String()) - serviceProviderFee := decimal.RequireFromString(marketInfo.GetRelayerFeeShareRate().String()) - minPriceTickSize := decimal.RequireFromString(marketInfo.GetMinPriceTickSize().String()) - minQuantityTickSize := decimal.RequireFromString(marketInfo.GetMinQuantityTickSize().String()) - minNotional := decimal.RequireFromString(marketInfo.GetMinNotional().String()) + makerFeeRate := decimal.RequireFromString(marketInfo.MakerFeeRate.String()) + takerFeeRate := decimal.RequireFromString(marketInfo.TakerFeeRate.String()) + serviceProviderFee := decimal.RequireFromString(marketInfo.RelayerFeeShareRate.String()) + minPriceTickSize := decimal.RequireFromString(marketInfo.MinPriceTickSize.String()) + minQuantityTickSize := decimal.RequireFromString(marketInfo.MinQuantityTickSize.String()) + minNotional := decimal.RequireFromString(marketInfo.MinNotional.String()) market := core.DerivativeMarket{ Id: marketInfo.MarketId, - Status: marketInfo.GetMarketStatus().String(), - Ticker: marketInfo.GetTicker(), + Status: marketInfo.Status.String(), + Ticker: marketInfo.Ticker, OracleBase: marketInfo.OracleBase, OracleQuote: marketInfo.OracleQuote, OracleType: marketInfo.OracleType.String(), - OracleScaleFactor: marketInfo.GetOracleScaleFactor(), + OracleScaleFactor: marketInfo.OracleScaleFactor, InitialMarginRatio: initialMarginRatio, MaintenanceMarginRatio: maintenanceMarginRatio, QuoteToken: quoteToken, @@ -394,27 +394,27 @@ func (assistant *MarketsAssistant) initializeFromChain(ctx context.Context, chai } for _, marketInfo := range binaryOptionsMarkets.GetMarkets() { - quoteToken, quoteTokenFound := assistant.tokensByDenom[marketInfo.GetQuoteDenom()] + quoteToken, quoteTokenFound := assistant.tokensByDenom[marketInfo.QuoteDenom] if !quoteTokenFound { // Ignore the market because it references a token that is not in the token list continue } - makerFeeRate := decimal.RequireFromString(marketInfo.GetMakerFeeRate().String()) - takerFeeRate := decimal.RequireFromString(marketInfo.GetTakerFeeRate().String()) - serviceProviderFee := decimal.RequireFromString(marketInfo.GetRelayerFeeShareRate().String()) - minPriceTickSize := decimal.RequireFromString(marketInfo.GetMinPriceTickSize().String()) - minQuantityTickSize := decimal.RequireFromString(marketInfo.GetMinQuantityTickSize().String()) - minNotional := decimal.RequireFromString(marketInfo.GetMinNotional().String()) + makerFeeRate := decimal.RequireFromString(marketInfo.MakerFeeRate.String()) + takerFeeRate := decimal.RequireFromString(marketInfo.TakerFeeRate.String()) + serviceProviderFee := decimal.RequireFromString(marketInfo.RelayerFeeShareRate.String()) + minPriceTickSize := decimal.RequireFromString(marketInfo.MinPriceTickSize.String()) + minQuantityTickSize := decimal.RequireFromString(marketInfo.MinQuantityTickSize.String()) + minNotional := decimal.RequireFromString(marketInfo.MinNotional.String()) market := core.BinaryOptionMarket{ Id: marketInfo.MarketId, - Status: marketInfo.GetMarketStatus().String(), - Ticker: marketInfo.GetTicker(), + Status: marketInfo.Status.String(), + Ticker: marketInfo.Ticker, OracleSymbol: marketInfo.OracleSymbol, OracleProvider: marketInfo.OracleProvider, OracleType: marketInfo.OracleType.String(), - OracleScaleFactor: marketInfo.GetOracleScaleFactor(), + OracleScaleFactor: marketInfo.OracleScaleFactor, ExpirationTimestamp: marketInfo.ExpirationTimestamp, SettlementTimestamp: marketInfo.SettlementTimestamp, QuoteToken: quoteToken, diff --git a/client/common/network.go b/client/common/network.go index 4714f997..15e5eb79 100644 --- a/client/common/network.go +++ b/client/common/network.go @@ -211,10 +211,10 @@ func LoadNetwork(name, node string) Network { return Network{ LcdEndpoint: "http://localhost:10337", TmEndpoint: "http://localhost:26657", - ChainGrpcEndpoint: "tcp://localhost:9900", - ChainStreamGrpcEndpoint: "tcp://localhost:9999", - ExchangeGrpcEndpoint: "tcp://localhost:9910", - ExplorerGrpcEndpoint: "tcp://localhost:9911", + ChainGrpcEndpoint: "localhost:9900", + ChainStreamGrpcEndpoint: "localhost:9999", + ExchangeGrpcEndpoint: "localhost:9910", + ExplorerGrpcEndpoint: "localhost:9911", ChainId: "injective-1", FeeDenom: "inj", Name: "local", @@ -228,10 +228,10 @@ func LoadNetwork(name, node string) Network { return Network{ LcdEndpoint: "https://devnet-1.lcd.injective.dev", TmEndpoint: "https://devnet-1.tm.injective.dev:443", - ChainGrpcEndpoint: "tcp://devnet-1.grpc.injective.dev:9900", - ChainStreamGrpcEndpoint: "tcp://devnet-1.grpc.injective.dev:9999", - ExchangeGrpcEndpoint: "tcp://devnet-1.api.injective.dev:9910", - ExplorerGrpcEndpoint: "tcp://devnet-1.api.injective.dev:9911", + ChainGrpcEndpoint: "devnet-1.grpc.injective.dev:9900", + ChainStreamGrpcEndpoint: "devnet-1.grpc.injective.dev:9999", + ExchangeGrpcEndpoint: "devnet-1.api.injective.dev:9910", + ExplorerGrpcEndpoint: "devnet-1.api.injective.dev:9911", ChainId: "injective-777", FeeDenom: "inj", Name: "devnet-1", @@ -244,10 +244,10 @@ func LoadNetwork(name, node string) Network { return Network{ LcdEndpoint: "https://devnet.lcd.injective.dev", TmEndpoint: "https://devnet.tm.injective.dev:443", - ChainGrpcEndpoint: "tcp://devnet.injective.dev:9900", - ChainStreamGrpcEndpoint: "tcp://devnet.injective.dev:9999", - ExchangeGrpcEndpoint: "tcp://devnet.injective.dev:9910", - ExplorerGrpcEndpoint: "tcp://devnet.api.injective.dev:9911", + ChainGrpcEndpoint: "devnet.injective.dev:9900", + ChainStreamGrpcEndpoint: "devnet.injective.dev:9999", + ExchangeGrpcEndpoint: "devnet.injective.dev:9910", + ExplorerGrpcEndpoint: "devnet.api.injective.dev:9911", ChainId: "injective-777", FeeDenom: "inj", Name: "devnet", diff --git a/client/exchange/exchange.go b/client/exchange/exchange.go index cc4b3f3b..c59f63b0 100644 --- a/client/exchange/exchange.go +++ b/client/exchange/exchange.go @@ -34,7 +34,9 @@ type ExchangeClient interface { GetDerivativePositions(ctx context.Context, req *derivativeExchangePB.PositionsRequest) (*derivativeExchangePB.PositionsResponse, error) GetDerivativePositionsV2(ctx context.Context, req *derivativeExchangePB.PositionsV2Request) (*derivativeExchangePB.PositionsV2Response, error) GetDerivativeLiquidablePositions(ctx context.Context, req *derivativeExchangePB.LiquidablePositionsRequest) (*derivativeExchangePB.LiquidablePositionsResponse, error) + // Deprecated: Use StreamDerivativePositionsV2 instead. This method will be removed in a future version. StreamDerivativePositions(ctx context.Context, req *derivativeExchangePB.StreamPositionsRequest) (derivativeExchangePB.InjectiveDerivativeExchangeRPC_StreamPositionsClient, error) + StreamDerivativePositionsV2(ctx context.Context, req *derivativeExchangePB.StreamPositionsV2Request) (derivativeExchangePB.InjectiveDerivativeExchangeRPC_StreamPositionsV2Client, error) StreamDerivativeOrders(ctx context.Context, req *derivativeExchangePB.StreamOrdersRequest) (derivativeExchangePB.InjectiveDerivativeExchangeRPC_StreamOrdersClient, error) GetDerivativeTrades(ctx context.Context, req *derivativeExchangePB.TradesRequest) (*derivativeExchangePB.TradesResponse, error) GetDerivativeTradesV2(ctx context.Context, req *derivativeExchangePB.TradesV2Request) (*derivativeExchangePB.TradesV2Response, error) @@ -52,6 +54,7 @@ type ExchangeClient interface { GetAuction(ctx context.Context, round int64) (*auctionPB.AuctionEndpointResponse, error) GetAuctions(ctx context.Context) (*auctionPB.AuctionsResponse, error) StreamBids(ctx context.Context) (auctionPB.InjectiveAuctionRPC_StreamBidsClient, error) + FetchInjBurnt(ctx context.Context) (*auctionPB.InjBurntEndpointResponse, error) GetSubaccountsList(ctx context.Context, accountAddress string) (*accountPB.SubaccountsListResponse, error) GetSubaccountBalance(ctx context.Context, subaccountId string, denom string) (*accountPB.SubaccountBalanceEndpointResponse, error) StreamSubaccountBalance(ctx context.Context, subaccountId string) (accountPB.InjectiveAccountsRPC_StreamSubaccountBalanceClient, error) @@ -111,10 +114,10 @@ func NewExchangeClient(network common.Network, options ...common.ClientOption) ( var conn *grpc.ClientConn var err error if opts.TLSCert != nil { - conn, err = grpc.Dial(network.ExchangeGrpcEndpoint, grpc.WithTransportCredentials(opts.TLSCert), grpc.WithContextDialer(common.DialerFunc)) + conn, err = grpc.NewClient(network.ExchangeGrpcEndpoint, grpc.WithTransportCredentials(opts.TLSCert), grpc.WithContextDialer(common.DialerFunc)) } else { - conn, err = grpc.Dial(network.ExchangeGrpcEndpoint, grpc.WithTransportCredentials(insecure.NewCredentials()), grpc.WithContextDialer(common.DialerFunc)) + conn, err = grpc.NewClient(network.ExchangeGrpcEndpoint, grpc.WithTransportCredentials(insecure.NewCredentials()), grpc.WithContextDialer(common.DialerFunc)) } if err != nil { err := errors.Wrapf(err, "failed to connect to the gRPC: %s", network.ExchangeGrpcEndpoint) @@ -305,6 +308,7 @@ func (c *exchangeClient) StreamDerivativeMarket(ctx context.Context, marketIDs [ return stream, nil } +// Deprecated: Use StreamDerivativePositionsV2 instead. This method will be removed in a future version. func (c *exchangeClient) StreamDerivativePositions(ctx context.Context, req *derivativeExchangePB.StreamPositionsRequest) (derivativeExchangePB.InjectiveDerivativeExchangeRPC_StreamPositionsClient, error) { stream, err := common.ExecuteStreamCall(ctx, c.network.ExchangeCookieAssistant, c.derivativeExchangeClient.StreamPositions, req) @@ -316,6 +320,17 @@ func (c *exchangeClient) StreamDerivativePositions(ctx context.Context, req *der return stream, nil } +func (c *exchangeClient) StreamDerivativePositionsV2(ctx context.Context, req *derivativeExchangePB.StreamPositionsV2Request) (derivativeExchangePB.InjectiveDerivativeExchangeRPC_StreamPositionsV2Client, error) { + stream, err := common.ExecuteStreamCall(ctx, c.network.ExchangeCookieAssistant, c.derivativeExchangeClient.StreamPositionsV2, req) + + if err != nil { + fmt.Println(err) + return nil, err + } + + return stream, nil +} + func (c *exchangeClient) StreamDerivativeOrders(ctx context.Context, req *derivativeExchangePB.StreamOrdersRequest) (derivativeExchangePB.InjectiveDerivativeExchangeRPC_StreamOrdersClient, error) { stream, err := common.ExecuteStreamCall(ctx, c.network.ExchangeCookieAssistant, c.derivativeExchangeClient.StreamOrders, req) @@ -521,6 +536,18 @@ func (c *exchangeClient) StreamBids(ctx context.Context) (auctionPB.InjectiveAuc return stream, nil } +func (c *exchangeClient) FetchInjBurnt(ctx context.Context) (*auctionPB.InjBurntEndpointResponse, error) { + req := auctionPB.InjBurntEndpointRequest{} + + res, err := common.ExecuteCall(ctx, c.network.ExchangeCookieAssistant, c.auctionClient.InjBurntEndpoint, &req) + if err != nil { + fmt.Println(err) + return &auctionPB.InjBurntEndpointResponse{}, err + } + + return res, nil +} + // Accounts RPC func (c *exchangeClient) GetSubaccountsList(ctx context.Context, accountAddress string) (*accountPB.SubaccountsListResponse, error) { diff --git a/client/exchange/exchange_test_support.go b/client/exchange/exchange_test_support.go index 5c31f5e8..ceb272d2 100644 --- a/client/exchange/exchange_test_support.go +++ b/client/exchange/exchange_test_support.go @@ -23,6 +23,8 @@ type MockExchangeClient struct { DerivativeMarketsResponses []*derivativeExchangePB.MarketsResponse } +var _ ExchangeClient = &MockExchangeClient{} + func (e *MockExchangeClient) QueryClient() *grpc.ClientConn { dummyConnection := grpc.ClientConn{} return &dummyConnection @@ -87,6 +89,10 @@ func (e *MockExchangeClient) StreamDerivativePositions(ctx context.Context, req return nil, nil } +func (e *MockExchangeClient) StreamDerivativePositionsV2(ctx context.Context, req *derivativeExchangePB.StreamPositionsV2Request) (derivativeExchangePB.InjectiveDerivativeExchangeRPC_StreamPositionsV2Client, error) { + return nil, nil +} + func (e *MockExchangeClient) StreamDerivativeOrders(ctx context.Context, req *derivativeExchangePB.StreamOrdersRequest) (derivativeExchangePB.InjectiveDerivativeExchangeRPC_StreamOrdersClient, error) { return nil, nil } @@ -155,6 +161,10 @@ func (e *MockExchangeClient) StreamBids(ctx context.Context) (auctionPB.Injectiv return nil, nil } +func (e *MockExchangeClient) FetchInjBurnt(ctx context.Context) (*auctionPB.InjBurntEndpointResponse, error) { + return &auctionPB.InjBurntEndpointResponse{}, nil +} + func (e *MockExchangeClient) GetSubaccountsList(ctx context.Context, accountAddress string) (*accountPB.SubaccountsListResponse, error) { return &accountPB.SubaccountsListResponse{}, nil } diff --git a/client/explorer/explorer.go b/client/explorer/explorer.go index 2dbe8ce8..ce9fff24 100644 --- a/client/explorer/explorer.go +++ b/client/explorer/explorer.go @@ -50,9 +50,9 @@ func NewExplorerClient(network common.Network, options ...common.ClientOption) ( var conn *grpc.ClientConn var err error if opts.TLSCert != nil { - conn, err = grpc.Dial(network.ExplorerGrpcEndpoint, grpc.WithTransportCredentials(opts.TLSCert), grpc.WithContextDialer(common.DialerFunc)) + conn, err = grpc.NewClient(network.ExplorerGrpcEndpoint, grpc.WithTransportCredentials(opts.TLSCert), grpc.WithContextDialer(common.DialerFunc)) } else { - conn, err = grpc.Dial(network.ExplorerGrpcEndpoint, grpc.WithTransportCredentials(insecure.NewCredentials()), grpc.WithContextDialer(common.DialerFunc)) + conn, err = grpc.NewClient(network.ExplorerGrpcEndpoint, grpc.WithTransportCredentials(insecure.NewCredentials()), grpc.WithContextDialer(common.DialerFunc)) } if err != nil { err := errors.Wrapf(err, "failed to connect to the gRPC: %s", network.ExplorerGrpcEndpoint) diff --git a/examples/chain/exchange/3_MsgInstantSpotMarketLaunch/example.go b/examples/chain/exchange/3_MsgInstantSpotMarketLaunch/example.go index e46f3029..7046df5f 100644 --- a/examples/chain/exchange/3_MsgInstantSpotMarketLaunch/example.go +++ b/examples/chain/exchange/3_MsgInstantSpotMarketLaunch/example.go @@ -74,6 +74,8 @@ func main() { MinPriceTickSize: chainMinPriceTickSize, MinQuantityTickSize: chainMinQuantityTickSize, MinNotional: chainMinNotional, + BaseDecimals: 18, + QuoteDecimals: 6, } // AsyncBroadcastMsg, SyncBroadcastMsg, QueueBroadcastMsg diff --git a/examples/chain/exchange/query/56_L3DerivativeOrderBook/example.go b/examples/chain/exchange/query/56_L3DerivativeOrderBook/example.go new file mode 100644 index 00000000..26f06ed7 --- /dev/null +++ b/examples/chain/exchange/query/56_L3DerivativeOrderBook/example.go @@ -0,0 +1,71 @@ +package main + +import ( + "context" + "encoding/json" + "fmt" + + "os" + + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" +) + +func main() { + network := common.LoadNetwork("testnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "5d386fbdbf11f1141010f81a46b40f94887367562bd33b452bbaa6ce1cd1381e", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + if err != nil { + panic(err) + } + + ctx := context.Background() + + marketId := "0x17ef48032cb24375ba7c2e39f384e56433bcab20cbee9a7357e4cba2eb00abe6" + + res, err := chainClient.FetchL3DerivativeOrderBook(ctx, marketId) + if err != nil { + fmt.Println(err) + } + + str, _ := json.MarshalIndent(res, "", " ") + fmt.Print(string(str)) + +} diff --git a/examples/chain/exchange/query/57_L3SpotOrderBook/example.go b/examples/chain/exchange/query/57_L3SpotOrderBook/example.go new file mode 100644 index 00000000..c128b2f5 --- /dev/null +++ b/examples/chain/exchange/query/57_L3SpotOrderBook/example.go @@ -0,0 +1,71 @@ +package main + +import ( + "context" + "encoding/json" + "fmt" + + "os" + + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" +) + +func main() { + network := common.LoadNetwork("testnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "5d386fbdbf11f1141010f81a46b40f94887367562bd33b452bbaa6ce1cd1381e", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + if err != nil { + panic(err) + } + + ctx := context.Background() + + marketId := "0x0611780ba69656949525013d947713300f56c37b6175e02f26bffa495c3208fe" + + res, err := chainClient.FetchL3SpotOrderBook(ctx, marketId) + if err != nil { + fmt.Println(err) + } + + str, _ := json.MarshalIndent(res, "", " ") + fmt.Print(string(str)) + +} diff --git a/examples/chain/exchange/query/58_MarketBalance/example.go b/examples/chain/exchange/query/58_MarketBalance/example.go new file mode 100644 index 00000000..45c263f5 --- /dev/null +++ b/examples/chain/exchange/query/58_MarketBalance/example.go @@ -0,0 +1,65 @@ +package main + +import ( + "context" + "encoding/json" + "fmt" + "log" + "os" + + rpchttp "github.com/cometbft/cometbft/rpc/client/http" + + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" +) + +func main() { + network := common.LoadNetwork("testnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "5d386fbdbf11f1141010f81a46b40f94887367562bd33b452bbaa6ce1cd1381e", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + marketId := "0x0611780ba69656949525013d947713300f56c37b6175e02f26bffa495c3208fe" // Example derivative market ID + + res, err := chainClient.FetchMarketBalance(context.Background(), marketId) + if err != nil { + log.Fatalf("Failed to fetch market balance: %v", err) + } + + str, _ := json.MarshalIndent(res, "", " ") + fmt.Print(string(str)) +} diff --git a/examples/chain/exchange/query/59_MarketBalances/example.go b/examples/chain/exchange/query/59_MarketBalances/example.go new file mode 100644 index 00000000..c1de4dc5 --- /dev/null +++ b/examples/chain/exchange/query/59_MarketBalances/example.go @@ -0,0 +1,63 @@ +package main + +import ( + "context" + "encoding/json" + "fmt" + "log" + "os" + + rpchttp "github.com/cometbft/cometbft/rpc/client/http" + + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" +) + +func main() { + network := common.LoadNetwork("testnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "5d386fbdbf11f1141010f81a46b40f94887367562bd33b452bbaa6ce1cd1381e", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + res, err := chainClient.FetchMarketBalances(context.Background()) + if err != nil { + log.Fatalf("Failed to fetch market balances: %v", err) + } + + str, _ := json.MarshalIndent(res, "", " ") + fmt.Print(string(str)) +} diff --git a/examples/chain/exchange/query/60_DenomMinNotional/example.go b/examples/chain/exchange/query/60_DenomMinNotional/example.go new file mode 100644 index 00000000..92c0b68e --- /dev/null +++ b/examples/chain/exchange/query/60_DenomMinNotional/example.go @@ -0,0 +1,65 @@ +package main + +import ( + "context" + "encoding/json" + "fmt" + "log" + "os" + + rpchttp "github.com/cometbft/cometbft/rpc/client/http" + + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" +) + +func main() { + network := common.LoadNetwork("testnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "5d386fbdbf11f1141010f81a46b40f94887367562bd33b452bbaa6ce1cd1381e", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + denom := "peggy0x87aB3B4C8661e07D6372361211B96ed4Dc36B1B5" + + res, err := chainClient.FetchDenomMinNotional(context.Background(), denom) + if err != nil { + log.Fatalf("Failed to fetch denom min notional for %s: %v", denom, err) + } + + str, _ := json.MarshalIndent(res, "", " ") + fmt.Print(string(str)) +} diff --git a/examples/chain/exchange/query/61_DenomMinNotionals/example.go b/examples/chain/exchange/query/61_DenomMinNotionals/example.go new file mode 100644 index 00000000..01ea6d0e --- /dev/null +++ b/examples/chain/exchange/query/61_DenomMinNotionals/example.go @@ -0,0 +1,63 @@ +package main + +import ( + "context" + "encoding/json" + "fmt" + "log" + "os" + + rpchttp "github.com/cometbft/cometbft/rpc/client/http" + + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" +) + +func main() { + network := common.LoadNetwork("devnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "5d386fbdbf11f1141010f81a46b40f94887367562bd33b452bbaa6ce1cd1381e", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + res, err := chainClient.FetchDenomMinNotionals(context.Background()) + if err != nil { + log.Fatalf("Failed to fetch denoms min notionals: %v", err) + } + + str, _ := json.MarshalIndent(res, "", " ") + fmt.Print(string(str)) +} diff --git a/examples/chain/permissions/1_MsgCreateNamespace/example.go b/examples/chain/permissions/1_MsgCreateNamespace/example.go new file mode 100644 index 00000000..087a4f81 --- /dev/null +++ b/examples/chain/permissions/1_MsgCreateNamespace/example.go @@ -0,0 +1,135 @@ +package main + +import ( + "encoding/json" + "fmt" + "os" + + permissionstypes "github.com/InjectiveLabs/sdk-go/chain/permissions/types" + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" +) + +func main() { + network := common.LoadNetwork("devnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "f9db9bf330e23cb7839039e944adef6e9df447b90b503d5b4464c90bea9022f3", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + if err != nil { + panic(err) + } + + denom := "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test" + role1 := permissionstypes.Role{ + Name: "EVERYONE", + RoleId: 0, + Permissions: uint32(permissionstypes.Action_RECEIVE | permissionstypes.Action_SEND), + } + role2 := permissionstypes.Role{ + Name: "admin", + RoleId: 1, + Permissions: uint32(permissionstypes.Action_MODIFY_ROLE_PERMISSIONS), + } + role3 := permissionstypes.Role{ + Name: "user", + RoleId: 2, + Permissions: uint32( + permissionstypes.Action_MINT | + permissionstypes.Action_RECEIVE | + permissionstypes.Action_BURN | + permissionstypes.Action_SEND), + } + + actor_role1 := permissionstypes.ActorRoles{ + Actor: "inj1specificactoraddress", + Roles: []string{"admin"}, + } + actor_role2 := permissionstypes.ActorRoles{ + Actor: "inj1anotheractoraddress", + Roles: []string{"user"}, + } + + role_manager := permissionstypes.RoleManager{ + Manager: "inj1manageraddress", + Roles: []string{"admin"}, + } + + policy_status1 := permissionstypes.PolicyStatus{ + Action: permissionstypes.Action_MINT, + IsDisabled: false, + IsSealed: false, + } + policy_status2 := permissionstypes.PolicyStatus{ + Action: permissionstypes.Action_BURN, + IsDisabled: false, + IsSealed: false, + } + + policy_manager_capability := permissionstypes.PolicyManagerCapability{ + Manager: "inj1policymanageraddress", + Action: permissionstypes.Action_MODIFY_CONTRACT_HOOK, + CanDisable: true, + CanSeal: false, + } + + namespace := permissionstypes.Namespace{ + Denom: denom, + ContractHook: "", + RolePermissions: []*permissionstypes.Role{&role1, &role2, &role3}, + ActorRoles: []*permissionstypes.ActorRoles{&actor_role1, &actor_role2}, + RoleManagers: []*permissionstypes.RoleManager{&role_manager}, + PolicyStatuses: []*permissionstypes.PolicyStatus{&policy_status1, &policy_status2}, + PolicyManagerCapabilities: []*permissionstypes.PolicyManagerCapability{&policy_manager_capability}, + } + + msg := &permissionstypes.MsgCreateNamespace{ + Sender: senderAddress.String(), + Namespace: namespace, + } + + //AsyncBroadcastMsg, SyncBroadcastMsg, QueueBroadcastMsg + response, err := chainClient.SyncBroadcastMsg(msg) + + if err != nil { + panic(err) + } + + str, _ := json.MarshalIndent(response, "", " ") + fmt.Print(string(str)) +} diff --git a/examples/chain/permissions/2_DeleteNamespace/example.go b/examples/chain/permissions/2_DeleteNamespace/example.go deleted file mode 100644 index 004ffb05..00000000 --- a/examples/chain/permissions/2_DeleteNamespace/example.go +++ /dev/null @@ -1,76 +0,0 @@ -package main - -import ( - "encoding/json" - "fmt" - "os" - - rpchttp "github.com/cometbft/cometbft/rpc/client/http" - txtypes "github.com/cosmos/cosmos-sdk/types/tx" - - permissionstypes "github.com/InjectiveLabs/sdk-go/chain/permissions/types" - "github.com/InjectiveLabs/sdk-go/client" - chainclient "github.com/InjectiveLabs/sdk-go/client/chain" - "github.com/InjectiveLabs/sdk-go/client/common" -) - -func main() { - network := common.LoadNetwork("devnet", "lb") - tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") - if err != nil { - panic(err) - } - - senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( - os.Getenv("HOME")+"/.injectived", - "injectived", - "file", - "inj-user", - "12345678", - "f9db9bf330e23cb7839039e944adef6e9df447b90b503d5b4464c90bea9022f3", // keyring will be used if pk not provided - false, - ) - - if err != nil { - panic(err) - } - - clientCtx, err := chainclient.NewClientContext( - network.ChainId, - senderAddress.String(), - cosmosKeyring, - ) - - if err != nil { - panic(err) - } - - clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) - - chainClient, err := chainclient.NewChainClient( - clientCtx, - network, - common.OptionGasPrices(client.DefaultGasPriceWithDenom), - ) - - if err != nil { - panic(err) - } - - namespaceDenom := "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test" - - msg := &permissionstypes.MsgDeleteNamespace{ - Sender: senderAddress.String(), - NamespaceDenom: namespaceDenom, - } - - //AsyncBroadcastMsg, SyncBroadcastMsg, QueueBroadcastMsg - _, response, err := chainClient.BroadcastMsg(txtypes.BroadcastMode_BROADCAST_MODE_SYNC, msg) - - if err != nil { - panic(err) - } - - str, _ := json.MarshalIndent(response, "", " ") - fmt.Print(string(str)) -} diff --git a/examples/chain/permissions/2_MsgUpdateNamespace/example.go b/examples/chain/permissions/2_MsgUpdateNamespace/example.go new file mode 100644 index 00000000..6d50bd00 --- /dev/null +++ b/examples/chain/permissions/2_MsgUpdateNamespace/example.go @@ -0,0 +1,113 @@ +package main + +import ( + "encoding/json" + "fmt" + "os" + + permissionstypes "github.com/InjectiveLabs/sdk-go/chain/permissions/types" + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" +) + +func main() { + network := common.LoadNetwork("devnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "f9db9bf330e23cb7839039e944adef6e9df447b90b503d5b4464c90bea9022f3", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + if err != nil { + panic(err) + } + + denom := "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test" + + role1 := permissionstypes.Role{ + Name: "EVERYONE", + RoleId: 0, + Permissions: uint32(permissionstypes.Action_UNSPECIFIED), + } + role2 := permissionstypes.Role{ + Name: "user", + RoleId: 2, + Permissions: uint32(permissionstypes.Action_RECEIVE | permissionstypes.Action_SEND), + } + + role_manager := permissionstypes.RoleManager{ + Manager: "inj1manageraddress", + Roles: []string{"admin", "user"}, + } + + policy_status1 := permissionstypes.PolicyStatus{ + Action: permissionstypes.Action_MINT, + IsDisabled: true, + IsSealed: false, + } + policy_status2 := permissionstypes.PolicyStatus{ + Action: permissionstypes.Action_BURN, + IsDisabled: false, + IsSealed: true, + } + + policy_manager_capability := permissionstypes.PolicyManagerCapability{ + Manager: "inj1policymanageraddress", + Action: permissionstypes.Action_MODIFY_ROLE_PERMISSIONS, + CanDisable: true, + CanSeal: false, + } + + msg := &permissionstypes.MsgUpdateNamespace{ + Sender: senderAddress.String(), + Denom: denom, + ContractHook: &permissionstypes.MsgUpdateNamespace_SetContractHook{NewValue: "inj19ld6swyldyujcn72j7ugnu9twafhs9wxlyye5m"}, + RolePermissions: []*permissionstypes.Role{&role1, &role2}, + RoleManagers: []*permissionstypes.RoleManager{&role_manager}, + PolicyStatuses: []*permissionstypes.PolicyStatus{&policy_status1, &policy_status2}, + PolicyManagerCapabilities: []*permissionstypes.PolicyManagerCapability{&policy_manager_capability}, + } + + //AsyncBroadcastMsg, SyncBroadcastMsg, QueueBroadcastMsg + response, err := chainClient.SyncBroadcastMsg(msg) + + if err != nil { + panic(err) + } + + str, _ := json.MarshalIndent(response, "", " ") + fmt.Print(string(str)) +} diff --git a/examples/chain/permissions/1_CreateNamespace/example.go b/examples/chain/permissions/3_MsgUpdateActorRoles/example.go similarity index 65% rename from examples/chain/permissions/1_CreateNamespace/example.go rename to examples/chain/permissions/3_MsgUpdateActorRoles/example.go index d5226809..a4e7063e 100644 --- a/examples/chain/permissions/1_CreateNamespace/example.go +++ b/examples/chain/permissions/3_MsgUpdateActorRoles/example.go @@ -57,30 +57,29 @@ func main() { panic(err) } - blockedAddress := "inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r" - namespace := permissionstypes.Namespace{ - Denom: "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test", - RolePermissions: []*permissionstypes.Role{ - { - Role: permissionstypes.EVERYONE, - Permissions: uint32(permissionstypes.Action_MINT | permissionstypes.Action_RECEIVE | permissionstypes.Action_BURN), - }, - { - Role: "blacklisted", - Permissions: 0, - }, - }, - AddressRoles: []*permissionstypes.AddressRoles{ - { - Address: blockedAddress, - Roles: []string{"blacklisted"}, - }, - }, + denom := "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test" + roleActors1 := permissionstypes.RoleActors{ + Role: "admin", + Actors: []string{"inj1actoraddress1", "inj1actoraddress2"}, + } + roleActors2 := permissionstypes.RoleActors{ + Role: "user", + Actors: []string{"inj1actoraddress3"}, + } + roleActors3 := permissionstypes.RoleActors{ + Role: "user", + Actors: []string{"inj1actoraddress4"}, + } + roleActors4 := permissionstypes.RoleActors{ + Role: "admin", + Actors: []string{"inj1actoraddress5"}, } - msg := &permissionstypes.MsgCreateNamespace{ - Sender: senderAddress.String(), - Namespace: namespace, + msg := &permissionstypes.MsgUpdateActorRoles{ + Sender: senderAddress.String(), + Denom: denom, + RoleActorsToAdd: []*permissionstypes.RoleActors{&roleActors1, &roleActors2}, + RoleActorsToRevoke: []*permissionstypes.RoleActors{&roleActors3, &roleActors4}, } //AsyncBroadcastMsg, SyncBroadcastMsg, QueueBroadcastMsg diff --git a/examples/chain/permissions/3_UpdateNamespace/example.go b/examples/chain/permissions/3_UpdateNamespace/example.go deleted file mode 100644 index bf12de1b..00000000 --- a/examples/chain/permissions/3_UpdateNamespace/example.go +++ /dev/null @@ -1,80 +0,0 @@ -package main - -import ( - "encoding/json" - "fmt" - "os" - - rpchttp "github.com/cometbft/cometbft/rpc/client/http" - txtypes "github.com/cosmos/cosmos-sdk/types/tx" - - permissionstypes "github.com/InjectiveLabs/sdk-go/chain/permissions/types" - "github.com/InjectiveLabs/sdk-go/client" - chainclient "github.com/InjectiveLabs/sdk-go/client/chain" - "github.com/InjectiveLabs/sdk-go/client/common" -) - -func main() { - network := common.LoadNetwork("devnet", "lb") - tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") - if err != nil { - panic(err) - } - - senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( - os.Getenv("HOME")+"/.injectived", - "injectived", - "file", - "inj-user", - "12345678", - "f9db9bf330e23cb7839039e944adef6e9df447b90b503d5b4464c90bea9022f3", // keyring will be used if pk not provided - false, - ) - - if err != nil { - panic(err) - } - - clientCtx, err := chainclient.NewClientContext( - network.ChainId, - senderAddress.String(), - cosmosKeyring, - ) - - if err != nil { - panic(err) - } - - clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) - - chainClient, err := chainclient.NewChainClient( - clientCtx, - network, - common.OptionGasPrices(client.DefaultGasPriceWithDenom), - ) - - if err != nil { - panic(err) - } - - namespaceDenom := "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test" - - msg := &permissionstypes.MsgUpdateNamespace{ - Sender: senderAddress.String(), - NamespaceDenom: namespaceDenom, - WasmHook: &permissionstypes.MsgUpdateNamespace_MsgSetWasmHook{NewValue: "inj19ld6swyldyujcn72j7ugnu9twafhs9wxlyye5m"}, - SendsPaused: &permissionstypes.MsgUpdateNamespace_MsgSetSendsPaused{NewValue: true}, - MintsPaused: &permissionstypes.MsgUpdateNamespace_MsgSetMintsPaused{NewValue: true}, - BurnsPaused: &permissionstypes.MsgUpdateNamespace_MsgSetBurnsPaused{NewValue: true}, - } - - //AsyncBroadcastMsg, SyncBroadcastMsg, QueueBroadcastMsg - _, response, err := chainClient.BroadcastMsg(txtypes.BroadcastMode_BROADCAST_MODE_SYNC, msg) - - if err != nil { - panic(err) - } - - str, _ := json.MarshalIndent(response, "", " ") - fmt.Print(string(str)) -} diff --git a/examples/chain/permissions/6_ClaimVoucher/example.go b/examples/chain/permissions/4_MsgClaimVoucher/example.go similarity index 100% rename from examples/chain/permissions/6_ClaimVoucher/example.go rename to examples/chain/permissions/4_MsgClaimVoucher/example.go diff --git a/examples/chain/permissions/4_UpdateNamespaceRoles/example.go b/examples/chain/permissions/4_UpdateNamespaceRoles/example.go deleted file mode 100644 index 5b4e399c..00000000 --- a/examples/chain/permissions/4_UpdateNamespaceRoles/example.go +++ /dev/null @@ -1,93 +0,0 @@ -package main - -import ( - "encoding/json" - "fmt" - "os" - - rpchttp "github.com/cometbft/cometbft/rpc/client/http" - txtypes "github.com/cosmos/cosmos-sdk/types/tx" - - permissionstypes "github.com/InjectiveLabs/sdk-go/chain/permissions/types" - "github.com/InjectiveLabs/sdk-go/client" - chainclient "github.com/InjectiveLabs/sdk-go/client/chain" - "github.com/InjectiveLabs/sdk-go/client/common" -) - -func main() { - network := common.LoadNetwork("devnet", "lb") - tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") - if err != nil { - panic(err) - } - - senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( - os.Getenv("HOME")+"/.injectived", - "injectived", - "file", - "inj-user", - "12345678", - "f9db9bf330e23cb7839039e944adef6e9df447b90b503d5b4464c90bea9022f3", // keyring will be used if pk not provided - false, - ) - - if err != nil { - panic(err) - } - - clientCtx, err := chainclient.NewClientContext( - network.ChainId, - senderAddress.String(), - cosmosKeyring, - ) - - if err != nil { - panic(err) - } - - clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) - - chainClient, err := chainclient.NewChainClient( - clientCtx, - network, - common.OptionGasPrices(client.DefaultGasPriceWithDenom), - ) - - if err != nil { - panic(err) - } - - namespaceDenom := "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test" - blockedAddress := "inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r" - - msg := &permissionstypes.MsgUpdateNamespaceRoles{ - Sender: senderAddress.String(), - NamespaceDenom: namespaceDenom, - RolePermissions: []*permissionstypes.Role{ - { - Role: permissionstypes.EVERYONE, - Permissions: uint32(permissionstypes.Action_RECEIVE), - }, - { - Role: "blacklisted", - Permissions: 0, - }, - }, - AddressRoles: []*permissionstypes.AddressRoles{ - { - Address: blockedAddress, - Roles: []string{"blacklisted"}, - }, - }, - } - - //AsyncBroadcastMsg, SyncBroadcastMsg, QueueBroadcastMsg - _, response, err := chainClient.BroadcastMsg(txtypes.BroadcastMode_BROADCAST_MODE_SYNC, msg) - - if err != nil { - panic(err) - } - - str, _ := json.MarshalIndent(response, "", " ") - fmt.Print(string(str)) -} diff --git a/examples/chain/permissions/5_RevokeNamespaceRoles/example.go b/examples/chain/permissions/5_RevokeNamespaceRoles/example.go deleted file mode 100644 index aa4f2aa9..00000000 --- a/examples/chain/permissions/5_RevokeNamespaceRoles/example.go +++ /dev/null @@ -1,83 +0,0 @@ -package main - -import ( - "encoding/json" - "fmt" - "os" - - rpchttp "github.com/cometbft/cometbft/rpc/client/http" - txtypes "github.com/cosmos/cosmos-sdk/types/tx" - - permissionstypes "github.com/InjectiveLabs/sdk-go/chain/permissions/types" - "github.com/InjectiveLabs/sdk-go/client" - chainclient "github.com/InjectiveLabs/sdk-go/client/chain" - "github.com/InjectiveLabs/sdk-go/client/common" -) - -func main() { - network := common.LoadNetwork("devnet", "lb") - tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") - if err != nil { - panic(err) - } - - senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( - os.Getenv("HOME")+"/.injectived", - "injectived", - "file", - "inj-user", - "12345678", - "f9db9bf330e23cb7839039e944adef6e9df447b90b503d5b4464c90bea9022f3", // keyring will be used if pk not provided - false, - ) - - if err != nil { - panic(err) - } - - clientCtx, err := chainclient.NewClientContext( - network.ChainId, - senderAddress.String(), - cosmosKeyring, - ) - - if err != nil { - panic(err) - } - - clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) - - chainClient, err := chainclient.NewChainClient( - clientCtx, - network, - common.OptionGasPrices(client.DefaultGasPriceWithDenom), - ) - - if err != nil { - panic(err) - } - - namespaceDenom := "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test" - blockedAddress := "inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r" - - msg := &permissionstypes.MsgRevokeNamespaceRoles{ - Sender: senderAddress.String(), - NamespaceDenom: namespaceDenom, - AddressRolesToRevoke: []*permissionstypes.AddressRoles{ - { - Address: blockedAddress, - Roles: []string{"blacklisted"}, - }, - }, - } - - //AsyncBroadcastMsg, SyncBroadcastMsg, QueueBroadcastMsg - _, response, err := chainClient.BroadcastMsg(txtypes.BroadcastMode_BROADCAST_MODE_SYNC, msg) - - if err != nil { - panic(err) - } - - str, _ := json.MarshalIndent(response, "", " ") - fmt.Print(string(str)) -} diff --git a/examples/chain/permissions/query/5_VouchersForAddress/example.go b/examples/chain/permissions/query/10_Vouchers/example.go similarity index 90% rename from examples/chain/permissions/query/5_VouchersForAddress/example.go rename to examples/chain/permissions/query/10_Vouchers/example.go index fe7b9d96..b8651b89 100644 --- a/examples/chain/permissions/query/5_VouchersForAddress/example.go +++ b/examples/chain/permissions/query/10_Vouchers/example.go @@ -6,10 +6,11 @@ import ( "fmt" "os" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" + "github.com/InjectiveLabs/sdk-go/client" chainclient "github.com/InjectiveLabs/sdk-go/client/chain" "github.com/InjectiveLabs/sdk-go/client/common" - rpchttp "github.com/cometbft/cometbft/rpc/client/http" ) func main() { @@ -55,11 +56,11 @@ func main() { panic(err) } - address := senderAddress.String() - ctx := context.Background() - res, err := chainClient.FetchVouchersForAddress(ctx, address) + denom := "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test" + + res, err := chainClient.FetchPermissionsVouchers(ctx, denom) if err != nil { fmt.Println(err) } diff --git a/examples/chain/permissions/query/11_Voucher/example.go b/examples/chain/permissions/query/11_Voucher/example.go new file mode 100644 index 00000000..dc393327 --- /dev/null +++ b/examples/chain/permissions/query/11_Voucher/example.go @@ -0,0 +1,70 @@ +package main + +import ( + "context" + "encoding/json" + "fmt" + "os" + + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" +) + +func main() { + network := common.LoadNetwork("devnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "f9db9bf330e23cb7839039e944adef6e9df447b90b503d5b4464c90bea9022f3", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + if err != nil { + panic(err) + } + + ctx := context.Background() + + denom := "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test" + address := "inj1knhahceyp57j5x7xh69p7utegnnnfgxavmahjr" + + res, err := chainClient.FetchPermissionsVoucher(ctx, denom, address) + if err != nil { + fmt.Println(err) + } + + str, _ := json.MarshalIndent(res, "", " ") + fmt.Print(string(str)) +} diff --git a/examples/chain/permissions/query/12_PermissionsModuleState/example.go b/examples/chain/permissions/query/12_PermissionsModuleState/example.go new file mode 100644 index 00000000..71687687 --- /dev/null +++ b/examples/chain/permissions/query/12_PermissionsModuleState/example.go @@ -0,0 +1,69 @@ +package main + +import ( + "context" + "encoding/json" + "fmt" + + "os" + + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" +) + +func main() { + network := common.LoadNetwork("devnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "5d386fbdbf11f1141010f81a46b40f94887367562bd33b452bbaa6ce1cd1381e", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + if err != nil { + panic(err) + } + + ctx := context.Background() + + res, err := chainClient.FetchPermissionsModuleState(ctx) + if err != nil { + fmt.Println(err) + } + + str, _ := json.MarshalIndent(res, "", " ") + fmt.Print(string(str)) + +} diff --git a/examples/chain/permissions/query/1_NamespaceDenoms/example.go b/examples/chain/permissions/query/1_NamespaceDenoms/example.go new file mode 100644 index 00000000..23ac104f --- /dev/null +++ b/examples/chain/permissions/query/1_NamespaceDenoms/example.go @@ -0,0 +1,69 @@ +package main + +import ( + "context" + "encoding/json" + "fmt" + + "os" + + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" +) + +func main() { + network := common.LoadNetwork("devnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "5d386fbdbf11f1141010f81a46b40f94887367562bd33b452bbaa6ce1cd1381e", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + if err != nil { + panic(err) + } + + ctx := context.Background() + + res, err := chainClient.FetchPermissionsNamespaceDenoms(ctx) + if err != nil { + fmt.Println(err) + } + + str, _ := json.MarshalIndent(res, "", " ") + fmt.Print(string(str)) + +} diff --git a/examples/chain/permissions/query/1_AllNamespaces/example.go b/examples/chain/permissions/query/2_Namespaces/example.go similarity index 95% rename from examples/chain/permissions/query/1_AllNamespaces/example.go rename to examples/chain/permissions/query/2_Namespaces/example.go index 650477d2..10bceac6 100644 --- a/examples/chain/permissions/query/1_AllNamespaces/example.go +++ b/examples/chain/permissions/query/2_Namespaces/example.go @@ -58,7 +58,7 @@ func main() { ctx := context.Background() - res, err := chainClient.FetchAllNamespaces(ctx) + res, err := chainClient.FetchPermissionsNamespaces(ctx) if err != nil { fmt.Println(err) } diff --git a/examples/chain/permissions/query/2_NamespaceByDenom/example.go b/examples/chain/permissions/query/3_Namespace/example.go similarity index 94% rename from examples/chain/permissions/query/2_NamespaceByDenom/example.go rename to examples/chain/permissions/query/3_Namespace/example.go index 69efeb11..ec554405 100644 --- a/examples/chain/permissions/query/2_NamespaceByDenom/example.go +++ b/examples/chain/permissions/query/3_Namespace/example.go @@ -6,10 +6,11 @@ import ( "fmt" "os" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" + "github.com/InjectiveLabs/sdk-go/client" chainclient "github.com/InjectiveLabs/sdk-go/client/chain" "github.com/InjectiveLabs/sdk-go/client/common" - rpchttp "github.com/cometbft/cometbft/rpc/client/http" ) func main() { @@ -59,7 +60,7 @@ func main() { ctx := context.Background() - res, err := chainClient.FetchNamespaceByDenom(ctx, namespaceDenom, true) + res, err := chainClient.FetchPermissionsNamespace(ctx, namespaceDenom) if err != nil { fmt.Println(err) } diff --git a/examples/chain/permissions/query/3_AddressRoles/example.go b/examples/chain/permissions/query/4_RolesByActor/example.go similarity index 92% rename from examples/chain/permissions/query/3_AddressRoles/example.go rename to examples/chain/permissions/query/4_RolesByActor/example.go index 17fe06a0..ee242085 100644 --- a/examples/chain/permissions/query/3_AddressRoles/example.go +++ b/examples/chain/permissions/query/4_RolesByActor/example.go @@ -6,10 +6,11 @@ import ( "fmt" "os" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" + "github.com/InjectiveLabs/sdk-go/client" chainclient "github.com/InjectiveLabs/sdk-go/client/chain" "github.com/InjectiveLabs/sdk-go/client/common" - rpchttp "github.com/cometbft/cometbft/rpc/client/http" ) func main() { @@ -56,11 +57,11 @@ func main() { } namespaceDenom := "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test" - address := senderAddress.String() + actor := senderAddress.String() ctx := context.Background() - res, err := chainClient.FetchAddressRoles(ctx, namespaceDenom, address) + res, err := chainClient.FetchPermissionsRolesByActor(ctx, namespaceDenom, actor) if err != nil { fmt.Println(err) } diff --git a/examples/chain/permissions/query/4_AddressesByRole/example.go b/examples/chain/permissions/query/5_ActorsByRole/example.go similarity index 94% rename from examples/chain/permissions/query/4_AddressesByRole/example.go rename to examples/chain/permissions/query/5_ActorsByRole/example.go index ca2b3f7f..4bc6acaf 100644 --- a/examples/chain/permissions/query/4_AddressesByRole/example.go +++ b/examples/chain/permissions/query/5_ActorsByRole/example.go @@ -6,10 +6,11 @@ import ( "fmt" "os" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" + "github.com/InjectiveLabs/sdk-go/client" chainclient "github.com/InjectiveLabs/sdk-go/client/chain" "github.com/InjectiveLabs/sdk-go/client/common" - rpchttp "github.com/cometbft/cometbft/rpc/client/http" ) func main() { @@ -60,7 +61,7 @@ func main() { ctx := context.Background() - res, err := chainClient.FetchAddressesByRole(ctx, namespaceDenom, role) + res, err := chainClient.FetchPermissionsActorsByRole(ctx, namespaceDenom, role) if err != nil { fmt.Println(err) } diff --git a/examples/chain/permissions/query/6_RoleManagers/example.go b/examples/chain/permissions/query/6_RoleManagers/example.go new file mode 100644 index 00000000..9e99b3aa --- /dev/null +++ b/examples/chain/permissions/query/6_RoleManagers/example.go @@ -0,0 +1,69 @@ +package main + +import ( + "context" + "encoding/json" + "fmt" + "os" + + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" +) + +func main() { + network := common.LoadNetwork("devnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "f9db9bf330e23cb7839039e944adef6e9df447b90b503d5b4464c90bea9022f3", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + if err != nil { + panic(err) + } + + ctx := context.Background() + + denom := "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test" + + res, err := chainClient.FetchPermissionsRoleManagers(ctx, denom) + if err != nil { + fmt.Println(err) + } + + str, _ := json.MarshalIndent(res, "", " ") + fmt.Print(string(str)) +} diff --git a/examples/chain/permissions/query/7_RoleManager/example.go b/examples/chain/permissions/query/7_RoleManager/example.go new file mode 100644 index 00000000..b61af27b --- /dev/null +++ b/examples/chain/permissions/query/7_RoleManager/example.go @@ -0,0 +1,70 @@ +package main + +import ( + "context" + "encoding/json" + "fmt" + "os" + + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" +) + +func main() { + network := common.LoadNetwork("devnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "f9db9bf330e23cb7839039e944adef6e9df447b90b503d5b4464c90bea9022f3", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + if err != nil { + panic(err) + } + + ctx := context.Background() + + denom := "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test" + manager := "inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r" + + res, err := chainClient.FetchPermissionsRoleManager(ctx, denom, manager) + if err != nil { + fmt.Println(err) + } + + str, _ := json.MarshalIndent(res, "", " ") + fmt.Print(string(str)) +} diff --git a/examples/chain/permissions/query/8_PolicyStatuses/example.go b/examples/chain/permissions/query/8_PolicyStatuses/example.go new file mode 100644 index 00000000..64deff3e --- /dev/null +++ b/examples/chain/permissions/query/8_PolicyStatuses/example.go @@ -0,0 +1,69 @@ +package main + +import ( + "context" + "encoding/json" + "fmt" + "os" + + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" +) + +func main() { + network := common.LoadNetwork("devnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "f9db9bf330e23cb7839039e944adef6e9df447b90b503d5b4464c90bea9022f3", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + if err != nil { + panic(err) + } + + ctx := context.Background() + + denom := "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test" + + res, err := chainClient.FetchPermissionsPolicyStatuses(ctx, denom) + if err != nil { + fmt.Println(err) + } + + str, _ := json.MarshalIndent(res, "", " ") + fmt.Print(string(str)) +} diff --git a/examples/chain/permissions/query/9_PolicyManagerCapabilities/example.go b/examples/chain/permissions/query/9_PolicyManagerCapabilities/example.go new file mode 100644 index 00000000..64deff3e --- /dev/null +++ b/examples/chain/permissions/query/9_PolicyManagerCapabilities/example.go @@ -0,0 +1,69 @@ +package main + +import ( + "context" + "encoding/json" + "fmt" + "os" + + "github.com/InjectiveLabs/sdk-go/client" + chainclient "github.com/InjectiveLabs/sdk-go/client/chain" + "github.com/InjectiveLabs/sdk-go/client/common" + rpchttp "github.com/cometbft/cometbft/rpc/client/http" +) + +func main() { + network := common.LoadNetwork("devnet", "lb") + tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") + if err != nil { + panic(err) + } + + senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( + os.Getenv("HOME")+"/.injectived", + "injectived", + "file", + "inj-user", + "12345678", + "f9db9bf330e23cb7839039e944adef6e9df447b90b503d5b4464c90bea9022f3", // keyring will be used if pk not provided + false, + ) + + if err != nil { + panic(err) + } + + clientCtx, err := chainclient.NewClientContext( + network.ChainId, + senderAddress.String(), + cosmosKeyring, + ) + + if err != nil { + panic(err) + } + + clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) + + chainClient, err := chainclient.NewChainClient( + clientCtx, + network, + common.OptionGasPrices(client.DefaultGasPriceWithDenom), + ) + + if err != nil { + panic(err) + } + + ctx := context.Background() + + denom := "factory/inj1hkhdaj2a2clmq5jq6mspsggqs32vynpk228q3r/inj_test" + + res, err := chainClient.FetchPermissionsPolicyStatuses(ctx, denom) + if err != nil { + fmt.Println(err) + } + + str, _ := json.MarshalIndent(res, "", " ") + fmt.Print(string(str)) +} diff --git a/examples/exchange/auction/4_InjBurntEndpoint/example.go b/examples/exchange/auction/4_InjBurntEndpoint/example.go new file mode 100644 index 00000000..8f718527 --- /dev/null +++ b/examples/exchange/auction/4_InjBurntEndpoint/example.go @@ -0,0 +1,39 @@ +package main + +import ( + "context" + "encoding/json" + "fmt" + "time" + + "github.com/InjectiveLabs/sdk-go/client/common" + "github.com/InjectiveLabs/sdk-go/client/exchange" +) + +func main() { + network := common.LoadNetwork("testnet", "lb") + exchangeClient, err := exchange.NewExchangeClient(network) + if err != nil { + panic(err) + } + + ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second) + defer cancel() + + // Fetch INJ burnt details + injBurntResponse, err := exchangeClient.FetchInjBurnt(ctx) + if err != nil { + fmt.Printf("Failed to fetch INJ burnt details: %v\n", err) + return + } + + // Print JSON representation of the response + jsonResponse, err := json.MarshalIndent(injBurntResponse, "", " ") + if err != nil { + fmt.Printf("Failed to marshal response to JSON: %v\n", err) + return + } + + fmt.Println("INJ Burnt Details:") + fmt.Println(string(jsonResponse)) +} diff --git a/examples/exchange/derivatives/10_StreamPositions/example.go b/examples/exchange/derivatives/10_StreamPositions/example.go index af23ee70..8ddd886a 100644 --- a/examples/exchange/derivatives/10_StreamPositions/example.go +++ b/examples/exchange/derivatives/10_StreamPositions/example.go @@ -18,14 +18,14 @@ func main() { } ctx := context.Background() - marketId := "0x4ca0f92fc28be0c9761326016b5a1a2177dd6375558365116b5bdda9abc229ce" + marketId := "0x17ef48032cb24375ba7c2e39f384e56433bcab20cbee9a7357e4cba2eb00abe6" subaccountId := "0xc6fe5d33615a1c52c08018c47e8bc53646a0e101000000000000000000000000" - req := derivativeExchangePB.StreamPositionsRequest{ + req := derivativeExchangePB.StreamPositionsV2Request{ MarketId: marketId, SubaccountId: subaccountId, } - stream, err := exchangeClient.StreamDerivativePositions(ctx, &req) + stream, err := exchangeClient.StreamDerivativePositionsV2(ctx, &req) if err != nil { panic(err) } diff --git a/exchange/accounts_rpc/pb/goadesign_goagen_injective_accounts_rpc.pb.go b/exchange/accounts_rpc/pb/goadesign_goagen_injective_accounts_rpc.pb.go index b118a8a5..67a662ae 100644 --- a/exchange/accounts_rpc/pb/goadesign_goagen_injective_accounts_rpc.pb.go +++ b/exchange/accounts_rpc/pb/goadesign_goagen_injective_accounts_rpc.pb.go @@ -8,7 +8,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 -// protoc v3.19.4 +// protoc v4.24.4 // source: goadesign_goagen_injective_accounts_rpc.proto package injective_accounts_rpcpb diff --git a/exchange/accounts_rpc/pb/goadesign_goagen_injective_accounts_rpc_grpc.pb.go b/exchange/accounts_rpc/pb/goadesign_goagen_injective_accounts_rpc_grpc.pb.go index ceb634f9..61e766e0 100644 --- a/exchange/accounts_rpc/pb/goadesign_goagen_injective_accounts_rpc_grpc.pb.go +++ b/exchange/accounts_rpc/pb/goadesign_goagen_injective_accounts_rpc_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.2.0 -// - protoc v3.19.4 +// - protoc v4.24.4 // source: goadesign_goagen_injective_accounts_rpc.proto package injective_accounts_rpcpb diff --git a/exchange/accounts_rpc/pb/injective_accounts_rpc.pb.gw.go b/exchange/accounts_rpc/pb/injective_accounts_rpc.pb.gw.go deleted file mode 100644 index 4ceab949..00000000 --- a/exchange/accounts_rpc/pb/injective_accounts_rpc.pb.gw.go +++ /dev/null @@ -1,882 +0,0 @@ -// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: injective_accounts_rpc.proto - -/* -Package injective_accounts_rpcpb is a reverse proxy. - -It translates gRPC into RESTful JSON APIs. -*/ -package injective_accounts_rpcpb - -import ( - "context" - "io" - "net/http" - - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" - "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/grpclog" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/proto" -) - -// Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = metadata.Join - -func request_InjectiveAccountsRPC_Portfolio_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PortfolioRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Portfolio(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_Portfolio_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PortfolioRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Portfolio(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_OrderStates_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrderStatesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.OrderStates(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_OrderStates_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrderStatesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.OrderStates(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_SubaccountsList_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountsListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.SubaccountsList(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_SubaccountsList_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountsListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.SubaccountsList(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_SubaccountBalancesList_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountBalancesListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.SubaccountBalancesList(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_SubaccountBalancesList_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountBalancesListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.SubaccountBalancesList(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountBalanceEndpointRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.SubaccountBalanceEndpoint(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountBalanceEndpointRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.SubaccountBalanceEndpoint(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_StreamSubaccountBalance_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (InjectiveAccountsRPC_StreamSubaccountBalanceClient, runtime.ServerMetadata, error) { - var protoReq StreamSubaccountBalanceRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamSubaccountBalance(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveAccountsRPC_SubaccountHistory_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountHistoryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.SubaccountHistory(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_SubaccountHistory_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountHistoryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.SubaccountHistory(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_SubaccountOrderSummary_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountOrderSummaryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.SubaccountOrderSummary(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_SubaccountOrderSummary_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountOrderSummaryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.SubaccountOrderSummary(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_Rewards_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq RewardsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Rewards(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_Rewards_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq RewardsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Rewards(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_StreamAccountData_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (InjectiveAccountsRPC_StreamAccountDataClient, runtime.ServerMetadata, error) { - var protoReq StreamAccountDataRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamAccountData(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -// RegisterInjectiveAccountsRPCHandlerServer registers the http handlers for service InjectiveAccountsRPC to "mux". -// UnaryRPC :call InjectiveAccountsRPCServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterInjectiveAccountsRPCHandlerFromEndpoint instead. -func RegisterInjectiveAccountsRPCHandlerServer(ctx context.Context, mux *runtime.ServeMux, server InjectiveAccountsRPCServer) error { - - mux.Handle("POST", pattern_InjectiveAccountsRPC_Portfolio_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/Portfolio", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/Portfolio")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_Portfolio_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_Portfolio_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_OrderStates_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/OrderStates", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/OrderStates")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_OrderStates_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_OrderStates_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountsList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountsList", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountsList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_SubaccountsList_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountsList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountBalancesList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalancesList", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalancesList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_SubaccountBalancesList_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountBalancesList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalanceEndpoint", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalanceEndpoint")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_StreamSubaccountBalance_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountHistory", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountHistory")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_SubaccountHistory_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountHistory_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountOrderSummary_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountOrderSummary", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountOrderSummary")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_SubaccountOrderSummary_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountOrderSummary_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_Rewards_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/Rewards", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/Rewards")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_Rewards_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_Rewards_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_StreamAccountData_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - return nil -} - -// RegisterInjectiveAccountsRPCHandlerFromEndpoint is same as RegisterInjectiveAccountsRPCHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterInjectiveAccountsRPCHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterInjectiveAccountsRPCHandler(ctx, mux, conn) -} - -// RegisterInjectiveAccountsRPCHandler registers the http handlers for service InjectiveAccountsRPC to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterInjectiveAccountsRPCHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterInjectiveAccountsRPCHandlerClient(ctx, mux, NewInjectiveAccountsRPCClient(conn)) -} - -// RegisterInjectiveAccountsRPCHandlerClient registers the http handlers for service InjectiveAccountsRPC -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "InjectiveAccountsRPCClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "InjectiveAccountsRPCClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "InjectiveAccountsRPCClient" to call the correct interceptors. -func RegisterInjectiveAccountsRPCHandlerClient(ctx context.Context, mux *runtime.ServeMux, client InjectiveAccountsRPCClient) error { - - mux.Handle("POST", pattern_InjectiveAccountsRPC_Portfolio_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/Portfolio", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/Portfolio")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_Portfolio_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_Portfolio_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_OrderStates_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/OrderStates", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/OrderStates")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_OrderStates_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_OrderStates_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountsList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountsList", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountsList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_SubaccountsList_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountsList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountBalancesList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalancesList", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalancesList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_SubaccountBalancesList_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountBalancesList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalanceEndpoint", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalanceEndpoint")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_StreamSubaccountBalance_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/StreamSubaccountBalance", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/StreamSubaccountBalance")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_StreamSubaccountBalance_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_StreamSubaccountBalance_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountHistory", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountHistory")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_SubaccountHistory_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountHistory_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountOrderSummary_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountOrderSummary", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountOrderSummary")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_SubaccountOrderSummary_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountOrderSummary_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_Rewards_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/Rewards", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/Rewards")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_Rewards_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_Rewards_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_StreamAccountData_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/StreamAccountData", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/StreamAccountData")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_StreamAccountData_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_StreamAccountData_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -var ( - pattern_InjectiveAccountsRPC_Portfolio_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "Portfolio"}, "")) - - pattern_InjectiveAccountsRPC_OrderStates_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "OrderStates"}, "")) - - pattern_InjectiveAccountsRPC_SubaccountsList_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "SubaccountsList"}, "")) - - pattern_InjectiveAccountsRPC_SubaccountBalancesList_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "SubaccountBalancesList"}, "")) - - pattern_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "SubaccountBalanceEndpoint"}, "")) - - pattern_InjectiveAccountsRPC_StreamSubaccountBalance_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "StreamSubaccountBalance"}, "")) - - pattern_InjectiveAccountsRPC_SubaccountHistory_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "SubaccountHistory"}, "")) - - pattern_InjectiveAccountsRPC_SubaccountOrderSummary_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "SubaccountOrderSummary"}, "")) - - pattern_InjectiveAccountsRPC_Rewards_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "Rewards"}, "")) - - pattern_InjectiveAccountsRPC_StreamAccountData_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "StreamAccountData"}, "")) -) - -var ( - forward_InjectiveAccountsRPC_Portfolio_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_OrderStates_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_SubaccountsList_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_SubaccountBalancesList_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_StreamSubaccountBalance_0 = runtime.ForwardResponseStream - - forward_InjectiveAccountsRPC_SubaccountHistory_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_SubaccountOrderSummary_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_Rewards_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_StreamAccountData_0 = runtime.ForwardResponseStream -) diff --git a/exchange/accounts_rpc/pb/injective_accounts_rpc.proto b/exchange/accounts_rpc/pb/injective_accounts_rpc.proto deleted file mode 100644 index e28956da..00000000 --- a/exchange/accounts_rpc/pb/injective_accounts_rpc.proto +++ /dev/null @@ -1,623 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// InjectiveAccountsRPC protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -syntax = "proto3"; - -package injective_accounts_rpc; - -option go_package = "/injective_accounts_rpcpb"; - -// InjectiveAccountsRPC defines API of Exchange Accounts provider. -service InjectiveAccountsRPC { - // Provide the account's portfolio value in USD. - rpc Portfolio (PortfolioRequest) returns (PortfolioResponse); - // List order states by order hashes - rpc OrderStates (OrderStatesRequest) returns (OrderStatesResponse); - // List all subaccounts IDs of an account address - rpc SubaccountsList (SubaccountsListRequest) returns (SubaccountsListResponse); - // List subaccount balances for the provided denoms. - rpc SubaccountBalancesList (SubaccountBalancesListRequest) returns (SubaccountBalancesListResponse); - // Gets a balance for specific coin denom - rpc SubaccountBalanceEndpoint (SubaccountBalanceEndpointRequest) returns (SubaccountBalanceEndpointResponse); - // StreamSubaccountBalance streams new balance changes for a specified -// subaccount and denoms. If no denoms are provided, all denom changes are -// streamed. - rpc StreamSubaccountBalance (StreamSubaccountBalanceRequest) returns (stream StreamSubaccountBalanceResponse); - // Get subaccount's deposits and withdrawals history - rpc SubaccountHistory (SubaccountHistoryRequest) returns (SubaccountHistoryResponse); - // Get subaccount's orders summary - rpc SubaccountOrderSummary (SubaccountOrderSummaryRequest) returns (SubaccountOrderSummaryResponse); - // Provide historical trading rewards - rpc Rewards (RewardsRequest) returns (RewardsResponse); - // Stream live data for an account and respective data - rpc StreamAccountData (StreamAccountDataRequest) returns (stream StreamAccountDataResponse); -} - -message PortfolioRequest { - // Account address - string account_address = 1; -} - -message PortfolioResponse { - // The portfolio of this account - AccountPortfolio portfolio = 1; -} - -message AccountPortfolio { - // The account's portfolio value in USD. - string portfolio_value = 1; - // The account's available balance value in USD. - string available_balance = 2; - // The account's locked balance value in USD. - string locked_balance = 3; - // The account's total unrealized PnL value in USD. - string unrealized_pnl = 4; - // List of all subaccounts' portfolio - repeated SubaccountPortfolio subaccounts = 5; -} - -message SubaccountPortfolio { - // The ID of this subaccount - string subaccount_id = 1; - // The subaccount's available balance value in USD. - string available_balance = 2; - // The subaccount's locked balance value in USD. - string locked_balance = 3; - // The subaccount's total unrealized PnL value in USD. - string unrealized_pnl = 4; -} - -message OrderStatesRequest { - repeated string spot_order_hashes = 1; - repeated string derivative_order_hashes = 2; -} - -message OrderStatesResponse { - // List of the spot order state records - repeated OrderStateRecord spot_order_states = 1; - // List of the derivative order state records - repeated OrderStateRecord derivative_order_states = 2; -} - -message OrderStateRecord { - // Hash of the order - string order_hash = 1; - // The subaccountId that this order belongs to - string subaccount_id = 2; - // The Market ID of the order - string market_id = 3; - // The type of the order - string order_type = 4; - // The side of the order - string order_side = 5; - // The state (status) of the order - string state = 6; - // The filled quantity of the order - string quantity_filled = 7; - // The filled quantity of the order - string quantity_remaining = 8; - // Order committed timestamp in UNIX millis. - sint64 created_at = 9; - // Order updated timestamp in UNIX millis. - sint64 updated_at = 10; - // Order prices - string price = 11; - // Margin for derivative order - string margin = 12; -} - -message SubaccountsListRequest { - // Account address, the subaccounts owner - string account_address = 1; -} - -message SubaccountsListResponse { - repeated string subaccounts = 1; -} - -message SubaccountBalancesListRequest { - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 1; - // Filter balances by denoms. If not set, the balances of all the denoms for -// the subaccount are provided. - repeated string denoms = 2; -} - -message SubaccountBalancesListResponse { - // List of subaccount balances - repeated SubaccountBalance balances = 1; -} - -message SubaccountBalance { - // Related subaccount ID - string subaccount_id = 1; - // Account address, owner of this subaccount - string account_address = 2; - // Coin denom on the chain. - string denom = 3; - SubaccountDeposit deposit = 4; -} - -message SubaccountDeposit { - string total_balance = 1; - string available_balance = 2; -} - -message SubaccountBalanceEndpointRequest { - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 1; - // Specify denom to get balance - string denom = 2; -} - -message SubaccountBalanceEndpointResponse { - // Subaccount balance - SubaccountBalance balance = 1; -} - -message StreamSubaccountBalanceRequest { - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 1; - // Filter balances by denoms. If not set, the balances of all the denoms for -// the subaccount are provided. - repeated string denoms = 2; -} - -message StreamSubaccountBalanceResponse { - // Subaccount balance - SubaccountBalance balance = 1; - // Operation timestamp in UNIX millis. - sint64 timestamp = 2; -} - -message SubaccountHistoryRequest { - // SubaccountId of the trader we want to get the history from - string subaccount_id = 1; - // Filter history by denom - string denom = 2; - // Filter history by transfer type - repeated string transfer_types = 3; - // Skip will skip the first n item from the result - uint64 skip = 4; - // Limit is used to specify the maximum number of items to be returned - sint32 limit = 5; - // Upper bound of account transfer history's executedAt - sint64 end_time = 6; -} - -message SubaccountHistoryResponse { - // List of subaccount transfers - repeated SubaccountBalanceTransfer transfers = 1; - Paging paging = 2; -} - -message SubaccountBalanceTransfer { - // Type of the subaccount balance transfer - string transfer_type = 1; - // Subaccount ID of the sending side - string src_subaccount_id = 2; - // Account address of the sending side - string src_account_address = 3; - // Subaccount ID of the receiving side - string dst_subaccount_id = 4; - // Account address of the receiving side - string dst_account_address = 5; - // Coin amount of the transfer - CosmosCoin amount = 6; - // Timestamp of the transfer in UNIX millis - sint64 executed_at = 7; -} - -message CosmosCoin { - // Coin denominator - string denom = 1; - // Coin amount (big int) - string amount = 2; -} -// Paging defines the structure for required params for handling pagination -message Paging { - // total number of txs saved in database - sint64 total = 1; - // can be either block height or index num - sint32 from = 2; - // can be either block height or index num - sint32 to = 3; - // count entries by subaccount, serving some places on helix - sint64 count_by_subaccount = 4; - // array of tokens to navigate to the next pages - repeated string next = 5; -} - -message SubaccountOrderSummaryRequest { - // SubaccountId of the trader we want to get the summary from - string subaccount_id = 1; - // MarketId is limiting order summary to specific market only - string market_id = 2; - // Filter by direction of the orders - string order_direction = 3; -} - -message SubaccountOrderSummaryResponse { - // Total count of subaccount's spot orders in given market and direction - sint64 spot_orders_total = 1; - // Total count of subaccount's derivative orders in given market and direction - sint64 derivative_orders_total = 2; -} - -message RewardsRequest { - // The distribution epoch sequence number. -1 for latest. - sint64 epoch = 1; - // Account address for the rewards distribution - string account_address = 2; -} - -message RewardsResponse { - // The trading rewards distributed - repeated Reward rewards = 1; -} - -message Reward { - // Account address - string account_address = 1; - // Reward coins distributed - repeated Coin rewards = 2; - // Rewards distribution timestamp in UNIX millis. - sint64 distributed_at = 3; -} - -message Coin { - // Denom of the coin - string denom = 1; - string amount = 2; -} - -message StreamAccountDataRequest { - // account address - string account_address = 1; -} - -message StreamAccountDataResponse { - SubaccountBalanceResult subaccount_balance = 1; - PositionsResult position = 2; - TradeResult trade = 3; - OrderResult order = 4; - OrderHistoryResult order_history = 5; - FundingPaymentResult funding_payment = 6; -} - -message SubaccountBalanceResult { - // Subaccount balance - SubaccountBalance balance = 1; - // Operation timestamp in UNIX millis. - sint64 timestamp = 2; -} - -message PositionsResult { - // Updated derivative Position - Position position = 1; - // Operation timestamp in UNIX millis. - sint64 timestamp = 2; -} - -message Position { - // Ticker of the derivative market - string ticker = 1; - // Derivative Market ID - string market_id = 2; - // The subaccountId that the position belongs to - string subaccount_id = 3; - // Direction of the position - string direction = 4; - // Quantity of the position - string quantity = 5; - // Price of the position - string entry_price = 6; - // Margin of the position - string margin = 7; - // LiquidationPrice of the position - string liquidation_price = 8; - // MarkPrice of the position - string mark_price = 9; - // Position updated timestamp in UNIX millis. - sint64 updated_at = 10; - // Position created timestamp in UNIX millis. - sint64 created_at = 11; -} - -message TradeResult { - oneof trade { - // New spot market trade - SpotTrade spot_trade = 1; - // New derivative market trade - DerivativeTrade derivative_trade = 2; - } - // Executed trades update type - string operation_type = 3; - // Operation timestamp in UNIX millis. - sint64 timestamp = 4; -} - -message SpotTrade { - // Maker order hash. - string order_hash = 1; - // The subaccountId that executed the trade - string subaccount_id = 2; - // The ID of the market that this trade is in - string market_id = 3; - // The execution type of the trade - string trade_execution_type = 4; - // The direction the trade - string trade_direction = 5; - // Price level at which trade has been executed - PriceLevel price = 6; - // The fee associated with the trade (quote asset denom) - string fee = 7; - // Timestamp of trade execution in UNIX millis - sint64 executed_at = 8; - // Fee recipient address - string fee_recipient = 9; - // A unique string that helps differentiate between trades - string trade_id = 10; - // Trade's execution side, marker/taker - string execution_side = 11; - // Custom client order ID - string cid = 12; -} - -message PriceLevel { - // Price number of the price level. - string price = 1; - // Quantity of the price level. - string quantity = 2; - // Price level last updated timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message DerivativeTrade { - // Order hash. - string order_hash = 1; - // The subaccountId that executed the trade - string subaccount_id = 2; - // The ID of the market that this trade is in - string market_id = 3; - // The execution type of the trade - string trade_execution_type = 4; - // True if the trade is a liquidation - bool is_liquidation = 5; - // Position Delta from the trade - PositionDelta position_delta = 6; - // The payout associated with the trade - string payout = 7; - // The fee associated with the trade - string fee = 8; - // Timestamp of trade execution in UNIX millis - sint64 executed_at = 9; - // Fee recipient address - string fee_recipient = 10; - // A unique string that helps differentiate between trades - string trade_id = 11; - // Trade's execution side, marker/taker - string execution_side = 12; - // Custom client order ID - string cid = 13; -} - -message PositionDelta { - // The direction the trade - string trade_direction = 1; - // Execution Price of the trade. - string execution_price = 2; - // Execution Quantity of the trade. - string execution_quantity = 3; - // Execution Margin of the trade. - string execution_margin = 4; -} - -message OrderResult { - oneof order { - // Updated spot market order - SpotLimitOrder spot_order = 1; - // Updated derivative market order - DerivativeLimitOrder derivative_order = 2; - } - // Executed orders update type - string operation_type = 3; - // Operation timestamp in UNIX millis. - sint64 timestamp = 4; -} - -message SpotLimitOrder { - // Hash of the order - string order_hash = 1; - // The side of the order - string order_side = 2; - // Spot Market ID is keccak265(baseDenom + quoteDenom) - string market_id = 3; - // The subaccountId that this order belongs to - string subaccount_id = 4; - // Price of the order - string price = 5; - // Quantity of the order - string quantity = 6; - // The amount of the quantity remaining unfilled - string unfilled_quantity = 7; - // Trigger price is the trigger price used by stop/take orders. 0 if the -// trigger price is not set. - string trigger_price = 8; - // Fee recipient address - string fee_recipient = 9; - // Order state - string state = 10; - // Order committed timestamp in UNIX millis. - sint64 created_at = 11; - // Order updated timestamp in UNIX millis. - sint64 updated_at = 12; - // Transaction Hash where order is created. Not all orders have this field - string tx_hash = 13; - // Custom client order ID - string cid = 14; -} - -message DerivativeLimitOrder { - // Hash of the order - string order_hash = 1; - // The side of the order - string order_side = 2; - // Derivative Market ID - string market_id = 3; - // The subaccountId that this order belongs to - string subaccount_id = 4; - // True if the order is a reduce-only order - bool is_reduce_only = 5; - // Margin of the order - string margin = 6; - // Price of the order - string price = 7; - // Quantity of the order - string quantity = 8; - // The amount of the quantity remaining unfilled - string unfilled_quantity = 9; - // Trigger price is the trigger price used by stop/take orders - string trigger_price = 10; - // Fee recipient address - string fee_recipient = 11; - // Order state - string state = 12; - // Order committed timestamp in UNIX millis. - sint64 created_at = 13; - // Order updated timestamp in UNIX millis. - sint64 updated_at = 14; - // Order number of subaccount - sint64 order_number = 15; - // Order type - string order_type = 16; - // Order type - bool is_conditional = 17; - // Trigger timestamp, only exists for conditional orders - uint64 trigger_at = 18; - // OrderHash of order that is triggered by this conditional order - string placed_order_hash = 19; - // Execution type of conditional order - string execution_type = 20; - // Transaction Hash where order is created. Not all orders have this field - string tx_hash = 21; - // Custom client order ID - string cid = 22; -} - -message OrderHistoryResult { - oneof order_history { - // Spot order history - SpotOrderHistory spot_order_history = 1; - // Derivative order history - DerivativeOrderHistory derivative_order_history = 2; - } - // Order update type - string operation_type = 3; - // Operation timestamp in UNIX millis. - sint64 timestamp = 4; -} - -message SpotOrderHistory { - // Hash of the order - string order_hash = 1; - // Spot Market ID is keccak265(baseDenom + quoteDenom) - string market_id = 2; - // active state of the order - bool is_active = 3; - // The subaccountId that this order belongs to - string subaccount_id = 4; - // The execution type - string execution_type = 5; - // The side of the order - string order_type = 6; - // Price of the order - string price = 7; - // Trigger price - string trigger_price = 8; - // Quantity of the order - string quantity = 9; - // Filled amount - string filled_quantity = 10; - // Order state - string state = 11; - // Order committed timestamp in UNIX millis. - sint64 created_at = 12; - // Order updated timestamp in UNIX millis. - sint64 updated_at = 13; - // Order direction (order side) - string direction = 14; - // Transaction Hash where order is created. Not all orders have this field - string tx_hash = 15; - // Custom client order ID - string cid = 16; -} - -message DerivativeOrderHistory { - // Hash of the order - string order_hash = 1; - // Spot Market ID is keccak265(baseDenom + quoteDenom) - string market_id = 2; - // active state of the order - bool is_active = 3; - // The subaccountId that this order belongs to - string subaccount_id = 4; - // The execution type - string execution_type = 5; - // The side of the order - string order_type = 6; - // Price of the order - string price = 7; - // Trigger price - string trigger_price = 8; - // Quantity of the order - string quantity = 9; - // Filled amount - string filled_quantity = 10; - // Order state - string state = 11; - // Order committed timestamp in UNIX millis. - sint64 created_at = 12; - // Order updated timestamp in UNIX millis. - sint64 updated_at = 13; - // True if an order is reduce only - bool is_reduce_only = 14; - // Order direction (order side) - string direction = 15; - // True if this is conditional order, otherwise false - bool is_conditional = 16; - // Trigger timestamp in unix milli - uint64 trigger_at = 17; - // Order hash placed when this triggers - string placed_order_hash = 18; - // Order's margin - string margin = 19; - // Transaction Hash where order is created. Not all orders have this field - string tx_hash = 20; - // Custom client order ID - string cid = 21; -} - -message FundingPaymentResult { - // Funding payments of the account - FundingPayment funding_payments = 1; - // Funding payments type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 4; -} - -message FundingPayment { - // Derivative Market ID - string market_id = 1; - // The subaccountId that the position belongs to - string subaccount_id = 2; - // Amount of the funding payment - string amount = 3; - // Timestamp of funding payment in UNIX millis - sint64 timestamp = 4; -} diff --git a/exchange/accounts_rpc/pb/pb/goadesign_goagen_injective_accounts_rpc.pb.go b/exchange/accounts_rpc/pb/pb/goadesign_goagen_injective_accounts_rpc.pb.go deleted file mode 100644 index b118a8a5..00000000 --- a/exchange/accounts_rpc/pb/pb/goadesign_goagen_injective_accounts_rpc.pb.go +++ /dev/null @@ -1,5333 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// InjectiveAccountsRPC protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.30.0 -// protoc v3.19.4 -// source: goadesign_goagen_injective_accounts_rpc.proto - -package injective_accounts_rpcpb - -import ( - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - reflect "reflect" - sync "sync" -) - -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) - -type PortfolioRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Account address - AccountAddress string `protobuf:"bytes,1,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` -} - -func (x *PortfolioRequest) Reset() { - *x = PortfolioRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PortfolioRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PortfolioRequest) ProtoMessage() {} - -func (x *PortfolioRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PortfolioRequest.ProtoReflect.Descriptor instead. -func (*PortfolioRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{0} -} - -func (x *PortfolioRequest) GetAccountAddress() string { - if x != nil { - return x.AccountAddress - } - return "" -} - -type PortfolioResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The portfolio of this account - Portfolio *AccountPortfolio `protobuf:"bytes,1,opt,name=portfolio,proto3" json:"portfolio,omitempty"` -} - -func (x *PortfolioResponse) Reset() { - *x = PortfolioResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PortfolioResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PortfolioResponse) ProtoMessage() {} - -func (x *PortfolioResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PortfolioResponse.ProtoReflect.Descriptor instead. -func (*PortfolioResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{1} -} - -func (x *PortfolioResponse) GetPortfolio() *AccountPortfolio { - if x != nil { - return x.Portfolio - } - return nil -} - -type AccountPortfolio struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The account's portfolio value in USD. - PortfolioValue string `protobuf:"bytes,1,opt,name=portfolio_value,json=portfolioValue,proto3" json:"portfolio_value,omitempty"` - // The account's available balance value in USD. - AvailableBalance string `protobuf:"bytes,2,opt,name=available_balance,json=availableBalance,proto3" json:"available_balance,omitempty"` - // The account's locked balance value in USD. - LockedBalance string `protobuf:"bytes,3,opt,name=locked_balance,json=lockedBalance,proto3" json:"locked_balance,omitempty"` - // The account's total unrealized PnL value in USD. - UnrealizedPnl string `protobuf:"bytes,4,opt,name=unrealized_pnl,json=unrealizedPnl,proto3" json:"unrealized_pnl,omitempty"` - // List of all subaccounts' portfolio - Subaccounts []*SubaccountPortfolio `protobuf:"bytes,5,rep,name=subaccounts,proto3" json:"subaccounts,omitempty"` -} - -func (x *AccountPortfolio) Reset() { - *x = AccountPortfolio{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AccountPortfolio) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AccountPortfolio) ProtoMessage() {} - -func (x *AccountPortfolio) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use AccountPortfolio.ProtoReflect.Descriptor instead. -func (*AccountPortfolio) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{2} -} - -func (x *AccountPortfolio) GetPortfolioValue() string { - if x != nil { - return x.PortfolioValue - } - return "" -} - -func (x *AccountPortfolio) GetAvailableBalance() string { - if x != nil { - return x.AvailableBalance - } - return "" -} - -func (x *AccountPortfolio) GetLockedBalance() string { - if x != nil { - return x.LockedBalance - } - return "" -} - -func (x *AccountPortfolio) GetUnrealizedPnl() string { - if x != nil { - return x.UnrealizedPnl - } - return "" -} - -func (x *AccountPortfolio) GetSubaccounts() []*SubaccountPortfolio { - if x != nil { - return x.Subaccounts - } - return nil -} - -type SubaccountPortfolio struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The ID of this subaccount - SubaccountId string `protobuf:"bytes,1,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // The subaccount's available balance value in USD. - AvailableBalance string `protobuf:"bytes,2,opt,name=available_balance,json=availableBalance,proto3" json:"available_balance,omitempty"` - // The subaccount's locked balance value in USD. - LockedBalance string `protobuf:"bytes,3,opt,name=locked_balance,json=lockedBalance,proto3" json:"locked_balance,omitempty"` - // The subaccount's total unrealized PnL value in USD. - UnrealizedPnl string `protobuf:"bytes,4,opt,name=unrealized_pnl,json=unrealizedPnl,proto3" json:"unrealized_pnl,omitempty"` -} - -func (x *SubaccountPortfolio) Reset() { - *x = SubaccountPortfolio{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountPortfolio) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountPortfolio) ProtoMessage() {} - -func (x *SubaccountPortfolio) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SubaccountPortfolio.ProtoReflect.Descriptor instead. -func (*SubaccountPortfolio) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{3} -} - -func (x *SubaccountPortfolio) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *SubaccountPortfolio) GetAvailableBalance() string { - if x != nil { - return x.AvailableBalance - } - return "" -} - -func (x *SubaccountPortfolio) GetLockedBalance() string { - if x != nil { - return x.LockedBalance - } - return "" -} - -func (x *SubaccountPortfolio) GetUnrealizedPnl() string { - if x != nil { - return x.UnrealizedPnl - } - return "" -} - -type OrderStatesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - SpotOrderHashes []string `protobuf:"bytes,1,rep,name=spot_order_hashes,json=spotOrderHashes,proto3" json:"spot_order_hashes,omitempty"` - DerivativeOrderHashes []string `protobuf:"bytes,2,rep,name=derivative_order_hashes,json=derivativeOrderHashes,proto3" json:"derivative_order_hashes,omitempty"` -} - -func (x *OrderStatesRequest) Reset() { - *x = OrderStatesRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *OrderStatesRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*OrderStatesRequest) ProtoMessage() {} - -func (x *OrderStatesRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use OrderStatesRequest.ProtoReflect.Descriptor instead. -func (*OrderStatesRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{4} -} - -func (x *OrderStatesRequest) GetSpotOrderHashes() []string { - if x != nil { - return x.SpotOrderHashes - } - return nil -} - -func (x *OrderStatesRequest) GetDerivativeOrderHashes() []string { - if x != nil { - return x.DerivativeOrderHashes - } - return nil -} - -type OrderStatesResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // List of the spot order state records - SpotOrderStates []*OrderStateRecord `protobuf:"bytes,1,rep,name=spot_order_states,json=spotOrderStates,proto3" json:"spot_order_states,omitempty"` - // List of the derivative order state records - DerivativeOrderStates []*OrderStateRecord `protobuf:"bytes,2,rep,name=derivative_order_states,json=derivativeOrderStates,proto3" json:"derivative_order_states,omitempty"` -} - -func (x *OrderStatesResponse) Reset() { - *x = OrderStatesResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *OrderStatesResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*OrderStatesResponse) ProtoMessage() {} - -func (x *OrderStatesResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_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 OrderStatesResponse.ProtoReflect.Descriptor instead. -func (*OrderStatesResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{5} -} - -func (x *OrderStatesResponse) GetSpotOrderStates() []*OrderStateRecord { - if x != nil { - return x.SpotOrderStates - } - return nil -} - -func (x *OrderStatesResponse) GetDerivativeOrderStates() []*OrderStateRecord { - if x != nil { - return x.DerivativeOrderStates - } - return nil -} - -type OrderStateRecord struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Hash of the order - OrderHash string `protobuf:"bytes,1,opt,name=order_hash,json=orderHash,proto3" json:"order_hash,omitempty"` - // The subaccountId that this order belongs to - SubaccountId string `protobuf:"bytes,2,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // The Market ID of the order - MarketId string `protobuf:"bytes,3,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` - // The type of the order - OrderType string `protobuf:"bytes,4,opt,name=order_type,json=orderType,proto3" json:"order_type,omitempty"` - // The side of the order - OrderSide string `protobuf:"bytes,5,opt,name=order_side,json=orderSide,proto3" json:"order_side,omitempty"` - // The state (status) of the order - State string `protobuf:"bytes,6,opt,name=state,proto3" json:"state,omitempty"` - // The filled quantity of the order - QuantityFilled string `protobuf:"bytes,7,opt,name=quantity_filled,json=quantityFilled,proto3" json:"quantity_filled,omitempty"` - // The filled quantity of the order - QuantityRemaining string `protobuf:"bytes,8,opt,name=quantity_remaining,json=quantityRemaining,proto3" json:"quantity_remaining,omitempty"` - // Order committed timestamp in UNIX millis. - CreatedAt int64 `protobuf:"zigzag64,9,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` - // Order updated timestamp in UNIX millis. - UpdatedAt int64 `protobuf:"zigzag64,10,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"` - // Order prices - Price string `protobuf:"bytes,11,opt,name=price,proto3" json:"price,omitempty"` - // Margin for derivative order - Margin string `protobuf:"bytes,12,opt,name=margin,proto3" json:"margin,omitempty"` -} - -func (x *OrderStateRecord) Reset() { - *x = OrderStateRecord{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *OrderStateRecord) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*OrderStateRecord) ProtoMessage() {} - -func (x *OrderStateRecord) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use OrderStateRecord.ProtoReflect.Descriptor instead. -func (*OrderStateRecord) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{6} -} - -func (x *OrderStateRecord) GetOrderHash() string { - if x != nil { - return x.OrderHash - } - return "" -} - -func (x *OrderStateRecord) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *OrderStateRecord) GetMarketId() string { - if x != nil { - return x.MarketId - } - return "" -} - -func (x *OrderStateRecord) GetOrderType() string { - if x != nil { - return x.OrderType - } - return "" -} - -func (x *OrderStateRecord) GetOrderSide() string { - if x != nil { - return x.OrderSide - } - return "" -} - -func (x *OrderStateRecord) GetState() string { - if x != nil { - return x.State - } - return "" -} - -func (x *OrderStateRecord) GetQuantityFilled() string { - if x != nil { - return x.QuantityFilled - } - return "" -} - -func (x *OrderStateRecord) GetQuantityRemaining() string { - if x != nil { - return x.QuantityRemaining - } - return "" -} - -func (x *OrderStateRecord) GetCreatedAt() int64 { - if x != nil { - return x.CreatedAt - } - return 0 -} - -func (x *OrderStateRecord) GetUpdatedAt() int64 { - if x != nil { - return x.UpdatedAt - } - return 0 -} - -func (x *OrderStateRecord) GetPrice() string { - if x != nil { - return x.Price - } - return "" -} - -func (x *OrderStateRecord) GetMargin() string { - if x != nil { - return x.Margin - } - return "" -} - -type SubaccountsListRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Account address, the subaccounts owner - AccountAddress string `protobuf:"bytes,1,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` -} - -func (x *SubaccountsListRequest) Reset() { - *x = SubaccountsListRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountsListRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountsListRequest) ProtoMessage() {} - -func (x *SubaccountsListRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SubaccountsListRequest.ProtoReflect.Descriptor instead. -func (*SubaccountsListRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{7} -} - -func (x *SubaccountsListRequest) GetAccountAddress() string { - if x != nil { - return x.AccountAddress - } - return "" -} - -type SubaccountsListResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Subaccounts []string `protobuf:"bytes,1,rep,name=subaccounts,proto3" json:"subaccounts,omitempty"` -} - -func (x *SubaccountsListResponse) Reset() { - *x = SubaccountsListResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountsListResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountsListResponse) ProtoMessage() {} - -func (x *SubaccountsListResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SubaccountsListResponse.ProtoReflect.Descriptor instead. -func (*SubaccountsListResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{8} -} - -func (x *SubaccountsListResponse) GetSubaccounts() []string { - if x != nil { - return x.Subaccounts - } - return nil -} - -type SubaccountBalancesListRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // SubaccountId of the trader we want to get the trades from - SubaccountId string `protobuf:"bytes,1,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // Filter balances by denoms. If not set, the balances of all the denoms for - // the subaccount are provided. - Denoms []string `protobuf:"bytes,2,rep,name=denoms,proto3" json:"denoms,omitempty"` -} - -func (x *SubaccountBalancesListRequest) Reset() { - *x = SubaccountBalancesListRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountBalancesListRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountBalancesListRequest) ProtoMessage() {} - -func (x *SubaccountBalancesListRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SubaccountBalancesListRequest.ProtoReflect.Descriptor instead. -func (*SubaccountBalancesListRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{9} -} - -func (x *SubaccountBalancesListRequest) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *SubaccountBalancesListRequest) GetDenoms() []string { - if x != nil { - return x.Denoms - } - return nil -} - -type SubaccountBalancesListResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // List of subaccount balances - Balances []*SubaccountBalance `protobuf:"bytes,1,rep,name=balances,proto3" json:"balances,omitempty"` -} - -func (x *SubaccountBalancesListResponse) Reset() { - *x = SubaccountBalancesListResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountBalancesListResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountBalancesListResponse) ProtoMessage() {} - -func (x *SubaccountBalancesListResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[10] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SubaccountBalancesListResponse.ProtoReflect.Descriptor instead. -func (*SubaccountBalancesListResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{10} -} - -func (x *SubaccountBalancesListResponse) GetBalances() []*SubaccountBalance { - if x != nil { - return x.Balances - } - return nil -} - -type SubaccountBalance struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Related subaccount ID - SubaccountId string `protobuf:"bytes,1,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // Account address, owner of this subaccount - AccountAddress string `protobuf:"bytes,2,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` - // Coin denom on the chain. - Denom string `protobuf:"bytes,3,opt,name=denom,proto3" json:"denom,omitempty"` - Deposit *SubaccountDeposit `protobuf:"bytes,4,opt,name=deposit,proto3" json:"deposit,omitempty"` -} - -func (x *SubaccountBalance) Reset() { - *x = SubaccountBalance{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountBalance) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountBalance) ProtoMessage() {} - -func (x *SubaccountBalance) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[11] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SubaccountBalance.ProtoReflect.Descriptor instead. -func (*SubaccountBalance) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{11} -} - -func (x *SubaccountBalance) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *SubaccountBalance) GetAccountAddress() string { - if x != nil { - return x.AccountAddress - } - return "" -} - -func (x *SubaccountBalance) GetDenom() string { - if x != nil { - return x.Denom - } - return "" -} - -func (x *SubaccountBalance) GetDeposit() *SubaccountDeposit { - if x != nil { - return x.Deposit - } - return nil -} - -type SubaccountDeposit struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - TotalBalance string `protobuf:"bytes,1,opt,name=total_balance,json=totalBalance,proto3" json:"total_balance,omitempty"` - AvailableBalance string `protobuf:"bytes,2,opt,name=available_balance,json=availableBalance,proto3" json:"available_balance,omitempty"` -} - -func (x *SubaccountDeposit) Reset() { - *x = SubaccountDeposit{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountDeposit) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountDeposit) ProtoMessage() {} - -func (x *SubaccountDeposit) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_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 SubaccountDeposit.ProtoReflect.Descriptor instead. -func (*SubaccountDeposit) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{12} -} - -func (x *SubaccountDeposit) GetTotalBalance() string { - if x != nil { - return x.TotalBalance - } - return "" -} - -func (x *SubaccountDeposit) GetAvailableBalance() string { - if x != nil { - return x.AvailableBalance - } - return "" -} - -type SubaccountBalanceEndpointRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // SubaccountId of the trader we want to get the trades from - SubaccountId string `protobuf:"bytes,1,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // Specify denom to get balance - Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` -} - -func (x *SubaccountBalanceEndpointRequest) Reset() { - *x = SubaccountBalanceEndpointRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountBalanceEndpointRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountBalanceEndpointRequest) ProtoMessage() {} - -func (x *SubaccountBalanceEndpointRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_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 SubaccountBalanceEndpointRequest.ProtoReflect.Descriptor instead. -func (*SubaccountBalanceEndpointRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{13} -} - -func (x *SubaccountBalanceEndpointRequest) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *SubaccountBalanceEndpointRequest) GetDenom() string { - if x != nil { - return x.Denom - } - return "" -} - -type SubaccountBalanceEndpointResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Subaccount balance - Balance *SubaccountBalance `protobuf:"bytes,1,opt,name=balance,proto3" json:"balance,omitempty"` -} - -func (x *SubaccountBalanceEndpointResponse) Reset() { - *x = SubaccountBalanceEndpointResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountBalanceEndpointResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountBalanceEndpointResponse) ProtoMessage() {} - -func (x *SubaccountBalanceEndpointResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SubaccountBalanceEndpointResponse.ProtoReflect.Descriptor instead. -func (*SubaccountBalanceEndpointResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{14} -} - -func (x *SubaccountBalanceEndpointResponse) GetBalance() *SubaccountBalance { - if x != nil { - return x.Balance - } - return nil -} - -type StreamSubaccountBalanceRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // SubaccountId of the trader we want to get the trades from - SubaccountId string `protobuf:"bytes,1,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // Filter balances by denoms. If not set, the balances of all the denoms for - // the subaccount are provided. - Denoms []string `protobuf:"bytes,2,rep,name=denoms,proto3" json:"denoms,omitempty"` -} - -func (x *StreamSubaccountBalanceRequest) Reset() { - *x = StreamSubaccountBalanceRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *StreamSubaccountBalanceRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*StreamSubaccountBalanceRequest) ProtoMessage() {} - -func (x *StreamSubaccountBalanceRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use StreamSubaccountBalanceRequest.ProtoReflect.Descriptor instead. -func (*StreamSubaccountBalanceRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{15} -} - -func (x *StreamSubaccountBalanceRequest) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *StreamSubaccountBalanceRequest) GetDenoms() []string { - if x != nil { - return x.Denoms - } - return nil -} - -type StreamSubaccountBalanceResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Subaccount balance - Balance *SubaccountBalance `protobuf:"bytes,1,opt,name=balance,proto3" json:"balance,omitempty"` - // Operation timestamp in UNIX millis. - Timestamp int64 `protobuf:"zigzag64,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"` -} - -func (x *StreamSubaccountBalanceResponse) Reset() { - *x = StreamSubaccountBalanceResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *StreamSubaccountBalanceResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*StreamSubaccountBalanceResponse) ProtoMessage() {} - -func (x *StreamSubaccountBalanceResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use StreamSubaccountBalanceResponse.ProtoReflect.Descriptor instead. -func (*StreamSubaccountBalanceResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{16} -} - -func (x *StreamSubaccountBalanceResponse) GetBalance() *SubaccountBalance { - if x != nil { - return x.Balance - } - return nil -} - -func (x *StreamSubaccountBalanceResponse) GetTimestamp() int64 { - if x != nil { - return x.Timestamp - } - return 0 -} - -type SubaccountHistoryRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // SubaccountId of the trader we want to get the history from - SubaccountId string `protobuf:"bytes,1,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // Filter history by denom - Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` - // Filter history by transfer type - TransferTypes []string `protobuf:"bytes,3,rep,name=transfer_types,json=transferTypes,proto3" json:"transfer_types,omitempty"` - // Skip will skip the first n item from the result - Skip uint64 `protobuf:"varint,4,opt,name=skip,proto3" json:"skip,omitempty"` - // Limit is used to specify the maximum number of items to be returned - Limit int32 `protobuf:"zigzag32,5,opt,name=limit,proto3" json:"limit,omitempty"` - // Upper bound of account transfer history's executedAt - EndTime int64 `protobuf:"zigzag64,6,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` -} - -func (x *SubaccountHistoryRequest) Reset() { - *x = SubaccountHistoryRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountHistoryRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountHistoryRequest) ProtoMessage() {} - -func (x *SubaccountHistoryRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[17] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SubaccountHistoryRequest.ProtoReflect.Descriptor instead. -func (*SubaccountHistoryRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{17} -} - -func (x *SubaccountHistoryRequest) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *SubaccountHistoryRequest) GetDenom() string { - if x != nil { - return x.Denom - } - return "" -} - -func (x *SubaccountHistoryRequest) GetTransferTypes() []string { - if x != nil { - return x.TransferTypes - } - return nil -} - -func (x *SubaccountHistoryRequest) GetSkip() uint64 { - if x != nil { - return x.Skip - } - return 0 -} - -func (x *SubaccountHistoryRequest) GetLimit() int32 { - if x != nil { - return x.Limit - } - return 0 -} - -func (x *SubaccountHistoryRequest) GetEndTime() int64 { - if x != nil { - return x.EndTime - } - return 0 -} - -type SubaccountHistoryResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // List of subaccount transfers - Transfers []*SubaccountBalanceTransfer `protobuf:"bytes,1,rep,name=transfers,proto3" json:"transfers,omitempty"` - Paging *Paging `protobuf:"bytes,2,opt,name=paging,proto3" json:"paging,omitempty"` -} - -func (x *SubaccountHistoryResponse) Reset() { - *x = SubaccountHistoryResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountHistoryResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountHistoryResponse) ProtoMessage() {} - -func (x *SubaccountHistoryResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[18] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SubaccountHistoryResponse.ProtoReflect.Descriptor instead. -func (*SubaccountHistoryResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{18} -} - -func (x *SubaccountHistoryResponse) GetTransfers() []*SubaccountBalanceTransfer { - if x != nil { - return x.Transfers - } - return nil -} - -func (x *SubaccountHistoryResponse) GetPaging() *Paging { - if x != nil { - return x.Paging - } - return nil -} - -type SubaccountBalanceTransfer struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Type of the subaccount balance transfer - TransferType string `protobuf:"bytes,1,opt,name=transfer_type,json=transferType,proto3" json:"transfer_type,omitempty"` - // Subaccount ID of the sending side - SrcSubaccountId string `protobuf:"bytes,2,opt,name=src_subaccount_id,json=srcSubaccountId,proto3" json:"src_subaccount_id,omitempty"` - // Account address of the sending side - SrcAccountAddress string `protobuf:"bytes,3,opt,name=src_account_address,json=srcAccountAddress,proto3" json:"src_account_address,omitempty"` - // Subaccount ID of the receiving side - DstSubaccountId string `protobuf:"bytes,4,opt,name=dst_subaccount_id,json=dstSubaccountId,proto3" json:"dst_subaccount_id,omitempty"` - // Account address of the receiving side - DstAccountAddress string `protobuf:"bytes,5,opt,name=dst_account_address,json=dstAccountAddress,proto3" json:"dst_account_address,omitempty"` - // Coin amount of the transfer - Amount *CosmosCoin `protobuf:"bytes,6,opt,name=amount,proto3" json:"amount,omitempty"` - // Timestamp of the transfer in UNIX millis - ExecutedAt int64 `protobuf:"zigzag64,7,opt,name=executed_at,json=executedAt,proto3" json:"executed_at,omitempty"` -} - -func (x *SubaccountBalanceTransfer) Reset() { - *x = SubaccountBalanceTransfer{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountBalanceTransfer) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountBalanceTransfer) ProtoMessage() {} - -func (x *SubaccountBalanceTransfer) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[19] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SubaccountBalanceTransfer.ProtoReflect.Descriptor instead. -func (*SubaccountBalanceTransfer) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{19} -} - -func (x *SubaccountBalanceTransfer) GetTransferType() string { - if x != nil { - return x.TransferType - } - return "" -} - -func (x *SubaccountBalanceTransfer) GetSrcSubaccountId() string { - if x != nil { - return x.SrcSubaccountId - } - return "" -} - -func (x *SubaccountBalanceTransfer) GetSrcAccountAddress() string { - if x != nil { - return x.SrcAccountAddress - } - return "" -} - -func (x *SubaccountBalanceTransfer) GetDstSubaccountId() string { - if x != nil { - return x.DstSubaccountId - } - return "" -} - -func (x *SubaccountBalanceTransfer) GetDstAccountAddress() string { - if x != nil { - return x.DstAccountAddress - } - return "" -} - -func (x *SubaccountBalanceTransfer) GetAmount() *CosmosCoin { - if x != nil { - return x.Amount - } - return nil -} - -func (x *SubaccountBalanceTransfer) GetExecutedAt() int64 { - if x != nil { - return x.ExecutedAt - } - return 0 -} - -type CosmosCoin struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Coin denominator - Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` - // Coin amount (big int) - Amount string `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"` -} - -func (x *CosmosCoin) Reset() { - *x = CosmosCoin{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CosmosCoin) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CosmosCoin) ProtoMessage() {} - -func (x *CosmosCoin) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[20] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CosmosCoin.ProtoReflect.Descriptor instead. -func (*CosmosCoin) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{20} -} - -func (x *CosmosCoin) GetDenom() string { - if x != nil { - return x.Denom - } - return "" -} - -func (x *CosmosCoin) GetAmount() string { - if x != nil { - return x.Amount - } - return "" -} - -// Paging defines the structure for required params for handling pagination -type Paging struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // total number of txs saved in database - Total int64 `protobuf:"zigzag64,1,opt,name=total,proto3" json:"total,omitempty"` - // can be either block height or index num - From int32 `protobuf:"zigzag32,2,opt,name=from,proto3" json:"from,omitempty"` - // can be either block height or index num - To int32 `protobuf:"zigzag32,3,opt,name=to,proto3" json:"to,omitempty"` - // count entries by subaccount, serving some places on helix - CountBySubaccount int64 `protobuf:"zigzag64,4,opt,name=count_by_subaccount,json=countBySubaccount,proto3" json:"count_by_subaccount,omitempty"` - // array of tokens to navigate to the next pages - Next []string `protobuf:"bytes,5,rep,name=next,proto3" json:"next,omitempty"` -} - -func (x *Paging) Reset() { - *x = Paging{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Paging) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Paging) ProtoMessage() {} - -func (x *Paging) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[21] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Paging.ProtoReflect.Descriptor instead. -func (*Paging) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{21} -} - -func (x *Paging) GetTotal() int64 { - if x != nil { - return x.Total - } - return 0 -} - -func (x *Paging) GetFrom() int32 { - if x != nil { - return x.From - } - return 0 -} - -func (x *Paging) GetTo() int32 { - if x != nil { - return x.To - } - return 0 -} - -func (x *Paging) GetCountBySubaccount() int64 { - if x != nil { - return x.CountBySubaccount - } - return 0 -} - -func (x *Paging) GetNext() []string { - if x != nil { - return x.Next - } - return nil -} - -type SubaccountOrderSummaryRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // SubaccountId of the trader we want to get the summary from - SubaccountId string `protobuf:"bytes,1,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // MarketId is limiting order summary to specific market only - MarketId string `protobuf:"bytes,2,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` - // Filter by direction of the orders - OrderDirection string `protobuf:"bytes,3,opt,name=order_direction,json=orderDirection,proto3" json:"order_direction,omitempty"` -} - -func (x *SubaccountOrderSummaryRequest) Reset() { - *x = SubaccountOrderSummaryRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountOrderSummaryRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountOrderSummaryRequest) ProtoMessage() {} - -func (x *SubaccountOrderSummaryRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[22] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SubaccountOrderSummaryRequest.ProtoReflect.Descriptor instead. -func (*SubaccountOrderSummaryRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{22} -} - -func (x *SubaccountOrderSummaryRequest) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *SubaccountOrderSummaryRequest) GetMarketId() string { - if x != nil { - return x.MarketId - } - return "" -} - -func (x *SubaccountOrderSummaryRequest) GetOrderDirection() string { - if x != nil { - return x.OrderDirection - } - return "" -} - -type SubaccountOrderSummaryResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Total count of subaccount's spot orders in given market and direction - SpotOrdersTotal int64 `protobuf:"zigzag64,1,opt,name=spot_orders_total,json=spotOrdersTotal,proto3" json:"spot_orders_total,omitempty"` - // Total count of subaccount's derivative orders in given market and direction - DerivativeOrdersTotal int64 `protobuf:"zigzag64,2,opt,name=derivative_orders_total,json=derivativeOrdersTotal,proto3" json:"derivative_orders_total,omitempty"` -} - -func (x *SubaccountOrderSummaryResponse) Reset() { - *x = SubaccountOrderSummaryResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountOrderSummaryResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountOrderSummaryResponse) ProtoMessage() {} - -func (x *SubaccountOrderSummaryResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[23] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SubaccountOrderSummaryResponse.ProtoReflect.Descriptor instead. -func (*SubaccountOrderSummaryResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{23} -} - -func (x *SubaccountOrderSummaryResponse) GetSpotOrdersTotal() int64 { - if x != nil { - return x.SpotOrdersTotal - } - return 0 -} - -func (x *SubaccountOrderSummaryResponse) GetDerivativeOrdersTotal() int64 { - if x != nil { - return x.DerivativeOrdersTotal - } - return 0 -} - -type RewardsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The distribution epoch sequence number. -1 for latest. - Epoch int64 `protobuf:"zigzag64,1,opt,name=epoch,proto3" json:"epoch,omitempty"` - // Account address for the rewards distribution - AccountAddress string `protobuf:"bytes,2,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` -} - -func (x *RewardsRequest) Reset() { - *x = RewardsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RewardsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RewardsRequest) ProtoMessage() {} - -func (x *RewardsRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[24] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use RewardsRequest.ProtoReflect.Descriptor instead. -func (*RewardsRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{24} -} - -func (x *RewardsRequest) GetEpoch() int64 { - if x != nil { - return x.Epoch - } - return 0 -} - -func (x *RewardsRequest) GetAccountAddress() string { - if x != nil { - return x.AccountAddress - } - return "" -} - -type RewardsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The trading rewards distributed - Rewards []*Reward `protobuf:"bytes,1,rep,name=rewards,proto3" json:"rewards,omitempty"` -} - -func (x *RewardsResponse) Reset() { - *x = RewardsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RewardsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RewardsResponse) ProtoMessage() {} - -func (x *RewardsResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[25] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use RewardsResponse.ProtoReflect.Descriptor instead. -func (*RewardsResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{25} -} - -func (x *RewardsResponse) GetRewards() []*Reward { - if x != nil { - return x.Rewards - } - return nil -} - -type Reward struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Account address - AccountAddress string `protobuf:"bytes,1,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` - // Reward coins distributed - Rewards []*Coin `protobuf:"bytes,2,rep,name=rewards,proto3" json:"rewards,omitempty"` - // Rewards distribution timestamp in UNIX millis. - DistributedAt int64 `protobuf:"zigzag64,3,opt,name=distributed_at,json=distributedAt,proto3" json:"distributed_at,omitempty"` -} - -func (x *Reward) Reset() { - *x = Reward{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Reward) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Reward) ProtoMessage() {} - -func (x *Reward) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[26] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Reward.ProtoReflect.Descriptor instead. -func (*Reward) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{26} -} - -func (x *Reward) GetAccountAddress() string { - if x != nil { - return x.AccountAddress - } - return "" -} - -func (x *Reward) GetRewards() []*Coin { - if x != nil { - return x.Rewards - } - return nil -} - -func (x *Reward) GetDistributedAt() int64 { - if x != nil { - return x.DistributedAt - } - return 0 -} - -type Coin struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Denom of the coin - Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` - Amount string `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"` -} - -func (x *Coin) Reset() { - *x = Coin{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Coin) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Coin) ProtoMessage() {} - -func (x *Coin) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_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 Coin.ProtoReflect.Descriptor instead. -func (*Coin) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{27} -} - -func (x *Coin) GetDenom() string { - if x != nil { - return x.Denom - } - return "" -} - -func (x *Coin) GetAmount() string { - if x != nil { - return x.Amount - } - return "" -} - -type StreamAccountDataRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // account address - AccountAddress string `protobuf:"bytes,1,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` -} - -func (x *StreamAccountDataRequest) Reset() { - *x = StreamAccountDataRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *StreamAccountDataRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*StreamAccountDataRequest) ProtoMessage() {} - -func (x *StreamAccountDataRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[28] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use StreamAccountDataRequest.ProtoReflect.Descriptor instead. -func (*StreamAccountDataRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{28} -} - -func (x *StreamAccountDataRequest) GetAccountAddress() string { - if x != nil { - return x.AccountAddress - } - return "" -} - -type StreamAccountDataResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - SubaccountBalance *SubaccountBalanceResult `protobuf:"bytes,1,opt,name=subaccount_balance,json=subaccountBalance,proto3" json:"subaccount_balance,omitempty"` - Position *PositionsResult `protobuf:"bytes,2,opt,name=position,proto3" json:"position,omitempty"` - Trade *TradeResult `protobuf:"bytes,3,opt,name=trade,proto3" json:"trade,omitempty"` - Order *OrderResult `protobuf:"bytes,4,opt,name=order,proto3" json:"order,omitempty"` - OrderHistory *OrderHistoryResult `protobuf:"bytes,5,opt,name=order_history,json=orderHistory,proto3" json:"order_history,omitempty"` - FundingPayment *FundingPaymentResult `protobuf:"bytes,6,opt,name=funding_payment,json=fundingPayment,proto3" json:"funding_payment,omitempty"` -} - -func (x *StreamAccountDataResponse) Reset() { - *x = StreamAccountDataResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *StreamAccountDataResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*StreamAccountDataResponse) ProtoMessage() {} - -func (x *StreamAccountDataResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[29] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use StreamAccountDataResponse.ProtoReflect.Descriptor instead. -func (*StreamAccountDataResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{29} -} - -func (x *StreamAccountDataResponse) GetSubaccountBalance() *SubaccountBalanceResult { - if x != nil { - return x.SubaccountBalance - } - return nil -} - -func (x *StreamAccountDataResponse) GetPosition() *PositionsResult { - if x != nil { - return x.Position - } - return nil -} - -func (x *StreamAccountDataResponse) GetTrade() *TradeResult { - if x != nil { - return x.Trade - } - return nil -} - -func (x *StreamAccountDataResponse) GetOrder() *OrderResult { - if x != nil { - return x.Order - } - return nil -} - -func (x *StreamAccountDataResponse) GetOrderHistory() *OrderHistoryResult { - if x != nil { - return x.OrderHistory - } - return nil -} - -func (x *StreamAccountDataResponse) GetFundingPayment() *FundingPaymentResult { - if x != nil { - return x.FundingPayment - } - return nil -} - -type SubaccountBalanceResult struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Subaccount balance - Balance *SubaccountBalance `protobuf:"bytes,1,opt,name=balance,proto3" json:"balance,omitempty"` - // Operation timestamp in UNIX millis. - Timestamp int64 `protobuf:"zigzag64,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"` -} - -func (x *SubaccountBalanceResult) Reset() { - *x = SubaccountBalanceResult{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[30] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SubaccountBalanceResult) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SubaccountBalanceResult) ProtoMessage() {} - -func (x *SubaccountBalanceResult) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[30] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SubaccountBalanceResult.ProtoReflect.Descriptor instead. -func (*SubaccountBalanceResult) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{30} -} - -func (x *SubaccountBalanceResult) GetBalance() *SubaccountBalance { - if x != nil { - return x.Balance - } - return nil -} - -func (x *SubaccountBalanceResult) GetTimestamp() int64 { - if x != nil { - return x.Timestamp - } - return 0 -} - -type PositionsResult struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Updated derivative Position - Position *Position `protobuf:"bytes,1,opt,name=position,proto3" json:"position,omitempty"` - // Operation timestamp in UNIX millis. - Timestamp int64 `protobuf:"zigzag64,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"` -} - -func (x *PositionsResult) Reset() { - *x = PositionsResult{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[31] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PositionsResult) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PositionsResult) ProtoMessage() {} - -func (x *PositionsResult) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[31] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PositionsResult.ProtoReflect.Descriptor instead. -func (*PositionsResult) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{31} -} - -func (x *PositionsResult) GetPosition() *Position { - if x != nil { - return x.Position - } - return nil -} - -func (x *PositionsResult) GetTimestamp() int64 { - if x != nil { - return x.Timestamp - } - return 0 -} - -type Position struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Ticker of the derivative market - Ticker string `protobuf:"bytes,1,opt,name=ticker,proto3" json:"ticker,omitempty"` - // Derivative Market ID - MarketId string `protobuf:"bytes,2,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` - // The subaccountId that the position belongs to - SubaccountId string `protobuf:"bytes,3,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // Direction of the position - Direction string `protobuf:"bytes,4,opt,name=direction,proto3" json:"direction,omitempty"` - // Quantity of the position - Quantity string `protobuf:"bytes,5,opt,name=quantity,proto3" json:"quantity,omitempty"` - // Price of the position - EntryPrice string `protobuf:"bytes,6,opt,name=entry_price,json=entryPrice,proto3" json:"entry_price,omitempty"` - // Margin of the position - Margin string `protobuf:"bytes,7,opt,name=margin,proto3" json:"margin,omitempty"` - // LiquidationPrice of the position - LiquidationPrice string `protobuf:"bytes,8,opt,name=liquidation_price,json=liquidationPrice,proto3" json:"liquidation_price,omitempty"` - // MarkPrice of the position - MarkPrice string `protobuf:"bytes,9,opt,name=mark_price,json=markPrice,proto3" json:"mark_price,omitempty"` - // Position updated timestamp in UNIX millis. - UpdatedAt int64 `protobuf:"zigzag64,10,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"` - // Position created timestamp in UNIX millis. - CreatedAt int64 `protobuf:"zigzag64,11,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` -} - -func (x *Position) Reset() { - *x = Position{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[32] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Position) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Position) ProtoMessage() {} - -func (x *Position) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[32] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Position.ProtoReflect.Descriptor instead. -func (*Position) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{32} -} - -func (x *Position) GetTicker() string { - if x != nil { - return x.Ticker - } - return "" -} - -func (x *Position) GetMarketId() string { - if x != nil { - return x.MarketId - } - return "" -} - -func (x *Position) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *Position) GetDirection() string { - if x != nil { - return x.Direction - } - return "" -} - -func (x *Position) GetQuantity() string { - if x != nil { - return x.Quantity - } - return "" -} - -func (x *Position) GetEntryPrice() string { - if x != nil { - return x.EntryPrice - } - return "" -} - -func (x *Position) GetMargin() string { - if x != nil { - return x.Margin - } - return "" -} - -func (x *Position) GetLiquidationPrice() string { - if x != nil { - return x.LiquidationPrice - } - return "" -} - -func (x *Position) GetMarkPrice() string { - if x != nil { - return x.MarkPrice - } - return "" -} - -func (x *Position) GetUpdatedAt() int64 { - if x != nil { - return x.UpdatedAt - } - return 0 -} - -func (x *Position) GetCreatedAt() int64 { - if x != nil { - return x.CreatedAt - } - return 0 -} - -type TradeResult struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Trade: - // - // *TradeResult_SpotTrade - // *TradeResult_DerivativeTrade - Trade isTradeResult_Trade `protobuf_oneof:"trade"` - // Executed trades update type - OperationType string `protobuf:"bytes,3,opt,name=operation_type,json=operationType,proto3" json:"operation_type,omitempty"` - // Operation timestamp in UNIX millis. - Timestamp int64 `protobuf:"zigzag64,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"` -} - -func (x *TradeResult) Reset() { - *x = TradeResult{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *TradeResult) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*TradeResult) ProtoMessage() {} - -func (x *TradeResult) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[33] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use TradeResult.ProtoReflect.Descriptor instead. -func (*TradeResult) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{33} -} - -func (m *TradeResult) GetTrade() isTradeResult_Trade { - if m != nil { - return m.Trade - } - return nil -} - -func (x *TradeResult) GetSpotTrade() *SpotTrade { - if x, ok := x.GetTrade().(*TradeResult_SpotTrade); ok { - return x.SpotTrade - } - return nil -} - -func (x *TradeResult) GetDerivativeTrade() *DerivativeTrade { - if x, ok := x.GetTrade().(*TradeResult_DerivativeTrade); ok { - return x.DerivativeTrade - } - return nil -} - -func (x *TradeResult) GetOperationType() string { - if x != nil { - return x.OperationType - } - return "" -} - -func (x *TradeResult) GetTimestamp() int64 { - if x != nil { - return x.Timestamp - } - return 0 -} - -type isTradeResult_Trade interface { - isTradeResult_Trade() -} - -type TradeResult_SpotTrade struct { - // New spot market trade - SpotTrade *SpotTrade `protobuf:"bytes,1,opt,name=spot_trade,json=spotTrade,proto3,oneof"` -} - -type TradeResult_DerivativeTrade struct { - // New derivative market trade - DerivativeTrade *DerivativeTrade `protobuf:"bytes,2,opt,name=derivative_trade,json=derivativeTrade,proto3,oneof"` -} - -func (*TradeResult_SpotTrade) isTradeResult_Trade() {} - -func (*TradeResult_DerivativeTrade) isTradeResult_Trade() {} - -type SpotTrade struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Maker order hash. - OrderHash string `protobuf:"bytes,1,opt,name=order_hash,json=orderHash,proto3" json:"order_hash,omitempty"` - // The subaccountId that executed the trade - SubaccountId string `protobuf:"bytes,2,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // The ID of the market that this trade is in - MarketId string `protobuf:"bytes,3,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` - // The execution type of the trade - TradeExecutionType string `protobuf:"bytes,4,opt,name=trade_execution_type,json=tradeExecutionType,proto3" json:"trade_execution_type,omitempty"` - // The direction the trade - TradeDirection string `protobuf:"bytes,5,opt,name=trade_direction,json=tradeDirection,proto3" json:"trade_direction,omitempty"` - // Price level at which trade has been executed - Price *PriceLevel `protobuf:"bytes,6,opt,name=price,proto3" json:"price,omitempty"` - // The fee associated with the trade (quote asset denom) - Fee string `protobuf:"bytes,7,opt,name=fee,proto3" json:"fee,omitempty"` - // Timestamp of trade execution in UNIX millis - ExecutedAt int64 `protobuf:"zigzag64,8,opt,name=executed_at,json=executedAt,proto3" json:"executed_at,omitempty"` - // Fee recipient address - FeeRecipient string `protobuf:"bytes,9,opt,name=fee_recipient,json=feeRecipient,proto3" json:"fee_recipient,omitempty"` - // A unique string that helps differentiate between trades - TradeId string `protobuf:"bytes,10,opt,name=trade_id,json=tradeId,proto3" json:"trade_id,omitempty"` - // Trade's execution side, marker/taker - ExecutionSide string `protobuf:"bytes,11,opt,name=execution_side,json=executionSide,proto3" json:"execution_side,omitempty"` - // Custom client order ID - Cid string `protobuf:"bytes,12,opt,name=cid,proto3" json:"cid,omitempty"` -} - -func (x *SpotTrade) Reset() { - *x = SpotTrade{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[34] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SpotTrade) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SpotTrade) ProtoMessage() {} - -func (x *SpotTrade) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_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 SpotTrade.ProtoReflect.Descriptor instead. -func (*SpotTrade) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{34} -} - -func (x *SpotTrade) GetOrderHash() string { - if x != nil { - return x.OrderHash - } - return "" -} - -func (x *SpotTrade) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *SpotTrade) GetMarketId() string { - if x != nil { - return x.MarketId - } - return "" -} - -func (x *SpotTrade) GetTradeExecutionType() string { - if x != nil { - return x.TradeExecutionType - } - return "" -} - -func (x *SpotTrade) GetTradeDirection() string { - if x != nil { - return x.TradeDirection - } - return "" -} - -func (x *SpotTrade) GetPrice() *PriceLevel { - if x != nil { - return x.Price - } - return nil -} - -func (x *SpotTrade) GetFee() string { - if x != nil { - return x.Fee - } - return "" -} - -func (x *SpotTrade) GetExecutedAt() int64 { - if x != nil { - return x.ExecutedAt - } - return 0 -} - -func (x *SpotTrade) GetFeeRecipient() string { - if x != nil { - return x.FeeRecipient - } - return "" -} - -func (x *SpotTrade) GetTradeId() string { - if x != nil { - return x.TradeId - } - return "" -} - -func (x *SpotTrade) GetExecutionSide() string { - if x != nil { - return x.ExecutionSide - } - return "" -} - -func (x *SpotTrade) GetCid() string { - if x != nil { - return x.Cid - } - return "" -} - -type PriceLevel struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Price number of the price level. - Price string `protobuf:"bytes,1,opt,name=price,proto3" json:"price,omitempty"` - // Quantity of the price level. - Quantity string `protobuf:"bytes,2,opt,name=quantity,proto3" json:"quantity,omitempty"` - // Price level last updated timestamp in UNIX millis. - Timestamp int64 `protobuf:"zigzag64,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"` -} - -func (x *PriceLevel) Reset() { - *x = PriceLevel{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[35] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PriceLevel) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PriceLevel) ProtoMessage() {} - -func (x *PriceLevel) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[35] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PriceLevel.ProtoReflect.Descriptor instead. -func (*PriceLevel) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{35} -} - -func (x *PriceLevel) GetPrice() string { - if x != nil { - return x.Price - } - return "" -} - -func (x *PriceLevel) GetQuantity() string { - if x != nil { - return x.Quantity - } - return "" -} - -func (x *PriceLevel) GetTimestamp() int64 { - if x != nil { - return x.Timestamp - } - return 0 -} - -type DerivativeTrade struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Order hash. - OrderHash string `protobuf:"bytes,1,opt,name=order_hash,json=orderHash,proto3" json:"order_hash,omitempty"` - // The subaccountId that executed the trade - SubaccountId string `protobuf:"bytes,2,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // The ID of the market that this trade is in - MarketId string `protobuf:"bytes,3,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` - // The execution type of the trade - TradeExecutionType string `protobuf:"bytes,4,opt,name=trade_execution_type,json=tradeExecutionType,proto3" json:"trade_execution_type,omitempty"` - // True if the trade is a liquidation - IsLiquidation bool `protobuf:"varint,5,opt,name=is_liquidation,json=isLiquidation,proto3" json:"is_liquidation,omitempty"` - // Position Delta from the trade - PositionDelta *PositionDelta `protobuf:"bytes,6,opt,name=position_delta,json=positionDelta,proto3" json:"position_delta,omitempty"` - // The payout associated with the trade - Payout string `protobuf:"bytes,7,opt,name=payout,proto3" json:"payout,omitempty"` - // The fee associated with the trade - Fee string `protobuf:"bytes,8,opt,name=fee,proto3" json:"fee,omitempty"` - // Timestamp of trade execution in UNIX millis - ExecutedAt int64 `protobuf:"zigzag64,9,opt,name=executed_at,json=executedAt,proto3" json:"executed_at,omitempty"` - // Fee recipient address - FeeRecipient string `protobuf:"bytes,10,opt,name=fee_recipient,json=feeRecipient,proto3" json:"fee_recipient,omitempty"` - // A unique string that helps differentiate between trades - TradeId string `protobuf:"bytes,11,opt,name=trade_id,json=tradeId,proto3" json:"trade_id,omitempty"` - // Trade's execution side, marker/taker - ExecutionSide string `protobuf:"bytes,12,opt,name=execution_side,json=executionSide,proto3" json:"execution_side,omitempty"` - // Custom client order ID - Cid string `protobuf:"bytes,13,opt,name=cid,proto3" json:"cid,omitempty"` -} - -func (x *DerivativeTrade) Reset() { - *x = DerivativeTrade{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[36] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DerivativeTrade) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DerivativeTrade) ProtoMessage() {} - -func (x *DerivativeTrade) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[36] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DerivativeTrade.ProtoReflect.Descriptor instead. -func (*DerivativeTrade) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{36} -} - -func (x *DerivativeTrade) GetOrderHash() string { - if x != nil { - return x.OrderHash - } - return "" -} - -func (x *DerivativeTrade) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *DerivativeTrade) GetMarketId() string { - if x != nil { - return x.MarketId - } - return "" -} - -func (x *DerivativeTrade) GetTradeExecutionType() string { - if x != nil { - return x.TradeExecutionType - } - return "" -} - -func (x *DerivativeTrade) GetIsLiquidation() bool { - if x != nil { - return x.IsLiquidation - } - return false -} - -func (x *DerivativeTrade) GetPositionDelta() *PositionDelta { - if x != nil { - return x.PositionDelta - } - return nil -} - -func (x *DerivativeTrade) GetPayout() string { - if x != nil { - return x.Payout - } - return "" -} - -func (x *DerivativeTrade) GetFee() string { - if x != nil { - return x.Fee - } - return "" -} - -func (x *DerivativeTrade) GetExecutedAt() int64 { - if x != nil { - return x.ExecutedAt - } - return 0 -} - -func (x *DerivativeTrade) GetFeeRecipient() string { - if x != nil { - return x.FeeRecipient - } - return "" -} - -func (x *DerivativeTrade) GetTradeId() string { - if x != nil { - return x.TradeId - } - return "" -} - -func (x *DerivativeTrade) GetExecutionSide() string { - if x != nil { - return x.ExecutionSide - } - return "" -} - -func (x *DerivativeTrade) GetCid() string { - if x != nil { - return x.Cid - } - return "" -} - -type PositionDelta struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The direction the trade - TradeDirection string `protobuf:"bytes,1,opt,name=trade_direction,json=tradeDirection,proto3" json:"trade_direction,omitempty"` - // Execution Price of the trade. - ExecutionPrice string `protobuf:"bytes,2,opt,name=execution_price,json=executionPrice,proto3" json:"execution_price,omitempty"` - // Execution Quantity of the trade. - ExecutionQuantity string `protobuf:"bytes,3,opt,name=execution_quantity,json=executionQuantity,proto3" json:"execution_quantity,omitempty"` - // Execution Margin of the trade. - ExecutionMargin string `protobuf:"bytes,4,opt,name=execution_margin,json=executionMargin,proto3" json:"execution_margin,omitempty"` -} - -func (x *PositionDelta) Reset() { - *x = PositionDelta{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[37] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PositionDelta) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PositionDelta) ProtoMessage() {} - -func (x *PositionDelta) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_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 PositionDelta.ProtoReflect.Descriptor instead. -func (*PositionDelta) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{37} -} - -func (x *PositionDelta) GetTradeDirection() string { - if x != nil { - return x.TradeDirection - } - return "" -} - -func (x *PositionDelta) GetExecutionPrice() string { - if x != nil { - return x.ExecutionPrice - } - return "" -} - -func (x *PositionDelta) GetExecutionQuantity() string { - if x != nil { - return x.ExecutionQuantity - } - return "" -} - -func (x *PositionDelta) GetExecutionMargin() string { - if x != nil { - return x.ExecutionMargin - } - return "" -} - -type OrderResult struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Order: - // - // *OrderResult_SpotOrder - // *OrderResult_DerivativeOrder - Order isOrderResult_Order `protobuf_oneof:"order"` - // Executed orders update type - OperationType string `protobuf:"bytes,3,opt,name=operation_type,json=operationType,proto3" json:"operation_type,omitempty"` - // Operation timestamp in UNIX millis. - Timestamp int64 `protobuf:"zigzag64,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"` -} - -func (x *OrderResult) Reset() { - *x = OrderResult{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[38] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *OrderResult) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*OrderResult) ProtoMessage() {} - -func (x *OrderResult) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_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 OrderResult.ProtoReflect.Descriptor instead. -func (*OrderResult) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{38} -} - -func (m *OrderResult) GetOrder() isOrderResult_Order { - if m != nil { - return m.Order - } - return nil -} - -func (x *OrderResult) GetSpotOrder() *SpotLimitOrder { - if x, ok := x.GetOrder().(*OrderResult_SpotOrder); ok { - return x.SpotOrder - } - return nil -} - -func (x *OrderResult) GetDerivativeOrder() *DerivativeLimitOrder { - if x, ok := x.GetOrder().(*OrderResult_DerivativeOrder); ok { - return x.DerivativeOrder - } - return nil -} - -func (x *OrderResult) GetOperationType() string { - if x != nil { - return x.OperationType - } - return "" -} - -func (x *OrderResult) GetTimestamp() int64 { - if x != nil { - return x.Timestamp - } - return 0 -} - -type isOrderResult_Order interface { - isOrderResult_Order() -} - -type OrderResult_SpotOrder struct { - // Updated spot market order - SpotOrder *SpotLimitOrder `protobuf:"bytes,1,opt,name=spot_order,json=spotOrder,proto3,oneof"` -} - -type OrderResult_DerivativeOrder struct { - // Updated derivative market order - DerivativeOrder *DerivativeLimitOrder `protobuf:"bytes,2,opt,name=derivative_order,json=derivativeOrder,proto3,oneof"` -} - -func (*OrderResult_SpotOrder) isOrderResult_Order() {} - -func (*OrderResult_DerivativeOrder) isOrderResult_Order() {} - -type SpotLimitOrder struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Hash of the order - OrderHash string `protobuf:"bytes,1,opt,name=order_hash,json=orderHash,proto3" json:"order_hash,omitempty"` - // The side of the order - OrderSide string `protobuf:"bytes,2,opt,name=order_side,json=orderSide,proto3" json:"order_side,omitempty"` - // Spot Market ID is keccak265(baseDenom + quoteDenom) - MarketId string `protobuf:"bytes,3,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` - // The subaccountId that this order belongs to - SubaccountId string `protobuf:"bytes,4,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // Price of the order - Price string `protobuf:"bytes,5,opt,name=price,proto3" json:"price,omitempty"` - // Quantity of the order - Quantity string `protobuf:"bytes,6,opt,name=quantity,proto3" json:"quantity,omitempty"` - // The amount of the quantity remaining unfilled - UnfilledQuantity string `protobuf:"bytes,7,opt,name=unfilled_quantity,json=unfilledQuantity,proto3" json:"unfilled_quantity,omitempty"` - // Trigger price is the trigger price used by stop/take orders. 0 if the - // trigger price is not set. - TriggerPrice string `protobuf:"bytes,8,opt,name=trigger_price,json=triggerPrice,proto3" json:"trigger_price,omitempty"` - // Fee recipient address - FeeRecipient string `protobuf:"bytes,9,opt,name=fee_recipient,json=feeRecipient,proto3" json:"fee_recipient,omitempty"` - // Order state - State string `protobuf:"bytes,10,opt,name=state,proto3" json:"state,omitempty"` - // Order committed timestamp in UNIX millis. - CreatedAt int64 `protobuf:"zigzag64,11,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` - // Order updated timestamp in UNIX millis. - UpdatedAt int64 `protobuf:"zigzag64,12,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"` - // Transaction Hash where order is created. Not all orders have this field - TxHash string `protobuf:"bytes,13,opt,name=tx_hash,json=txHash,proto3" json:"tx_hash,omitempty"` - // Custom client order ID - Cid string `protobuf:"bytes,14,opt,name=cid,proto3" json:"cid,omitempty"` -} - -func (x *SpotLimitOrder) Reset() { - *x = SpotLimitOrder{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[39] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SpotLimitOrder) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SpotLimitOrder) ProtoMessage() {} - -func (x *SpotLimitOrder) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_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 SpotLimitOrder.ProtoReflect.Descriptor instead. -func (*SpotLimitOrder) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{39} -} - -func (x *SpotLimitOrder) GetOrderHash() string { - if x != nil { - return x.OrderHash - } - return "" -} - -func (x *SpotLimitOrder) GetOrderSide() string { - if x != nil { - return x.OrderSide - } - return "" -} - -func (x *SpotLimitOrder) GetMarketId() string { - if x != nil { - return x.MarketId - } - return "" -} - -func (x *SpotLimitOrder) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *SpotLimitOrder) GetPrice() string { - if x != nil { - return x.Price - } - return "" -} - -func (x *SpotLimitOrder) GetQuantity() string { - if x != nil { - return x.Quantity - } - return "" -} - -func (x *SpotLimitOrder) GetUnfilledQuantity() string { - if x != nil { - return x.UnfilledQuantity - } - return "" -} - -func (x *SpotLimitOrder) GetTriggerPrice() string { - if x != nil { - return x.TriggerPrice - } - return "" -} - -func (x *SpotLimitOrder) GetFeeRecipient() string { - if x != nil { - return x.FeeRecipient - } - return "" -} - -func (x *SpotLimitOrder) GetState() string { - if x != nil { - return x.State - } - return "" -} - -func (x *SpotLimitOrder) GetCreatedAt() int64 { - if x != nil { - return x.CreatedAt - } - return 0 -} - -func (x *SpotLimitOrder) GetUpdatedAt() int64 { - if x != nil { - return x.UpdatedAt - } - return 0 -} - -func (x *SpotLimitOrder) GetTxHash() string { - if x != nil { - return x.TxHash - } - return "" -} - -func (x *SpotLimitOrder) GetCid() string { - if x != nil { - return x.Cid - } - return "" -} - -type DerivativeLimitOrder struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Hash of the order - OrderHash string `protobuf:"bytes,1,opt,name=order_hash,json=orderHash,proto3" json:"order_hash,omitempty"` - // The side of the order - OrderSide string `protobuf:"bytes,2,opt,name=order_side,json=orderSide,proto3" json:"order_side,omitempty"` - // Derivative Market ID - MarketId string `protobuf:"bytes,3,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` - // The subaccountId that this order belongs to - SubaccountId string `protobuf:"bytes,4,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // True if the order is a reduce-only order - IsReduceOnly bool `protobuf:"varint,5,opt,name=is_reduce_only,json=isReduceOnly,proto3" json:"is_reduce_only,omitempty"` - // Margin of the order - Margin string `protobuf:"bytes,6,opt,name=margin,proto3" json:"margin,omitempty"` - // Price of the order - Price string `protobuf:"bytes,7,opt,name=price,proto3" json:"price,omitempty"` - // Quantity of the order - Quantity string `protobuf:"bytes,8,opt,name=quantity,proto3" json:"quantity,omitempty"` - // The amount of the quantity remaining unfilled - UnfilledQuantity string `protobuf:"bytes,9,opt,name=unfilled_quantity,json=unfilledQuantity,proto3" json:"unfilled_quantity,omitempty"` - // Trigger price is the trigger price used by stop/take orders - TriggerPrice string `protobuf:"bytes,10,opt,name=trigger_price,json=triggerPrice,proto3" json:"trigger_price,omitempty"` - // Fee recipient address - FeeRecipient string `protobuf:"bytes,11,opt,name=fee_recipient,json=feeRecipient,proto3" json:"fee_recipient,omitempty"` - // Order state - State string `protobuf:"bytes,12,opt,name=state,proto3" json:"state,omitempty"` - // Order committed timestamp in UNIX millis. - CreatedAt int64 `protobuf:"zigzag64,13,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` - // Order updated timestamp in UNIX millis. - UpdatedAt int64 `protobuf:"zigzag64,14,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"` - // Order number of subaccount - OrderNumber int64 `protobuf:"zigzag64,15,opt,name=order_number,json=orderNumber,proto3" json:"order_number,omitempty"` - // Order type - OrderType string `protobuf:"bytes,16,opt,name=order_type,json=orderType,proto3" json:"order_type,omitempty"` - // Order type - IsConditional bool `protobuf:"varint,17,opt,name=is_conditional,json=isConditional,proto3" json:"is_conditional,omitempty"` - // Trigger timestamp, only exists for conditional orders - TriggerAt uint64 `protobuf:"varint,18,opt,name=trigger_at,json=triggerAt,proto3" json:"trigger_at,omitempty"` - // OrderHash of order that is triggered by this conditional order - PlacedOrderHash string `protobuf:"bytes,19,opt,name=placed_order_hash,json=placedOrderHash,proto3" json:"placed_order_hash,omitempty"` - // Execution type of conditional order - ExecutionType string `protobuf:"bytes,20,opt,name=execution_type,json=executionType,proto3" json:"execution_type,omitempty"` - // Transaction Hash where order is created. Not all orders have this field - TxHash string `protobuf:"bytes,21,opt,name=tx_hash,json=txHash,proto3" json:"tx_hash,omitempty"` - // Custom client order ID - Cid string `protobuf:"bytes,22,opt,name=cid,proto3" json:"cid,omitempty"` -} - -func (x *DerivativeLimitOrder) Reset() { - *x = DerivativeLimitOrder{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[40] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DerivativeLimitOrder) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DerivativeLimitOrder) ProtoMessage() {} - -func (x *DerivativeLimitOrder) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[40] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DerivativeLimitOrder.ProtoReflect.Descriptor instead. -func (*DerivativeLimitOrder) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{40} -} - -func (x *DerivativeLimitOrder) GetOrderHash() string { - if x != nil { - return x.OrderHash - } - return "" -} - -func (x *DerivativeLimitOrder) GetOrderSide() string { - if x != nil { - return x.OrderSide - } - return "" -} - -func (x *DerivativeLimitOrder) GetMarketId() string { - if x != nil { - return x.MarketId - } - return "" -} - -func (x *DerivativeLimitOrder) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *DerivativeLimitOrder) GetIsReduceOnly() bool { - if x != nil { - return x.IsReduceOnly - } - return false -} - -func (x *DerivativeLimitOrder) GetMargin() string { - if x != nil { - return x.Margin - } - return "" -} - -func (x *DerivativeLimitOrder) GetPrice() string { - if x != nil { - return x.Price - } - return "" -} - -func (x *DerivativeLimitOrder) GetQuantity() string { - if x != nil { - return x.Quantity - } - return "" -} - -func (x *DerivativeLimitOrder) GetUnfilledQuantity() string { - if x != nil { - return x.UnfilledQuantity - } - return "" -} - -func (x *DerivativeLimitOrder) GetTriggerPrice() string { - if x != nil { - return x.TriggerPrice - } - return "" -} - -func (x *DerivativeLimitOrder) GetFeeRecipient() string { - if x != nil { - return x.FeeRecipient - } - return "" -} - -func (x *DerivativeLimitOrder) GetState() string { - if x != nil { - return x.State - } - return "" -} - -func (x *DerivativeLimitOrder) GetCreatedAt() int64 { - if x != nil { - return x.CreatedAt - } - return 0 -} - -func (x *DerivativeLimitOrder) GetUpdatedAt() int64 { - if x != nil { - return x.UpdatedAt - } - return 0 -} - -func (x *DerivativeLimitOrder) GetOrderNumber() int64 { - if x != nil { - return x.OrderNumber - } - return 0 -} - -func (x *DerivativeLimitOrder) GetOrderType() string { - if x != nil { - return x.OrderType - } - return "" -} - -func (x *DerivativeLimitOrder) GetIsConditional() bool { - if x != nil { - return x.IsConditional - } - return false -} - -func (x *DerivativeLimitOrder) GetTriggerAt() uint64 { - if x != nil { - return x.TriggerAt - } - return 0 -} - -func (x *DerivativeLimitOrder) GetPlacedOrderHash() string { - if x != nil { - return x.PlacedOrderHash - } - return "" -} - -func (x *DerivativeLimitOrder) GetExecutionType() string { - if x != nil { - return x.ExecutionType - } - return "" -} - -func (x *DerivativeLimitOrder) GetTxHash() string { - if x != nil { - return x.TxHash - } - return "" -} - -func (x *DerivativeLimitOrder) GetCid() string { - if x != nil { - return x.Cid - } - return "" -} - -type OrderHistoryResult struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to OrderHistory: - // - // *OrderHistoryResult_SpotOrderHistory - // *OrderHistoryResult_DerivativeOrderHistory - OrderHistory isOrderHistoryResult_OrderHistory `protobuf_oneof:"order_history"` - // Order update type - OperationType string `protobuf:"bytes,3,opt,name=operation_type,json=operationType,proto3" json:"operation_type,omitempty"` - // Operation timestamp in UNIX millis. - Timestamp int64 `protobuf:"zigzag64,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"` -} - -func (x *OrderHistoryResult) Reset() { - *x = OrderHistoryResult{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[41] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *OrderHistoryResult) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*OrderHistoryResult) ProtoMessage() {} - -func (x *OrderHistoryResult) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[41] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use OrderHistoryResult.ProtoReflect.Descriptor instead. -func (*OrderHistoryResult) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{41} -} - -func (m *OrderHistoryResult) GetOrderHistory() isOrderHistoryResult_OrderHistory { - if m != nil { - return m.OrderHistory - } - return nil -} - -func (x *OrderHistoryResult) GetSpotOrderHistory() *SpotOrderHistory { - if x, ok := x.GetOrderHistory().(*OrderHistoryResult_SpotOrderHistory); ok { - return x.SpotOrderHistory - } - return nil -} - -func (x *OrderHistoryResult) GetDerivativeOrderHistory() *DerivativeOrderHistory { - if x, ok := x.GetOrderHistory().(*OrderHistoryResult_DerivativeOrderHistory); ok { - return x.DerivativeOrderHistory - } - return nil -} - -func (x *OrderHistoryResult) GetOperationType() string { - if x != nil { - return x.OperationType - } - return "" -} - -func (x *OrderHistoryResult) GetTimestamp() int64 { - if x != nil { - return x.Timestamp - } - return 0 -} - -type isOrderHistoryResult_OrderHistory interface { - isOrderHistoryResult_OrderHistory() -} - -type OrderHistoryResult_SpotOrderHistory struct { - // Spot order history - SpotOrderHistory *SpotOrderHistory `protobuf:"bytes,1,opt,name=spot_order_history,json=spotOrderHistory,proto3,oneof"` -} - -type OrderHistoryResult_DerivativeOrderHistory struct { - // Derivative order history - DerivativeOrderHistory *DerivativeOrderHistory `protobuf:"bytes,2,opt,name=derivative_order_history,json=derivativeOrderHistory,proto3,oneof"` -} - -func (*OrderHistoryResult_SpotOrderHistory) isOrderHistoryResult_OrderHistory() {} - -func (*OrderHistoryResult_DerivativeOrderHistory) isOrderHistoryResult_OrderHistory() {} - -type SpotOrderHistory struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Hash of the order - OrderHash string `protobuf:"bytes,1,opt,name=order_hash,json=orderHash,proto3" json:"order_hash,omitempty"` - // Spot Market ID is keccak265(baseDenom + quoteDenom) - MarketId string `protobuf:"bytes,2,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` - // active state of the order - IsActive bool `protobuf:"varint,3,opt,name=is_active,json=isActive,proto3" json:"is_active,omitempty"` - // The subaccountId that this order belongs to - SubaccountId string `protobuf:"bytes,4,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // The execution type - ExecutionType string `protobuf:"bytes,5,opt,name=execution_type,json=executionType,proto3" json:"execution_type,omitempty"` - // The side of the order - OrderType string `protobuf:"bytes,6,opt,name=order_type,json=orderType,proto3" json:"order_type,omitempty"` - // Price of the order - Price string `protobuf:"bytes,7,opt,name=price,proto3" json:"price,omitempty"` - // Trigger price - TriggerPrice string `protobuf:"bytes,8,opt,name=trigger_price,json=triggerPrice,proto3" json:"trigger_price,omitempty"` - // Quantity of the order - Quantity string `protobuf:"bytes,9,opt,name=quantity,proto3" json:"quantity,omitempty"` - // Filled amount - FilledQuantity string `protobuf:"bytes,10,opt,name=filled_quantity,json=filledQuantity,proto3" json:"filled_quantity,omitempty"` - // Order state - State string `protobuf:"bytes,11,opt,name=state,proto3" json:"state,omitempty"` - // Order committed timestamp in UNIX millis. - CreatedAt int64 `protobuf:"zigzag64,12,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` - // Order updated timestamp in UNIX millis. - UpdatedAt int64 `protobuf:"zigzag64,13,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"` - // Order direction (order side) - Direction string `protobuf:"bytes,14,opt,name=direction,proto3" json:"direction,omitempty"` - // Transaction Hash where order is created. Not all orders have this field - TxHash string `protobuf:"bytes,15,opt,name=tx_hash,json=txHash,proto3" json:"tx_hash,omitempty"` - // Custom client order ID - Cid string `protobuf:"bytes,16,opt,name=cid,proto3" json:"cid,omitempty"` -} - -func (x *SpotOrderHistory) Reset() { - *x = SpotOrderHistory{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[42] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SpotOrderHistory) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SpotOrderHistory) ProtoMessage() {} - -func (x *SpotOrderHistory) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[42] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SpotOrderHistory.ProtoReflect.Descriptor instead. -func (*SpotOrderHistory) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{42} -} - -func (x *SpotOrderHistory) GetOrderHash() string { - if x != nil { - return x.OrderHash - } - return "" -} - -func (x *SpotOrderHistory) GetMarketId() string { - if x != nil { - return x.MarketId - } - return "" -} - -func (x *SpotOrderHistory) GetIsActive() bool { - if x != nil { - return x.IsActive - } - return false -} - -func (x *SpotOrderHistory) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *SpotOrderHistory) GetExecutionType() string { - if x != nil { - return x.ExecutionType - } - return "" -} - -func (x *SpotOrderHistory) GetOrderType() string { - if x != nil { - return x.OrderType - } - return "" -} - -func (x *SpotOrderHistory) GetPrice() string { - if x != nil { - return x.Price - } - return "" -} - -func (x *SpotOrderHistory) GetTriggerPrice() string { - if x != nil { - return x.TriggerPrice - } - return "" -} - -func (x *SpotOrderHistory) GetQuantity() string { - if x != nil { - return x.Quantity - } - return "" -} - -func (x *SpotOrderHistory) GetFilledQuantity() string { - if x != nil { - return x.FilledQuantity - } - return "" -} - -func (x *SpotOrderHistory) GetState() string { - if x != nil { - return x.State - } - return "" -} - -func (x *SpotOrderHistory) GetCreatedAt() int64 { - if x != nil { - return x.CreatedAt - } - return 0 -} - -func (x *SpotOrderHistory) GetUpdatedAt() int64 { - if x != nil { - return x.UpdatedAt - } - return 0 -} - -func (x *SpotOrderHistory) GetDirection() string { - if x != nil { - return x.Direction - } - return "" -} - -func (x *SpotOrderHistory) GetTxHash() string { - if x != nil { - return x.TxHash - } - return "" -} - -func (x *SpotOrderHistory) GetCid() string { - if x != nil { - return x.Cid - } - return "" -} - -type DerivativeOrderHistory struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Hash of the order - OrderHash string `protobuf:"bytes,1,opt,name=order_hash,json=orderHash,proto3" json:"order_hash,omitempty"` - // Spot Market ID is keccak265(baseDenom + quoteDenom) - MarketId string `protobuf:"bytes,2,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` - // active state of the order - IsActive bool `protobuf:"varint,3,opt,name=is_active,json=isActive,proto3" json:"is_active,omitempty"` - // The subaccountId that this order belongs to - SubaccountId string `protobuf:"bytes,4,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // The execution type - ExecutionType string `protobuf:"bytes,5,opt,name=execution_type,json=executionType,proto3" json:"execution_type,omitempty"` - // The side of the order - OrderType string `protobuf:"bytes,6,opt,name=order_type,json=orderType,proto3" json:"order_type,omitempty"` - // Price of the order - Price string `protobuf:"bytes,7,opt,name=price,proto3" json:"price,omitempty"` - // Trigger price - TriggerPrice string `protobuf:"bytes,8,opt,name=trigger_price,json=triggerPrice,proto3" json:"trigger_price,omitempty"` - // Quantity of the order - Quantity string `protobuf:"bytes,9,opt,name=quantity,proto3" json:"quantity,omitempty"` - // Filled amount - FilledQuantity string `protobuf:"bytes,10,opt,name=filled_quantity,json=filledQuantity,proto3" json:"filled_quantity,omitempty"` - // Order state - State string `protobuf:"bytes,11,opt,name=state,proto3" json:"state,omitempty"` - // Order committed timestamp in UNIX millis. - CreatedAt int64 `protobuf:"zigzag64,12,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` - // Order updated timestamp in UNIX millis. - UpdatedAt int64 `protobuf:"zigzag64,13,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"` - // True if an order is reduce only - IsReduceOnly bool `protobuf:"varint,14,opt,name=is_reduce_only,json=isReduceOnly,proto3" json:"is_reduce_only,omitempty"` - // Order direction (order side) - Direction string `protobuf:"bytes,15,opt,name=direction,proto3" json:"direction,omitempty"` - // True if this is conditional order, otherwise false - IsConditional bool `protobuf:"varint,16,opt,name=is_conditional,json=isConditional,proto3" json:"is_conditional,omitempty"` - // Trigger timestamp in unix milli - TriggerAt uint64 `protobuf:"varint,17,opt,name=trigger_at,json=triggerAt,proto3" json:"trigger_at,omitempty"` - // Order hash placed when this triggers - PlacedOrderHash string `protobuf:"bytes,18,opt,name=placed_order_hash,json=placedOrderHash,proto3" json:"placed_order_hash,omitempty"` - // Order's margin - Margin string `protobuf:"bytes,19,opt,name=margin,proto3" json:"margin,omitempty"` - // Transaction Hash where order is created. Not all orders have this field - TxHash string `protobuf:"bytes,20,opt,name=tx_hash,json=txHash,proto3" json:"tx_hash,omitempty"` - // Custom client order ID - Cid string `protobuf:"bytes,21,opt,name=cid,proto3" json:"cid,omitempty"` -} - -func (x *DerivativeOrderHistory) Reset() { - *x = DerivativeOrderHistory{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[43] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DerivativeOrderHistory) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DerivativeOrderHistory) ProtoMessage() {} - -func (x *DerivativeOrderHistory) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[43] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DerivativeOrderHistory.ProtoReflect.Descriptor instead. -func (*DerivativeOrderHistory) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{43} -} - -func (x *DerivativeOrderHistory) GetOrderHash() string { - if x != nil { - return x.OrderHash - } - return "" -} - -func (x *DerivativeOrderHistory) GetMarketId() string { - if x != nil { - return x.MarketId - } - return "" -} - -func (x *DerivativeOrderHistory) GetIsActive() bool { - if x != nil { - return x.IsActive - } - return false -} - -func (x *DerivativeOrderHistory) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *DerivativeOrderHistory) GetExecutionType() string { - if x != nil { - return x.ExecutionType - } - return "" -} - -func (x *DerivativeOrderHistory) GetOrderType() string { - if x != nil { - return x.OrderType - } - return "" -} - -func (x *DerivativeOrderHistory) GetPrice() string { - if x != nil { - return x.Price - } - return "" -} - -func (x *DerivativeOrderHistory) GetTriggerPrice() string { - if x != nil { - return x.TriggerPrice - } - return "" -} - -func (x *DerivativeOrderHistory) GetQuantity() string { - if x != nil { - return x.Quantity - } - return "" -} - -func (x *DerivativeOrderHistory) GetFilledQuantity() string { - if x != nil { - return x.FilledQuantity - } - return "" -} - -func (x *DerivativeOrderHistory) GetState() string { - if x != nil { - return x.State - } - return "" -} - -func (x *DerivativeOrderHistory) GetCreatedAt() int64 { - if x != nil { - return x.CreatedAt - } - return 0 -} - -func (x *DerivativeOrderHistory) GetUpdatedAt() int64 { - if x != nil { - return x.UpdatedAt - } - return 0 -} - -func (x *DerivativeOrderHistory) GetIsReduceOnly() bool { - if x != nil { - return x.IsReduceOnly - } - return false -} - -func (x *DerivativeOrderHistory) GetDirection() string { - if x != nil { - return x.Direction - } - return "" -} - -func (x *DerivativeOrderHistory) GetIsConditional() bool { - if x != nil { - return x.IsConditional - } - return false -} - -func (x *DerivativeOrderHistory) GetTriggerAt() uint64 { - if x != nil { - return x.TriggerAt - } - return 0 -} - -func (x *DerivativeOrderHistory) GetPlacedOrderHash() string { - if x != nil { - return x.PlacedOrderHash - } - return "" -} - -func (x *DerivativeOrderHistory) GetMargin() string { - if x != nil { - return x.Margin - } - return "" -} - -func (x *DerivativeOrderHistory) GetTxHash() string { - if x != nil { - return x.TxHash - } - return "" -} - -func (x *DerivativeOrderHistory) GetCid() string { - if x != nil { - return x.Cid - } - return "" -} - -type FundingPaymentResult struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Funding payments of the account - FundingPayments *FundingPayment `protobuf:"bytes,1,opt,name=funding_payments,json=fundingPayments,proto3" json:"funding_payments,omitempty"` - // Funding payments type - OperationType string `protobuf:"bytes,2,opt,name=operation_type,json=operationType,proto3" json:"operation_type,omitempty"` - // Operation timestamp in UNIX millis. - Timestamp int64 `protobuf:"zigzag64,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"` -} - -func (x *FundingPaymentResult) Reset() { - *x = FundingPaymentResult{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[44] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FundingPaymentResult) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FundingPaymentResult) ProtoMessage() {} - -func (x *FundingPaymentResult) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[44] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use FundingPaymentResult.ProtoReflect.Descriptor instead. -func (*FundingPaymentResult) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{44} -} - -func (x *FundingPaymentResult) GetFundingPayments() *FundingPayment { - if x != nil { - return x.FundingPayments - } - return nil -} - -func (x *FundingPaymentResult) GetOperationType() string { - if x != nil { - return x.OperationType - } - return "" -} - -func (x *FundingPaymentResult) GetTimestamp() int64 { - if x != nil { - return x.Timestamp - } - return 0 -} - -type FundingPayment struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Derivative Market ID - MarketId string `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` - // The subaccountId that the position belongs to - SubaccountId string `protobuf:"bytes,2,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` - // Amount of the funding payment - Amount string `protobuf:"bytes,3,opt,name=amount,proto3" json:"amount,omitempty"` - // Timestamp of funding payment in UNIX millis - Timestamp int64 `protobuf:"zigzag64,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"` -} - -func (x *FundingPayment) Reset() { - *x = FundingPayment{} - if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[45] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FundingPayment) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FundingPayment) ProtoMessage() {} - -func (x *FundingPayment) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[45] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use FundingPayment.ProtoReflect.Descriptor instead. -func (*FundingPayment) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP(), []int{45} -} - -func (x *FundingPayment) GetMarketId() string { - if x != nil { - return x.MarketId - } - return "" -} - -func (x *FundingPayment) GetSubaccountId() string { - if x != nil { - return x.SubaccountId - } - return "" -} - -func (x *FundingPayment) GetAmount() string { - if x != nil { - return x.Amount - } - return "" -} - -func (x *FundingPayment) GetTimestamp() int64 { - if x != nil { - return x.Timestamp - } - return 0 -} - -var File_goadesign_goagen_injective_accounts_rpc_proto protoreflect.FileDescriptor - -var file_goadesign_goagen_injective_accounts_rpc_proto_rawDesc = []byte{ - 0x0a, 0x2d, 0x67, 0x6f, 0x61, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x5f, 0x67, 0x6f, 0x61, 0x67, - 0x65, 0x6e, 0x5f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, - 0x16, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x22, 0x3b, 0x0a, 0x10, 0x50, 0x6f, 0x72, 0x74, 0x66, - 0x6f, 0x6c, 0x69, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x22, 0x5b, 0x0a, 0x11, 0x50, 0x6f, 0x72, 0x74, 0x66, 0x6f, 0x6c, 0x69, - 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x09, 0x70, 0x6f, 0x72, - 0x74, 0x66, 0x6f, 0x6c, 0x69, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x6f, 0x72, - 0x74, 0x66, 0x6f, 0x6c, 0x69, 0x6f, 0x52, 0x09, 0x70, 0x6f, 0x72, 0x74, 0x66, 0x6f, 0x6c, 0x69, - 0x6f, 0x22, 0x85, 0x02, 0x0a, 0x10, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x6f, 0x72, - 0x74, 0x66, 0x6f, 0x6c, 0x69, 0x6f, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x6f, 0x72, 0x74, 0x66, 0x6f, - 0x6c, 0x69, 0x6f, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0e, 0x70, 0x6f, 0x72, 0x74, 0x66, 0x6f, 0x6c, 0x69, 0x6f, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, - 0x2b, 0x0a, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x62, 0x61, 0x6c, - 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, 0x76, 0x61, 0x69, - 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, - 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x42, 0x61, 0x6c, 0x61, - 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x6c, 0x69, 0x7a, 0x65, - 0x64, 0x5f, 0x70, 0x6e, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x75, 0x6e, 0x72, - 0x65, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x50, 0x6e, 0x6c, 0x12, 0x4d, 0x0a, 0x0b, 0x73, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x66, 0x6f, 0x6c, 0x69, 0x6f, 0x52, 0x0b, 0x73, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x22, 0xb5, 0x01, 0x0a, 0x13, 0x53, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x66, 0x6f, 0x6c, 0x69, - 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, - 0x62, 0x6c, 0x65, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x10, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x61, 0x6c, 0x61, - 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x62, 0x61, - 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x6f, 0x63, - 0x6b, 0x65, 0x64, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x75, 0x6e, - 0x72, 0x65, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x70, 0x6e, 0x6c, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0d, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x50, 0x6e, - 0x6c, 0x22, 0x78, 0x0a, 0x12, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x70, 0x6f, 0x74, 0x5f, - 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0f, 0x73, 0x70, 0x6f, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, - 0x68, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x15, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x22, 0xcd, 0x01, 0x0a, 0x13, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x11, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, - 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x0f, 0x73, 0x70, 0x6f, 0x74, 0x4f, 0x72, - 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x12, 0x60, 0x0a, 0x17, 0x64, 0x65, 0x72, - 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x74, - 0x61, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, - 0x63, 0x6f, 0x72, 0x64, 0x52, 0x15, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x22, 0x8b, 0x03, 0x0a, 0x10, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, - 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, - 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, - 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x69, 0x64, 0x65, 0x12, - 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x5f, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, - 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x46, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x2d, - 0x0a, 0x12, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, - 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x71, 0x75, 0x61, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x1d, 0x0a, - 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x12, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x12, - 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x70, - 0x72, 0x69, 0x63, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, - 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x22, 0x41, 0x0a, 0x16, 0x53, 0x75, 0x62, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x3b, 0x0a, 0x17, - 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x75, 0x62, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x22, 0x5c, 0x0a, 0x1d, 0x53, 0x75, 0x62, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x4c, - 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x06, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x73, 0x22, 0x67, 0x0a, 0x1e, 0x53, 0x75, 0x62, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x08, 0x62, 0x61, 0x6c, - 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, - 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x08, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, - 0x22, 0xbc, 0x01, 0x0a, 0x11, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, - 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, - 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x43, 0x0a, 0x07, 0x64, 0x65, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, - 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x52, 0x07, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x22, - 0x65, 0x0a, 0x11, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x62, 0x61, - 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x6f, 0x74, - 0x61, 0x6c, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x76, 0x61, - 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x42, - 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x5d, 0x0a, 0x20, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, - 0x69, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x22, 0x68, 0x0a, 0x21, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, - 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x07, 0x62, 0x61, - 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, - 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x22, - 0x5d, 0x0a, 0x1e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x73, 0x22, 0x84, - 0x01, 0x0a, 0x1f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x43, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x07, - 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xc1, 0x01, 0x0a, 0x18, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x25, 0x0a, - 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, - 0x79, 0x70, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, - 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x19, - 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x12, - 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xa4, 0x01, 0x0a, 0x19, 0x53, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, - 0x66, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x69, 0x6e, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, - 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x52, 0x09, 0x74, - 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x12, 0x36, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, - 0x22, 0xd5, 0x02, 0x0a, 0x19, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, - 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x12, 0x23, - 0x0a, 0x0d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x72, 0x63, 0x5f, 0x73, 0x75, 0x62, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, - 0x73, 0x72, 0x63, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x2e, 0x0a, 0x13, 0x73, 0x72, 0x63, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x72, - 0x63, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x2a, 0x0a, 0x11, 0x64, 0x73, 0x74, 0x5f, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x73, 0x74, 0x53, - 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x64, - 0x73, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x64, 0x73, 0x74, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x3a, 0x0a, 0x06, 0x61, - 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x43, 0x6f, 0x69, 0x6e, 0x52, - 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x78, 0x65, 0x63, 0x75, - 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x65, 0x78, - 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x3a, 0x0a, 0x0a, 0x43, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x16, 0x0a, 0x06, - 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, - 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x86, 0x01, 0x0a, 0x06, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, - 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x12, 0x52, 0x05, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x11, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x6f, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x5f, 0x62, 0x79, 0x5f, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x12, 0x52, 0x11, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x79, 0x53, - 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x65, 0x78, - 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x65, 0x78, 0x74, 0x22, 0x8a, 0x01, - 0x0a, 0x1d, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, - 0x72, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, - 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x84, 0x01, 0x0a, 0x1e, 0x53, - 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x75, - 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, - 0x11, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x5f, 0x74, 0x6f, 0x74, - 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0f, 0x73, 0x70, 0x6f, 0x74, 0x4f, 0x72, - 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x36, 0x0a, 0x17, 0x64, 0x65, 0x72, - 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x5f, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x12, 0x52, 0x15, 0x64, 0x65, 0x72, 0x69, - 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x74, 0x61, - 0x6c, 0x22, 0x4f, 0x0a, 0x0e, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x12, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x22, 0x4b, 0x0a, 0x0f, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x07, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x07, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x22, - 0x90, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x12, 0x36, 0x0a, 0x07, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, - 0x69, 0x6e, 0x52, 0x07, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x64, - 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x12, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, - 0x41, 0x74, 0x22, 0x34, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, - 0x6e, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, - 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x43, 0x0a, 0x18, 0x53, 0x74, 0x72, 0x65, - 0x61, 0x6d, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0xde, 0x03, - 0x0a, 0x19, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, - 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x12, 0x73, - 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, - 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, - 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x11, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x43, 0x0a, 0x08, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x39, 0x0a, 0x05, 0x74, 0x72, 0x61, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x52, 0x05, 0x74, 0x72, 0x61, 0x64, 0x65, 0x12, 0x39, 0x0a, 0x05, 0x6f, - 0x72, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, - 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x4f, 0x0a, 0x0d, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, - 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, - 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0c, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x55, 0x0a, 0x0f, 0x66, 0x75, 0x6e, 0x64, 0x69, - 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, - 0x67, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0e, - 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x7c, - 0x0a, 0x17, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, - 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x43, 0x0a, 0x07, 0x62, 0x61, 0x6c, - 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, - 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1c, - 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x6d, 0x0a, 0x0f, - 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, - 0x3c, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x20, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, - 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x12, - 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xe1, 0x02, 0x0a, 0x08, - 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x63, 0x6b, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, - 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, - 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, - 0x65, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x16, 0x0a, - 0x06, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, - 0x61, 0x72, 0x67, 0x69, 0x6e, 0x12, 0x2b, 0x0a, 0x11, 0x6c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x10, 0x6c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, - 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, - 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, - 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, - 0xf5, 0x01, 0x0a, 0x0b, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, - 0x42, 0x0a, 0x0a, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, - 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x48, 0x00, 0x52, 0x09, 0x73, 0x70, 0x6f, 0x74, 0x54, 0x72, - 0x61, 0x64, 0x65, 0x12, 0x54, 0x0a, 0x10, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, - 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x48, 0x00, 0x52, 0x0f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, - 0x74, 0x69, 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x07, - 0x0a, 0x05, 0x74, 0x72, 0x61, 0x64, 0x65, 0x22, 0xad, 0x03, 0x0a, 0x09, 0x53, 0x70, 0x6f, 0x74, - 0x54, 0x72, 0x61, 0x64, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x68, - 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x48, 0x61, 0x73, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, - 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, - 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, - 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x74, 0x72, 0x61, 0x64, 0x65, 0x45, 0x78, 0x65, 0x63, 0x75, - 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x72, 0x61, 0x64, - 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0e, 0x74, 0x72, 0x61, 0x64, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x38, 0x0a, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x66, - 0x65, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x66, 0x65, 0x65, 0x12, 0x1f, 0x0a, - 0x0b, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x12, 0x52, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x23, - 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, - 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, 0x25, - 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x64, 0x65, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, - 0x6e, 0x53, 0x69, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0x5c, 0x0a, 0x0a, 0x50, 0x72, 0x69, 0x63, 0x65, - 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x71, - 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x71, - 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xdd, 0x03, 0x0a, 0x0f, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, - 0x74, 0x69, 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, - 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, - 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, - 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x72, - 0x61, 0x64, 0x65, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x74, 0x72, 0x61, 0x64, 0x65, 0x45, - 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x25, 0x0a, 0x0e, - 0x69, 0x73, 0x5f, 0x6c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x4c, 0x0a, 0x0e, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, - 0x74, 0x61, 0x52, 0x0d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x74, - 0x61, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x70, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x66, 0x65, 0x65, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x66, 0x65, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x65, - 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x12, - 0x52, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x23, 0x0a, 0x0d, - 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, - 0x74, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, - 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x53, - 0x69, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0xbb, 0x01, 0x0a, 0x0d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x72, 0x61, 0x64, 0x65, - 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0e, 0x74, 0x72, 0x61, 0x64, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, - 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, - 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x65, 0x78, 0x65, - 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, - 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x78, 0x65, 0x63, - 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x72, - 0x67, 0x69, 0x6e, 0x22, 0xff, 0x01, 0x0a, 0x0b, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x12, 0x47, 0x0a, 0x0a, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, - 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, - 0x00, 0x52, 0x09, 0x73, 0x70, 0x6f, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x59, 0x0a, 0x10, - 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4f, - 0x72, 0x64, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, - 0x76, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, - 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x07, 0x0a, 0x05, - 0x6f, 0x72, 0x64, 0x65, 0x72, 0x22, 0xb8, 0x03, 0x0a, 0x0e, 0x53, 0x70, 0x6f, 0x74, 0x4c, 0x69, - 0x6d, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, - 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, - 0x65, 0x72, 0x53, 0x69, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, - 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x69, 0x63, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, - 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x2b, 0x0a, 0x11, 0x75, 0x6e, - 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x75, 0x6e, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x51, - 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x72, 0x69, 0x67, 0x67, - 0x65, 0x72, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, - 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, - 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, - 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x10, - 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, - 0x22, 0xd7, 0x05, 0x0a, 0x14, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4c, - 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, - 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, - 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, - 0x64, 0x65, 0x72, 0x53, 0x69, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, - 0x65, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x73, 0x5f, - 0x72, 0x65, 0x64, 0x75, 0x63, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0c, 0x69, 0x73, 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x12, - 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x0a, - 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x2b, 0x0a, 0x11, 0x75, 0x6e, 0x66, - 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x75, 0x6e, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x51, 0x75, - 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, - 0x72, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, - 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x66, - 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, - 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, - 0x5f, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x41, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0b, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, - 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x63, 0x6f, 0x6e, - 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, - 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x1d, 0x0a, - 0x0a, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x09, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x41, 0x74, 0x12, 0x2a, 0x0a, 0x11, - 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, - 0x68, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x4f, - 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, - 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, - 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0xb0, 0x02, 0x0a, 0x12, 0x4f, - 0x72, 0x64, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x12, 0x58, 0x0a, 0x12, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, - 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, - 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x48, 0x00, 0x52, 0x10, 0x73, 0x70, 0x6f, 0x74, 0x4f, - 0x72, 0x64, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x6a, 0x0a, 0x18, 0x64, - 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, - 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, - 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x48, 0x00, 0x52, - 0x16, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, - 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, - 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x0f, 0x0a, 0x0d, - 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x22, 0xf3, 0x03, - 0x0a, 0x10, 0x53, 0x70, 0x6f, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, - 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1b, - 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x08, 0x69, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, - 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, - 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, - 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, - 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, - 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x27, 0x0a, - 0x0f, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x51, 0x75, - 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x12, - 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x12, 0x52, - 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, - 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, - 0x61, 0x73, 0x68, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, - 0x68, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x63, 0x69, 0x64, 0x22, 0xa9, 0x05, 0x0a, 0x16, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, - 0x76, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1d, - 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1b, 0x0a, - 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, - 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, - 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, - 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, - 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x72, 0x69, 0x67, - 0x67, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x0a, - 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x66, 0x69, 0x6c, - 0x6c, 0x65, 0x64, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x72, 0x65, 0x64, - 0x75, 0x63, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, - 0x69, 0x73, 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x1c, 0x0a, 0x09, - 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x73, - 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x10, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x74, 0x18, - 0x11, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x41, 0x74, - 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x6c, 0x61, - 0x63, 0x65, 0x64, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x16, 0x0a, 0x06, - 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x61, - 0x72, 0x67, 0x69, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, - 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x10, 0x0a, - 0x03, 0x63, 0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, - 0xae, 0x01, 0x0a, 0x14, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x79, 0x6d, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x51, 0x0a, 0x10, 0x66, 0x75, 0x6e, 0x64, - 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x75, 0x6e, 0x64, - 0x69, 0x6e, 0x67, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0f, 0x66, 0x75, 0x6e, 0x64, - 0x69, 0x6e, 0x67, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x22, 0x88, 0x01, 0x0a, 0x0e, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x79, 0x6d, - 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, - 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, - 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x12, - 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x32, 0xdc, 0x09, 0x0a, 0x14, - 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x73, 0x52, 0x50, 0x43, 0x12, 0x60, 0x0a, 0x09, 0x50, 0x6f, 0x72, 0x74, 0x66, 0x6f, 0x6c, 0x69, - 0x6f, 0x12, 0x28, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x66, - 0x6f, 0x6c, 0x69, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x66, 0x6f, 0x6c, 0x69, 0x6f, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x0b, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x73, 0x12, 0x2a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, - 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, - 0x0a, 0x0f, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x4c, 0x69, 0x73, - 0x74, 0x12, 0x2e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x2f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x87, 0x01, 0x0a, 0x16, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x35, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, - 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x90, 0x01, 0x0a, - 0x19, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, - 0x63, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x38, 0x2e, 0x69, 0x6e, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, - 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x45, - 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x8c, 0x01, 0x0a, 0x17, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x36, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x53, 0x75, 0x62, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, - 0x65, 0x61, 0x6d, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, - 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x78, - 0x0a, 0x11, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, - 0x6f, 0x72, 0x79, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, - 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x87, 0x01, 0x0a, 0x16, 0x53, 0x75, 0x62, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x75, 0x6d, 0x6d, - 0x61, 0x72, 0x79, 0x12, 0x35, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x75, 0x6d, 0x6d, - 0x61, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x69, 0x6e, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, - 0x64, 0x65, 0x72, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x07, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x26, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x52, - 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7a, - 0x0a, 0x11, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, - 0x61, 0x74, 0x61, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, - 0x65, 0x61, 0x6d, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, - 0x74, 0x72, 0x65, 0x61, 0x6d, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x42, 0x1b, 0x5a, 0x19, 0x2f, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x73, 0x5f, 0x72, 0x70, 0x63, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_goadesign_goagen_injective_accounts_rpc_proto_rawDescOnce sync.Once - file_goadesign_goagen_injective_accounts_rpc_proto_rawDescData = file_goadesign_goagen_injective_accounts_rpc_proto_rawDesc -) - -func file_goadesign_goagen_injective_accounts_rpc_proto_rawDescGZIP() []byte { - file_goadesign_goagen_injective_accounts_rpc_proto_rawDescOnce.Do(func() { - file_goadesign_goagen_injective_accounts_rpc_proto_rawDescData = protoimpl.X.CompressGZIP(file_goadesign_goagen_injective_accounts_rpc_proto_rawDescData) - }) - return file_goadesign_goagen_injective_accounts_rpc_proto_rawDescData -} - -var file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 46) -var file_goadesign_goagen_injective_accounts_rpc_proto_goTypes = []interface{}{ - (*PortfolioRequest)(nil), // 0: injective_accounts_rpc.PortfolioRequest - (*PortfolioResponse)(nil), // 1: injective_accounts_rpc.PortfolioResponse - (*AccountPortfolio)(nil), // 2: injective_accounts_rpc.AccountPortfolio - (*SubaccountPortfolio)(nil), // 3: injective_accounts_rpc.SubaccountPortfolio - (*OrderStatesRequest)(nil), // 4: injective_accounts_rpc.OrderStatesRequest - (*OrderStatesResponse)(nil), // 5: injective_accounts_rpc.OrderStatesResponse - (*OrderStateRecord)(nil), // 6: injective_accounts_rpc.OrderStateRecord - (*SubaccountsListRequest)(nil), // 7: injective_accounts_rpc.SubaccountsListRequest - (*SubaccountsListResponse)(nil), // 8: injective_accounts_rpc.SubaccountsListResponse - (*SubaccountBalancesListRequest)(nil), // 9: injective_accounts_rpc.SubaccountBalancesListRequest - (*SubaccountBalancesListResponse)(nil), // 10: injective_accounts_rpc.SubaccountBalancesListResponse - (*SubaccountBalance)(nil), // 11: injective_accounts_rpc.SubaccountBalance - (*SubaccountDeposit)(nil), // 12: injective_accounts_rpc.SubaccountDeposit - (*SubaccountBalanceEndpointRequest)(nil), // 13: injective_accounts_rpc.SubaccountBalanceEndpointRequest - (*SubaccountBalanceEndpointResponse)(nil), // 14: injective_accounts_rpc.SubaccountBalanceEndpointResponse - (*StreamSubaccountBalanceRequest)(nil), // 15: injective_accounts_rpc.StreamSubaccountBalanceRequest - (*StreamSubaccountBalanceResponse)(nil), // 16: injective_accounts_rpc.StreamSubaccountBalanceResponse - (*SubaccountHistoryRequest)(nil), // 17: injective_accounts_rpc.SubaccountHistoryRequest - (*SubaccountHistoryResponse)(nil), // 18: injective_accounts_rpc.SubaccountHistoryResponse - (*SubaccountBalanceTransfer)(nil), // 19: injective_accounts_rpc.SubaccountBalanceTransfer - (*CosmosCoin)(nil), // 20: injective_accounts_rpc.CosmosCoin - (*Paging)(nil), // 21: injective_accounts_rpc.Paging - (*SubaccountOrderSummaryRequest)(nil), // 22: injective_accounts_rpc.SubaccountOrderSummaryRequest - (*SubaccountOrderSummaryResponse)(nil), // 23: injective_accounts_rpc.SubaccountOrderSummaryResponse - (*RewardsRequest)(nil), // 24: injective_accounts_rpc.RewardsRequest - (*RewardsResponse)(nil), // 25: injective_accounts_rpc.RewardsResponse - (*Reward)(nil), // 26: injective_accounts_rpc.Reward - (*Coin)(nil), // 27: injective_accounts_rpc.Coin - (*StreamAccountDataRequest)(nil), // 28: injective_accounts_rpc.StreamAccountDataRequest - (*StreamAccountDataResponse)(nil), // 29: injective_accounts_rpc.StreamAccountDataResponse - (*SubaccountBalanceResult)(nil), // 30: injective_accounts_rpc.SubaccountBalanceResult - (*PositionsResult)(nil), // 31: injective_accounts_rpc.PositionsResult - (*Position)(nil), // 32: injective_accounts_rpc.Position - (*TradeResult)(nil), // 33: injective_accounts_rpc.TradeResult - (*SpotTrade)(nil), // 34: injective_accounts_rpc.SpotTrade - (*PriceLevel)(nil), // 35: injective_accounts_rpc.PriceLevel - (*DerivativeTrade)(nil), // 36: injective_accounts_rpc.DerivativeTrade - (*PositionDelta)(nil), // 37: injective_accounts_rpc.PositionDelta - (*OrderResult)(nil), // 38: injective_accounts_rpc.OrderResult - (*SpotLimitOrder)(nil), // 39: injective_accounts_rpc.SpotLimitOrder - (*DerivativeLimitOrder)(nil), // 40: injective_accounts_rpc.DerivativeLimitOrder - (*OrderHistoryResult)(nil), // 41: injective_accounts_rpc.OrderHistoryResult - (*SpotOrderHistory)(nil), // 42: injective_accounts_rpc.SpotOrderHistory - (*DerivativeOrderHistory)(nil), // 43: injective_accounts_rpc.DerivativeOrderHistory - (*FundingPaymentResult)(nil), // 44: injective_accounts_rpc.FundingPaymentResult - (*FundingPayment)(nil), // 45: injective_accounts_rpc.FundingPayment -} -var file_goadesign_goagen_injective_accounts_rpc_proto_depIdxs = []int32{ - 2, // 0: injective_accounts_rpc.PortfolioResponse.portfolio:type_name -> injective_accounts_rpc.AccountPortfolio - 3, // 1: injective_accounts_rpc.AccountPortfolio.subaccounts:type_name -> injective_accounts_rpc.SubaccountPortfolio - 6, // 2: injective_accounts_rpc.OrderStatesResponse.spot_order_states:type_name -> injective_accounts_rpc.OrderStateRecord - 6, // 3: injective_accounts_rpc.OrderStatesResponse.derivative_order_states:type_name -> injective_accounts_rpc.OrderStateRecord - 11, // 4: injective_accounts_rpc.SubaccountBalancesListResponse.balances:type_name -> injective_accounts_rpc.SubaccountBalance - 12, // 5: injective_accounts_rpc.SubaccountBalance.deposit:type_name -> injective_accounts_rpc.SubaccountDeposit - 11, // 6: injective_accounts_rpc.SubaccountBalanceEndpointResponse.balance:type_name -> injective_accounts_rpc.SubaccountBalance - 11, // 7: injective_accounts_rpc.StreamSubaccountBalanceResponse.balance:type_name -> injective_accounts_rpc.SubaccountBalance - 19, // 8: injective_accounts_rpc.SubaccountHistoryResponse.transfers:type_name -> injective_accounts_rpc.SubaccountBalanceTransfer - 21, // 9: injective_accounts_rpc.SubaccountHistoryResponse.paging:type_name -> injective_accounts_rpc.Paging - 20, // 10: injective_accounts_rpc.SubaccountBalanceTransfer.amount:type_name -> injective_accounts_rpc.CosmosCoin - 26, // 11: injective_accounts_rpc.RewardsResponse.rewards:type_name -> injective_accounts_rpc.Reward - 27, // 12: injective_accounts_rpc.Reward.rewards:type_name -> injective_accounts_rpc.Coin - 30, // 13: injective_accounts_rpc.StreamAccountDataResponse.subaccount_balance:type_name -> injective_accounts_rpc.SubaccountBalanceResult - 31, // 14: injective_accounts_rpc.StreamAccountDataResponse.position:type_name -> injective_accounts_rpc.PositionsResult - 33, // 15: injective_accounts_rpc.StreamAccountDataResponse.trade:type_name -> injective_accounts_rpc.TradeResult - 38, // 16: injective_accounts_rpc.StreamAccountDataResponse.order:type_name -> injective_accounts_rpc.OrderResult - 41, // 17: injective_accounts_rpc.StreamAccountDataResponse.order_history:type_name -> injective_accounts_rpc.OrderHistoryResult - 44, // 18: injective_accounts_rpc.StreamAccountDataResponse.funding_payment:type_name -> injective_accounts_rpc.FundingPaymentResult - 11, // 19: injective_accounts_rpc.SubaccountBalanceResult.balance:type_name -> injective_accounts_rpc.SubaccountBalance - 32, // 20: injective_accounts_rpc.PositionsResult.position:type_name -> injective_accounts_rpc.Position - 34, // 21: injective_accounts_rpc.TradeResult.spot_trade:type_name -> injective_accounts_rpc.SpotTrade - 36, // 22: injective_accounts_rpc.TradeResult.derivative_trade:type_name -> injective_accounts_rpc.DerivativeTrade - 35, // 23: injective_accounts_rpc.SpotTrade.price:type_name -> injective_accounts_rpc.PriceLevel - 37, // 24: injective_accounts_rpc.DerivativeTrade.position_delta:type_name -> injective_accounts_rpc.PositionDelta - 39, // 25: injective_accounts_rpc.OrderResult.spot_order:type_name -> injective_accounts_rpc.SpotLimitOrder - 40, // 26: injective_accounts_rpc.OrderResult.derivative_order:type_name -> injective_accounts_rpc.DerivativeLimitOrder - 42, // 27: injective_accounts_rpc.OrderHistoryResult.spot_order_history:type_name -> injective_accounts_rpc.SpotOrderHistory - 43, // 28: injective_accounts_rpc.OrderHistoryResult.derivative_order_history:type_name -> injective_accounts_rpc.DerivativeOrderHistory - 45, // 29: injective_accounts_rpc.FundingPaymentResult.funding_payments:type_name -> injective_accounts_rpc.FundingPayment - 0, // 30: injective_accounts_rpc.InjectiveAccountsRPC.Portfolio:input_type -> injective_accounts_rpc.PortfolioRequest - 4, // 31: injective_accounts_rpc.InjectiveAccountsRPC.OrderStates:input_type -> injective_accounts_rpc.OrderStatesRequest - 7, // 32: injective_accounts_rpc.InjectiveAccountsRPC.SubaccountsList:input_type -> injective_accounts_rpc.SubaccountsListRequest - 9, // 33: injective_accounts_rpc.InjectiveAccountsRPC.SubaccountBalancesList:input_type -> injective_accounts_rpc.SubaccountBalancesListRequest - 13, // 34: injective_accounts_rpc.InjectiveAccountsRPC.SubaccountBalanceEndpoint:input_type -> injective_accounts_rpc.SubaccountBalanceEndpointRequest - 15, // 35: injective_accounts_rpc.InjectiveAccountsRPC.StreamSubaccountBalance:input_type -> injective_accounts_rpc.StreamSubaccountBalanceRequest - 17, // 36: injective_accounts_rpc.InjectiveAccountsRPC.SubaccountHistory:input_type -> injective_accounts_rpc.SubaccountHistoryRequest - 22, // 37: injective_accounts_rpc.InjectiveAccountsRPC.SubaccountOrderSummary:input_type -> injective_accounts_rpc.SubaccountOrderSummaryRequest - 24, // 38: injective_accounts_rpc.InjectiveAccountsRPC.Rewards:input_type -> injective_accounts_rpc.RewardsRequest - 28, // 39: injective_accounts_rpc.InjectiveAccountsRPC.StreamAccountData:input_type -> injective_accounts_rpc.StreamAccountDataRequest - 1, // 40: injective_accounts_rpc.InjectiveAccountsRPC.Portfolio:output_type -> injective_accounts_rpc.PortfolioResponse - 5, // 41: injective_accounts_rpc.InjectiveAccountsRPC.OrderStates:output_type -> injective_accounts_rpc.OrderStatesResponse - 8, // 42: injective_accounts_rpc.InjectiveAccountsRPC.SubaccountsList:output_type -> injective_accounts_rpc.SubaccountsListResponse - 10, // 43: injective_accounts_rpc.InjectiveAccountsRPC.SubaccountBalancesList:output_type -> injective_accounts_rpc.SubaccountBalancesListResponse - 14, // 44: injective_accounts_rpc.InjectiveAccountsRPC.SubaccountBalanceEndpoint:output_type -> injective_accounts_rpc.SubaccountBalanceEndpointResponse - 16, // 45: injective_accounts_rpc.InjectiveAccountsRPC.StreamSubaccountBalance:output_type -> injective_accounts_rpc.StreamSubaccountBalanceResponse - 18, // 46: injective_accounts_rpc.InjectiveAccountsRPC.SubaccountHistory:output_type -> injective_accounts_rpc.SubaccountHistoryResponse - 23, // 47: injective_accounts_rpc.InjectiveAccountsRPC.SubaccountOrderSummary:output_type -> injective_accounts_rpc.SubaccountOrderSummaryResponse - 25, // 48: injective_accounts_rpc.InjectiveAccountsRPC.Rewards:output_type -> injective_accounts_rpc.RewardsResponse - 29, // 49: injective_accounts_rpc.InjectiveAccountsRPC.StreamAccountData:output_type -> injective_accounts_rpc.StreamAccountDataResponse - 40, // [40:50] is the sub-list for method output_type - 30, // [30:40] is the sub-list for method input_type - 30, // [30:30] is the sub-list for extension type_name - 30, // [30:30] is the sub-list for extension extendee - 0, // [0:30] is the sub-list for field type_name -} - -func init() { file_goadesign_goagen_injective_accounts_rpc_proto_init() } -func file_goadesign_goagen_injective_accounts_rpc_proto_init() { - if File_goadesign_goagen_injective_accounts_rpc_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PortfolioRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PortfolioResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AccountPortfolio); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountPortfolio); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OrderStatesRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OrderStatesResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OrderStateRecord); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountsListRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountsListResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountBalancesListRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountBalancesListResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountBalance); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountDeposit); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountBalanceEndpointRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountBalanceEndpointResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StreamSubaccountBalanceRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StreamSubaccountBalanceResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountHistoryRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountHistoryResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountBalanceTransfer); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CosmosCoin); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Paging); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountOrderSummaryRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountOrderSummaryResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RewardsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RewardsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Reward); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Coin); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StreamAccountDataRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StreamAccountDataResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountBalanceResult); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PositionsResult); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Position); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TradeResult); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SpotTrade); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PriceLevel); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DerivativeTrade); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PositionDelta); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OrderResult); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SpotLimitOrder); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DerivativeLimitOrder); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OrderHistoryResult); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SpotOrderHistory); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DerivativeOrderHistory); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FundingPaymentResult); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FundingPayment); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[33].OneofWrappers = []interface{}{ - (*TradeResult_SpotTrade)(nil), - (*TradeResult_DerivativeTrade)(nil), - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[38].OneofWrappers = []interface{}{ - (*OrderResult_SpotOrder)(nil), - (*OrderResult_DerivativeOrder)(nil), - } - file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes[41].OneofWrappers = []interface{}{ - (*OrderHistoryResult_SpotOrderHistory)(nil), - (*OrderHistoryResult_DerivativeOrderHistory)(nil), - } - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_goadesign_goagen_injective_accounts_rpc_proto_rawDesc, - NumEnums: 0, - NumMessages: 46, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_goadesign_goagen_injective_accounts_rpc_proto_goTypes, - DependencyIndexes: file_goadesign_goagen_injective_accounts_rpc_proto_depIdxs, - MessageInfos: file_goadesign_goagen_injective_accounts_rpc_proto_msgTypes, - }.Build() - File_goadesign_goagen_injective_accounts_rpc_proto = out.File - file_goadesign_goagen_injective_accounts_rpc_proto_rawDesc = nil - file_goadesign_goagen_injective_accounts_rpc_proto_goTypes = nil - file_goadesign_goagen_injective_accounts_rpc_proto_depIdxs = nil -} diff --git a/exchange/accounts_rpc/pb/pb/goadesign_goagen_injective_accounts_rpc_grpc.pb.go b/exchange/accounts_rpc/pb/pb/goadesign_goagen_injective_accounts_rpc_grpc.pb.go deleted file mode 100644 index ceb634f9..00000000 --- a/exchange/accounts_rpc/pb/pb/goadesign_goagen_injective_accounts_rpc_grpc.pb.go +++ /dev/null @@ -1,508 +0,0 @@ -// Code generated by protoc-gen-go-grpc. DO NOT EDIT. -// versions: -// - protoc-gen-go-grpc v1.2.0 -// - protoc v3.19.4 -// source: goadesign_goagen_injective_accounts_rpc.proto - -package injective_accounts_rpcpb - -import ( - context "context" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" -) - -// 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 - -// InjectiveAccountsRPCClient is the client API for InjectiveAccountsRPC service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. -type InjectiveAccountsRPCClient interface { - // Provide the account's portfolio value in USD. - Portfolio(ctx context.Context, in *PortfolioRequest, opts ...grpc.CallOption) (*PortfolioResponse, error) - // List order states by order hashes - OrderStates(ctx context.Context, in *OrderStatesRequest, opts ...grpc.CallOption) (*OrderStatesResponse, error) - // List all subaccounts IDs of an account address - SubaccountsList(ctx context.Context, in *SubaccountsListRequest, opts ...grpc.CallOption) (*SubaccountsListResponse, error) - // List subaccount balances for the provided denoms. - SubaccountBalancesList(ctx context.Context, in *SubaccountBalancesListRequest, opts ...grpc.CallOption) (*SubaccountBalancesListResponse, error) - // Gets a balance for specific coin denom - SubaccountBalanceEndpoint(ctx context.Context, in *SubaccountBalanceEndpointRequest, opts ...grpc.CallOption) (*SubaccountBalanceEndpointResponse, error) - // StreamSubaccountBalance streams new balance changes for a specified - // subaccount and denoms. If no denoms are provided, all denom changes are - // streamed. - StreamSubaccountBalance(ctx context.Context, in *StreamSubaccountBalanceRequest, opts ...grpc.CallOption) (InjectiveAccountsRPC_StreamSubaccountBalanceClient, error) - // Get subaccount's deposits and withdrawals history - SubaccountHistory(ctx context.Context, in *SubaccountHistoryRequest, opts ...grpc.CallOption) (*SubaccountHistoryResponse, error) - // Get subaccount's orders summary - SubaccountOrderSummary(ctx context.Context, in *SubaccountOrderSummaryRequest, opts ...grpc.CallOption) (*SubaccountOrderSummaryResponse, error) - // Provide historical trading rewards - Rewards(ctx context.Context, in *RewardsRequest, opts ...grpc.CallOption) (*RewardsResponse, error) - // Stream live data for an account and respective data - StreamAccountData(ctx context.Context, in *StreamAccountDataRequest, opts ...grpc.CallOption) (InjectiveAccountsRPC_StreamAccountDataClient, error) -} - -type injectiveAccountsRPCClient struct { - cc grpc.ClientConnInterface -} - -func NewInjectiveAccountsRPCClient(cc grpc.ClientConnInterface) InjectiveAccountsRPCClient { - return &injectiveAccountsRPCClient{cc} -} - -func (c *injectiveAccountsRPCClient) Portfolio(ctx context.Context, in *PortfolioRequest, opts ...grpc.CallOption) (*PortfolioResponse, error) { - out := new(PortfolioResponse) - err := c.cc.Invoke(ctx, "/injective_accounts_rpc.InjectiveAccountsRPC/Portfolio", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *injectiveAccountsRPCClient) OrderStates(ctx context.Context, in *OrderStatesRequest, opts ...grpc.CallOption) (*OrderStatesResponse, error) { - out := new(OrderStatesResponse) - err := c.cc.Invoke(ctx, "/injective_accounts_rpc.InjectiveAccountsRPC/OrderStates", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *injectiveAccountsRPCClient) SubaccountsList(ctx context.Context, in *SubaccountsListRequest, opts ...grpc.CallOption) (*SubaccountsListResponse, error) { - out := new(SubaccountsListResponse) - err := c.cc.Invoke(ctx, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountsList", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *injectiveAccountsRPCClient) SubaccountBalancesList(ctx context.Context, in *SubaccountBalancesListRequest, opts ...grpc.CallOption) (*SubaccountBalancesListResponse, error) { - out := new(SubaccountBalancesListResponse) - err := c.cc.Invoke(ctx, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalancesList", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *injectiveAccountsRPCClient) SubaccountBalanceEndpoint(ctx context.Context, in *SubaccountBalanceEndpointRequest, opts ...grpc.CallOption) (*SubaccountBalanceEndpointResponse, error) { - out := new(SubaccountBalanceEndpointResponse) - err := c.cc.Invoke(ctx, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalanceEndpoint", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *injectiveAccountsRPCClient) StreamSubaccountBalance(ctx context.Context, in *StreamSubaccountBalanceRequest, opts ...grpc.CallOption) (InjectiveAccountsRPC_StreamSubaccountBalanceClient, error) { - stream, err := c.cc.NewStream(ctx, &InjectiveAccountsRPC_ServiceDesc.Streams[0], "/injective_accounts_rpc.InjectiveAccountsRPC/StreamSubaccountBalance", opts...) - if err != nil { - return nil, err - } - x := &injectiveAccountsRPCStreamSubaccountBalanceClient{stream} - if err := x.ClientStream.SendMsg(in); err != nil { - return nil, err - } - if err := x.ClientStream.CloseSend(); err != nil { - return nil, err - } - return x, nil -} - -type InjectiveAccountsRPC_StreamSubaccountBalanceClient interface { - Recv() (*StreamSubaccountBalanceResponse, error) - grpc.ClientStream -} - -type injectiveAccountsRPCStreamSubaccountBalanceClient struct { - grpc.ClientStream -} - -func (x *injectiveAccountsRPCStreamSubaccountBalanceClient) Recv() (*StreamSubaccountBalanceResponse, error) { - m := new(StreamSubaccountBalanceResponse) - if err := x.ClientStream.RecvMsg(m); err != nil { - return nil, err - } - return m, nil -} - -func (c *injectiveAccountsRPCClient) SubaccountHistory(ctx context.Context, in *SubaccountHistoryRequest, opts ...grpc.CallOption) (*SubaccountHistoryResponse, error) { - out := new(SubaccountHistoryResponse) - err := c.cc.Invoke(ctx, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountHistory", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *injectiveAccountsRPCClient) SubaccountOrderSummary(ctx context.Context, in *SubaccountOrderSummaryRequest, opts ...grpc.CallOption) (*SubaccountOrderSummaryResponse, error) { - out := new(SubaccountOrderSummaryResponse) - err := c.cc.Invoke(ctx, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountOrderSummary", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *injectiveAccountsRPCClient) Rewards(ctx context.Context, in *RewardsRequest, opts ...grpc.CallOption) (*RewardsResponse, error) { - out := new(RewardsResponse) - err := c.cc.Invoke(ctx, "/injective_accounts_rpc.InjectiveAccountsRPC/Rewards", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *injectiveAccountsRPCClient) StreamAccountData(ctx context.Context, in *StreamAccountDataRequest, opts ...grpc.CallOption) (InjectiveAccountsRPC_StreamAccountDataClient, error) { - stream, err := c.cc.NewStream(ctx, &InjectiveAccountsRPC_ServiceDesc.Streams[1], "/injective_accounts_rpc.InjectiveAccountsRPC/StreamAccountData", opts...) - if err != nil { - return nil, err - } - x := &injectiveAccountsRPCStreamAccountDataClient{stream} - if err := x.ClientStream.SendMsg(in); err != nil { - return nil, err - } - if err := x.ClientStream.CloseSend(); err != nil { - return nil, err - } - return x, nil -} - -type InjectiveAccountsRPC_StreamAccountDataClient interface { - Recv() (*StreamAccountDataResponse, error) - grpc.ClientStream -} - -type injectiveAccountsRPCStreamAccountDataClient struct { - grpc.ClientStream -} - -func (x *injectiveAccountsRPCStreamAccountDataClient) Recv() (*StreamAccountDataResponse, error) { - m := new(StreamAccountDataResponse) - if err := x.ClientStream.RecvMsg(m); err != nil { - return nil, err - } - return m, nil -} - -// InjectiveAccountsRPCServer is the server API for InjectiveAccountsRPC service. -// All implementations must embed UnimplementedInjectiveAccountsRPCServer -// for forward compatibility -type InjectiveAccountsRPCServer interface { - // Provide the account's portfolio value in USD. - Portfolio(context.Context, *PortfolioRequest) (*PortfolioResponse, error) - // List order states by order hashes - OrderStates(context.Context, *OrderStatesRequest) (*OrderStatesResponse, error) - // List all subaccounts IDs of an account address - SubaccountsList(context.Context, *SubaccountsListRequest) (*SubaccountsListResponse, error) - // List subaccount balances for the provided denoms. - SubaccountBalancesList(context.Context, *SubaccountBalancesListRequest) (*SubaccountBalancesListResponse, error) - // Gets a balance for specific coin denom - SubaccountBalanceEndpoint(context.Context, *SubaccountBalanceEndpointRequest) (*SubaccountBalanceEndpointResponse, error) - // StreamSubaccountBalance streams new balance changes for a specified - // subaccount and denoms. If no denoms are provided, all denom changes are - // streamed. - StreamSubaccountBalance(*StreamSubaccountBalanceRequest, InjectiveAccountsRPC_StreamSubaccountBalanceServer) error - // Get subaccount's deposits and withdrawals history - SubaccountHistory(context.Context, *SubaccountHistoryRequest) (*SubaccountHistoryResponse, error) - // Get subaccount's orders summary - SubaccountOrderSummary(context.Context, *SubaccountOrderSummaryRequest) (*SubaccountOrderSummaryResponse, error) - // Provide historical trading rewards - Rewards(context.Context, *RewardsRequest) (*RewardsResponse, error) - // Stream live data for an account and respective data - StreamAccountData(*StreamAccountDataRequest, InjectiveAccountsRPC_StreamAccountDataServer) error - mustEmbedUnimplementedInjectiveAccountsRPCServer() -} - -// UnimplementedInjectiveAccountsRPCServer must be embedded to have forward compatible implementations. -type UnimplementedInjectiveAccountsRPCServer struct { -} - -func (UnimplementedInjectiveAccountsRPCServer) Portfolio(context.Context, *PortfolioRequest) (*PortfolioResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Portfolio not implemented") -} -func (UnimplementedInjectiveAccountsRPCServer) OrderStates(context.Context, *OrderStatesRequest) (*OrderStatesResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method OrderStates not implemented") -} -func (UnimplementedInjectiveAccountsRPCServer) SubaccountsList(context.Context, *SubaccountsListRequest) (*SubaccountsListResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SubaccountsList not implemented") -} -func (UnimplementedInjectiveAccountsRPCServer) SubaccountBalancesList(context.Context, *SubaccountBalancesListRequest) (*SubaccountBalancesListResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SubaccountBalancesList not implemented") -} -func (UnimplementedInjectiveAccountsRPCServer) SubaccountBalanceEndpoint(context.Context, *SubaccountBalanceEndpointRequest) (*SubaccountBalanceEndpointResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SubaccountBalanceEndpoint not implemented") -} -func (UnimplementedInjectiveAccountsRPCServer) StreamSubaccountBalance(*StreamSubaccountBalanceRequest, InjectiveAccountsRPC_StreamSubaccountBalanceServer) error { - return status.Errorf(codes.Unimplemented, "method StreamSubaccountBalance not implemented") -} -func (UnimplementedInjectiveAccountsRPCServer) SubaccountHistory(context.Context, *SubaccountHistoryRequest) (*SubaccountHistoryResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SubaccountHistory not implemented") -} -func (UnimplementedInjectiveAccountsRPCServer) SubaccountOrderSummary(context.Context, *SubaccountOrderSummaryRequest) (*SubaccountOrderSummaryResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SubaccountOrderSummary not implemented") -} -func (UnimplementedInjectiveAccountsRPCServer) Rewards(context.Context, *RewardsRequest) (*RewardsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Rewards not implemented") -} -func (UnimplementedInjectiveAccountsRPCServer) StreamAccountData(*StreamAccountDataRequest, InjectiveAccountsRPC_StreamAccountDataServer) error { - return status.Errorf(codes.Unimplemented, "method StreamAccountData not implemented") -} -func (UnimplementedInjectiveAccountsRPCServer) mustEmbedUnimplementedInjectiveAccountsRPCServer() {} - -// UnsafeInjectiveAccountsRPCServer may be embedded to opt out of forward compatibility for this service. -// Use of this interface is not recommended, as added methods to InjectiveAccountsRPCServer will -// result in compilation errors. -type UnsafeInjectiveAccountsRPCServer interface { - mustEmbedUnimplementedInjectiveAccountsRPCServer() -} - -func RegisterInjectiveAccountsRPCServer(s grpc.ServiceRegistrar, srv InjectiveAccountsRPCServer) { - s.RegisterService(&InjectiveAccountsRPC_ServiceDesc, srv) -} - -func _InjectiveAccountsRPC_Portfolio_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(PortfolioRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(InjectiveAccountsRPCServer).Portfolio(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective_accounts_rpc.InjectiveAccountsRPC/Portfolio", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(InjectiveAccountsRPCServer).Portfolio(ctx, req.(*PortfolioRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _InjectiveAccountsRPC_OrderStates_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(OrderStatesRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(InjectiveAccountsRPCServer).OrderStates(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective_accounts_rpc.InjectiveAccountsRPC/OrderStates", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(InjectiveAccountsRPCServer).OrderStates(ctx, req.(*OrderStatesRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _InjectiveAccountsRPC_SubaccountsList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SubaccountsListRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(InjectiveAccountsRPCServer).SubaccountsList(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountsList", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(InjectiveAccountsRPCServer).SubaccountsList(ctx, req.(*SubaccountsListRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _InjectiveAccountsRPC_SubaccountBalancesList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SubaccountBalancesListRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(InjectiveAccountsRPCServer).SubaccountBalancesList(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalancesList", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(InjectiveAccountsRPCServer).SubaccountBalancesList(ctx, req.(*SubaccountBalancesListRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _InjectiveAccountsRPC_SubaccountBalanceEndpoint_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SubaccountBalanceEndpointRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(InjectiveAccountsRPCServer).SubaccountBalanceEndpoint(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalanceEndpoint", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(InjectiveAccountsRPCServer).SubaccountBalanceEndpoint(ctx, req.(*SubaccountBalanceEndpointRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _InjectiveAccountsRPC_StreamSubaccountBalance_Handler(srv interface{}, stream grpc.ServerStream) error { - m := new(StreamSubaccountBalanceRequest) - if err := stream.RecvMsg(m); err != nil { - return err - } - return srv.(InjectiveAccountsRPCServer).StreamSubaccountBalance(m, &injectiveAccountsRPCStreamSubaccountBalanceServer{stream}) -} - -type InjectiveAccountsRPC_StreamSubaccountBalanceServer interface { - Send(*StreamSubaccountBalanceResponse) error - grpc.ServerStream -} - -type injectiveAccountsRPCStreamSubaccountBalanceServer struct { - grpc.ServerStream -} - -func (x *injectiveAccountsRPCStreamSubaccountBalanceServer) Send(m *StreamSubaccountBalanceResponse) error { - return x.ServerStream.SendMsg(m) -} - -func _InjectiveAccountsRPC_SubaccountHistory_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SubaccountHistoryRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(InjectiveAccountsRPCServer).SubaccountHistory(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountHistory", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(InjectiveAccountsRPCServer).SubaccountHistory(ctx, req.(*SubaccountHistoryRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _InjectiveAccountsRPC_SubaccountOrderSummary_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SubaccountOrderSummaryRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(InjectiveAccountsRPCServer).SubaccountOrderSummary(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountOrderSummary", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(InjectiveAccountsRPCServer).SubaccountOrderSummary(ctx, req.(*SubaccountOrderSummaryRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _InjectiveAccountsRPC_Rewards_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(RewardsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(InjectiveAccountsRPCServer).Rewards(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/injective_accounts_rpc.InjectiveAccountsRPC/Rewards", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(InjectiveAccountsRPCServer).Rewards(ctx, req.(*RewardsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _InjectiveAccountsRPC_StreamAccountData_Handler(srv interface{}, stream grpc.ServerStream) error { - m := new(StreamAccountDataRequest) - if err := stream.RecvMsg(m); err != nil { - return err - } - return srv.(InjectiveAccountsRPCServer).StreamAccountData(m, &injectiveAccountsRPCStreamAccountDataServer{stream}) -} - -type InjectiveAccountsRPC_StreamAccountDataServer interface { - Send(*StreamAccountDataResponse) error - grpc.ServerStream -} - -type injectiveAccountsRPCStreamAccountDataServer struct { - grpc.ServerStream -} - -func (x *injectiveAccountsRPCStreamAccountDataServer) Send(m *StreamAccountDataResponse) error { - return x.ServerStream.SendMsg(m) -} - -// InjectiveAccountsRPC_ServiceDesc is the grpc.ServiceDesc for InjectiveAccountsRPC service. -// It's only intended for direct use with grpc.RegisterService, -// and not to be introspected or modified (even as a copy) -var InjectiveAccountsRPC_ServiceDesc = grpc.ServiceDesc{ - ServiceName: "injective_accounts_rpc.InjectiveAccountsRPC", - HandlerType: (*InjectiveAccountsRPCServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "Portfolio", - Handler: _InjectiveAccountsRPC_Portfolio_Handler, - }, - { - MethodName: "OrderStates", - Handler: _InjectiveAccountsRPC_OrderStates_Handler, - }, - { - MethodName: "SubaccountsList", - Handler: _InjectiveAccountsRPC_SubaccountsList_Handler, - }, - { - MethodName: "SubaccountBalancesList", - Handler: _InjectiveAccountsRPC_SubaccountBalancesList_Handler, - }, - { - MethodName: "SubaccountBalanceEndpoint", - Handler: _InjectiveAccountsRPC_SubaccountBalanceEndpoint_Handler, - }, - { - MethodName: "SubaccountHistory", - Handler: _InjectiveAccountsRPC_SubaccountHistory_Handler, - }, - { - MethodName: "SubaccountOrderSummary", - Handler: _InjectiveAccountsRPC_SubaccountOrderSummary_Handler, - }, - { - MethodName: "Rewards", - Handler: _InjectiveAccountsRPC_Rewards_Handler, - }, - }, - Streams: []grpc.StreamDesc{ - { - StreamName: "StreamSubaccountBalance", - Handler: _InjectiveAccountsRPC_StreamSubaccountBalance_Handler, - ServerStreams: true, - }, - { - StreamName: "StreamAccountData", - Handler: _InjectiveAccountsRPC_StreamAccountData_Handler, - ServerStreams: true, - }, - }, - Metadata: "goadesign_goagen_injective_accounts_rpc.proto", -} diff --git a/exchange/accounts_rpc/pb/pb/injective_accounts_rpc.pb.gw.go b/exchange/accounts_rpc/pb/pb/injective_accounts_rpc.pb.gw.go deleted file mode 100644 index 4ceab949..00000000 --- a/exchange/accounts_rpc/pb/pb/injective_accounts_rpc.pb.gw.go +++ /dev/null @@ -1,882 +0,0 @@ -// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: injective_accounts_rpc.proto - -/* -Package injective_accounts_rpcpb is a reverse proxy. - -It translates gRPC into RESTful JSON APIs. -*/ -package injective_accounts_rpcpb - -import ( - "context" - "io" - "net/http" - - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" - "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/grpclog" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/proto" -) - -// Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = metadata.Join - -func request_InjectiveAccountsRPC_Portfolio_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PortfolioRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Portfolio(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_Portfolio_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PortfolioRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Portfolio(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_OrderStates_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrderStatesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.OrderStates(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_OrderStates_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrderStatesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.OrderStates(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_SubaccountsList_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountsListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.SubaccountsList(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_SubaccountsList_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountsListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.SubaccountsList(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_SubaccountBalancesList_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountBalancesListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.SubaccountBalancesList(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_SubaccountBalancesList_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountBalancesListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.SubaccountBalancesList(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountBalanceEndpointRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.SubaccountBalanceEndpoint(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountBalanceEndpointRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.SubaccountBalanceEndpoint(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_StreamSubaccountBalance_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (InjectiveAccountsRPC_StreamSubaccountBalanceClient, runtime.ServerMetadata, error) { - var protoReq StreamSubaccountBalanceRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamSubaccountBalance(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveAccountsRPC_SubaccountHistory_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountHistoryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.SubaccountHistory(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_SubaccountHistory_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountHistoryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.SubaccountHistory(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_SubaccountOrderSummary_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountOrderSummaryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.SubaccountOrderSummary(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_SubaccountOrderSummary_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountOrderSummaryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.SubaccountOrderSummary(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_Rewards_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq RewardsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Rewards(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAccountsRPC_Rewards_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAccountsRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq RewardsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Rewards(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAccountsRPC_StreamAccountData_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAccountsRPCClient, req *http.Request, pathParams map[string]string) (InjectiveAccountsRPC_StreamAccountDataClient, runtime.ServerMetadata, error) { - var protoReq StreamAccountDataRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamAccountData(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -// RegisterInjectiveAccountsRPCHandlerServer registers the http handlers for service InjectiveAccountsRPC to "mux". -// UnaryRPC :call InjectiveAccountsRPCServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterInjectiveAccountsRPCHandlerFromEndpoint instead. -func RegisterInjectiveAccountsRPCHandlerServer(ctx context.Context, mux *runtime.ServeMux, server InjectiveAccountsRPCServer) error { - - mux.Handle("POST", pattern_InjectiveAccountsRPC_Portfolio_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/Portfolio", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/Portfolio")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_Portfolio_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_Portfolio_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_OrderStates_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/OrderStates", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/OrderStates")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_OrderStates_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_OrderStates_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountsList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountsList", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountsList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_SubaccountsList_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountsList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountBalancesList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalancesList", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalancesList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_SubaccountBalancesList_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountBalancesList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalanceEndpoint", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalanceEndpoint")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_StreamSubaccountBalance_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountHistory", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountHistory")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_SubaccountHistory_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountHistory_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountOrderSummary_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountOrderSummary", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountOrderSummary")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_SubaccountOrderSummary_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountOrderSummary_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_Rewards_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/Rewards", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/Rewards")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAccountsRPC_Rewards_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_Rewards_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_StreamAccountData_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - return nil -} - -// RegisterInjectiveAccountsRPCHandlerFromEndpoint is same as RegisterInjectiveAccountsRPCHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterInjectiveAccountsRPCHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterInjectiveAccountsRPCHandler(ctx, mux, conn) -} - -// RegisterInjectiveAccountsRPCHandler registers the http handlers for service InjectiveAccountsRPC to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterInjectiveAccountsRPCHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterInjectiveAccountsRPCHandlerClient(ctx, mux, NewInjectiveAccountsRPCClient(conn)) -} - -// RegisterInjectiveAccountsRPCHandlerClient registers the http handlers for service InjectiveAccountsRPC -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "InjectiveAccountsRPCClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "InjectiveAccountsRPCClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "InjectiveAccountsRPCClient" to call the correct interceptors. -func RegisterInjectiveAccountsRPCHandlerClient(ctx context.Context, mux *runtime.ServeMux, client InjectiveAccountsRPCClient) error { - - mux.Handle("POST", pattern_InjectiveAccountsRPC_Portfolio_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/Portfolio", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/Portfolio")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_Portfolio_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_Portfolio_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_OrderStates_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/OrderStates", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/OrderStates")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_OrderStates_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_OrderStates_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountsList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountsList", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountsList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_SubaccountsList_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountsList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountBalancesList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalancesList", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalancesList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_SubaccountBalancesList_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountBalancesList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalanceEndpoint", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountBalanceEndpoint")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_StreamSubaccountBalance_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/StreamSubaccountBalance", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/StreamSubaccountBalance")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_StreamSubaccountBalance_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_StreamSubaccountBalance_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountHistory", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountHistory")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_SubaccountHistory_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountHistory_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_SubaccountOrderSummary_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountOrderSummary", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/SubaccountOrderSummary")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_SubaccountOrderSummary_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_SubaccountOrderSummary_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_Rewards_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/Rewards", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/Rewards")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_Rewards_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_Rewards_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAccountsRPC_StreamAccountData_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_accounts_rpc.InjectiveAccountsRPC/StreamAccountData", runtime.WithHTTPPathPattern("/injective_accounts_rpc.InjectiveAccountsRPC/StreamAccountData")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAccountsRPC_StreamAccountData_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAccountsRPC_StreamAccountData_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -var ( - pattern_InjectiveAccountsRPC_Portfolio_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "Portfolio"}, "")) - - pattern_InjectiveAccountsRPC_OrderStates_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "OrderStates"}, "")) - - pattern_InjectiveAccountsRPC_SubaccountsList_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "SubaccountsList"}, "")) - - pattern_InjectiveAccountsRPC_SubaccountBalancesList_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "SubaccountBalancesList"}, "")) - - pattern_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "SubaccountBalanceEndpoint"}, "")) - - pattern_InjectiveAccountsRPC_StreamSubaccountBalance_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "StreamSubaccountBalance"}, "")) - - pattern_InjectiveAccountsRPC_SubaccountHistory_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "SubaccountHistory"}, "")) - - pattern_InjectiveAccountsRPC_SubaccountOrderSummary_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "SubaccountOrderSummary"}, "")) - - pattern_InjectiveAccountsRPC_Rewards_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "Rewards"}, "")) - - pattern_InjectiveAccountsRPC_StreamAccountData_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_accounts_rpc.InjectiveAccountsRPC", "StreamAccountData"}, "")) -) - -var ( - forward_InjectiveAccountsRPC_Portfolio_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_OrderStates_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_SubaccountsList_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_SubaccountBalancesList_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_SubaccountBalanceEndpoint_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_StreamSubaccountBalance_0 = runtime.ForwardResponseStream - - forward_InjectiveAccountsRPC_SubaccountHistory_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_SubaccountOrderSummary_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_Rewards_0 = runtime.ForwardResponseMessage - - forward_InjectiveAccountsRPC_StreamAccountData_0 = runtime.ForwardResponseStream -) diff --git a/exchange/accounts_rpc/pb/pb/injective_accounts_rpc.proto b/exchange/accounts_rpc/pb/pb/injective_accounts_rpc.proto deleted file mode 100644 index e28956da..00000000 --- a/exchange/accounts_rpc/pb/pb/injective_accounts_rpc.proto +++ /dev/null @@ -1,623 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// InjectiveAccountsRPC protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -syntax = "proto3"; - -package injective_accounts_rpc; - -option go_package = "/injective_accounts_rpcpb"; - -// InjectiveAccountsRPC defines API of Exchange Accounts provider. -service InjectiveAccountsRPC { - // Provide the account's portfolio value in USD. - rpc Portfolio (PortfolioRequest) returns (PortfolioResponse); - // List order states by order hashes - rpc OrderStates (OrderStatesRequest) returns (OrderStatesResponse); - // List all subaccounts IDs of an account address - rpc SubaccountsList (SubaccountsListRequest) returns (SubaccountsListResponse); - // List subaccount balances for the provided denoms. - rpc SubaccountBalancesList (SubaccountBalancesListRequest) returns (SubaccountBalancesListResponse); - // Gets a balance for specific coin denom - rpc SubaccountBalanceEndpoint (SubaccountBalanceEndpointRequest) returns (SubaccountBalanceEndpointResponse); - // StreamSubaccountBalance streams new balance changes for a specified -// subaccount and denoms. If no denoms are provided, all denom changes are -// streamed. - rpc StreamSubaccountBalance (StreamSubaccountBalanceRequest) returns (stream StreamSubaccountBalanceResponse); - // Get subaccount's deposits and withdrawals history - rpc SubaccountHistory (SubaccountHistoryRequest) returns (SubaccountHistoryResponse); - // Get subaccount's orders summary - rpc SubaccountOrderSummary (SubaccountOrderSummaryRequest) returns (SubaccountOrderSummaryResponse); - // Provide historical trading rewards - rpc Rewards (RewardsRequest) returns (RewardsResponse); - // Stream live data for an account and respective data - rpc StreamAccountData (StreamAccountDataRequest) returns (stream StreamAccountDataResponse); -} - -message PortfolioRequest { - // Account address - string account_address = 1; -} - -message PortfolioResponse { - // The portfolio of this account - AccountPortfolio portfolio = 1; -} - -message AccountPortfolio { - // The account's portfolio value in USD. - string portfolio_value = 1; - // The account's available balance value in USD. - string available_balance = 2; - // The account's locked balance value in USD. - string locked_balance = 3; - // The account's total unrealized PnL value in USD. - string unrealized_pnl = 4; - // List of all subaccounts' portfolio - repeated SubaccountPortfolio subaccounts = 5; -} - -message SubaccountPortfolio { - // The ID of this subaccount - string subaccount_id = 1; - // The subaccount's available balance value in USD. - string available_balance = 2; - // The subaccount's locked balance value in USD. - string locked_balance = 3; - // The subaccount's total unrealized PnL value in USD. - string unrealized_pnl = 4; -} - -message OrderStatesRequest { - repeated string spot_order_hashes = 1; - repeated string derivative_order_hashes = 2; -} - -message OrderStatesResponse { - // List of the spot order state records - repeated OrderStateRecord spot_order_states = 1; - // List of the derivative order state records - repeated OrderStateRecord derivative_order_states = 2; -} - -message OrderStateRecord { - // Hash of the order - string order_hash = 1; - // The subaccountId that this order belongs to - string subaccount_id = 2; - // The Market ID of the order - string market_id = 3; - // The type of the order - string order_type = 4; - // The side of the order - string order_side = 5; - // The state (status) of the order - string state = 6; - // The filled quantity of the order - string quantity_filled = 7; - // The filled quantity of the order - string quantity_remaining = 8; - // Order committed timestamp in UNIX millis. - sint64 created_at = 9; - // Order updated timestamp in UNIX millis. - sint64 updated_at = 10; - // Order prices - string price = 11; - // Margin for derivative order - string margin = 12; -} - -message SubaccountsListRequest { - // Account address, the subaccounts owner - string account_address = 1; -} - -message SubaccountsListResponse { - repeated string subaccounts = 1; -} - -message SubaccountBalancesListRequest { - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 1; - // Filter balances by denoms. If not set, the balances of all the denoms for -// the subaccount are provided. - repeated string denoms = 2; -} - -message SubaccountBalancesListResponse { - // List of subaccount balances - repeated SubaccountBalance balances = 1; -} - -message SubaccountBalance { - // Related subaccount ID - string subaccount_id = 1; - // Account address, owner of this subaccount - string account_address = 2; - // Coin denom on the chain. - string denom = 3; - SubaccountDeposit deposit = 4; -} - -message SubaccountDeposit { - string total_balance = 1; - string available_balance = 2; -} - -message SubaccountBalanceEndpointRequest { - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 1; - // Specify denom to get balance - string denom = 2; -} - -message SubaccountBalanceEndpointResponse { - // Subaccount balance - SubaccountBalance balance = 1; -} - -message StreamSubaccountBalanceRequest { - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 1; - // Filter balances by denoms. If not set, the balances of all the denoms for -// the subaccount are provided. - repeated string denoms = 2; -} - -message StreamSubaccountBalanceResponse { - // Subaccount balance - SubaccountBalance balance = 1; - // Operation timestamp in UNIX millis. - sint64 timestamp = 2; -} - -message SubaccountHistoryRequest { - // SubaccountId of the trader we want to get the history from - string subaccount_id = 1; - // Filter history by denom - string denom = 2; - // Filter history by transfer type - repeated string transfer_types = 3; - // Skip will skip the first n item from the result - uint64 skip = 4; - // Limit is used to specify the maximum number of items to be returned - sint32 limit = 5; - // Upper bound of account transfer history's executedAt - sint64 end_time = 6; -} - -message SubaccountHistoryResponse { - // List of subaccount transfers - repeated SubaccountBalanceTransfer transfers = 1; - Paging paging = 2; -} - -message SubaccountBalanceTransfer { - // Type of the subaccount balance transfer - string transfer_type = 1; - // Subaccount ID of the sending side - string src_subaccount_id = 2; - // Account address of the sending side - string src_account_address = 3; - // Subaccount ID of the receiving side - string dst_subaccount_id = 4; - // Account address of the receiving side - string dst_account_address = 5; - // Coin amount of the transfer - CosmosCoin amount = 6; - // Timestamp of the transfer in UNIX millis - sint64 executed_at = 7; -} - -message CosmosCoin { - // Coin denominator - string denom = 1; - // Coin amount (big int) - string amount = 2; -} -// Paging defines the structure for required params for handling pagination -message Paging { - // total number of txs saved in database - sint64 total = 1; - // can be either block height or index num - sint32 from = 2; - // can be either block height or index num - sint32 to = 3; - // count entries by subaccount, serving some places on helix - sint64 count_by_subaccount = 4; - // array of tokens to navigate to the next pages - repeated string next = 5; -} - -message SubaccountOrderSummaryRequest { - // SubaccountId of the trader we want to get the summary from - string subaccount_id = 1; - // MarketId is limiting order summary to specific market only - string market_id = 2; - // Filter by direction of the orders - string order_direction = 3; -} - -message SubaccountOrderSummaryResponse { - // Total count of subaccount's spot orders in given market and direction - sint64 spot_orders_total = 1; - // Total count of subaccount's derivative orders in given market and direction - sint64 derivative_orders_total = 2; -} - -message RewardsRequest { - // The distribution epoch sequence number. -1 for latest. - sint64 epoch = 1; - // Account address for the rewards distribution - string account_address = 2; -} - -message RewardsResponse { - // The trading rewards distributed - repeated Reward rewards = 1; -} - -message Reward { - // Account address - string account_address = 1; - // Reward coins distributed - repeated Coin rewards = 2; - // Rewards distribution timestamp in UNIX millis. - sint64 distributed_at = 3; -} - -message Coin { - // Denom of the coin - string denom = 1; - string amount = 2; -} - -message StreamAccountDataRequest { - // account address - string account_address = 1; -} - -message StreamAccountDataResponse { - SubaccountBalanceResult subaccount_balance = 1; - PositionsResult position = 2; - TradeResult trade = 3; - OrderResult order = 4; - OrderHistoryResult order_history = 5; - FundingPaymentResult funding_payment = 6; -} - -message SubaccountBalanceResult { - // Subaccount balance - SubaccountBalance balance = 1; - // Operation timestamp in UNIX millis. - sint64 timestamp = 2; -} - -message PositionsResult { - // Updated derivative Position - Position position = 1; - // Operation timestamp in UNIX millis. - sint64 timestamp = 2; -} - -message Position { - // Ticker of the derivative market - string ticker = 1; - // Derivative Market ID - string market_id = 2; - // The subaccountId that the position belongs to - string subaccount_id = 3; - // Direction of the position - string direction = 4; - // Quantity of the position - string quantity = 5; - // Price of the position - string entry_price = 6; - // Margin of the position - string margin = 7; - // LiquidationPrice of the position - string liquidation_price = 8; - // MarkPrice of the position - string mark_price = 9; - // Position updated timestamp in UNIX millis. - sint64 updated_at = 10; - // Position created timestamp in UNIX millis. - sint64 created_at = 11; -} - -message TradeResult { - oneof trade { - // New spot market trade - SpotTrade spot_trade = 1; - // New derivative market trade - DerivativeTrade derivative_trade = 2; - } - // Executed trades update type - string operation_type = 3; - // Operation timestamp in UNIX millis. - sint64 timestamp = 4; -} - -message SpotTrade { - // Maker order hash. - string order_hash = 1; - // The subaccountId that executed the trade - string subaccount_id = 2; - // The ID of the market that this trade is in - string market_id = 3; - // The execution type of the trade - string trade_execution_type = 4; - // The direction the trade - string trade_direction = 5; - // Price level at which trade has been executed - PriceLevel price = 6; - // The fee associated with the trade (quote asset denom) - string fee = 7; - // Timestamp of trade execution in UNIX millis - sint64 executed_at = 8; - // Fee recipient address - string fee_recipient = 9; - // A unique string that helps differentiate between trades - string trade_id = 10; - // Trade's execution side, marker/taker - string execution_side = 11; - // Custom client order ID - string cid = 12; -} - -message PriceLevel { - // Price number of the price level. - string price = 1; - // Quantity of the price level. - string quantity = 2; - // Price level last updated timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message DerivativeTrade { - // Order hash. - string order_hash = 1; - // The subaccountId that executed the trade - string subaccount_id = 2; - // The ID of the market that this trade is in - string market_id = 3; - // The execution type of the trade - string trade_execution_type = 4; - // True if the trade is a liquidation - bool is_liquidation = 5; - // Position Delta from the trade - PositionDelta position_delta = 6; - // The payout associated with the trade - string payout = 7; - // The fee associated with the trade - string fee = 8; - // Timestamp of trade execution in UNIX millis - sint64 executed_at = 9; - // Fee recipient address - string fee_recipient = 10; - // A unique string that helps differentiate between trades - string trade_id = 11; - // Trade's execution side, marker/taker - string execution_side = 12; - // Custom client order ID - string cid = 13; -} - -message PositionDelta { - // The direction the trade - string trade_direction = 1; - // Execution Price of the trade. - string execution_price = 2; - // Execution Quantity of the trade. - string execution_quantity = 3; - // Execution Margin of the trade. - string execution_margin = 4; -} - -message OrderResult { - oneof order { - // Updated spot market order - SpotLimitOrder spot_order = 1; - // Updated derivative market order - DerivativeLimitOrder derivative_order = 2; - } - // Executed orders update type - string operation_type = 3; - // Operation timestamp in UNIX millis. - sint64 timestamp = 4; -} - -message SpotLimitOrder { - // Hash of the order - string order_hash = 1; - // The side of the order - string order_side = 2; - // Spot Market ID is keccak265(baseDenom + quoteDenom) - string market_id = 3; - // The subaccountId that this order belongs to - string subaccount_id = 4; - // Price of the order - string price = 5; - // Quantity of the order - string quantity = 6; - // The amount of the quantity remaining unfilled - string unfilled_quantity = 7; - // Trigger price is the trigger price used by stop/take orders. 0 if the -// trigger price is not set. - string trigger_price = 8; - // Fee recipient address - string fee_recipient = 9; - // Order state - string state = 10; - // Order committed timestamp in UNIX millis. - sint64 created_at = 11; - // Order updated timestamp in UNIX millis. - sint64 updated_at = 12; - // Transaction Hash where order is created. Not all orders have this field - string tx_hash = 13; - // Custom client order ID - string cid = 14; -} - -message DerivativeLimitOrder { - // Hash of the order - string order_hash = 1; - // The side of the order - string order_side = 2; - // Derivative Market ID - string market_id = 3; - // The subaccountId that this order belongs to - string subaccount_id = 4; - // True if the order is a reduce-only order - bool is_reduce_only = 5; - // Margin of the order - string margin = 6; - // Price of the order - string price = 7; - // Quantity of the order - string quantity = 8; - // The amount of the quantity remaining unfilled - string unfilled_quantity = 9; - // Trigger price is the trigger price used by stop/take orders - string trigger_price = 10; - // Fee recipient address - string fee_recipient = 11; - // Order state - string state = 12; - // Order committed timestamp in UNIX millis. - sint64 created_at = 13; - // Order updated timestamp in UNIX millis. - sint64 updated_at = 14; - // Order number of subaccount - sint64 order_number = 15; - // Order type - string order_type = 16; - // Order type - bool is_conditional = 17; - // Trigger timestamp, only exists for conditional orders - uint64 trigger_at = 18; - // OrderHash of order that is triggered by this conditional order - string placed_order_hash = 19; - // Execution type of conditional order - string execution_type = 20; - // Transaction Hash where order is created. Not all orders have this field - string tx_hash = 21; - // Custom client order ID - string cid = 22; -} - -message OrderHistoryResult { - oneof order_history { - // Spot order history - SpotOrderHistory spot_order_history = 1; - // Derivative order history - DerivativeOrderHistory derivative_order_history = 2; - } - // Order update type - string operation_type = 3; - // Operation timestamp in UNIX millis. - sint64 timestamp = 4; -} - -message SpotOrderHistory { - // Hash of the order - string order_hash = 1; - // Spot Market ID is keccak265(baseDenom + quoteDenom) - string market_id = 2; - // active state of the order - bool is_active = 3; - // The subaccountId that this order belongs to - string subaccount_id = 4; - // The execution type - string execution_type = 5; - // The side of the order - string order_type = 6; - // Price of the order - string price = 7; - // Trigger price - string trigger_price = 8; - // Quantity of the order - string quantity = 9; - // Filled amount - string filled_quantity = 10; - // Order state - string state = 11; - // Order committed timestamp in UNIX millis. - sint64 created_at = 12; - // Order updated timestamp in UNIX millis. - sint64 updated_at = 13; - // Order direction (order side) - string direction = 14; - // Transaction Hash where order is created. Not all orders have this field - string tx_hash = 15; - // Custom client order ID - string cid = 16; -} - -message DerivativeOrderHistory { - // Hash of the order - string order_hash = 1; - // Spot Market ID is keccak265(baseDenom + quoteDenom) - string market_id = 2; - // active state of the order - bool is_active = 3; - // The subaccountId that this order belongs to - string subaccount_id = 4; - // The execution type - string execution_type = 5; - // The side of the order - string order_type = 6; - // Price of the order - string price = 7; - // Trigger price - string trigger_price = 8; - // Quantity of the order - string quantity = 9; - // Filled amount - string filled_quantity = 10; - // Order state - string state = 11; - // Order committed timestamp in UNIX millis. - sint64 created_at = 12; - // Order updated timestamp in UNIX millis. - sint64 updated_at = 13; - // True if an order is reduce only - bool is_reduce_only = 14; - // Order direction (order side) - string direction = 15; - // True if this is conditional order, otherwise false - bool is_conditional = 16; - // Trigger timestamp in unix milli - uint64 trigger_at = 17; - // Order hash placed when this triggers - string placed_order_hash = 18; - // Order's margin - string margin = 19; - // Transaction Hash where order is created. Not all orders have this field - string tx_hash = 20; - // Custom client order ID - string cid = 21; -} - -message FundingPaymentResult { - // Funding payments of the account - FundingPayment funding_payments = 1; - // Funding payments type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 4; -} - -message FundingPayment { - // Derivative Market ID - string market_id = 1; - // The subaccountId that the position belongs to - string subaccount_id = 2; - // Amount of the funding payment - string amount = 3; - // Timestamp of funding payment in UNIX millis - sint64 timestamp = 4; -} diff --git a/exchange/auction_rpc/pb/goadesign_goagen_injective_auction_rpc.pb.go b/exchange/auction_rpc/pb/goadesign_goagen_injective_auction_rpc.pb.go index 865f0882..3d7db44a 100644 --- a/exchange/auction_rpc/pb/goadesign_goagen_injective_auction_rpc.pb.go +++ b/exchange/auction_rpc/pb/goadesign_goagen_injective_auction_rpc.pb.go @@ -8,7 +8,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 -// protoc v3.19.4 +// protoc v4.24.4 // source: goadesign_goagen_injective_auction_rpc.proto package injective_auction_rpcpb @@ -541,6 +541,91 @@ func (x *StreamBidsResponse) GetTimestamp() int64 { return 0 } +type InjBurntEndpointRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *InjBurntEndpointRequest) Reset() { + *x = InjBurntEndpointRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_injective_auction_rpc_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *InjBurntEndpointRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*InjBurntEndpointRequest) ProtoMessage() {} + +func (x *InjBurntEndpointRequest) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_injective_auction_rpc_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use InjBurntEndpointRequest.ProtoReflect.Descriptor instead. +func (*InjBurntEndpointRequest) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_injective_auction_rpc_proto_rawDescGZIP(), []int{9} +} + +type InjBurntEndpointResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TotalInjBurnt string `protobuf:"bytes,1,opt,name=total_inj_burnt,json=totalInjBurnt,proto3" json:"total_inj_burnt,omitempty"` +} + +func (x *InjBurntEndpointResponse) Reset() { + *x = InjBurntEndpointResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_injective_auction_rpc_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *InjBurntEndpointResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*InjBurntEndpointResponse) ProtoMessage() {} + +func (x *InjBurntEndpointResponse) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_injective_auction_rpc_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use InjBurntEndpointResponse.ProtoReflect.Descriptor instead. +func (*InjBurntEndpointResponse) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_injective_auction_rpc_proto_rawDescGZIP(), []int{10} +} + +func (x *InjBurntEndpointResponse) GetTotalInjBurnt() string { + if x != nil { + return x.TotalInjBurnt + } + return "" +} + var File_goadesign_goagen_injective_auction_rpc_proto protoreflect.FileDescriptor var file_goadesign_goagen_injective_auction_rpc_proto_rawDesc = []byte{ @@ -598,29 +683,43 @@ var file_goadesign_goagen_injective_auction_rpc_proto_rawDesc = []byte{ 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x32, 0xc9, 0x02, 0x0a, 0x13, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x41, 0x75, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x50, 0x43, 0x12, 0x70, 0x0a, 0x0f, 0x41, 0x75, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2d, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x41, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, - 0x69, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x69, 0x6e, 0x6a, + 0x22, 0x19, 0x0a, 0x17, 0x49, 0x6e, 0x6a, 0x42, 0x75, 0x72, 0x6e, 0x74, 0x45, 0x6e, 0x64, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x42, 0x0a, 0x18, 0x49, + 0x6e, 0x6a, 0x42, 0x75, 0x72, 0x6e, 0x74, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6f, 0x74, 0x61, 0x6c, + 0x5f, 0x69, 0x6e, 0x6a, 0x5f, 0x62, 0x75, 0x72, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x6a, 0x42, 0x75, 0x72, 0x6e, 0x74, 0x32, + 0xbe, 0x03, 0x0a, 0x13, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x41, 0x75, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x50, 0x43, 0x12, 0x70, 0x0a, 0x0f, 0x41, 0x75, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, - 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5b, 0x0a, 0x08, 0x41, 0x75, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x41, - 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, + 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x70, + 0x63, 0x2e, 0x41, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5b, 0x0a, 0x08, 0x41, 0x75, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x75, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, + 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, + 0x42, 0x69, 0x64, 0x73, 0x12, 0x28, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, + 0x65, 0x61, 0x6d, 0x42, 0x69, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x75, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x65, 0x61, - 0x6d, 0x42, 0x69, 0x64, 0x73, 0x12, 0x28, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, - 0x72, 0x65, 0x61, 0x6d, 0x42, 0x69, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x75, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x69, - 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x42, 0x1a, 0x5a, 0x18, - 0x2f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x75, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6f, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x69, 0x64, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x73, 0x0a, 0x10, 0x49, + 0x6e, 0x6a, 0x42, 0x75, 0x72, 0x6e, 0x74, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, + 0x2e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x75, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x6a, 0x42, 0x75, 0x72, 0x6e, 0x74, + 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x2f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x75, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x6a, 0x42, 0x75, 0x72, 0x6e, 0x74, + 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x42, 0x1a, 0x5a, 0x18, 0x2f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, + 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -635,34 +734,38 @@ func file_goadesign_goagen_injective_auction_rpc_proto_rawDescGZIP() []byte { return file_goadesign_goagen_injective_auction_rpc_proto_rawDescData } -var file_goadesign_goagen_injective_auction_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 9) +var file_goadesign_goagen_injective_auction_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 11) var file_goadesign_goagen_injective_auction_rpc_proto_goTypes = []interface{}{ - (*AuctionEndpointRequest)(nil), // 0: injective_auction_rpc.AuctionEndpointRequest - (*AuctionEndpointResponse)(nil), // 1: injective_auction_rpc.AuctionEndpointResponse - (*Auction)(nil), // 2: injective_auction_rpc.Auction - (*Coin)(nil), // 3: injective_auction_rpc.Coin - (*Bid)(nil), // 4: injective_auction_rpc.Bid - (*AuctionsRequest)(nil), // 5: injective_auction_rpc.AuctionsRequest - (*AuctionsResponse)(nil), // 6: injective_auction_rpc.AuctionsResponse - (*StreamBidsRequest)(nil), // 7: injective_auction_rpc.StreamBidsRequest - (*StreamBidsResponse)(nil), // 8: injective_auction_rpc.StreamBidsResponse + (*AuctionEndpointRequest)(nil), // 0: injective_auction_rpc.AuctionEndpointRequest + (*AuctionEndpointResponse)(nil), // 1: injective_auction_rpc.AuctionEndpointResponse + (*Auction)(nil), // 2: injective_auction_rpc.Auction + (*Coin)(nil), // 3: injective_auction_rpc.Coin + (*Bid)(nil), // 4: injective_auction_rpc.Bid + (*AuctionsRequest)(nil), // 5: injective_auction_rpc.AuctionsRequest + (*AuctionsResponse)(nil), // 6: injective_auction_rpc.AuctionsResponse + (*StreamBidsRequest)(nil), // 7: injective_auction_rpc.StreamBidsRequest + (*StreamBidsResponse)(nil), // 8: injective_auction_rpc.StreamBidsResponse + (*InjBurntEndpointRequest)(nil), // 9: injective_auction_rpc.InjBurntEndpointRequest + (*InjBurntEndpointResponse)(nil), // 10: injective_auction_rpc.InjBurntEndpointResponse } var file_goadesign_goagen_injective_auction_rpc_proto_depIdxs = []int32{ - 2, // 0: injective_auction_rpc.AuctionEndpointResponse.auction:type_name -> injective_auction_rpc.Auction - 4, // 1: injective_auction_rpc.AuctionEndpointResponse.bids:type_name -> injective_auction_rpc.Bid - 3, // 2: injective_auction_rpc.Auction.basket:type_name -> injective_auction_rpc.Coin - 2, // 3: injective_auction_rpc.AuctionsResponse.auctions:type_name -> injective_auction_rpc.Auction - 0, // 4: injective_auction_rpc.InjectiveAuctionRPC.AuctionEndpoint:input_type -> injective_auction_rpc.AuctionEndpointRequest - 5, // 5: injective_auction_rpc.InjectiveAuctionRPC.Auctions:input_type -> injective_auction_rpc.AuctionsRequest - 7, // 6: injective_auction_rpc.InjectiveAuctionRPC.StreamBids:input_type -> injective_auction_rpc.StreamBidsRequest - 1, // 7: injective_auction_rpc.InjectiveAuctionRPC.AuctionEndpoint:output_type -> injective_auction_rpc.AuctionEndpointResponse - 6, // 8: injective_auction_rpc.InjectiveAuctionRPC.Auctions:output_type -> injective_auction_rpc.AuctionsResponse - 8, // 9: injective_auction_rpc.InjectiveAuctionRPC.StreamBids:output_type -> injective_auction_rpc.StreamBidsResponse - 7, // [7:10] is the sub-list for method output_type - 4, // [4:7] is the sub-list for method input_type - 4, // [4:4] is the sub-list for extension type_name - 4, // [4:4] is the sub-list for extension extendee - 0, // [0:4] is the sub-list for field type_name + 2, // 0: injective_auction_rpc.AuctionEndpointResponse.auction:type_name -> injective_auction_rpc.Auction + 4, // 1: injective_auction_rpc.AuctionEndpointResponse.bids:type_name -> injective_auction_rpc.Bid + 3, // 2: injective_auction_rpc.Auction.basket:type_name -> injective_auction_rpc.Coin + 2, // 3: injective_auction_rpc.AuctionsResponse.auctions:type_name -> injective_auction_rpc.Auction + 0, // 4: injective_auction_rpc.InjectiveAuctionRPC.AuctionEndpoint:input_type -> injective_auction_rpc.AuctionEndpointRequest + 5, // 5: injective_auction_rpc.InjectiveAuctionRPC.Auctions:input_type -> injective_auction_rpc.AuctionsRequest + 7, // 6: injective_auction_rpc.InjectiveAuctionRPC.StreamBids:input_type -> injective_auction_rpc.StreamBidsRequest + 9, // 7: injective_auction_rpc.InjectiveAuctionRPC.InjBurntEndpoint:input_type -> injective_auction_rpc.InjBurntEndpointRequest + 1, // 8: injective_auction_rpc.InjectiveAuctionRPC.AuctionEndpoint:output_type -> injective_auction_rpc.AuctionEndpointResponse + 6, // 9: injective_auction_rpc.InjectiveAuctionRPC.Auctions:output_type -> injective_auction_rpc.AuctionsResponse + 8, // 10: injective_auction_rpc.InjectiveAuctionRPC.StreamBids:output_type -> injective_auction_rpc.StreamBidsResponse + 10, // 11: injective_auction_rpc.InjectiveAuctionRPC.InjBurntEndpoint:output_type -> injective_auction_rpc.InjBurntEndpointResponse + 8, // [8:12] is the sub-list for method output_type + 4, // [4:8] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name } func init() { file_goadesign_goagen_injective_auction_rpc_proto_init() } @@ -779,6 +882,30 @@ func file_goadesign_goagen_injective_auction_rpc_proto_init() { return nil } } + file_goadesign_goagen_injective_auction_rpc_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InjBurntEndpointRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_injective_auction_rpc_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InjBurntEndpointResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -786,7 +913,7 @@ func file_goadesign_goagen_injective_auction_rpc_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_goadesign_goagen_injective_auction_rpc_proto_rawDesc, NumEnums: 0, - NumMessages: 9, + NumMessages: 11, NumExtensions: 0, NumServices: 1, }, diff --git a/exchange/auction_rpc/pb/goadesign_goagen_injective_auction_rpc_grpc.pb.go b/exchange/auction_rpc/pb/goadesign_goagen_injective_auction_rpc_grpc.pb.go index 4100ffbf..2aa1e18e 100644 --- a/exchange/auction_rpc/pb/goadesign_goagen_injective_auction_rpc_grpc.pb.go +++ b/exchange/auction_rpc/pb/goadesign_goagen_injective_auction_rpc_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.2.0 -// - protoc v3.19.4 +// - protoc v4.24.4 // source: goadesign_goagen_injective_auction_rpc.proto package injective_auction_rpcpb @@ -28,6 +28,8 @@ type InjectiveAuctionRPCClient interface { Auctions(ctx context.Context, in *AuctionsRequest, opts ...grpc.CallOption) (*AuctionsResponse, error) // StreamBids streams new bids of an auction. StreamBids(ctx context.Context, in *StreamBidsRequest, opts ...grpc.CallOption) (InjectiveAuctionRPC_StreamBidsClient, error) + // InjBurntEndpoint returns the total amount of INJ burnt in auctions. + InjBurntEndpoint(ctx context.Context, in *InjBurntEndpointRequest, opts ...grpc.CallOption) (*InjBurntEndpointResponse, error) } type injectiveAuctionRPCClient struct { @@ -88,6 +90,15 @@ func (x *injectiveAuctionRPCStreamBidsClient) Recv() (*StreamBidsResponse, error return m, nil } +func (c *injectiveAuctionRPCClient) InjBurntEndpoint(ctx context.Context, in *InjBurntEndpointRequest, opts ...grpc.CallOption) (*InjBurntEndpointResponse, error) { + out := new(InjBurntEndpointResponse) + err := c.cc.Invoke(ctx, "/injective_auction_rpc.InjectiveAuctionRPC/InjBurntEndpoint", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // InjectiveAuctionRPCServer is the server API for InjectiveAuctionRPC service. // All implementations must embed UnimplementedInjectiveAuctionRPCServer // for forward compatibility @@ -98,6 +109,8 @@ type InjectiveAuctionRPCServer interface { Auctions(context.Context, *AuctionsRequest) (*AuctionsResponse, error) // StreamBids streams new bids of an auction. StreamBids(*StreamBidsRequest, InjectiveAuctionRPC_StreamBidsServer) error + // InjBurntEndpoint returns the total amount of INJ burnt in auctions. + InjBurntEndpoint(context.Context, *InjBurntEndpointRequest) (*InjBurntEndpointResponse, error) mustEmbedUnimplementedInjectiveAuctionRPCServer() } @@ -114,6 +127,9 @@ func (UnimplementedInjectiveAuctionRPCServer) Auctions(context.Context, *Auction func (UnimplementedInjectiveAuctionRPCServer) StreamBids(*StreamBidsRequest, InjectiveAuctionRPC_StreamBidsServer) error { return status.Errorf(codes.Unimplemented, "method StreamBids not implemented") } +func (UnimplementedInjectiveAuctionRPCServer) InjBurntEndpoint(context.Context, *InjBurntEndpointRequest) (*InjBurntEndpointResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method InjBurntEndpoint not implemented") +} func (UnimplementedInjectiveAuctionRPCServer) mustEmbedUnimplementedInjectiveAuctionRPCServer() {} // UnsafeInjectiveAuctionRPCServer may be embedded to opt out of forward compatibility for this service. @@ -184,6 +200,24 @@ func (x *injectiveAuctionRPCStreamBidsServer) Send(m *StreamBidsResponse) error return x.ServerStream.SendMsg(m) } +func _InjectiveAuctionRPC_InjBurntEndpoint_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(InjBurntEndpointRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(InjectiveAuctionRPCServer).InjBurntEndpoint(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective_auction_rpc.InjectiveAuctionRPC/InjBurntEndpoint", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(InjectiveAuctionRPCServer).InjBurntEndpoint(ctx, req.(*InjBurntEndpointRequest)) + } + return interceptor(ctx, in, info, handler) +} + // InjectiveAuctionRPC_ServiceDesc is the grpc.ServiceDesc for InjectiveAuctionRPC service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -199,6 +233,10 @@ var InjectiveAuctionRPC_ServiceDesc = grpc.ServiceDesc{ MethodName: "Auctions", Handler: _InjectiveAuctionRPC_Auctions_Handler, }, + { + MethodName: "InjBurntEndpoint", + Handler: _InjectiveAuctionRPC_InjBurntEndpoint_Handler, + }, }, Streams: []grpc.StreamDesc{ { diff --git a/exchange/auction_rpc/pb/injective_auction_rpc.pb.gw.go b/exchange/auction_rpc/pb/injective_auction_rpc.pb.gw.go deleted file mode 100644 index 5d95026e..00000000 --- a/exchange/auction_rpc/pb/injective_auction_rpc.pb.gw.go +++ /dev/null @@ -1,314 +0,0 @@ -// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: injective_auction_rpc.proto - -/* -Package injective_auction_rpcpb is a reverse proxy. - -It translates gRPC into RESTful JSON APIs. -*/ -package injective_auction_rpcpb - -import ( - "context" - "io" - "net/http" - - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" - "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/grpclog" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/proto" -) - -// Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = metadata.Join - -func request_InjectiveAuctionRPC_AuctionEndpoint_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAuctionRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AuctionEndpointRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.AuctionEndpoint(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAuctionRPC_AuctionEndpoint_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAuctionRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AuctionEndpointRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.AuctionEndpoint(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAuctionRPC_Auctions_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAuctionRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AuctionsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Auctions(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveAuctionRPC_Auctions_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveAuctionRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AuctionsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Auctions(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveAuctionRPC_StreamBids_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveAuctionRPCClient, req *http.Request, pathParams map[string]string) (InjectiveAuctionRPC_StreamBidsClient, runtime.ServerMetadata, error) { - var protoReq StreamBidsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamBids(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -// RegisterInjectiveAuctionRPCHandlerServer registers the http handlers for service InjectiveAuctionRPC to "mux". -// UnaryRPC :call InjectiveAuctionRPCServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterInjectiveAuctionRPCHandlerFromEndpoint instead. -func RegisterInjectiveAuctionRPCHandlerServer(ctx context.Context, mux *runtime.ServeMux, server InjectiveAuctionRPCServer) error { - - mux.Handle("POST", pattern_InjectiveAuctionRPC_AuctionEndpoint_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_auction_rpc.InjectiveAuctionRPC/AuctionEndpoint", runtime.WithHTTPPathPattern("/injective_auction_rpc.InjectiveAuctionRPC/AuctionEndpoint")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAuctionRPC_AuctionEndpoint_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAuctionRPC_AuctionEndpoint_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAuctionRPC_Auctions_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_auction_rpc.InjectiveAuctionRPC/Auctions", runtime.WithHTTPPathPattern("/injective_auction_rpc.InjectiveAuctionRPC/Auctions")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveAuctionRPC_Auctions_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAuctionRPC_Auctions_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAuctionRPC_StreamBids_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - return nil -} - -// RegisterInjectiveAuctionRPCHandlerFromEndpoint is same as RegisterInjectiveAuctionRPCHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterInjectiveAuctionRPCHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterInjectiveAuctionRPCHandler(ctx, mux, conn) -} - -// RegisterInjectiveAuctionRPCHandler registers the http handlers for service InjectiveAuctionRPC to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterInjectiveAuctionRPCHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterInjectiveAuctionRPCHandlerClient(ctx, mux, NewInjectiveAuctionRPCClient(conn)) -} - -// RegisterInjectiveAuctionRPCHandlerClient registers the http handlers for service InjectiveAuctionRPC -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "InjectiveAuctionRPCClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "InjectiveAuctionRPCClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "InjectiveAuctionRPCClient" to call the correct interceptors. -func RegisterInjectiveAuctionRPCHandlerClient(ctx context.Context, mux *runtime.ServeMux, client InjectiveAuctionRPCClient) error { - - mux.Handle("POST", pattern_InjectiveAuctionRPC_AuctionEndpoint_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_auction_rpc.InjectiveAuctionRPC/AuctionEndpoint", runtime.WithHTTPPathPattern("/injective_auction_rpc.InjectiveAuctionRPC/AuctionEndpoint")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAuctionRPC_AuctionEndpoint_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAuctionRPC_AuctionEndpoint_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAuctionRPC_Auctions_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_auction_rpc.InjectiveAuctionRPC/Auctions", runtime.WithHTTPPathPattern("/injective_auction_rpc.InjectiveAuctionRPC/Auctions")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAuctionRPC_Auctions_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAuctionRPC_Auctions_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveAuctionRPC_StreamBids_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_auction_rpc.InjectiveAuctionRPC/StreamBids", runtime.WithHTTPPathPattern("/injective_auction_rpc.InjectiveAuctionRPC/StreamBids")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveAuctionRPC_StreamBids_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveAuctionRPC_StreamBids_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -var ( - pattern_InjectiveAuctionRPC_AuctionEndpoint_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_auction_rpc.InjectiveAuctionRPC", "AuctionEndpoint"}, "")) - - pattern_InjectiveAuctionRPC_Auctions_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_auction_rpc.InjectiveAuctionRPC", "Auctions"}, "")) - - pattern_InjectiveAuctionRPC_StreamBids_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_auction_rpc.InjectiveAuctionRPC", "StreamBids"}, "")) -) - -var ( - forward_InjectiveAuctionRPC_AuctionEndpoint_0 = runtime.ForwardResponseMessage - - forward_InjectiveAuctionRPC_Auctions_0 = runtime.ForwardResponseMessage - - forward_InjectiveAuctionRPC_StreamBids_0 = runtime.ForwardResponseStream -) diff --git a/exchange/auction_rpc/pb/injective_auction_rpc.proto b/exchange/auction_rpc/pb/injective_auction_rpc.proto deleted file mode 100644 index 1e2257c4..00000000 --- a/exchange/auction_rpc/pb/injective_auction_rpc.proto +++ /dev/null @@ -1,81 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// InjectiveAuctionRPC protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -syntax = "proto3"; - -package injective_auction_rpc; - -option go_package = "/injective_auction_rpcpb"; - -// InjectiveAuctionRPC defines gRPC API of the Auction API. -service InjectiveAuctionRPC { - // Provide historical auction info for a given auction - rpc AuctionEndpoint (AuctionEndpointRequest) returns (AuctionEndpointResponse); - // Provide the historical auctions info - rpc Auctions (AuctionsRequest) returns (AuctionsResponse); - // StreamBids streams new bids of an auction. - rpc StreamBids (StreamBidsRequest) returns (stream StreamBidsResponse); -} - -message AuctionEndpointRequest { - // The auction round number. -1 for latest. - sint64 round = 1; -} - -message AuctionEndpointResponse { - // The auction - Auction auction = 1; - // Bids of the auction - repeated Bid bids = 2; -} - -message Auction { - // Account address of the auction winner - string winner = 1; - // Coins in the basket - repeated Coin basket = 2; - string winning_bid_amount = 3; - uint64 round = 4; - // Auction end timestamp in UNIX millis. - sint64 end_timestamp = 5; - // UpdatedAt timestamp in UNIX millis. - sint64 updated_at = 6; -} - -message Coin { - // Denom of the coin - string denom = 1; - string amount = 2; -} - -message Bid { - // Account address of the bidder - string bidder = 1; - string amount = 2; - // Bid timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message AuctionsRequest { -} - -message AuctionsResponse { - // The historical auctions - repeated Auction auctions = 1; -} - -message StreamBidsRequest { -} - -message StreamBidsResponse { - // Account address of the bidder - string bidder = 1; - string bid_amount = 2; - uint64 round = 3; - // Operation timestamp in UNIX millis. - sint64 timestamp = 4; -} diff --git a/exchange/campaign_rpc/pb/goadesign_goagen_injective_campaign_rpc.pb.go b/exchange/campaign_rpc/pb/goadesign_goagen_injective_campaign_rpc.pb.go index da99cb0b..1710ad1a 100644 --- a/exchange/campaign_rpc/pb/goadesign_goagen_injective_campaign_rpc.pb.go +++ b/exchange/campaign_rpc/pb/goadesign_goagen_injective_campaign_rpc.pb.go @@ -8,7 +8,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 -// protoc v3.19.4 +// protoc v4.24.4 // source: goadesign_goagen_injective_campaign_rpc.proto package injective_campaign_rpcpb @@ -792,12 +792,23 @@ type CampaignsV2Request struct { // Campaign type Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` - // Whether the campaign is active + // Whether the campaign is active. + // Deprecated: use status instead. Active bool `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"` // Limit number of returned campaigns Limit int32 `protobuf:"zigzag32,3,opt,name=limit,proto3" json:"limit,omitempty"` // Cursor for pagination Cursor string `protobuf:"bytes,4,opt,name=cursor,proto3" json:"cursor,omitempty"` + // Filter campaigns by start date greater than this value in milliseconds + FromStartDate int64 `protobuf:"zigzag64,5,opt,name=from_start_date,json=fromStartDate,proto3" json:"from_start_date,omitempty"` + // Filter campaigns by start date lower than this value in milliseconds + ToStartDate int64 `protobuf:"zigzag64,6,opt,name=to_start_date,json=toStartDate,proto3" json:"to_start_date,omitempty"` + // Filter campaigns by end date greater than this value in milliseconds + FromEndDate int64 `protobuf:"zigzag64,7,opt,name=from_end_date,json=fromEndDate,proto3" json:"from_end_date,omitempty"` + // Filter campaigns by end date lower than this value in milliseconds + ToEndDate int64 `protobuf:"zigzag64,8,opt,name=to_end_date,json=toEndDate,proto3" json:"to_end_date,omitempty"` + // Filter campaigns by status + Status string `protobuf:"bytes,9,opt,name=status,proto3" json:"status,omitempty"` } func (x *CampaignsV2Request) Reset() { @@ -860,6 +871,41 @@ func (x *CampaignsV2Request) GetCursor() string { return "" } +func (x *CampaignsV2Request) GetFromStartDate() int64 { + if x != nil { + return x.FromStartDate + } + return 0 +} + +func (x *CampaignsV2Request) GetToStartDate() int64 { + if x != nil { + return x.ToStartDate + } + return 0 +} + +func (x *CampaignsV2Request) GetFromEndDate() int64 { + if x != nil { + return x.FromEndDate + } + return 0 +} + +func (x *CampaignsV2Request) GetToEndDate() int64 { + if x != nil { + return x.ToEndDate + } + return 0 +} + +func (x *CampaignsV2Request) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + type CampaignsV2Response struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2085,246 +2131,256 @@ var file_goadesign_goagen_injective_campaign_rpc_proto_rawDesc = []byte{ 0x75, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0b, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x22, 0x6e, 0x0a, 0x12, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, 0x56, - 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, - 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, - 0x72, 0x73, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, - 0x6f, 0x72, 0x22, 0x6f, 0x0a, 0x13, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, 0x56, - 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x63, 0x61, 0x6d, - 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, + 0x6e, 0x74, 0x22, 0x96, 0x02, 0x0a, 0x12, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, + 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x63, + 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, + 0x73, 0x6f, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0d, 0x66, 0x72, + 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x74, + 0x6f, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x12, 0x52, 0x0b, 0x74, 0x6f, 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, + 0x22, 0x0a, 0x0d, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x45, 0x6e, 0x64, 0x44, + 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0b, 0x74, 0x6f, 0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x64, 0x61, + 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x6f, 0x45, 0x6e, 0x64, 0x44, + 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x6f, 0x0a, 0x13, 0x43, + 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, + 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x56, 0x32, 0x52, 0x09, 0x63, 0x61, 0x6d, 0x70, 0x61, + 0x69, 0x67, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22, 0xc3, 0x04, 0x0a, + 0x0a, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x56, 0x32, 0x12, 0x1f, 0x0a, 0x0b, 0x63, + 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, + 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, + 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, + 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x64, + 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, + 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x61, 0x62, + 0x6c, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x43, 0x6c, 0x61, 0x69, + 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x69, + 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x11, 0x52, 0x07, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x49, 0x64, + 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x74, + 0x72, 0x61, 0x63, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, + 0x67, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x36, 0x0a, 0x07, 0x72, + 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, - 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x56, 0x32, - 0x52, 0x09, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, - 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, - 0x73, 0x6f, 0x72, 0x22, 0xc3, 0x04, 0x0a, 0x0a, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, - 0x56, 0x32, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, - 0x6e, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, - 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x63, 0x6f, 0x72, - 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, - 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, - 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x19, - 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, - 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x73, 0x5f, - 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0b, 0x69, 0x73, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, - 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x11, 0x52, 0x07, - 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x61, 0x6e, 0x61, 0x67, - 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, - 0x63, 0x74, 0x12, 0x36, 0x0a, 0x07, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x0c, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x69, - 0x6e, 0x52, 0x07, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x5f, 0x73, 0x75, 0x66, 0x66, - 0x69, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x53, 0x75, 0x66, 0x66, 0x69, 0x78, 0x12, 0x27, 0x0a, 0x0f, - 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, - 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0f, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x11, 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, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x83, 0x01, 0x0a, 0x11, 0x4c, 0x69, - 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x2b, 0x0a, 0x11, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, - 0x72, 0x61, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x61, 0x6d, 0x70, - 0x61, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, - 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, - 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, - 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6f, 0x72, 0x74, 0x5f, 0x62, - 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x22, - 0xf6, 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x06, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x12, 0x36, 0x0a, - 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, - 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, - 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, - 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x41, 0x74, 0x12, 0x52, 0x0a, 0x10, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, - 0x5f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, - 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, - 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, - 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x0f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, - 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x22, 0xe5, 0x03, 0x0a, 0x05, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x63, - 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, - 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, - 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x61, - 0x73, 0x74, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0d, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, - 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x76, 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x76, 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x21, 0x0a, - 0x0c, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, - 0x12, 0x24, 0x0a, 0x0e, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x62, 0x79, 0x5f, 0x76, 0x6f, 0x6c, 0x75, - 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0c, 0x72, 0x61, 0x6e, 0x6b, 0x42, 0x79, - 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0b, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x62, - 0x79, 0x5f, 0x74, 0x76, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x11, 0x52, 0x09, 0x72, 0x61, 0x6e, - 0x6b, 0x42, 0x79, 0x54, 0x76, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, - 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x76, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x76, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0e, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, - 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, - 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x61, 0x73, 0x74, 0x65, - 0x72, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x20, - 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x22, 0x82, 0x03, 0x0a, 0x0f, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x53, 0x75, 0x6d, - 0x6d, 0x61, 0x72, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, 0x6d, 0x70, 0x61, - 0x69, 0x67, 0x6e, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, - 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x10, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, - 0x63, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x67, 0x75, 0x69, 0x6c, - 0x64, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x10, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x76, 0x6c, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x76, 0x6c, 0x12, 0x2a, 0x0a, - 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x74, - 0x76, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x41, - 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x54, 0x76, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x74, - 0x61, 0x6c, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, - 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x5f, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x11, 0x52, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x12, 0x52, - 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, - 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, - 0x64, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xd2, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x61, - 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x19, - 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, - 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, - 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, 0x04, 0x73, - 0x6b, 0x69, 0x70, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x67, - 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x10, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, - 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6f, 0x72, 0x74, 0x5f, 0x62, 0x79, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x22, 0xcf, 0x01, 0x0a, 0x18, 0x4c, - 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x36, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, + 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x07, 0x72, 0x65, 0x77, 0x61, + 0x72, 0x64, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x5f, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x12, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x53, + 0x75, 0x66, 0x66, 0x69, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, + 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, + 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x12, + 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x11, 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, + 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x22, 0x83, 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x61, 0x6d, 0x70, + 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, + 0x6b, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, + 0x17, 0x0a, 0x07, 0x73, 0x6f, 0x72, 0x74, 0x5f, 0x62, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x73, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x22, 0xf6, 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73, + 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x35, 0x0a, 0x06, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, + 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x06, + 0x67, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x12, 0x36, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x3c, - 0x0a, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, - 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x52, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xd3, 0x03, 0x0a, - 0x0b, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x2b, 0x0a, 0x11, - 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, - 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, - 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, - 0x6c, 0x64, 0x49, 0x64, 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, 0x12, 0x1b, - 0x0a, 0x09, 0x6a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x12, 0x52, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, - 0x76, 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x74, 0x76, 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x6f, 0x6c, 0x75, - 0x6d, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x76, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x76, 0x6c, 0x12, 0x36, 0x0a, 0x17, 0x76, 0x6f, 0x6c, 0x75, - 0x6d, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, - 0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x01, 0x52, 0x15, 0x76, 0x6f, 0x6c, 0x75, 0x6d, - 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, - 0x12, 0x30, 0x0a, 0x14, 0x74, 0x76, 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x70, 0x65, - 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x01, 0x52, 0x12, - 0x74, 0x76, 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, - 0x67, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x74, 0x76, 0x6c, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x09, 0x74, 0x76, 0x6c, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, - 0x41, 0x0a, 0x0d, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x0c, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x77, 0x61, - 0x72, 0x64, 0x22, 0x5e, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x63, + 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x1d, + 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x12, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x52, 0x0a, + 0x10, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, + 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, + 0x2e, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, + 0x52, 0x0f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, + 0x79, 0x22, 0xe5, 0x03, 0x0a, 0x05, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x22, 0x51, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x04, - 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, + 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, + 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, + 0x64, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6d, 0x61, 0x73, + 0x74, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x76, 0x6c, + 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x76, + 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, + 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x76, 0x6f, + 0x6c, 0x75, 0x6d, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x72, 0x61, 0x6e, + 0x6b, 0x5f, 0x62, 0x79, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x11, 0x52, 0x0c, 0x72, 0x61, 0x6e, 0x6b, 0x42, 0x79, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, + 0x1e, 0x0a, 0x0b, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x62, 0x79, 0x5f, 0x74, 0x76, 0x6c, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x11, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x42, 0x79, 0x54, 0x76, 0x6c, 0x12, + 0x12, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6c, + 0x6f, 0x67, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x76, 0x6c, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x76, 0x6c, + 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, + 0x63, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, + 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x82, 0x03, 0x0a, 0x0f, 0x43, 0x61, + 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x1f, 0x0a, + 0x0b, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x49, 0x64, 0x12, 0x2b, + 0x0a, 0x11, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x61, 0x6d, 0x70, 0x61, + 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x74, + 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x74, + 0x61, 0x6c, 0x5f, 0x74, 0x76, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x6f, + 0x74, 0x61, 0x6c, 0x54, 0x76, 0x6c, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, + 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x76, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x54, + 0x76, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x76, 0x6f, 0x6c, 0x75, + 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x56, + 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x11, 0x52, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xd2, + 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x61, + 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x43, + 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, + 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x2c, 0x0a, 0x12, + 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x6e, + 0x66, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, + 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6f, + 0x72, 0x74, 0x5f, 0x62, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x72, + 0x74, 0x42, 0x79, 0x22, 0xcf, 0x01, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x3d, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, + 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, + 0x36, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, + 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, + 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x3c, 0x0a, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, + 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x69, 0x6e, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, + 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x09, 0x67, 0x75, 0x69, 0x6c, + 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xd3, 0x03, 0x0a, 0x0b, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, + 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x10, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 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, 0x12, 0x1b, 0x0a, 0x09, 0x6a, 0x6f, 0x69, 0x6e, 0x65, + 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x12, 0x52, 0x08, 0x6a, 0x6f, 0x69, 0x6e, + 0x65, 0x64, 0x41, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x76, 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x76, 0x6c, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, + 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x53, + 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x76, + 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x76, + 0x6c, 0x12, 0x36, 0x0a, 0x17, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, + 0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x01, 0x52, 0x15, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x50, + 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x76, 0x6c, + 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, + 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x01, 0x52, 0x12, 0x74, 0x76, 0x6c, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x74, + 0x76, 0x6c, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, + 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x09, 0x74, + 0x76, 0x6c, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x41, 0x0a, 0x0d, 0x76, 0x6f, 0x6c, 0x75, + 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, + 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x0c, 0x76, + 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x5e, 0x0a, 0x15, 0x47, + 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, + 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x10, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, + 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x51, 0x0a, 0x16, 0x47, + 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x32, 0x89, + 0x05, 0x0a, 0x14, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x61, 0x6d, 0x70, + 0x61, 0x69, 0x67, 0x6e, 0x52, 0x50, 0x43, 0x12, 0x5a, 0x0a, 0x07, 0x52, 0x61, 0x6e, 0x6b, 0x69, + 0x6e, 0x67, 0x12, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, + 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x61, 0x6e, 0x6b, + 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, - 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x32, 0x89, 0x05, 0x0a, 0x14, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x52, 0x50, 0x43, 0x12, 0x5a, - 0x0a, 0x07, 0x52, 0x61, 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x12, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x52, 0x61, 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, - 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x61, 0x6e, 0x6b, 0x69, - 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x09, 0x43, 0x61, - 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, 0x12, 0x28, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, - 0x2e, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, - 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x6d, 0x70, 0x61, - 0x69, 0x67, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x0b, - 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, 0x56, 0x32, 0x12, 0x2a, 0x2e, 0x69, 0x6e, + 0x72, 0x70, 0x63, 0x2e, 0x52, 0x61, 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x09, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, + 0x12, 0x28, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, + 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, + 0x67, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x69, 0x6e, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, + 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x0b, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, + 0x6e, 0x73, 0x56, 0x32, 0x12, 0x2a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, + 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, + 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, + 0x67, 0x6e, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, + 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x12, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, 0x56, 0x32, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, + 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x75, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x2f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, + 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, - 0x2e, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x73, 0x12, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, - 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, - 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, 0x10, 0x4c, 0x69, 0x73, - 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x2f, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, - 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, - 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, - 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x6f, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x12, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, - 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x2e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, - 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x42, 0x1b, 0x5a, 0x19, 0x2f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x70, 0x62, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6f, 0x0a, 0x0e, 0x47, 0x65, 0x74, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x2d, 0x2e, 0x69, 0x6e, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, + 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x69, 0x6e, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x5f, + 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x1b, 0x5a, 0x19, 0x2f, 0x69, + 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, + 0x6e, 0x5f, 0x72, 0x70, 0x63, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/exchange/campaign_rpc/pb/goadesign_goagen_injective_campaign_rpc_grpc.pb.go b/exchange/campaign_rpc/pb/goadesign_goagen_injective_campaign_rpc_grpc.pb.go index f45711c2..70413eec 100644 --- a/exchange/campaign_rpc/pb/goadesign_goagen_injective_campaign_rpc_grpc.pb.go +++ b/exchange/campaign_rpc/pb/goadesign_goagen_injective_campaign_rpc_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.2.0 -// - protoc v3.19.4 +// - protoc v4.24.4 // source: goadesign_goagen_injective_campaign_rpc.proto package injective_campaign_rpcpb diff --git a/exchange/campaign_rpc/pb/injective_campaign_rpc.pb.gw.go b/exchange/campaign_rpc/pb/injective_campaign_rpc.pb.gw.go deleted file mode 100644 index b2564260..00000000 --- a/exchange/campaign_rpc/pb/injective_campaign_rpc.pb.gw.go +++ /dev/null @@ -1,596 +0,0 @@ -// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: injective_campaign_rpc.proto - -/* -Package injective_campaign_rpcpb is a reverse proxy. - -It translates gRPC into RESTful JSON APIs. -*/ -package injective_campaign_rpcpb - -import ( - "context" - "io" - "net/http" - - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" - "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/grpclog" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/proto" -) - -// Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = metadata.Join - -func request_InjectiveCampaignRPC_Ranking_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveCampaignRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq RankingRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Ranking(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveCampaignRPC_Ranking_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveCampaignRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq RankingRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Ranking(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveCampaignRPC_Campaigns_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveCampaignRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq CampaignsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Campaigns(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveCampaignRPC_Campaigns_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveCampaignRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq CampaignsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Campaigns(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveCampaignRPC_CampaignsV2_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveCampaignRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq CampaignsV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.CampaignsV2(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveCampaignRPC_CampaignsV2_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveCampaignRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq CampaignsV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.CampaignsV2(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveCampaignRPC_ListGuilds_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveCampaignRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ListGuildsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ListGuilds(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveCampaignRPC_ListGuilds_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveCampaignRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ListGuildsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.ListGuilds(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveCampaignRPC_ListGuildMembers_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveCampaignRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ListGuildMembersRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ListGuildMembers(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveCampaignRPC_ListGuildMembers_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveCampaignRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ListGuildMembersRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.ListGuildMembers(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveCampaignRPC_GetGuildMember_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveCampaignRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetGuildMemberRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetGuildMember(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveCampaignRPC_GetGuildMember_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveCampaignRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetGuildMemberRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetGuildMember(ctx, &protoReq) - return msg, metadata, err - -} - -// RegisterInjectiveCampaignRPCHandlerServer registers the http handlers for service InjectiveCampaignRPC to "mux". -// UnaryRPC :call InjectiveCampaignRPCServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterInjectiveCampaignRPCHandlerFromEndpoint instead. -func RegisterInjectiveCampaignRPCHandlerServer(ctx context.Context, mux *runtime.ServeMux, server InjectiveCampaignRPCServer) error { - - mux.Handle("POST", pattern_InjectiveCampaignRPC_Ranking_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_campaign_rpc.InjectiveCampaignRPC/Ranking", runtime.WithHTTPPathPattern("/injective_campaign_rpc.InjectiveCampaignRPC/Ranking")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveCampaignRPC_Ranking_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveCampaignRPC_Ranking_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveCampaignRPC_Campaigns_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_campaign_rpc.InjectiveCampaignRPC/Campaigns", runtime.WithHTTPPathPattern("/injective_campaign_rpc.InjectiveCampaignRPC/Campaigns")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveCampaignRPC_Campaigns_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveCampaignRPC_Campaigns_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveCampaignRPC_CampaignsV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_campaign_rpc.InjectiveCampaignRPC/CampaignsV2", runtime.WithHTTPPathPattern("/injective_campaign_rpc.InjectiveCampaignRPC/CampaignsV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveCampaignRPC_CampaignsV2_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveCampaignRPC_CampaignsV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveCampaignRPC_ListGuilds_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_campaign_rpc.InjectiveCampaignRPC/ListGuilds", runtime.WithHTTPPathPattern("/injective_campaign_rpc.InjectiveCampaignRPC/ListGuilds")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveCampaignRPC_ListGuilds_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveCampaignRPC_ListGuilds_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveCampaignRPC_ListGuildMembers_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_campaign_rpc.InjectiveCampaignRPC/ListGuildMembers", runtime.WithHTTPPathPattern("/injective_campaign_rpc.InjectiveCampaignRPC/ListGuildMembers")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveCampaignRPC_ListGuildMembers_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveCampaignRPC_ListGuildMembers_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveCampaignRPC_GetGuildMember_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_campaign_rpc.InjectiveCampaignRPC/GetGuildMember", runtime.WithHTTPPathPattern("/injective_campaign_rpc.InjectiveCampaignRPC/GetGuildMember")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveCampaignRPC_GetGuildMember_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveCampaignRPC_GetGuildMember_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -// RegisterInjectiveCampaignRPCHandlerFromEndpoint is same as RegisterInjectiveCampaignRPCHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterInjectiveCampaignRPCHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterInjectiveCampaignRPCHandler(ctx, mux, conn) -} - -// RegisterInjectiveCampaignRPCHandler registers the http handlers for service InjectiveCampaignRPC to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterInjectiveCampaignRPCHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterInjectiveCampaignRPCHandlerClient(ctx, mux, NewInjectiveCampaignRPCClient(conn)) -} - -// RegisterInjectiveCampaignRPCHandlerClient registers the http handlers for service InjectiveCampaignRPC -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "InjectiveCampaignRPCClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "InjectiveCampaignRPCClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "InjectiveCampaignRPCClient" to call the correct interceptors. -func RegisterInjectiveCampaignRPCHandlerClient(ctx context.Context, mux *runtime.ServeMux, client InjectiveCampaignRPCClient) error { - - mux.Handle("POST", pattern_InjectiveCampaignRPC_Ranking_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_campaign_rpc.InjectiveCampaignRPC/Ranking", runtime.WithHTTPPathPattern("/injective_campaign_rpc.InjectiveCampaignRPC/Ranking")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveCampaignRPC_Ranking_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveCampaignRPC_Ranking_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveCampaignRPC_Campaigns_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_campaign_rpc.InjectiveCampaignRPC/Campaigns", runtime.WithHTTPPathPattern("/injective_campaign_rpc.InjectiveCampaignRPC/Campaigns")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveCampaignRPC_Campaigns_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveCampaignRPC_Campaigns_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveCampaignRPC_CampaignsV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_campaign_rpc.InjectiveCampaignRPC/CampaignsV2", runtime.WithHTTPPathPattern("/injective_campaign_rpc.InjectiveCampaignRPC/CampaignsV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveCampaignRPC_CampaignsV2_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveCampaignRPC_CampaignsV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveCampaignRPC_ListGuilds_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_campaign_rpc.InjectiveCampaignRPC/ListGuilds", runtime.WithHTTPPathPattern("/injective_campaign_rpc.InjectiveCampaignRPC/ListGuilds")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveCampaignRPC_ListGuilds_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveCampaignRPC_ListGuilds_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveCampaignRPC_ListGuildMembers_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_campaign_rpc.InjectiveCampaignRPC/ListGuildMembers", runtime.WithHTTPPathPattern("/injective_campaign_rpc.InjectiveCampaignRPC/ListGuildMembers")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveCampaignRPC_ListGuildMembers_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveCampaignRPC_ListGuildMembers_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveCampaignRPC_GetGuildMember_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_campaign_rpc.InjectiveCampaignRPC/GetGuildMember", runtime.WithHTTPPathPattern("/injective_campaign_rpc.InjectiveCampaignRPC/GetGuildMember")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveCampaignRPC_GetGuildMember_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveCampaignRPC_GetGuildMember_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -var ( - pattern_InjectiveCampaignRPC_Ranking_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_campaign_rpc.InjectiveCampaignRPC", "Ranking"}, "")) - - pattern_InjectiveCampaignRPC_Campaigns_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_campaign_rpc.InjectiveCampaignRPC", "Campaigns"}, "")) - - pattern_InjectiveCampaignRPC_CampaignsV2_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_campaign_rpc.InjectiveCampaignRPC", "CampaignsV2"}, "")) - - pattern_InjectiveCampaignRPC_ListGuilds_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_campaign_rpc.InjectiveCampaignRPC", "ListGuilds"}, "")) - - pattern_InjectiveCampaignRPC_ListGuildMembers_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_campaign_rpc.InjectiveCampaignRPC", "ListGuildMembers"}, "")) - - pattern_InjectiveCampaignRPC_GetGuildMember_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_campaign_rpc.InjectiveCampaignRPC", "GetGuildMember"}, "")) -) - -var ( - forward_InjectiveCampaignRPC_Ranking_0 = runtime.ForwardResponseMessage - - forward_InjectiveCampaignRPC_Campaigns_0 = runtime.ForwardResponseMessage - - forward_InjectiveCampaignRPC_CampaignsV2_0 = runtime.ForwardResponseMessage - - forward_InjectiveCampaignRPC_ListGuilds_0 = runtime.ForwardResponseMessage - - forward_InjectiveCampaignRPC_ListGuildMembers_0 = runtime.ForwardResponseMessage - - forward_InjectiveCampaignRPC_GetGuildMember_0 = runtime.ForwardResponseMessage -) diff --git a/exchange/campaign_rpc/pb/injective_campaign_rpc.proto b/exchange/campaign_rpc/pb/injective_campaign_rpc.proto deleted file mode 100644 index f5095311..00000000 --- a/exchange/campaign_rpc/pb/injective_campaign_rpc.proto +++ /dev/null @@ -1,335 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// InjectiveCampaignRPC protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -syntax = "proto3"; - -package injective_campaign_rpc; - -option go_package = "/injective_campaign_rpcpb"; - -// InjectiveCampaignRPC defined a gRPC service for Injective Campaigns. -service InjectiveCampaignRPC { - // Lists all participants in campaign - rpc Ranking (RankingRequest) returns (RankingResponse); - // List current round active campaigns - rpc Campaigns (CampaignsRequest) returns (CampaignsResponse); - // List campaigns v2 - rpc CampaignsV2 (CampaignsV2Request) returns (CampaignsV2Response); - // List guilds by campaign - rpc ListGuilds (ListGuildsRequest) returns (ListGuildsResponse); - // List guild members of given campaign and guildId - rpc ListGuildMembers (ListGuildMembersRequest) returns (ListGuildMembersResponse); - // Get single member guild info - rpc GetGuildMember (GetGuildMemberRequest) returns (GetGuildMemberResponse); -} - -message RankingRequest { - // Campaign ID - string campaign_id = 1; - // MarketId of the campaign - string market_id = 2; - // Account address - string account_address = 3; - sint32 limit = 4; - uint64 skip = 5; - // Contract address that manages the round and reward - string contract_address = 6; -} - -message RankingResponse { - // The campaign information - Campaign campaign = 1; - // The campaign users - repeated CampaignUser users = 2; - Paging paging = 3; -} - -message Campaign { - string campaign_id = 1; - // MarketId of the trading strategy - string market_id = 2; - // Total campaign score - string total_score = 4; - // Last time the campaign score has been updated. - sint64 last_updated = 5; - // Campaign start date in UNIX millis. - sint64 start_date = 6; - // Campaign end date in UNIX millis. - sint64 end_date = 7; - // Whether the campaign rewards can be claimed. - bool is_claimable = 8; - // Campaigns round ID - sint32 round_id = 9; - // Contract address that controls this campaign - string manager_contract = 10; - // Reward tokens of this campaign - repeated Coin rewards = 11; - // Total user score if accountAddress is passed, this is useful to estimate -// account's reward - string user_score = 12; - // Return true if user claimed the reward of this campaign - bool user_claimed = 13; - // Suffix of the subaccount that eligible for volume score - string subaccount_id_suffix = 14; - // Contract that manage users reward - string reward_contract = 15; - // Version of reward contract, UI use this to determine the message that need -// to be sent - string version = 16; - // Campaign type - string type = 17; -} - -message Coin { - // Denom of the coin - string denom = 1; - string amount = 2; -} - -message CampaignUser { - string campaign_id = 1; - // MarketId of the trading strategy - string market_id = 2; - // Account address - string account_address = 3; - // Campaign score - string score = 4; - // Whether the distribution contract has been updated with the latest score - bool contract_updated = 5; - // Block height when the score has been updated. - sint64 block_height = 6; - // Block time timestamp in UNIX millis. - sint64 block_time = 7; - // Amount swapped but only count base denom of the market - string purchased_amount = 8; - // True if this user is updated to be in Galxe Campain list, only eligible -// address are added - bool galxe_updated = 9; - // True if this user claimed the reward - bool reward_claimed = 10; -} -// Paging defines the structure for required params for handling pagination -message Paging { - // total number of txs saved in database - sint64 total = 1; - // can be either block height or index num - sint32 from = 2; - // can be either block height or index num - sint32 to = 3; - // count entries by subaccount, serving some places on helix - sint64 count_by_subaccount = 4; - // array of tokens to navigate to the next pages - repeated string next = 5; -} - -message CampaignsRequest { - // Round ID, if not specified, it will return latest roundId - sint64 round_id = 1; - // Address of login account, if not specified it will return no user rewards - string account_address = 2; - // This will return campaign x where x.roundId <= toRoundId. Useful for listing -// multiple rounds - sint32 to_round_id = 3; - // Contract address that manages the round and reward - string contract_address = 4; - // Campaign type - string type = 5; -} - -message CampaignsResponse { - repeated Campaign campaigns = 1; - repeated Coin accumulated_rewards = 2; - sint32 reward_count = 3; -} - -message CampaignsV2Request { - // Campaign type - string type = 1; - // Whether the campaign is active - bool active = 2; - // Limit number of returned campaigns - sint32 limit = 3; - // Cursor for pagination - string cursor = 4; -} - -message CampaignsV2Response { - repeated CampaignV2 campaigns = 1; - string cursor = 2; -} - -message CampaignV2 { - string campaign_id = 1; - // MarketId of the trading strategy - string market_id = 2; - // Total campaign score - string total_score = 4; - // Campaign creation date in UNIX millis. - sint64 created_at = 5; - // Campaign last update date in UNIX millis. - sint64 updated_at = 6; - // Campaign start date in UNIX millis. - sint64 start_date = 7; - // Campaign end date in UNIX millis. - sint64 end_date = 8; - // Whether the campaign rewards can be claimed. - bool is_claimable = 9; - // Campaigns round ID - sint32 round_id = 10; - // Contract address that controls this campaign - string manager_contract = 11; - // Reward tokens of this campaign - repeated Coin rewards = 12; - // Suffix of the subaccount that eligible for volume score - string subaccount_id_suffix = 13; - // Contract that manage users reward - string reward_contract = 14; - // Campaign type - string type = 15; - // Version of reward contract, UI use this to determine the message that need -// to be sent - string version = 16; - // Campaign name - string name = 17; - // Campaign description - string description = 18; -} - -message ListGuildsRequest { - // Campaign contract address - string campaign_contract = 1; - // Limit number of returned guilds - sint32 limit = 2; - // Skip some first guilds in the list for next page - sint32 skip = 3; - // Sort by some metrics - string sort_by = 4; -} - -message ListGuildsResponse { - repeated Guild guilds = 1; - Paging paging = 2; - // Snapshot updated at time in UNIX milli - sint64 updated_at = 3; - // Summary of the campaign - CampaignSummary campaign_summary = 4; -} - -message Guild { - string campaign_contract = 1; - // Guild ID - string guild_id = 2; - // Guild's master address - string master_address = 3; - // Guild creation date (in UNIX milliseconds) - sint64 created_at = 4; - // Average TVL score - string tvl_score = 5; - // Total volume score - string volume_score = 6; - // guild's rank by volume - sint32 rank_by_volume = 7; - // guild's rank by TVL - sint32 rank_by_tvl = 8; - // guild's logo, at the moment it supports numberic string (i.e '1', '2' and so -// on) not a random URL because of front end limitation - string logo = 9; - // guild's total TVL - string total_tvl = 10; - // Snapshot updated at time in UNIX milli - sint64 updated_at = 11; - // Guild name - string name = 14; - // Active status of guild, true when master total tvl meets the minimum -// requirements - bool is_active = 13; - // Master balance (in current campaigns denom) - string master_balance = 15; - // Guild description, set by master of the guild - string description = 16; -} - -message CampaignSummary { - // Campaign id - string campaign_id = 1; - // Guild manager contract address - string campaign_contract = 2; - // Number of guild in the campaign - sint32 total_guilds_count = 3; - // Total TVL - string total_tvl = 4; - // Sum average TVL of all guilds - string total_average_tvl = 5; - // Total volume across all guilds (in market quote denom, often USDT) - string total_volume = 6; - // Snapshot updated at time in UNIX milli - sint64 updated_at = 7; - // Total member joined the campaign (include guild masters) - sint32 total_members_count = 8; - // Campaign start time - sint64 start_time = 9; - // Campaign end time - sint64 end_time = 10; -} - -message ListGuildMembersRequest { - // Campaign contract address - string campaign_contract = 1; - // ID of guild, inside campaign - string guild_id = 2; - // Limit number of returned guild members - sint32 limit = 3; - // Skip some first guild members in the list for next page - sint32 skip = 4; - // whether to include guild summary info, it's better to use this in terms of -// latency, instead of sending 2 requests we just need once - bool include_guild_info = 5; - // Sort by some metrics - string sort_by = 6; -} - -message ListGuildMembersResponse { - repeated GuildMember members = 1; - Paging paging = 2; - Guild guild_info = 3; -} - -message GuildMember { - // Guild manager contract address - string campaign_contract = 1; - // Guild ID - string guild_id = 2; - // Guild member address - string address = 3; - // Guild enrollment date (in UNIX milliseconds) - sint64 joined_at = 4; - // Average TVL score - string tvl_score = 5; - // Total volume score - string volume_score = 6; - // Total volume score - string total_tvl = 7; - // Volume percentage out of guilds total volume - double volume_score_percentage = 8; - // TVL percentage out of guilds total TVL score - double tvl_score_percentage = 9; - // Rewards for volume campaign (amount+denom) - repeated Coin tvl_reward = 10; - // Rewards for TVL campaign (amount+denom) - repeated Coin volume_reward = 11; -} - -message GetGuildMemberRequest { - // Campaign contract address - string campaign_contract = 1; - // User address - string address = 2; -} - -message GetGuildMemberResponse { - GuildMember info = 1; -} diff --git a/exchange/derivative_exchange_rpc/pb/goadesign_goagen_injective_derivative_exchange_rpc.pb.go b/exchange/derivative_exchange_rpc/pb/goadesign_goagen_injective_derivative_exchange_rpc.pb.go index 98af60fa..0c64e865 100644 --- a/exchange/derivative_exchange_rpc/pb/goadesign_goagen_injective_derivative_exchange_rpc.pb.go +++ b/exchange/derivative_exchange_rpc/pb/goadesign_goagen_injective_derivative_exchange_rpc.pb.go @@ -8,7 +8,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 -// protoc v3.19.4 +// protoc v4.24.4 // source: goadesign_goagen_injective_derivative_exchange_rpc.proto package injective_derivative_exchange_rpcpb @@ -170,7 +170,7 @@ type DerivativeMarketInfo struct { MaintenanceMarginRatio string `protobuf:"bytes,9,opt,name=maintenance_margin_ratio,json=maintenanceMarginRatio,proto3" json:"maintenance_margin_ratio,omitempty"` // Coin denom used for the quote asset. QuoteDenom string `protobuf:"bytes,10,opt,name=quote_denom,json=quoteDenom,proto3" json:"quote_denom,omitempty"` - // Token metadata for quote asset, only for Ethereum-based assets + // Token metadata for quote asset QuoteTokenMeta *TokenMeta `protobuf:"bytes,11,opt,name=quote_token_meta,json=quoteTokenMeta,proto3" json:"quote_token_meta,omitempty"` // Defines the fee percentage makers pay when trading (in quote asset) MakerFeeRate string `protobuf:"bytes,12,opt,name=maker_fee_rate,json=makerFeeRate,proto3" json:"maker_fee_rate,omitempty"` @@ -377,7 +377,7 @@ type TokenMeta struct { // Token full name Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - // Token Ethereum contract address + // Token contract address (native or not) Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` // Token symbol short name Symbol string `protobuf:"bytes,3,opt,name=symbol,proto3" json:"symbol,omitempty"` @@ -1033,7 +1033,7 @@ type BinaryOptionsMarketInfo struct { SettlementTimestamp int64 `protobuf:"zigzag64,9,opt,name=settlement_timestamp,json=settlementTimestamp,proto3" json:"settlement_timestamp,omitempty"` // Coin denom used for the quote asset. QuoteDenom string `protobuf:"bytes,10,opt,name=quote_denom,json=quoteDenom,proto3" json:"quote_denom,omitempty"` - // Token metadata for quote asset, only for Ethereum-based assets + // Token metadata for quote asset QuoteTokenMeta *TokenMeta `protobuf:"bytes,11,opt,name=quote_token_meta,json=quoteTokenMeta,proto3" json:"quote_token_meta,omitempty"` // Defines the fee percentage makers pay when trading (in quote asset) MakerFeeRate string `protobuf:"bytes,12,opt,name=maker_fee_rate,json=makerFeeRate,proto3" json:"maker_fee_rate,omitempty"` @@ -3986,6 +3986,147 @@ func (x *StreamPositionsResponse) GetTimestamp() int64 { return 0 } +type StreamPositionsV2Request struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // SubaccountId of the trader we want to get the positions from + SubaccountId string `protobuf:"bytes,1,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"` + // Backward compat single market ID of position we want to stream + MarketId string `protobuf:"bytes,2,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` + // List of market IDs of the positions we want to stream + MarketIds []string `protobuf:"bytes,3,rep,name=market_ids,json=marketIds,proto3" json:"market_ids,omitempty"` + // Subaccount ids of traders we want to get positions + SubaccountIds []string `protobuf:"bytes,4,rep,name=subaccount_ids,json=subaccountIds,proto3" json:"subaccount_ids,omitempty"` + // filter by account address + AccountAddress string `protobuf:"bytes,5,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` +} + +func (x *StreamPositionsV2Request) Reset() { + *x = StreamPositionsV2Request{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[49] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *StreamPositionsV2Request) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StreamPositionsV2Request) ProtoMessage() {} + +func (x *StreamPositionsV2Request) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[49] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use StreamPositionsV2Request.ProtoReflect.Descriptor instead. +func (*StreamPositionsV2Request) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{49} +} + +func (x *StreamPositionsV2Request) GetSubaccountId() string { + if x != nil { + return x.SubaccountId + } + return "" +} + +func (x *StreamPositionsV2Request) GetMarketId() string { + if x != nil { + return x.MarketId + } + return "" +} + +func (x *StreamPositionsV2Request) GetMarketIds() []string { + if x != nil { + return x.MarketIds + } + return nil +} + +func (x *StreamPositionsV2Request) GetSubaccountIds() []string { + if x != nil { + return x.SubaccountIds + } + return nil +} + +func (x *StreamPositionsV2Request) GetAccountAddress() string { + if x != nil { + return x.AccountAddress + } + return "" +} + +type StreamPositionsV2Response struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Updated derivative Position + Position *DerivativePositionV2 `protobuf:"bytes,1,opt,name=position,proto3" json:"position,omitempty"` + // Operation timestamp in UNIX millis. + Timestamp int64 `protobuf:"zigzag64,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"` +} + +func (x *StreamPositionsV2Response) Reset() { + *x = StreamPositionsV2Response{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[50] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *StreamPositionsV2Response) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StreamPositionsV2Response) ProtoMessage() {} + +func (x *StreamPositionsV2Response) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[50] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use StreamPositionsV2Response.ProtoReflect.Descriptor instead. +func (*StreamPositionsV2Response) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{50} +} + +func (x *StreamPositionsV2Response) GetPosition() *DerivativePositionV2 { + if x != nil { + return x.Position + } + return nil +} + +func (x *StreamPositionsV2Response) GetTimestamp() int64 { + if x != nil { + return x.Timestamp + } + return 0 +} + type StreamOrdersRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4028,7 +4169,7 @@ type StreamOrdersRequest struct { func (x *StreamOrdersRequest) Reset() { *x = StreamOrdersRequest{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[49] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4041,7 +4182,7 @@ func (x *StreamOrdersRequest) String() string { func (*StreamOrdersRequest) ProtoMessage() {} func (x *StreamOrdersRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[49] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4054,7 +4195,7 @@ func (x *StreamOrdersRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use StreamOrdersRequest.ProtoReflect.Descriptor instead. func (*StreamOrdersRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{49} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{51} } func (x *StreamOrdersRequest) GetMarketId() string { @@ -4171,7 +4312,7 @@ type StreamOrdersResponse struct { func (x *StreamOrdersResponse) Reset() { *x = StreamOrdersResponse{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[50] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4184,7 +4325,7 @@ func (x *StreamOrdersResponse) String() string { func (*StreamOrdersResponse) ProtoMessage() {} func (x *StreamOrdersResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[50] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4197,7 +4338,7 @@ func (x *StreamOrdersResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use StreamOrdersResponse.ProtoReflect.Descriptor instead. func (*StreamOrdersResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{50} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{52} } func (x *StreamOrdersResponse) GetOrder() *DerivativeLimitOrder { @@ -4256,12 +4397,14 @@ type TradesRequest struct { AccountAddress string `protobuf:"bytes,13,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` // Client order ID Cid string `protobuf:"bytes,14,opt,name=cid,proto3" json:"cid,omitempty"` + // Filter by fee recipient + FeeRecipient string `protobuf:"bytes,15,opt,name=fee_recipient,json=feeRecipient,proto3" json:"fee_recipient,omitempty"` } func (x *TradesRequest) Reset() { *x = TradesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[51] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4274,7 +4417,7 @@ func (x *TradesRequest) String() string { func (*TradesRequest) ProtoMessage() {} func (x *TradesRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[51] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4287,7 +4430,7 @@ func (x *TradesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use TradesRequest.ProtoReflect.Descriptor instead. func (*TradesRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{51} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{53} } func (x *TradesRequest) GetMarketId() string { @@ -4388,6 +4531,13 @@ func (x *TradesRequest) GetCid() string { return "" } +func (x *TradesRequest) GetFeeRecipient() string { + if x != nil { + return x.FeeRecipient + } + return "" +} + type TradesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4401,7 +4551,7 @@ type TradesResponse struct { func (x *TradesResponse) Reset() { *x = TradesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[52] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4414,7 +4564,7 @@ func (x *TradesResponse) String() string { func (*TradesResponse) ProtoMessage() {} func (x *TradesResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[52] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4427,7 +4577,7 @@ func (x *TradesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use TradesResponse.ProtoReflect.Descriptor instead. func (*TradesResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{52} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{54} } func (x *TradesResponse) GetTrades() []*DerivativeTrade { @@ -4480,7 +4630,7 @@ type DerivativeTrade struct { func (x *DerivativeTrade) Reset() { *x = DerivativeTrade{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[53] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4493,7 +4643,7 @@ func (x *DerivativeTrade) String() string { func (*DerivativeTrade) ProtoMessage() {} func (x *DerivativeTrade) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[53] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4506,7 +4656,7 @@ func (x *DerivativeTrade) ProtoReflect() protoreflect.Message { // Deprecated: Use DerivativeTrade.ProtoReflect.Descriptor instead. func (*DerivativeTrade) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{53} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{55} } func (x *DerivativeTrade) GetOrderHash() string { @@ -4618,7 +4768,7 @@ type PositionDelta struct { func (x *PositionDelta) Reset() { *x = PositionDelta{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[54] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4631,7 +4781,7 @@ func (x *PositionDelta) String() string { func (*PositionDelta) ProtoMessage() {} func (x *PositionDelta) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[54] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4644,7 +4794,7 @@ func (x *PositionDelta) ProtoReflect() protoreflect.Message { // Deprecated: Use PositionDelta.ProtoReflect.Descriptor instead. func (*PositionDelta) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{54} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{56} } func (x *PositionDelta) GetTradeDirection() string { @@ -4710,12 +4860,14 @@ type TradesV2Request struct { AccountAddress string `protobuf:"bytes,13,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` // Client order ID Cid string `protobuf:"bytes,14,opt,name=cid,proto3" json:"cid,omitempty"` + // Filter by fee recipient + FeeRecipient string `protobuf:"bytes,15,opt,name=fee_recipient,json=feeRecipient,proto3" json:"fee_recipient,omitempty"` } func (x *TradesV2Request) Reset() { *x = TradesV2Request{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[55] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4728,7 +4880,7 @@ func (x *TradesV2Request) String() string { func (*TradesV2Request) ProtoMessage() {} func (x *TradesV2Request) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[55] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4741,7 +4893,7 @@ func (x *TradesV2Request) ProtoReflect() protoreflect.Message { // Deprecated: Use TradesV2Request.ProtoReflect.Descriptor instead. func (*TradesV2Request) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{55} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{57} } func (x *TradesV2Request) GetMarketId() string { @@ -4842,6 +4994,13 @@ func (x *TradesV2Request) GetCid() string { return "" } +func (x *TradesV2Request) GetFeeRecipient() string { + if x != nil { + return x.FeeRecipient + } + return "" +} + type TradesV2Response struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4855,7 +5014,7 @@ type TradesV2Response struct { func (x *TradesV2Response) Reset() { *x = TradesV2Response{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[56] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4868,7 +5027,7 @@ func (x *TradesV2Response) String() string { func (*TradesV2Response) ProtoMessage() {} func (x *TradesV2Response) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[56] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4881,7 +5040,7 @@ func (x *TradesV2Response) ProtoReflect() protoreflect.Message { // Deprecated: Use TradesV2Response.ProtoReflect.Descriptor instead. func (*TradesV2Response) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{56} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{58} } func (x *TradesV2Response) GetTrades() []*DerivativeTrade { @@ -4933,12 +5092,14 @@ type StreamTradesRequest struct { AccountAddress string `protobuf:"bytes,13,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` // Client order ID Cid string `protobuf:"bytes,14,opt,name=cid,proto3" json:"cid,omitempty"` + // Filter by fee recipient + FeeRecipient string `protobuf:"bytes,15,opt,name=fee_recipient,json=feeRecipient,proto3" json:"fee_recipient,omitempty"` } func (x *StreamTradesRequest) Reset() { *x = StreamTradesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[57] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4951,7 +5112,7 @@ func (x *StreamTradesRequest) String() string { func (*StreamTradesRequest) ProtoMessage() {} func (x *StreamTradesRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[57] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4964,7 +5125,7 @@ func (x *StreamTradesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use StreamTradesRequest.ProtoReflect.Descriptor instead. func (*StreamTradesRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{57} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{59} } func (x *StreamTradesRequest) GetMarketId() string { @@ -5065,6 +5226,13 @@ func (x *StreamTradesRequest) GetCid() string { return "" } +func (x *StreamTradesRequest) GetFeeRecipient() string { + if x != nil { + return x.FeeRecipient + } + return "" +} + type StreamTradesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -5081,7 +5249,7 @@ type StreamTradesResponse struct { func (x *StreamTradesResponse) Reset() { *x = StreamTradesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[58] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5094,7 +5262,7 @@ func (x *StreamTradesResponse) String() string { func (*StreamTradesResponse) ProtoMessage() {} func (x *StreamTradesResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[58] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5107,7 +5275,7 @@ func (x *StreamTradesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use StreamTradesResponse.ProtoReflect.Descriptor instead. func (*StreamTradesResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{58} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{60} } func (x *StreamTradesResponse) GetTrade() *DerivativeTrade { @@ -5166,12 +5334,14 @@ type StreamTradesV2Request struct { AccountAddress string `protobuf:"bytes,13,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` // Client order ID Cid string `protobuf:"bytes,14,opt,name=cid,proto3" json:"cid,omitempty"` + // Filter by fee recipient + FeeRecipient string `protobuf:"bytes,15,opt,name=fee_recipient,json=feeRecipient,proto3" json:"fee_recipient,omitempty"` } func (x *StreamTradesV2Request) Reset() { *x = StreamTradesV2Request{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[59] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5184,7 +5354,7 @@ func (x *StreamTradesV2Request) String() string { func (*StreamTradesV2Request) ProtoMessage() {} func (x *StreamTradesV2Request) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[59] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5197,7 +5367,7 @@ func (x *StreamTradesV2Request) ProtoReflect() protoreflect.Message { // Deprecated: Use StreamTradesV2Request.ProtoReflect.Descriptor instead. func (*StreamTradesV2Request) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{59} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{61} } func (x *StreamTradesV2Request) GetMarketId() string { @@ -5298,6 +5468,13 @@ func (x *StreamTradesV2Request) GetCid() string { return "" } +func (x *StreamTradesV2Request) GetFeeRecipient() string { + if x != nil { + return x.FeeRecipient + } + return "" +} + type StreamTradesV2Response struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -5314,7 +5491,7 @@ type StreamTradesV2Response struct { func (x *StreamTradesV2Response) Reset() { *x = StreamTradesV2Response{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[60] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5327,7 +5504,7 @@ func (x *StreamTradesV2Response) String() string { func (*StreamTradesV2Response) ProtoMessage() {} func (x *StreamTradesV2Response) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[60] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5340,7 +5517,7 @@ func (x *StreamTradesV2Response) ProtoReflect() protoreflect.Message { // Deprecated: Use StreamTradesV2Response.ProtoReflect.Descriptor instead. func (*StreamTradesV2Response) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{60} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{62} } func (x *StreamTradesV2Response) GetTrade() *DerivativeTrade { @@ -5382,7 +5559,7 @@ type SubaccountOrdersListRequest struct { func (x *SubaccountOrdersListRequest) Reset() { *x = SubaccountOrdersListRequest{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[61] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5395,7 +5572,7 @@ func (x *SubaccountOrdersListRequest) String() string { func (*SubaccountOrdersListRequest) ProtoMessage() {} func (x *SubaccountOrdersListRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[61] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5408,7 +5585,7 @@ func (x *SubaccountOrdersListRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use SubaccountOrdersListRequest.ProtoReflect.Descriptor instead. func (*SubaccountOrdersListRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{61} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{63} } func (x *SubaccountOrdersListRequest) GetSubaccountId() string { @@ -5452,7 +5629,7 @@ type SubaccountOrdersListResponse struct { func (x *SubaccountOrdersListResponse) Reset() { *x = SubaccountOrdersListResponse{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[62] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5465,7 +5642,7 @@ func (x *SubaccountOrdersListResponse) String() string { func (*SubaccountOrdersListResponse) ProtoMessage() {} func (x *SubaccountOrdersListResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[62] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5478,7 +5655,7 @@ func (x *SubaccountOrdersListResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use SubaccountOrdersListResponse.ProtoReflect.Descriptor instead. func (*SubaccountOrdersListResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{62} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{64} } func (x *SubaccountOrdersListResponse) GetOrders() []*DerivativeLimitOrder { @@ -5517,7 +5694,7 @@ type SubaccountTradesListRequest struct { func (x *SubaccountTradesListRequest) Reset() { *x = SubaccountTradesListRequest{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[63] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5530,7 +5707,7 @@ func (x *SubaccountTradesListRequest) String() string { func (*SubaccountTradesListRequest) ProtoMessage() {} func (x *SubaccountTradesListRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[63] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5543,7 +5720,7 @@ func (x *SubaccountTradesListRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use SubaccountTradesListRequest.ProtoReflect.Descriptor instead. func (*SubaccountTradesListRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{63} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{65} } func (x *SubaccountTradesListRequest) GetSubaccountId() string { @@ -5600,7 +5777,7 @@ type SubaccountTradesListResponse struct { func (x *SubaccountTradesListResponse) Reset() { *x = SubaccountTradesListResponse{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[64] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5613,7 +5790,7 @@ func (x *SubaccountTradesListResponse) String() string { func (*SubaccountTradesListResponse) ProtoMessage() {} func (x *SubaccountTradesListResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[64] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5626,7 +5803,7 @@ func (x *SubaccountTradesListResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use SubaccountTradesListResponse.ProtoReflect.Descriptor instead. func (*SubaccountTradesListResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{64} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{66} } func (x *SubaccountTradesListResponse) GetTrades() []*DerivativeTrade { @@ -5676,7 +5853,7 @@ type OrdersHistoryRequest struct { func (x *OrdersHistoryRequest) Reset() { *x = OrdersHistoryRequest{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[65] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5689,7 +5866,7 @@ func (x *OrdersHistoryRequest) String() string { func (*OrdersHistoryRequest) ProtoMessage() {} func (x *OrdersHistoryRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[65] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5702,7 +5879,7 @@ func (x *OrdersHistoryRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use OrdersHistoryRequest.ProtoReflect.Descriptor instead. func (*OrdersHistoryRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{65} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{67} } func (x *OrdersHistoryRequest) GetSubaccountId() string { @@ -5830,7 +6007,7 @@ type OrdersHistoryResponse struct { func (x *OrdersHistoryResponse) Reset() { *x = OrdersHistoryResponse{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[66] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5843,7 +6020,7 @@ func (x *OrdersHistoryResponse) String() string { func (*OrdersHistoryResponse) ProtoMessage() {} func (x *OrdersHistoryResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[66] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5856,7 +6033,7 @@ func (x *OrdersHistoryResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use OrdersHistoryResponse.ProtoReflect.Descriptor instead. func (*OrdersHistoryResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{66} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{68} } func (x *OrdersHistoryResponse) GetOrders() []*DerivativeOrderHistory { @@ -5925,7 +6102,7 @@ type DerivativeOrderHistory struct { func (x *DerivativeOrderHistory) Reset() { *x = DerivativeOrderHistory{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[67] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5938,7 +6115,7 @@ func (x *DerivativeOrderHistory) String() string { func (*DerivativeOrderHistory) ProtoMessage() {} func (x *DerivativeOrderHistory) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[67] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5951,7 +6128,7 @@ func (x *DerivativeOrderHistory) ProtoReflect() protoreflect.Message { // Deprecated: Use DerivativeOrderHistory.ProtoReflect.Descriptor instead. func (*DerivativeOrderHistory) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{67} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{69} } func (x *DerivativeOrderHistory) GetOrderHash() string { @@ -6122,7 +6299,7 @@ type StreamOrdersHistoryRequest struct { func (x *StreamOrdersHistoryRequest) Reset() { *x = StreamOrdersHistoryRequest{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[68] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6135,7 +6312,7 @@ func (x *StreamOrdersHistoryRequest) String() string { func (*StreamOrdersHistoryRequest) ProtoMessage() {} func (x *StreamOrdersHistoryRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[68] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6148,7 +6325,7 @@ func (x *StreamOrdersHistoryRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use StreamOrdersHistoryRequest.ProtoReflect.Descriptor instead. func (*StreamOrdersHistoryRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{68} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{70} } func (x *StreamOrdersHistoryRequest) GetSubaccountId() string { @@ -6209,7 +6386,7 @@ type StreamOrdersHistoryResponse struct { func (x *StreamOrdersHistoryResponse) Reset() { *x = StreamOrdersHistoryResponse{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[69] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6222,7 +6399,7 @@ func (x *StreamOrdersHistoryResponse) String() string { func (*StreamOrdersHistoryResponse) ProtoMessage() {} func (x *StreamOrdersHistoryResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[69] + mi := &file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6235,7 +6412,7 @@ func (x *StreamOrdersHistoryResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use StreamOrdersHistoryResponse.ProtoReflect.Descriptor instead. func (*StreamOrdersHistoryResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{69} + return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP(), []int{71} } func (x *StreamOrdersHistoryResponse) GetOrder() *DerivativeOrderHistory { @@ -6913,128 +7090,69 @@ var file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDesc = []by 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, - 0xcf, 0x03, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, - 0x65, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x69, - 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x53, - 0x69, 0x64, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, - 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, - 0x69, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, - 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x69, - 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0d, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x61, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x69, 0x6e, 0x61, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x6e, 0x63, - 0x6c, 0x75, 0x64, 0x65, 0x49, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x36, 0x0a, 0x17, - 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, - 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x73, - 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x4f, 0x72, - 0x64, 0x65, 0x72, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, - 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, - 0x64, 0x22, 0xaa, 0x01, 0x0a, 0x14, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, - 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x05, 0x6f, 0x72, - 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, - 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x72, 0x64, - 0x65, 0x72, 0x52, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xbf, - 0x03, 0x0a, 0x0d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, - 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, - 0x53, 0x69, 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, + 0xcb, 0x01, 0x0a, 0x18, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, + 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1d, + 0x0a, 0x0a, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x25, 0x0a, + 0x0e, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x8e, 0x01, + 0x0a, 0x19, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x08, 0x70, + 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, + 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, + 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x50, 0x6f, 0x73, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x32, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xcf, + 0x03, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, + 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x64, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x69, + 0x64, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, - 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, + 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, + 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, + 0x06, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, - 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, - 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, - 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, - 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x10, + 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x73, + 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0d, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x69, 0x6e, 0x61, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x6e, 0x63, 0x6c, + 0x75, 0x64, 0x65, 0x49, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x36, 0x0a, 0x17, 0x73, + 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, + 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x73, 0x75, + 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x4f, 0x72, 0x64, + 0x65, 0x72, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, - 0x22, 0x9f, 0x01, 0x0a, 0x0e, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, - 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, 0x12, - 0x41, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, - 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x67, 0x22, 0xe8, 0x03, 0x0a, 0x0f, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, - 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, - 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, - 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, - 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x72, 0x61, 0x64, 0x65, - 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x74, 0x72, 0x61, 0x64, 0x65, 0x45, 0x78, 0x65, 0x63, - 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x73, 0x5f, - 0x6c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0d, 0x69, 0x73, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x57, 0x0a, 0x0e, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x65, 0x6c, - 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, + 0x22, 0xaa, 0x01, 0x0a, 0x14, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x05, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6f, 0x73, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x52, 0x0d, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x79, - 0x6f, 0x75, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x79, 0x6f, 0x75, - 0x74, 0x12, 0x10, 0x0a, 0x03, 0x66, 0x65, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x66, 0x65, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x5f, - 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, - 0x65, 0x64, 0x41, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, - 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, - 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, - 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, - 0x64, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, - 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, - 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0xbb, 0x01, - 0x0a, 0x0d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, - 0x27, 0x0a, 0x0f, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x72, 0x61, 0x64, 0x65, 0x44, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, - 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x63, - 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x71, - 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x65, - 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x12, 0x29, 0x0a, 0x10, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, - 0x72, 0x67, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, 0x78, 0x65, 0x63, - 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x22, 0xc1, 0x03, 0x0a, 0x0f, - 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x72, + 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, + 0x72, 0x52, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xe4, 0x03, + 0x0a, 0x0d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, @@ -7061,19 +7179,146 @@ var file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDesc = []by 0x64, 0x65, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x10, 0x0a, - 0x03, 0x63, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, - 0xa1, 0x01, 0x0a, 0x10, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, - 0x69, 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, - 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, - 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, - 0x69, 0x6e, 0x67, 0x22, 0xc5, 0x03, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, - 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, + 0x03, 0x63, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, + 0x23, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, + 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, + 0x69, 0x65, 0x6e, 0x74, 0x22, 0x9f, 0x01, 0x0a, 0x0e, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, + 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, + 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x06, 0x74, 0x72, 0x61, + 0x64, 0x65, 0x73, 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, + 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x22, 0xe8, 0x03, 0x0a, 0x0f, 0x44, 0x65, 0x72, 0x69, 0x76, + 0x61, 0x74, 0x69, 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, + 0x64, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x6f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, + 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x74, + 0x72, 0x61, 0x64, 0x65, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x74, 0x72, 0x61, 0x64, 0x65, + 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x25, 0x0a, + 0x0e, 0x69, 0x73, 0x5f, 0x6c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x57, 0x0a, 0x0e, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, + 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, + 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x52, 0x0d, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x16, 0x0a, + 0x06, 0x70, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, + 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x66, 0x65, 0x65, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x66, 0x65, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x78, 0x65, 0x63, 0x75, + 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x65, 0x78, + 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, + 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x66, 0x65, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, + 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x64, 0x65, 0x12, + 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, + 0x64, 0x22, 0xbb, 0x01, 0x0a, 0x0d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, + 0x6c, 0x74, 0x61, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x64, 0x69, 0x72, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x72, + 0x61, 0x64, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f, + 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, + 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x11, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, + 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x22, + 0xe6, 0x03, 0x0a, 0x0f, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, + 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, + 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, + 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, + 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, + 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, + 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, + 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, + 0x0a, 0x0a, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x25, 0x0a, + 0x0e, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, + 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, + 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x19, 0x0a, + 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x63, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, + 0x69, 0x65, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x52, + 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x22, 0xa1, 0x01, 0x0a, 0x10, 0x54, 0x72, 0x61, + 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, + 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, + 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, + 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, + 0x65, 0x52, 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x67, + 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, + 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x22, 0xea, 0x03, 0x0a, + 0x13, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, + 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, + 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, + 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, + 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, + 0x6b, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, + 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, + 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x09, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x25, + 0x0a, 0x0e, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, + 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, + 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x19, + 0x0a, 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x63, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, + 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, + 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x22, 0xa5, 0x01, 0x0a, 0x14, 0x53, 0x74, + 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x48, 0x0a, 0x05, 0x74, 0x72, 0x61, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, + 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x05, 0x74, 0x72, 0x61, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, + 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x22, 0xec, 0x03, 0x0a, 0x15, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, + 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, @@ -7100,423 +7345,396 @@ var file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDesc = []by 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0xa5, 0x01, 0x0a, 0x14, - 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x05, 0x74, 0x72, 0x61, 0x64, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, - 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x05, 0x74, 0x72, 0x61, 0x64, 0x65, 0x12, 0x25, - 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x22, 0xc7, 0x03, 0x0a, 0x15, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, - 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, - 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, - 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x64, - 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, - 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1d, - 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, - 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, - 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x72, 0x6b, - 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, - 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x75, 0x62, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x27, - 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, - 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, - 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, - 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x63, - 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0xa7, 0x01, - 0x0a, 0x16, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x05, 0x74, 0x72, 0x61, 0x64, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x66, + 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, + 0x22, 0xa7, 0x01, 0x0a, 0x16, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, + 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x05, 0x74, + 0x72, 0x61, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x6e, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, + 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x05, + 0x74, 0x72, 0x61, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, + 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, + 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x89, 0x01, 0x0a, 0x1b, 0x53, + 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, + 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x73, 0x6b, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, + 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, + 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0xb2, 0x01, 0x0a, 0x1c, 0x53, 0x75, 0x62, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x06, 0x6f, 0x72, 0x64, 0x65, 0x72, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, - 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x05, 0x74, 0x72, 0x61, - 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, - 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x89, 0x01, 0x0a, 0x1b, 0x53, 0x75, 0x62, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, - 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, - 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, - 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, - 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, - 0x6d, 0x69, 0x74, 0x22, 0xb2, 0x01, 0x0a, 0x1c, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x06, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, + 0x52, 0x06, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, + 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, + 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x22, 0xce, 0x01, 0x0a, 0x1b, + 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, + 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, + 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x6a, 0x0a, 0x1c, + 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x06, + 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, + 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, + 0x2e, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, + 0x52, 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, 0x22, 0xfc, 0x03, 0x0a, 0x14, 0x4f, 0x72, 0x64, + 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, + 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1f, 0x0a, + 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1c, + 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, + 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, + 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, + 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x63, 0x6f, 0x6e, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, + 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x1d, 0x0a, + 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, + 0x74, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, + 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, + 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, + 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, + 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x11, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, + 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0xad, 0x01, 0x0a, 0x15, 0x4f, 0x72, 0x64, 0x65, + 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x51, 0x0a, 0x06, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x39, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, + 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x06, 0x6f, 0x72, + 0x64, 0x65, 0x72, 0x73, 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, - 0x69, 0x76, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x06, 0x6f, - 0x72, 0x64, 0x65, 0x72, 0x73, 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, + 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, + 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x22, 0xa9, 0x05, 0x0a, 0x16, 0x44, 0x65, 0x72, 0x69, + 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, + 0x72, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, + 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1b, + 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x08, 0x69, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, + 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, + 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, + 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x27, 0x0a, + 0x0f, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x51, 0x75, + 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x12, + 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x12, 0x52, + 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x73, + 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x0e, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x4f, 0x6e, 0x6c, 0x79, + 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0f, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, + 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, + 0x5f, 0x61, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x74, 0x72, 0x69, 0x67, 0x67, + 0x65, 0x72, 0x41, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x5f, 0x6f, + 0x72, 0x64, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, 0x68, + 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, + 0x61, 0x73, 0x68, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, + 0x68, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x63, 0x69, 0x64, 0x22, 0xdc, 0x01, 0x0a, 0x1a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, + 0x65, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, + 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, + 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, + 0x65, 0x73, 0x22, 0xb3, 0x01, 0x0a, 0x1b, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, + 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x39, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, + 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x05, 0x6f, 0x72, + 0x64, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x70, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x32, 0xd7, 0x1b, 0x0a, 0x1e, 0x49, 0x6e, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x50, 0x43, 0x12, 0x70, 0x0a, 0x07, 0x4d, + 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, + 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, + 0x72, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6d, 0x0a, + 0x06, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, + 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, + 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, + 0x72, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x81, 0x01, 0x0a, + 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x12, 0x36, 0x2e, + 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, + 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, - 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x22, 0xce, 0x01, 0x0a, 0x1b, 0x53, 0x75, 0x62, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, - 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, - 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, - 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x6a, 0x0a, 0x1c, 0x53, 0x75, 0x62, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x06, 0x74, 0x72, 0x61, - 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, + 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, + 0x12, 0x97, 0x01, 0x0a, 0x14, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x3e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, - 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x06, 0x74, - 0x72, 0x61, 0x64, 0x65, 0x73, 0x22, 0xfc, 0x03, 0x0a, 0x14, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, - 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, - 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, - 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, - 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x72, - 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, - 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x69, 0x73, 0x43, - 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, - 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, - 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, - 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, - 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, - 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x72, 0x6b, - 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, - 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, - 0x5f, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, - 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6d, 0x61, 0x72, - 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x11, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x4f, 0x6e, - 0x6c, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x63, 0x69, 0x64, 0x22, 0xad, 0x01, 0x0a, 0x15, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, - 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, - 0x0a, 0x06, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x69, + 0x6e, 0x61, 0x72, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x61, 0x72, 0x6b, 0x65, + 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x69, + 0x6e, 0x61, 0x72, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x61, 0x72, 0x6b, 0x65, + 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x94, 0x01, 0x0a, 0x13, 0x42, + 0x69, 0x6e, 0x61, 0x72, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x61, 0x72, 0x6b, + 0x65, 0x74, 0x12, 0x3d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, + 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x4f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x3e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, + 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x4f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x7c, 0x0a, 0x0b, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, + 0x12, 0x35, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, + 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, + 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, + 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x7f, 0x0a, 0x0c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x73, 0x56, 0x32, 0x12, + 0x36, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, + 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, + 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x73, 0x56, 0x32, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, + 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, + 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x90, 0x01, 0x0a, 0x11, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, + 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x12, 0x3b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, + 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x30, 0x01, 0x12, 0x9c, 0x01, 0x0a, 0x15, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x3f, 0x2e, + 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, + 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, + 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x40, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x72, 0x64, - 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x06, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x73, 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, - 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, - 0x67, 0x69, 0x6e, 0x67, 0x22, 0xa9, 0x05, 0x0a, 0x16, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, - 0x69, 0x76, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, - 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1b, - 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, - 0x73, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, - 0x69, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, - 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x72, 0x69, - 0x67, 0x67, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, - 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x66, 0x69, - 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x51, 0x75, 0x61, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x72, 0x65, - 0x64, 0x75, 0x63, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0c, 0x69, 0x73, 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x1c, 0x0a, - 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x69, - 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x10, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x61, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x74, - 0x18, 0x11, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x41, - 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x5f, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x6c, - 0x61, 0x63, 0x65, 0x64, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x16, 0x0a, - 0x06, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, - 0x61, 0x72, 0x67, 0x69, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, - 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x10, - 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, - 0x22, 0xdc, 0x01, 0x0a, 0x1a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, - 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, - 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, - 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x22, - 0xb3, 0x01, 0x0a, 0x1b, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, - 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x4f, 0x0a, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, + 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, + 0x6f, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x30, 0x01, 0x12, 0x6d, 0x0a, 0x06, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x12, 0x30, 0x2e, 0x69, + 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, + 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, + 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, + 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, + 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x76, 0x0a, 0x09, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x33, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x72, 0x64, - 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x32, 0xc4, 0x1a, 0x0a, 0x1e, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x44, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x45, 0x78, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x50, 0x43, 0x12, 0x70, 0x0a, 0x07, 0x4d, 0x61, 0x72, 0x6b, - 0x65, 0x74, 0x73, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x70, 0x63, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, - 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, - 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6d, 0x0a, 0x06, 0x4d, 0x61, - 0x72, 0x6b, 0x65, 0x74, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, - 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x81, 0x01, 0x0a, 0x0c, 0x53, 0x74, - 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x12, 0x36, 0x2e, 0x69, 0x6e, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, - 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, - 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x61, 0x72, - 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x97, 0x01, - 0x0a, 0x14, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, - 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x3e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, - 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x69, 0x6e, 0x61, 0x72, - 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, - 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x69, 0x6e, 0x61, 0x72, - 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x94, 0x01, 0x0a, 0x13, 0x42, 0x69, 0x6e, 0x61, - 0x72, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x12, + 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7c, 0x0a, 0x0b, 0x50, 0x6f, 0x73, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x56, 0x32, 0x12, 0x35, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6f, 0x73, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x36, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, + 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, + 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x56, 0x32, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x94, 0x01, 0x0a, 0x13, 0x4c, 0x69, 0x71, 0x75, + 0x69, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3e, + 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x6f, + 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7c, - 0x0a, 0x0b, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x12, 0x35, 0x2e, + 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x6f, 0x73, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x88, + 0x01, 0x0a, 0x0f, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x12, 0x39, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, + 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x61, + 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, - 0x6f, 0x6b, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7f, 0x0a, 0x0c, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x73, 0x56, 0x32, 0x12, 0x36, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, - 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, - 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, - 0x6f, 0x6b, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x90, 0x01, - 0x0a, 0x11, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, - 0x6b, 0x56, 0x32, 0x12, 0x3b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, - 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x3c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, - 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, - 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, - 0x12, 0x9c, 0x01, 0x0a, 0x15, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, - 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x3f, 0x2e, 0x69, 0x6e, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, - 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x40, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, - 0x6d, 0x0a, 0x06, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7f, 0x0a, 0x0c, 0x46, 0x75, 0x6e, + 0x64, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x74, 0x65, 0x73, 0x12, 0x36, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, - 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x76, - 0x0a, 0x09, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x33, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x34, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, - 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7c, 0x0a, 0x0b, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x56, 0x32, 0x12, 0x35, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, - 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, - 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x94, 0x01, 0x0a, 0x13, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x61, - 0x62, 0x6c, 0x65, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3d, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, - 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, - 0x2e, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3e, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x0f, - 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, - 0x39, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, - 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x79, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x69, 0x6e, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x46, - 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7f, 0x0a, 0x0c, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, - 0x67, 0x52, 0x61, 0x74, 0x65, 0x73, 0x12, 0x36, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, - 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x69, - 0x6e, 0x67, 0x52, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x75, + 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, + 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x74, + 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8a, 0x01, 0x0a, 0x0f, 0x53, + 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x39, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x74, 0x65, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8a, 0x01, 0x0a, 0x0f, 0x53, 0x74, 0x72, 0x65, - 0x61, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x39, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, - 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, - 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x30, 0x01, 0x12, 0x81, 0x01, 0x0a, 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, - 0x72, 0x64, 0x65, 0x72, 0x73, 0x12, 0x36, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, + 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, + 0x72, 0x65, 0x61, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x90, 0x01, 0x0a, 0x11, 0x53, 0x74, 0x72, 0x65, + 0x61, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x56, 0x32, 0x12, 0x3b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x6d, 0x0a, 0x06, 0x54, 0x72, 0x61, 0x64, - 0x65, 0x73, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, - 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x73, 0x0a, 0x08, 0x54, 0x72, 0x61, 0x64, 0x65, - 0x73, 0x56, 0x32, 0x12, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x69, 0x6e, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, + 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x56, 0x32, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x81, 0x01, 0x0a, 0x0c, 0x53, + 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x12, 0x36, 0x2e, 0x69, 0x6e, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, + 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, - 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, 0x64, - 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x81, 0x01, 0x0a, - 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x12, 0x36, 0x2e, + 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x6d, + 0x0a, 0x06, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, + 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, + 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x73, 0x0a, + 0x08, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x12, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x72, + 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, - 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, - 0x12, 0x87, 0x01, 0x0a, 0x0e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, - 0x73, 0x56, 0x32, 0x12, 0x38, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x63, 0x2e, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x81, 0x01, 0x0a, 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, + 0x64, 0x65, 0x73, 0x12, 0x36, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, - 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x97, 0x01, 0x0a, 0x14, 0x53, - 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, + 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, + 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x87, 0x01, 0x0a, 0x0e, 0x53, 0x74, 0x72, 0x65, 0x61, + 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x12, 0x38, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, + 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, + 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, + 0x12, 0x97, 0x01, 0x0a, 0x14, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, + 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x3e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, + 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, + 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x97, 0x01, 0x0a, 0x14, 0x53, + 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x3e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x97, 0x01, 0x0a, 0x14, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x3e, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, - 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, - 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x82, - 0x01, 0x0a, 0x0d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, - 0x12, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, + 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x82, 0x01, 0x0a, 0x0d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, + 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x38, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, + 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, + 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x96, 0x01, 0x0a, 0x13, 0x53, 0x74, + 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x12, 0x3d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, + 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, + 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x3e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x69, 0x6e, 0x6a, 0x65, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, - 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x96, 0x01, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, - 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x3d, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, - 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3e, 0x2e, 0x69, 0x6e, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, - 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x42, 0x26, 0x5a, 0x24, - 0x2f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, - 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, - 0x70, 0x63, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, + 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x30, 0x01, 0x42, 0x26, 0x5a, 0x24, 0x2f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x33, } var ( @@ -7531,7 +7749,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescGZIP() return file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDescData } -var file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 70) +var file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 72) var file_goadesign_goagen_injective_derivative_exchange_rpc_proto_goTypes = []interface{}{ (*MarketsRequest)(nil), // 0: injective_derivative_exchange_rpc.MarketsRequest (*MarketsResponse)(nil), // 1: injective_derivative_exchange_rpc.MarketsResponse @@ -7582,27 +7800,29 @@ var file_goadesign_goagen_injective_derivative_exchange_rpc_proto_goTypes = []in (*FundingRate)(nil), // 46: injective_derivative_exchange_rpc.FundingRate (*StreamPositionsRequest)(nil), // 47: injective_derivative_exchange_rpc.StreamPositionsRequest (*StreamPositionsResponse)(nil), // 48: injective_derivative_exchange_rpc.StreamPositionsResponse - (*StreamOrdersRequest)(nil), // 49: injective_derivative_exchange_rpc.StreamOrdersRequest - (*StreamOrdersResponse)(nil), // 50: injective_derivative_exchange_rpc.StreamOrdersResponse - (*TradesRequest)(nil), // 51: injective_derivative_exchange_rpc.TradesRequest - (*TradesResponse)(nil), // 52: injective_derivative_exchange_rpc.TradesResponse - (*DerivativeTrade)(nil), // 53: injective_derivative_exchange_rpc.DerivativeTrade - (*PositionDelta)(nil), // 54: injective_derivative_exchange_rpc.PositionDelta - (*TradesV2Request)(nil), // 55: injective_derivative_exchange_rpc.TradesV2Request - (*TradesV2Response)(nil), // 56: injective_derivative_exchange_rpc.TradesV2Response - (*StreamTradesRequest)(nil), // 57: injective_derivative_exchange_rpc.StreamTradesRequest - (*StreamTradesResponse)(nil), // 58: injective_derivative_exchange_rpc.StreamTradesResponse - (*StreamTradesV2Request)(nil), // 59: injective_derivative_exchange_rpc.StreamTradesV2Request - (*StreamTradesV2Response)(nil), // 60: injective_derivative_exchange_rpc.StreamTradesV2Response - (*SubaccountOrdersListRequest)(nil), // 61: injective_derivative_exchange_rpc.SubaccountOrdersListRequest - (*SubaccountOrdersListResponse)(nil), // 62: injective_derivative_exchange_rpc.SubaccountOrdersListResponse - (*SubaccountTradesListRequest)(nil), // 63: injective_derivative_exchange_rpc.SubaccountTradesListRequest - (*SubaccountTradesListResponse)(nil), // 64: injective_derivative_exchange_rpc.SubaccountTradesListResponse - (*OrdersHistoryRequest)(nil), // 65: injective_derivative_exchange_rpc.OrdersHistoryRequest - (*OrdersHistoryResponse)(nil), // 66: injective_derivative_exchange_rpc.OrdersHistoryResponse - (*DerivativeOrderHistory)(nil), // 67: injective_derivative_exchange_rpc.DerivativeOrderHistory - (*StreamOrdersHistoryRequest)(nil), // 68: injective_derivative_exchange_rpc.StreamOrdersHistoryRequest - (*StreamOrdersHistoryResponse)(nil), // 69: injective_derivative_exchange_rpc.StreamOrdersHistoryResponse + (*StreamPositionsV2Request)(nil), // 49: injective_derivative_exchange_rpc.StreamPositionsV2Request + (*StreamPositionsV2Response)(nil), // 50: injective_derivative_exchange_rpc.StreamPositionsV2Response + (*StreamOrdersRequest)(nil), // 51: injective_derivative_exchange_rpc.StreamOrdersRequest + (*StreamOrdersResponse)(nil), // 52: injective_derivative_exchange_rpc.StreamOrdersResponse + (*TradesRequest)(nil), // 53: injective_derivative_exchange_rpc.TradesRequest + (*TradesResponse)(nil), // 54: injective_derivative_exchange_rpc.TradesResponse + (*DerivativeTrade)(nil), // 55: injective_derivative_exchange_rpc.DerivativeTrade + (*PositionDelta)(nil), // 56: injective_derivative_exchange_rpc.PositionDelta + (*TradesV2Request)(nil), // 57: injective_derivative_exchange_rpc.TradesV2Request + (*TradesV2Response)(nil), // 58: injective_derivative_exchange_rpc.TradesV2Response + (*StreamTradesRequest)(nil), // 59: injective_derivative_exchange_rpc.StreamTradesRequest + (*StreamTradesResponse)(nil), // 60: injective_derivative_exchange_rpc.StreamTradesResponse + (*StreamTradesV2Request)(nil), // 61: injective_derivative_exchange_rpc.StreamTradesV2Request + (*StreamTradesV2Response)(nil), // 62: injective_derivative_exchange_rpc.StreamTradesV2Response + (*SubaccountOrdersListRequest)(nil), // 63: injective_derivative_exchange_rpc.SubaccountOrdersListRequest + (*SubaccountOrdersListResponse)(nil), // 64: injective_derivative_exchange_rpc.SubaccountOrdersListResponse + (*SubaccountTradesListRequest)(nil), // 65: injective_derivative_exchange_rpc.SubaccountTradesListRequest + (*SubaccountTradesListResponse)(nil), // 66: injective_derivative_exchange_rpc.SubaccountTradesListResponse + (*OrdersHistoryRequest)(nil), // 67: injective_derivative_exchange_rpc.OrdersHistoryRequest + (*OrdersHistoryResponse)(nil), // 68: injective_derivative_exchange_rpc.OrdersHistoryResponse + (*DerivativeOrderHistory)(nil), // 69: injective_derivative_exchange_rpc.DerivativeOrderHistory + (*StreamOrdersHistoryRequest)(nil), // 70: injective_derivative_exchange_rpc.StreamOrdersHistoryRequest + (*StreamOrdersHistoryResponse)(nil), // 71: injective_derivative_exchange_rpc.StreamOrdersHistoryResponse } var file_goadesign_goagen_injective_derivative_exchange_rpc_proto_depIdxs = []int32{ 2, // 0: injective_derivative_exchange_rpc.MarketsResponse.markets:type_name -> injective_derivative_exchange_rpc.DerivativeMarketInfo @@ -7637,75 +7857,78 @@ var file_goadesign_goagen_injective_derivative_exchange_rpc_proto_depIdxs = []in 46, // 29: injective_derivative_exchange_rpc.FundingRatesResponse.funding_rates:type_name -> injective_derivative_exchange_rpc.FundingRate 14, // 30: injective_derivative_exchange_rpc.FundingRatesResponse.paging:type_name -> injective_derivative_exchange_rpc.Paging 35, // 31: injective_derivative_exchange_rpc.StreamPositionsResponse.position:type_name -> injective_derivative_exchange_rpc.DerivativePosition - 32, // 32: injective_derivative_exchange_rpc.StreamOrdersResponse.order:type_name -> injective_derivative_exchange_rpc.DerivativeLimitOrder - 53, // 33: injective_derivative_exchange_rpc.TradesResponse.trades:type_name -> injective_derivative_exchange_rpc.DerivativeTrade - 14, // 34: injective_derivative_exchange_rpc.TradesResponse.paging:type_name -> injective_derivative_exchange_rpc.Paging - 54, // 35: injective_derivative_exchange_rpc.DerivativeTrade.position_delta:type_name -> injective_derivative_exchange_rpc.PositionDelta - 53, // 36: injective_derivative_exchange_rpc.TradesV2Response.trades:type_name -> injective_derivative_exchange_rpc.DerivativeTrade - 14, // 37: injective_derivative_exchange_rpc.TradesV2Response.paging:type_name -> injective_derivative_exchange_rpc.Paging - 53, // 38: injective_derivative_exchange_rpc.StreamTradesResponse.trade:type_name -> injective_derivative_exchange_rpc.DerivativeTrade - 53, // 39: injective_derivative_exchange_rpc.StreamTradesV2Response.trade:type_name -> injective_derivative_exchange_rpc.DerivativeTrade - 32, // 40: injective_derivative_exchange_rpc.SubaccountOrdersListResponse.orders:type_name -> injective_derivative_exchange_rpc.DerivativeLimitOrder - 14, // 41: injective_derivative_exchange_rpc.SubaccountOrdersListResponse.paging:type_name -> injective_derivative_exchange_rpc.Paging - 53, // 42: injective_derivative_exchange_rpc.SubaccountTradesListResponse.trades:type_name -> injective_derivative_exchange_rpc.DerivativeTrade - 67, // 43: injective_derivative_exchange_rpc.OrdersHistoryResponse.orders:type_name -> injective_derivative_exchange_rpc.DerivativeOrderHistory - 14, // 44: injective_derivative_exchange_rpc.OrdersHistoryResponse.paging:type_name -> injective_derivative_exchange_rpc.Paging - 67, // 45: injective_derivative_exchange_rpc.StreamOrdersHistoryResponse.order:type_name -> injective_derivative_exchange_rpc.DerivativeOrderHistory - 0, // 46: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Markets:input_type -> injective_derivative_exchange_rpc.MarketsRequest - 7, // 47: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Market:input_type -> injective_derivative_exchange_rpc.MarketRequest - 9, // 48: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamMarket:input_type -> injective_derivative_exchange_rpc.StreamMarketRequest - 11, // 49: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.BinaryOptionsMarkets:input_type -> injective_derivative_exchange_rpc.BinaryOptionsMarketsRequest - 15, // 50: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.BinaryOptionsMarket:input_type -> injective_derivative_exchange_rpc.BinaryOptionsMarketRequest - 17, // 51: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.OrderbookV2:input_type -> injective_derivative_exchange_rpc.OrderbookV2Request - 21, // 52: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.OrderbooksV2:input_type -> injective_derivative_exchange_rpc.OrderbooksV2Request - 24, // 53: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrderbookV2:input_type -> injective_derivative_exchange_rpc.StreamOrderbookV2Request - 26, // 54: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrderbookUpdate:input_type -> injective_derivative_exchange_rpc.StreamOrderbookUpdateRequest - 30, // 55: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Orders:input_type -> injective_derivative_exchange_rpc.OrdersRequest - 33, // 56: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Positions:input_type -> injective_derivative_exchange_rpc.PositionsRequest - 36, // 57: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.PositionsV2:input_type -> injective_derivative_exchange_rpc.PositionsV2Request - 39, // 58: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.LiquidablePositions:input_type -> injective_derivative_exchange_rpc.LiquidablePositionsRequest - 41, // 59: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.FundingPayments:input_type -> injective_derivative_exchange_rpc.FundingPaymentsRequest - 44, // 60: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.FundingRates:input_type -> injective_derivative_exchange_rpc.FundingRatesRequest - 47, // 61: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamPositions:input_type -> injective_derivative_exchange_rpc.StreamPositionsRequest - 49, // 62: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrders:input_type -> injective_derivative_exchange_rpc.StreamOrdersRequest - 51, // 63: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Trades:input_type -> injective_derivative_exchange_rpc.TradesRequest - 55, // 64: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.TradesV2:input_type -> injective_derivative_exchange_rpc.TradesV2Request - 57, // 65: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamTrades:input_type -> injective_derivative_exchange_rpc.StreamTradesRequest - 59, // 66: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamTradesV2:input_type -> injective_derivative_exchange_rpc.StreamTradesV2Request - 61, // 67: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.SubaccountOrdersList:input_type -> injective_derivative_exchange_rpc.SubaccountOrdersListRequest - 63, // 68: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.SubaccountTradesList:input_type -> injective_derivative_exchange_rpc.SubaccountTradesListRequest - 65, // 69: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.OrdersHistory:input_type -> injective_derivative_exchange_rpc.OrdersHistoryRequest - 68, // 70: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrdersHistory:input_type -> injective_derivative_exchange_rpc.StreamOrdersHistoryRequest - 1, // 71: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Markets:output_type -> injective_derivative_exchange_rpc.MarketsResponse - 8, // 72: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Market:output_type -> injective_derivative_exchange_rpc.MarketResponse - 10, // 73: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamMarket:output_type -> injective_derivative_exchange_rpc.StreamMarketResponse - 12, // 74: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.BinaryOptionsMarkets:output_type -> injective_derivative_exchange_rpc.BinaryOptionsMarketsResponse - 16, // 75: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.BinaryOptionsMarket:output_type -> injective_derivative_exchange_rpc.BinaryOptionsMarketResponse - 18, // 76: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.OrderbookV2:output_type -> injective_derivative_exchange_rpc.OrderbookV2Response - 22, // 77: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.OrderbooksV2:output_type -> injective_derivative_exchange_rpc.OrderbooksV2Response - 25, // 78: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrderbookV2:output_type -> injective_derivative_exchange_rpc.StreamOrderbookV2Response - 27, // 79: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrderbookUpdate:output_type -> injective_derivative_exchange_rpc.StreamOrderbookUpdateResponse - 31, // 80: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Orders:output_type -> injective_derivative_exchange_rpc.OrdersResponse - 34, // 81: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Positions:output_type -> injective_derivative_exchange_rpc.PositionsResponse - 37, // 82: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.PositionsV2:output_type -> injective_derivative_exchange_rpc.PositionsV2Response - 40, // 83: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.LiquidablePositions:output_type -> injective_derivative_exchange_rpc.LiquidablePositionsResponse - 42, // 84: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.FundingPayments:output_type -> injective_derivative_exchange_rpc.FundingPaymentsResponse - 45, // 85: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.FundingRates:output_type -> injective_derivative_exchange_rpc.FundingRatesResponse - 48, // 86: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamPositions:output_type -> injective_derivative_exchange_rpc.StreamPositionsResponse - 50, // 87: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrders:output_type -> injective_derivative_exchange_rpc.StreamOrdersResponse - 52, // 88: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Trades:output_type -> injective_derivative_exchange_rpc.TradesResponse - 56, // 89: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.TradesV2:output_type -> injective_derivative_exchange_rpc.TradesV2Response - 58, // 90: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamTrades:output_type -> injective_derivative_exchange_rpc.StreamTradesResponse - 60, // 91: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamTradesV2:output_type -> injective_derivative_exchange_rpc.StreamTradesV2Response - 62, // 92: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.SubaccountOrdersList:output_type -> injective_derivative_exchange_rpc.SubaccountOrdersListResponse - 64, // 93: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.SubaccountTradesList:output_type -> injective_derivative_exchange_rpc.SubaccountTradesListResponse - 66, // 94: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.OrdersHistory:output_type -> injective_derivative_exchange_rpc.OrdersHistoryResponse - 69, // 95: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrdersHistory:output_type -> injective_derivative_exchange_rpc.StreamOrdersHistoryResponse - 71, // [71:96] is the sub-list for method output_type - 46, // [46:71] is the sub-list for method input_type - 46, // [46:46] is the sub-list for extension type_name - 46, // [46:46] is the sub-list for extension extendee - 0, // [0:46] is the sub-list for field type_name + 38, // 32: injective_derivative_exchange_rpc.StreamPositionsV2Response.position:type_name -> injective_derivative_exchange_rpc.DerivativePositionV2 + 32, // 33: injective_derivative_exchange_rpc.StreamOrdersResponse.order:type_name -> injective_derivative_exchange_rpc.DerivativeLimitOrder + 55, // 34: injective_derivative_exchange_rpc.TradesResponse.trades:type_name -> injective_derivative_exchange_rpc.DerivativeTrade + 14, // 35: injective_derivative_exchange_rpc.TradesResponse.paging:type_name -> injective_derivative_exchange_rpc.Paging + 56, // 36: injective_derivative_exchange_rpc.DerivativeTrade.position_delta:type_name -> injective_derivative_exchange_rpc.PositionDelta + 55, // 37: injective_derivative_exchange_rpc.TradesV2Response.trades:type_name -> injective_derivative_exchange_rpc.DerivativeTrade + 14, // 38: injective_derivative_exchange_rpc.TradesV2Response.paging:type_name -> injective_derivative_exchange_rpc.Paging + 55, // 39: injective_derivative_exchange_rpc.StreamTradesResponse.trade:type_name -> injective_derivative_exchange_rpc.DerivativeTrade + 55, // 40: injective_derivative_exchange_rpc.StreamTradesV2Response.trade:type_name -> injective_derivative_exchange_rpc.DerivativeTrade + 32, // 41: injective_derivative_exchange_rpc.SubaccountOrdersListResponse.orders:type_name -> injective_derivative_exchange_rpc.DerivativeLimitOrder + 14, // 42: injective_derivative_exchange_rpc.SubaccountOrdersListResponse.paging:type_name -> injective_derivative_exchange_rpc.Paging + 55, // 43: injective_derivative_exchange_rpc.SubaccountTradesListResponse.trades:type_name -> injective_derivative_exchange_rpc.DerivativeTrade + 69, // 44: injective_derivative_exchange_rpc.OrdersHistoryResponse.orders:type_name -> injective_derivative_exchange_rpc.DerivativeOrderHistory + 14, // 45: injective_derivative_exchange_rpc.OrdersHistoryResponse.paging:type_name -> injective_derivative_exchange_rpc.Paging + 69, // 46: injective_derivative_exchange_rpc.StreamOrdersHistoryResponse.order:type_name -> injective_derivative_exchange_rpc.DerivativeOrderHistory + 0, // 47: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Markets:input_type -> injective_derivative_exchange_rpc.MarketsRequest + 7, // 48: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Market:input_type -> injective_derivative_exchange_rpc.MarketRequest + 9, // 49: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamMarket:input_type -> injective_derivative_exchange_rpc.StreamMarketRequest + 11, // 50: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.BinaryOptionsMarkets:input_type -> injective_derivative_exchange_rpc.BinaryOptionsMarketsRequest + 15, // 51: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.BinaryOptionsMarket:input_type -> injective_derivative_exchange_rpc.BinaryOptionsMarketRequest + 17, // 52: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.OrderbookV2:input_type -> injective_derivative_exchange_rpc.OrderbookV2Request + 21, // 53: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.OrderbooksV2:input_type -> injective_derivative_exchange_rpc.OrderbooksV2Request + 24, // 54: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrderbookV2:input_type -> injective_derivative_exchange_rpc.StreamOrderbookV2Request + 26, // 55: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrderbookUpdate:input_type -> injective_derivative_exchange_rpc.StreamOrderbookUpdateRequest + 30, // 56: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Orders:input_type -> injective_derivative_exchange_rpc.OrdersRequest + 33, // 57: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Positions:input_type -> injective_derivative_exchange_rpc.PositionsRequest + 36, // 58: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.PositionsV2:input_type -> injective_derivative_exchange_rpc.PositionsV2Request + 39, // 59: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.LiquidablePositions:input_type -> injective_derivative_exchange_rpc.LiquidablePositionsRequest + 41, // 60: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.FundingPayments:input_type -> injective_derivative_exchange_rpc.FundingPaymentsRequest + 44, // 61: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.FundingRates:input_type -> injective_derivative_exchange_rpc.FundingRatesRequest + 47, // 62: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamPositions:input_type -> injective_derivative_exchange_rpc.StreamPositionsRequest + 49, // 63: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamPositionsV2:input_type -> injective_derivative_exchange_rpc.StreamPositionsV2Request + 51, // 64: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrders:input_type -> injective_derivative_exchange_rpc.StreamOrdersRequest + 53, // 65: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Trades:input_type -> injective_derivative_exchange_rpc.TradesRequest + 57, // 66: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.TradesV2:input_type -> injective_derivative_exchange_rpc.TradesV2Request + 59, // 67: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamTrades:input_type -> injective_derivative_exchange_rpc.StreamTradesRequest + 61, // 68: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamTradesV2:input_type -> injective_derivative_exchange_rpc.StreamTradesV2Request + 63, // 69: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.SubaccountOrdersList:input_type -> injective_derivative_exchange_rpc.SubaccountOrdersListRequest + 65, // 70: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.SubaccountTradesList:input_type -> injective_derivative_exchange_rpc.SubaccountTradesListRequest + 67, // 71: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.OrdersHistory:input_type -> injective_derivative_exchange_rpc.OrdersHistoryRequest + 70, // 72: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrdersHistory:input_type -> injective_derivative_exchange_rpc.StreamOrdersHistoryRequest + 1, // 73: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Markets:output_type -> injective_derivative_exchange_rpc.MarketsResponse + 8, // 74: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Market:output_type -> injective_derivative_exchange_rpc.MarketResponse + 10, // 75: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamMarket:output_type -> injective_derivative_exchange_rpc.StreamMarketResponse + 12, // 76: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.BinaryOptionsMarkets:output_type -> injective_derivative_exchange_rpc.BinaryOptionsMarketsResponse + 16, // 77: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.BinaryOptionsMarket:output_type -> injective_derivative_exchange_rpc.BinaryOptionsMarketResponse + 18, // 78: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.OrderbookV2:output_type -> injective_derivative_exchange_rpc.OrderbookV2Response + 22, // 79: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.OrderbooksV2:output_type -> injective_derivative_exchange_rpc.OrderbooksV2Response + 25, // 80: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrderbookV2:output_type -> injective_derivative_exchange_rpc.StreamOrderbookV2Response + 27, // 81: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrderbookUpdate:output_type -> injective_derivative_exchange_rpc.StreamOrderbookUpdateResponse + 31, // 82: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Orders:output_type -> injective_derivative_exchange_rpc.OrdersResponse + 34, // 83: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Positions:output_type -> injective_derivative_exchange_rpc.PositionsResponse + 37, // 84: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.PositionsV2:output_type -> injective_derivative_exchange_rpc.PositionsV2Response + 40, // 85: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.LiquidablePositions:output_type -> injective_derivative_exchange_rpc.LiquidablePositionsResponse + 42, // 86: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.FundingPayments:output_type -> injective_derivative_exchange_rpc.FundingPaymentsResponse + 45, // 87: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.FundingRates:output_type -> injective_derivative_exchange_rpc.FundingRatesResponse + 48, // 88: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamPositions:output_type -> injective_derivative_exchange_rpc.StreamPositionsResponse + 50, // 89: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamPositionsV2:output_type -> injective_derivative_exchange_rpc.StreamPositionsV2Response + 52, // 90: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrders:output_type -> injective_derivative_exchange_rpc.StreamOrdersResponse + 54, // 91: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.Trades:output_type -> injective_derivative_exchange_rpc.TradesResponse + 58, // 92: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.TradesV2:output_type -> injective_derivative_exchange_rpc.TradesV2Response + 60, // 93: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamTrades:output_type -> injective_derivative_exchange_rpc.StreamTradesResponse + 62, // 94: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamTradesV2:output_type -> injective_derivative_exchange_rpc.StreamTradesV2Response + 64, // 95: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.SubaccountOrdersList:output_type -> injective_derivative_exchange_rpc.SubaccountOrdersListResponse + 66, // 96: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.SubaccountTradesList:output_type -> injective_derivative_exchange_rpc.SubaccountTradesListResponse + 68, // 97: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.OrdersHistory:output_type -> injective_derivative_exchange_rpc.OrdersHistoryResponse + 71, // 98: injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC.StreamOrdersHistory:output_type -> injective_derivative_exchange_rpc.StreamOrdersHistoryResponse + 73, // [73:99] is the sub-list for method output_type + 47, // [47:73] is the sub-list for method input_type + 47, // [47:47] is the sub-list for extension type_name + 47, // [47:47] is the sub-list for extension extendee + 0, // [0:47] is the sub-list for field type_name } func init() { file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() } @@ -8303,7 +8526,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StreamOrdersRequest); i { + switch v := v.(*StreamPositionsV2Request); i { case 0: return &v.state case 1: @@ -8315,7 +8538,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StreamOrdersResponse); i { + switch v := v.(*StreamPositionsV2Response); i { case 0: return &v.state case 1: @@ -8327,7 +8550,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TradesRequest); i { + switch v := v.(*StreamOrdersRequest); i { case 0: return &v.state case 1: @@ -8339,7 +8562,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TradesResponse); i { + switch v := v.(*StreamOrdersResponse); i { case 0: return &v.state case 1: @@ -8351,7 +8574,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DerivativeTrade); i { + switch v := v.(*TradesRequest); i { case 0: return &v.state case 1: @@ -8363,7 +8586,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PositionDelta); i { + switch v := v.(*TradesResponse); i { case 0: return &v.state case 1: @@ -8375,7 +8598,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TradesV2Request); i { + switch v := v.(*DerivativeTrade); i { case 0: return &v.state case 1: @@ -8387,7 +8610,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TradesV2Response); i { + switch v := v.(*PositionDelta); i { case 0: return &v.state case 1: @@ -8399,7 +8622,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StreamTradesRequest); i { + switch v := v.(*TradesV2Request); i { case 0: return &v.state case 1: @@ -8411,7 +8634,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StreamTradesResponse); i { + switch v := v.(*TradesV2Response); i { case 0: return &v.state case 1: @@ -8423,7 +8646,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StreamTradesV2Request); i { + switch v := v.(*StreamTradesRequest); i { case 0: return &v.state case 1: @@ -8435,7 +8658,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StreamTradesV2Response); i { + switch v := v.(*StreamTradesResponse); i { case 0: return &v.state case 1: @@ -8447,7 +8670,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountOrdersListRequest); i { + switch v := v.(*StreamTradesV2Request); i { case 0: return &v.state case 1: @@ -8459,7 +8682,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountOrdersListResponse); i { + switch v := v.(*StreamTradesV2Response); i { case 0: return &v.state case 1: @@ -8471,7 +8694,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountTradesListRequest); i { + switch v := v.(*SubaccountOrdersListRequest); i { case 0: return &v.state case 1: @@ -8483,7 +8706,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubaccountTradesListResponse); i { + switch v := v.(*SubaccountOrdersListResponse); i { case 0: return &v.state case 1: @@ -8495,7 +8718,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OrdersHistoryRequest); i { + switch v := v.(*SubaccountTradesListRequest); i { case 0: return &v.state case 1: @@ -8507,7 +8730,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OrdersHistoryResponse); i { + switch v := v.(*SubaccountTradesListResponse); i { case 0: return &v.state case 1: @@ -8519,7 +8742,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DerivativeOrderHistory); i { + switch v := v.(*OrdersHistoryRequest); i { case 0: return &v.state case 1: @@ -8531,7 +8754,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StreamOrdersHistoryRequest); i { + switch v := v.(*OrdersHistoryResponse); i { case 0: return &v.state case 1: @@ -8543,6 +8766,30 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DerivativeOrderHistory); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*StreamOrdersHistoryRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_injective_derivative_exchange_rpc_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StreamOrdersHistoryResponse); i { case 0: return &v.state @@ -8561,7 +8808,7 @@ func file_goadesign_goagen_injective_derivative_exchange_rpc_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_goadesign_goagen_injective_derivative_exchange_rpc_proto_rawDesc, NumEnums: 0, - NumMessages: 70, + NumMessages: 72, NumExtensions: 0, NumServices: 1, }, diff --git a/exchange/derivative_exchange_rpc/pb/goadesign_goagen_injective_derivative_exchange_rpc_grpc.pb.go b/exchange/derivative_exchange_rpc/pb/goadesign_goagen_injective_derivative_exchange_rpc_grpc.pb.go index 3fe28e50..950476b0 100644 --- a/exchange/derivative_exchange_rpc/pb/goadesign_goagen_injective_derivative_exchange_rpc_grpc.pb.go +++ b/exchange/derivative_exchange_rpc/pb/goadesign_goagen_injective_derivative_exchange_rpc_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.2.0 -// - protoc v3.19.4 +// - protoc v4.24.4 // source: goadesign_goagen_injective_derivative_exchange_rpc.proto package injective_derivative_exchange_rpcpb @@ -53,8 +53,11 @@ type InjectiveDerivativeExchangeRPCClient interface { FundingPayments(ctx context.Context, in *FundingPaymentsRequest, opts ...grpc.CallOption) (*FundingPaymentsResponse, error) // FundingRates gets the historical funding rates for a market. FundingRates(ctx context.Context, in *FundingRatesRequest, opts ...grpc.CallOption) (*FundingRatesResponse, error) - // StreamPositions streams derivatives position updates. + // StreamPositions streams derivatives position updates. This is the legacy + // version of the streamPositionsV2 endpoint. Use streamPositionsV2 instead. StreamPositions(ctx context.Context, in *StreamPositionsRequest, opts ...grpc.CallOption) (InjectiveDerivativeExchangeRPC_StreamPositionsClient, error) + // StreamPositionsV2 streams derivatives position updates. + StreamPositionsV2(ctx context.Context, in *StreamPositionsV2Request, opts ...grpc.CallOption) (InjectiveDerivativeExchangeRPC_StreamPositionsV2Client, error) // StreamOrders streams updates to individual orders of a Derivative Market. StreamOrders(ctx context.Context, in *StreamOrdersRequest, opts ...grpc.CallOption) (InjectiveDerivativeExchangeRPC_StreamOrdersClient, error) // Trades gets the trades of a Derivative Market. @@ -320,8 +323,40 @@ func (x *injectiveDerivativeExchangeRPCStreamPositionsClient) Recv() (*StreamPos return m, nil } +func (c *injectiveDerivativeExchangeRPCClient) StreamPositionsV2(ctx context.Context, in *StreamPositionsV2Request, opts ...grpc.CallOption) (InjectiveDerivativeExchangeRPC_StreamPositionsV2Client, error) { + stream, err := c.cc.NewStream(ctx, &InjectiveDerivativeExchangeRPC_ServiceDesc.Streams[4], "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamPositionsV2", opts...) + if err != nil { + return nil, err + } + x := &injectiveDerivativeExchangeRPCStreamPositionsV2Client{stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type InjectiveDerivativeExchangeRPC_StreamPositionsV2Client interface { + Recv() (*StreamPositionsV2Response, error) + grpc.ClientStream +} + +type injectiveDerivativeExchangeRPCStreamPositionsV2Client struct { + grpc.ClientStream +} + +func (x *injectiveDerivativeExchangeRPCStreamPositionsV2Client) Recv() (*StreamPositionsV2Response, error) { + m := new(StreamPositionsV2Response) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + func (c *injectiveDerivativeExchangeRPCClient) StreamOrders(ctx context.Context, in *StreamOrdersRequest, opts ...grpc.CallOption) (InjectiveDerivativeExchangeRPC_StreamOrdersClient, error) { - stream, err := c.cc.NewStream(ctx, &InjectiveDerivativeExchangeRPC_ServiceDesc.Streams[4], "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamOrders", opts...) + stream, err := c.cc.NewStream(ctx, &InjectiveDerivativeExchangeRPC_ServiceDesc.Streams[5], "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamOrders", opts...) if err != nil { return nil, err } @@ -371,7 +406,7 @@ func (c *injectiveDerivativeExchangeRPCClient) TradesV2(ctx context.Context, in } func (c *injectiveDerivativeExchangeRPCClient) StreamTrades(ctx context.Context, in *StreamTradesRequest, opts ...grpc.CallOption) (InjectiveDerivativeExchangeRPC_StreamTradesClient, error) { - stream, err := c.cc.NewStream(ctx, &InjectiveDerivativeExchangeRPC_ServiceDesc.Streams[5], "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamTrades", opts...) + stream, err := c.cc.NewStream(ctx, &InjectiveDerivativeExchangeRPC_ServiceDesc.Streams[6], "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamTrades", opts...) if err != nil { return nil, err } @@ -403,7 +438,7 @@ func (x *injectiveDerivativeExchangeRPCStreamTradesClient) Recv() (*StreamTrades } func (c *injectiveDerivativeExchangeRPCClient) StreamTradesV2(ctx context.Context, in *StreamTradesV2Request, opts ...grpc.CallOption) (InjectiveDerivativeExchangeRPC_StreamTradesV2Client, error) { - stream, err := c.cc.NewStream(ctx, &InjectiveDerivativeExchangeRPC_ServiceDesc.Streams[6], "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamTradesV2", opts...) + stream, err := c.cc.NewStream(ctx, &InjectiveDerivativeExchangeRPC_ServiceDesc.Streams[7], "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamTradesV2", opts...) if err != nil { return nil, err } @@ -462,7 +497,7 @@ func (c *injectiveDerivativeExchangeRPCClient) OrdersHistory(ctx context.Context } func (c *injectiveDerivativeExchangeRPCClient) StreamOrdersHistory(ctx context.Context, in *StreamOrdersHistoryRequest, opts ...grpc.CallOption) (InjectiveDerivativeExchangeRPC_StreamOrdersHistoryClient, error) { - stream, err := c.cc.NewStream(ctx, &InjectiveDerivativeExchangeRPC_ServiceDesc.Streams[7], "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamOrdersHistory", opts...) + stream, err := c.cc.NewStream(ctx, &InjectiveDerivativeExchangeRPC_ServiceDesc.Streams[8], "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamOrdersHistory", opts...) if err != nil { return nil, err } @@ -528,8 +563,11 @@ type InjectiveDerivativeExchangeRPCServer interface { FundingPayments(context.Context, *FundingPaymentsRequest) (*FundingPaymentsResponse, error) // FundingRates gets the historical funding rates for a market. FundingRates(context.Context, *FundingRatesRequest) (*FundingRatesResponse, error) - // StreamPositions streams derivatives position updates. + // StreamPositions streams derivatives position updates. This is the legacy + // version of the streamPositionsV2 endpoint. Use streamPositionsV2 instead. StreamPositions(*StreamPositionsRequest, InjectiveDerivativeExchangeRPC_StreamPositionsServer) error + // StreamPositionsV2 streams derivatives position updates. + StreamPositionsV2(*StreamPositionsV2Request, InjectiveDerivativeExchangeRPC_StreamPositionsV2Server) error // StreamOrders streams updates to individual orders of a Derivative Market. StreamOrders(*StreamOrdersRequest, InjectiveDerivativeExchangeRPC_StreamOrdersServer) error // Trades gets the trades of a Derivative Market. @@ -604,6 +642,9 @@ func (UnimplementedInjectiveDerivativeExchangeRPCServer) FundingRates(context.Co func (UnimplementedInjectiveDerivativeExchangeRPCServer) StreamPositions(*StreamPositionsRequest, InjectiveDerivativeExchangeRPC_StreamPositionsServer) error { return status.Errorf(codes.Unimplemented, "method StreamPositions not implemented") } +func (UnimplementedInjectiveDerivativeExchangeRPCServer) StreamPositionsV2(*StreamPositionsV2Request, InjectiveDerivativeExchangeRPC_StreamPositionsV2Server) error { + return status.Errorf(codes.Unimplemented, "method StreamPositionsV2 not implemented") +} func (UnimplementedInjectiveDerivativeExchangeRPCServer) StreamOrders(*StreamOrdersRequest, InjectiveDerivativeExchangeRPC_StreamOrdersServer) error { return status.Errorf(codes.Unimplemented, "method StreamOrders not implemented") } @@ -945,6 +986,27 @@ func (x *injectiveDerivativeExchangeRPCStreamPositionsServer) Send(m *StreamPosi return x.ServerStream.SendMsg(m) } +func _InjectiveDerivativeExchangeRPC_StreamPositionsV2_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(StreamPositionsV2Request) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(InjectiveDerivativeExchangeRPCServer).StreamPositionsV2(m, &injectiveDerivativeExchangeRPCStreamPositionsV2Server{stream}) +} + +type InjectiveDerivativeExchangeRPC_StreamPositionsV2Server interface { + Send(*StreamPositionsV2Response) error + grpc.ServerStream +} + +type injectiveDerivativeExchangeRPCStreamPositionsV2Server struct { + grpc.ServerStream +} + +func (x *injectiveDerivativeExchangeRPCStreamPositionsV2Server) Send(m *StreamPositionsV2Response) error { + return x.ServerStream.SendMsg(m) +} + func _InjectiveDerivativeExchangeRPC_StreamOrders_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(StreamOrdersRequest) if err := stream.RecvMsg(m); err != nil { @@ -1216,6 +1278,11 @@ var InjectiveDerivativeExchangeRPC_ServiceDesc = grpc.ServiceDesc{ Handler: _InjectiveDerivativeExchangeRPC_StreamPositions_Handler, ServerStreams: true, }, + { + StreamName: "StreamPositionsV2", + Handler: _InjectiveDerivativeExchangeRPC_StreamPositionsV2_Handler, + ServerStreams: true, + }, { StreamName: "StreamOrders", Handler: _InjectiveDerivativeExchangeRPC_StreamOrders_Handler, diff --git a/exchange/derivative_exchange_rpc/pb/injective_derivative_exchange_rpc.pb.gw.go b/exchange/derivative_exchange_rpc/pb/injective_derivative_exchange_rpc.pb.gw.go deleted file mode 100644 index 952d119a..00000000 --- a/exchange/derivative_exchange_rpc/pb/injective_derivative_exchange_rpc.pb.gw.go +++ /dev/null @@ -1,1995 +0,0 @@ -// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: injective_derivative_exchange_rpc.proto - -/* -Package injective_derivative_exchange_rpcpb is a reverse proxy. - -It translates gRPC into RESTful JSON APIs. -*/ -package injective_derivative_exchange_rpcpb - -import ( - "context" - "io" - "net/http" - - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" - "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/grpclog" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/proto" -) - -// Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = metadata.Join - -func request_InjectiveDerivativeExchangeRPC_Markets_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq MarketsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Markets(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_Markets_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq MarketsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Markets(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_Market_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq MarketRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Market(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_Market_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq MarketRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Market(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_StreamMarket_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveDerivativeExchangeRPC_StreamMarketClient, runtime.ServerMetadata, error) { - var protoReq StreamMarketRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamMarket(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveDerivativeExchangeRPC_BinaryOptionsMarkets_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq BinaryOptionsMarketsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.BinaryOptionsMarkets(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_BinaryOptionsMarkets_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq BinaryOptionsMarketsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.BinaryOptionsMarkets(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_BinaryOptionsMarket_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq BinaryOptionsMarketRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.BinaryOptionsMarket(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_BinaryOptionsMarket_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq BinaryOptionsMarketRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.BinaryOptionsMarket(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_OrderbookV2_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrderbookV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.OrderbookV2(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_OrderbookV2_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrderbookV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.OrderbookV2(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_OrderbooksV2_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrderbooksV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.OrderbooksV2(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_OrderbooksV2_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrderbooksV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.OrderbooksV2(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_StreamOrderbookV2_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveDerivativeExchangeRPC_StreamOrderbookV2Client, runtime.ServerMetadata, error) { - var protoReq StreamOrderbookV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamOrderbookV2(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveDerivativeExchangeRPC_StreamOrderbookUpdate_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveDerivativeExchangeRPC_StreamOrderbookUpdateClient, runtime.ServerMetadata, error) { - var protoReq StreamOrderbookUpdateRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamOrderbookUpdate(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveDerivativeExchangeRPC_Orders_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrdersRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Orders(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_Orders_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrdersRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Orders(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_Positions_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PositionsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Positions(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_Positions_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PositionsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Positions(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_PositionsV2_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PositionsV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.PositionsV2(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_PositionsV2_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PositionsV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.PositionsV2(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_LiquidablePositions_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq LiquidablePositionsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.LiquidablePositions(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_LiquidablePositions_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq LiquidablePositionsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.LiquidablePositions(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_FundingPayments_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq FundingPaymentsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.FundingPayments(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_FundingPayments_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq FundingPaymentsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.FundingPayments(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_FundingRates_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq FundingRatesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.FundingRates(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_FundingRates_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq FundingRatesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.FundingRates(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_StreamPositions_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveDerivativeExchangeRPC_StreamPositionsClient, runtime.ServerMetadata, error) { - var protoReq StreamPositionsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamPositions(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveDerivativeExchangeRPC_StreamOrders_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveDerivativeExchangeRPC_StreamOrdersClient, runtime.ServerMetadata, error) { - var protoReq StreamOrdersRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamOrders(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveDerivativeExchangeRPC_Trades_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq TradesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Trades(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_Trades_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq TradesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Trades(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_TradesV2_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq TradesV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.TradesV2(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_TradesV2_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq TradesV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.TradesV2(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_StreamTrades_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveDerivativeExchangeRPC_StreamTradesClient, runtime.ServerMetadata, error) { - var protoReq StreamTradesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamTrades(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveDerivativeExchangeRPC_StreamTradesV2_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveDerivativeExchangeRPC_StreamTradesV2Client, runtime.ServerMetadata, error) { - var protoReq StreamTradesV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamTradesV2(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveDerivativeExchangeRPC_SubaccountOrdersList_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountOrdersListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.SubaccountOrdersList(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_SubaccountOrdersList_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountOrdersListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.SubaccountOrdersList(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_SubaccountTradesList_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountTradesListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.SubaccountTradesList(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_SubaccountTradesList_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountTradesListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.SubaccountTradesList(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_OrdersHistory_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrdersHistoryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.OrdersHistory(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveDerivativeExchangeRPC_OrdersHistory_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveDerivativeExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrdersHistoryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.OrdersHistory(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveDerivativeExchangeRPC_StreamOrdersHistory_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveDerivativeExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveDerivativeExchangeRPC_StreamOrdersHistoryClient, runtime.ServerMetadata, error) { - var protoReq StreamOrdersHistoryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamOrdersHistory(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -// RegisterInjectiveDerivativeExchangeRPCHandlerServer registers the http handlers for service InjectiveDerivativeExchangeRPC to "mux". -// UnaryRPC :call InjectiveDerivativeExchangeRPCServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterInjectiveDerivativeExchangeRPCHandlerFromEndpoint instead. -func RegisterInjectiveDerivativeExchangeRPCHandlerServer(ctx context.Context, mux *runtime.ServeMux, server InjectiveDerivativeExchangeRPCServer) error { - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_Markets_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Markets", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Markets")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_Markets_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_Markets_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_Market_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Market", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Market")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_Market_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_Market_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamMarket_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_BinaryOptionsMarkets_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/BinaryOptionsMarkets", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/BinaryOptionsMarkets")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_BinaryOptionsMarkets_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_BinaryOptionsMarkets_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_BinaryOptionsMarket_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/BinaryOptionsMarket", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/BinaryOptionsMarket")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_BinaryOptionsMarket_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_BinaryOptionsMarket_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_OrderbookV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/OrderbookV2", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/OrderbookV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_OrderbookV2_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_OrderbookV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_OrderbooksV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/OrderbooksV2", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/OrderbooksV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_OrderbooksV2_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_OrderbooksV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamOrderbookV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamOrderbookUpdate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_Orders_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Orders", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Orders")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_Orders_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_Orders_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_Positions_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Positions", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Positions")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_Positions_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_Positions_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_PositionsV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/PositionsV2", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/PositionsV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_PositionsV2_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_PositionsV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_LiquidablePositions_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/LiquidablePositions", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/LiquidablePositions")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_LiquidablePositions_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_LiquidablePositions_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_FundingPayments_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/FundingPayments", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/FundingPayments")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_FundingPayments_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_FundingPayments_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_FundingRates_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/FundingRates", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/FundingRates")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_FundingRates_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_FundingRates_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamPositions_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamOrders_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_Trades_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Trades", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Trades")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_Trades_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_Trades_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_TradesV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/TradesV2", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/TradesV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_TradesV2_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_TradesV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamTrades_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamTradesV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_SubaccountOrdersList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/SubaccountOrdersList", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/SubaccountOrdersList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_SubaccountOrdersList_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_SubaccountOrdersList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_SubaccountTradesList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/SubaccountTradesList", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/SubaccountTradesList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_SubaccountTradesList_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_SubaccountTradesList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_OrdersHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/OrdersHistory", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/OrdersHistory")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveDerivativeExchangeRPC_OrdersHistory_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_OrdersHistory_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamOrdersHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - return nil -} - -// RegisterInjectiveDerivativeExchangeRPCHandlerFromEndpoint is same as RegisterInjectiveDerivativeExchangeRPCHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterInjectiveDerivativeExchangeRPCHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterInjectiveDerivativeExchangeRPCHandler(ctx, mux, conn) -} - -// RegisterInjectiveDerivativeExchangeRPCHandler registers the http handlers for service InjectiveDerivativeExchangeRPC to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterInjectiveDerivativeExchangeRPCHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterInjectiveDerivativeExchangeRPCHandlerClient(ctx, mux, NewInjectiveDerivativeExchangeRPCClient(conn)) -} - -// RegisterInjectiveDerivativeExchangeRPCHandlerClient registers the http handlers for service InjectiveDerivativeExchangeRPC -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "InjectiveDerivativeExchangeRPCClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "InjectiveDerivativeExchangeRPCClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "InjectiveDerivativeExchangeRPCClient" to call the correct interceptors. -func RegisterInjectiveDerivativeExchangeRPCHandlerClient(ctx context.Context, mux *runtime.ServeMux, client InjectiveDerivativeExchangeRPCClient) error { - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_Markets_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Markets", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Markets")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_Markets_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_Markets_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_Market_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Market", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Market")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_Market_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_Market_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamMarket_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamMarket", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamMarket")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_StreamMarket_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_StreamMarket_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_BinaryOptionsMarkets_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/BinaryOptionsMarkets", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/BinaryOptionsMarkets")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_BinaryOptionsMarkets_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_BinaryOptionsMarkets_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_BinaryOptionsMarket_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/BinaryOptionsMarket", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/BinaryOptionsMarket")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_BinaryOptionsMarket_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_BinaryOptionsMarket_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_OrderbookV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/OrderbookV2", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/OrderbookV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_OrderbookV2_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_OrderbookV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_OrderbooksV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/OrderbooksV2", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/OrderbooksV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_OrderbooksV2_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_OrderbooksV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamOrderbookV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamOrderbookV2", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamOrderbookV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_StreamOrderbookV2_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_StreamOrderbookV2_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamOrderbookUpdate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamOrderbookUpdate", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamOrderbookUpdate")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_StreamOrderbookUpdate_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_StreamOrderbookUpdate_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_Orders_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Orders", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Orders")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_Orders_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_Orders_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_Positions_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Positions", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Positions")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_Positions_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_Positions_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_PositionsV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/PositionsV2", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/PositionsV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_PositionsV2_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_PositionsV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_LiquidablePositions_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/LiquidablePositions", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/LiquidablePositions")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_LiquidablePositions_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_LiquidablePositions_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_FundingPayments_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/FundingPayments", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/FundingPayments")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_FundingPayments_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_FundingPayments_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_FundingRates_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/FundingRates", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/FundingRates")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_FundingRates_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_FundingRates_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamPositions_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamPositions", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamPositions")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_StreamPositions_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_StreamPositions_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamOrders_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamOrders", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamOrders")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_StreamOrders_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_StreamOrders_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_Trades_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Trades", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/Trades")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_Trades_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_Trades_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_TradesV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/TradesV2", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/TradesV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_TradesV2_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_TradesV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamTrades_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamTrades", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamTrades")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_StreamTrades_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_StreamTrades_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamTradesV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamTradesV2", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamTradesV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_StreamTradesV2_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_StreamTradesV2_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_SubaccountOrdersList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/SubaccountOrdersList", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/SubaccountOrdersList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_SubaccountOrdersList_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_SubaccountOrdersList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_SubaccountTradesList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/SubaccountTradesList", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/SubaccountTradesList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_SubaccountTradesList_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_SubaccountTradesList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_OrdersHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/OrdersHistory", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/OrdersHistory")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_OrdersHistory_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_OrdersHistory_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveDerivativeExchangeRPC_StreamOrdersHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamOrdersHistory", runtime.WithHTTPPathPattern("/injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC/StreamOrdersHistory")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveDerivativeExchangeRPC_StreamOrdersHistory_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveDerivativeExchangeRPC_StreamOrdersHistory_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -var ( - pattern_InjectiveDerivativeExchangeRPC_Markets_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "Markets"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_Market_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "Market"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_StreamMarket_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "StreamMarket"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_BinaryOptionsMarkets_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "BinaryOptionsMarkets"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_BinaryOptionsMarket_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "BinaryOptionsMarket"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_OrderbookV2_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "OrderbookV2"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_OrderbooksV2_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "OrderbooksV2"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_StreamOrderbookV2_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "StreamOrderbookV2"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_StreamOrderbookUpdate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "StreamOrderbookUpdate"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_Orders_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "Orders"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_Positions_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "Positions"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_PositionsV2_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "PositionsV2"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_LiquidablePositions_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "LiquidablePositions"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_FundingPayments_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "FundingPayments"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_FundingRates_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "FundingRates"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_StreamPositions_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "StreamPositions"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_StreamOrders_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "StreamOrders"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_Trades_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "Trades"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_TradesV2_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "TradesV2"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_StreamTrades_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "StreamTrades"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_StreamTradesV2_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "StreamTradesV2"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_SubaccountOrdersList_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "SubaccountOrdersList"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_SubaccountTradesList_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "SubaccountTradesList"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_OrdersHistory_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "OrdersHistory"}, "")) - - pattern_InjectiveDerivativeExchangeRPC_StreamOrdersHistory_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_derivative_exchange_rpc.InjectiveDerivativeExchangeRPC", "StreamOrdersHistory"}, "")) -) - -var ( - forward_InjectiveDerivativeExchangeRPC_Markets_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_Market_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_StreamMarket_0 = runtime.ForwardResponseStream - - forward_InjectiveDerivativeExchangeRPC_BinaryOptionsMarkets_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_BinaryOptionsMarket_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_OrderbookV2_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_OrderbooksV2_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_StreamOrderbookV2_0 = runtime.ForwardResponseStream - - forward_InjectiveDerivativeExchangeRPC_StreamOrderbookUpdate_0 = runtime.ForwardResponseStream - - forward_InjectiveDerivativeExchangeRPC_Orders_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_Positions_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_PositionsV2_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_LiquidablePositions_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_FundingPayments_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_FundingRates_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_StreamPositions_0 = runtime.ForwardResponseStream - - forward_InjectiveDerivativeExchangeRPC_StreamOrders_0 = runtime.ForwardResponseStream - - forward_InjectiveDerivativeExchangeRPC_Trades_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_TradesV2_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_StreamTrades_0 = runtime.ForwardResponseStream - - forward_InjectiveDerivativeExchangeRPC_StreamTradesV2_0 = runtime.ForwardResponseStream - - forward_InjectiveDerivativeExchangeRPC_SubaccountOrdersList_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_SubaccountTradesList_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_OrdersHistory_0 = runtime.ForwardResponseMessage - - forward_InjectiveDerivativeExchangeRPC_StreamOrdersHistory_0 = runtime.ForwardResponseStream -) diff --git a/exchange/derivative_exchange_rpc/pb/injective_derivative_exchange_rpc.proto b/exchange/derivative_exchange_rpc/pb/injective_derivative_exchange_rpc.proto deleted file mode 100644 index 468da6c6..00000000 --- a/exchange/derivative_exchange_rpc/pb/injective_derivative_exchange_rpc.proto +++ /dev/null @@ -1,1071 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// InjectiveDerivativeExchangeRPC protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -syntax = "proto3"; - -package injective_derivative_exchange_rpc; - -option go_package = "/injective_derivative_exchange_rpcpb"; - -// InjectiveDerivativeExchangeRPC defines gRPC API of Derivative Markets -// provider. -service InjectiveDerivativeExchangeRPC { - // Markets gets a list of Derivative Markets - rpc Markets (MarketsRequest) returns (MarketsResponse); - // Market gets details of a single derivative market - rpc Market (MarketRequest) returns (MarketResponse); - // StreamMarket streams live updates of selected derivative markets - rpc StreamMarket (StreamMarketRequest) returns (stream StreamMarketResponse); - // BinaryOptionsMarkets gets a list of Binary Options Markets - rpc BinaryOptionsMarkets (BinaryOptionsMarketsRequest) returns (BinaryOptionsMarketsResponse); - // BinaryOptionMarket gets details of a single binary options market - rpc BinaryOptionsMarket (BinaryOptionsMarketRequest) returns (BinaryOptionsMarketResponse); - // Orderbook gets the Orderbook of a Derivative Market - rpc OrderbookV2 (OrderbookV2Request) returns (OrderbookV2Response); - // Orderbooks gets the Orderbooks of requested derivative markets - rpc OrderbooksV2 (OrderbooksV2Request) returns (OrderbooksV2Response); - // Stream live snapshot updates of selected derivative market orderbook - rpc StreamOrderbookV2 (StreamOrderbookV2Request) returns (stream StreamOrderbookV2Response); - // Stream live level updates of selected derivative market orderbook - rpc StreamOrderbookUpdate (StreamOrderbookUpdateRequest) returns (stream StreamOrderbookUpdateResponse); - // DerivativeLimitOrders gets the limit orders of a derivative Market. - rpc Orders (OrdersRequest) returns (OrdersResponse); - // Positions gets the positions for a trader. - rpc Positions (PositionsRequest) returns (PositionsResponse); - // Positions gets the positions for a trader. V2 removed some redundant fields -// and had performance improvements - rpc PositionsV2 (PositionsV2Request) returns (PositionsV2Response); - // LiquidablePositions gets all the liquidable positions. - rpc LiquidablePositions (LiquidablePositionsRequest) returns (LiquidablePositionsResponse); - // FundingPayments gets the funding payments for a trader. - rpc FundingPayments (FundingPaymentsRequest) returns (FundingPaymentsResponse); - // FundingRates gets the historical funding rates for a market. - rpc FundingRates (FundingRatesRequest) returns (FundingRatesResponse); - // StreamPositions streams derivatives position updates. - rpc StreamPositions (StreamPositionsRequest) returns (stream StreamPositionsResponse); - // StreamOrders streams updates to individual orders of a Derivative Market. - rpc StreamOrders (StreamOrdersRequest) returns (stream StreamOrdersResponse); - // Trades gets the trades of a Derivative Market. - rpc Trades (TradesRequest) returns (TradesResponse); - // Trades gets the trades of a Derivative Market. - rpc TradesV2 (TradesV2Request) returns (TradesV2Response); - // StreamTrades streams newly executed trades from Derivative Market. - rpc StreamTrades (StreamTradesRequest) returns (stream StreamTradesResponse); - // StreamTrades streams newly executed trades from Derivative Market. - rpc StreamTradesV2 (StreamTradesV2Request) returns (stream StreamTradesV2Response); - // SubaccountOrdersList lists orders posted from this subaccount. - rpc SubaccountOrdersList (SubaccountOrdersListRequest) returns (SubaccountOrdersListResponse); - // SubaccountTradesList gets a list of derivatives trades executed by this -// subaccount. - rpc SubaccountTradesList (SubaccountTradesListRequest) returns (SubaccountTradesListResponse); - // Lists history orders posted from a subaccount - rpc OrdersHistory (OrdersHistoryRequest) returns (OrdersHistoryResponse); - // Stream updates to historical orders of a derivative Market - rpc StreamOrdersHistory (StreamOrdersHistoryRequest) returns (stream StreamOrdersHistoryResponse); -} - -message MarketsRequest { - // Filter by market status - string market_status = 1; - // Filter by the Coin denomination of the quote currency - string quote_denom = 2; - repeated string market_statuses = 3; -} - -message MarketsResponse { - // Derivative Markets list - repeated DerivativeMarketInfo markets = 1; -} - -message DerivativeMarketInfo { - // DerivativeMarket ID is crypto.Keccak256Hash([]byte((oracleType.String() + -// ticker + quoteDenom + oracleBase + oracleQuote))) for perpetual markets and -// crypto.Keccak256Hash([]byte((oracleType.String() + ticker + quoteDenom + -// oracleBase + oracleQuote + strconv.Itoa(int(expiry))))) for expiry futures -// markets - string market_id = 1; - // The status of the market - string market_status = 2; - // A name of the pair in format AAA/BBB, where AAA is base asset, BBB is quote -// asset. - string ticker = 3; - // Oracle base currency - string oracle_base = 4; - // Oracle quote currency - string oracle_quote = 5; - // Oracle Type - string oracle_type = 6; - // OracleScaleFactor - uint32 oracle_scale_factor = 7; - // Defines the initial margin ratio of a derivative market - string initial_margin_ratio = 8; - // Defines the maintenance margin ratio of a derivative market - string maintenance_margin_ratio = 9; - // Coin denom used for the quote asset. - string quote_denom = 10; - // Token metadata for quote asset, only for Ethereum-based assets - TokenMeta quote_token_meta = 11; - // Defines the fee percentage makers pay when trading (in quote asset) - string maker_fee_rate = 12; - // Defines the fee percentage takers pay when trading (in quote asset) - string taker_fee_rate = 13; - // Percentage of the transaction fee shared with the service provider - string service_provider_fee = 14; - // True if the market is a perpetual swap market - bool is_perpetual = 15; - // Defines the minimum required tick size for the order's price - string min_price_tick_size = 16; - // Defines the minimum required tick size for the order's quantity - string min_quantity_tick_size = 17; - PerpetualMarketInfo perpetual_market_info = 18; - PerpetualMarketFunding perpetual_market_funding = 19; - ExpiryFuturesMarketInfo expiry_futures_market_info = 20; - // Minimum notional value for the order - string min_notional = 21; -} - -message TokenMeta { - // Token full name - string name = 1; - // Token Ethereum contract address - string address = 2; - // Token symbol short name - string symbol = 3; - // URL to the logo image - string logo = 4; - // Token decimals - sint32 decimals = 5; - // Token metadata fetched timestamp in UNIX millis. - sint64 updated_at = 6; -} - -message PerpetualMarketInfo { - // Defines the default maximum absolute value of the hourly funding rate of the -// perpetual market. - string hourly_funding_rate_cap = 1; - // Defines the hourly interest rate of the perpetual market. - string hourly_interest_rate = 2; - // Defines the next funding timestamp in seconds of a perpetual market in UNIX -// seconds. - sint64 next_funding_timestamp = 3; - // Defines the funding interval in seconds of a perpetual market in seconds. - sint64 funding_interval = 4; -} - -message PerpetualMarketFunding { - // Defines the cumulative funding of a perpetual market. - string cumulative_funding = 1; - // Defines defines the cumulative price for the current hour up to the last -// timestamp. - string cumulative_price = 2; - // Defines the last funding timestamp in seconds of a perpetual market in UNIX -// seconds. - sint64 last_timestamp = 3; -} - -message ExpiryFuturesMarketInfo { - // Defines the expiration time for a time expiry futures market in UNIX seconds. - sint64 expiration_timestamp = 1; - // Defines the settlement price for a time expiry futures market. - string settlement_price = 2; -} - -message MarketRequest { - // MarketId of the market we want to fetch - string market_id = 1; -} - -message MarketResponse { - // Info about particular derivative market - DerivativeMarketInfo market = 1; -} - -message StreamMarketRequest { - // List of market IDs for updates streaming, empty means 'ALL' derivative -// markets - repeated string market_ids = 1; -} - -message StreamMarketResponse { - // Info about particular derivative market - DerivativeMarketInfo market = 1; - // Update type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message BinaryOptionsMarketsRequest { - // Filter by market status - string market_status = 1; - // Filter by the Coin denomination of the quote currency - string quote_denom = 2; - // Skip will skip the first n item from the result - uint64 skip = 3; - // Limit is used to specify the maximum number of items to be returned. - sint32 limit = 4; -} - -message BinaryOptionsMarketsResponse { - // Binary Options Markets list - repeated BinaryOptionsMarketInfo markets = 1; - Paging paging = 2; -} - -message BinaryOptionsMarketInfo { - // Binary Options Market ID is crypto.Keccak256Hash([]byte((oracleType.String() -// + ticker + quoteDenom + oracleSymbol + oracleProvider))) - string market_id = 1; - // The status of the market - string market_status = 2; - // A name of the binary options market. - string ticker = 3; - // Oracle symbol - string oracle_symbol = 4; - // Oracle provider - string oracle_provider = 5; - // Oracle Type - string oracle_type = 6; - // OracleScaleFactor - uint32 oracle_scale_factor = 7; - // Defines the expiration time for the market in UNIX seconds. - sint64 expiration_timestamp = 8; - // Defines the settlement time for the market in UNIX seconds. - sint64 settlement_timestamp = 9; - // Coin denom used for the quote asset. - string quote_denom = 10; - // Token metadata for quote asset, only for Ethereum-based assets - TokenMeta quote_token_meta = 11; - // Defines the fee percentage makers pay when trading (in quote asset) - string maker_fee_rate = 12; - // Defines the fee percentage takers pay when trading (in quote asset) - string taker_fee_rate = 13; - // Percentage of the transaction fee shared with the service provider - string service_provider_fee = 14; - // Defines the minimum required tick size for the order's price - string min_price_tick_size = 15; - // Defines the minimum required tick size for the order's quantity - string min_quantity_tick_size = 16; - // Defines the settlement price of the market - string settlement_price = 17; - // Defines the minimum notional value for the market - string min_notional = 18; -} -// Paging defines the structure for required params for handling pagination -message Paging { - // total number of txs saved in database - sint64 total = 1; - // can be either block height or index num - sint32 from = 2; - // can be either block height or index num - sint32 to = 3; - // count entries by subaccount, serving some places on helix - sint64 count_by_subaccount = 4; - // array of tokens to navigate to the next pages - repeated string next = 5; -} - -message BinaryOptionsMarketRequest { - // MarketId of the market we want to fetch - string market_id = 1; -} - -message BinaryOptionsMarketResponse { - // Info about particular derivative market - BinaryOptionsMarketInfo market = 1; -} - -message OrderbookV2Request { - // MarketId of the market's orderbook we want to fetch - string market_id = 1; -} - -message OrderbookV2Response { - // Orderbook of a particular derivative market - DerivativeLimitOrderbookV2 orderbook = 1; -} - -message DerivativeLimitOrderbookV2 { - // Array of price levels for buys - repeated PriceLevel buys = 1; - // Array of price levels for sells - repeated PriceLevel sells = 2; - // market orderbook sequence - uint64 sequence = 3; - // Last update timestamp in UNIX millis. - sint64 timestamp = 4; -} - -message PriceLevel { - // Price number of the price level. - string price = 1; - // Quantity of the price level. - string quantity = 2; - // Price level last updated timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message OrderbooksV2Request { - // MarketIds of the markets - repeated string market_ids = 1; -} - -message OrderbooksV2Response { - repeated SingleDerivativeLimitOrderbookV2 orderbooks = 1; -} - -message SingleDerivativeLimitOrderbookV2 { - // market's ID - string market_id = 1; - // Orderbook of the market - DerivativeLimitOrderbookV2 orderbook = 2; -} - -message StreamOrderbookV2Request { - // List of market IDs for orderbook streaming, empty means 'ALL' derivative -// markets - repeated string market_ids = 1; -} - -message StreamOrderbookV2Response { - // Orderbook of a Derivative Market - DerivativeLimitOrderbookV2 orderbook = 1; - // Order update type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; - // MarketId of the market's orderbook - string market_id = 4; -} - -message StreamOrderbookUpdateRequest { - // List of market IDs for orderbook streaming, empty means 'ALL' derivative -// markets - repeated string market_ids = 1; -} - -message StreamOrderbookUpdateResponse { - // Orderbook level updates of a Derivative Market - OrderbookLevelUpdates orderbook_level_updates = 1; - // Order update type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; - // MarketId of the market's orderbook - string market_id = 4; -} - -message OrderbookLevelUpdates { - // market's ID - string market_id = 1; - // orderbook update sequence - uint64 sequence = 2; - // buy levels - repeated PriceLevelUpdate buys = 3; - // sell levels - repeated PriceLevelUpdate sells = 4; - // updates timestamp - sint64 updated_at = 5; -} - -message PriceLevelUpdate { - // Price number of the price level. - string price = 1; - // Quantity of the price level. - string quantity = 2; - // Price level status. - bool is_active = 3; - // Price level last updated timestamp in UNIX millis. - sint64 timestamp = 4; -} - -message OrdersRequest { - // MarketId of market we want to fetch orders from. Using this field for one -// single marketId - string market_id = 1; - // Look for specific order side - string order_side = 2; - // Look for specific subaccountId of an order - string subaccount_id = 3; - // Skip will skip the first n item from the result - uint64 skip = 4; - // Limit is used to specify the maximum number of items to be returned - sint32 limit = 5; - // The starting timestamp in UNIX milliseconds that the trades must be equal or -// older than - sint64 start_time = 6; - // The ending timestamp in UNIX milliseconds that the trades must be equal or -// younger than - sint64 end_time = 7; - // MarketIds of the markets of which we want to get order from, use this field -// for fetching orders from multiple markets - repeated string market_ids = 8; - // Only search for conditional/non-conditional orders - string is_conditional = 9; - // Search for specific order type - string order_type = 10; - // Should include inactive orders - bool include_inactive = 11; - // Choose to return subaccount total orders - bool subaccount_total_orders = 12; - // TradeId of the order we want to fetch - string trade_id = 13; - // Client order ID - string cid = 14; -} - -message OrdersResponse { - repeated DerivativeLimitOrder orders = 1; - Paging paging = 2; -} - -message DerivativeLimitOrder { - // Hash of the order - string order_hash = 1; - // The side of the order - string order_side = 2; - // Derivative Market ID - string market_id = 3; - // The subaccountId that this order belongs to - string subaccount_id = 4; - // True if the order is a reduce-only order - bool is_reduce_only = 5; - // Margin of the order - string margin = 6; - // Price of the order - string price = 7; - // Quantity of the order - string quantity = 8; - // The amount of the quantity remaining unfilled - string unfilled_quantity = 9; - // Trigger price is the trigger price used by stop/take orders - string trigger_price = 10; - // Fee recipient address - string fee_recipient = 11; - // Order state - string state = 12; - // Order committed timestamp in UNIX millis. - sint64 created_at = 13; - // Order updated timestamp in UNIX millis. - sint64 updated_at = 14; - // Order number of subaccount - sint64 order_number = 15; - // Order type - string order_type = 16; - // Order type - bool is_conditional = 17; - // Trigger timestamp, only exists for conditional orders - uint64 trigger_at = 18; - // OrderHash of order that is triggered by this conditional order - string placed_order_hash = 19; - // Execution type of conditional order - string execution_type = 20; - // Transaction Hash where order is created. Not all orders have this field - string tx_hash = 21; - // Custom client order ID - string cid = 22; -} - -message PositionsRequest { - // SubaccountId of the trader we want to get the positions from - string subaccount_id = 1; - // MarketId of the position we want to fetch. Use this field for fetching from -// single market - string market_id = 2; - // Skip will skip the first n item from the result - uint64 skip = 3; - // Limit is used to specify the maximum number of items to be returned - sint32 limit = 4; - // The starting timestamp in UNIX milliseconds that the trades must be equal or -// older than - sint64 start_time = 5; - // The ending timestamp in UNIX milliseconds that the trades must be equal or -// younger than - sint64 end_time = 6; - // MarketIds of the markets we want to filter. Use this field for fetching from -// multiple markets - repeated string market_ids = 7; - // filter by direction of the position - string direction = 8; - // set to True to return subaccount total positions - bool subaccount_total_positions = 9; - // filter by account address - string account_address = 10; -} - -message PositionsResponse { - repeated DerivativePosition positions = 1; - Paging paging = 2; -} - -message DerivativePosition { - // Ticker of the derivative market - string ticker = 1; - // Derivative Market ID - string market_id = 2; - // The subaccountId that the position belongs to - string subaccount_id = 3; - // Direction of the position - string direction = 4; - // Quantity of the position - string quantity = 5; - // Price of the position - string entry_price = 6; - // Margin of the position - string margin = 7; - // LiquidationPrice of the position - string liquidation_price = 8; - // MarkPrice of the position - string mark_price = 9; - // Aggregate Quantity of the Reduce Only orders associated with the position - string aggregate_reduce_only_quantity = 11; - // Position updated timestamp in UNIX millis. - sint64 updated_at = 12; - // Position created timestamp in UNIX millis. - sint64 created_at = 13; -} - -message PositionsV2Request { - // SubaccountId of the trader we want to get the positions from - string subaccount_id = 1; - // MarketId of the position we want to fetch. Use this field for fetching from -// single market - string market_id = 2; - // Skip will skip the first n item from the result - uint64 skip = 3; - // Limit is used to specify the maximum number of items to be returned - sint32 limit = 4; - // The starting timestamp in UNIX milliseconds that the trades must be equal or -// older than - sint64 start_time = 5; - // The ending timestamp in UNIX milliseconds that the trades must be equal or -// younger than - sint64 end_time = 6; - // MarketIds of the markets we want to filter. Use this field for fetching from -// multiple markets - repeated string market_ids = 7; - // filter by direction of the position - string direction = 8; - // set to True to return subaccount total positions - bool subaccount_total_positions = 9; - // filter by account address - string account_address = 10; -} - -message PositionsV2Response { - repeated DerivativePositionV2 positions = 1; - Paging paging = 2; -} - -message DerivativePositionV2 { - // Ticker of the derivative market - string ticker = 1; - // Derivative Market ID - string market_id = 2; - // The subaccountId that the position belongs to - string subaccount_id = 3; - // Direction of the position - string direction = 4; - // Quantity of the position - string quantity = 5; - // Price of the position - string entry_price = 6; - // Margin of the position - string margin = 7; - // LiquidationPrice of the position - string liquidation_price = 8; - // MarkPrice of the position - string mark_price = 9; - // Position updated timestamp in UNIX millis. - sint64 updated_at = 11; - // Market quote denom - string denom = 12; -} - -message LiquidablePositionsRequest { - // Market ID to filter orders for specific market - string market_id = 1; - // Skip will skip the first n item from the result - uint64 skip = 2; - // Limit is used to specify the maximum number of items to be returned. - sint32 limit = 3; -} - -message LiquidablePositionsResponse { - // List of derivative positions - repeated DerivativePosition positions = 1; -} - -message FundingPaymentsRequest { - // SubaccountId of the trader we want to get the positions from - string subaccount_id = 1; - // MarketIds of the funding payment we want to fetch. Using this for only one -// market id. This field is prioritized - string market_id = 2; - // Skip will skip the first n item from the result - uint64 skip = 3; - // Limit is used to specify the maximum number of items to be returned. - sint32 limit = 4; - // Upper bound of funding payment updatedAt - sint64 end_time = 5; - // Filter by market ids. Using this field for fetching funding payments from -// multiple market ids - repeated string market_ids = 6; -} - -message FundingPaymentsResponse { - // List of funding payments - repeated FundingPayment payments = 1; - Paging paging = 2; -} - -message FundingPayment { - // Derivative Market ID - string market_id = 1; - // The subaccountId that the position belongs to - string subaccount_id = 2; - // Amount of the funding payment - string amount = 3; - // Timestamp of funding payment in UNIX millis - sint64 timestamp = 4; -} - -message FundingRatesRequest { - // MarketId of the position we want to fetch - string market_id = 1; - // Skip will skip the first n item from the result - uint64 skip = 2; - // Limit is used to specify the maximum number of items to be returned. - sint32 limit = 3; - // Upper bound of funding timestamp - sint64 end_time = 4; -} - -message FundingRatesResponse { - // List of funding rates - repeated FundingRate funding_rates = 1; - Paging paging = 2; -} - -message FundingRate { - // Derivative Market ID - string market_id = 1; - // Value of the funding rate - string rate = 2; - // Timestamp of funding rate in UNIX millis - sint64 timestamp = 3; -} - -message StreamPositionsRequest { - // SubaccountId of the trader we want to get the positions from - string subaccount_id = 1; - // Backward compat single market ID of position we want to stream - string market_id = 2; - // List of market IDs of the positions we want to stream - repeated string market_ids = 3; - // Subaccount ids of traders we want to get positions - repeated string subaccount_ids = 4; - // filter by account address - string account_address = 5; -} - -message StreamPositionsResponse { - // Updated derivative Position - DerivativePosition position = 1; - // Operation timestamp in UNIX millis. - sint64 timestamp = 2; -} - -message StreamOrdersRequest { - // MarketId of market we want to fetch orders from. Using this field for one -// single marketId - string market_id = 1; - // Look for specific order side - string order_side = 2; - // Look for specific subaccountId of an order - string subaccount_id = 3; - // Skip will skip the first n item from the result - uint64 skip = 4; - // Limit is used to specify the maximum number of items to be returned - sint32 limit = 5; - // The starting timestamp in UNIX milliseconds that the trades must be equal or -// older than - sint64 start_time = 6; - // The ending timestamp in UNIX milliseconds that the trades must be equal or -// younger than - sint64 end_time = 7; - // MarketIds of the markets of which we want to get order from, use this field -// for fetching orders from multiple markets - repeated string market_ids = 8; - // Only search for conditional/non-conditional orders - string is_conditional = 9; - // Search for specific order type - string order_type = 10; - // Should include inactive orders - bool include_inactive = 11; - // Choose to return subaccount total orders - bool subaccount_total_orders = 12; - // TradeId of the order we want to fetch - string trade_id = 13; - // Client order ID - string cid = 14; -} - -message StreamOrdersResponse { - // Updated market order - DerivativeLimitOrder order = 1; - // Order update type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message TradesRequest { - // MarketId of the market's orderbook we want to fetch - string market_id = 1; - // Filter by execution side of the trade - string execution_side = 2; - // Filter by direction the trade - string direction = 3; - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 4; - // Skip will skip the first n item from the result - uint64 skip = 5; - // Limit is used to specify the maximum number of items to be returned. - sint32 limit = 6; - // The starting timestamp in UNIX milliseconds that the trades must be equal or -// older than - sint64 start_time = 7; - // The ending timestamp in UNIX milliseconds that the trades must be equal or -// younger than - sint64 end_time = 8; - // MarketIds of the markets of which we want to get trades - repeated string market_ids = 9; - // Subaccount ids of traders we want to get trades. Use this field for fetching -// trades from multiple subaccounts - repeated string subaccount_ids = 10; - repeated string execution_types = 11; - // Filter by the tradeId of the trade - string trade_id = 12; - // Account address - string account_address = 13; - // Client order ID - string cid = 14; -} - -message TradesResponse { - // Trades of a Derivative Market - repeated DerivativeTrade trades = 1; - Paging paging = 2; -} - -message DerivativeTrade { - // Order hash. - string order_hash = 1; - // The subaccountId that executed the trade - string subaccount_id = 2; - // The ID of the market that this trade is in - string market_id = 3; - // The execution type of the trade - string trade_execution_type = 4; - // True if the trade is a liquidation - bool is_liquidation = 5; - // Position Delta from the trade - PositionDelta position_delta = 6; - // The payout associated with the trade - string payout = 7; - // The fee associated with the trade - string fee = 8; - // Timestamp of trade execution in UNIX millis - sint64 executed_at = 9; - // Fee recipient address - string fee_recipient = 10; - // A unique string that helps differentiate between trades - string trade_id = 11; - // Trade's execution side, marker/taker - string execution_side = 12; - // Custom client order ID - string cid = 13; -} - -message PositionDelta { - // The direction the trade - string trade_direction = 1; - // Execution Price of the trade. - string execution_price = 2; - // Execution Quantity of the trade. - string execution_quantity = 3; - // Execution Margin of the trade. - string execution_margin = 4; -} - -message TradesV2Request { - // MarketId of the market's orderbook we want to fetch - string market_id = 1; - // Filter by execution side of the trade - string execution_side = 2; - // Filter by direction the trade - string direction = 3; - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 4; - // Skip will skip the first n item from the result - uint64 skip = 5; - // Limit is used to specify the maximum number of items to be returned. - sint32 limit = 6; - // The starting timestamp in UNIX milliseconds that the trades must be equal or -// older than - sint64 start_time = 7; - // The ending timestamp in UNIX milliseconds that the trades must be equal or -// younger than - sint64 end_time = 8; - // MarketIds of the markets of which we want to get trades - repeated string market_ids = 9; - // Subaccount ids of traders we want to get trades. Use this field for fetching -// trades from multiple subaccounts - repeated string subaccount_ids = 10; - repeated string execution_types = 11; - // Filter by the tradeId of the trade - string trade_id = 12; - // Account address - string account_address = 13; - // Client order ID - string cid = 14; -} - -message TradesV2Response { - // Trades of a Derivative Market - repeated DerivativeTrade trades = 1; - Paging paging = 2; -} - -message StreamTradesRequest { - // MarketId of the market's orderbook we want to fetch - string market_id = 1; - // Filter by execution side of the trade - string execution_side = 2; - // Filter by direction the trade - string direction = 3; - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 4; - // Skip will skip the first n item from the result - uint64 skip = 5; - // Limit is used to specify the maximum number of items to be returned. - sint32 limit = 6; - // The starting timestamp in UNIX milliseconds that the trades must be equal or -// older than - sint64 start_time = 7; - // The ending timestamp in UNIX milliseconds that the trades must be equal or -// younger than - sint64 end_time = 8; - // MarketIds of the markets of which we want to get trades - repeated string market_ids = 9; - // Subaccount ids of traders we want to get trades. Use this field for fetching -// trades from multiple subaccounts - repeated string subaccount_ids = 10; - repeated string execution_types = 11; - // Filter by the tradeId of the trade - string trade_id = 12; - // Account address - string account_address = 13; - // Client order ID - string cid = 14; -} - -message StreamTradesResponse { - // New derivative market trade - DerivativeTrade trade = 1; - // Executed trades update type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message StreamTradesV2Request { - // MarketId of the market's orderbook we want to fetch - string market_id = 1; - // Filter by execution side of the trade - string execution_side = 2; - // Filter by direction the trade - string direction = 3; - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 4; - // Skip will skip the first n item from the result - uint64 skip = 5; - // Limit is used to specify the maximum number of items to be returned. - sint32 limit = 6; - // The starting timestamp in UNIX milliseconds that the trades must be equal or -// older than - sint64 start_time = 7; - // The ending timestamp in UNIX milliseconds that the trades must be equal or -// younger than - sint64 end_time = 8; - // MarketIds of the markets of which we want to get trades - repeated string market_ids = 9; - // Subaccount ids of traders we want to get trades. Use this field for fetching -// trades from multiple subaccounts - repeated string subaccount_ids = 10; - repeated string execution_types = 11; - // Filter by the tradeId of the trade - string trade_id = 12; - // Account address - string account_address = 13; - // Client order ID - string cid = 14; -} - -message StreamTradesV2Response { - // New derivative market trade - DerivativeTrade trade = 1; - // Executed trades update type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message SubaccountOrdersListRequest { - // subaccount ID to filter orders for specific subaccount - string subaccount_id = 1; - // Market ID to filter orders for specific market - string market_id = 2; - // Skip will skip the first n item from the result - uint64 skip = 3; - // Limit is used to specify the maximum number of items to be returned - sint32 limit = 4; -} - -message SubaccountOrdersListResponse { - // List of derivative orders - repeated DerivativeLimitOrder orders = 1; - Paging paging = 2; -} - -message SubaccountTradesListRequest { - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 1; - // Filter trades by market ID - string market_id = 2; - // Filter by execution type of trades - string execution_type = 3; - // Filter by direction trades - string direction = 4; - // Skip will skip the first n item from the result - uint64 skip = 5; - // Limit is used to specify the maximum number of items to be returned - sint32 limit = 6; -} - -message SubaccountTradesListResponse { - // List of derivative market trades - repeated DerivativeTrade trades = 1; -} - -message OrdersHistoryRequest { - // subaccount ID to filter orders for specific subaccount - string subaccount_id = 1; - // Market ID to filter orders for specific market - string market_id = 2; - // Skip will skip the first n item from the result - uint64 skip = 3; - // Limit is used to specify the maximum number of items to be returned - sint32 limit = 4; - // filter by order types - repeated string order_types = 5; - // order side filter - string direction = 6; - // Search for orders which createdAt >= startTime, time in millisecond - sint64 start_time = 7; - // Search for orders which createdAt <= endTime, time in millisecond - sint64 end_time = 8; - // Only search for conditional/non-conditional orders - string is_conditional = 9; - // filter by order type - string order_type = 10; - // Filter by order state - string state = 11; - repeated string execution_types = 12; - repeated string market_ids = 13; - // TradeId of the order we want to fetch - string trade_id = 14; - // Return only orders for active markets - bool active_markets_only = 15; - // Client order ID - string cid = 16; -} - -message OrdersHistoryResponse { - // List of historical derivative orders - repeated DerivativeOrderHistory orders = 1; - Paging paging = 2; -} - -message DerivativeOrderHistory { - // Hash of the order - string order_hash = 1; - // Spot Market ID is keccak265(baseDenom + quoteDenom) - string market_id = 2; - // active state of the order - bool is_active = 3; - // The subaccountId that this order belongs to - string subaccount_id = 4; - // The execution type - string execution_type = 5; - // The side of the order - string order_type = 6; - // Price of the order - string price = 7; - // Trigger price - string trigger_price = 8; - // Quantity of the order - string quantity = 9; - // Filled amount - string filled_quantity = 10; - // Order state - string state = 11; - // Order committed timestamp in UNIX millis. - sint64 created_at = 12; - // Order updated timestamp in UNIX millis. - sint64 updated_at = 13; - // True if an order is reduce only - bool is_reduce_only = 14; - // Order direction (order side) - string direction = 15; - // True if this is conditional order, otherwise false - bool is_conditional = 16; - // Trigger timestamp in unix milli - uint64 trigger_at = 17; - // Order hash placed when this triggers - string placed_order_hash = 18; - // Order's margin - string margin = 19; - // Transaction Hash where order is created. Not all orders have this field - string tx_hash = 20; - // Custom client order ID - string cid = 21; -} - -message StreamOrdersHistoryRequest { - // subaccount ID to filter orders for specific subaccount - string subaccount_id = 1; - // Market ID to filter orders for specific market - string market_id = 2; - // filter by order types - repeated string order_types = 3; - // order side filter - string direction = 4; - // Filter by order state - string state = 5; - repeated string execution_types = 6; -} - -message StreamOrdersHistoryResponse { - // Updated order - DerivativeOrderHistory order = 1; - // Order update type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; -} diff --git a/exchange/event_provider_api/pb/goadesign_goagen_event_provider_api.pb.go b/exchange/event_provider_api/pb/goadesign_goagen_event_provider_api.pb.go new file mode 100644 index 00000000..16313fa9 --- /dev/null +++ b/exchange/event_provider_api/pb/goadesign_goagen_event_provider_api.pb.go @@ -0,0 +1,1891 @@ +// Code generated with goa v3.7.0, DO NOT EDIT. +// +// EventProviderAPI protocol buffer definition +// +// Command: +// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.30.0 +// protoc v4.24.4 +// source: goadesign_goagen_event_provider_api.proto + +package event_provider_apipb + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type GetLatestHeightRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *GetLatestHeightRequest) Reset() { + *x = GetLatestHeightRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetLatestHeightRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetLatestHeightRequest) ProtoMessage() {} + +func (x *GetLatestHeightRequest) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetLatestHeightRequest.ProtoReflect.Descriptor instead. +func (*GetLatestHeightRequest) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{0} +} + +type GetLatestHeightResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Response version. + V string `protobuf:"bytes,1,opt,name=v,proto3" json:"v,omitempty"` + // Status of the response. + S string `protobuf:"bytes,2,opt,name=s,proto3" json:"s,omitempty"` + // Error message. + E string `protobuf:"bytes,3,opt,name=e,proto3" json:"e,omitempty"` + Data *LatestBlockHeight `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"` +} + +func (x *GetLatestHeightResponse) Reset() { + *x = GetLatestHeightResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetLatestHeightResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetLatestHeightResponse) ProtoMessage() {} + +func (x *GetLatestHeightResponse) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetLatestHeightResponse.ProtoReflect.Descriptor instead. +func (*GetLatestHeightResponse) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{1} +} + +func (x *GetLatestHeightResponse) GetV() string { + if x != nil { + return x.V + } + return "" +} + +func (x *GetLatestHeightResponse) GetS() string { + if x != nil { + return x.S + } + return "" +} + +func (x *GetLatestHeightResponse) GetE() string { + if x != nil { + return x.E + } + return "" +} + +func (x *GetLatestHeightResponse) GetData() *LatestBlockHeight { + if x != nil { + return x.Data + } + return nil +} + +// Latest block height from event provider db +type LatestBlockHeight struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Height uint64 `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"` + Time int64 `protobuf:"zigzag64,2,opt,name=time,proto3" json:"time,omitempty"` +} + +func (x *LatestBlockHeight) Reset() { + *x = LatestBlockHeight{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *LatestBlockHeight) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LatestBlockHeight) ProtoMessage() {} + +func (x *LatestBlockHeight) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use LatestBlockHeight.ProtoReflect.Descriptor instead. +func (*LatestBlockHeight) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{2} +} + +func (x *LatestBlockHeight) GetHeight() uint64 { + if x != nil { + return x.Height + } + return 0 +} + +func (x *LatestBlockHeight) GetTime() int64 { + if x != nil { + return x.Time + } + return 0 +} + +type StreamBlockEventsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Select backend processor + Backend string `protobuf:"bytes,1,opt,name=backend,proto3" json:"backend,omitempty"` + Height int32 `protobuf:"zigzag32,2,opt,name=height,proto3" json:"height,omitempty"` +} + +func (x *StreamBlockEventsRequest) Reset() { + *x = StreamBlockEventsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *StreamBlockEventsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StreamBlockEventsRequest) ProtoMessage() {} + +func (x *StreamBlockEventsRequest) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use StreamBlockEventsRequest.ProtoReflect.Descriptor instead. +func (*StreamBlockEventsRequest) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{3} +} + +func (x *StreamBlockEventsRequest) GetBackend() string { + if x != nil { + return x.Backend + } + return "" +} + +func (x *StreamBlockEventsRequest) GetHeight() int32 { + if x != nil { + return x.Height + } + return 0 +} + +type StreamBlockEventsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Blocks []*Block `protobuf:"bytes,1,rep,name=blocks,proto3" json:"blocks,omitempty"` +} + +func (x *StreamBlockEventsResponse) Reset() { + *x = StreamBlockEventsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *StreamBlockEventsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StreamBlockEventsResponse) ProtoMessage() {} + +func (x *StreamBlockEventsResponse) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use StreamBlockEventsResponse.ProtoReflect.Descriptor instead. +func (*StreamBlockEventsResponse) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{4} +} + +func (x *StreamBlockEventsResponse) GetBlocks() []*Block { + if x != nil { + return x.Blocks + } + return nil +} + +type Block struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Height int64 `protobuf:"zigzag64,1,opt,name=height,proto3" json:"height,omitempty"` + Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"` + // Processed block events in the block + Events []*BlockEvent `protobuf:"bytes,3,rep,name=events,proto3" json:"events,omitempty"` + // Indicates whether the block is the latest one available in the event provider + InSync bool `protobuf:"varint,4,opt,name=in_sync,json=inSync,proto3" json:"in_sync,omitempty"` +} + +func (x *Block) Reset() { + *x = Block{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Block) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Block) ProtoMessage() {} + +func (x *Block) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_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 Block.ProtoReflect.Descriptor instead. +func (*Block) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{5} +} + +func (x *Block) GetHeight() int64 { + if x != nil { + return x.Height + } + return 0 +} + +func (x *Block) GetVersion() string { + if x != nil { + return x.Version + } + return "" +} + +func (x *Block) GetEvents() []*BlockEvent { + if x != nil { + return x.Events + } + return nil +} + +func (x *Block) GetInSync() bool { + if x != nil { + return x.InSync + } + return false +} + +type BlockEvent struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Event type + TypeUrl string `protobuf:"bytes,1,opt,name=type_url,json=typeUrl,proto3" json:"type_url,omitempty"` + // Event data + Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + // TX hash + TxHash []byte `protobuf:"bytes,3,opt,name=tx_hash,json=txHash,proto3" json:"tx_hash,omitempty"` + // Set only if it's a BeginBlock or EndBlock event + Mode string `protobuf:"bytes,4,opt,name=mode,proto3" json:"mode,omitempty"` +} + +func (x *BlockEvent) Reset() { + *x = BlockEvent{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BlockEvent) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BlockEvent) ProtoMessage() {} + +func (x *BlockEvent) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BlockEvent.ProtoReflect.Descriptor instead. +func (*BlockEvent) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{6} +} + +func (x *BlockEvent) GetTypeUrl() string { + if x != nil { + return x.TypeUrl + } + return "" +} + +func (x *BlockEvent) GetValue() []byte { + if x != nil { + return x.Value + } + return nil +} + +func (x *BlockEvent) GetTxHash() []byte { + if x != nil { + return x.TxHash + } + return nil +} + +func (x *BlockEvent) GetMode() string { + if x != nil { + return x.Mode + } + return "" +} + +type GetBlockEventsRPCRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Select backend processor + Backend string `protobuf:"bytes,1,opt,name=backend,proto3" json:"backend,omitempty"` + Height int32 `protobuf:"zigzag32,2,opt,name=height,proto3" json:"height,omitempty"` + HumanReadable bool `protobuf:"varint,3,opt,name=human_readable,json=humanReadable,proto3" json:"human_readable,omitempty"` +} + +func (x *GetBlockEventsRPCRequest) Reset() { + *x = GetBlockEventsRPCRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetBlockEventsRPCRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetBlockEventsRPCRequest) ProtoMessage() {} + +func (x *GetBlockEventsRPCRequest) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetBlockEventsRPCRequest.ProtoReflect.Descriptor instead. +func (*GetBlockEventsRPCRequest) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{7} +} + +func (x *GetBlockEventsRPCRequest) GetBackend() string { + if x != nil { + return x.Backend + } + return "" +} + +func (x *GetBlockEventsRPCRequest) GetHeight() int32 { + if x != nil { + return x.Height + } + return 0 +} + +func (x *GetBlockEventsRPCRequest) GetHumanReadable() bool { + if x != nil { + return x.HumanReadable + } + return false +} + +type GetBlockEventsRPCResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Response version. + V string `protobuf:"bytes,1,opt,name=v,proto3" json:"v,omitempty"` + // Status of the response. + S string `protobuf:"bytes,2,opt,name=s,proto3" json:"s,omitempty"` + // Error message. + E string `protobuf:"bytes,3,opt,name=e,proto3" json:"e,omitempty"` + Data *BlockEventsRPC `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"` +} + +func (x *GetBlockEventsRPCResponse) Reset() { + *x = GetBlockEventsRPCResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetBlockEventsRPCResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetBlockEventsRPCResponse) ProtoMessage() {} + +func (x *GetBlockEventsRPCResponse) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetBlockEventsRPCResponse.ProtoReflect.Descriptor instead. +func (*GetBlockEventsRPCResponse) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{8} +} + +func (x *GetBlockEventsRPCResponse) GetV() string { + if x != nil { + return x.V + } + return "" +} + +func (x *GetBlockEventsRPCResponse) GetS() string { + if x != nil { + return x.S + } + return "" +} + +func (x *GetBlockEventsRPCResponse) GetE() string { + if x != nil { + return x.E + } + return "" +} + +func (x *GetBlockEventsRPCResponse) GetData() *BlockEventsRPC { + if x != nil { + return x.Data + } + return nil +} + +// Processed block events for backend processor to consume +type BlockEventsRPC struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Array of event types + Types []string `protobuf:"bytes,1,rep,name=types,proto3" json:"types,omitempty"` + // Array of parsed events + Events [][]byte `protobuf:"bytes,2,rep,name=events,proto3" json:"events,omitempty"` + // Map of event index - tx hash + TxHashes map[int32][]byte `protobuf:"bytes,3,rep,name=tx_hashes,json=txHashes,proto3" json:"tx_hashes,omitempty" protobuf_key:"zigzag32,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (x *BlockEventsRPC) Reset() { + *x = BlockEventsRPC{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BlockEventsRPC) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BlockEventsRPC) ProtoMessage() {} + +func (x *BlockEventsRPC) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BlockEventsRPC.ProtoReflect.Descriptor instead. +func (*BlockEventsRPC) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{9} +} + +func (x *BlockEventsRPC) GetTypes() []string { + if x != nil { + return x.Types + } + return nil +} + +func (x *BlockEventsRPC) GetEvents() [][]byte { + if x != nil { + return x.Events + } + return nil +} + +func (x *BlockEventsRPC) GetTxHashes() map[int32][]byte { + if x != nil { + return x.TxHashes + } + return nil +} + +type GetCustomEventsRPCRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Select backend processor + Backend string `protobuf:"bytes,1,opt,name=backend,proto3" json:"backend,omitempty"` + Height int32 `protobuf:"zigzag32,2,opt,name=height,proto3" json:"height,omitempty"` + // Specify custom events to get + Events string `protobuf:"bytes,3,opt,name=events,proto3" json:"events,omitempty"` +} + +func (x *GetCustomEventsRPCRequest) Reset() { + *x = GetCustomEventsRPCRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetCustomEventsRPCRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetCustomEventsRPCRequest) ProtoMessage() {} + +func (x *GetCustomEventsRPCRequest) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetCustomEventsRPCRequest.ProtoReflect.Descriptor instead. +func (*GetCustomEventsRPCRequest) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{10} +} + +func (x *GetCustomEventsRPCRequest) GetBackend() string { + if x != nil { + return x.Backend + } + return "" +} + +func (x *GetCustomEventsRPCRequest) GetHeight() int32 { + if x != nil { + return x.Height + } + return 0 +} + +func (x *GetCustomEventsRPCRequest) GetEvents() string { + if x != nil { + return x.Events + } + return "" +} + +type GetCustomEventsRPCResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Response version. + V string `protobuf:"bytes,1,opt,name=v,proto3" json:"v,omitempty"` + // Status of the response. + S string `protobuf:"bytes,2,opt,name=s,proto3" json:"s,omitempty"` + // Error message. + E string `protobuf:"bytes,3,opt,name=e,proto3" json:"e,omitempty"` + Data *BlockEventsRPC `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"` +} + +func (x *GetCustomEventsRPCResponse) Reset() { + *x = GetCustomEventsRPCResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetCustomEventsRPCResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetCustomEventsRPCResponse) ProtoMessage() {} + +func (x *GetCustomEventsRPCResponse) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetCustomEventsRPCResponse.ProtoReflect.Descriptor instead. +func (*GetCustomEventsRPCResponse) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{11} +} + +func (x *GetCustomEventsRPCResponse) GetV() string { + if x != nil { + return x.V + } + return "" +} + +func (x *GetCustomEventsRPCResponse) GetS() string { + if x != nil { + return x.S + } + return "" +} + +func (x *GetCustomEventsRPCResponse) GetE() string { + if x != nil { + return x.E + } + return "" +} + +func (x *GetCustomEventsRPCResponse) GetData() *BlockEventsRPC { + if x != nil { + return x.Data + } + return nil +} + +type GetABCIBlockEventsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Height int32 `protobuf:"zigzag32,1,opt,name=height,proto3" json:"height,omitempty"` + // Array of event types + EventTypes []string `protobuf:"bytes,2,rep,name=event_types,json=eventTypes,proto3" json:"event_types,omitempty"` +} + +func (x *GetABCIBlockEventsRequest) Reset() { + *x = GetABCIBlockEventsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetABCIBlockEventsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetABCIBlockEventsRequest) ProtoMessage() {} + +func (x *GetABCIBlockEventsRequest) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_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 GetABCIBlockEventsRequest.ProtoReflect.Descriptor instead. +func (*GetABCIBlockEventsRequest) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{12} +} + +func (x *GetABCIBlockEventsRequest) GetHeight() int32 { + if x != nil { + return x.Height + } + return 0 +} + +func (x *GetABCIBlockEventsRequest) GetEventTypes() []string { + if x != nil { + return x.EventTypes + } + return nil +} + +type GetABCIBlockEventsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Response version. + V string `protobuf:"bytes,1,opt,name=v,proto3" json:"v,omitempty"` + // Status of the response. + S string `protobuf:"bytes,2,opt,name=s,proto3" json:"s,omitempty"` + // Error message. + E string `protobuf:"bytes,3,opt,name=e,proto3" json:"e,omitempty"` + RawBlock *RawBlock `protobuf:"bytes,4,opt,name=raw_block,json=rawBlock,proto3" json:"raw_block,omitempty"` +} + +func (x *GetABCIBlockEventsResponse) Reset() { + *x = GetABCIBlockEventsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetABCIBlockEventsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetABCIBlockEventsResponse) ProtoMessage() {} + +func (x *GetABCIBlockEventsResponse) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_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 GetABCIBlockEventsResponse.ProtoReflect.Descriptor instead. +func (*GetABCIBlockEventsResponse) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{13} +} + +func (x *GetABCIBlockEventsResponse) GetV() string { + if x != nil { + return x.V + } + return "" +} + +func (x *GetABCIBlockEventsResponse) GetS() string { + if x != nil { + return x.S + } + return "" +} + +func (x *GetABCIBlockEventsResponse) GetE() string { + if x != nil { + return x.E + } + return "" +} + +func (x *GetABCIBlockEventsResponse) GetRawBlock() *RawBlock { + if x != nil { + return x.RawBlock + } + return nil +} + +type RawBlock struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Height int64 `protobuf:"zigzag64,1,opt,name=height,proto3" json:"height,omitempty"` + BlockTime string `protobuf:"bytes,5,opt,name=block_time,json=blockTime,proto3" json:"block_time,omitempty"` + // Block timestamp in UNIX millis. + BlockTimestamp int64 `protobuf:"zigzag64,6,opt,name=block_timestamp,json=blockTimestamp,proto3" json:"block_timestamp,omitempty"` + TxsResults []*ABCIResponseDeliverTx `protobuf:"bytes,2,rep,name=txs_results,json=txsResults,proto3" json:"txs_results,omitempty"` + BeginBlockEvents []*ABCIEvent `protobuf:"bytes,3,rep,name=begin_block_events,json=beginBlockEvents,proto3" json:"begin_block_events,omitempty"` + EndBlockEvents []*ABCIEvent `protobuf:"bytes,4,rep,name=end_block_events,json=endBlockEvents,proto3" json:"end_block_events,omitempty"` +} + +func (x *RawBlock) Reset() { + *x = RawBlock{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *RawBlock) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RawBlock) ProtoMessage() {} + +func (x *RawBlock) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use RawBlock.ProtoReflect.Descriptor instead. +func (*RawBlock) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{14} +} + +func (x *RawBlock) GetHeight() int64 { + if x != nil { + return x.Height + } + return 0 +} + +func (x *RawBlock) GetBlockTime() string { + if x != nil { + return x.BlockTime + } + return "" +} + +func (x *RawBlock) GetBlockTimestamp() int64 { + if x != nil { + return x.BlockTimestamp + } + return 0 +} + +func (x *RawBlock) GetTxsResults() []*ABCIResponseDeliverTx { + if x != nil { + return x.TxsResults + } + return nil +} + +func (x *RawBlock) GetBeginBlockEvents() []*ABCIEvent { + if x != nil { + return x.BeginBlockEvents + } + return nil +} + +func (x *RawBlock) GetEndBlockEvents() []*ABCIEvent { + if x != nil { + return x.EndBlockEvents + } + return nil +} + +type ABCIResponseDeliverTx struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Code int32 `protobuf:"zigzag32,1,opt,name=code,proto3" json:"code,omitempty"` + Log string `protobuf:"bytes,2,opt,name=log,proto3" json:"log,omitempty"` + Info string `protobuf:"bytes,3,opt,name=info,proto3" json:"info,omitempty"` + GasWanted int64 `protobuf:"zigzag64,4,opt,name=gas_wanted,json=gasWanted,proto3" json:"gas_wanted,omitempty"` + GasUsed int64 `protobuf:"zigzag64,5,opt,name=gas_used,json=gasUsed,proto3" json:"gas_used,omitempty"` + Events []*ABCIEvent `protobuf:"bytes,6,rep,name=events,proto3" json:"events,omitempty"` + Codespace string `protobuf:"bytes,7,opt,name=codespace,proto3" json:"codespace,omitempty"` + TxHash []byte `protobuf:"bytes,8,opt,name=tx_hash,json=txHash,proto3" json:"tx_hash,omitempty"` +} + +func (x *ABCIResponseDeliverTx) Reset() { + *x = ABCIResponseDeliverTx{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ABCIResponseDeliverTx) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ABCIResponseDeliverTx) ProtoMessage() {} + +func (x *ABCIResponseDeliverTx) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ABCIResponseDeliverTx.ProtoReflect.Descriptor instead. +func (*ABCIResponseDeliverTx) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{15} +} + +func (x *ABCIResponseDeliverTx) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ABCIResponseDeliverTx) GetLog() string { + if x != nil { + return x.Log + } + return "" +} + +func (x *ABCIResponseDeliverTx) GetInfo() string { + if x != nil { + return x.Info + } + return "" +} + +func (x *ABCIResponseDeliverTx) GetGasWanted() int64 { + if x != nil { + return x.GasWanted + } + return 0 +} + +func (x *ABCIResponseDeliverTx) GetGasUsed() int64 { + if x != nil { + return x.GasUsed + } + return 0 +} + +func (x *ABCIResponseDeliverTx) GetEvents() []*ABCIEvent { + if x != nil { + return x.Events + } + return nil +} + +func (x *ABCIResponseDeliverTx) GetCodespace() string { + if x != nil { + return x.Codespace + } + return "" +} + +func (x *ABCIResponseDeliverTx) GetTxHash() []byte { + if x != nil { + return x.TxHash + } + return nil +} + +type ABCIEvent struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` + Attributes []*ABCIAttribute `protobuf:"bytes,2,rep,name=attributes,proto3" json:"attributes,omitempty"` +} + +func (x *ABCIEvent) Reset() { + *x = ABCIEvent{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ABCIEvent) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ABCIEvent) ProtoMessage() {} + +func (x *ABCIEvent) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ABCIEvent.ProtoReflect.Descriptor instead. +func (*ABCIEvent) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{16} +} + +func (x *ABCIEvent) GetType() string { + if x != nil { + return x.Type + } + return "" +} + +func (x *ABCIEvent) GetAttributes() []*ABCIAttribute { + if x != nil { + return x.Attributes + } + return nil +} + +type ABCIAttribute 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"` +} + +func (x *ABCIAttribute) Reset() { + *x = ABCIAttribute{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ABCIAttribute) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ABCIAttribute) ProtoMessage() {} + +func (x *ABCIAttribute) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ABCIAttribute.ProtoReflect.Descriptor instead. +func (*ABCIAttribute) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{17} +} + +func (x *ABCIAttribute) GetKey() string { + if x != nil { + return x.Key + } + return "" +} + +func (x *ABCIAttribute) GetValue() string { + if x != nil { + return x.Value + } + return "" +} + +type GetABCIBlockEventsAtHeightRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Height int32 `protobuf:"zigzag32,1,opt,name=height,proto3" json:"height,omitempty"` +} + +func (x *GetABCIBlockEventsAtHeightRequest) Reset() { + *x = GetABCIBlockEventsAtHeightRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetABCIBlockEventsAtHeightRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetABCIBlockEventsAtHeightRequest) ProtoMessage() {} + +func (x *GetABCIBlockEventsAtHeightRequest) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetABCIBlockEventsAtHeightRequest.ProtoReflect.Descriptor instead. +func (*GetABCIBlockEventsAtHeightRequest) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{18} +} + +func (x *GetABCIBlockEventsAtHeightRequest) GetHeight() int32 { + if x != nil { + return x.Height + } + return 0 +} + +type GetABCIBlockEventsAtHeightResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Response version. + V string `protobuf:"bytes,1,opt,name=v,proto3" json:"v,omitempty"` + // Status of the response. + S string `protobuf:"bytes,2,opt,name=s,proto3" json:"s,omitempty"` + // Error message. + E string `protobuf:"bytes,3,opt,name=e,proto3" json:"e,omitempty"` + RawBlock *RawBlock `protobuf:"bytes,4,opt,name=raw_block,json=rawBlock,proto3" json:"raw_block,omitempty"` +} + +func (x *GetABCIBlockEventsAtHeightResponse) Reset() { + *x = GetABCIBlockEventsAtHeightResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetABCIBlockEventsAtHeightResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetABCIBlockEventsAtHeightResponse) ProtoMessage() {} + +func (x *GetABCIBlockEventsAtHeightResponse) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_event_provider_api_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetABCIBlockEventsAtHeightResponse.ProtoReflect.Descriptor instead. +func (*GetABCIBlockEventsAtHeightResponse) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_event_provider_api_proto_rawDescGZIP(), []int{19} +} + +func (x *GetABCIBlockEventsAtHeightResponse) GetV() string { + if x != nil { + return x.V + } + return "" +} + +func (x *GetABCIBlockEventsAtHeightResponse) GetS() string { + if x != nil { + return x.S + } + return "" +} + +func (x *GetABCIBlockEventsAtHeightResponse) GetE() string { + if x != nil { + return x.E + } + return "" +} + +func (x *GetABCIBlockEventsAtHeightResponse) GetRawBlock() *RawBlock { + if x != nil { + return x.RawBlock + } + return nil +} + +var File_goadesign_goagen_event_provider_api_proto protoreflect.FileDescriptor + +var file_goadesign_goagen_event_provider_api_proto_rawDesc = []byte{ + 0x0a, 0x29, 0x67, 0x6f, 0x61, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x5f, 0x67, 0x6f, 0x61, 0x67, + 0x65, 0x6e, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x12, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x22, + 0x18, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x48, 0x65, 0x69, 0x67, + 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x7e, 0x0a, 0x17, 0x47, 0x65, 0x74, + 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x76, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x01, 0x76, 0x12, 0x0c, 0x0a, 0x01, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x73, + 0x12, 0x0c, 0x0a, 0x01, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x65, 0x12, 0x39, + 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, + 0x69, 0x2e, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, + 0x67, 0x68, 0x74, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3f, 0x0a, 0x11, 0x4c, 0x61, 0x74, + 0x65, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x16, + 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, + 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x12, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x4c, 0x0a, 0x18, 0x53, 0x74, + 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, + 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x11, + 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x4e, 0x0a, 0x19, 0x53, 0x74, 0x72, 0x65, + 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x06, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x52, 0x06, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x22, 0x8a, 0x01, 0x0a, 0x05, 0x42, 0x6c, 0x6f, + 0x63, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x12, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x17, 0x0a, 0x07, + 0x69, 0x6e, 0x5f, 0x73, 0x79, 0x6e, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, + 0x6e, 0x53, 0x79, 0x6e, 0x63, 0x22, 0x6a, 0x0a, 0x0a, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x79, 0x70, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x12, 0x0a, + 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x6f, 0x64, + 0x65, 0x22, 0x73, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x73, 0x52, 0x50, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, + 0x07, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x11, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, + 0x25, 0x0a, 0x0e, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x61, 0x62, 0x6c, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x52, 0x65, + 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x7d, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, + 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x50, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x76, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, + 0x76, 0x12, 0x0c, 0x0a, 0x01, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x73, 0x12, + 0x0c, 0x0a, 0x01, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x65, 0x12, 0x36, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, + 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x50, 0x43, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xca, 0x01, 0x0a, 0x0e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x50, 0x43, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x79, 0x70, 0x65, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x16, + 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x4d, 0x0a, 0x09, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, + 0x68, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x42, + 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x50, 0x43, 0x2e, 0x54, 0x78, + 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x74, 0x78, 0x48, + 0x61, 0x73, 0x68, 0x65, 0x73, 0x1a, 0x3b, 0x0a, 0x0d, 0x54, 0x78, 0x48, 0x61, 0x73, 0x68, 0x65, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x11, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, + 0x38, 0x01, 0x22, 0x65, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x50, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x18, 0x0a, 0x07, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, + 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x11, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, + 0x74, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x7e, 0x0a, 0x1a, 0x47, 0x65, 0x74, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x50, 0x43, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x76, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x01, 0x76, 0x12, 0x0c, 0x0a, 0x01, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x01, 0x73, 0x12, 0x0c, 0x0a, 0x01, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, + 0x65, 0x12, 0x36, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x22, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, + 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x52, 0x50, 0x43, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x54, 0x0a, 0x19, 0x47, 0x65, 0x74, + 0x41, 0x42, 0x43, 0x49, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1f, + 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x73, 0x22, + 0x81, 0x01, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x41, 0x42, 0x43, 0x49, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0c, + 0x0a, 0x01, 0x76, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x76, 0x12, 0x0c, 0x0a, 0x01, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x73, 0x12, 0x0c, 0x0a, 0x01, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x65, 0x12, 0x39, 0x0a, 0x09, 0x72, 0x61, 0x77, 0x5f, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, + 0x2e, 0x52, 0x61, 0x77, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x08, 0x72, 0x61, 0x77, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x22, 0xcc, 0x02, 0x0a, 0x08, 0x52, 0x61, 0x77, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x12, + 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x12, + 0x52, 0x0e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x12, 0x4a, 0x0a, 0x0b, 0x74, 0x78, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x41, 0x42, 0x43, 0x49, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x54, 0x78, + 0x52, 0x0a, 0x74, 0x78, 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x4b, 0x0a, 0x12, + 0x62, 0x65, 0x67, 0x69, 0x6e, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x41, 0x42, + 0x43, 0x49, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x10, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x47, 0x0a, 0x10, 0x65, 0x6e, 0x64, + 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x41, 0x42, 0x43, 0x49, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x52, 0x0e, 0x65, 0x6e, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x73, 0x22, 0xf9, 0x01, 0x0a, 0x15, 0x41, 0x42, 0x43, 0x49, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x54, 0x78, 0x12, 0x12, 0x0a, 0x04, + 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, + 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x6f, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6c, + 0x6f, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x61, 0x73, 0x5f, 0x77, 0x61, + 0x6e, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x67, 0x61, 0x73, 0x57, + 0x61, 0x6e, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x61, 0x73, 0x5f, 0x75, 0x73, 0x65, + 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x12, 0x52, 0x07, 0x67, 0x61, 0x73, 0x55, 0x73, 0x65, 0x64, + 0x12, 0x35, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1d, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x41, 0x42, 0x43, 0x49, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, + 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x64, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x22, 0x62, + 0x0a, 0x09, 0x41, 0x42, 0x43, 0x49, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, + 0x41, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x41, 0x42, 0x43, 0x49, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x73, 0x22, 0x37, 0x0a, 0x0d, 0x41, 0x42, 0x43, 0x49, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 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, 0x22, 0x3b, 0x0a, 0x21, 0x47, + 0x65, 0x74, 0x41, 0x42, 0x43, 0x49, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x73, 0x41, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, + 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x89, 0x01, 0x0a, 0x22, 0x47, 0x65, 0x74, + 0x41, 0x42, 0x43, 0x49, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x41, + 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x0c, 0x0a, 0x01, 0x76, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x76, 0x12, 0x0c, 0x0a, + 0x01, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x73, 0x12, 0x0c, 0x0a, 0x01, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x65, 0x12, 0x39, 0x0a, 0x09, 0x72, 0x61, 0x77, + 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, + 0x69, 0x2e, 0x52, 0x61, 0x77, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x08, 0x72, 0x61, 0x77, 0x42, + 0x6c, 0x6f, 0x63, 0x6b, 0x32, 0xdc, 0x05, 0x0a, 0x10, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x41, 0x50, 0x49, 0x12, 0x6a, 0x0a, 0x0f, 0x47, 0x65, 0x74, + 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x2a, 0x2e, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, + 0x69, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, + 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, 0x11, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, + 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2c, 0x2e, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, + 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x53, 0x74, + 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x70, 0x0a, 0x11, 0x47, 0x65, 0x74, + 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x50, 0x43, 0x12, 0x2c, + 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, + 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x73, 0x52, 0x50, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, + 0x69, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x52, 0x50, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x73, 0x0a, 0x12, 0x47, + 0x65, 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x50, + 0x43, 0x12, 0x2d, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, + 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x50, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x2e, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x50, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x73, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x41, 0x42, 0x43, 0x49, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2d, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x41, + 0x42, 0x43, 0x49, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x42, + 0x43, 0x49, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8b, 0x01, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x41, 0x42, 0x43, + 0x49, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x74, 0x48, 0x65, + 0x69, 0x67, 0x68, 0x74, 0x12, 0x35, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x42, 0x43, + 0x49, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x74, 0x48, 0x65, + 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, + 0x2e, 0x47, 0x65, 0x74, 0x41, 0x42, 0x43, 0x49, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x73, 0x41, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x42, 0x17, 0x5a, 0x15, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_goadesign_goagen_event_provider_api_proto_rawDescOnce sync.Once + file_goadesign_goagen_event_provider_api_proto_rawDescData = file_goadesign_goagen_event_provider_api_proto_rawDesc +) + +func file_goadesign_goagen_event_provider_api_proto_rawDescGZIP() []byte { + file_goadesign_goagen_event_provider_api_proto_rawDescOnce.Do(func() { + file_goadesign_goagen_event_provider_api_proto_rawDescData = protoimpl.X.CompressGZIP(file_goadesign_goagen_event_provider_api_proto_rawDescData) + }) + return file_goadesign_goagen_event_provider_api_proto_rawDescData +} + +var file_goadesign_goagen_event_provider_api_proto_msgTypes = make([]protoimpl.MessageInfo, 21) +var file_goadesign_goagen_event_provider_api_proto_goTypes = []interface{}{ + (*GetLatestHeightRequest)(nil), // 0: event_provider_api.GetLatestHeightRequest + (*GetLatestHeightResponse)(nil), // 1: event_provider_api.GetLatestHeightResponse + (*LatestBlockHeight)(nil), // 2: event_provider_api.LatestBlockHeight + (*StreamBlockEventsRequest)(nil), // 3: event_provider_api.StreamBlockEventsRequest + (*StreamBlockEventsResponse)(nil), // 4: event_provider_api.StreamBlockEventsResponse + (*Block)(nil), // 5: event_provider_api.Block + (*BlockEvent)(nil), // 6: event_provider_api.BlockEvent + (*GetBlockEventsRPCRequest)(nil), // 7: event_provider_api.GetBlockEventsRPCRequest + (*GetBlockEventsRPCResponse)(nil), // 8: event_provider_api.GetBlockEventsRPCResponse + (*BlockEventsRPC)(nil), // 9: event_provider_api.BlockEventsRPC + (*GetCustomEventsRPCRequest)(nil), // 10: event_provider_api.GetCustomEventsRPCRequest + (*GetCustomEventsRPCResponse)(nil), // 11: event_provider_api.GetCustomEventsRPCResponse + (*GetABCIBlockEventsRequest)(nil), // 12: event_provider_api.GetABCIBlockEventsRequest + (*GetABCIBlockEventsResponse)(nil), // 13: event_provider_api.GetABCIBlockEventsResponse + (*RawBlock)(nil), // 14: event_provider_api.RawBlock + (*ABCIResponseDeliverTx)(nil), // 15: event_provider_api.ABCIResponseDeliverTx + (*ABCIEvent)(nil), // 16: event_provider_api.ABCIEvent + (*ABCIAttribute)(nil), // 17: event_provider_api.ABCIAttribute + (*GetABCIBlockEventsAtHeightRequest)(nil), // 18: event_provider_api.GetABCIBlockEventsAtHeightRequest + (*GetABCIBlockEventsAtHeightResponse)(nil), // 19: event_provider_api.GetABCIBlockEventsAtHeightResponse + nil, // 20: event_provider_api.BlockEventsRPC.TxHashesEntry +} +var file_goadesign_goagen_event_provider_api_proto_depIdxs = []int32{ + 2, // 0: event_provider_api.GetLatestHeightResponse.data:type_name -> event_provider_api.LatestBlockHeight + 5, // 1: event_provider_api.StreamBlockEventsResponse.blocks:type_name -> event_provider_api.Block + 6, // 2: event_provider_api.Block.events:type_name -> event_provider_api.BlockEvent + 9, // 3: event_provider_api.GetBlockEventsRPCResponse.data:type_name -> event_provider_api.BlockEventsRPC + 20, // 4: event_provider_api.BlockEventsRPC.tx_hashes:type_name -> event_provider_api.BlockEventsRPC.TxHashesEntry + 9, // 5: event_provider_api.GetCustomEventsRPCResponse.data:type_name -> event_provider_api.BlockEventsRPC + 14, // 6: event_provider_api.GetABCIBlockEventsResponse.raw_block:type_name -> event_provider_api.RawBlock + 15, // 7: event_provider_api.RawBlock.txs_results:type_name -> event_provider_api.ABCIResponseDeliverTx + 16, // 8: event_provider_api.RawBlock.begin_block_events:type_name -> event_provider_api.ABCIEvent + 16, // 9: event_provider_api.RawBlock.end_block_events:type_name -> event_provider_api.ABCIEvent + 16, // 10: event_provider_api.ABCIResponseDeliverTx.events:type_name -> event_provider_api.ABCIEvent + 17, // 11: event_provider_api.ABCIEvent.attributes:type_name -> event_provider_api.ABCIAttribute + 14, // 12: event_provider_api.GetABCIBlockEventsAtHeightResponse.raw_block:type_name -> event_provider_api.RawBlock + 0, // 13: event_provider_api.EventProviderAPI.GetLatestHeight:input_type -> event_provider_api.GetLatestHeightRequest + 3, // 14: event_provider_api.EventProviderAPI.StreamBlockEvents:input_type -> event_provider_api.StreamBlockEventsRequest + 7, // 15: event_provider_api.EventProviderAPI.GetBlockEventsRPC:input_type -> event_provider_api.GetBlockEventsRPCRequest + 10, // 16: event_provider_api.EventProviderAPI.GetCustomEventsRPC:input_type -> event_provider_api.GetCustomEventsRPCRequest + 12, // 17: event_provider_api.EventProviderAPI.GetABCIBlockEvents:input_type -> event_provider_api.GetABCIBlockEventsRequest + 18, // 18: event_provider_api.EventProviderAPI.GetABCIBlockEventsAtHeight:input_type -> event_provider_api.GetABCIBlockEventsAtHeightRequest + 1, // 19: event_provider_api.EventProviderAPI.GetLatestHeight:output_type -> event_provider_api.GetLatestHeightResponse + 4, // 20: event_provider_api.EventProviderAPI.StreamBlockEvents:output_type -> event_provider_api.StreamBlockEventsResponse + 8, // 21: event_provider_api.EventProviderAPI.GetBlockEventsRPC:output_type -> event_provider_api.GetBlockEventsRPCResponse + 11, // 22: event_provider_api.EventProviderAPI.GetCustomEventsRPC:output_type -> event_provider_api.GetCustomEventsRPCResponse + 13, // 23: event_provider_api.EventProviderAPI.GetABCIBlockEvents:output_type -> event_provider_api.GetABCIBlockEventsResponse + 19, // 24: event_provider_api.EventProviderAPI.GetABCIBlockEventsAtHeight:output_type -> event_provider_api.GetABCIBlockEventsAtHeightResponse + 19, // [19:25] is the sub-list for method output_type + 13, // [13:19] is the sub-list for method input_type + 13, // [13:13] is the sub-list for extension type_name + 13, // [13:13] is the sub-list for extension extendee + 0, // [0:13] is the sub-list for field type_name +} + +func init() { file_goadesign_goagen_event_provider_api_proto_init() } +func file_goadesign_goagen_event_provider_api_proto_init() { + if File_goadesign_goagen_event_provider_api_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_goadesign_goagen_event_provider_api_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetLatestHeightRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetLatestHeightResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LatestBlockHeight); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*StreamBlockEventsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*StreamBlockEventsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Block); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BlockEvent); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetBlockEventsRPCRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetBlockEventsRPCResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BlockEventsRPC); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetCustomEventsRPCRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetCustomEventsRPCResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetABCIBlockEventsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetABCIBlockEventsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RawBlock); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ABCIResponseDeliverTx); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ABCIEvent); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ABCIAttribute); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetABCIBlockEventsAtHeightRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_event_provider_api_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetABCIBlockEventsAtHeightResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_goadesign_goagen_event_provider_api_proto_rawDesc, + NumEnums: 0, + NumMessages: 21, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_goadesign_goagen_event_provider_api_proto_goTypes, + DependencyIndexes: file_goadesign_goagen_event_provider_api_proto_depIdxs, + MessageInfos: file_goadesign_goagen_event_provider_api_proto_msgTypes, + }.Build() + File_goadesign_goagen_event_provider_api_proto = out.File + file_goadesign_goagen_event_provider_api_proto_rawDesc = nil + file_goadesign_goagen_event_provider_api_proto_goTypes = nil + file_goadesign_goagen_event_provider_api_proto_depIdxs = nil +} diff --git a/exchange/event_provider_api/pb/goadesign_goagen_event_provider_api_grpc.pb.go b/exchange/event_provider_api/pb/goadesign_goagen_event_provider_api_grpc.pb.go new file mode 100644 index 00000000..7d333c20 --- /dev/null +++ b/exchange/event_provider_api/pb/goadesign_goagen_event_provider_api_grpc.pb.go @@ -0,0 +1,325 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.2.0 +// - protoc v4.24.4 +// source: goadesign_goagen_event_provider_api.proto + +package event_provider_apipb + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// 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 + +// EventProviderAPIClient is the client API for EventProviderAPI service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type EventProviderAPIClient interface { + // Get latest block from event provider + GetLatestHeight(ctx context.Context, in *GetLatestHeightRequest, opts ...grpc.CallOption) (*GetLatestHeightResponse, error) + // Stream processed block events for selected backend + StreamBlockEvents(ctx context.Context, in *StreamBlockEventsRequest, opts ...grpc.CallOption) (EventProviderAPI_StreamBlockEventsClient, error) + // Get processed block events for selected backend + GetBlockEventsRPC(ctx context.Context, in *GetBlockEventsRPCRequest, opts ...grpc.CallOption) (*GetBlockEventsRPCResponse, error) + // Get custom processed block events for selected backend + GetCustomEventsRPC(ctx context.Context, in *GetCustomEventsRPCRequest, opts ...grpc.CallOption) (*GetCustomEventsRPCResponse, error) + // Get raw block events for selected height + GetABCIBlockEvents(ctx context.Context, in *GetABCIBlockEventsRequest, opts ...grpc.CallOption) (*GetABCIBlockEventsResponse, error) + // Get all raw block events for selected height + GetABCIBlockEventsAtHeight(ctx context.Context, in *GetABCIBlockEventsAtHeightRequest, opts ...grpc.CallOption) (*GetABCIBlockEventsAtHeightResponse, error) +} + +type eventProviderAPIClient struct { + cc grpc.ClientConnInterface +} + +func NewEventProviderAPIClient(cc grpc.ClientConnInterface) EventProviderAPIClient { + return &eventProviderAPIClient{cc} +} + +func (c *eventProviderAPIClient) GetLatestHeight(ctx context.Context, in *GetLatestHeightRequest, opts ...grpc.CallOption) (*GetLatestHeightResponse, error) { + out := new(GetLatestHeightResponse) + err := c.cc.Invoke(ctx, "/event_provider_api.EventProviderAPI/GetLatestHeight", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *eventProviderAPIClient) StreamBlockEvents(ctx context.Context, in *StreamBlockEventsRequest, opts ...grpc.CallOption) (EventProviderAPI_StreamBlockEventsClient, error) { + stream, err := c.cc.NewStream(ctx, &EventProviderAPI_ServiceDesc.Streams[0], "/event_provider_api.EventProviderAPI/StreamBlockEvents", opts...) + if err != nil { + return nil, err + } + x := &eventProviderAPIStreamBlockEventsClient{stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type EventProviderAPI_StreamBlockEventsClient interface { + Recv() (*StreamBlockEventsResponse, error) + grpc.ClientStream +} + +type eventProviderAPIStreamBlockEventsClient struct { + grpc.ClientStream +} + +func (x *eventProviderAPIStreamBlockEventsClient) Recv() (*StreamBlockEventsResponse, error) { + m := new(StreamBlockEventsResponse) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +func (c *eventProviderAPIClient) GetBlockEventsRPC(ctx context.Context, in *GetBlockEventsRPCRequest, opts ...grpc.CallOption) (*GetBlockEventsRPCResponse, error) { + out := new(GetBlockEventsRPCResponse) + err := c.cc.Invoke(ctx, "/event_provider_api.EventProviderAPI/GetBlockEventsRPC", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *eventProviderAPIClient) GetCustomEventsRPC(ctx context.Context, in *GetCustomEventsRPCRequest, opts ...grpc.CallOption) (*GetCustomEventsRPCResponse, error) { + out := new(GetCustomEventsRPCResponse) + err := c.cc.Invoke(ctx, "/event_provider_api.EventProviderAPI/GetCustomEventsRPC", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *eventProviderAPIClient) GetABCIBlockEvents(ctx context.Context, in *GetABCIBlockEventsRequest, opts ...grpc.CallOption) (*GetABCIBlockEventsResponse, error) { + out := new(GetABCIBlockEventsResponse) + err := c.cc.Invoke(ctx, "/event_provider_api.EventProviderAPI/GetABCIBlockEvents", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *eventProviderAPIClient) GetABCIBlockEventsAtHeight(ctx context.Context, in *GetABCIBlockEventsAtHeightRequest, opts ...grpc.CallOption) (*GetABCIBlockEventsAtHeightResponse, error) { + out := new(GetABCIBlockEventsAtHeightResponse) + err := c.cc.Invoke(ctx, "/event_provider_api.EventProviderAPI/GetABCIBlockEventsAtHeight", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// EventProviderAPIServer is the server API for EventProviderAPI service. +// All implementations must embed UnimplementedEventProviderAPIServer +// for forward compatibility +type EventProviderAPIServer interface { + // Get latest block from event provider + GetLatestHeight(context.Context, *GetLatestHeightRequest) (*GetLatestHeightResponse, error) + // Stream processed block events for selected backend + StreamBlockEvents(*StreamBlockEventsRequest, EventProviderAPI_StreamBlockEventsServer) error + // Get processed block events for selected backend + GetBlockEventsRPC(context.Context, *GetBlockEventsRPCRequest) (*GetBlockEventsRPCResponse, error) + // Get custom processed block events for selected backend + GetCustomEventsRPC(context.Context, *GetCustomEventsRPCRequest) (*GetCustomEventsRPCResponse, error) + // Get raw block events for selected height + GetABCIBlockEvents(context.Context, *GetABCIBlockEventsRequest) (*GetABCIBlockEventsResponse, error) + // Get all raw block events for selected height + GetABCIBlockEventsAtHeight(context.Context, *GetABCIBlockEventsAtHeightRequest) (*GetABCIBlockEventsAtHeightResponse, error) + mustEmbedUnimplementedEventProviderAPIServer() +} + +// UnimplementedEventProviderAPIServer must be embedded to have forward compatible implementations. +type UnimplementedEventProviderAPIServer struct { +} + +func (UnimplementedEventProviderAPIServer) GetLatestHeight(context.Context, *GetLatestHeightRequest) (*GetLatestHeightResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetLatestHeight not implemented") +} +func (UnimplementedEventProviderAPIServer) StreamBlockEvents(*StreamBlockEventsRequest, EventProviderAPI_StreamBlockEventsServer) error { + return status.Errorf(codes.Unimplemented, "method StreamBlockEvents not implemented") +} +func (UnimplementedEventProviderAPIServer) GetBlockEventsRPC(context.Context, *GetBlockEventsRPCRequest) (*GetBlockEventsRPCResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetBlockEventsRPC not implemented") +} +func (UnimplementedEventProviderAPIServer) GetCustomEventsRPC(context.Context, *GetCustomEventsRPCRequest) (*GetCustomEventsRPCResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetCustomEventsRPC not implemented") +} +func (UnimplementedEventProviderAPIServer) GetABCIBlockEvents(context.Context, *GetABCIBlockEventsRequest) (*GetABCIBlockEventsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetABCIBlockEvents not implemented") +} +func (UnimplementedEventProviderAPIServer) GetABCIBlockEventsAtHeight(context.Context, *GetABCIBlockEventsAtHeightRequest) (*GetABCIBlockEventsAtHeightResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetABCIBlockEventsAtHeight not implemented") +} +func (UnimplementedEventProviderAPIServer) mustEmbedUnimplementedEventProviderAPIServer() {} + +// UnsafeEventProviderAPIServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to EventProviderAPIServer will +// result in compilation errors. +type UnsafeEventProviderAPIServer interface { + mustEmbedUnimplementedEventProviderAPIServer() +} + +func RegisterEventProviderAPIServer(s grpc.ServiceRegistrar, srv EventProviderAPIServer) { + s.RegisterService(&EventProviderAPI_ServiceDesc, srv) +} + +func _EventProviderAPI_GetLatestHeight_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetLatestHeightRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(EventProviderAPIServer).GetLatestHeight(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/event_provider_api.EventProviderAPI/GetLatestHeight", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(EventProviderAPIServer).GetLatestHeight(ctx, req.(*GetLatestHeightRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _EventProviderAPI_StreamBlockEvents_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(StreamBlockEventsRequest) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(EventProviderAPIServer).StreamBlockEvents(m, &eventProviderAPIStreamBlockEventsServer{stream}) +} + +type EventProviderAPI_StreamBlockEventsServer interface { + Send(*StreamBlockEventsResponse) error + grpc.ServerStream +} + +type eventProviderAPIStreamBlockEventsServer struct { + grpc.ServerStream +} + +func (x *eventProviderAPIStreamBlockEventsServer) Send(m *StreamBlockEventsResponse) error { + return x.ServerStream.SendMsg(m) +} + +func _EventProviderAPI_GetBlockEventsRPC_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetBlockEventsRPCRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(EventProviderAPIServer).GetBlockEventsRPC(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/event_provider_api.EventProviderAPI/GetBlockEventsRPC", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(EventProviderAPIServer).GetBlockEventsRPC(ctx, req.(*GetBlockEventsRPCRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _EventProviderAPI_GetCustomEventsRPC_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetCustomEventsRPCRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(EventProviderAPIServer).GetCustomEventsRPC(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/event_provider_api.EventProviderAPI/GetCustomEventsRPC", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(EventProviderAPIServer).GetCustomEventsRPC(ctx, req.(*GetCustomEventsRPCRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _EventProviderAPI_GetABCIBlockEvents_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetABCIBlockEventsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(EventProviderAPIServer).GetABCIBlockEvents(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/event_provider_api.EventProviderAPI/GetABCIBlockEvents", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(EventProviderAPIServer).GetABCIBlockEvents(ctx, req.(*GetABCIBlockEventsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _EventProviderAPI_GetABCIBlockEventsAtHeight_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetABCIBlockEventsAtHeightRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(EventProviderAPIServer).GetABCIBlockEventsAtHeight(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/event_provider_api.EventProviderAPI/GetABCIBlockEventsAtHeight", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(EventProviderAPIServer).GetABCIBlockEventsAtHeight(ctx, req.(*GetABCIBlockEventsAtHeightRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// EventProviderAPI_ServiceDesc is the grpc.ServiceDesc for EventProviderAPI service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var EventProviderAPI_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "event_provider_api.EventProviderAPI", + HandlerType: (*EventProviderAPIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "GetLatestHeight", + Handler: _EventProviderAPI_GetLatestHeight_Handler, + }, + { + MethodName: "GetBlockEventsRPC", + Handler: _EventProviderAPI_GetBlockEventsRPC_Handler, + }, + { + MethodName: "GetCustomEventsRPC", + Handler: _EventProviderAPI_GetCustomEventsRPC_Handler, + }, + { + MethodName: "GetABCIBlockEvents", + Handler: _EventProviderAPI_GetABCIBlockEvents_Handler, + }, + { + MethodName: "GetABCIBlockEventsAtHeight", + Handler: _EventProviderAPI_GetABCIBlockEventsAtHeight_Handler, + }, + }, + Streams: []grpc.StreamDesc{ + { + StreamName: "StreamBlockEvents", + Handler: _EventProviderAPI_StreamBlockEvents_Handler, + ServerStreams: true, + }, + }, + Metadata: "goadesign_goagen_event_provider_api.proto", +} diff --git a/exchange/exchange_rpc/pb/goadesign_goagen_injective_exchange_rpc.pb.go b/exchange/exchange_rpc/pb/goadesign_goagen_injective_exchange_rpc.pb.go index 9011281f..28783f45 100644 --- a/exchange/exchange_rpc/pb/goadesign_goagen_injective_exchange_rpc.pb.go +++ b/exchange/exchange_rpc/pb/goadesign_goagen_injective_exchange_rpc.pb.go @@ -8,7 +8,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 -// protoc v3.19.4 +// protoc v4.24.4 // source: goadesign_goagen_injective_exchange_rpc.proto package injective_exchange_rpcpb @@ -206,7 +206,7 @@ type PrepareTxRequest struct { Fee *CosmosTxFee `protobuf:"bytes,6,opt,name=fee,proto3" json:"fee,omitempty"` // List of Cosmos proto3-encoded Msgs to include in a single tx Msgs [][]byte `protobuf:"bytes,7,rep,name=msgs,proto3" json:"msgs,omitempty"` - // The wrapper of the EIP712 message, V1 or V2 + // The wrapper of the EIP712 message, 'v1'/'v2' or 'V1'/'V2' Eip712Wrapper string `protobuf:"bytes,8,opt,name=eip712_wrapper,json=eip712Wrapper,proto3" json:"eip712_wrapper,omitempty"` } @@ -515,6 +515,174 @@ func (x *PrepareTxResponse) GetFeePayerSig() string { return "" } +type PrepareEip712Request struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Specify chainID for the target tx + ChainId uint64 `protobuf:"varint,1,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` + // Specify Ethereum address of a signer + SignerAddress string `protobuf:"bytes,2,opt,name=signer_address,json=signerAddress,proto3" json:"signer_address,omitempty"` + // Sequence number of the transaction signer + Sequence uint64 `protobuf:"varint,3,opt,name=sequence,proto3" json:"sequence,omitempty"` + // Account number of the transaction signer + AccountNumber uint64 `protobuf:"varint,4,opt,name=account_number,json=accountNumber,proto3" json:"account_number,omitempty"` + // Textual memo information to attach with tx + Memo string `protobuf:"bytes,5,opt,name=memo,proto3" json:"memo,omitempty"` + // Block height until which the transaction is valid. + TimeoutHeight uint64 `protobuf:"varint,6,opt,name=timeout_height,json=timeoutHeight,proto3" json:"timeout_height,omitempty"` + // Transaction fee details. + Fee *CosmosTxFee `protobuf:"bytes,7,opt,name=fee,proto3" json:"fee,omitempty"` + // List of Cosmos proto3-encoded Msgs to include in a single tx + Msgs [][]byte `protobuf:"bytes,8,rep,name=msgs,proto3" json:"msgs,omitempty"` + // The wrapper of the EIP712 message, 'v1'/'v2' or 'V1'/'V2' + Eip712Wrapper string `protobuf:"bytes,9,opt,name=eip712_wrapper,json=eip712Wrapper,proto3" json:"eip712_wrapper,omitempty"` +} + +func (x *PrepareEip712Request) Reset() { + *x = PrepareEip712Request{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PrepareEip712Request) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PrepareEip712Request) ProtoMessage() {} + +func (x *PrepareEip712Request) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PrepareEip712Request.ProtoReflect.Descriptor instead. +func (*PrepareEip712Request) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{6} +} + +func (x *PrepareEip712Request) GetChainId() uint64 { + if x != nil { + return x.ChainId + } + return 0 +} + +func (x *PrepareEip712Request) GetSignerAddress() string { + if x != nil { + return x.SignerAddress + } + return "" +} + +func (x *PrepareEip712Request) GetSequence() uint64 { + if x != nil { + return x.Sequence + } + return 0 +} + +func (x *PrepareEip712Request) GetAccountNumber() uint64 { + if x != nil { + return x.AccountNumber + } + return 0 +} + +func (x *PrepareEip712Request) GetMemo() string { + if x != nil { + return x.Memo + } + return "" +} + +func (x *PrepareEip712Request) GetTimeoutHeight() uint64 { + if x != nil { + return x.TimeoutHeight + } + return 0 +} + +func (x *PrepareEip712Request) GetFee() *CosmosTxFee { + if x != nil { + return x.Fee + } + return nil +} + +func (x *PrepareEip712Request) GetMsgs() [][]byte { + if x != nil { + return x.Msgs + } + return nil +} + +func (x *PrepareEip712Request) GetEip712Wrapper() string { + if x != nil { + return x.Eip712Wrapper + } + return "" +} + +type PrepareEip712Response struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // EIP712-compatible message suitable for signing with eth_signTypedData_v4 + Data string `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"` +} + +func (x *PrepareEip712Response) Reset() { + *x = PrepareEip712Response{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PrepareEip712Response) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PrepareEip712Response) ProtoMessage() {} + +func (x *PrepareEip712Response) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PrepareEip712Response.ProtoReflect.Descriptor instead. +func (*PrepareEip712Response) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{7} +} + +func (x *PrepareEip712Response) GetData() string { + if x != nil { + return x.Data + } + return "" +} + type BroadcastTxRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -541,7 +709,7 @@ type BroadcastTxRequest struct { func (x *BroadcastTxRequest) Reset() { *x = BroadcastTxRequest{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[6] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -554,7 +722,7 @@ func (x *BroadcastTxRequest) String() string { func (*BroadcastTxRequest) ProtoMessage() {} func (x *BroadcastTxRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[6] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -567,7 +735,7 @@ func (x *BroadcastTxRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use BroadcastTxRequest.ProtoReflect.Descriptor instead. func (*BroadcastTxRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{6} + return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{8} } func (x *BroadcastTxRequest) GetChainId() uint64 { @@ -640,7 +808,7 @@ type CosmosPubKey struct { func (x *CosmosPubKey) Reset() { *x = CosmosPubKey{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[7] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -653,7 +821,7 @@ func (x *CosmosPubKey) String() string { func (*CosmosPubKey) ProtoMessage() {} func (x *CosmosPubKey) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[7] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -666,7 +834,7 @@ func (x *CosmosPubKey) ProtoReflect() protoreflect.Message { // Deprecated: Use CosmosPubKey.ProtoReflect.Descriptor instead. func (*CosmosPubKey) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{7} + return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{9} } func (x *CosmosPubKey) GetType() string { @@ -710,7 +878,7 @@ type BroadcastTxResponse struct { func (x *BroadcastTxResponse) Reset() { *x = BroadcastTxResponse{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[8] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -723,7 +891,7 @@ func (x *BroadcastTxResponse) String() string { func (*BroadcastTxResponse) ProtoMessage() {} func (x *BroadcastTxResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[8] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -736,7 +904,7 @@ func (x *BroadcastTxResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use BroadcastTxResponse.ProtoReflect.Descriptor instead. func (*BroadcastTxResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{8} + return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{10} } func (x *BroadcastTxResponse) GetTxHash() string { @@ -817,7 +985,7 @@ type PrepareCosmosTxRequest struct { func (x *PrepareCosmosTxRequest) Reset() { *x = PrepareCosmosTxRequest{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[9] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -830,7 +998,7 @@ func (x *PrepareCosmosTxRequest) String() string { func (*PrepareCosmosTxRequest) ProtoMessage() {} func (x *PrepareCosmosTxRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[9] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -843,7 +1011,7 @@ func (x *PrepareCosmosTxRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use PrepareCosmosTxRequest.ProtoReflect.Descriptor instead. func (*PrepareCosmosTxRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{9} + return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{11} } func (x *PrepareCosmosTxRequest) GetChainId() uint64 { @@ -910,7 +1078,7 @@ type PrepareCosmosTxResponse struct { func (x *PrepareCosmosTxResponse) Reset() { *x = PrepareCosmosTxResponse{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[10] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -923,7 +1091,7 @@ func (x *PrepareCosmosTxResponse) String() string { func (*PrepareCosmosTxResponse) ProtoMessage() {} func (x *PrepareCosmosTxResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[10] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -936,7 +1104,7 @@ func (x *PrepareCosmosTxResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use PrepareCosmosTxResponse.ProtoReflect.Descriptor instead. func (*PrepareCosmosTxResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{10} + return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{12} } func (x *PrepareCosmosTxResponse) GetTx() []byte { @@ -999,7 +1167,7 @@ type BroadcastCosmosTxRequest struct { func (x *BroadcastCosmosTxRequest) Reset() { *x = BroadcastCosmosTxRequest{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[11] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1012,7 +1180,7 @@ func (x *BroadcastCosmosTxRequest) String() string { func (*BroadcastCosmosTxRequest) ProtoMessage() {} func (x *BroadcastCosmosTxRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[11] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1025,7 +1193,7 @@ func (x *BroadcastCosmosTxRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use BroadcastCosmosTxRequest.ProtoReflect.Descriptor instead. func (*BroadcastCosmosTxRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{11} + return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{13} } func (x *BroadcastCosmosTxRequest) GetTx() []byte { @@ -1083,7 +1251,7 @@ type BroadcastCosmosTxResponse struct { func (x *BroadcastCosmosTxResponse) Reset() { *x = BroadcastCosmosTxResponse{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[12] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1096,7 +1264,7 @@ func (x *BroadcastCosmosTxResponse) String() string { func (*BroadcastCosmosTxResponse) ProtoMessage() {} func (x *BroadcastCosmosTxResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[12] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1109,7 +1277,7 @@ func (x *BroadcastCosmosTxResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use BroadcastCosmosTxResponse.ProtoReflect.Descriptor instead. func (*BroadcastCosmosTxResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{12} + return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{14} } func (x *BroadcastCosmosTxResponse) GetTxHash() string { @@ -1177,7 +1345,7 @@ type GetFeePayerRequest struct { func (x *GetFeePayerRequest) Reset() { *x = GetFeePayerRequest{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[13] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1190,7 +1358,7 @@ func (x *GetFeePayerRequest) String() string { func (*GetFeePayerRequest) ProtoMessage() {} func (x *GetFeePayerRequest) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[13] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1203,7 +1371,7 @@ func (x *GetFeePayerRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetFeePayerRequest.ProtoReflect.Descriptor instead. func (*GetFeePayerRequest) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{13} + return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{15} } type GetFeePayerResponse struct { @@ -1220,7 +1388,7 @@ type GetFeePayerResponse struct { func (x *GetFeePayerResponse) Reset() { *x = GetFeePayerResponse{} if protoimpl.UnsafeEnabled { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[14] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1233,7 +1401,7 @@ func (x *GetFeePayerResponse) String() string { func (*GetFeePayerResponse) ProtoMessage() {} func (x *GetFeePayerResponse) ProtoReflect() protoreflect.Message { - mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[14] + mi := &file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1246,7 +1414,7 @@ func (x *GetFeePayerResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetFeePayerResponse.ProtoReflect.Descriptor instead. func (*GetFeePayerResponse) Descriptor() ([]byte, []int) { - return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{14} + return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP(), []int{16} } func (x *GetFeePayerResponse) GetFeePayer() string { @@ -1328,148 +1496,179 @@ var file_goadesign_goagen_injective_exchange_rpc_proto_rawDesc = []byte{ 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x53, 0x69, - 0x67, 0x22, 0x85, 0x02, 0x0a, 0x12, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, - 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x02, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x73, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x0c, 0x52, 0x04, 0x6d, 0x73, 0x67, 0x73, 0x12, 0x3d, 0x0a, 0x07, 0x70, 0x75, 0x62, 0x5f, 0x6b, - 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x52, 0x06, - 0x70, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, - 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x65, - 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, - 0x72, 0x12, 0x22, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, - 0x69, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x50, 0x61, 0x79, - 0x65, 0x72, 0x53, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0x34, 0x0a, 0x0c, 0x43, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, - 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x22, - 0xd9, 0x01, 0x0a, 0x13, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x78, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, - 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, - 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x12, - 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, - 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1c, - 0x0a, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, - 0x63, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, - 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x61, 0x77, 0x5f, 0x6c, 0x6f, 0x67, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x61, 0x77, 0x4c, 0x6f, 0x67, 0x12, 0x1c, 0x0a, - 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xe0, 0x01, 0x0a, 0x16, - 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, - 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65, - 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x6d, 0x6f, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x12, 0x25, 0x0a, 0x0e, - 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, 0x69, - 0x67, 0x68, 0x74, 0x12, 0x35, 0x0a, 0x03, 0x66, 0x65, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, + 0x67, 0x22, 0xc8, 0x02, 0x0a, 0x14, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x45, 0x69, 0x70, + 0x37, 0x31, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, + 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x68, + 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x5f, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, + 0x69, 0x67, 0x6e, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, + 0x65, 0x6d, 0x6f, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x68, + 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x74, 0x69, 0x6d, + 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x35, 0x0a, 0x03, 0x66, 0x65, + 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, + 0x2e, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x46, 0x65, 0x65, 0x52, 0x03, 0x66, 0x65, + 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x73, 0x67, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0c, 0x52, + 0x04, 0x6d, 0x73, 0x67, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x69, 0x70, 0x37, 0x31, 0x32, 0x5f, + 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, + 0x69, 0x70, 0x37, 0x31, 0x32, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x22, 0x2b, 0x0a, 0x15, + 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x45, 0x69, 0x70, 0x37, 0x31, 0x32, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x85, 0x02, 0x0a, 0x12, 0x42, 0x72, + 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x74, + 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x6d, + 0x73, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x04, 0x6d, 0x73, 0x67, 0x73, 0x12, + 0x3d, 0x0a, 0x07, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x54, 0x78, 0x46, 0x65, 0x65, 0x52, 0x03, 0x66, 0x65, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x73, - 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x04, 0x6d, 0x73, 0x67, 0x73, 0x22, 0xfa, - 0x01, 0x0a, 0x17, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x69, - 0x67, 0x6e, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, - 0x69, 0x67, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x75, 0x62, 0x5f, 0x6b, - 0x65, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, - 0x75, 0x62, 0x4b, 0x65, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x65, 0x65, - 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x65, - 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x66, - 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x53, 0x69, 0x67, 0x12, 0x4f, 0x0a, 0x11, 0x66, 0x65, - 0x65, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x52, 0x0e, 0x66, 0x65, 0x65, - 0x50, 0x61, 0x79, 0x65, 0x72, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x22, 0xae, 0x01, 0x0a, 0x18, - 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, - 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, 0x12, 0x3d, 0x0a, 0x07, 0x70, 0x75, 0x62, 0x5f, - 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x52, - 0x06, 0x70, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, - 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0xdf, 0x01, 0x0a, - 0x19, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, - 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, - 0x61, 0x73, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x12, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x69, - 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, - 0x78, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, - 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x63, - 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x61, 0x77, 0x5f, 0x6c, - 0x6f, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x61, 0x77, 0x4c, 0x6f, 0x67, - 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x14, - 0x0a, 0x12, 0x47, 0x65, 0x74, 0x46, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x22, 0x83, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x46, 0x65, 0x65, 0x50, - 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, - 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x66, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x12, 0x4f, 0x0a, 0x11, 0x66, 0x65, 0x65, - 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x52, 0x0e, 0x66, 0x65, 0x65, 0x50, - 0x61, 0x79, 0x65, 0x72, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x32, 0x8c, 0x05, 0x0a, 0x14, 0x49, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x52, 0x50, 0x43, 0x12, 0x54, 0x0a, 0x05, 0x47, 0x65, 0x74, 0x54, 0x78, 0x12, 0x24, 0x2e, 0x69, + 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x70, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x1c, + 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, + 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x66, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x0d, 0x66, 0x65, 0x65, + 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x66, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x53, 0x69, 0x67, 0x12, 0x12, 0x0a, + 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x6f, 0x64, + 0x65, 0x22, 0x34, 0x0a, 0x0c, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x50, 0x75, 0x62, 0x4b, 0x65, + 0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x22, 0xd9, 0x01, 0x0a, 0x13, 0x42, 0x72, 0x6f, 0x61, + 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, + 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x12, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, + 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x17, 0x0a, 0x07, + 0x72, 0x61, 0x77, 0x5f, 0x6c, 0x6f, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, + 0x61, 0x77, 0x4c, 0x6f, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x22, 0xe0, 0x01, 0x0a, 0x16, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x43, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, + 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x6e, + 0x64, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x6d, 0x65, 0x6d, 0x6f, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, + 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x74, 0x69, + 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x35, 0x0a, 0x03, 0x66, + 0x65, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, + 0x63, 0x2e, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x46, 0x65, 0x65, 0x52, 0x03, 0x66, + 0x65, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x73, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0c, + 0x52, 0x04, 0x6d, 0x73, 0x67, 0x73, 0x22, 0xfa, 0x01, 0x0a, 0x17, 0x50, 0x72, 0x65, 0x70, 0x61, + 0x72, 0x65, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, + 0x74, 0x78, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x69, 0x67, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x12, + 0x20, 0x0a, 0x0c, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x12, 0x22, + 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x53, + 0x69, 0x67, 0x12, 0x4f, 0x0a, 0x11, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, + 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, + 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x50, 0x75, 0x62, + 0x4b, 0x65, 0x79, 0x52, 0x0e, 0x66, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x50, 0x75, 0x62, + 0x4b, 0x65, 0x79, 0x22, 0xae, 0x01, 0x0a, 0x18, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, + 0x74, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, + 0x12, 0x3d, 0x0a, 0x07, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x70, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, + 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x25, 0x0a, + 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x41, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x22, 0xdf, 0x01, 0x0a, 0x19, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, + 0x73, 0x74, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, + 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x12, 0x52, 0x06, 0x68, 0x65, 0x69, + 0x67, 0x68, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x64, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, + 0x64, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, + 0x17, 0x0a, 0x07, 0x72, 0x61, 0x77, 0x5f, 0x6c, 0x6f, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x72, 0x61, 0x77, 0x4c, 0x6f, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x14, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x46, 0x65, 0x65, + 0x50, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x83, 0x01, 0x0a, + 0x13, 0x47, 0x65, 0x74, 0x46, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x65, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, + 0x72, 0x12, 0x4f, 0x0a, 0x11, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x70, + 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, - 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x54, - 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x09, 0x50, 0x72, 0x65, - 0x70, 0x61, 0x72, 0x65, 0x54, 0x78, 0x12, 0x28, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, - 0x65, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x0b, 0x42, - 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x78, 0x12, 0x2a, 0x2e, 0x69, 0x6e, 0x6a, + 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x50, 0x75, 0x62, 0x4b, + 0x65, 0x79, 0x52, 0x0e, 0x66, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x50, 0x75, 0x62, 0x4b, + 0x65, 0x79, 0x32, 0xfa, 0x05, 0x0a, 0x14, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x50, 0x43, 0x12, 0x54, 0x0a, 0x05, 0x47, + 0x65, 0x74, 0x54, 0x78, 0x12, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, + 0x74, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x78, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, 0x0f, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x43, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x12, 0x2e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x11, 0x42, 0x72, 0x6f, 0x61, 0x64, - 0x63, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x12, 0x30, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, + 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x60, 0x0a, 0x09, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x54, 0x78, 0x12, 0x28, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, - 0x74, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x66, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x46, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, + 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x54, + 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, + 0x63, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x0d, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x45, 0x69, + 0x70, 0x37, 0x31, 0x32, 0x12, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, + 0x65, 0x70, 0x61, 0x72, 0x65, 0x45, 0x69, 0x70, 0x37, 0x31, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, + 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x65, 0x70, + 0x61, 0x72, 0x65, 0x45, 0x69, 0x70, 0x37, 0x31, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x66, 0x0a, 0x0b, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x78, 0x12, 0x2a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x65, 0x65, - 0x50, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x69, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, + 0x61, 0x73, 0x74, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x69, + 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, + 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, 0x0f, 0x50, 0x72, 0x65, + 0x70, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x12, 0x2e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x1b, 0x5a, 0x19, 0x2f, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x5f, 0x72, 0x70, 0x63, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x69, + 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, + 0x11, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x54, 0x78, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, + 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x72, 0x6f, 0x61, + 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x72, + 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x54, 0x78, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x46, 0x65, + 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x12, 0x2a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, + 0x47, 0x65, 0x74, 0x46, 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, + 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x46, + 0x65, 0x65, 0x50, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, + 0x1b, 0x5a, 0x19, 0x2f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -1484,7 +1683,7 @@ func file_goadesign_goagen_injective_exchange_rpc_proto_rawDescGZIP() []byte { return file_goadesign_goagen_injective_exchange_rpc_proto_rawDescData } -var file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 15) +var file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 17) var file_goadesign_goagen_injective_exchange_rpc_proto_goTypes = []interface{}{ (*GetTxRequest)(nil), // 0: injective_exchange_rpc.GetTxRequest (*GetTxResponse)(nil), // 1: injective_exchange_rpc.GetTxResponse @@ -1492,41 +1691,46 @@ var file_goadesign_goagen_injective_exchange_rpc_proto_goTypes = []interface{}{ (*CosmosTxFee)(nil), // 3: injective_exchange_rpc.CosmosTxFee (*CosmosCoin)(nil), // 4: injective_exchange_rpc.CosmosCoin (*PrepareTxResponse)(nil), // 5: injective_exchange_rpc.PrepareTxResponse - (*BroadcastTxRequest)(nil), // 6: injective_exchange_rpc.BroadcastTxRequest - (*CosmosPubKey)(nil), // 7: injective_exchange_rpc.CosmosPubKey - (*BroadcastTxResponse)(nil), // 8: injective_exchange_rpc.BroadcastTxResponse - (*PrepareCosmosTxRequest)(nil), // 9: injective_exchange_rpc.PrepareCosmosTxRequest - (*PrepareCosmosTxResponse)(nil), // 10: injective_exchange_rpc.PrepareCosmosTxResponse - (*BroadcastCosmosTxRequest)(nil), // 11: injective_exchange_rpc.BroadcastCosmosTxRequest - (*BroadcastCosmosTxResponse)(nil), // 12: injective_exchange_rpc.BroadcastCosmosTxResponse - (*GetFeePayerRequest)(nil), // 13: injective_exchange_rpc.GetFeePayerRequest - (*GetFeePayerResponse)(nil), // 14: injective_exchange_rpc.GetFeePayerResponse + (*PrepareEip712Request)(nil), // 6: injective_exchange_rpc.PrepareEip712Request + (*PrepareEip712Response)(nil), // 7: injective_exchange_rpc.PrepareEip712Response + (*BroadcastTxRequest)(nil), // 8: injective_exchange_rpc.BroadcastTxRequest + (*CosmosPubKey)(nil), // 9: injective_exchange_rpc.CosmosPubKey + (*BroadcastTxResponse)(nil), // 10: injective_exchange_rpc.BroadcastTxResponse + (*PrepareCosmosTxRequest)(nil), // 11: injective_exchange_rpc.PrepareCosmosTxRequest + (*PrepareCosmosTxResponse)(nil), // 12: injective_exchange_rpc.PrepareCosmosTxResponse + (*BroadcastCosmosTxRequest)(nil), // 13: injective_exchange_rpc.BroadcastCosmosTxRequest + (*BroadcastCosmosTxResponse)(nil), // 14: injective_exchange_rpc.BroadcastCosmosTxResponse + (*GetFeePayerRequest)(nil), // 15: injective_exchange_rpc.GetFeePayerRequest + (*GetFeePayerResponse)(nil), // 16: injective_exchange_rpc.GetFeePayerResponse } var file_goadesign_goagen_injective_exchange_rpc_proto_depIdxs = []int32{ 3, // 0: injective_exchange_rpc.PrepareTxRequest.fee:type_name -> injective_exchange_rpc.CosmosTxFee 4, // 1: injective_exchange_rpc.CosmosTxFee.price:type_name -> injective_exchange_rpc.CosmosCoin - 7, // 2: injective_exchange_rpc.BroadcastTxRequest.pub_key:type_name -> injective_exchange_rpc.CosmosPubKey - 3, // 3: injective_exchange_rpc.PrepareCosmosTxRequest.fee:type_name -> injective_exchange_rpc.CosmosTxFee - 7, // 4: injective_exchange_rpc.PrepareCosmosTxResponse.fee_payer_pub_key:type_name -> injective_exchange_rpc.CosmosPubKey - 7, // 5: injective_exchange_rpc.BroadcastCosmosTxRequest.pub_key:type_name -> injective_exchange_rpc.CosmosPubKey - 7, // 6: injective_exchange_rpc.GetFeePayerResponse.fee_payer_pub_key:type_name -> injective_exchange_rpc.CosmosPubKey - 0, // 7: injective_exchange_rpc.InjectiveExchangeRPC.GetTx:input_type -> injective_exchange_rpc.GetTxRequest - 2, // 8: injective_exchange_rpc.InjectiveExchangeRPC.PrepareTx:input_type -> injective_exchange_rpc.PrepareTxRequest - 6, // 9: injective_exchange_rpc.InjectiveExchangeRPC.BroadcastTx:input_type -> injective_exchange_rpc.BroadcastTxRequest - 9, // 10: injective_exchange_rpc.InjectiveExchangeRPC.PrepareCosmosTx:input_type -> injective_exchange_rpc.PrepareCosmosTxRequest - 11, // 11: injective_exchange_rpc.InjectiveExchangeRPC.BroadcastCosmosTx:input_type -> injective_exchange_rpc.BroadcastCosmosTxRequest - 13, // 12: injective_exchange_rpc.InjectiveExchangeRPC.GetFeePayer:input_type -> injective_exchange_rpc.GetFeePayerRequest - 1, // 13: injective_exchange_rpc.InjectiveExchangeRPC.GetTx:output_type -> injective_exchange_rpc.GetTxResponse - 5, // 14: injective_exchange_rpc.InjectiveExchangeRPC.PrepareTx:output_type -> injective_exchange_rpc.PrepareTxResponse - 8, // 15: injective_exchange_rpc.InjectiveExchangeRPC.BroadcastTx:output_type -> injective_exchange_rpc.BroadcastTxResponse - 10, // 16: injective_exchange_rpc.InjectiveExchangeRPC.PrepareCosmosTx:output_type -> injective_exchange_rpc.PrepareCosmosTxResponse - 12, // 17: injective_exchange_rpc.InjectiveExchangeRPC.BroadcastCosmosTx:output_type -> injective_exchange_rpc.BroadcastCosmosTxResponse - 14, // 18: injective_exchange_rpc.InjectiveExchangeRPC.GetFeePayer:output_type -> injective_exchange_rpc.GetFeePayerResponse - 13, // [13:19] is the sub-list for method output_type - 7, // [7:13] is the sub-list for method input_type - 7, // [7:7] is the sub-list for extension type_name - 7, // [7:7] is the sub-list for extension extendee - 0, // [0:7] is the sub-list for field type_name + 3, // 2: injective_exchange_rpc.PrepareEip712Request.fee:type_name -> injective_exchange_rpc.CosmosTxFee + 9, // 3: injective_exchange_rpc.BroadcastTxRequest.pub_key:type_name -> injective_exchange_rpc.CosmosPubKey + 3, // 4: injective_exchange_rpc.PrepareCosmosTxRequest.fee:type_name -> injective_exchange_rpc.CosmosTxFee + 9, // 5: injective_exchange_rpc.PrepareCosmosTxResponse.fee_payer_pub_key:type_name -> injective_exchange_rpc.CosmosPubKey + 9, // 6: injective_exchange_rpc.BroadcastCosmosTxRequest.pub_key:type_name -> injective_exchange_rpc.CosmosPubKey + 9, // 7: injective_exchange_rpc.GetFeePayerResponse.fee_payer_pub_key:type_name -> injective_exchange_rpc.CosmosPubKey + 0, // 8: injective_exchange_rpc.InjectiveExchangeRPC.GetTx:input_type -> injective_exchange_rpc.GetTxRequest + 2, // 9: injective_exchange_rpc.InjectiveExchangeRPC.PrepareTx:input_type -> injective_exchange_rpc.PrepareTxRequest + 6, // 10: injective_exchange_rpc.InjectiveExchangeRPC.PrepareEip712:input_type -> injective_exchange_rpc.PrepareEip712Request + 8, // 11: injective_exchange_rpc.InjectiveExchangeRPC.BroadcastTx:input_type -> injective_exchange_rpc.BroadcastTxRequest + 11, // 12: injective_exchange_rpc.InjectiveExchangeRPC.PrepareCosmosTx:input_type -> injective_exchange_rpc.PrepareCosmosTxRequest + 13, // 13: injective_exchange_rpc.InjectiveExchangeRPC.BroadcastCosmosTx:input_type -> injective_exchange_rpc.BroadcastCosmosTxRequest + 15, // 14: injective_exchange_rpc.InjectiveExchangeRPC.GetFeePayer:input_type -> injective_exchange_rpc.GetFeePayerRequest + 1, // 15: injective_exchange_rpc.InjectiveExchangeRPC.GetTx:output_type -> injective_exchange_rpc.GetTxResponse + 5, // 16: injective_exchange_rpc.InjectiveExchangeRPC.PrepareTx:output_type -> injective_exchange_rpc.PrepareTxResponse + 7, // 17: injective_exchange_rpc.InjectiveExchangeRPC.PrepareEip712:output_type -> injective_exchange_rpc.PrepareEip712Response + 10, // 18: injective_exchange_rpc.InjectiveExchangeRPC.BroadcastTx:output_type -> injective_exchange_rpc.BroadcastTxResponse + 12, // 19: injective_exchange_rpc.InjectiveExchangeRPC.PrepareCosmosTx:output_type -> injective_exchange_rpc.PrepareCosmosTxResponse + 14, // 20: injective_exchange_rpc.InjectiveExchangeRPC.BroadcastCosmosTx:output_type -> injective_exchange_rpc.BroadcastCosmosTxResponse + 16, // 21: injective_exchange_rpc.InjectiveExchangeRPC.GetFeePayer:output_type -> injective_exchange_rpc.GetFeePayerResponse + 15, // [15:22] is the sub-list for method output_type + 8, // [8:15] is the sub-list for method input_type + 8, // [8:8] is the sub-list for extension type_name + 8, // [8:8] is the sub-list for extension extendee + 0, // [0:8] is the sub-list for field type_name } func init() { file_goadesign_goagen_injective_exchange_rpc_proto_init() } @@ -1608,7 +1812,7 @@ func file_goadesign_goagen_injective_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BroadcastTxRequest); i { + switch v := v.(*PrepareEip712Request); i { case 0: return &v.state case 1: @@ -1620,7 +1824,7 @@ func file_goadesign_goagen_injective_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CosmosPubKey); i { + switch v := v.(*PrepareEip712Response); i { case 0: return &v.state case 1: @@ -1632,7 +1836,7 @@ func file_goadesign_goagen_injective_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BroadcastTxResponse); i { + switch v := v.(*BroadcastTxRequest); i { case 0: return &v.state case 1: @@ -1644,7 +1848,7 @@ func file_goadesign_goagen_injective_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PrepareCosmosTxRequest); i { + switch v := v.(*CosmosPubKey); i { case 0: return &v.state case 1: @@ -1656,7 +1860,7 @@ func file_goadesign_goagen_injective_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PrepareCosmosTxResponse); i { + switch v := v.(*BroadcastTxResponse); i { case 0: return &v.state case 1: @@ -1668,7 +1872,7 @@ func file_goadesign_goagen_injective_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BroadcastCosmosTxRequest); i { + switch v := v.(*PrepareCosmosTxRequest); i { case 0: return &v.state case 1: @@ -1680,7 +1884,7 @@ func file_goadesign_goagen_injective_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BroadcastCosmosTxResponse); i { + switch v := v.(*PrepareCosmosTxResponse); i { case 0: return &v.state case 1: @@ -1692,7 +1896,7 @@ func file_goadesign_goagen_injective_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetFeePayerRequest); i { + switch v := v.(*BroadcastCosmosTxRequest); i { case 0: return &v.state case 1: @@ -1704,6 +1908,30 @@ func file_goadesign_goagen_injective_exchange_rpc_proto_init() { } } file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BroadcastCosmosTxResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetFeePayerRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_injective_exchange_rpc_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetFeePayerResponse); i { case 0: return &v.state @@ -1722,7 +1950,7 @@ func file_goadesign_goagen_injective_exchange_rpc_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_goadesign_goagen_injective_exchange_rpc_proto_rawDesc, NumEnums: 0, - NumMessages: 15, + NumMessages: 17, NumExtensions: 0, NumServices: 1, }, diff --git a/exchange/exchange_rpc/pb/goadesign_goagen_injective_exchange_rpc_grpc.pb.go b/exchange/exchange_rpc/pb/goadesign_goagen_injective_exchange_rpc_grpc.pb.go index c7e2827d..ae02f00f 100644 --- a/exchange/exchange_rpc/pb/goadesign_goagen_injective_exchange_rpc_grpc.pb.go +++ b/exchange/exchange_rpc/pb/goadesign_goagen_injective_exchange_rpc_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.2.0 -// - protoc v3.19.4 +// - protoc v4.24.4 // source: goadesign_goagen_injective_exchange_rpc.proto package injective_exchange_rpcpb @@ -26,6 +26,8 @@ type InjectiveExchangeRPCClient interface { GetTx(ctx context.Context, in *GetTxRequest, opts ...grpc.CallOption) (*GetTxResponse, error) // PrepareTx generates a Web3-signable body for a Cosmos transaction PrepareTx(ctx context.Context, in *PrepareTxRequest, opts ...grpc.CallOption) (*PrepareTxResponse, error) + // prepareEip712 generates EIP712 for an Injective Message + PrepareEip712(ctx context.Context, in *PrepareEip712Request, opts ...grpc.CallOption) (*PrepareEip712Response, error) // BroadcastTx broadcasts a signed Web3 transaction BroadcastTx(ctx context.Context, in *BroadcastTxRequest, opts ...grpc.CallOption) (*BroadcastTxResponse, error) // PrepareCosmosTx generates a Web3-signable body for a Cosmos transaction @@ -62,6 +64,15 @@ func (c *injectiveExchangeRPCClient) PrepareTx(ctx context.Context, in *PrepareT return out, nil } +func (c *injectiveExchangeRPCClient) PrepareEip712(ctx context.Context, in *PrepareEip712Request, opts ...grpc.CallOption) (*PrepareEip712Response, error) { + out := new(PrepareEip712Response) + err := c.cc.Invoke(ctx, "/injective_exchange_rpc.InjectiveExchangeRPC/PrepareEip712", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *injectiveExchangeRPCClient) BroadcastTx(ctx context.Context, in *BroadcastTxRequest, opts ...grpc.CallOption) (*BroadcastTxResponse, error) { out := new(BroadcastTxResponse) err := c.cc.Invoke(ctx, "/injective_exchange_rpc.InjectiveExchangeRPC/BroadcastTx", in, out, opts...) @@ -106,6 +117,8 @@ type InjectiveExchangeRPCServer interface { GetTx(context.Context, *GetTxRequest) (*GetTxResponse, error) // PrepareTx generates a Web3-signable body for a Cosmos transaction PrepareTx(context.Context, *PrepareTxRequest) (*PrepareTxResponse, error) + // prepareEip712 generates EIP712 for an Injective Message + PrepareEip712(context.Context, *PrepareEip712Request) (*PrepareEip712Response, error) // BroadcastTx broadcasts a signed Web3 transaction BroadcastTx(context.Context, *BroadcastTxRequest) (*BroadcastTxResponse, error) // PrepareCosmosTx generates a Web3-signable body for a Cosmos transaction @@ -127,6 +140,9 @@ func (UnimplementedInjectiveExchangeRPCServer) GetTx(context.Context, *GetTxRequ func (UnimplementedInjectiveExchangeRPCServer) PrepareTx(context.Context, *PrepareTxRequest) (*PrepareTxResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method PrepareTx not implemented") } +func (UnimplementedInjectiveExchangeRPCServer) PrepareEip712(context.Context, *PrepareEip712Request) (*PrepareEip712Response, error) { + return nil, status.Errorf(codes.Unimplemented, "method PrepareEip712 not implemented") +} func (UnimplementedInjectiveExchangeRPCServer) BroadcastTx(context.Context, *BroadcastTxRequest) (*BroadcastTxResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method BroadcastTx not implemented") } @@ -188,6 +204,24 @@ func _InjectiveExchangeRPC_PrepareTx_Handler(srv interface{}, ctx context.Contex return interceptor(ctx, in, info, handler) } +func _InjectiveExchangeRPC_PrepareEip712_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(PrepareEip712Request) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(InjectiveExchangeRPCServer).PrepareEip712(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective_exchange_rpc.InjectiveExchangeRPC/PrepareEip712", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(InjectiveExchangeRPCServer).PrepareEip712(ctx, req.(*PrepareEip712Request)) + } + return interceptor(ctx, in, info, handler) +} + func _InjectiveExchangeRPC_BroadcastTx_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(BroadcastTxRequest) if err := dec(in); err != nil { @@ -275,6 +309,10 @@ var InjectiveExchangeRPC_ServiceDesc = grpc.ServiceDesc{ MethodName: "PrepareTx", Handler: _InjectiveExchangeRPC_PrepareTx_Handler, }, + { + MethodName: "PrepareEip712", + Handler: _InjectiveExchangeRPC_PrepareEip712_Handler, + }, { MethodName: "BroadcastTx", Handler: _InjectiveExchangeRPC_BroadcastTx_Handler, diff --git a/exchange/exchange_rpc/pb/injective_exchange_rpc.pb.gw.go b/exchange/exchange_rpc/pb/injective_exchange_rpc.pb.gw.go deleted file mode 100644 index d5d28a2a..00000000 --- a/exchange/exchange_rpc/pb/injective_exchange_rpc.pb.gw.go +++ /dev/null @@ -1,596 +0,0 @@ -// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: injective_exchange_rpc.proto - -/* -Package injective_exchange_rpcpb is a reverse proxy. - -It translates gRPC into RESTful JSON APIs. -*/ -package injective_exchange_rpcpb - -import ( - "context" - "io" - "net/http" - - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" - "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/grpclog" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/proto" -) - -// Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = metadata.Join - -func request_InjectiveExchangeRPC_GetTx_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetTxRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetTx(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExchangeRPC_GetTx_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetTxRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetTx(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExchangeRPC_PrepareTx_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PrepareTxRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.PrepareTx(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExchangeRPC_PrepareTx_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PrepareTxRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.PrepareTx(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExchangeRPC_BroadcastTx_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq BroadcastTxRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.BroadcastTx(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExchangeRPC_BroadcastTx_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq BroadcastTxRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.BroadcastTx(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExchangeRPC_PrepareCosmosTx_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PrepareCosmosTxRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.PrepareCosmosTx(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExchangeRPC_PrepareCosmosTx_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PrepareCosmosTxRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.PrepareCosmosTx(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExchangeRPC_BroadcastCosmosTx_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq BroadcastCosmosTxRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.BroadcastCosmosTx(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExchangeRPC_BroadcastCosmosTx_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq BroadcastCosmosTxRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.BroadcastCosmosTx(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExchangeRPC_GetFeePayer_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetFeePayerRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetFeePayer(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExchangeRPC_GetFeePayer_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetFeePayerRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetFeePayer(ctx, &protoReq) - return msg, metadata, err - -} - -// RegisterInjectiveExchangeRPCHandlerServer registers the http handlers for service InjectiveExchangeRPC to "mux". -// UnaryRPC :call InjectiveExchangeRPCServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterInjectiveExchangeRPCHandlerFromEndpoint instead. -func RegisterInjectiveExchangeRPCHandlerServer(ctx context.Context, mux *runtime.ServeMux, server InjectiveExchangeRPCServer) error { - - mux.Handle("POST", pattern_InjectiveExchangeRPC_GetTx_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_exchange_rpc.InjectiveExchangeRPC/GetTx", runtime.WithHTTPPathPattern("/injective_exchange_rpc.InjectiveExchangeRPC/GetTx")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExchangeRPC_GetTx_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExchangeRPC_GetTx_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExchangeRPC_PrepareTx_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_exchange_rpc.InjectiveExchangeRPC/PrepareTx", runtime.WithHTTPPathPattern("/injective_exchange_rpc.InjectiveExchangeRPC/PrepareTx")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExchangeRPC_PrepareTx_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExchangeRPC_PrepareTx_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExchangeRPC_BroadcastTx_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_exchange_rpc.InjectiveExchangeRPC/BroadcastTx", runtime.WithHTTPPathPattern("/injective_exchange_rpc.InjectiveExchangeRPC/BroadcastTx")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExchangeRPC_BroadcastTx_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExchangeRPC_BroadcastTx_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExchangeRPC_PrepareCosmosTx_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_exchange_rpc.InjectiveExchangeRPC/PrepareCosmosTx", runtime.WithHTTPPathPattern("/injective_exchange_rpc.InjectiveExchangeRPC/PrepareCosmosTx")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExchangeRPC_PrepareCosmosTx_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExchangeRPC_PrepareCosmosTx_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExchangeRPC_BroadcastCosmosTx_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_exchange_rpc.InjectiveExchangeRPC/BroadcastCosmosTx", runtime.WithHTTPPathPattern("/injective_exchange_rpc.InjectiveExchangeRPC/BroadcastCosmosTx")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExchangeRPC_BroadcastCosmosTx_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExchangeRPC_BroadcastCosmosTx_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExchangeRPC_GetFeePayer_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_exchange_rpc.InjectiveExchangeRPC/GetFeePayer", runtime.WithHTTPPathPattern("/injective_exchange_rpc.InjectiveExchangeRPC/GetFeePayer")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExchangeRPC_GetFeePayer_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExchangeRPC_GetFeePayer_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -// RegisterInjectiveExchangeRPCHandlerFromEndpoint is same as RegisterInjectiveExchangeRPCHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterInjectiveExchangeRPCHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterInjectiveExchangeRPCHandler(ctx, mux, conn) -} - -// RegisterInjectiveExchangeRPCHandler registers the http handlers for service InjectiveExchangeRPC to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterInjectiveExchangeRPCHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterInjectiveExchangeRPCHandlerClient(ctx, mux, NewInjectiveExchangeRPCClient(conn)) -} - -// RegisterInjectiveExchangeRPCHandlerClient registers the http handlers for service InjectiveExchangeRPC -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "InjectiveExchangeRPCClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "InjectiveExchangeRPCClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "InjectiveExchangeRPCClient" to call the correct interceptors. -func RegisterInjectiveExchangeRPCHandlerClient(ctx context.Context, mux *runtime.ServeMux, client InjectiveExchangeRPCClient) error { - - mux.Handle("POST", pattern_InjectiveExchangeRPC_GetTx_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_exchange_rpc.InjectiveExchangeRPC/GetTx", runtime.WithHTTPPathPattern("/injective_exchange_rpc.InjectiveExchangeRPC/GetTx")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExchangeRPC_GetTx_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExchangeRPC_GetTx_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExchangeRPC_PrepareTx_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_exchange_rpc.InjectiveExchangeRPC/PrepareTx", runtime.WithHTTPPathPattern("/injective_exchange_rpc.InjectiveExchangeRPC/PrepareTx")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExchangeRPC_PrepareTx_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExchangeRPC_PrepareTx_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExchangeRPC_BroadcastTx_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_exchange_rpc.InjectiveExchangeRPC/BroadcastTx", runtime.WithHTTPPathPattern("/injective_exchange_rpc.InjectiveExchangeRPC/BroadcastTx")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExchangeRPC_BroadcastTx_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExchangeRPC_BroadcastTx_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExchangeRPC_PrepareCosmosTx_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_exchange_rpc.InjectiveExchangeRPC/PrepareCosmosTx", runtime.WithHTTPPathPattern("/injective_exchange_rpc.InjectiveExchangeRPC/PrepareCosmosTx")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExchangeRPC_PrepareCosmosTx_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExchangeRPC_PrepareCosmosTx_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExchangeRPC_BroadcastCosmosTx_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_exchange_rpc.InjectiveExchangeRPC/BroadcastCosmosTx", runtime.WithHTTPPathPattern("/injective_exchange_rpc.InjectiveExchangeRPC/BroadcastCosmosTx")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExchangeRPC_BroadcastCosmosTx_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExchangeRPC_BroadcastCosmosTx_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExchangeRPC_GetFeePayer_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_exchange_rpc.InjectiveExchangeRPC/GetFeePayer", runtime.WithHTTPPathPattern("/injective_exchange_rpc.InjectiveExchangeRPC/GetFeePayer")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExchangeRPC_GetFeePayer_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExchangeRPC_GetFeePayer_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -var ( - pattern_InjectiveExchangeRPC_GetTx_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_exchange_rpc.InjectiveExchangeRPC", "GetTx"}, "")) - - pattern_InjectiveExchangeRPC_PrepareTx_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_exchange_rpc.InjectiveExchangeRPC", "PrepareTx"}, "")) - - pattern_InjectiveExchangeRPC_BroadcastTx_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_exchange_rpc.InjectiveExchangeRPC", "BroadcastTx"}, "")) - - pattern_InjectiveExchangeRPC_PrepareCosmosTx_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_exchange_rpc.InjectiveExchangeRPC", "PrepareCosmosTx"}, "")) - - pattern_InjectiveExchangeRPC_BroadcastCosmosTx_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_exchange_rpc.InjectiveExchangeRPC", "BroadcastCosmosTx"}, "")) - - pattern_InjectiveExchangeRPC_GetFeePayer_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_exchange_rpc.InjectiveExchangeRPC", "GetFeePayer"}, "")) -) - -var ( - forward_InjectiveExchangeRPC_GetTx_0 = runtime.ForwardResponseMessage - - forward_InjectiveExchangeRPC_PrepareTx_0 = runtime.ForwardResponseMessage - - forward_InjectiveExchangeRPC_BroadcastTx_0 = runtime.ForwardResponseMessage - - forward_InjectiveExchangeRPC_PrepareCosmosTx_0 = runtime.ForwardResponseMessage - - forward_InjectiveExchangeRPC_BroadcastCosmosTx_0 = runtime.ForwardResponseMessage - - forward_InjectiveExchangeRPC_GetFeePayer_0 = runtime.ForwardResponseMessage -) diff --git a/exchange/exchange_rpc/pb/injective_exchange_rpc.proto b/exchange/exchange_rpc/pb/injective_exchange_rpc.proto deleted file mode 100644 index 54536b59..00000000 --- a/exchange/exchange_rpc/pb/injective_exchange_rpc.proto +++ /dev/null @@ -1,221 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// InjectiveExchangeRPC protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -syntax = "proto3"; - -package injective_exchange_rpc; - -option go_package = "/injective_exchange_rpcpb"; - -// InjectiveExchangeRPC defines gRPC API of an Injective Exchange service. -service InjectiveExchangeRPC { - // GetTx gets transaction details by hash. - rpc GetTx (GetTxRequest) returns (GetTxResponse); - // PrepareTx generates a Web3-signable body for a Cosmos transaction - rpc PrepareTx (PrepareTxRequest) returns (PrepareTxResponse); - // BroadcastTx broadcasts a signed Web3 transaction - rpc BroadcastTx (BroadcastTxRequest) returns (BroadcastTxResponse); - // PrepareCosmosTx generates a Web3-signable body for a Cosmos transaction - rpc PrepareCosmosTx (PrepareCosmosTxRequest) returns (PrepareCosmosTxResponse); - // BroadcastCosmosTx broadcasts a signed Web3 transaction - rpc BroadcastCosmosTx (BroadcastCosmosTxRequest) returns (BroadcastCosmosTxResponse); - // Return fee payer information's - rpc GetFeePayer (GetFeePayerRequest) returns (GetFeePayerResponse); -} - -message GetTxRequest { - // Transaction hash in hex without 0x prefix (Cosmos-like). - string hash = 1; -} - -message GetTxResponse { - // Hex-encoded Tendermint transaction hash - string tx_hash = 1; - // The block height - sint64 height = 2; - // Tx index in the block - uint32 index = 3; - // Namespace for the resp code - string codespace = 4; - // Response code - uint32 code = 5; - // Result bytes, if any - bytes data = 6; - // The output of the application's logger (raw string). May be -// non-deterministic. - string raw_log = 7; - // Time of the previous block. - string timestamp = 8; -} - -message PrepareTxRequest { - // Specify chainID for the target tx - uint64 chain_id = 1; - // Specify Ethereum address of a signer - string signer_address = 2; - // Deprecated: this field is ignored - uint64 sequence = 3; - // Textual memo information to attach with tx - string memo = 4; - // Block height until which the transaction is valid. - uint64 timeout_height = 5; - // Transaction fee details. - CosmosTxFee fee = 6; - // List of Cosmos proto3-encoded Msgs to include in a single tx - repeated bytes msgs = 7; - // The wrapper of the EIP712 message, V1 or V2 - string eip712_wrapper = 8; -} - -message CosmosTxFee { - // Transaction gas price - repeated CosmosCoin price = 1; - // Transaction gas limit - uint64 gas = 2; - // Explicitly require fee delegation when set to true. Or don't care = false. -// Will be replaced by other flag in the next version. - bool delegate_fee = 3; -} - -message CosmosCoin { - // Coin denominator - string denom = 1; - // Coin amount (big int) - string amount = 2; -} - -message PrepareTxResponse { - // EIP712-compatible message suitable for signing with eth_signTypedData_v4 - string data = 1; - // Account tx sequence (nonce) - uint64 sequence = 2; - // Sign mode for the resulting tx - string sign_mode = 3; - // Specify proto-URL of a public key, which defines the signature format - string pub_key_type = 4; - // Fee payer address provided by service - string fee_payer = 5; - // Hex-encoded ethsecp256k1 signature bytes from fee payer - string fee_payer_sig = 6; -} - -message BroadcastTxRequest { - // Specify Web3 chainID (from prepateTx) for the target Tx - uint64 chain_id = 1; - // Amino-encoded Tx JSON data (except Msgs) - bytes tx = 2; - // List of Cosmos proto3-encoded Msgs from tx - repeated bytes msgs = 3; - // Specify ethsecp256k1 pubkey of the signer - CosmosPubKey pub_key = 4; - // Hex-encoded ethsecp256k1 signature bytes - string signature = 5; - // Fee payer address provided by service - string fee_payer = 6; - // Hex-encoded ethsecp256k1 signature bytes from fee payer - string fee_payer_sig = 7; - // Broadcast mode - string mode = 8; -} - -message CosmosPubKey { - // Pubkey type URL - string type = 1; - // Hex-encoded string of the public key - string key = 2; -} - -message BroadcastTxResponse { - // Hex-encoded Tendermint transaction hash - string tx_hash = 1; - // The block height - sint64 height = 2; - // Tx index in the block - uint32 index = 3; - // Namespace for the resp code - string codespace = 4; - // Response code - uint32 code = 5; - // Result bytes, if any - bytes data = 6; - // The output of the application's logger (raw string). May be -// non-deterministic. - string raw_log = 7; - // Time of the previous block. - string timestamp = 8; -} - -message PrepareCosmosTxRequest { - // Specify chainID for the target tx - uint64 chain_id = 1; - // sender address provided - string sender_address = 2; - // Textual memo information to attach with tx - string memo = 3; - // Block height until which the transaction is valid. - uint64 timeout_height = 4; - // Transaction fee details. - CosmosTxFee fee = 5; - // List of Cosmos proto3-encoded Msgs to include in a single tx - repeated bytes msgs = 6; -} - -message PrepareCosmosTxResponse { - // proto encoded tx - bytes tx = 1; - // Sign mode for the resulting tx - string sign_mode = 2; - // Specify proto-URL of a public key, which defines the signature format - string pub_key_type = 3; - // Fee payer address provided by service - string fee_payer = 4; - // Hex-encoded ethsecp256k1 signature bytes from fee payer - string fee_payer_sig = 5; - // ethsecp256k1 feePayer pubkey - CosmosPubKey fee_payer_pub_key = 6; -} - -message BroadcastCosmosTxRequest { - // proto encoded tx - bytes tx = 1; - // Specify ethsecp256k1 sender pubkey - CosmosPubKey pub_key = 2; - // Hex-encoded ethsecp256k1 sender signature bytes - string signature = 3; - // sender address - string sender_address = 4; -} - -message BroadcastCosmosTxResponse { - // Hex-encoded Tendermint transaction hash - string tx_hash = 1; - // The block height - sint64 height = 2; - // Tx index in the block - uint32 index = 3; - // Namespace for the resp code - string codespace = 4; - // Response code - uint32 code = 5; - // Result bytes, if any - bytes data = 6; - // The output of the application's logger (raw string). May be -// non-deterministic. - string raw_log = 7; - // Time of the previous block. - string timestamp = 8; -} - -message GetFeePayerRequest { -} - -message GetFeePayerResponse { - // Fee payer address provided by service - string fee_payer = 1; - // ethsecp256k1 feePayer pubkey - CosmosPubKey fee_payer_pub_key = 2; -} diff --git a/exchange/explorer_rpc/pb/goadesign_goagen_injective_explorer_rpc.pb.go b/exchange/explorer_rpc/pb/goadesign_goagen_injective_explorer_rpc.pb.go index d59b7740..2150edf0 100644 --- a/exchange/explorer_rpc/pb/goadesign_goagen_injective_explorer_rpc.pb.go +++ b/exchange/explorer_rpc/pb/goadesign_goagen_injective_explorer_rpc.pb.go @@ -8,7 +8,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 -// protoc v3.19.4 +// protoc v4.24.4 // source: goadesign_goagen_injective_explorer_rpc.proto package injective_explorer_rpcpb @@ -1679,7 +1679,8 @@ type TxData struct { // transaction event logs Logs []byte `protobuf:"bytes,11,opt,name=logs,proto3" json:"logs,omitempty"` // peggy bridge claim id, non-zero if tx contains MsgDepositClaim - ClaimIds []int64 `protobuf:"zigzag64,12,rep,packed,name=claim_ids,json=claimIds,proto3" json:"claim_ids,omitempty"` + ClaimIds []int64 `protobuf:"zigzag64,12,rep,packed,name=claim_ids,json=claimIds,proto3" json:"claim_ids,omitempty"` + Signatures []*Signature `protobuf:"bytes,13,rep,name=signatures,proto3" json:"signatures,omitempty"` } func (x *TxData) Reset() { @@ -1798,6 +1799,13 @@ func (x *TxData) GetClaimIds() []int64 { return nil } +func (x *TxData) GetSignatures() []*Signature { + if x != nil { + return x.Signatures + } + return nil +} + type GetValidatorsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -6253,6 +6261,164 @@ func (x *StreamBlocksResponse) GetTimestamp() string { return "" } +type GetStatsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *GetStatsRequest) Reset() { + *x = GetStatsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_injective_explorer_rpc_proto_msgTypes[74] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetStatsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetStatsRequest) ProtoMessage() {} + +func (x *GetStatsRequest) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_injective_explorer_rpc_proto_msgTypes[74] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetStatsRequest.ProtoReflect.Descriptor instead. +func (*GetStatsRequest) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_injective_explorer_rpc_proto_rawDescGZIP(), []int{74} +} + +type GetStatsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Total of unique addresses + Addresses uint64 `protobuf:"varint,1,opt,name=addresses,proto3" json:"addresses,omitempty"` + // Total number of assets + Assets uint64 `protobuf:"varint,2,opt,name=assets,proto3" json:"assets,omitempty"` + // Total circulating supply of INJ + InjSupply uint64 `protobuf:"varint,3,opt,name=inj_supply,json=injSupply,proto3" json:"inj_supply,omitempty"` + // Avg of TX per second in the past 24hs + TxsPs24H uint64 `protobuf:"varint,4,opt,name=txs_ps24_h,json=txsPs24H,proto3" json:"txs_ps24_h,omitempty"` + // Avg of TX per second in the 100 blocks + TxsPs100B uint64 `protobuf:"varint,5,opt,name=txs_ps100_b,json=txsPs100B,proto3" json:"txs_ps100_b,omitempty"` + // Total number of TXs + TxsTotal uint64 `protobuf:"varint,6,opt,name=txs_total,json=txsTotal,proto3" json:"txs_total,omitempty"` + // Total number of TXs in the past 24hs + Txs24H uint64 `protobuf:"varint,7,opt,name=txs24_h,json=txs24H,proto3" json:"txs24_h,omitempty"` + // Total number of TXs in the past 30 days + Txs30D uint64 `protobuf:"varint,8,opt,name=txs30_d,json=txs30D,proto3" json:"txs30_d,omitempty"` + // Number of blocks produced in the past 24hs + BlockCount24H uint64 `protobuf:"varint,9,opt,name=block_count24_h,json=blockCount24H,proto3" json:"block_count24_h,omitempty"` +} + +func (x *GetStatsResponse) Reset() { + *x = GetStatsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_injective_explorer_rpc_proto_msgTypes[75] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetStatsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetStatsResponse) ProtoMessage() {} + +func (x *GetStatsResponse) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_injective_explorer_rpc_proto_msgTypes[75] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetStatsResponse.ProtoReflect.Descriptor instead. +func (*GetStatsResponse) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_injective_explorer_rpc_proto_rawDescGZIP(), []int{75} +} + +func (x *GetStatsResponse) GetAddresses() uint64 { + if x != nil { + return x.Addresses + } + return 0 +} + +func (x *GetStatsResponse) GetAssets() uint64 { + if x != nil { + return x.Assets + } + return 0 +} + +func (x *GetStatsResponse) GetInjSupply() uint64 { + if x != nil { + return x.InjSupply + } + return 0 +} + +func (x *GetStatsResponse) GetTxsPs24H() uint64 { + if x != nil { + return x.TxsPs24H + } + return 0 +} + +func (x *GetStatsResponse) GetTxsPs100B() uint64 { + if x != nil { + return x.TxsPs100B + } + return 0 +} + +func (x *GetStatsResponse) GetTxsTotal() uint64 { + if x != nil { + return x.TxsTotal + } + return 0 +} + +func (x *GetStatsResponse) GetTxs24H() uint64 { + if x != nil { + return x.Txs24H + } + return 0 +} + +func (x *GetStatsResponse) GetTxs30D() uint64 { + if x != nil { + return x.Txs30D + } + return 0 +} + +func (x *GetStatsResponse) GetBlockCount24H() uint64 { + if x != nil { + return x.BlockCount24H + } + return 0 +} + var File_goadesign_goagen_injective_explorer_rpc_proto protoreflect.FileDescriptor var file_goadesign_goagen_injective_explorer_rpc_proto_rawDesc = []byte{ @@ -6491,7 +6657,7 @@ var file_goadesign_goagen_injective_explorer_rpc_proto_rawDesc = []byte{ 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x78, 0x44, 0x61, 0x74, 0x61, 0x52, 0x03, 0x74, 0x78, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xd3, 0x02, 0x0a, 0x06, 0x54, 0x78, 0x44, 0x61, 0x74, 0x61, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x96, 0x03, 0x0a, 0x06, 0x54, 0x78, 0x44, 0x61, 0x74, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, @@ -6512,817 +6678,846 @@ var file_goadesign_goagen_injective_explorer_rpc_proto_rawDesc = []byte{ 0x74, 0x78, 0x4d, 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, - 0x12, 0x52, 0x08, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x49, 0x64, 0x73, 0x22, 0x16, 0x0a, 0x14, 0x47, - 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x22, 0x74, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0c, 0x0a, 0x01, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, - 0x72, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6d, - 0x73, 0x67, 0x12, 0x35, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, - 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x6f, 0x72, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xb5, 0x07, 0x0a, 0x09, 0x56, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x6b, - 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x6b, 0x65, - 0x72, 0x12, 0x29, 0x0a, 0x10, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2b, 0x0a, 0x11, - 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, - 0x75, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6a, 0x61, 0x69, - 0x6c, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6a, 0x61, 0x69, 0x6c, 0x65, - 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x11, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x6f, 0x6b, - 0x65, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x73, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x6c, - 0x65, 0x67, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x4e, 0x0a, 0x0b, - 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, - 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x6f, 0x72, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, - 0x75, 0x6e, 0x62, 0x6f, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0f, 0x75, 0x6e, 0x62, 0x6f, 0x6e, 0x64, 0x69, 0x6e, - 0x67, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x75, 0x6e, 0x62, 0x6f, 0x6e, - 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x75, 0x6e, 0x62, 0x6f, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x27, - 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x61, 0x74, - 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x4d, 0x61, 0x78, 0x52, 0x61, 0x74, 0x65, 0x12, 0x3b, 0x0a, 0x1a, 0x63, 0x6f, 0x6d, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x63, 0x6f, 0x6d, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x52, 0x61, 0x74, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0f, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, - 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x70, 0x72, - 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, - 0x18, 0x11, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x12, 0x16, - 0x0a, 0x06, 0x6d, 0x69, 0x73, 0x73, 0x65, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, - 0x6d, 0x69, 0x73, 0x73, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x12, 0x41, 0x0a, 0x07, 0x75, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x18, - 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x56, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x07, - 0x75, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x4e, 0x0a, 0x0f, 0x73, 0x6c, 0x61, 0x73, 0x68, - 0x69, 0x6e, 0x67, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x15, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, - 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x6c, 0x61, 0x73, 0x68, 0x69, - 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x0e, 0x73, 0x6c, 0x61, 0x73, 0x68, 0x69, 0x6e, - 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x75, 0x70, 0x74, 0x69, 0x6d, - 0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x18, 0x16, 0x20, 0x01, - 0x28, 0x01, 0x52, 0x10, 0x75, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, - 0x74, 0x61, 0x67, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72, - 0x6c, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, - 0x6c, 0x22, 0xc8, 0x01, 0x0a, 0x14, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x44, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x6f, - 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x6f, 0x6e, - 0x69, 0x6b, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x12, 0x18, 0x0a, 0x07, 0x77, 0x65, 0x62, 0x73, 0x69, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x77, 0x65, 0x62, 0x73, 0x69, 0x74, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, - 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x43, 0x6f, - 0x6e, 0x74, 0x61, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, - 0x1b, 0x0a, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x22, 0x4c, 0x0a, 0x0f, - 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x12, + 0x12, 0x52, 0x08, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x41, 0x0a, 0x0a, 0x73, + 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, + 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, + 0x72, 0x65, 0x52, 0x0a, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x22, 0x16, + 0x0a, 0x14, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x74, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x0c, 0x0a, 0x01, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x73, 0x12, 0x16, 0x0a, + 0x06, 0x65, 0x72, 0x72, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, + 0x72, 0x72, 0x6d, 0x73, 0x67, 0x12, 0x35, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x56, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xb5, 0x07, 0x0a, + 0x09, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x6f, + 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x6f, 0x6e, + 0x69, 0x6b, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x10, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, + 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, + 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, + 0x2b, 0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x5f, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x73, + 0x65, 0x6e, 0x73, 0x75, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x16, 0x0a, 0x06, + 0x6a, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6a, 0x61, + 0x69, 0x6c, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x11, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x6f, + 0x72, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, + 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, + 0x4e, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x56, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x29, 0x0a, 0x10, 0x75, 0x6e, 0x62, 0x6f, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x65, 0x69, + 0x67, 0x68, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0f, 0x75, 0x6e, 0x62, 0x6f, 0x6e, + 0x64, 0x69, 0x6e, 0x67, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x75, 0x6e, + 0x62, 0x6f, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0d, 0x75, 0x6e, 0x62, 0x6f, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, + 0x72, 0x61, 0x74, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6f, + 0x6d, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x61, 0x74, + 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x52, 0x61, 0x74, 0x65, 0x12, 0x3b, 0x0a, 0x1a, 0x63, 0x6f, + 0x6d, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, + 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x52, 0x61, 0x74, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x6f, 0x6d, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x08, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x69, 0x67, + 0x6e, 0x65, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, + 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x69, 0x73, 0x73, 0x65, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x06, 0x6d, 0x69, 0x73, 0x73, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x41, 0x0a, 0x07, 0x75, 0x70, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, + 0x63, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x70, 0x74, 0x69, 0x6d, + 0x65, 0x52, 0x07, 0x75, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x4e, 0x0a, 0x0f, 0x73, 0x6c, + 0x61, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x15, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x6c, 0x61, + 0x73, 0x68, 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x0e, 0x73, 0x6c, 0x61, 0x73, + 0x68, 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x75, 0x70, + 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x18, + 0x16, 0x20, 0x01, 0x28, 0x01, 0x52, 0x10, 0x75, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x50, 0x65, 0x72, + 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, + 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, + 0x65, 0x55, 0x72, 0x6c, 0x22, 0xc8, 0x01, 0x0a, 0x14, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, + 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x6d, 0x6f, 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x77, 0x65, 0x62, 0x73, 0x69, 0x74, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x77, 0x65, 0x62, 0x73, 0x69, 0x74, 0x65, 0x12, 0x29, 0x0a, + 0x10, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, + 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, + 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x22, + 0x4c, 0x0a, 0x0f, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x70, 0x74, 0x69, + 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xe0, 0x01, + 0x0a, 0x0d, 0x53, 0x6c, 0x61, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xe0, 0x01, 0x0a, 0x0d, 0x53, - 0x6c, 0x61, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, - 0x27, 0x0a, 0x0f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 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, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, - 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, - 0x12, 0x16, 0x0a, 0x06, 0x6a, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x6a, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x69, 0x73, 0x73, - 0x65, 0x64, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x0c, 0x6d, 0x69, 0x73, 0x73, 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x22, 0x2f, 0x0a, - 0x13, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x73, - 0x0a, 0x14, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x01, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6d, 0x73, 0x67, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6d, 0x73, 0x67, 0x12, 0x35, 0x0a, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x04, 0x64, - 0x61, 0x74, 0x61, 0x22, 0x35, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x6f, 0x72, 0x55, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x7f, 0x0a, 0x1a, 0x47, 0x65, - 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x70, 0x74, 0x69, 0x6d, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x01, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6d, 0x73, 0x67, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6d, 0x73, 0x67, 0x12, 0x3b, - 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, + 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 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, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x72, + 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, + 0x73, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x6a, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x6a, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x6d, + 0x69, 0x73, 0x73, 0x65, 0x64, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x0c, 0x6d, 0x69, 0x73, 0x73, 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, + 0x22, 0x2f, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x22, 0x73, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, + 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6d, 0x73, + 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6d, 0x73, 0x67, 0x12, + 0x35, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, + 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, + 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, + 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x35, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x7f, 0x0a, + 0x1a, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x70, 0x74, + 0x69, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, + 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6d, 0x73, + 0x67, 0x12, 0x3b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, + 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x55, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xa3, + 0x02, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x16, 0x0a, 0x06, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x06, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x66, 0x74, 0x65, + 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x61, 0x66, 0x74, 0x65, 0x72, 0x12, 0x14, + 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, + 0x69, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x5f, 0x6e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, 0x08, 0x74, 0x6f, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x22, 0x7c, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, + 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x32, + 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, - 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xa3, 0x02, 0x0a, 0x0d, - 0x47, 0x65, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, - 0x06, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x62, - 0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x66, 0x74, 0x65, 0x72, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x61, 0x66, 0x74, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6c, - 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x6f, 0x64, - 0x75, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x6f, 0x64, 0x75, 0x6c, - 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x4e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, 0x08, 0x74, 0x6f, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, - 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, - 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x12, - 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x22, 0x7c, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, - 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x32, 0x0a, 0x04, 0x64, - 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x54, 0x78, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, - 0x2a, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x54, 0x78, 0x42, 0x79, 0x54, 0x78, 0x48, 0x61, 0x73, 0x68, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x22, 0x77, 0x0a, 0x15, 0x47, - 0x65, 0x74, 0x54, 0x78, 0x42, 0x79, 0x54, 0x78, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x01, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6d, 0x73, 0x67, 0x12, 0x38, 0x0a, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, + 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x78, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, + 0x74, 0x61, 0x22, 0x2a, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x54, 0x78, 0x42, 0x79, 0x54, 0x78, 0x48, + 0x61, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, + 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x22, 0x77, + 0x0a, 0x15, 0x47, 0x65, 0x74, 0x54, 0x78, 0x42, 0x79, 0x54, 0x78, 0x48, 0x61, 0x73, 0x68, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x01, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6d, 0x73, 0x67, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6d, 0x73, 0x67, 0x12, 0x38, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, + 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x78, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x44, 0x61, 0x74, + 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x79, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x50, 0x65, + 0x67, 0x67, 0x79, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, + 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x12, + 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, + 0x69, 0x70, 0x22, 0x5a, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x50, 0x65, 0x67, 0x67, 0x79, 0x44, 0x65, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x3c, 0x0a, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, + 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x67, 0x67, 0x79, 0x44, 0x65, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x54, 0x78, 0x52, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x22, 0xf9, + 0x02, 0x0a, 0x0e, 0x50, 0x65, 0x67, 0x67, 0x79, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x54, + 0x78, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, + 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x63, + 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, + 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, + 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x31, 0x0a, 0x14, 0x6f, 0x72, 0x63, 0x68, 0x65, + 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, + 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, + 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x11, 0x52, 0x09, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x1b, 0x0a, 0x09, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x08, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x7c, 0x0a, 0x1c, 0x47, 0x65, + 0x74, 0x50, 0x65, 0x67, 0x67, 0x79, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, + 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x14, + 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, + 0x69, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x22, 0x60, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x50, + 0x65, 0x67, 0x67, 0x79, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x54, 0x78, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x05, 0x66, 0x69, 0x65, + 0x6c, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x54, 0x78, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x22, 0x79, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x50, 0x65, 0x67, 0x67, 0x79, - 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x63, 0x2e, 0x50, 0x65, 0x67, 0x67, 0x79, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, + 0x6c, 0x54, 0x78, 0x52, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x22, 0x87, 0x04, 0x0a, 0x11, 0x50, + 0x65, 0x67, 0x67, 0x79, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x54, 0x78, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, + 0x69, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, + 0x69, 0x76, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, + 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, + 0x6f, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x66, 0x65, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x46, 0x65, + 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, + 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x6f, 0x75, 0x74, 0x67, 0x6f, + 0x69, 0x6e, 0x67, 0x54, 0x78, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x61, 0x74, 0x63, 0x68, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, + 0x62, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x1f, 0x0a, 0x0b, + 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x31, 0x0a, + 0x14, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x6f, 0x72, 0x63, + 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, + 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, + 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x65, + 0x69, 0x67, 0x68, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, + 0x61, 0x69, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x11, 0x52, 0x09, + 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x78, 0x5f, + 0x68, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x74, 0x78, + 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x5f, 0x61, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x22, 0xf4, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x49, 0x42, 0x43, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x63, - 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, - 0x6b, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x22, - 0x5a, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x50, 0x65, 0x67, 0x67, 0x79, 0x44, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, - 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x67, 0x67, 0x79, 0x44, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x54, 0x78, 0x52, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x22, 0xf9, 0x02, 0x0a, 0x0e, - 0x50, 0x65, 0x67, 0x67, 0x79, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x54, 0x78, 0x12, 0x16, - 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, - 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, - 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, - 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x65, 0x69, - 0x67, 0x68, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, - 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, - 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x31, 0x0a, 0x14, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, - 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x13, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, - 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, - 0x0a, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x11, 0x52, 0x09, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, - 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x08, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x7c, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x50, 0x65, - 0x67, 0x67, 0x79, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x54, 0x78, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, + 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x72, 0x63, 0x5f, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x72, 0x63, 0x43, + 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x72, 0x63, 0x5f, 0x70, 0x6f, + 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x72, 0x63, 0x50, 0x6f, 0x72, + 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, + 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x43, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x72, + 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x72, + 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x11, + 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x22, 0x58, 0x0a, 0x19, 0x47, + 0x65, 0x74, 0x49, 0x42, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x05, 0x66, 0x69, 0x65, 0x6c, + 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, + 0x2e, 0x49, 0x42, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x52, 0x05, + 0x66, 0x69, 0x65, 0x6c, 0x64, 0x22, 0x9e, 0x04, 0x0a, 0x0d, 0x49, 0x42, 0x43, 0x54, 0x72, 0x61, + 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6c, - 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x04, 0x73, 0x6b, 0x69, 0x70, 0x22, 0x60, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x50, 0x65, 0x67, 0x67, - 0x79, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x54, 0x78, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, - 0x65, 0x67, 0x67, 0x79, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x54, 0x78, - 0x52, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x22, 0x87, 0x04, 0x0a, 0x11, 0x50, 0x65, 0x67, 0x67, - 0x79, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x54, 0x78, 0x12, 0x16, 0x0a, - 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, - 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, - 0x72, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, - 0x6f, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, - 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x46, 0x65, 0x65, 0x12, 0x24, - 0x0a, 0x0e, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x5f, 0x69, 0x64, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, - 0x54, 0x78, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, - 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x62, 0x61, 0x74, - 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x74, - 0x63, 0x68, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, - 0x62, 0x61, 0x74, 0x63, 0x68, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x6f, 0x72, - 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, - 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a, - 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, - 0x0a, 0x0c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, - 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x61, 0x69, 0x6d, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x11, 0x52, 0x09, 0x63, 0x6c, 0x61, - 0x69, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, - 0x68, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x74, 0x78, 0x48, 0x61, 0x73, - 0x68, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, - 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, - 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, - 0x74, 0x22, 0xf4, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x49, 0x42, 0x43, 0x54, 0x72, 0x61, 0x6e, - 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, - 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, - 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, - 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x72, 0x63, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x72, 0x63, 0x43, 0x68, 0x61, 0x6e, - 0x6e, 0x65, 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x72, 0x63, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x72, 0x63, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x21, - 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x14, - 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, - 0x69, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x22, 0x58, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x49, - 0x42, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x42, - 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x52, 0x05, 0x66, 0x69, 0x65, - 0x6c, 0x64, 0x22, 0x9e, 0x04, 0x0a, 0x0d, 0x49, 0x42, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, - 0x65, 0x72, 0x54, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, - 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, - 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, - 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2f, 0x0a, 0x13, 0x64, - 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x16, 0x0a, 0x06, - 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x69, - 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, - 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x74, 0x69, - 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x27, - 0x0a, 0x0f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, - 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x53, - 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x5f, - 0x68, 0x65, 0x78, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x64, 0x61, 0x74, 0x61, 0x48, - 0x65, 0x78, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x78, 0x5f, 0x68, - 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x74, 0x78, 0x48, - 0x61, 0x73, 0x68, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, - 0x61, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x64, 0x41, 0x74, 0x22, 0x69, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, - 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, - 0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, - 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, - 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x12, 0x52, 0x08, 0x74, 0x6f, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x84, - 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, - 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, - 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, - 0x34, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, - 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x52, - 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xe2, 0x03, 0x0a, 0x08, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, - 0x64, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x06, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, - 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, - 0x48, 0x61, 0x73, 0x68, 0x12, 0x3c, 0x0a, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x52, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, - 0x75, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, - 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, - 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x12, 0x4a, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, - 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x64, 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x1b, 0x0a, - 0x09, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x63, 0x6f, 0x64, 0x65, 0x56, 0x69, 0x65, 0x77, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x73, 0x12, 0x18, - 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x64, 0x65, - 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x63, - 0x6f, 0x64, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x6f, - 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, - 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x08, 0x43, 0x68, - 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x6c, 0x67, 0x6f, 0x72, 0x69, - 0x74, 0x68, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x6c, 0x67, 0x6f, 0x72, - 0x69, 0x74, 0x68, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x22, 0x4f, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x61, 0x63, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, - 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x11, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x31, 0x0a, 0x16, 0x47, 0x65, 0x74, - 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x42, 0x79, 0x49, 0x44, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x12, 0x52, 0x06, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x22, 0xf1, 0x03, 0x0a, - 0x17, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x42, 0x79, 0x49, 0x44, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, 0x64, 0x65, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x63, 0x6f, 0x64, 0x65, 0x49, - 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x3c, 0x0a, 0x08, 0x63, 0x68, - 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x52, 0x08, - 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, - 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, - 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x4a, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x6e, 0x6a, + 0x09, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x25, 0x0a, 0x0e, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x68, 0x61, 0x6e, + 0x6e, 0x65, 0x6c, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, + 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2f, + 0x0a, 0x13, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x64, 0x65, 0x73, + 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, + 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x25, 0x0a, + 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, + 0x69, 0x67, 0x68, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x10, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x70, 0x61, 0x63, 0x6b, + 0x65, 0x74, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x61, + 0x74, 0x61, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x64, 0x61, + 0x74, 0x61, 0x48, 0x65, 0x78, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, + 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, + 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x69, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, + 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, + 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, + 0x6d, 0x69, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x08, 0x74, 0x6f, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x22, 0x84, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x64, + 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x06, 0x70, 0x61, + 0x67, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x64, 0x65, 0x53, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x76, 0x69, 0x65, 0x77, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x64, 0x65, 0x56, 0x69, 0x65, 0x77, - 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x73, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, - 0x61, 0x74, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1f, - 0x0a, 0x0b, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x12, 0x52, 0x0a, 0x63, 0x6f, 0x64, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, - 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x49, 0x64, - 0x22, 0xd1, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, - 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, - 0x69, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x12, 0x52, 0x06, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x66, - 0x72, 0x6f, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, - 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, - 0x74, 0x6f, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x12, 0x52, - 0x08, 0x74, 0x6f, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x73, 0x73, - 0x65, 0x74, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, - 0x61, 0x73, 0x73, 0x65, 0x74, 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, - 0x69, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x12, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, - 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, - 0x61, 0x62, 0x65, 0x6c, 0x22, 0x8c, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x36, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, - 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, - 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x38, 0x0a, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, + 0x6e, 0x67, 0x12, 0x34, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x20, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, + 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, + 0x64, 0x65, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xe2, 0x03, 0x0a, 0x08, 0x57, 0x61, 0x73, + 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x17, + 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x3c, 0x0a, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, + 0x73, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, + 0x70, 0x63, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x52, 0x08, 0x63, 0x68, 0x65, + 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x4a, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, - 0x2e, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x04, 0x64, - 0x61, 0x74, 0x61, 0x22, 0xe9, 0x04, 0x0a, 0x0c, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x61, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 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, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x18, 0x0a, - 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x65, 0x63, 0x75, - 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x65, 0x78, 0x65, 0x63, 0x75, - 0x74, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, - 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x69, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x21, 0x0a, 0x0c, - 0x69, 0x6e, 0x69, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, - 0x28, 0x0a, 0x10, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, - 0x5f, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x6c, 0x61, 0x73, 0x74, 0x45, - 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x3a, 0x0a, 0x05, 0x66, 0x75, 0x6e, - 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x46, 0x75, 0x6e, 0x64, 0x52, 0x05, - 0x66, 0x75, 0x6e, 0x64, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x14, - 0x0a, 0x05, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, - 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x36, 0x0a, 0x17, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, - 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4d, 0x69, - 0x67, 0x72, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x27, 0x0a, 0x0f, - 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, - 0x0d, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, - 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, - 0x79, 0x70, 0x65, 0x12, 0x49, 0x0a, 0x0d, 0x63, 0x77, 0x32, 0x30, 0x5f, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, + 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, + 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x64, 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x64, 0x65, 0x56, 0x69, 0x65, 0x77, 0x12, 0x22, 0x0a, + 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, + 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x63, + 0x6f, 0x64, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x12, + 0x52, 0x0a, 0x63, 0x6f, 0x64, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, + 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x12, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x49, 0x64, 0x22, 0x3c, 0x0a, + 0x08, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x6c, 0x67, + 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x6c, + 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x22, 0x4f, 0x0a, 0x12, 0x43, + 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x31, 0x0a, 0x16, + 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x42, 0x79, 0x49, 0x44, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x12, 0x52, 0x06, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x22, + 0xf1, 0x03, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x42, + 0x79, 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x63, + 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x63, 0x6f, + 0x64, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x3c, 0x0a, + 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x20, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, + 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, + 0x6d, 0x52, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, + 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x4a, 0x0a, 0x0a, 0x70, 0x65, 0x72, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, + 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, + 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x50, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x73, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x64, 0x65, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x76, + 0x69, 0x65, 0x77, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x64, 0x65, 0x56, + 0x69, 0x65, 0x77, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, + 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x63, 0x6f, 0x64, 0x65, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x5f, 0x69, + 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, + 0x6c, 0x49, 0x64, 0x22, 0xd1, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, + 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, + 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x12, 0x52, 0x06, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1f, + 0x0a, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x12, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x12, 0x52, 0x08, 0x74, 0x6f, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, + 0x61, 0x73, 0x73, 0x65, 0x74, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0a, 0x61, 0x73, 0x73, 0x65, 0x74, 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x12, 0x0a, + 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x12, 0x52, 0x04, 0x73, 0x6b, 0x69, + 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x8c, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x57, + 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, + 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x38, 0x0a, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x43, 0x77, 0x32, 0x30, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x52, 0x0c, 0x63, 0x77, 0x32, 0x30, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1f, - 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, - 0x01, 0x28, 0x12, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x49, 0x64, 0x22, - 0x3c, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x46, 0x75, 0x6e, 0x64, 0x12, - 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xa6, 0x01, - 0x0a, 0x0c, 0x43, 0x77, 0x32, 0x30, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x44, - 0x0a, 0x0a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, - 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x77, 0x32, 0x30, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x50, 0x0a, 0x0e, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, - 0x67, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x77, 0x32, 0x30, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, - 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, - 0x6e, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x7a, 0x0a, 0x0d, 0x43, 0x77, 0x32, 0x30, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, - 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x79, 0x6d, - 0x62, 0x6f, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x73, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x08, 0x64, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x73, 0x12, - 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x79, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x75, 0x70, 0x70, - 0x6c, 0x79, 0x22, 0x81, 0x01, 0x0a, 0x11, 0x43, 0x77, 0x32, 0x30, 0x4d, 0x61, 0x72, 0x6b, 0x65, - 0x74, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 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, 0x12, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, - 0x65, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x6d, 0x61, 0x72, - 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x22, 0x4c, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, - 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6e, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x22, 0xfd, 0x04, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, - 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, - 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, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, - 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, - 0x73, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, - 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, - 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x73, 0x74, - 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x0e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x41, - 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x65, 0x78, 0x65, - 0x63, 0x75, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, - 0x6c, 0x61, 0x73, 0x74, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x3a, - 0x0a, 0x05, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, + 0x72, 0x70, 0x63, 0x2e, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xe9, 0x04, 0x0a, 0x0c, 0x57, 0x61, 0x73, 0x6d, 0x43, + 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 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, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, + 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, + 0x65, 0x63, 0x75, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x65, 0x78, + 0x65, 0x63, 0x75, 0x74, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x0e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, + 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, + 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x6c, 0x61, + 0x73, 0x74, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x3a, 0x0a, 0x05, + 0x66, 0x75, 0x6e, 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, + 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x46, 0x75, 0x6e, + 0x64, 0x52, 0x05, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, 0x64, 0x65, + 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x63, 0x6f, 0x64, 0x65, 0x49, + 0x64, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x36, 0x0a, 0x17, 0x63, 0x75, 0x72, 0x72, 0x65, + 0x6e, 0x74, 0x5f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, + 0x74, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, + 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x49, 0x0a, 0x0d, 0x63, 0x77, 0x32, 0x30, 0x5f, 0x6d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, - 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x46, - 0x75, 0x6e, 0x64, 0x52, 0x05, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, - 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x63, 0x6f, 0x64, - 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x36, 0x0a, 0x17, 0x63, 0x75, 0x72, - 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x63, 0x75, 0x72, 0x72, - 0x65, 0x6e, 0x74, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x6e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x74, - 0x72, 0x61, 0x63, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0f, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x49, 0x0a, 0x0d, 0x63, 0x77, 0x32, 0x30, - 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, - 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x77, 0x32, 0x30, 0x4d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0c, 0x63, 0x77, 0x32, 0x30, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x5f, - 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, - 0x61, 0x6c, 0x49, 0x64, 0x22, 0x47, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x43, 0x77, 0x32, 0x30, 0x42, - 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, - 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x57, 0x0a, - 0x16, 0x47, 0x65, 0x74, 0x43, 0x77, 0x32, 0x30, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x57, 0x61, 0x73, 0x6d, 0x43, 0x77, 0x32, 0x30, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, - 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x22, 0xda, 0x01, 0x0a, 0x0f, 0x57, 0x61, 0x73, 0x6d, 0x43, - 0x77, 0x32, 0x30, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x41, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x49, 0x0a, 0x0d, 0x63, 0x77, 0x32, 0x30, - 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, - 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x77, 0x32, 0x30, 0x4d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0c, 0x63, 0x77, 0x32, 0x30, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x22, 0x31, 0x0a, 0x0f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0b, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, - 0x5f, 0x69, 0x5f, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, 0x72, - 0x6b, 0x65, 0x74, 0x49, 0x44, 0x73, 0x22, 0x50, 0x0a, 0x10, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x05, 0x66, 0x69, - 0x65, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, - 0x73, 0x52, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x22, 0x6a, 0x0a, 0x0e, 0x52, 0x65, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, - 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, - 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x77, 0x32, 0x30, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x52, 0x0c, 0x63, 0x77, 0x32, 0x30, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x5f, 0x69, 0x64, + 0x18, 0x11, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, + 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x46, 0x75, + 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, + 0x22, 0xa6, 0x01, 0x0a, 0x0c, 0x43, 0x77, 0x32, 0x30, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x12, 0x44, 0x0a, 0x0a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, + 0x77, 0x32, 0x30, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x50, 0x0a, 0x0e, 0x6d, 0x61, 0x72, 0x6b, 0x65, + 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, + 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x77, 0x32, 0x30, 0x4d, 0x61, 0x72, + 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x6d, 0x61, 0x72, 0x6b, + 0x65, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x7a, 0x0a, 0x0d, 0x43, 0x77, 0x32, + 0x30, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, + 0x0a, 0x06, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x65, 0x63, 0x69, 0x6d, 0x61, + 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x08, 0x64, 0x65, 0x63, 0x69, 0x6d, 0x61, + 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x75, 0x70, 0x70, + 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, + 0x75, 0x70, 0x70, 0x6c, 0x79, 0x22, 0x81, 0x01, 0x0a, 0x11, 0x43, 0x77, 0x32, 0x30, 0x4d, 0x61, + 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x70, + 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 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, 0x12, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x6d, + 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, + 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x22, 0x4c, 0x0a, 0x1f, 0x47, 0x65, 0x74, + 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x42, 0x79, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x10, + 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0xfd, 0x04, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x57, + 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x12, 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, 0x17, 0x0a, 0x07, + 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, + 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, + 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x08, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x5f, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x69, 0x74, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6c, 0x61, 0x73, 0x74, 0x5f, + 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0e, 0x6c, 0x61, 0x73, 0x74, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x12, 0x3a, 0x0a, 0x05, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, + 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x46, 0x75, 0x6e, 0x64, 0x52, 0x05, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x12, 0x17, 0x0a, + 0x07, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, + 0x63, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x36, 0x0a, 0x17, + 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x5f, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x63, + 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0e, 0x63, + 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, + 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x49, 0x0a, 0x0d, 0x63, + 0x77, 0x32, 0x30, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x10, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, + 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x77, 0x32, 0x30, + 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0c, 0x63, 0x77, 0x32, 0x30, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, + 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x70, 0x72, 0x6f, + 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x49, 0x64, 0x22, 0x47, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x43, 0x77, + 0x32, 0x30, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, + 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, + 0x22, 0x57, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x43, 0x77, 0x32, 0x30, 0x42, 0x61, 0x6c, 0x61, 0x6e, + 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x05, 0x66, 0x69, + 0x65, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x73, 0x22, 0x2f, 0x0a, 0x07, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, - 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x03, 0x63, 0x74, 0x61, 0x22, 0xbd, 0x02, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x42, 0x61, 0x6e, - 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x07, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x72, - 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x0a, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x39, 0x0a, 0x19, 0x69, - 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, - 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, - 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x6f, 0x6c, 0x52, - 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, - 0x73, 0x6b, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, - 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x12, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x65, 0x72, 0x5f, 0x70, 0x61, 0x67, 0x65, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x11, 0x52, 0x07, 0x70, 0x65, 0x72, 0x50, 0x61, 0x67, 0x65, 0x12, - 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x8c, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x42, 0x61, 0x6e, - 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x36, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, - 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, - 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x38, 0x0a, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x42, 0x61, 0x6e, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x52, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x22, 0xc8, 0x01, 0x0a, 0x0c, 0x42, 0x61, 0x6e, 0x6b, 0x54, 0x72, 0x61, - 0x6e, 0x73, 0x66, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1c, 0x0a, - 0x09, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x07, 0x61, - 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x07, 0x61, 0x6d, 0x6f, 0x75, - 0x6e, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, - 0x34, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x16, 0x0a, - 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, - 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x12, 0x0a, 0x10, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, - 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xa8, 0x02, 0x0a, 0x11, 0x53, 0x74, - 0x72, 0x65, 0x61, 0x6d, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, - 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x6c, 0x6f, - 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x68, - 0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, - 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x1a, 0x0a, - 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x78, 0x5f, - 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x74, 0x78, - 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, - 0x6c, 0x6f, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, - 0x4c, 0x6f, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x61, 0x69, 0x6d, - 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x12, 0x52, 0x08, 0x63, 0x6c, 0x61, 0x69, - 0x6d, 0x49, 0x64, 0x73, 0x22, 0x15, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, - 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xb8, 0x02, 0x0a, 0x14, - 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1a, 0x0a, 0x08, - 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x6f, 0x6e, 0x69, - 0x6b, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x6b, - 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, - 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x48, 0x61, - 0x73, 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x75, 0x6d, 0x5f, 0x70, 0x72, 0x65, 0x5f, 0x63, 0x6f, - 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0d, 0x6e, 0x75, 0x6d, - 0x50, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x75, - 0x6d, 0x5f, 0x74, 0x78, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x06, 0x6e, 0x75, 0x6d, - 0x54, 0x78, 0x73, 0x12, 0x33, 0x0a, 0x03, 0x74, 0x78, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, - 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x78, 0x44, 0x61, 0x74, 0x61, - 0x52, 0x50, 0x43, 0x52, 0x03, 0x74, 0x78, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x32, 0xc6, 0x13, 0x0a, 0x14, 0x49, 0x6e, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x52, 0x50, 0x43, 0x12, - 0x6c, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x78, 0x73, - 0x12, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, - 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, - 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, - 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6f, 0x0a, - 0x0e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x73, 0x12, - 0x2d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, - 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, - 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, - 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, - 0x0a, 0x10, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x73, - 0x56, 0x32, 0x12, 0x2f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, - 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, - 0x6b, 0x73, 0x12, 0x28, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, - 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x42, - 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x69, + 0x70, 0x63, 0x2e, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x77, 0x32, 0x30, 0x42, 0x61, 0x6c, 0x61, 0x6e, + 0x63, 0x65, 0x52, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x22, 0xda, 0x01, 0x0a, 0x0f, 0x57, 0x61, + 0x73, 0x6d, 0x43, 0x77, 0x32, 0x30, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x29, 0x0a, + 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, + 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x0a, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x12, + 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x49, 0x0a, 0x0d, 0x63, + 0x77, 0x32, 0x30, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, + 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x77, 0x32, 0x30, + 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0c, 0x63, 0x77, 0x32, 0x30, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x31, 0x0a, 0x0f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0b, 0x6d, 0x61, 0x72, + 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x5f, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, + 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x44, 0x73, 0x22, 0x50, 0x0a, 0x10, 0x52, 0x65, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, + 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x42, 0x6c, - 0x6f, 0x63, 0x6b, 0x12, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, - 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x69, + 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x72, + 0x6b, 0x65, 0x74, 0x73, 0x52, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x22, 0x6a, 0x0a, 0x0e, 0x52, + 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x1b, 0x0a, + 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x08, 0x72, 0x65, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, - 0x2e, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, + 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x08, 0x72, + 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x22, 0x2f, 0x0a, 0x07, 0x52, 0x65, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x74, 0x61, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x74, 0x61, 0x22, 0xbd, 0x02, 0x0a, 0x17, 0x47, 0x65, 0x74, + 0x42, 0x61, 0x6e, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x12, 0x1e, + 0x0a, 0x0a, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x39, + 0x0a, 0x19, 0x69, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x5f, 0x70, + 0x6f, 0x6f, 0x6c, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x16, 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x50, 0x6f, + 0x6f, 0x6c, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, + 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, + 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, + 0x6b, 0x69, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x65, 0x72, 0x5f, 0x70, + 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x11, 0x52, 0x07, 0x70, 0x65, 0x72, 0x50, 0x61, + 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x8c, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, + 0x42, 0x61, 0x6e, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, + 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x38, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, + 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x61, 0x6e, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, + 0x72, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xc8, 0x01, 0x0a, 0x0c, 0x42, 0x61, 0x6e, 0x6b, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x36, + 0x0a, 0x07, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, + 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x07, 0x61, + 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, + 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x22, 0x34, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, + 0x6e, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, + 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x12, 0x0a, 0x10, 0x53, 0x74, 0x72, 0x65, + 0x61, 0x6d, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xa8, 0x02, 0x0a, + 0x11, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x12, + 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, + 0x73, 0x68, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, + 0x74, 0x78, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x08, 0x74, 0x78, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, + 0x6f, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, + 0x72, 0x6f, 0x72, 0x4c, 0x6f, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6c, + 0x61, 0x69, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x12, 0x52, 0x08, 0x63, + 0x6c, 0x61, 0x69, 0x6d, 0x49, 0x64, 0x73, 0x22, 0x15, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, 0x61, + 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xb8, + 0x02, 0x0a, 0x14, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, + 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x6d, + 0x6f, 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x6f, + 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, + 0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x48, 0x61, 0x73, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x68, + 0x61, 0x73, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x65, 0x6e, + 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x75, 0x6d, 0x5f, 0x70, 0x72, 0x65, + 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0d, + 0x6e, 0x75, 0x6d, 0x50, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x17, 0x0a, + 0x07, 0x6e, 0x75, 0x6d, 0x5f, 0x74, 0x78, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x06, + 0x6e, 0x75, 0x6d, 0x54, 0x78, 0x73, 0x12, 0x33, 0x0a, 0x03, 0x74, 0x78, 0x73, 0x18, 0x08, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x78, 0x44, + 0x61, 0x74, 0x61, 0x52, 0x50, 0x43, 0x52, 0x03, 0x74, 0x78, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x11, 0x0a, 0x0f, 0x47, 0x65, 0x74, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x9c, 0x02, 0x0a, + 0x10, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, + 0x16, 0x0a, 0x06, 0x61, 0x73, 0x73, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x06, 0x61, 0x73, 0x73, 0x65, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x6a, 0x5f, 0x73, + 0x75, 0x70, 0x70, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x69, 0x6e, 0x6a, + 0x53, 0x75, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x1c, 0x0a, 0x0a, 0x74, 0x78, 0x73, 0x5f, 0x70, 0x73, + 0x32, 0x34, 0x5f, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x74, 0x78, 0x73, 0x50, + 0x73, 0x32, 0x34, 0x48, 0x12, 0x1e, 0x0a, 0x0b, 0x74, 0x78, 0x73, 0x5f, 0x70, 0x73, 0x31, 0x30, + 0x30, 0x5f, 0x62, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x74, 0x78, 0x73, 0x50, 0x73, + 0x31, 0x30, 0x30, 0x42, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x78, 0x73, 0x5f, 0x74, 0x6f, 0x74, 0x61, + 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x74, 0x78, 0x73, 0x54, 0x6f, 0x74, 0x61, + 0x6c, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x73, 0x32, 0x34, 0x5f, 0x68, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x06, 0x74, 0x78, 0x73, 0x32, 0x34, 0x48, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, + 0x73, 0x33, 0x30, 0x5f, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x74, 0x78, 0x73, + 0x33, 0x30, 0x44, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x32, 0x34, 0x5f, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x32, 0x34, 0x48, 0x32, 0xa5, 0x14, 0x0a, 0x14, + 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, + 0x72, 0x52, 0x50, 0x43, 0x12, 0x6c, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x54, 0x78, 0x73, 0x12, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, - 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x6f, 0x72, 0x12, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x6f, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, + 0x74, 0x54, 0x78, 0x73, 0x12, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, - 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, - 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x7b, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, - 0x70, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, - 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x70, 0x74, 0x69, 0x6d, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, + 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, + 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x54, 0x78, 0x73, 0x56, 0x32, 0x12, 0x2f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, + 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x73, 0x56, + 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, + 0x63, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x73, + 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x09, 0x47, 0x65, + 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x28, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, + 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, + 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x08, + 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x70, - 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x06, - 0x47, 0x65, 0x74, 0x54, 0x78, 0x73, 0x12, 0x25, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, + 0x63, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x28, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, + 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x0d, 0x47, + 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x2c, 0x2e, 0x69, + 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, + 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, + 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x0c, 0x47, 0x65, 0x74, + 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, + 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x47, 0x65, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, + 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7b, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x6f, 0x72, 0x55, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, + 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, + 0x55, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, - 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x54, 0x78, 0x42, 0x79, - 0x54, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, + 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x6f, 0x72, 0x55, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x57, 0x0a, 0x06, 0x47, 0x65, 0x74, 0x54, 0x78, 0x73, 0x12, 0x25, 0x2e, 0x69, 0x6e, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, + 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, + 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x54, + 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x0d, 0x47, 0x65, + 0x74, 0x54, 0x78, 0x42, 0x79, 0x54, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x2c, 0x2e, 0x69, 0x6e, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, + 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x42, 0x79, 0x54, 0x78, 0x48, 0x61, + 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, + 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x42, 0x79, 0x54, 0x78, 0x48, 0x61, 0x73, 0x68, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7b, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x50, + 0x65, 0x67, 0x67, 0x79, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x54, 0x78, 0x73, 0x12, 0x31, + 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, + 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x67, 0x67, 0x79, + 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, + 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x65, + 0x67, 0x67, 0x79, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x84, 0x01, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x50, 0x65, 0x67, + 0x67, 0x79, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x54, 0x78, 0x73, 0x12, + 0x34, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, + 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x67, 0x67, + 0x79, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x54, 0x78, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, + 0x65, 0x74, 0x50, 0x65, 0x67, 0x67, 0x79, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, + 0x6c, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x11, + 0x47, 0x65, 0x74, 0x49, 0x42, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, + 0x73, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, + 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x42, + 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, + 0x49, 0x42, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, + 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x47, 0x65, 0x74, 0x54, 0x78, 0x42, 0x79, 0x54, 0x78, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, + 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x72, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x64, 0x65, + 0x42, 0x79, 0x49, 0x44, 0x12, 0x2e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, - 0x74, 0x54, 0x78, 0x42, 0x79, 0x54, 0x78, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x7b, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x50, 0x65, 0x67, 0x67, 0x79, 0x44, - 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x54, 0x78, 0x73, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x42, 0x79, 0x49, 0x44, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, + 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x42, 0x79, 0x49, 0x44, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, + 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x12, 0x2f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x67, 0x67, 0x79, 0x44, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x67, 0x67, 0x79, 0x44, 0x65, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x84, 0x01, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x50, 0x65, 0x67, 0x67, 0x79, 0x57, 0x69, 0x74, - 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x54, 0x78, 0x73, 0x12, 0x34, 0x2e, 0x69, 0x6e, 0x6a, + 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x67, 0x67, 0x79, 0x57, 0x69, 0x74, 0x68, - 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, - 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x67, - 0x67, 0x79, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x54, 0x78, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x49, 0x42, - 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x73, 0x12, 0x30, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x42, 0x43, 0x54, 0x72, 0x61, 0x6e, - 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, - 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, - 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x42, 0x43, 0x54, 0x72, - 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x69, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x64, 0x65, - 0x73, 0x12, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, - 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x61, - 0x73, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, - 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, - 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, - 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, 0x0f, - 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x42, 0x79, 0x49, 0x44, 0x12, - 0x2e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, - 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, - 0x43, 0x6f, 0x64, 0x65, 0x42, 0x79, 0x49, 0x44, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x2f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, - 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, - 0x43, 0x6f, 0x64, 0x65, 0x42, 0x79, 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x75, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x73, 0x12, 0x2f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, - 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, - 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8d, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x57, + 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8d, 0x01, 0x0a, + 0x18, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, + 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, + 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, - 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x42, 0x79, 0x41, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, + 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6f, 0x0a, 0x0e, + 0x47, 0x65, 0x74, 0x43, 0x77, 0x32, 0x30, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2d, + 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, + 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x77, 0x32, 0x30, 0x42, + 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, - 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x61, 0x73, 0x6d, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6f, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x43, 0x77, - 0x32, 0x30, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x77, 0x32, 0x30, 0x42, 0x61, + 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, + 0x08, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x77, 0x32, 0x30, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x77, 0x32, 0x30, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x08, 0x52, 0x65, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x73, 0x12, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, - 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x42, 0x61, - 0x6e, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x12, 0x2f, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x61, 0x6e, 0x6b, 0x54, 0x72, 0x61, 0x6e, - 0x73, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x61, 0x6e, 0x6b, 0x54, 0x72, 0x61, - 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, - 0x0a, 0x09, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x78, 0x73, 0x12, 0x28, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x78, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, - 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x30, 0x01, 0x12, 0x6b, 0x0a, 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, - 0x6b, 0x73, 0x12, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, - 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, - 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, - 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, - 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x42, - 0x1b, 0x5a, 0x19, 0x2f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, - 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x33, + 0x70, 0x63, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, + 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, 0x10, + 0x47, 0x65, 0x74, 0x42, 0x61, 0x6e, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, + 0x12, 0x2f, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, + 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x61, 0x6e, + 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, + 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x61, + 0x6e, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x09, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x78, 0x73, + 0x12, 0x28, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, + 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, + 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x69, 0x6e, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, + 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x6b, 0x0a, 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, + 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, + 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, + 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x30, 0x01, 0x12, 0x5d, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, + 0x12, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, + 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, + 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x42, 0x1b, 0x5a, 0x19, 0x2f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x70, 0x62, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -7337,7 +7532,7 @@ func file_goadesign_goagen_injective_explorer_rpc_proto_rawDescGZIP() []byte { return file_goadesign_goagen_injective_explorer_rpc_proto_rawDescData } -var file_goadesign_goagen_injective_explorer_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 75) +var file_goadesign_goagen_injective_explorer_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 77) var file_goadesign_goagen_injective_explorer_rpc_proto_goTypes = []interface{}{ (*GetAccountTxsRequest)(nil), // 0: injective_explorer_rpc.GetAccountTxsRequest (*GetAccountTxsResponse)(nil), // 1: injective_explorer_rpc.GetAccountTxsResponse @@ -7413,7 +7608,9 @@ var file_goadesign_goagen_injective_explorer_rpc_proto_goTypes = []interface{}{ (*StreamTxsResponse)(nil), // 71: injective_explorer_rpc.StreamTxsResponse (*StreamBlocksRequest)(nil), // 72: injective_explorer_rpc.StreamBlocksRequest (*StreamBlocksResponse)(nil), // 73: injective_explorer_rpc.StreamBlocksResponse - nil, // 74: injective_explorer_rpc.Event.AttributesEntry + (*GetStatsRequest)(nil), // 74: injective_explorer_rpc.GetStatsRequest + (*GetStatsResponse)(nil), // 75: injective_explorer_rpc.GetStatsResponse + nil, // 76: injective_explorer_rpc.Event.AttributesEntry } var file_goadesign_goagen_injective_explorer_rpc_proto_depIdxs = []int32{ 2, // 0: injective_explorer_rpc.GetAccountTxsResponse.paging:type_name -> injective_explorer_rpc.Paging @@ -7422,7 +7619,7 @@ var file_goadesign_goagen_injective_explorer_rpc_proto_depIdxs = []int32{ 6, // 3: injective_explorer_rpc.TxDetailData.events:type_name -> injective_explorer_rpc.Event 7, // 4: injective_explorer_rpc.TxDetailData.signatures:type_name -> injective_explorer_rpc.Signature 5, // 5: injective_explorer_rpc.GasFee.amount:type_name -> injective_explorer_rpc.CosmosCoin - 74, // 6: injective_explorer_rpc.Event.attributes:type_name -> injective_explorer_rpc.Event.AttributesEntry + 76, // 6: injective_explorer_rpc.Event.attributes:type_name -> injective_explorer_rpc.Event.AttributesEntry 2, // 7: injective_explorer_rpc.GetContractTxsResponse.paging:type_name -> injective_explorer_rpc.Paging 3, // 8: injective_explorer_rpc.GetContractTxsResponse.data:type_name -> injective_explorer_rpc.TxDetailData 3, // 9: injective_explorer_rpc.GetContractTxsV2Response.data:type_name -> injective_explorer_rpc.TxDetailData @@ -7431,89 +7628,92 @@ var file_goadesign_goagen_injective_explorer_rpc_proto_depIdxs = []int32{ 15, // 12: injective_explorer_rpc.BlockInfo.txs:type_name -> injective_explorer_rpc.TxDataRPC 18, // 13: injective_explorer_rpc.GetBlockResponse.data:type_name -> injective_explorer_rpc.BlockDetailInfo 19, // 14: injective_explorer_rpc.BlockDetailInfo.txs:type_name -> injective_explorer_rpc.TxData - 22, // 15: injective_explorer_rpc.GetValidatorsResponse.data:type_name -> injective_explorer_rpc.Validator - 23, // 16: injective_explorer_rpc.Validator.description:type_name -> injective_explorer_rpc.ValidatorDescription - 24, // 17: injective_explorer_rpc.Validator.uptimes:type_name -> injective_explorer_rpc.ValidatorUptime - 25, // 18: injective_explorer_rpc.Validator.slashing_events:type_name -> injective_explorer_rpc.SlashingEvent - 22, // 19: injective_explorer_rpc.GetValidatorResponse.data:type_name -> injective_explorer_rpc.Validator - 24, // 20: injective_explorer_rpc.GetValidatorUptimeResponse.data:type_name -> injective_explorer_rpc.ValidatorUptime - 2, // 21: injective_explorer_rpc.GetTxsResponse.paging:type_name -> injective_explorer_rpc.Paging - 19, // 22: injective_explorer_rpc.GetTxsResponse.data:type_name -> injective_explorer_rpc.TxData - 3, // 23: injective_explorer_rpc.GetTxByTxHashResponse.data:type_name -> injective_explorer_rpc.TxDetailData - 36, // 24: injective_explorer_rpc.GetPeggyDepositTxsResponse.field:type_name -> injective_explorer_rpc.PeggyDepositTx - 39, // 25: injective_explorer_rpc.GetPeggyWithdrawalTxsResponse.field:type_name -> injective_explorer_rpc.PeggyWithdrawalTx - 42, // 26: injective_explorer_rpc.GetIBCTransferTxsResponse.field:type_name -> injective_explorer_rpc.IBCTransferTx - 2, // 27: injective_explorer_rpc.GetWasmCodesResponse.paging:type_name -> injective_explorer_rpc.Paging - 45, // 28: injective_explorer_rpc.GetWasmCodesResponse.data:type_name -> injective_explorer_rpc.WasmCode - 46, // 29: injective_explorer_rpc.WasmCode.checksum:type_name -> injective_explorer_rpc.Checksum - 47, // 30: injective_explorer_rpc.WasmCode.permission:type_name -> injective_explorer_rpc.ContractPermission - 46, // 31: injective_explorer_rpc.GetWasmCodeByIDResponse.checksum:type_name -> injective_explorer_rpc.Checksum - 47, // 32: injective_explorer_rpc.GetWasmCodeByIDResponse.permission:type_name -> injective_explorer_rpc.ContractPermission - 2, // 33: injective_explorer_rpc.GetWasmContractsResponse.paging:type_name -> injective_explorer_rpc.Paging - 52, // 34: injective_explorer_rpc.GetWasmContractsResponse.data:type_name -> injective_explorer_rpc.WasmContract - 53, // 35: injective_explorer_rpc.WasmContract.funds:type_name -> injective_explorer_rpc.ContractFund - 54, // 36: injective_explorer_rpc.WasmContract.cw20_metadata:type_name -> injective_explorer_rpc.Cw20Metadata - 55, // 37: injective_explorer_rpc.Cw20Metadata.token_info:type_name -> injective_explorer_rpc.Cw20TokenInfo - 56, // 38: injective_explorer_rpc.Cw20Metadata.marketing_info:type_name -> injective_explorer_rpc.Cw20MarketingInfo - 53, // 39: injective_explorer_rpc.GetWasmContractByAddressResponse.funds:type_name -> injective_explorer_rpc.ContractFund - 54, // 40: injective_explorer_rpc.GetWasmContractByAddressResponse.cw20_metadata:type_name -> injective_explorer_rpc.Cw20Metadata - 61, // 41: injective_explorer_rpc.GetCw20BalanceResponse.field:type_name -> injective_explorer_rpc.WasmCw20Balance - 54, // 42: injective_explorer_rpc.WasmCw20Balance.cw20_metadata:type_name -> injective_explorer_rpc.Cw20Metadata - 64, // 43: injective_explorer_rpc.RelayersResponse.field:type_name -> injective_explorer_rpc.RelayerMarkets - 65, // 44: injective_explorer_rpc.RelayerMarkets.relayers:type_name -> injective_explorer_rpc.Relayer - 2, // 45: injective_explorer_rpc.GetBankTransfersResponse.paging:type_name -> injective_explorer_rpc.Paging - 68, // 46: injective_explorer_rpc.GetBankTransfersResponse.data:type_name -> injective_explorer_rpc.BankTransfer - 69, // 47: injective_explorer_rpc.BankTransfer.amounts:type_name -> injective_explorer_rpc.Coin - 15, // 48: injective_explorer_rpc.StreamBlocksResponse.txs:type_name -> injective_explorer_rpc.TxDataRPC - 0, // 49: injective_explorer_rpc.InjectiveExplorerRPC.GetAccountTxs:input_type -> injective_explorer_rpc.GetAccountTxsRequest - 8, // 50: injective_explorer_rpc.InjectiveExplorerRPC.GetContractTxs:input_type -> injective_explorer_rpc.GetContractTxsRequest - 10, // 51: injective_explorer_rpc.InjectiveExplorerRPC.GetContractTxsV2:input_type -> injective_explorer_rpc.GetContractTxsV2Request - 12, // 52: injective_explorer_rpc.InjectiveExplorerRPC.GetBlocks:input_type -> injective_explorer_rpc.GetBlocksRequest - 16, // 53: injective_explorer_rpc.InjectiveExplorerRPC.GetBlock:input_type -> injective_explorer_rpc.GetBlockRequest - 20, // 54: injective_explorer_rpc.InjectiveExplorerRPC.GetValidators:input_type -> injective_explorer_rpc.GetValidatorsRequest - 26, // 55: injective_explorer_rpc.InjectiveExplorerRPC.GetValidator:input_type -> injective_explorer_rpc.GetValidatorRequest - 28, // 56: injective_explorer_rpc.InjectiveExplorerRPC.GetValidatorUptime:input_type -> injective_explorer_rpc.GetValidatorUptimeRequest - 30, // 57: injective_explorer_rpc.InjectiveExplorerRPC.GetTxs:input_type -> injective_explorer_rpc.GetTxsRequest - 32, // 58: injective_explorer_rpc.InjectiveExplorerRPC.GetTxByTxHash:input_type -> injective_explorer_rpc.GetTxByTxHashRequest - 34, // 59: injective_explorer_rpc.InjectiveExplorerRPC.GetPeggyDepositTxs:input_type -> injective_explorer_rpc.GetPeggyDepositTxsRequest - 37, // 60: injective_explorer_rpc.InjectiveExplorerRPC.GetPeggyWithdrawalTxs:input_type -> injective_explorer_rpc.GetPeggyWithdrawalTxsRequest - 40, // 61: injective_explorer_rpc.InjectiveExplorerRPC.GetIBCTransferTxs:input_type -> injective_explorer_rpc.GetIBCTransferTxsRequest - 43, // 62: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmCodes:input_type -> injective_explorer_rpc.GetWasmCodesRequest - 48, // 63: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmCodeByID:input_type -> injective_explorer_rpc.GetWasmCodeByIDRequest - 50, // 64: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmContracts:input_type -> injective_explorer_rpc.GetWasmContractsRequest - 57, // 65: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmContractByAddress:input_type -> injective_explorer_rpc.GetWasmContractByAddressRequest - 59, // 66: injective_explorer_rpc.InjectiveExplorerRPC.GetCw20Balance:input_type -> injective_explorer_rpc.GetCw20BalanceRequest - 62, // 67: injective_explorer_rpc.InjectiveExplorerRPC.Relayers:input_type -> injective_explorer_rpc.RelayersRequest - 66, // 68: injective_explorer_rpc.InjectiveExplorerRPC.GetBankTransfers:input_type -> injective_explorer_rpc.GetBankTransfersRequest - 70, // 69: injective_explorer_rpc.InjectiveExplorerRPC.StreamTxs:input_type -> injective_explorer_rpc.StreamTxsRequest - 72, // 70: injective_explorer_rpc.InjectiveExplorerRPC.StreamBlocks:input_type -> injective_explorer_rpc.StreamBlocksRequest - 1, // 71: injective_explorer_rpc.InjectiveExplorerRPC.GetAccountTxs:output_type -> injective_explorer_rpc.GetAccountTxsResponse - 9, // 72: injective_explorer_rpc.InjectiveExplorerRPC.GetContractTxs:output_type -> injective_explorer_rpc.GetContractTxsResponse - 11, // 73: injective_explorer_rpc.InjectiveExplorerRPC.GetContractTxsV2:output_type -> injective_explorer_rpc.GetContractTxsV2Response - 13, // 74: injective_explorer_rpc.InjectiveExplorerRPC.GetBlocks:output_type -> injective_explorer_rpc.GetBlocksResponse - 17, // 75: injective_explorer_rpc.InjectiveExplorerRPC.GetBlock:output_type -> injective_explorer_rpc.GetBlockResponse - 21, // 76: injective_explorer_rpc.InjectiveExplorerRPC.GetValidators:output_type -> injective_explorer_rpc.GetValidatorsResponse - 27, // 77: injective_explorer_rpc.InjectiveExplorerRPC.GetValidator:output_type -> injective_explorer_rpc.GetValidatorResponse - 29, // 78: injective_explorer_rpc.InjectiveExplorerRPC.GetValidatorUptime:output_type -> injective_explorer_rpc.GetValidatorUptimeResponse - 31, // 79: injective_explorer_rpc.InjectiveExplorerRPC.GetTxs:output_type -> injective_explorer_rpc.GetTxsResponse - 33, // 80: injective_explorer_rpc.InjectiveExplorerRPC.GetTxByTxHash:output_type -> injective_explorer_rpc.GetTxByTxHashResponse - 35, // 81: injective_explorer_rpc.InjectiveExplorerRPC.GetPeggyDepositTxs:output_type -> injective_explorer_rpc.GetPeggyDepositTxsResponse - 38, // 82: injective_explorer_rpc.InjectiveExplorerRPC.GetPeggyWithdrawalTxs:output_type -> injective_explorer_rpc.GetPeggyWithdrawalTxsResponse - 41, // 83: injective_explorer_rpc.InjectiveExplorerRPC.GetIBCTransferTxs:output_type -> injective_explorer_rpc.GetIBCTransferTxsResponse - 44, // 84: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmCodes:output_type -> injective_explorer_rpc.GetWasmCodesResponse - 49, // 85: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmCodeByID:output_type -> injective_explorer_rpc.GetWasmCodeByIDResponse - 51, // 86: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmContracts:output_type -> injective_explorer_rpc.GetWasmContractsResponse - 58, // 87: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmContractByAddress:output_type -> injective_explorer_rpc.GetWasmContractByAddressResponse - 60, // 88: injective_explorer_rpc.InjectiveExplorerRPC.GetCw20Balance:output_type -> injective_explorer_rpc.GetCw20BalanceResponse - 63, // 89: injective_explorer_rpc.InjectiveExplorerRPC.Relayers:output_type -> injective_explorer_rpc.RelayersResponse - 67, // 90: injective_explorer_rpc.InjectiveExplorerRPC.GetBankTransfers:output_type -> injective_explorer_rpc.GetBankTransfersResponse - 71, // 91: injective_explorer_rpc.InjectiveExplorerRPC.StreamTxs:output_type -> injective_explorer_rpc.StreamTxsResponse - 73, // 92: injective_explorer_rpc.InjectiveExplorerRPC.StreamBlocks:output_type -> injective_explorer_rpc.StreamBlocksResponse - 71, // [71:93] is the sub-list for method output_type - 49, // [49:71] is the sub-list for method input_type - 49, // [49:49] is the sub-list for extension type_name - 49, // [49:49] is the sub-list for extension extendee - 0, // [0:49] is the sub-list for field type_name + 7, // 15: injective_explorer_rpc.TxData.signatures:type_name -> injective_explorer_rpc.Signature + 22, // 16: injective_explorer_rpc.GetValidatorsResponse.data:type_name -> injective_explorer_rpc.Validator + 23, // 17: injective_explorer_rpc.Validator.description:type_name -> injective_explorer_rpc.ValidatorDescription + 24, // 18: injective_explorer_rpc.Validator.uptimes:type_name -> injective_explorer_rpc.ValidatorUptime + 25, // 19: injective_explorer_rpc.Validator.slashing_events:type_name -> injective_explorer_rpc.SlashingEvent + 22, // 20: injective_explorer_rpc.GetValidatorResponse.data:type_name -> injective_explorer_rpc.Validator + 24, // 21: injective_explorer_rpc.GetValidatorUptimeResponse.data:type_name -> injective_explorer_rpc.ValidatorUptime + 2, // 22: injective_explorer_rpc.GetTxsResponse.paging:type_name -> injective_explorer_rpc.Paging + 19, // 23: injective_explorer_rpc.GetTxsResponse.data:type_name -> injective_explorer_rpc.TxData + 3, // 24: injective_explorer_rpc.GetTxByTxHashResponse.data:type_name -> injective_explorer_rpc.TxDetailData + 36, // 25: injective_explorer_rpc.GetPeggyDepositTxsResponse.field:type_name -> injective_explorer_rpc.PeggyDepositTx + 39, // 26: injective_explorer_rpc.GetPeggyWithdrawalTxsResponse.field:type_name -> injective_explorer_rpc.PeggyWithdrawalTx + 42, // 27: injective_explorer_rpc.GetIBCTransferTxsResponse.field:type_name -> injective_explorer_rpc.IBCTransferTx + 2, // 28: injective_explorer_rpc.GetWasmCodesResponse.paging:type_name -> injective_explorer_rpc.Paging + 45, // 29: injective_explorer_rpc.GetWasmCodesResponse.data:type_name -> injective_explorer_rpc.WasmCode + 46, // 30: injective_explorer_rpc.WasmCode.checksum:type_name -> injective_explorer_rpc.Checksum + 47, // 31: injective_explorer_rpc.WasmCode.permission:type_name -> injective_explorer_rpc.ContractPermission + 46, // 32: injective_explorer_rpc.GetWasmCodeByIDResponse.checksum:type_name -> injective_explorer_rpc.Checksum + 47, // 33: injective_explorer_rpc.GetWasmCodeByIDResponse.permission:type_name -> injective_explorer_rpc.ContractPermission + 2, // 34: injective_explorer_rpc.GetWasmContractsResponse.paging:type_name -> injective_explorer_rpc.Paging + 52, // 35: injective_explorer_rpc.GetWasmContractsResponse.data:type_name -> injective_explorer_rpc.WasmContract + 53, // 36: injective_explorer_rpc.WasmContract.funds:type_name -> injective_explorer_rpc.ContractFund + 54, // 37: injective_explorer_rpc.WasmContract.cw20_metadata:type_name -> injective_explorer_rpc.Cw20Metadata + 55, // 38: injective_explorer_rpc.Cw20Metadata.token_info:type_name -> injective_explorer_rpc.Cw20TokenInfo + 56, // 39: injective_explorer_rpc.Cw20Metadata.marketing_info:type_name -> injective_explorer_rpc.Cw20MarketingInfo + 53, // 40: injective_explorer_rpc.GetWasmContractByAddressResponse.funds:type_name -> injective_explorer_rpc.ContractFund + 54, // 41: injective_explorer_rpc.GetWasmContractByAddressResponse.cw20_metadata:type_name -> injective_explorer_rpc.Cw20Metadata + 61, // 42: injective_explorer_rpc.GetCw20BalanceResponse.field:type_name -> injective_explorer_rpc.WasmCw20Balance + 54, // 43: injective_explorer_rpc.WasmCw20Balance.cw20_metadata:type_name -> injective_explorer_rpc.Cw20Metadata + 64, // 44: injective_explorer_rpc.RelayersResponse.field:type_name -> injective_explorer_rpc.RelayerMarkets + 65, // 45: injective_explorer_rpc.RelayerMarkets.relayers:type_name -> injective_explorer_rpc.Relayer + 2, // 46: injective_explorer_rpc.GetBankTransfersResponse.paging:type_name -> injective_explorer_rpc.Paging + 68, // 47: injective_explorer_rpc.GetBankTransfersResponse.data:type_name -> injective_explorer_rpc.BankTransfer + 69, // 48: injective_explorer_rpc.BankTransfer.amounts:type_name -> injective_explorer_rpc.Coin + 15, // 49: injective_explorer_rpc.StreamBlocksResponse.txs:type_name -> injective_explorer_rpc.TxDataRPC + 0, // 50: injective_explorer_rpc.InjectiveExplorerRPC.GetAccountTxs:input_type -> injective_explorer_rpc.GetAccountTxsRequest + 8, // 51: injective_explorer_rpc.InjectiveExplorerRPC.GetContractTxs:input_type -> injective_explorer_rpc.GetContractTxsRequest + 10, // 52: injective_explorer_rpc.InjectiveExplorerRPC.GetContractTxsV2:input_type -> injective_explorer_rpc.GetContractTxsV2Request + 12, // 53: injective_explorer_rpc.InjectiveExplorerRPC.GetBlocks:input_type -> injective_explorer_rpc.GetBlocksRequest + 16, // 54: injective_explorer_rpc.InjectiveExplorerRPC.GetBlock:input_type -> injective_explorer_rpc.GetBlockRequest + 20, // 55: injective_explorer_rpc.InjectiveExplorerRPC.GetValidators:input_type -> injective_explorer_rpc.GetValidatorsRequest + 26, // 56: injective_explorer_rpc.InjectiveExplorerRPC.GetValidator:input_type -> injective_explorer_rpc.GetValidatorRequest + 28, // 57: injective_explorer_rpc.InjectiveExplorerRPC.GetValidatorUptime:input_type -> injective_explorer_rpc.GetValidatorUptimeRequest + 30, // 58: injective_explorer_rpc.InjectiveExplorerRPC.GetTxs:input_type -> injective_explorer_rpc.GetTxsRequest + 32, // 59: injective_explorer_rpc.InjectiveExplorerRPC.GetTxByTxHash:input_type -> injective_explorer_rpc.GetTxByTxHashRequest + 34, // 60: injective_explorer_rpc.InjectiveExplorerRPC.GetPeggyDepositTxs:input_type -> injective_explorer_rpc.GetPeggyDepositTxsRequest + 37, // 61: injective_explorer_rpc.InjectiveExplorerRPC.GetPeggyWithdrawalTxs:input_type -> injective_explorer_rpc.GetPeggyWithdrawalTxsRequest + 40, // 62: injective_explorer_rpc.InjectiveExplorerRPC.GetIBCTransferTxs:input_type -> injective_explorer_rpc.GetIBCTransferTxsRequest + 43, // 63: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmCodes:input_type -> injective_explorer_rpc.GetWasmCodesRequest + 48, // 64: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmCodeByID:input_type -> injective_explorer_rpc.GetWasmCodeByIDRequest + 50, // 65: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmContracts:input_type -> injective_explorer_rpc.GetWasmContractsRequest + 57, // 66: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmContractByAddress:input_type -> injective_explorer_rpc.GetWasmContractByAddressRequest + 59, // 67: injective_explorer_rpc.InjectiveExplorerRPC.GetCw20Balance:input_type -> injective_explorer_rpc.GetCw20BalanceRequest + 62, // 68: injective_explorer_rpc.InjectiveExplorerRPC.Relayers:input_type -> injective_explorer_rpc.RelayersRequest + 66, // 69: injective_explorer_rpc.InjectiveExplorerRPC.GetBankTransfers:input_type -> injective_explorer_rpc.GetBankTransfersRequest + 70, // 70: injective_explorer_rpc.InjectiveExplorerRPC.StreamTxs:input_type -> injective_explorer_rpc.StreamTxsRequest + 72, // 71: injective_explorer_rpc.InjectiveExplorerRPC.StreamBlocks:input_type -> injective_explorer_rpc.StreamBlocksRequest + 74, // 72: injective_explorer_rpc.InjectiveExplorerRPC.GetStats:input_type -> injective_explorer_rpc.GetStatsRequest + 1, // 73: injective_explorer_rpc.InjectiveExplorerRPC.GetAccountTxs:output_type -> injective_explorer_rpc.GetAccountTxsResponse + 9, // 74: injective_explorer_rpc.InjectiveExplorerRPC.GetContractTxs:output_type -> injective_explorer_rpc.GetContractTxsResponse + 11, // 75: injective_explorer_rpc.InjectiveExplorerRPC.GetContractTxsV2:output_type -> injective_explorer_rpc.GetContractTxsV2Response + 13, // 76: injective_explorer_rpc.InjectiveExplorerRPC.GetBlocks:output_type -> injective_explorer_rpc.GetBlocksResponse + 17, // 77: injective_explorer_rpc.InjectiveExplorerRPC.GetBlock:output_type -> injective_explorer_rpc.GetBlockResponse + 21, // 78: injective_explorer_rpc.InjectiveExplorerRPC.GetValidators:output_type -> injective_explorer_rpc.GetValidatorsResponse + 27, // 79: injective_explorer_rpc.InjectiveExplorerRPC.GetValidator:output_type -> injective_explorer_rpc.GetValidatorResponse + 29, // 80: injective_explorer_rpc.InjectiveExplorerRPC.GetValidatorUptime:output_type -> injective_explorer_rpc.GetValidatorUptimeResponse + 31, // 81: injective_explorer_rpc.InjectiveExplorerRPC.GetTxs:output_type -> injective_explorer_rpc.GetTxsResponse + 33, // 82: injective_explorer_rpc.InjectiveExplorerRPC.GetTxByTxHash:output_type -> injective_explorer_rpc.GetTxByTxHashResponse + 35, // 83: injective_explorer_rpc.InjectiveExplorerRPC.GetPeggyDepositTxs:output_type -> injective_explorer_rpc.GetPeggyDepositTxsResponse + 38, // 84: injective_explorer_rpc.InjectiveExplorerRPC.GetPeggyWithdrawalTxs:output_type -> injective_explorer_rpc.GetPeggyWithdrawalTxsResponse + 41, // 85: injective_explorer_rpc.InjectiveExplorerRPC.GetIBCTransferTxs:output_type -> injective_explorer_rpc.GetIBCTransferTxsResponse + 44, // 86: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmCodes:output_type -> injective_explorer_rpc.GetWasmCodesResponse + 49, // 87: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmCodeByID:output_type -> injective_explorer_rpc.GetWasmCodeByIDResponse + 51, // 88: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmContracts:output_type -> injective_explorer_rpc.GetWasmContractsResponse + 58, // 89: injective_explorer_rpc.InjectiveExplorerRPC.GetWasmContractByAddress:output_type -> injective_explorer_rpc.GetWasmContractByAddressResponse + 60, // 90: injective_explorer_rpc.InjectiveExplorerRPC.GetCw20Balance:output_type -> injective_explorer_rpc.GetCw20BalanceResponse + 63, // 91: injective_explorer_rpc.InjectiveExplorerRPC.Relayers:output_type -> injective_explorer_rpc.RelayersResponse + 67, // 92: injective_explorer_rpc.InjectiveExplorerRPC.GetBankTransfers:output_type -> injective_explorer_rpc.GetBankTransfersResponse + 71, // 93: injective_explorer_rpc.InjectiveExplorerRPC.StreamTxs:output_type -> injective_explorer_rpc.StreamTxsResponse + 73, // 94: injective_explorer_rpc.InjectiveExplorerRPC.StreamBlocks:output_type -> injective_explorer_rpc.StreamBlocksResponse + 75, // 95: injective_explorer_rpc.InjectiveExplorerRPC.GetStats:output_type -> injective_explorer_rpc.GetStatsResponse + 73, // [73:96] is the sub-list for method output_type + 50, // [50:73] is the sub-list for method input_type + 50, // [50:50] is the sub-list for extension type_name + 50, // [50:50] is the sub-list for extension extendee + 0, // [0:50] is the sub-list for field type_name } func init() { file_goadesign_goagen_injective_explorer_rpc_proto_init() } @@ -8410,6 +8610,30 @@ func file_goadesign_goagen_injective_explorer_rpc_proto_init() { return nil } } + file_goadesign_goagen_injective_explorer_rpc_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetStatsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_injective_explorer_rpc_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetStatsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -8417,7 +8641,7 @@ func file_goadesign_goagen_injective_explorer_rpc_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_goadesign_goagen_injective_explorer_rpc_proto_rawDesc, NumEnums: 0, - NumMessages: 75, + NumMessages: 77, NumExtensions: 0, NumServices: 1, }, diff --git a/exchange/explorer_rpc/pb/goadesign_goagen_injective_explorer_rpc_grpc.pb.go b/exchange/explorer_rpc/pb/goadesign_goagen_injective_explorer_rpc_grpc.pb.go index bbcb920f..1b0b94fc 100644 --- a/exchange/explorer_rpc/pb/goadesign_goagen_injective_explorer_rpc_grpc.pb.go +++ b/exchange/explorer_rpc/pb/goadesign_goagen_injective_explorer_rpc_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.2.0 -// - protoc v3.19.4 +// - protoc v4.24.4 // source: goadesign_goagen_injective_explorer_rpc.proto package injective_explorer_rpcpb @@ -70,6 +70,8 @@ type InjectiveExplorerRPCClient interface { StreamTxs(ctx context.Context, in *StreamTxsRequest, opts ...grpc.CallOption) (InjectiveExplorerRPC_StreamTxsClient, error) // StreamBlocks returns the latest blocks StreamBlocks(ctx context.Context, in *StreamBlocksRequest, opts ...grpc.CallOption) (InjectiveExplorerRPC_StreamBlocksClient, error) + // GetStats returns global exchange statistics in the last 24hs + GetStats(ctx context.Context, in *GetStatsRequest, opts ...grpc.CallOption) (*GetStatsResponse, error) } type injectiveExplorerRPCClient struct { @@ -324,6 +326,15 @@ func (x *injectiveExplorerRPCStreamBlocksClient) Recv() (*StreamBlocksResponse, return m, nil } +func (c *injectiveExplorerRPCClient) GetStats(ctx context.Context, in *GetStatsRequest, opts ...grpc.CallOption) (*GetStatsResponse, error) { + out := new(GetStatsResponse) + err := c.cc.Invoke(ctx, "/injective_explorer_rpc.InjectiveExplorerRPC/GetStats", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // InjectiveExplorerRPCServer is the server API for InjectiveExplorerRPC service. // All implementations must embed UnimplementedInjectiveExplorerRPCServer // for forward compatibility @@ -376,6 +387,8 @@ type InjectiveExplorerRPCServer interface { StreamTxs(*StreamTxsRequest, InjectiveExplorerRPC_StreamTxsServer) error // StreamBlocks returns the latest blocks StreamBlocks(*StreamBlocksRequest, InjectiveExplorerRPC_StreamBlocksServer) error + // GetStats returns global exchange statistics in the last 24hs + GetStats(context.Context, *GetStatsRequest) (*GetStatsResponse, error) mustEmbedUnimplementedInjectiveExplorerRPCServer() } @@ -449,6 +462,9 @@ func (UnimplementedInjectiveExplorerRPCServer) StreamTxs(*StreamTxsRequest, Inje func (UnimplementedInjectiveExplorerRPCServer) StreamBlocks(*StreamBlocksRequest, InjectiveExplorerRPC_StreamBlocksServer) error { return status.Errorf(codes.Unimplemented, "method StreamBlocks not implemented") } +func (UnimplementedInjectiveExplorerRPCServer) GetStats(context.Context, *GetStatsRequest) (*GetStatsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetStats not implemented") +} func (UnimplementedInjectiveExplorerRPCServer) mustEmbedUnimplementedInjectiveExplorerRPCServer() {} // UnsafeInjectiveExplorerRPCServer may be embedded to opt out of forward compatibility for this service. @@ -864,6 +880,24 @@ func (x *injectiveExplorerRPCStreamBlocksServer) Send(m *StreamBlocksResponse) e return x.ServerStream.SendMsg(m) } +func _InjectiveExplorerRPC_GetStats_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetStatsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(InjectiveExplorerRPCServer).GetStats(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective_explorer_rpc.InjectiveExplorerRPC/GetStats", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(InjectiveExplorerRPCServer).GetStats(ctx, req.(*GetStatsRequest)) + } + return interceptor(ctx, in, info, handler) +} + // InjectiveExplorerRPC_ServiceDesc is the grpc.ServiceDesc for InjectiveExplorerRPC service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -951,6 +985,10 @@ var InjectiveExplorerRPC_ServiceDesc = grpc.ServiceDesc{ MethodName: "GetBankTransfers", Handler: _InjectiveExplorerRPC_GetBankTransfers_Handler, }, + { + MethodName: "GetStats", + Handler: _InjectiveExplorerRPC_GetStats_Handler, + }, }, Streams: []grpc.StreamDesc{ { diff --git a/exchange/explorer_rpc/pb/injective_explorer_rpc.pb.gw.go b/exchange/explorer_rpc/pb/injective_explorer_rpc.pb.gw.go deleted file mode 100644 index 06257030..00000000 --- a/exchange/explorer_rpc/pb/injective_explorer_rpc.pb.gw.go +++ /dev/null @@ -1,1902 +0,0 @@ -// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: injective_explorer_rpc.proto - -/* -Package injective_explorer_rpcpb is a reverse proxy. - -It translates gRPC into RESTful JSON APIs. -*/ -package injective_explorer_rpcpb - -import ( - "context" - "io" - "net/http" - - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" - "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/grpclog" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/proto" -) - -// Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = metadata.Join - -func request_InjectiveExplorerRPC_GetAccountTxs_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetAccountTxsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetAccountTxs(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetAccountTxs_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetAccountTxsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetAccountTxs(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetContractTxs_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetContractTxsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetContractTxs(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetContractTxs_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetContractTxsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetContractTxs(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetContractTxsV2_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetContractTxsV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetContractTxsV2(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetContractTxsV2_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetContractTxsV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetContractTxsV2(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetBlocks_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetBlocksRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetBlocks(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetBlocks_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetBlocksRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetBlocks(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetBlock_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetBlockRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetBlock(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetBlock_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetBlockRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetBlock(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetValidators_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetValidatorsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetValidators(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetValidators_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetValidatorsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetValidators(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetValidator_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetValidatorRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetValidator(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetValidator_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetValidatorRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetValidator(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetValidatorUptime_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetValidatorUptimeRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetValidatorUptime(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetValidatorUptime_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetValidatorUptimeRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetValidatorUptime(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetTxs_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetTxsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetTxs(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetTxs_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetTxsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetTxs(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetTxByTxHash_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetTxByTxHashRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetTxByTxHash(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetTxByTxHash_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetTxByTxHashRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetTxByTxHash(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetPeggyDepositTxs_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetPeggyDepositTxsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetPeggyDepositTxs(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetPeggyDepositTxs_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetPeggyDepositTxsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetPeggyDepositTxs(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetPeggyWithdrawalTxs_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetPeggyWithdrawalTxsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetPeggyWithdrawalTxs(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetPeggyWithdrawalTxs_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetPeggyWithdrawalTxsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetPeggyWithdrawalTxs(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetIBCTransferTxs_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetIBCTransferTxsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetIBCTransferTxs(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetIBCTransferTxs_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetIBCTransferTxsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetIBCTransferTxs(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetWasmCodes_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetWasmCodesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetWasmCodes(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetWasmCodes_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetWasmCodesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetWasmCodes(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetWasmCodeByID_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetWasmCodeByIDRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetWasmCodeByID(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetWasmCodeByID_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetWasmCodeByIDRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetWasmCodeByID(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetWasmContracts_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetWasmContractsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetWasmContracts(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetWasmContracts_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetWasmContractsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetWasmContracts(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetWasmContractByAddress_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetWasmContractByAddressRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetWasmContractByAddress(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetWasmContractByAddress_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetWasmContractByAddressRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetWasmContractByAddress(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetCw20Balance_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetCw20BalanceRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetCw20Balance(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetCw20Balance_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetCw20BalanceRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetCw20Balance(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_Relayers_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq RelayersRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Relayers(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_Relayers_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq RelayersRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Relayers(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_GetBankTransfers_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetBankTransfersRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetBankTransfers(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveExplorerRPC_GetBankTransfers_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveExplorerRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetBankTransfersRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetBankTransfers(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveExplorerRPC_StreamTxs_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (InjectiveExplorerRPC_StreamTxsClient, runtime.ServerMetadata, error) { - var protoReq StreamTxsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamTxs(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveExplorerRPC_StreamBlocks_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveExplorerRPCClient, req *http.Request, pathParams map[string]string) (InjectiveExplorerRPC_StreamBlocksClient, runtime.ServerMetadata, error) { - var protoReq StreamBlocksRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamBlocks(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -// RegisterInjectiveExplorerRPCHandlerServer registers the http handlers for service InjectiveExplorerRPC to "mux". -// UnaryRPC :call InjectiveExplorerRPCServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterInjectiveExplorerRPCHandlerFromEndpoint instead. -func RegisterInjectiveExplorerRPCHandlerServer(ctx context.Context, mux *runtime.ServeMux, server InjectiveExplorerRPCServer) error { - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetAccountTxs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetAccountTxs", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetAccountTxs")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetAccountTxs_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetAccountTxs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetContractTxs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetContractTxs", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetContractTxs")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetContractTxs_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetContractTxs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetContractTxsV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetContractTxsV2", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetContractTxsV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetContractTxsV2_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetContractTxsV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetBlocks_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetBlocks", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetBlocks")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetBlocks_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetBlocks_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetBlock_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetBlock", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetBlock")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetBlock_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetBlock_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetValidators_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetValidators", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetValidators")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetValidators_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetValidators_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetValidator_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetValidator", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetValidator")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetValidator_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetValidator_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetValidatorUptime_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetValidatorUptime", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetValidatorUptime")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetValidatorUptime_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetValidatorUptime_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetTxs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetTxs", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetTxs")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetTxs_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetTxs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetTxByTxHash_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetTxByTxHash", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetTxByTxHash")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetTxByTxHash_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetTxByTxHash_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetPeggyDepositTxs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetPeggyDepositTxs", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetPeggyDepositTxs")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetPeggyDepositTxs_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetPeggyDepositTxs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetPeggyWithdrawalTxs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetPeggyWithdrawalTxs", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetPeggyWithdrawalTxs")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetPeggyWithdrawalTxs_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetPeggyWithdrawalTxs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetIBCTransferTxs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetIBCTransferTxs", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetIBCTransferTxs")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetIBCTransferTxs_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetIBCTransferTxs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetWasmCodes_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmCodes", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmCodes")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetWasmCodes_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetWasmCodes_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetWasmCodeByID_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmCodeByID", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmCodeByID")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetWasmCodeByID_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetWasmCodeByID_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetWasmContracts_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmContracts", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmContracts")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetWasmContracts_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetWasmContracts_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetWasmContractByAddress_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmContractByAddress", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmContractByAddress")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetWasmContractByAddress_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetWasmContractByAddress_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetCw20Balance_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetCw20Balance", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetCw20Balance")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetCw20Balance_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetCw20Balance_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_Relayers_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/Relayers", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/Relayers")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_Relayers_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_Relayers_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetBankTransfers_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetBankTransfers", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetBankTransfers")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveExplorerRPC_GetBankTransfers_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetBankTransfers_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_StreamTxs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_StreamBlocks_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - return nil -} - -// RegisterInjectiveExplorerRPCHandlerFromEndpoint is same as RegisterInjectiveExplorerRPCHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterInjectiveExplorerRPCHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterInjectiveExplorerRPCHandler(ctx, mux, conn) -} - -// RegisterInjectiveExplorerRPCHandler registers the http handlers for service InjectiveExplorerRPC to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterInjectiveExplorerRPCHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterInjectiveExplorerRPCHandlerClient(ctx, mux, NewInjectiveExplorerRPCClient(conn)) -} - -// RegisterInjectiveExplorerRPCHandlerClient registers the http handlers for service InjectiveExplorerRPC -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "InjectiveExplorerRPCClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "InjectiveExplorerRPCClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "InjectiveExplorerRPCClient" to call the correct interceptors. -func RegisterInjectiveExplorerRPCHandlerClient(ctx context.Context, mux *runtime.ServeMux, client InjectiveExplorerRPCClient) error { - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetAccountTxs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetAccountTxs", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetAccountTxs")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetAccountTxs_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetAccountTxs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetContractTxs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetContractTxs", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetContractTxs")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetContractTxs_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetContractTxs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetContractTxsV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetContractTxsV2", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetContractTxsV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetContractTxsV2_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetContractTxsV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetBlocks_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetBlocks", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetBlocks")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetBlocks_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetBlocks_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetBlock_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetBlock", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetBlock")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetBlock_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetBlock_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetValidators_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetValidators", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetValidators")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetValidators_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetValidators_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetValidator_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetValidator", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetValidator")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetValidator_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetValidator_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetValidatorUptime_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetValidatorUptime", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetValidatorUptime")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetValidatorUptime_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetValidatorUptime_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetTxs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetTxs", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetTxs")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetTxs_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetTxs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetTxByTxHash_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetTxByTxHash", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetTxByTxHash")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetTxByTxHash_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetTxByTxHash_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetPeggyDepositTxs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetPeggyDepositTxs", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetPeggyDepositTxs")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetPeggyDepositTxs_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetPeggyDepositTxs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetPeggyWithdrawalTxs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetPeggyWithdrawalTxs", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetPeggyWithdrawalTxs")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetPeggyWithdrawalTxs_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetPeggyWithdrawalTxs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetIBCTransferTxs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetIBCTransferTxs", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetIBCTransferTxs")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetIBCTransferTxs_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetIBCTransferTxs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetWasmCodes_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmCodes", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmCodes")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetWasmCodes_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetWasmCodes_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetWasmCodeByID_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmCodeByID", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmCodeByID")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetWasmCodeByID_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetWasmCodeByID_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetWasmContracts_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmContracts", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmContracts")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetWasmContracts_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetWasmContracts_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetWasmContractByAddress_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmContractByAddress", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetWasmContractByAddress")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetWasmContractByAddress_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetWasmContractByAddress_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetCw20Balance_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetCw20Balance", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetCw20Balance")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetCw20Balance_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetCw20Balance_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_Relayers_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/Relayers", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/Relayers")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_Relayers_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_Relayers_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_GetBankTransfers_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/GetBankTransfers", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/GetBankTransfers")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_GetBankTransfers_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_GetBankTransfers_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_StreamTxs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/StreamTxs", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/StreamTxs")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_StreamTxs_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_StreamTxs_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveExplorerRPC_StreamBlocks_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_explorer_rpc.InjectiveExplorerRPC/StreamBlocks", runtime.WithHTTPPathPattern("/injective_explorer_rpc.InjectiveExplorerRPC/StreamBlocks")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveExplorerRPC_StreamBlocks_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveExplorerRPC_StreamBlocks_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -var ( - pattern_InjectiveExplorerRPC_GetAccountTxs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetAccountTxs"}, "")) - - pattern_InjectiveExplorerRPC_GetContractTxs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetContractTxs"}, "")) - - pattern_InjectiveExplorerRPC_GetContractTxsV2_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetContractTxsV2"}, "")) - - pattern_InjectiveExplorerRPC_GetBlocks_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetBlocks"}, "")) - - pattern_InjectiveExplorerRPC_GetBlock_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetBlock"}, "")) - - pattern_InjectiveExplorerRPC_GetValidators_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetValidators"}, "")) - - pattern_InjectiveExplorerRPC_GetValidator_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetValidator"}, "")) - - pattern_InjectiveExplorerRPC_GetValidatorUptime_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetValidatorUptime"}, "")) - - pattern_InjectiveExplorerRPC_GetTxs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetTxs"}, "")) - - pattern_InjectiveExplorerRPC_GetTxByTxHash_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetTxByTxHash"}, "")) - - pattern_InjectiveExplorerRPC_GetPeggyDepositTxs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetPeggyDepositTxs"}, "")) - - pattern_InjectiveExplorerRPC_GetPeggyWithdrawalTxs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetPeggyWithdrawalTxs"}, "")) - - pattern_InjectiveExplorerRPC_GetIBCTransferTxs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetIBCTransferTxs"}, "")) - - pattern_InjectiveExplorerRPC_GetWasmCodes_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetWasmCodes"}, "")) - - pattern_InjectiveExplorerRPC_GetWasmCodeByID_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetWasmCodeByID"}, "")) - - pattern_InjectiveExplorerRPC_GetWasmContracts_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetWasmContracts"}, "")) - - pattern_InjectiveExplorerRPC_GetWasmContractByAddress_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetWasmContractByAddress"}, "")) - - pattern_InjectiveExplorerRPC_GetCw20Balance_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetCw20Balance"}, "")) - - pattern_InjectiveExplorerRPC_Relayers_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "Relayers"}, "")) - - pattern_InjectiveExplorerRPC_GetBankTransfers_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "GetBankTransfers"}, "")) - - pattern_InjectiveExplorerRPC_StreamTxs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "StreamTxs"}, "")) - - pattern_InjectiveExplorerRPC_StreamBlocks_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_explorer_rpc.InjectiveExplorerRPC", "StreamBlocks"}, "")) -) - -var ( - forward_InjectiveExplorerRPC_GetAccountTxs_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetContractTxs_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetContractTxsV2_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetBlocks_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetBlock_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetValidators_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetValidator_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetValidatorUptime_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetTxs_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetTxByTxHash_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetPeggyDepositTxs_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetPeggyWithdrawalTxs_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetIBCTransferTxs_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetWasmCodes_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetWasmCodeByID_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetWasmContracts_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetWasmContractByAddress_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetCw20Balance_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_Relayers_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_GetBankTransfers_0 = runtime.ForwardResponseMessage - - forward_InjectiveExplorerRPC_StreamTxs_0 = runtime.ForwardResponseStream - - forward_InjectiveExplorerRPC_StreamBlocks_0 = runtime.ForwardResponseStream -) diff --git a/exchange/explorer_rpc/pb/injective_explorer_rpc.proto b/exchange/explorer_rpc/pb/injective_explorer_rpc.proto deleted file mode 100644 index 077fc0bc..00000000 --- a/exchange/explorer_rpc/pb/injective_explorer_rpc.proto +++ /dev/null @@ -1,870 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// InjectiveExplorerRPC protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -syntax = "proto3"; - -package injective_explorer_rpc; - -option go_package = "/injective_explorer_rpcpb"; - -// ExplorerAPI implements explorer data API for e.g. Blockchain Explorer -service InjectiveExplorerRPC { - // GetAccountTxs returns tranctions involving in an account based upon params. - rpc GetAccountTxs (GetAccountTxsRequest) returns (GetAccountTxsResponse); - // GetContractTxs returns contract-related transactions - rpc GetContractTxs (GetContractTxsRequest) returns (GetContractTxsResponse); - // GetContractTxs returns contract-related transactions - rpc GetContractTxsV2 (GetContractTxsV2Request) returns (GetContractTxsV2Response); - // GetBlocks returns blocks based upon the request params - rpc GetBlocks (GetBlocksRequest) returns (GetBlocksResponse); - // GetBlock returns block based upon the height or hash - rpc GetBlock (GetBlockRequest) returns (GetBlockResponse); - // GetValidators returns validators on the active chain - rpc GetValidators (GetValidatorsRequest) returns (GetValidatorsResponse); - // GetValidator returns validator information on the active chain - rpc GetValidator (GetValidatorRequest) returns (GetValidatorResponse); - // GetValidatorUptime returns validator uptime information on the active chain - rpc GetValidatorUptime (GetValidatorUptimeRequest) returns (GetValidatorUptimeResponse); - // GetTxs returns transactions based upon the request params - rpc GetTxs (GetTxsRequest) returns (GetTxsResponse); - // GetTxByTxHash returns certain transaction information by its tx hash. - rpc GetTxByTxHash (GetTxByTxHashRequest) returns (GetTxByTxHashResponse); - // GetPeggyDepositTxs returns the peggy deposit transactions based upon the -// request params - rpc GetPeggyDepositTxs (GetPeggyDepositTxsRequest) returns (GetPeggyDepositTxsResponse); - // GetPeggyWithdrawalTxs returns the peggy withdrawal transactions based upon -// the request params - rpc GetPeggyWithdrawalTxs (GetPeggyWithdrawalTxsRequest) returns (GetPeggyWithdrawalTxsResponse); - // GetIBCTransferTxs returns the ibc transfer transactions based upon the -// request params - rpc GetIBCTransferTxs (GetIBCTransferTxsRequest) returns (GetIBCTransferTxsResponse); - // GetWasmCodes lists all stored code - rpc GetWasmCodes (GetWasmCodesRequest) returns (GetWasmCodesResponse); - // GetWasmCodeById list cosmwasm code infor by ID - rpc GetWasmCodeByID (GetWasmCodeByIDRequest) returns (GetWasmCodeByIDResponse); - // GetWasmContracts lists all contracts - rpc GetWasmContracts (GetWasmContractsRequest) returns (GetWasmContractsResponse); - // GetWasmContractByAddress list cosmwasm contract info by its address - rpc GetWasmContractByAddress (GetWasmContractByAddressRequest) returns (GetWasmContractByAddressResponse); - // GetCw20Balance lists all cw20 balances of an injective account - rpc GetCw20Balance (GetCw20BalanceRequest) returns (GetCw20BalanceResponse); - // Request relayers infos by marketIDs. If no ids are provided, all market with -// associated relayers are returned - rpc Relayers (RelayersRequest) returns (RelayersResponse); - // GetBankTransfers returns bank transfers. - rpc GetBankTransfers (GetBankTransfersRequest) returns (GetBankTransfersResponse); - // StreamTxs returns transactions based upon the request params - rpc StreamTxs (StreamTxsRequest) returns (stream StreamTxsResponse); - // StreamBlocks returns the latest blocks - rpc StreamBlocks (StreamBlocksRequest) returns (stream StreamBlocksResponse); -} - -message GetAccountTxsRequest { - // Address of account - string address = 1; - // Return transactions before this block number - uint64 before = 2; - // Return transactions after this block number - uint64 after = 3; - sint32 limit = 4; - uint64 skip = 5; - string type = 6; - string module = 7; - sint64 from_number = 8; - sint64 to_number = 9; - // The starting timestamp in UNIX milliseconds that the txs must be equal or -// older than - sint64 start_time = 10; - // The ending timestamp in UNIX milliseconds that the txs must be equal or -// younger than - sint64 end_time = 11; - // The status of the txs to be returned - string status = 12; -} - -message GetAccountTxsResponse { - Paging paging = 1; - repeated TxDetailData data = 2; -} -// Paging defines the structure for required params for handling pagination -message Paging { - // total number of txs saved in database - sint64 total = 1; - // can be either block height or index num - sint32 from = 2; - // can be either block height or index num - sint32 to = 3; - // count entries by subaccount, serving some places on helix - sint64 count_by_subaccount = 4; - // array of tokens to navigate to the next pages - repeated string next = 5; -} -// TxDetailData wraps tx data includes details information -message TxDetailData { - string id = 1; - uint64 block_number = 2; - string block_timestamp = 3; - string hash = 4; - uint32 code = 5; - bytes data = 6; - string info = 8; - sint64 gas_wanted = 9; - sint64 gas_used = 10; - GasFee gas_fee = 11; - string codespace = 12; - repeated Event events = 13; - string tx_type = 14; - bytes messages = 15; - repeated Signature signatures = 16; - string memo = 17; - uint64 tx_number = 18; - // Block timestamp in unix milli - uint64 block_unix_timestamp = 19; - // Transaction log indicating errors - string error_log = 20; - // transaction event logs - bytes logs = 21; - // peggy bridge claim id, non-zero if tx contains MsgDepositClaim - repeated sint64 claim_ids = 22; -} - -message GasFee { - repeated CosmosCoin amount = 1; - uint64 gas_limit = 2; - string payer = 3; - string granter = 4; -} - -message CosmosCoin { - // Coin denominator - string denom = 1; - // Coin amount (big int) - string amount = 2; -} - -message Event { - string type = 1; - map attributes = 2; -} -// Signature wraps tx signature -message Signature { - string pubkey = 1; - string address = 2; - uint64 sequence = 3; - string signature = 4; -} - -message GetContractTxsRequest { - // Address of contract - string address = 1; - sint32 limit = 2; - uint64 skip = 3; - sint64 from_number = 4; - sint64 to_number = 5; -} - -message GetContractTxsResponse { - Paging paging = 1; - repeated TxDetailData data = 2; -} - -message GetContractTxsV2Request { - // Address of contract - string address = 1; - // Height of the block - uint64 height = 2; - // Unix timestamp (UTC) in milliseconds - sint64 from = 3; - // Unix timestamp (UTC) in milliseconds - sint64 to = 4; - sint32 limit = 5; - // Pagination token - string token = 6; -} - -message GetContractTxsV2Response { - repeated string next = 1; - repeated TxDetailData data = 2; -} - -message GetBlocksRequest { - uint64 before = 1; - uint64 after = 2; - sint32 limit = 3; - // Unix timestamp (UTC) in milliseconds - uint64 from = 4; - // Unix timestamp (UTC) in milliseconds - uint64 to = 5; -} - -message GetBlocksResponse { - Paging paging = 1; - repeated BlockInfo data = 2; -} - -message BlockInfo { - uint64 height = 1; - string proposer = 2; - string moniker = 3; - string block_hash = 4; - string parent_hash = 5; - sint64 num_pre_commits = 6; - sint64 num_txs = 7; - repeated TxDataRPC txs = 8; - string timestamp = 9; -} -// TxData wraps tx data -message TxDataRPC { - string id = 1; - uint64 block_number = 2; - string block_timestamp = 3; - string hash = 4; - string codespace = 5; - string messages = 6; - uint64 tx_number = 7; - // Transaction log indicating errors - string error_log = 8; - uint32 code = 9; - // peggy bridge claim id, non-zero if tx contains MsgDepositClaim - repeated sint64 claim_ids = 10; -} - -message GetBlockRequest { - string id = 1; -} - -message GetBlockResponse { - // Status of the response. - string s = 1; - // Error message. - string errmsg = 2; - BlockDetailInfo data = 3; -} - -message BlockDetailInfo { - uint64 height = 1; - string proposer = 2; - string moniker = 3; - string block_hash = 4; - string parent_hash = 5; - sint64 num_pre_commits = 6; - sint64 num_txs = 7; - sint64 total_txs = 8; - repeated TxData txs = 9; - string timestamp = 10; -} -// TxData wraps tx data -message TxData { - string id = 1; - uint64 block_number = 2; - string block_timestamp = 3; - string hash = 4; - string codespace = 5; - bytes messages = 6; - uint64 tx_number = 7; - // Transaction log indicating errors - string error_log = 8; - uint32 code = 9; - bytes tx_msg_types = 10; - // transaction event logs - bytes logs = 11; - // peggy bridge claim id, non-zero if tx contains MsgDepositClaim - repeated sint64 claim_ids = 12; -} - -message GetValidatorsRequest { -} - -message GetValidatorsResponse { - // Status of the response. - string s = 1; - // Error message. - string errmsg = 2; - repeated Validator data = 3; -} -// Validator defines the structure for validator information. -message Validator { - string id = 1; - string moniker = 2; - string operator_address = 3; - string consensus_address = 4; - bool jailed = 5; - sint32 status = 6; - string tokens = 7; - string delegator_shares = 8; - ValidatorDescription description = 9; - sint64 unbonding_height = 10; - string unbonding_time = 11; - string commission_rate = 12; - string commission_max_rate = 13; - string commission_max_change_rate = 14; - string commission_update_time = 15; - uint64 proposed = 16; - uint64 signed = 17; - uint64 missed = 18; - string timestamp = 19; - repeated ValidatorUptime uptimes = 20; - repeated SlashingEvent slashing_events = 21; - // uptime percentage base on latest 10k block - double uptime_percentage = 22; - // URL of the validator logo - string image_url = 23; -} - -message ValidatorDescription { - string moniker = 1; - string identity = 2; - string website = 3; - string security_contact = 4; - string details = 5; - string image_url = 6; -} - -message ValidatorUptime { - uint64 block_number = 1; - string status = 2; -} - -message SlashingEvent { - uint64 block_number = 1; - string block_timestamp = 2; - string address = 3; - uint64 power = 4; - string reason = 5; - string jailed = 6; - uint64 missed_blocks = 7; -} - -message GetValidatorRequest { - string address = 1; -} - -message GetValidatorResponse { - // Status of the response. - string s = 1; - // Error message. - string errmsg = 2; - Validator data = 3; -} - -message GetValidatorUptimeRequest { - string address = 1; -} - -message GetValidatorUptimeResponse { - // Status of the response. - string s = 1; - // Error message. - string errmsg = 2; - repeated ValidatorUptime data = 3; -} - -message GetTxsRequest { - uint64 before = 1; - uint64 after = 2; - sint32 limit = 3; - uint64 skip = 4; - string type = 5; - string module = 6; - sint64 from_number = 7; - sint64 to_number = 8; - // The starting timestamp in UNIX milliseconds that the txs must be equal or -// older than - sint64 start_time = 9; - // The ending timestamp in UNIX milliseconds that the txs must be equal or -// younger than - sint64 end_time = 10; - // The status of the txs to be returned - string status = 11; -} - -message GetTxsResponse { - Paging paging = 1; - repeated TxData data = 2; -} - -message GetTxByTxHashRequest { - string hash = 1; -} - -message GetTxByTxHashResponse { - // Status of the response. - string s = 1; - // Error message. - string errmsg = 2; - TxDetailData data = 3; -} - -message GetPeggyDepositTxsRequest { - // Sender address of deposit request - string sender = 1; - // Address of receiveer upon deposit - string receiver = 2; - sint32 limit = 3; - uint64 skip = 4; -} - -message GetPeggyDepositTxsResponse { - repeated PeggyDepositTx field = 1; -} -// PeggyDepositTx wraps tx data includes peggy deposit tx details information -message PeggyDepositTx { - // Sender address of deposit request - string sender = 1; - // Address of receiveer upon deposit - string receiver = 2; - // The event nonce of WithdrawalClaim event emitted by Ethereum chain upon -// deposit - uint64 event_nonce = 3; - // The block height of WithdrawalClaim event emitted by Ethereum chain upon -// deposit - uint64 event_height = 4; - // Amount of tokens being deposited - string amount = 5; - // Denom of tokens being deposited - string denom = 6; - // orchestratorAddress who created batch request - string orchestrator_address = 7; - string state = 8; - // The claimType will be DepoistClaim for Deposits - sint32 claim_type = 9; - repeated string tx_hashes = 10; - string created_at = 11; - string updated_at = 12; -} - -message GetPeggyWithdrawalTxsRequest { - // Sender address of withdrawal request - string sender = 1; - // Address of receiveer upon withdrawal - string receiver = 2; - sint32 limit = 3; - uint64 skip = 4; -} - -message GetPeggyWithdrawalTxsResponse { - repeated PeggyWithdrawalTx field = 1; -} -// PeggyWithdrawalTx wraps tx data includes peggy withdrawal tx details -// information -message PeggyWithdrawalTx { - // Sender address of withdrawal request - string sender = 1; - // Address of receiveer upon withdrawal - string receiver = 2; - // Amount of tokens being withdrawan - string amount = 3; - // Denom of tokens being withdrawan - string denom = 4; - // The bridge fee paid by sender for withdrawal - string bridge_fee = 5; - // A auto incremented unique ID representing the withdrawal request - uint64 outgoing_tx_id = 6; - // The timestamp after which Batch request will be discarded if not processed -// already - uint64 batch_timeout = 7; - // A auto incremented unique ID representing the Withdrawal Batches - uint64 batch_nonce = 8; - // orchestratorAddress who created batch request - string orchestrator_address = 9; - // The event nonce of WithdrawalClaim event emitted by Ethereum chain upon -// batch withdrawal - uint64 event_nonce = 10; - // The block height of WithdrawalClaim event emitted by Ethereum chain upon -// batch withdrawal - uint64 event_height = 11; - string state = 12; - // The claimType will be WithdrawalClaim for Batch Withdrawals - sint32 claim_type = 13; - repeated string tx_hashes = 14; - string created_at = 15; - string updated_at = 16; -} - -message GetIBCTransferTxsRequest { - string sender = 1; - string receiver = 2; - string src_channel = 3; - string src_port = 4; - string dest_channel = 5; - string dest_port = 6; - sint32 limit = 7; - uint64 skip = 8; -} - -message GetIBCTransferTxsResponse { - repeated IBCTransferTx field = 1; -} -// IBCTransferTx wraps tx data includes ibc transfer tx details information -message IBCTransferTx { - // the sender address - string sender = 1; - // the recipient address on the destination chain - string receiver = 2; - // the port on which the packet will be sent - string source_port = 3; - // the channel by which the packet will be sent - string source_channel = 4; - // identifies the port on the receiving chain - string destination_port = 5; - // identifies the channel end on the receiving chain - string destination_channel = 6; - // transfer amount - string amount = 7; - // transafer denom - string denom = 8; - // Timeout height relative to the current block height. The timeout is disabled -// when set to 0 - string timeout_height = 9; - // Timeout timestamp (in nanoseconds) relative to the current block timestamp - uint64 timeout_timestamp = 10; - // number corresponds to the order of sends and receives, where a Packet with -// an earlier sequence number must be sent and received before a Packet with a -// later sequence number - uint64 packet_sequence = 11; - bytes data_hex = 12; - string state = 13; - // it's injective chain tx hash array - repeated string tx_hashes = 14; - string created_at = 15; - string updated_at = 16; -} - -message GetWasmCodesRequest { - sint32 limit = 1; - sint64 from_number = 2; - sint64 to_number = 3; -} - -message GetWasmCodesResponse { - Paging paging = 1; - repeated WasmCode data = 2; -} -// Detail of cosmwasm stored code -message WasmCode { - // ID of stored wasmcode, sorted in descending order - uint64 code_id = 1; - // Tx hash of store code transaction - string tx_hash = 2; - // Checksum of the cosmwasm code - Checksum checksum = 3; - // Block time when the code is stored, in millisecond - uint64 created_at = 4; - // Contract type of the wasm code - string contract_type = 5; - // version string of the wasm code - string version = 6; - // describe instantiate permission - ContractPermission permission = 7; - // code schema preview - string code_schema = 8; - // code repo preview, may contain schema folder - string code_view = 9; - // count number of contract instantiation from this code - uint64 instantiates = 10; - // creator of this code - string creator = 11; - // monotonic order of the code stored - sint64 code_number = 12; - // id of the proposal that store this code - sint64 proposal_id = 13; -} - -message Checksum { - // Algorithm of hash function - string algorithm = 1; - // Hash if apply algorithm to the cosmwasm bytecode - string hash = 2; -} - -message ContractPermission { - // Access type of instantiation - sint32 access_type = 1; - // Account address - string address = 2; -} - -message GetWasmCodeByIDRequest { - // Code ID of the code - sint64 code_id = 1; -} - -message GetWasmCodeByIDResponse { - // ID of stored wasmcode, sorted in descending order - uint64 code_id = 1; - // Tx hash of store code transaction - string tx_hash = 2; - // Checksum of the cosmwasm code - Checksum checksum = 3; - // Block time when the code is stored, in millisecond - uint64 created_at = 4; - // Contract type of the wasm code - string contract_type = 5; - // version string of the wasm code - string version = 6; - // describe instantiate permission - ContractPermission permission = 7; - // code schema preview - string code_schema = 8; - // code repo preview, may contain schema folder - string code_view = 9; - // count number of contract instantiation from this code - uint64 instantiates = 10; - // creator of this code - string creator = 11; - // monotonic order of the code stored - sint64 code_number = 12; - // id of the proposal that store this code - sint64 proposal_id = 13; -} - -message GetWasmContractsRequest { - sint32 limit = 1; - sint64 code_id = 2; - sint64 from_number = 3; - sint64 to_number = 4; - bool assets_only = 5; - sint64 skip = 6; - // Label of the contract - string label = 7; -} - -message GetWasmContractsResponse { - Paging paging = 1; - repeated WasmContract data = 2; -} -// Detail of cosmwasm instantiated contract -message WasmContract { - // General name of the contract - string label = 1; - // Address of the contract - string address = 2; - // hash of the instantiate transaction - string tx_hash = 3; - // Address of the contract creator - string creator = 4; - // Number of times call to execute contract - uint64 executes = 5; - // Block timestamp that contract was instantiated, in millisecond - uint64 instantiated_at = 6; - // init message when this contract was instantiated - string init_message = 7; - // Block timestamp that contract was called, in millisecond - uint64 last_executed_at = 8; - // Contract funds - repeated ContractFund funds = 9; - // Code id of the contract - uint64 code_id = 10; - // Admin of the contract - string admin = 11; - // Latest migrate message of the contract - string current_migrate_message = 12; - // Monotonic contract number in database - sint64 contract_number = 13; - // Contract version string - string version = 14; - // Contract type - string type = 15; - Cw20Metadata cw20_metadata = 16; - // id of the proposal that instantiate this contract - sint64 proposal_id = 17; -} - -message ContractFund { - // Denominator - string denom = 1; - // Amount of denom - string amount = 2; -} -// General cw20 metadata -message Cw20Metadata { - Cw20TokenInfo token_info = 1; - Cw20MarketingInfo marketing_info = 2; -} -// Token name, symbol, decimal and so on -message Cw20TokenInfo { - // General name of the token - string name = 1; - // Symbol of then token - string symbol = 2; - // Decimal places of token - sint64 decimals = 3; - // Token's total supply - string total_supply = 4; -} -// Marketing info -message Cw20MarketingInfo { - // Project information - string project = 1; - // Token's description - string description = 2; - // logo (url/embedded) - string logo = 3; - // A random field for additional marketing info - bytes marketing = 4; -} - -message GetWasmContractByAddressRequest { - // Contract address - string contract_address = 1; -} - -message GetWasmContractByAddressResponse { - // General name of the contract - string label = 1; - // Address of the contract - string address = 2; - // hash of the instantiate transaction - string tx_hash = 3; - // Address of the contract creator - string creator = 4; - // Number of times call to execute contract - uint64 executes = 5; - // Block timestamp that contract was instantiated, in millisecond - uint64 instantiated_at = 6; - // init message when this contract was instantiated - string init_message = 7; - // Block timestamp that contract was called, in millisecond - uint64 last_executed_at = 8; - // Contract funds - repeated ContractFund funds = 9; - // Code id of the contract - uint64 code_id = 10; - // Admin of the contract - string admin = 11; - // Latest migrate message of the contract - string current_migrate_message = 12; - // Monotonic contract number in database - sint64 contract_number = 13; - // Contract version string - string version = 14; - // Contract type - string type = 15; - Cw20Metadata cw20_metadata = 16; - // id of the proposal that instantiate this contract - sint64 proposal_id = 17; -} - -message GetCw20BalanceRequest { - // address to list balance of - string address = 1; - sint32 limit = 2; -} - -message GetCw20BalanceResponse { - repeated WasmCw20Balance field = 1; -} - -message WasmCw20Balance { - // Address of CW20 contract - string contract_address = 1; - // Account address - string account = 2; - // Account balance - string balance = 3; - // update timestamp in milisecond - sint64 updated_at = 4; - Cw20Metadata cw20_metadata = 5; -} - -message RelayersRequest { - // Specify multiple marketIDs to search. - repeated string market_i_ds = 1; -} - -message RelayersResponse { - repeated RelayerMarkets field = 1; -} - -message RelayerMarkets { - // Market ID of the market - string market_id = 1; - // Relayers list for specified market - repeated Relayer relayers = 2; -} - -message Relayer { - // Relayer identifier - string name = 1; - // Call to action. A link to the relayer - string cta = 2; -} - -message GetBankTransfersRequest { - // Transfer sender address - repeated string senders = 1; - // Transfer recipient address - repeated string recipients = 2; - // Returns transfers with the community pool address as either sender or -// recipient - bool is_community_pool_related = 3; - sint32 limit = 4; - uint64 skip = 5; - // The starting timestamp in UNIX milliseconds that the transfers must be equal -// or older than - sint64 start_time = 6; - // The ending timestamp in UNIX milliseconds that the transfers must be equal -// or younger than - sint64 end_time = 7; - // Transfers where either the sender or the recipient is one of the addresses - repeated string address = 8; - sint32 per_page = 9; - string token = 10; -} - -message GetBankTransfersResponse { - Paging paging = 1; - repeated BankTransfer data = 2; -} -// Bank transfer represents a transfer -message BankTransfer { - string sender = 1; - string recipient = 2; - // Amounts transferred - repeated Coin amounts = 3; - uint64 block_number = 4; - string block_timestamp = 5; -} - -message Coin { - // Denom of the coin - string denom = 1; - string amount = 2; -} - -message StreamTxsRequest { -} - -message StreamTxsResponse { - string id = 1; - uint64 block_number = 2; - string block_timestamp = 3; - string hash = 4; - string codespace = 5; - string messages = 6; - uint64 tx_number = 7; - // Transaction log indicating errors - string error_log = 8; - uint32 code = 9; - // peggy bridge claim id, non-zero if tx contains MsgDepositClaim - repeated sint64 claim_ids = 10; -} - -message StreamBlocksRequest { -} - -message StreamBlocksResponse { - uint64 height = 1; - string proposer = 2; - string moniker = 3; - string block_hash = 4; - string parent_hash = 5; - sint64 num_pre_commits = 6; - sint64 num_txs = 7; - repeated TxDataRPC txs = 8; - string timestamp = 9; -} diff --git a/exchange/health_rpc/pb/goadesign_goagen_health.pb.go b/exchange/health_rpc/pb/goadesign_goagen_health.pb.go index 1a3968ae..6882cdf7 100644 --- a/exchange/health_rpc/pb/goadesign_goagen_health.pb.go +++ b/exchange/health_rpc/pb/goadesign_goagen_health.pb.go @@ -8,7 +8,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 -// protoc v3.19.4 +// protoc v4.24.4 // source: goadesign_goagen_health.proto package api_v1pb @@ -152,6 +152,12 @@ type HealthStatus struct { HoracleHeight int32 `protobuf:"zigzag32,3,opt,name=horacle_height,json=horacleHeight,proto3" json:"horacle_height,omitempty"` // block timestamp from Horacle service. HoracleTimestamp int32 `protobuf:"zigzag32,4,opt,name=horacle_timestamp,json=horacleTimestamp,proto3" json:"horacle_timestamp,omitempty"` + // Migration version of the database. + MigrationLastVersion int32 `protobuf:"zigzag32,5,opt,name=migration_last_version,json=migrationLastVersion,proto3" json:"migration_last_version,omitempty"` + // Block height from event provider service. + EpHeight int32 `protobuf:"zigzag32,6,opt,name=ep_height,json=epHeight,proto3" json:"ep_height,omitempty"` + // Block UNIX timestamp from event provider service. + EpTimestamp int32 `protobuf:"zigzag32,7,opt,name=ep_timestamp,json=epTimestamp,proto3" json:"ep_timestamp,omitempty"` } func (x *HealthStatus) Reset() { @@ -214,6 +220,27 @@ func (x *HealthStatus) GetHoracleTimestamp() int32 { return 0 } +func (x *HealthStatus) GetMigrationLastVersion() int32 { + if x != nil { + return x.MigrationLastVersion + } + return 0 +} + +func (x *HealthStatus) GetEpHeight() int32 { + if x != nil { + return x.EpHeight + } + return 0 +} + +func (x *HealthStatus) GetEpTimestamp() int32 { + if x != nil { + return x.EpTimestamp + } + return 0 +} + var File_goadesign_goagen_health_proto protoreflect.FileDescriptor var file_goadesign_goagen_health_proto_rawDesc = []byte{ @@ -228,7 +255,7 @@ var file_goadesign_goagen_health_proto_rawDesc = []byte{ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xae, 0x01, 0x0a, 0x0c, 0x48, 0x65, 0x61, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xa4, 0x02, 0x0a, 0x0c, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x27, 0x0a, 0x0f, @@ -239,13 +266,20 @@ var file_goadesign_goagen_health_proto_rawDesc = []byte{ 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x68, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, 0x10, 0x68, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x32, 0x4a, 0x0a, 0x06, 0x48, 0x65, 0x61, - 0x6c, 0x74, 0x68, 0x12, 0x40, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x12, 0x18, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x61, 0x70, 0x69, - 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x0b, 0x5a, 0x09, 0x2f, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, - 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x34, 0x0a, 0x16, 0x6d, 0x69, 0x67, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x11, 0x52, 0x14, 0x6d, 0x69, 0x67, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x61, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, + 0x1b, 0x0a, 0x09, 0x65, 0x70, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x11, 0x52, 0x08, 0x65, 0x70, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x21, 0x0a, 0x0c, + 0x65, 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x11, 0x52, 0x0b, 0x65, 0x70, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x32, + 0x4a, 0x0a, 0x06, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x12, 0x40, 0x0a, 0x09, 0x47, 0x65, 0x74, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, + 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x19, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x0b, 0x5a, 0x09, 0x2f, + 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/exchange/health_rpc/pb/goadesign_goagen_health_grpc.pb.go b/exchange/health_rpc/pb/goadesign_goagen_health_grpc.pb.go index 193c66cf..9749a415 100644 --- a/exchange/health_rpc/pb/goadesign_goagen_health_grpc.pb.go +++ b/exchange/health_rpc/pb/goadesign_goagen_health_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.2.0 -// - protoc v3.19.4 +// - protoc v4.24.4 // source: goadesign_goagen_health.proto package api_v1pb diff --git a/exchange/health_rpc/pb/health.pb.gw.go b/exchange/health_rpc/pb/health.pb.gw.go deleted file mode 100644 index e52ca0e3..00000000 --- a/exchange/health_rpc/pb/health.pb.gw.go +++ /dev/null @@ -1,171 +0,0 @@ -// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: health.proto - -/* -Package api_v1pb is a reverse proxy. - -It translates gRPC into RESTful JSON APIs. -*/ -package api_v1pb - -import ( - "context" - "io" - "net/http" - - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" - "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/grpclog" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/proto" -) - -// Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = metadata.Join - -func request_Health_GetStatus_0(ctx context.Context, marshaler runtime.Marshaler, client HealthClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetStatusRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetStatus(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_Health_GetStatus_0(ctx context.Context, marshaler runtime.Marshaler, server HealthServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetStatusRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetStatus(ctx, &protoReq) - return msg, metadata, err - -} - -// RegisterHealthHandlerServer registers the http handlers for service Health to "mux". -// UnaryRPC :call HealthServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterHealthHandlerFromEndpoint instead. -func RegisterHealthHandlerServer(ctx context.Context, mux *runtime.ServeMux, server HealthServer) error { - - mux.Handle("POST", pattern_Health_GetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/api.v1.Health/GetStatus", runtime.WithHTTPPathPattern("/api.v1.Health/GetStatus")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_Health_GetStatus_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_Health_GetStatus_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -// RegisterHealthHandlerFromEndpoint is same as RegisterHealthHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterHealthHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterHealthHandler(ctx, mux, conn) -} - -// RegisterHealthHandler registers the http handlers for service Health to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterHealthHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterHealthHandlerClient(ctx, mux, NewHealthClient(conn)) -} - -// RegisterHealthHandlerClient registers the http handlers for service Health -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "HealthClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "HealthClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "HealthClient" to call the correct interceptors. -func RegisterHealthHandlerClient(ctx context.Context, mux *runtime.ServeMux, client HealthClient) error { - - mux.Handle("POST", pattern_Health_GetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/api.v1.Health/GetStatus", runtime.WithHTTPPathPattern("/api.v1.Health/GetStatus")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_Health_GetStatus_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_Health_GetStatus_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -var ( - pattern_Health_GetStatus_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"api.v1.Health", "GetStatus"}, "")) -) - -var ( - forward_Health_GetStatus_0 = runtime.ForwardResponseMessage -) diff --git a/exchange/health_rpc/pb/health.proto b/exchange/health_rpc/pb/health.proto deleted file mode 100644 index 0d503603..00000000 --- a/exchange/health_rpc/pb/health.proto +++ /dev/null @@ -1,41 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// health protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -syntax = "proto3"; - -package api.v1; - -option go_package = "/api.v1pb"; - -// HealthAPI allows to check if backend data is up-to-date and reliable or not. -service Health { - // Get current backend health status - rpc GetStatus (GetStatusRequest) returns (GetStatusResponse); -} - -message GetStatusRequest { -} - -message GetStatusResponse { - // Status of the response. - string s = 1; - // Error message. - string errmsg = 2; - HealthStatus data = 3; - string status = 4; -} -// Status defines the structure for health information -message HealthStatus { - // Block height from local mongo exchange db. - sint32 local_height = 1; - // block timestamp from local mongo exchange db. - sint32 local_timestamp = 2; - // block height from Horacle service. - sint32 horacle_height = 3; - // block timestamp from Horacle service. - sint32 horacle_timestamp = 4; -} diff --git a/exchange/insurance_rpc/pb/goadesign_goagen_injective_insurance_rpc.pb.go b/exchange/insurance_rpc/pb/goadesign_goagen_injective_insurance_rpc.pb.go index 400542ac..4f0273f6 100644 --- a/exchange/insurance_rpc/pb/goadesign_goagen_injective_insurance_rpc.pb.go +++ b/exchange/insurance_rpc/pb/goadesign_goagen_injective_insurance_rpc.pb.go @@ -8,7 +8,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 -// protoc v3.19.4 +// protoc v4.24.4 // source: goadesign_goagen_injective_insurance_rpc.proto package injective_insurance_rpcpb @@ -137,7 +137,7 @@ type InsuranceFund struct { OracleType string `protobuf:"bytes,10,opt,name=oracle_type,json=oracleType,proto3" json:"oracle_type,omitempty"` // Defines the expiry, if any Expiry int64 `protobuf:"zigzag64,11,opt,name=expiry,proto3" json:"expiry,omitempty"` - // Token metadata for the deposit asset, only for Ethereum-based assets + // Token metadata for the deposit asset DepositTokenMeta *TokenMeta `protobuf:"bytes,12,opt,name=deposit_token_meta,json=depositTokenMeta,proto3" json:"deposit_token_meta,omitempty"` } @@ -264,7 +264,7 @@ type TokenMeta struct { // Token full name Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - // Token Ethereum contract address + // Token contract address (native or not) Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` // Token symbol short name Symbol string `protobuf:"bytes,3,opt,name=symbol,proto3" json:"symbol,omitempty"` diff --git a/exchange/insurance_rpc/pb/goadesign_goagen_injective_insurance_rpc_grpc.pb.go b/exchange/insurance_rpc/pb/goadesign_goagen_injective_insurance_rpc_grpc.pb.go index 5a87cd1a..66379be5 100644 --- a/exchange/insurance_rpc/pb/goadesign_goagen_injective_insurance_rpc_grpc.pb.go +++ b/exchange/insurance_rpc/pb/goadesign_goagen_injective_insurance_rpc_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.2.0 -// - protoc v3.19.4 +// - protoc v4.24.4 // source: goadesign_goagen_injective_insurance_rpc.proto package injective_insurance_rpcpb diff --git a/exchange/insurance_rpc/pb/injective_insurance_rpc.pb.gw.go b/exchange/insurance_rpc/pb/injective_insurance_rpc.pb.gw.go deleted file mode 100644 index eab9eda7..00000000 --- a/exchange/insurance_rpc/pb/injective_insurance_rpc.pb.gw.go +++ /dev/null @@ -1,341 +0,0 @@ -// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: injective_insurance_rpc.proto - -/* -Package injective_insurance_rpcpb is a reverse proxy. - -It translates gRPC into RESTful JSON APIs. -*/ -package injective_insurance_rpcpb - -import ( - "context" - "io" - "net/http" - - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" - "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/grpclog" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/proto" -) - -// Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = metadata.Join - -func request_InjectiveInsuranceRPC_Funds_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveInsuranceRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq FundsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Funds(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveInsuranceRPC_Funds_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveInsuranceRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq FundsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Funds(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveInsuranceRPC_Fund_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveInsuranceRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq FundRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Fund(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveInsuranceRPC_Fund_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveInsuranceRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq FundRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Fund(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveInsuranceRPC_Redemptions_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveInsuranceRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq RedemptionsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Redemptions(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveInsuranceRPC_Redemptions_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveInsuranceRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq RedemptionsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Redemptions(ctx, &protoReq) - return msg, metadata, err - -} - -// RegisterInjectiveInsuranceRPCHandlerServer registers the http handlers for service InjectiveInsuranceRPC to "mux". -// UnaryRPC :call InjectiveInsuranceRPCServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterInjectiveInsuranceRPCHandlerFromEndpoint instead. -func RegisterInjectiveInsuranceRPCHandlerServer(ctx context.Context, mux *runtime.ServeMux, server InjectiveInsuranceRPCServer) error { - - mux.Handle("POST", pattern_InjectiveInsuranceRPC_Funds_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_insurance_rpc.InjectiveInsuranceRPC/Funds", runtime.WithHTTPPathPattern("/injective_insurance_rpc.InjectiveInsuranceRPC/Funds")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveInsuranceRPC_Funds_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveInsuranceRPC_Funds_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveInsuranceRPC_Fund_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_insurance_rpc.InjectiveInsuranceRPC/Fund", runtime.WithHTTPPathPattern("/injective_insurance_rpc.InjectiveInsuranceRPC/Fund")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveInsuranceRPC_Fund_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveInsuranceRPC_Fund_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveInsuranceRPC_Redemptions_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_insurance_rpc.InjectiveInsuranceRPC/Redemptions", runtime.WithHTTPPathPattern("/injective_insurance_rpc.InjectiveInsuranceRPC/Redemptions")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveInsuranceRPC_Redemptions_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveInsuranceRPC_Redemptions_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -// RegisterInjectiveInsuranceRPCHandlerFromEndpoint is same as RegisterInjectiveInsuranceRPCHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterInjectiveInsuranceRPCHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterInjectiveInsuranceRPCHandler(ctx, mux, conn) -} - -// RegisterInjectiveInsuranceRPCHandler registers the http handlers for service InjectiveInsuranceRPC to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterInjectiveInsuranceRPCHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterInjectiveInsuranceRPCHandlerClient(ctx, mux, NewInjectiveInsuranceRPCClient(conn)) -} - -// RegisterInjectiveInsuranceRPCHandlerClient registers the http handlers for service InjectiveInsuranceRPC -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "InjectiveInsuranceRPCClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "InjectiveInsuranceRPCClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "InjectiveInsuranceRPCClient" to call the correct interceptors. -func RegisterInjectiveInsuranceRPCHandlerClient(ctx context.Context, mux *runtime.ServeMux, client InjectiveInsuranceRPCClient) error { - - mux.Handle("POST", pattern_InjectiveInsuranceRPC_Funds_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_insurance_rpc.InjectiveInsuranceRPC/Funds", runtime.WithHTTPPathPattern("/injective_insurance_rpc.InjectiveInsuranceRPC/Funds")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveInsuranceRPC_Funds_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveInsuranceRPC_Funds_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveInsuranceRPC_Fund_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_insurance_rpc.InjectiveInsuranceRPC/Fund", runtime.WithHTTPPathPattern("/injective_insurance_rpc.InjectiveInsuranceRPC/Fund")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveInsuranceRPC_Fund_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveInsuranceRPC_Fund_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveInsuranceRPC_Redemptions_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_insurance_rpc.InjectiveInsuranceRPC/Redemptions", runtime.WithHTTPPathPattern("/injective_insurance_rpc.InjectiveInsuranceRPC/Redemptions")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveInsuranceRPC_Redemptions_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveInsuranceRPC_Redemptions_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -var ( - pattern_InjectiveInsuranceRPC_Funds_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_insurance_rpc.InjectiveInsuranceRPC", "Funds"}, "")) - - pattern_InjectiveInsuranceRPC_Fund_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_insurance_rpc.InjectiveInsuranceRPC", "Fund"}, "")) - - pattern_InjectiveInsuranceRPC_Redemptions_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_insurance_rpc.InjectiveInsuranceRPC", "Redemptions"}, "")) -) - -var ( - forward_InjectiveInsuranceRPC_Funds_0 = runtime.ForwardResponseMessage - - forward_InjectiveInsuranceRPC_Fund_0 = runtime.ForwardResponseMessage - - forward_InjectiveInsuranceRPC_Redemptions_0 = runtime.ForwardResponseMessage -) diff --git a/exchange/insurance_rpc/pb/injective_insurance_rpc.proto b/exchange/insurance_rpc/pb/injective_insurance_rpc.proto deleted file mode 100644 index b670ddea..00000000 --- a/exchange/insurance_rpc/pb/injective_insurance_rpc.proto +++ /dev/null @@ -1,115 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// InjectiveInsuranceRPC protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -syntax = "proto3"; - -package injective_insurance_rpc; - -option go_package = "/injective_insurance_rpcpb"; - -// InjectiveInsuranceRPC defines gRPC API of Insurance provider. -service InjectiveInsuranceRPC { - // Funds lists all insurance funds. - rpc Funds (FundsRequest) returns (FundsResponse); - // Funds returns an insurance fund for a given insurance fund token denom. - rpc Fund (FundRequest) returns (FundResponse); - // PendingRedemptions lists all pending redemptions according to a filter - rpc Redemptions (RedemptionsRequest) returns (RedemptionsResponse); -} - -message FundsRequest { -} - -message FundsResponse { - repeated InsuranceFund funds = 1; -} - -message InsuranceFund { - // Ticker of the derivative market. - string market_ticker = 1; - // Derivative Market ID - string market_id = 2; - // Coin denom used for the underwriting of the insurance fund. - string deposit_denom = 3; - // Pool token denom - string pool_token_denom = 4; - // Redemption notice period duration in seconds. - sint64 redemption_notice_period_duration = 5; - string balance = 6; - string total_share = 7; - // Oracle base currency - string oracle_base = 8; - // Oracle quote currency - string oracle_quote = 9; - // Oracle Type - string oracle_type = 10; - // Defines the expiry, if any - sint64 expiry = 11; - // Token metadata for the deposit asset, only for Ethereum-based assets - TokenMeta deposit_token_meta = 12; -} - -message TokenMeta { - // Token full name - string name = 1; - // Token Ethereum contract address - string address = 2; - // Token symbol short name - string symbol = 3; - // URL to the logo image - string logo = 4; - // Token decimals - sint32 decimals = 5; - // Token metadata fetched timestamp in UNIX millis. - sint64 updated_at = 6; -} - -message FundRequest { - // denom of insurance fund - string denom = 1; -} - -message FundResponse { - // The insurance fund corresponding to the provided token denom - InsuranceFund fund = 1; -} - -message RedemptionsRequest { - // Account address of the redemption owner - string redeemer = 1; - // Denom of the insurance pool token. - string redemption_denom = 2; - // Status of the redemption. Either pending or disbursed. - string status = 3; -} - -message RedemptionsResponse { - repeated RedemptionSchedule redemption_schedules = 1; -} - -message RedemptionSchedule { - // Redemption ID. - uint64 redemption_id = 1; - // Status of the redemption. Either pending or disbursed. - string status = 2; - // Account address of the redemption owner - string redeemer = 3; - // Claimable redemption time in seconds - sint64 claimable_redemption_time = 4; - // Amount of pool tokens being redeemed. - string redemption_amount = 5; - // Pool token denom being redeemed. - string redemption_denom = 6; - // Redemption request time in unix milliseconds. - sint64 requested_at = 7; - // Amount of quote tokens disbursed - string disbursed_amount = 8; - // Denom of the quote tokens disbursed - string disbursed_denom = 9; - // Redemption disbursement time in unix milliseconds. - sint64 disbursed_at = 10; -} diff --git a/exchange/meta_rpc/pb/goadesign_goagen_injective_meta_rpc.pb.go b/exchange/meta_rpc/pb/goadesign_goagen_injective_meta_rpc.pb.go index e6f93ea1..57db5f1a 100644 --- a/exchange/meta_rpc/pb/goadesign_goagen_injective_meta_rpc.pb.go +++ b/exchange/meta_rpc/pb/goadesign_goagen_injective_meta_rpc.pb.go @@ -8,7 +8,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 -// protoc v3.19.4 +// protoc v4.24.4 // source: goadesign_goagen_injective_meta_rpc.proto package injective_meta_rpcpb diff --git a/exchange/meta_rpc/pb/goadesign_goagen_injective_meta_rpc_grpc.pb.go b/exchange/meta_rpc/pb/goadesign_goagen_injective_meta_rpc_grpc.pb.go index 3266ca1a..10da6d73 100644 --- a/exchange/meta_rpc/pb/goadesign_goagen_injective_meta_rpc_grpc.pb.go +++ b/exchange/meta_rpc/pb/goadesign_goagen_injective_meta_rpc_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.2.0 -// - protoc v3.19.4 +// - protoc v4.24.4 // source: goadesign_goagen_injective_meta_rpc.proto package injective_meta_rpcpb diff --git a/exchange/meta_rpc/pb/injective_meta_rpc.pb.gw.go b/exchange/meta_rpc/pb/injective_meta_rpc.pb.gw.go deleted file mode 100644 index 00df0503..00000000 --- a/exchange/meta_rpc/pb/injective_meta_rpc.pb.gw.go +++ /dev/null @@ -1,484 +0,0 @@ -// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: injective_meta_rpc.proto - -/* -Package injective_meta_rpcpb is a reverse proxy. - -It translates gRPC into RESTful JSON APIs. -*/ -package injective_meta_rpcpb - -import ( - "context" - "io" - "net/http" - - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" - "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/grpclog" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/proto" -) - -// Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = metadata.Join - -func request_InjectiveMetaRPC_Ping_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveMetaRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PingRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Ping(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveMetaRPC_Ping_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveMetaRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PingRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Ping(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveMetaRPC_Version_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveMetaRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq VersionRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Version(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveMetaRPC_Version_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveMetaRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq VersionRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Version(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveMetaRPC_Info_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveMetaRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq InfoRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Info(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveMetaRPC_Info_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveMetaRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq InfoRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Info(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveMetaRPC_StreamKeepalive_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveMetaRPCClient, req *http.Request, pathParams map[string]string) (InjectiveMetaRPC_StreamKeepaliveClient, runtime.ServerMetadata, error) { - var protoReq StreamKeepaliveRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamKeepalive(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveMetaRPC_TokenMetadata_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveMetaRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq TokenMetadataRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.TokenMetadata(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveMetaRPC_TokenMetadata_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveMetaRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq TokenMetadataRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.TokenMetadata(ctx, &protoReq) - return msg, metadata, err - -} - -// RegisterInjectiveMetaRPCHandlerServer registers the http handlers for service InjectiveMetaRPC to "mux". -// UnaryRPC :call InjectiveMetaRPCServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterInjectiveMetaRPCHandlerFromEndpoint instead. -func RegisterInjectiveMetaRPCHandlerServer(ctx context.Context, mux *runtime.ServeMux, server InjectiveMetaRPCServer) error { - - mux.Handle("POST", pattern_InjectiveMetaRPC_Ping_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_meta_rpc.InjectiveMetaRPC/Ping", runtime.WithHTTPPathPattern("/injective_meta_rpc.InjectiveMetaRPC/Ping")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveMetaRPC_Ping_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveMetaRPC_Ping_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveMetaRPC_Version_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_meta_rpc.InjectiveMetaRPC/Version", runtime.WithHTTPPathPattern("/injective_meta_rpc.InjectiveMetaRPC/Version")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveMetaRPC_Version_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveMetaRPC_Version_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveMetaRPC_Info_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_meta_rpc.InjectiveMetaRPC/Info", runtime.WithHTTPPathPattern("/injective_meta_rpc.InjectiveMetaRPC/Info")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveMetaRPC_Info_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveMetaRPC_Info_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveMetaRPC_StreamKeepalive_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveMetaRPC_TokenMetadata_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_meta_rpc.InjectiveMetaRPC/TokenMetadata", runtime.WithHTTPPathPattern("/injective_meta_rpc.InjectiveMetaRPC/TokenMetadata")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveMetaRPC_TokenMetadata_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveMetaRPC_TokenMetadata_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -// RegisterInjectiveMetaRPCHandlerFromEndpoint is same as RegisterInjectiveMetaRPCHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterInjectiveMetaRPCHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterInjectiveMetaRPCHandler(ctx, mux, conn) -} - -// RegisterInjectiveMetaRPCHandler registers the http handlers for service InjectiveMetaRPC to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterInjectiveMetaRPCHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterInjectiveMetaRPCHandlerClient(ctx, mux, NewInjectiveMetaRPCClient(conn)) -} - -// RegisterInjectiveMetaRPCHandlerClient registers the http handlers for service InjectiveMetaRPC -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "InjectiveMetaRPCClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "InjectiveMetaRPCClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "InjectiveMetaRPCClient" to call the correct interceptors. -func RegisterInjectiveMetaRPCHandlerClient(ctx context.Context, mux *runtime.ServeMux, client InjectiveMetaRPCClient) error { - - mux.Handle("POST", pattern_InjectiveMetaRPC_Ping_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_meta_rpc.InjectiveMetaRPC/Ping", runtime.WithHTTPPathPattern("/injective_meta_rpc.InjectiveMetaRPC/Ping")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveMetaRPC_Ping_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveMetaRPC_Ping_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveMetaRPC_Version_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_meta_rpc.InjectiveMetaRPC/Version", runtime.WithHTTPPathPattern("/injective_meta_rpc.InjectiveMetaRPC/Version")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveMetaRPC_Version_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveMetaRPC_Version_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveMetaRPC_Info_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_meta_rpc.InjectiveMetaRPC/Info", runtime.WithHTTPPathPattern("/injective_meta_rpc.InjectiveMetaRPC/Info")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveMetaRPC_Info_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveMetaRPC_Info_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveMetaRPC_StreamKeepalive_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_meta_rpc.InjectiveMetaRPC/StreamKeepalive", runtime.WithHTTPPathPattern("/injective_meta_rpc.InjectiveMetaRPC/StreamKeepalive")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveMetaRPC_StreamKeepalive_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveMetaRPC_StreamKeepalive_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveMetaRPC_TokenMetadata_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_meta_rpc.InjectiveMetaRPC/TokenMetadata", runtime.WithHTTPPathPattern("/injective_meta_rpc.InjectiveMetaRPC/TokenMetadata")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveMetaRPC_TokenMetadata_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveMetaRPC_TokenMetadata_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -var ( - pattern_InjectiveMetaRPC_Ping_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_meta_rpc.InjectiveMetaRPC", "Ping"}, "")) - - pattern_InjectiveMetaRPC_Version_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_meta_rpc.InjectiveMetaRPC", "Version"}, "")) - - pattern_InjectiveMetaRPC_Info_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_meta_rpc.InjectiveMetaRPC", "Info"}, "")) - - pattern_InjectiveMetaRPC_StreamKeepalive_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_meta_rpc.InjectiveMetaRPC", "StreamKeepalive"}, "")) - - pattern_InjectiveMetaRPC_TokenMetadata_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_meta_rpc.InjectiveMetaRPC", "TokenMetadata"}, "")) -) - -var ( - forward_InjectiveMetaRPC_Ping_0 = runtime.ForwardResponseMessage - - forward_InjectiveMetaRPC_Version_0 = runtime.ForwardResponseMessage - - forward_InjectiveMetaRPC_Info_0 = runtime.ForwardResponseMessage - - forward_InjectiveMetaRPC_StreamKeepalive_0 = runtime.ForwardResponseStream - - forward_InjectiveMetaRPC_TokenMetadata_0 = runtime.ForwardResponseMessage -) diff --git a/exchange/meta_rpc/pb/injective_meta_rpc.proto b/exchange/meta_rpc/pb/injective_meta_rpc.proto deleted file mode 100644 index 87f2e718..00000000 --- a/exchange/meta_rpc/pb/injective_meta_rpc.proto +++ /dev/null @@ -1,99 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// InjectiveMetaRPC protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -syntax = "proto3"; - -package injective_meta_rpc; - -option go_package = "/injective_meta_rpcpb"; - -// InjectiveMetaRPC is a special API subset to get info about server. -service InjectiveMetaRPC { - // Endpoint for checking server health. - rpc Ping (PingRequest) returns (PingResponse); - // Returns injective-exchange version. - rpc Version (VersionRequest) returns (VersionResponse); - // Gets connection info - rpc Info (InfoRequest) returns (InfoResponse); - // Stream keepalive, if server exits, a shutdown event will be sent over this -// channel. - rpc StreamKeepalive (StreamKeepaliveRequest) returns (stream StreamKeepaliveResponse); - // Get tokens metadata. Can be filtered by denom - rpc TokenMetadata (TokenMetadataRequest) returns (TokenMetadataResponse); -} - -message PingRequest { -} - -message PingResponse { -} - -message VersionRequest { -} - -message VersionResponse { - // injective-exchange code version. - string version = 1; - // Additional build meta info. - map build = 2; -} - -message InfoRequest { - // Provide current system UNIX timestamp in millis - sint64 timestamp = 1; -} - -message InfoResponse { - // The original timestamp value in millis. - sint64 timestamp = 1; - // UNIX time on the server in millis. - sint64 server_time = 2; - // injective-exchange code version. - string version = 3; - // Additional build meta info. - map build = 4; - // Server's location region - string region = 5; -} - -message StreamKeepaliveRequest { -} - -message StreamKeepaliveResponse { - // Server event - string event = 1; - // New conection endpoint for the gRPC API - string new_endpoint = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message TokenMetadataRequest { - repeated string denoms = 1; -} - -message TokenMetadataResponse { - // tokens and their metadata list - repeated TokenMetadataElement tokens = 1; -} - -message TokenMetadataElement { - // Token's Ethereum address, not all token have this information - string ethereum_address = 1; - // Token's CoinGecko id for price references - string coingecko_id = 2; - // Token's denom on injective chain - string denom = 3; - // Token name - string name = 4; - // Token symbol - string symbol = 5; - // Number of decimal places used to represent the token's smallest unit - sint32 decimals = 6; - // Token logo URL - string logo = 7; -} diff --git a/exchange/oracle_rpc/pb/goadesign_goagen_injective_oracle_rpc.pb.go b/exchange/oracle_rpc/pb/goadesign_goagen_injective_oracle_rpc.pb.go index 3308dfee..a7f3e411 100644 --- a/exchange/oracle_rpc/pb/goadesign_goagen_injective_oracle_rpc.pb.go +++ b/exchange/oracle_rpc/pb/goadesign_goagen_injective_oracle_rpc.pb.go @@ -8,7 +8,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 -// protoc v3.19.4 +// protoc v4.24.4 // source: goadesign_goagen_injective_oracle_rpc.proto package injective_oracle_rpcpb diff --git a/exchange/oracle_rpc/pb/goadesign_goagen_injective_oracle_rpc_grpc.pb.go b/exchange/oracle_rpc/pb/goadesign_goagen_injective_oracle_rpc_grpc.pb.go index 4c24eee8..ccbb00b4 100644 --- a/exchange/oracle_rpc/pb/goadesign_goagen_injective_oracle_rpc_grpc.pb.go +++ b/exchange/oracle_rpc/pb/goadesign_goagen_injective_oracle_rpc_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.2.0 -// - protoc v3.19.4 +// - protoc v4.24.4 // source: goadesign_goagen_injective_oracle_rpc.proto package injective_oracle_rpcpb diff --git a/exchange/oracle_rpc/pb/injective_oracle_rpc.pb.gw.go b/exchange/oracle_rpc/pb/injective_oracle_rpc.pb.gw.go deleted file mode 100644 index 6880d0ca..00000000 --- a/exchange/oracle_rpc/pb/injective_oracle_rpc.pb.gw.go +++ /dev/null @@ -1,372 +0,0 @@ -// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: injective_oracle_rpc.proto - -/* -Package injective_oracle_rpcpb is a reverse proxy. - -It translates gRPC into RESTful JSON APIs. -*/ -package injective_oracle_rpcpb - -import ( - "context" - "io" - "net/http" - - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" - "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/grpclog" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/proto" -) - -// Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = metadata.Join - -func request_InjectiveOracleRPC_OracleList_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveOracleRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OracleListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.OracleList(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveOracleRPC_OracleList_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveOracleRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OracleListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.OracleList(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveOracleRPC_Price_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveOracleRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PriceRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Price(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveOracleRPC_Price_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveOracleRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PriceRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Price(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveOracleRPC_StreamPrices_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveOracleRPCClient, req *http.Request, pathParams map[string]string) (InjectiveOracleRPC_StreamPricesClient, runtime.ServerMetadata, error) { - var protoReq StreamPricesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamPrices(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveOracleRPC_StreamPricesByMarkets_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveOracleRPCClient, req *http.Request, pathParams map[string]string) (InjectiveOracleRPC_StreamPricesByMarketsClient, runtime.ServerMetadata, error) { - var protoReq StreamPricesByMarketsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamPricesByMarkets(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -// RegisterInjectiveOracleRPCHandlerServer registers the http handlers for service InjectiveOracleRPC to "mux". -// UnaryRPC :call InjectiveOracleRPCServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterInjectiveOracleRPCHandlerFromEndpoint instead. -func RegisterInjectiveOracleRPCHandlerServer(ctx context.Context, mux *runtime.ServeMux, server InjectiveOracleRPCServer) error { - - mux.Handle("POST", pattern_InjectiveOracleRPC_OracleList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_oracle_rpc.InjectiveOracleRPC/OracleList", runtime.WithHTTPPathPattern("/injective_oracle_rpc.InjectiveOracleRPC/OracleList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveOracleRPC_OracleList_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveOracleRPC_OracleList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveOracleRPC_Price_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_oracle_rpc.InjectiveOracleRPC/Price", runtime.WithHTTPPathPattern("/injective_oracle_rpc.InjectiveOracleRPC/Price")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveOracleRPC_Price_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveOracleRPC_Price_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveOracleRPC_StreamPrices_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveOracleRPC_StreamPricesByMarkets_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - return nil -} - -// RegisterInjectiveOracleRPCHandlerFromEndpoint is same as RegisterInjectiveOracleRPCHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterInjectiveOracleRPCHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterInjectiveOracleRPCHandler(ctx, mux, conn) -} - -// RegisterInjectiveOracleRPCHandler registers the http handlers for service InjectiveOracleRPC to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterInjectiveOracleRPCHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterInjectiveOracleRPCHandlerClient(ctx, mux, NewInjectiveOracleRPCClient(conn)) -} - -// RegisterInjectiveOracleRPCHandlerClient registers the http handlers for service InjectiveOracleRPC -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "InjectiveOracleRPCClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "InjectiveOracleRPCClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "InjectiveOracleRPCClient" to call the correct interceptors. -func RegisterInjectiveOracleRPCHandlerClient(ctx context.Context, mux *runtime.ServeMux, client InjectiveOracleRPCClient) error { - - mux.Handle("POST", pattern_InjectiveOracleRPC_OracleList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_oracle_rpc.InjectiveOracleRPC/OracleList", runtime.WithHTTPPathPattern("/injective_oracle_rpc.InjectiveOracleRPC/OracleList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveOracleRPC_OracleList_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveOracleRPC_OracleList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveOracleRPC_Price_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_oracle_rpc.InjectiveOracleRPC/Price", runtime.WithHTTPPathPattern("/injective_oracle_rpc.InjectiveOracleRPC/Price")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveOracleRPC_Price_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveOracleRPC_Price_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveOracleRPC_StreamPrices_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_oracle_rpc.InjectiveOracleRPC/StreamPrices", runtime.WithHTTPPathPattern("/injective_oracle_rpc.InjectiveOracleRPC/StreamPrices")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveOracleRPC_StreamPrices_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveOracleRPC_StreamPrices_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveOracleRPC_StreamPricesByMarkets_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_oracle_rpc.InjectiveOracleRPC/StreamPricesByMarkets", runtime.WithHTTPPathPattern("/injective_oracle_rpc.InjectiveOracleRPC/StreamPricesByMarkets")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveOracleRPC_StreamPricesByMarkets_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveOracleRPC_StreamPricesByMarkets_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -var ( - pattern_InjectiveOracleRPC_OracleList_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_oracle_rpc.InjectiveOracleRPC", "OracleList"}, "")) - - pattern_InjectiveOracleRPC_Price_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_oracle_rpc.InjectiveOracleRPC", "Price"}, "")) - - pattern_InjectiveOracleRPC_StreamPrices_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_oracle_rpc.InjectiveOracleRPC", "StreamPrices"}, "")) - - pattern_InjectiveOracleRPC_StreamPricesByMarkets_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_oracle_rpc.InjectiveOracleRPC", "StreamPricesByMarkets"}, "")) -) - -var ( - forward_InjectiveOracleRPC_OracleList_0 = runtime.ForwardResponseMessage - - forward_InjectiveOracleRPC_Price_0 = runtime.ForwardResponseMessage - - forward_InjectiveOracleRPC_StreamPrices_0 = runtime.ForwardResponseStream - - forward_InjectiveOracleRPC_StreamPricesByMarkets_0 = runtime.ForwardResponseStream -) diff --git a/exchange/oracle_rpc/pb/injective_oracle_rpc.proto b/exchange/oracle_rpc/pb/injective_oracle_rpc.proto deleted file mode 100644 index 7185b66e..00000000 --- a/exchange/oracle_rpc/pb/injective_oracle_rpc.proto +++ /dev/null @@ -1,91 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// InjectiveOracleRPC protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -syntax = "proto3"; - -package injective_oracle_rpc; - -option go_package = "/injective_oracle_rpcpb"; - -// InjectiveOracleRPC defines gRPC API of Exchange Oracle provider. -service InjectiveOracleRPC { - // List all oracles - rpc OracleList (OracleListRequest) returns (OracleListResponse); - // Gets the price of the oracle - rpc Price (PriceRequest) returns (PriceResponse); - // StreamPrices streams new price changes for a specified oracle. If no oracles -// are provided, all price changes are streamed. - rpc StreamPrices (StreamPricesRequest) returns (stream StreamPricesResponse); - // StreamPrices streams new price changes markets - rpc StreamPricesByMarkets (StreamPricesByMarketsRequest) returns (stream StreamPricesByMarketsResponse); -} - -message OracleListRequest { -} - -message OracleListResponse { - repeated Oracle oracles = 1; -} - -message Oracle { - // The symbol of the oracle asset. - string symbol = 1; - // Oracle base currency - string base_symbol = 2; - // Oracle quote currency - string quote_symbol = 3; - // Oracle Type - string oracle_type = 4; - // The price of the oracle asset - string price = 5; -} - -message PriceRequest { - // Oracle base currency - string base_symbol = 1; - // Oracle quote currency - string quote_symbol = 2; - // Oracle Type - string oracle_type = 3; - // OracleScaleFactor - uint32 oracle_scale_factor = 4; -} - -message PriceResponse { - // The price of the oracle asset - string price = 1; -} - -message StreamPricesRequest { - // Oracle base currency - string base_symbol = 1; - // Oracle quote currency - string quote_symbol = 2; - // Oracle Type - string oracle_type = 3; -} - -message StreamPricesResponse { - // The price of the oracle asset - string price = 1; - // Operation timestamp in UNIX millis. - sint64 timestamp = 2; -} - -message StreamPricesByMarketsRequest { - // marketIDs to stream price for, empty to listen for all prices - repeated string market_ids = 1; -} - -message StreamPricesByMarketsResponse { - // The price of the oracle asset - string price = 1; - // Operation timestamp in UNIX millis. - sint64 timestamp = 2; - // marketID that the price has been updated - string market_id = 3; -} diff --git a/exchange/portfolio_rpc/pb/goadesign_goagen_injective_portfolio_rpc.pb.go b/exchange/portfolio_rpc/pb/goadesign_goagen_injective_portfolio_rpc.pb.go index 4a6d0331..596096f2 100644 --- a/exchange/portfolio_rpc/pb/goadesign_goagen_injective_portfolio_rpc.pb.go +++ b/exchange/portfolio_rpc/pb/goadesign_goagen_injective_portfolio_rpc.pb.go @@ -8,7 +8,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 -// protoc v3.19.4 +// protoc v4.24.4 // source: goadesign_goagen_injective_portfolio_rpc.proto package injective_portfolio_rpcpb diff --git a/exchange/portfolio_rpc/pb/goadesign_goagen_injective_portfolio_rpc_grpc.pb.go b/exchange/portfolio_rpc/pb/goadesign_goagen_injective_portfolio_rpc_grpc.pb.go index 86b88e4d..383bff17 100644 --- a/exchange/portfolio_rpc/pb/goadesign_goagen_injective_portfolio_rpc_grpc.pb.go +++ b/exchange/portfolio_rpc/pb/goadesign_goagen_injective_portfolio_rpc_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.2.0 -// - protoc v3.19.4 +// - protoc v4.24.4 // source: goadesign_goagen_injective_portfolio_rpc.proto package injective_portfolio_rpcpb diff --git a/exchange/portfolio_rpc/pb/injective_portfolio_rpc.pb.gw.go b/exchange/portfolio_rpc/pb/injective_portfolio_rpc.pb.gw.go deleted file mode 100644 index 4277c8ee..00000000 --- a/exchange/portfolio_rpc/pb/injective_portfolio_rpc.pb.gw.go +++ /dev/null @@ -1,399 +0,0 @@ -// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: injective_portfolio_rpc.proto - -/* -Package injective_portfolio_rpcpb is a reverse proxy. - -It translates gRPC into RESTful JSON APIs. -*/ -package injective_portfolio_rpcpb - -import ( - "context" - "io" - "net/http" - - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" - "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/grpclog" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/proto" -) - -// Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = metadata.Join - -func request_InjectivePortfolioRPC_TokenHolders_0(ctx context.Context, marshaler runtime.Marshaler, client InjectivePortfolioRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq TokenHoldersRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.TokenHolders(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectivePortfolioRPC_TokenHolders_0(ctx context.Context, marshaler runtime.Marshaler, server InjectivePortfolioRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq TokenHoldersRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.TokenHolders(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectivePortfolioRPC_AccountPortfolio_0(ctx context.Context, marshaler runtime.Marshaler, client InjectivePortfolioRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AccountPortfolioRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.AccountPortfolio(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectivePortfolioRPC_AccountPortfolio_0(ctx context.Context, marshaler runtime.Marshaler, server InjectivePortfolioRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AccountPortfolioRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.AccountPortfolio(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectivePortfolioRPC_AccountPortfolioBalances_0(ctx context.Context, marshaler runtime.Marshaler, client InjectivePortfolioRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AccountPortfolioBalancesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.AccountPortfolioBalances(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectivePortfolioRPC_AccountPortfolioBalances_0(ctx context.Context, marshaler runtime.Marshaler, server InjectivePortfolioRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AccountPortfolioBalancesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.AccountPortfolioBalances(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectivePortfolioRPC_StreamAccountPortfolio_0(ctx context.Context, marshaler runtime.Marshaler, client InjectivePortfolioRPCClient, req *http.Request, pathParams map[string]string) (InjectivePortfolioRPC_StreamAccountPortfolioClient, runtime.ServerMetadata, error) { - var protoReq StreamAccountPortfolioRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamAccountPortfolio(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -// RegisterInjectivePortfolioRPCHandlerServer registers the http handlers for service InjectivePortfolioRPC to "mux". -// UnaryRPC :call InjectivePortfolioRPCServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterInjectivePortfolioRPCHandlerFromEndpoint instead. -func RegisterInjectivePortfolioRPCHandlerServer(ctx context.Context, mux *runtime.ServeMux, server InjectivePortfolioRPCServer) error { - - mux.Handle("POST", pattern_InjectivePortfolioRPC_TokenHolders_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_portfolio_rpc.InjectivePortfolioRPC/TokenHolders", runtime.WithHTTPPathPattern("/injective_portfolio_rpc.InjectivePortfolioRPC/TokenHolders")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectivePortfolioRPC_TokenHolders_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectivePortfolioRPC_TokenHolders_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectivePortfolioRPC_AccountPortfolio_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_portfolio_rpc.InjectivePortfolioRPC/AccountPortfolio", runtime.WithHTTPPathPattern("/injective_portfolio_rpc.InjectivePortfolioRPC/AccountPortfolio")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectivePortfolioRPC_AccountPortfolio_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectivePortfolioRPC_AccountPortfolio_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectivePortfolioRPC_AccountPortfolioBalances_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_portfolio_rpc.InjectivePortfolioRPC/AccountPortfolioBalances", runtime.WithHTTPPathPattern("/injective_portfolio_rpc.InjectivePortfolioRPC/AccountPortfolioBalances")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectivePortfolioRPC_AccountPortfolioBalances_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectivePortfolioRPC_AccountPortfolioBalances_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectivePortfolioRPC_StreamAccountPortfolio_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - return nil -} - -// RegisterInjectivePortfolioRPCHandlerFromEndpoint is same as RegisterInjectivePortfolioRPCHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterInjectivePortfolioRPCHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterInjectivePortfolioRPCHandler(ctx, mux, conn) -} - -// RegisterInjectivePortfolioRPCHandler registers the http handlers for service InjectivePortfolioRPC to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterInjectivePortfolioRPCHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterInjectivePortfolioRPCHandlerClient(ctx, mux, NewInjectivePortfolioRPCClient(conn)) -} - -// RegisterInjectivePortfolioRPCHandlerClient registers the http handlers for service InjectivePortfolioRPC -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "InjectivePortfolioRPCClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "InjectivePortfolioRPCClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "InjectivePortfolioRPCClient" to call the correct interceptors. -func RegisterInjectivePortfolioRPCHandlerClient(ctx context.Context, mux *runtime.ServeMux, client InjectivePortfolioRPCClient) error { - - mux.Handle("POST", pattern_InjectivePortfolioRPC_TokenHolders_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_portfolio_rpc.InjectivePortfolioRPC/TokenHolders", runtime.WithHTTPPathPattern("/injective_portfolio_rpc.InjectivePortfolioRPC/TokenHolders")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectivePortfolioRPC_TokenHolders_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectivePortfolioRPC_TokenHolders_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectivePortfolioRPC_AccountPortfolio_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_portfolio_rpc.InjectivePortfolioRPC/AccountPortfolio", runtime.WithHTTPPathPattern("/injective_portfolio_rpc.InjectivePortfolioRPC/AccountPortfolio")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectivePortfolioRPC_AccountPortfolio_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectivePortfolioRPC_AccountPortfolio_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectivePortfolioRPC_AccountPortfolioBalances_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_portfolio_rpc.InjectivePortfolioRPC/AccountPortfolioBalances", runtime.WithHTTPPathPattern("/injective_portfolio_rpc.InjectivePortfolioRPC/AccountPortfolioBalances")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectivePortfolioRPC_AccountPortfolioBalances_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectivePortfolioRPC_AccountPortfolioBalances_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectivePortfolioRPC_StreamAccountPortfolio_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_portfolio_rpc.InjectivePortfolioRPC/StreamAccountPortfolio", runtime.WithHTTPPathPattern("/injective_portfolio_rpc.InjectivePortfolioRPC/StreamAccountPortfolio")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectivePortfolioRPC_StreamAccountPortfolio_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectivePortfolioRPC_StreamAccountPortfolio_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -var ( - pattern_InjectivePortfolioRPC_TokenHolders_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_portfolio_rpc.InjectivePortfolioRPC", "TokenHolders"}, "")) - - pattern_InjectivePortfolioRPC_AccountPortfolio_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_portfolio_rpc.InjectivePortfolioRPC", "AccountPortfolio"}, "")) - - pattern_InjectivePortfolioRPC_AccountPortfolioBalances_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_portfolio_rpc.InjectivePortfolioRPC", "AccountPortfolioBalances"}, "")) - - pattern_InjectivePortfolioRPC_StreamAccountPortfolio_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_portfolio_rpc.InjectivePortfolioRPC", "StreamAccountPortfolio"}, "")) -) - -var ( - forward_InjectivePortfolioRPC_TokenHolders_0 = runtime.ForwardResponseMessage - - forward_InjectivePortfolioRPC_AccountPortfolio_0 = runtime.ForwardResponseMessage - - forward_InjectivePortfolioRPC_AccountPortfolioBalances_0 = runtime.ForwardResponseMessage - - forward_InjectivePortfolioRPC_StreamAccountPortfolio_0 = runtime.ForwardResponseStream -) diff --git a/exchange/portfolio_rpc/pb/injective_portfolio_rpc.proto b/exchange/portfolio_rpc/pb/injective_portfolio_rpc.proto deleted file mode 100644 index df98146b..00000000 --- a/exchange/portfolio_rpc/pb/injective_portfolio_rpc.proto +++ /dev/null @@ -1,158 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// InjectivePortfolioRPC protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -syntax = "proto3"; - -package injective_portfolio_rpc; - -option go_package = "/injective_portfolio_rpcpb"; - -// InjectivePortfolioRPC defines gRPC API of Exchange Portfolio provider. -service InjectivePortfolioRPC { - // Provide a list of addresses holding a specific token - rpc TokenHolders (TokenHoldersRequest) returns (TokenHoldersResponse); - // Provide the account's portfolio - rpc AccountPortfolio (AccountPortfolioRequest) returns (AccountPortfolioResponse); - // Provide the account's portfolio balances - rpc AccountPortfolioBalances (AccountPortfolioBalancesRequest) returns (AccountPortfolioBalancesResponse); - // Stream the account's portfolio - rpc StreamAccountPortfolio (StreamAccountPortfolioRequest) returns (stream StreamAccountPortfolioResponse); -} - -message TokenHoldersRequest { - // Denom of the token - string denom = 1; - // Cursor for pagination - string cursor = 2; - sint32 limit = 3; -} - -message TokenHoldersResponse { - repeated Holder holders = 1; - // Next cursors for pagination - repeated string next_cursors = 2; -} - -message Holder { - // Account address for the holder - string account_address = 1; - // The balance of the holder - string balance = 2; -} - -message AccountPortfolioRequest { - // Account address - string account_address = 1; -} - -message AccountPortfolioResponse { - // The portfolio of this account - Portfolio portfolio = 1; -} - -message Portfolio { - // The account's portfolio address - string account_address = 1; - // Account available bank balances - repeated Coin bank_balances = 2; - // Subaccounts list - repeated SubaccountBalanceV2 subaccounts = 3; - // All positions for all subaccounts, with unrealized PNL - repeated PositionsWithUPNL positions_with_upnl = 4; -} - -message Coin { - // Denom of the coin - string denom = 1; - string amount = 2; -} - -message SubaccountBalanceV2 { - // Related subaccount ID - string subaccount_id = 1; - // Coin denom on the chain. - string denom = 2; - SubaccountDeposit deposit = 3; -} - -message SubaccountDeposit { - string total_balance = 1; - string available_balance = 2; -} - -message PositionsWithUPNL { - DerivativePosition position = 1; - // Unrealized PNL - string unrealized_pnl = 2; -} - -message DerivativePosition { - // Ticker of the derivative market - string ticker = 1; - // Derivative Market ID - string market_id = 2; - // The subaccountId that the position belongs to - string subaccount_id = 3; - // Direction of the position - string direction = 4; - // Quantity of the position - string quantity = 5; - // Price of the position - string entry_price = 6; - // Margin of the position - string margin = 7; - // LiquidationPrice of the position - string liquidation_price = 8; - // MarkPrice of the position - string mark_price = 9; - // Aggregate Quantity of the Reduce Only orders associated with the position - string aggregate_reduce_only_quantity = 11; - // Position updated timestamp in UNIX millis. - sint64 updated_at = 12; - // Position created timestamp in UNIX millis. - sint64 created_at = 13; -} - -message AccountPortfolioBalancesRequest { - // Account address - string account_address = 1; -} - -message AccountPortfolioBalancesResponse { - // The portfolio balances of this account - PortfolioBalances portfolio = 1; -} - -message PortfolioBalances { - // The account's portfolio address - string account_address = 1; - // Account available bank balances - repeated Coin bank_balances = 2; - // Subaccounts list - repeated SubaccountBalanceV2 subaccounts = 3; -} - -message StreamAccountPortfolioRequest { - // The account's portfolio address - string account_address = 1; - // Related subaccount ID - string subaccount_id = 2; - string type = 3; -} - -message StreamAccountPortfolioResponse { - // type of portfolio entry - string type = 1; - // denom of portfolio entry - string denom = 2; - // amount of portfolio entry - string amount = 3; - // subaccount id of portfolio entry - string subaccount_id = 4; - // Operation timestamp in UNIX millis. - sint64 timestamp = 5; -} diff --git a/exchange/spot_exchange_rpc/pb/goadesign_goagen_injective_spot_exchange_rpc.pb.go b/exchange/spot_exchange_rpc/pb/goadesign_goagen_injective_spot_exchange_rpc.pb.go index e42a27b8..b9246062 100644 --- a/exchange/spot_exchange_rpc/pb/goadesign_goagen_injective_spot_exchange_rpc.pb.go +++ b/exchange/spot_exchange_rpc/pb/goadesign_goagen_injective_spot_exchange_rpc.pb.go @@ -8,7 +8,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 -// protoc v3.19.4 +// protoc v4.24.4 // source: goadesign_goagen_injective_spot_exchange_rpc.proto package injective_spot_exchange_rpcpb @@ -163,11 +163,11 @@ type SpotMarketInfo struct { Ticker string `protobuf:"bytes,3,opt,name=ticker,proto3" json:"ticker,omitempty"` // Coin denom used for the base asset. BaseDenom string `protobuf:"bytes,4,opt,name=base_denom,json=baseDenom,proto3" json:"base_denom,omitempty"` - // Token metadata for base asset, only for Ethereum-based assets + // Token metadata for base asset BaseTokenMeta *TokenMeta `protobuf:"bytes,5,opt,name=base_token_meta,json=baseTokenMeta,proto3" json:"base_token_meta,omitempty"` // Coin denom used for the quote asset. QuoteDenom string `protobuf:"bytes,6,opt,name=quote_denom,json=quoteDenom,proto3" json:"quote_denom,omitempty"` - // Token metadata for quote asset, only for Ethereum-based assets + // Token metadata for quote asset QuoteTokenMeta *TokenMeta `protobuf:"bytes,7,opt,name=quote_token_meta,json=quoteTokenMeta,proto3" json:"quote_token_meta,omitempty"` // Defines the fee percentage makers pay when trading (in quote asset) MakerFeeRate string `protobuf:"bytes,8,opt,name=maker_fee_rate,json=makerFeeRate,proto3" json:"maker_fee_rate,omitempty"` @@ -313,7 +313,7 @@ type TokenMeta struct { // Token full name Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - // Token Ethereum contract address + // Token contract address (native or not) Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` // Token symbol short name Symbol string `protobuf:"bytes,3,opt,name=symbol,proto3" json:"symbol,omitempty"` @@ -2107,6 +2107,8 @@ type TradesRequest struct { AccountAddress string `protobuf:"bytes,13,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` // Client order ID Cid string `protobuf:"bytes,14,opt,name=cid,proto3" json:"cid,omitempty"` + // Fee recipient address + FeeRecipient string `protobuf:"bytes,15,opt,name=fee_recipient,json=feeRecipient,proto3" json:"fee_recipient,omitempty"` } func (x *TradesRequest) Reset() { @@ -2239,6 +2241,13 @@ func (x *TradesRequest) GetCid() string { return "" } +func (x *TradesRequest) GetFeeRecipient() string { + if x != nil { + return x.FeeRecipient + } + return "" +} + type TradesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2477,6 +2486,8 @@ type StreamTradesRequest struct { AccountAddress string `protobuf:"bytes,13,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` // Client order ID Cid string `protobuf:"bytes,14,opt,name=cid,proto3" json:"cid,omitempty"` + // Fee recipient address + FeeRecipient string `protobuf:"bytes,15,opt,name=fee_recipient,json=feeRecipient,proto3" json:"fee_recipient,omitempty"` } func (x *StreamTradesRequest) Reset() { @@ -2609,6 +2620,13 @@ func (x *StreamTradesRequest) GetCid() string { return "" } +func (x *StreamTradesRequest) GetFeeRecipient() string { + if x != nil { + return x.FeeRecipient + } + return "" +} + type StreamTradesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2709,6 +2727,8 @@ type TradesV2Request struct { AccountAddress string `protobuf:"bytes,13,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` // Client order ID Cid string `protobuf:"bytes,14,opt,name=cid,proto3" json:"cid,omitempty"` + // Fee recipient address + FeeRecipient string `protobuf:"bytes,15,opt,name=fee_recipient,json=feeRecipient,proto3" json:"fee_recipient,omitempty"` } func (x *TradesV2Request) Reset() { @@ -2841,6 +2861,13 @@ func (x *TradesV2Request) GetCid() string { return "" } +func (x *TradesV2Request) GetFeeRecipient() string { + if x != nil { + return x.FeeRecipient + } + return "" +} + type TradesV2Response struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2932,6 +2959,8 @@ type StreamTradesV2Request struct { AccountAddress string `protobuf:"bytes,13,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` // Client order ID Cid string `protobuf:"bytes,14,opt,name=cid,proto3" json:"cid,omitempty"` + // Fee recipient address + FeeRecipient string `protobuf:"bytes,15,opt,name=fee_recipient,json=feeRecipient,proto3" json:"fee_recipient,omitempty"` } func (x *StreamTradesV2Request) Reset() { @@ -3064,6 +3093,13 @@ func (x *StreamTradesV2Request) GetCid() string { return "" } +func (x *StreamTradesV2Request) GetFeeRecipient() string { + if x != nil { + return x.FeeRecipient + } + return "" +} + type StreamTradesV2Response struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4611,7 +4647,7 @@ var file_goadesign_goagen_injective_spot_exchange_rpc_proto_rawDesc = []byte{ 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x22, 0xbf, 0x03, 0x0a, 0x0d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x70, 0x22, 0xe4, 0x03, 0x0a, 0x0d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, @@ -4639,485 +4675,494 @@ var file_goadesign_goagen_injective_spot_exchange_rpc_proto_rawDesc = []byte{ 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x63, 0x69, 0x64, 0x22, 0x8d, 0x01, 0x0a, 0x0e, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x06, - 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, - 0x69, 0x6e, 0x67, 0x22, 0xb2, 0x03, 0x0a, 0x09, 0x53, 0x70, 0x6f, 0x74, 0x54, 0x72, 0x61, 0x64, - 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, 0x68, - 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, - 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x65, 0x78, 0x65, 0x63, - 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x12, 0x74, 0x72, 0x61, 0x64, 0x65, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x64, 0x69, - 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, - 0x72, 0x61, 0x64, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3d, 0x0a, - 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, - 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x69, 0x63, 0x65, - 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x10, 0x0a, 0x03, - 0x66, 0x65, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x66, 0x65, 0x65, 0x12, 0x1f, - 0x0a, 0x0b, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x12, 0x52, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, - 0x23, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, - 0x69, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, - 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x64, - 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, - 0x6f, 0x6e, 0x53, 0x69, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0xc5, 0x03, 0x0a, 0x13, 0x53, 0x74, 0x72, - 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, - 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, - 0x53, 0x69, 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, - 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, - 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, - 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, - 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, - 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, - 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x10, - 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, - 0x22, 0x99, 0x01, 0x0a, 0x14, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x05, 0x74, 0x72, 0x61, - 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, - 0x52, 0x05, 0x74, 0x72, 0x61, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, - 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xc1, 0x03, 0x0a, - 0x0f, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, - 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, - 0x53, 0x69, 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, - 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, - 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, - 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, - 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, - 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, - 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x10, - 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, - 0x22, 0x8f, 0x01, 0x0a, 0x10, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x06, 0x74, - 0x72, 0x61, 0x64, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x67, 0x22, 0xc7, 0x03, 0x0a, 0x15, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, - 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, - 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, - 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x64, 0x65, - 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, + 0x63, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, + 0x69, 0x65, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x52, + 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x22, 0x8d, 0x01, 0x0a, 0x0e, 0x54, 0x72, 0x61, + 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x06, 0x74, + 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x54, 0x72, + 0x61, 0x64, 0x65, 0x52, 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x06, 0x70, + 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, + 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x22, 0xb2, 0x03, 0x0a, 0x09, 0x53, 0x70, 0x6f, + 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, + 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, + 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, + 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, + 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, + 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x72, 0x61, 0x64, 0x65, + 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x74, 0x72, 0x61, 0x64, 0x65, 0x45, 0x78, 0x65, 0x63, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x72, 0x61, + 0x64, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x74, 0x72, 0x61, 0x64, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x3d, 0x0a, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, + 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, + 0x50, 0x72, 0x69, 0x63, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, + 0x65, 0x12, 0x10, 0x0a, 0x03, 0x66, 0x65, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x66, 0x65, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x5f, + 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, + 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, + 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, + 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, + 0x64, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, + 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, + 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0xea, 0x03, + 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, + 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, + 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, + 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x73, 0x6b, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, + 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, + 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x09, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, + 0x25, 0x0a, 0x0e, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, + 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, + 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, + 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x22, 0x99, 0x01, 0x0a, 0x14, 0x53, + 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x05, 0x74, 0x72, 0x61, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, + 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, + 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x05, 0x74, 0x72, 0x61, 0x64, + 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xe6, 0x03, 0x0a, 0x0f, 0x54, 0x72, 0x61, 0x64, 0x65, + 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, + 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, + 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x64, 0x65, 0x12, 0x1c, + 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, + 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, + 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, + 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, + 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, + 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, + 0x69, 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, + 0x74, 0x49, 0x64, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, + 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x65, + 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x0b, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, + 0x79, 0x70, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, + 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x65, + 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x22, + 0x8f, 0x01, 0x0a, 0x10, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, + 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x06, 0x74, 0x72, + 0x61, 0x64, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, + 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, + 0x67, 0x22, 0xec, 0x03, 0x0a, 0x15, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, + 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, + 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x64, 0x65, 0x12, + 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, + 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1d, 0x0a, 0x0a, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, + 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, + 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, + 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, + 0x5f, 0x69, 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, 0x72, 0x6b, + 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x73, + 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x27, 0x0a, 0x0f, + 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, + 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, + 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, 0x49, 0x64, + 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, + 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x66, + 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, + 0x22, 0x9b, 0x01, 0x0a, 0x16, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, + 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x05, 0x74, + 0x72, 0x61, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x54, 0x72, 0x61, + 0x64, 0x65, 0x52, 0x05, 0x74, 0x72, 0x61, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x70, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x89, + 0x01, 0x0a, 0x1b, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, + 0x65, 0x72, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1d, 0x0a, - 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, - 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, 0x07, - 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x72, 0x6b, 0x65, - 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, 0x72, - 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, - 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x27, 0x0a, - 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, - 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, - 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, 0x49, - 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, - 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0x9b, 0x01, 0x0a, - 0x16, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x05, 0x74, 0x72, 0x61, 0x64, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x05, - 0x74, 0x72, 0x61, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, - 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, - 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x89, 0x01, 0x0a, 0x1b, 0x53, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, + 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, + 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0xa0, 0x01, 0x0a, 0x1c, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, - 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x6f, + 0x72, 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x4c, 0x69, + 0x6d, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x06, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, + 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, + 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, + 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x22, 0xce, 0x01, + 0x0a, 0x1b, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, + 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, + 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, + 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, + 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, + 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x5e, + 0x0a, 0x1c, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, + 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, + 0x0a, 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, + 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, + 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, + 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, 0x22, 0xb6, + 0x03, 0x0a, 0x14, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, + 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, + 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, + 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, + 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, + 0x6d, 0x69, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, + 0x79, 0x70, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x12, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, + 0x74, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, + 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, + 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, + 0x61, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, + 0x61, 0x64, 0x65, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x11, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, + 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0x9b, 0x01, 0x0a, 0x15, 0x4f, 0x72, 0x64, 0x65, + 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x45, 0x0a, 0x06, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, + 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, + 0x53, 0x70, 0x6f, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, + 0x52, 0x06, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, + 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, + 0x61, 0x67, 0x69, 0x6e, 0x67, 0x22, 0xf3, 0x03, 0x0a, 0x10, 0x53, 0x70, 0x6f, 0x74, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, + 0x64, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x6f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, + 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, + 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x61, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x41, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, + 0x0a, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, + 0x72, 0x69, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x5f, + 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x72, 0x69, + 0x67, 0x67, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x71, 0x75, 0x61, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, + 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, + 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x14, + 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, + 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, + 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, + 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x0f, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, + 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0xdc, 0x01, 0x0a, 0x1a, + 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, + 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, - 0x73, 0x6b, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, - 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, - 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0xa0, 0x01, 0x0a, 0x1c, 0x53, 0x75, 0x62, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4f, - 0x72, 0x64, 0x65, 0x72, 0x52, 0x06, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x12, 0x3b, 0x0a, 0x06, - 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, + 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, + 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1c, 0x0a, + 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, + 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, + 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x22, 0xa7, 0x01, 0x0a, 0x1b, 0x53, + 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, + 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x05, 0x6f, 0x72, + 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x4f, 0x72, 0x64, 0x65, + 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, + 0x25, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x22, 0xc7, 0x01, 0x0a, 0x18, 0x41, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x53, + 0x77, 0x61, 0x70, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x63, + 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x11, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, + 0x6d, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, + 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x11, 0x52, 0x08, 0x74, 0x6f, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x95, + 0x01, 0x0a, 0x19, 0x41, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x53, 0x77, 0x61, 0x70, 0x48, 0x69, 0x73, + 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x06, + 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, - 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x22, 0xce, 0x01, 0x0a, 0x1b, 0x53, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, - 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, - 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, - 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x5e, 0x0a, 0x1c, 0x53, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x06, 0x74, 0x72, - 0x61, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x6a, + 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x3b, 0x0a, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x53, 0x77, 0x61, 0x70, + 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xe0, 0x03, 0x0a, 0x0a, 0x41, 0x74, 0x6f, 0x6d, 0x69, + 0x63, 0x53, 0x77, 0x61, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x14, 0x0a, + 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x6f, + 0x75, 0x74, 0x65, 0x12, 0x42, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x6f, + 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x0a, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x3e, 0x0a, 0x09, 0x64, 0x65, 0x73, 0x74, 0x5f, + 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x54, 0x72, 0x61, - 0x64, 0x65, 0x52, 0x06, 0x74, 0x72, 0x61, 0x64, 0x65, 0x73, 0x22, 0xb6, 0x03, 0x0a, 0x14, 0x4f, - 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, - 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, - 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, - 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, - 0x1f, 0x0a, 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x05, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x73, - 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, - 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x12, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, - 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x52, - 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, - 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x27, - 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, - 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x72, 0x6b, 0x65, - 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, 0x72, - 0x6b, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, - 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x64, 0x65, 0x49, - 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, - 0x65, 0x74, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, - 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x4f, 0x6e, 0x6c, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x63, 0x69, 0x64, 0x22, 0x9b, 0x01, 0x0a, 0x15, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, - 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, - 0x06, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, - 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, 0x74, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x06, 0x6f, 0x72, - 0x64, 0x65, 0x72, 0x73, 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, - 0x67, 0x22, 0xf3, 0x03, 0x0a, 0x10, 0x53, 0x70, 0x6f, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, - 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, - 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, - 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, - 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, - 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, - 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, - 0x69, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, - 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x69, 0x63, - 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, - 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x71, 0x75, 0x61, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66, 0x69, 0x6c, 0x6c, - 0x65, 0x64, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, - 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, - 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, - 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0d, 0x20, - 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, - 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, - 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, - 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x22, 0xdc, 0x01, 0x0a, 0x1a, 0x53, 0x74, 0x72, 0x65, - 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, - 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, - 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x6f, - 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, - 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x27, 0x0a, - 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, - 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x22, 0xa7, 0x01, 0x0a, 0x1b, 0x53, 0x74, 0x72, 0x65, 0x61, - 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, + 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x08, 0x64, + 0x65, 0x73, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x35, 0x0a, 0x04, 0x66, 0x65, 0x65, 0x73, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x6f, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x69, 0x73, - 0x74, 0x6f, 0x72, 0x79, 0x52, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x6f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x22, 0xc7, 0x01, 0x0a, 0x18, 0x41, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x53, 0x77, 0x61, 0x70, 0x48, - 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, - 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, - 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1f, 0x0a, 0x0b, - 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x11, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, - 0x09, 0x74, 0x6f, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x11, - 0x52, 0x08, 0x74, 0x6f, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x95, 0x01, 0x0a, 0x19, 0x41, - 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x53, 0x77, 0x61, 0x70, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, - 0x61, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x3b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x41, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x53, 0x77, 0x61, 0x70, 0x52, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x22, 0xe0, 0x03, 0x0a, 0x0a, 0x41, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x53, 0x77, 0x61, - 0x70, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x75, - 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x12, - 0x42, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x04, 0x66, 0x65, 0x65, 0x73, 0x12, 0x29, + 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x5f, 0x62, 0x79, 0x5f, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x11, 0x52, 0x0d, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x79, 0x53, 0x65, 0x6e, 0x64, 0x65, + 0x72, 0x12, 0x37, 0x0a, 0x18, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x62, 0x79, 0x5f, 0x73, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x11, 0x52, 0x15, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x79, 0x53, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, + 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, + 0x61, 0x73, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x5f, + 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x61, + 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, + 0x75, 0x6e, 0x64, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x34, 0x0a, 0x04, 0x43, 0x6f, 0x69, + 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x32, + 0x9e, 0x11, 0x0a, 0x18, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x70, 0x6f, + 0x74, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x50, 0x43, 0x12, 0x64, 0x0a, 0x07, + 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, - 0x6f, 0x69, 0x6e, 0x12, 0x3e, 0x0a, 0x09, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x69, 0x6e, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, + 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x61, 0x0a, 0x06, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x12, 0x2a, 0x2e, 0x69, + 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x0d, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, + 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x08, 0x64, 0x65, 0x73, 0x74, 0x43, - 0x6f, 0x69, 0x6e, 0x12, 0x35, 0x0a, 0x04, 0x66, 0x65, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, + 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x61, 0x72, 0x6b, 0x65, + 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x61, + 0x72, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, + 0x70, 0x0a, 0x0b, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x12, 0x2f, + 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, + 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, + 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x73, 0x0a, 0x0c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x73, 0x56, + 0x32, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x04, 0x66, 0x65, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x41, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x62, - 0x79, 0x5f, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0d, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x79, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x37, 0x0a, - 0x18, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x62, 0x79, 0x5f, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, - 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x11, 0x52, - 0x15, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x79, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, - 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, - 0x1f, 0x0a, 0x0b, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x12, 0x52, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x41, 0x74, - 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x41, - 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x34, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14, 0x0a, - 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, - 0x6e, 0x6f, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x32, 0x9e, 0x11, 0x0a, 0x18, - 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x70, 0x6f, 0x74, 0x45, 0x78, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x50, 0x43, 0x12, 0x64, 0x0a, 0x07, 0x4d, 0x61, 0x72, 0x6b, - 0x65, 0x74, 0x73, 0x12, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, - 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4d, - 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x61, - 0x0a, 0x06, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x12, 0x2a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x78, 0x0a, 0x0d, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x61, 0x72, 0x6b, 0x65, - 0x74, 0x73, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, + 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x73, 0x56, 0x32, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x84, 0x01, 0x0a, 0x11, 0x53, 0x74, 0x72, 0x65, 0x61, + 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x12, 0x35, 0x2e, 0x69, + 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, + 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, + 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, + 0x6b, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x90, 0x01, + 0x0a, 0x15, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, + 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x39, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, + 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, - 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, - 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x70, 0x0a, 0x0b, 0x4f, - 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x12, 0x2f, 0x2e, 0x69, 0x6e, 0x6a, + 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, + 0x12, 0x61, 0x0a, 0x06, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x12, 0x2a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, - 0x6f, 0x6b, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, - 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x73, 0x0a, - 0x0c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x73, 0x56, 0x32, 0x12, 0x30, 0x2e, + 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, + 0x65, 0x72, 0x73, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, + 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, + 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x61, 0x0a, 0x06, 0x54, 0x72, + 0x61, 0x64, 0x65, 0x73, 0x12, 0x2a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, + 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, + 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, + 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, + 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, - 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, - 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, + 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, - 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, - 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x84, 0x01, 0x0a, 0x11, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, - 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x12, 0x35, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, - 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x36, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, - 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, - 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x56, 0x32, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x90, 0x01, 0x0a, 0x15, 0x53, 0x74, - 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x12, 0x39, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, - 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, - 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, - 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, - 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x61, 0x0a, 0x06, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x12, 0x2a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, - 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, - 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x75, 0x0a, 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x12, - 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, - 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, - 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, - 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x61, 0x0a, 0x06, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, - 0x12, 0x2a, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, + 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x30, 0x01, 0x12, 0x67, 0x0a, 0x08, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, + 0x12, 0x2c, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, - 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, - 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, 0x64, 0x65, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, 0x0c, 0x53, 0x74, 0x72, - 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x6a, 0x65, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, - 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, - 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, - 0x12, 0x67, 0x0a, 0x08, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x12, 0x2c, 0x2e, 0x69, - 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, - 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, 0x64, 0x65, - 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, - 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7b, 0x0a, 0x0e, 0x53, 0x74, 0x72, - 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x12, 0x32, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, - 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x33, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, + 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, + 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, + 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, + 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7b, 0x0a, + 0x0e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x12, + 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, - 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x8b, 0x01, 0x0a, 0x14, 0x53, 0x75, 0x62, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x12, - 0x38, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, - 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, - 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x69, 0x6e, 0x6a, 0x65, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8b, 0x01, 0x0a, 0x14, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x38, 0x2e, + 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, + 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x56, 0x32, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x8b, 0x01, 0x0a, 0x14, 0x53, + 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, + 0x69, 0x73, 0x74, 0x12, 0x38, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, + 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, + 0x72, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8b, 0x01, 0x0a, 0x14, 0x53, 0x75, 0x62, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x4c, 0x69, 0x73, + 0x74, 0x12, 0x38, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, + 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, + 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x69, 0x6e, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x76, 0x0a, 0x0d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, + 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x54, 0x72, 0x61, 0x64, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x76, 0x0a, 0x0d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, - 0x6f, 0x72, 0x79, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, - 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, + 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, + 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8a, + 0x01, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8a, 0x01, 0x0a, 0x13, 0x53, - 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x12, 0x37, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, + 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, + 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x38, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, + 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, + 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x82, 0x01, 0x0a, 0x11, + 0x41, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x53, 0x77, 0x61, 0x70, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x12, 0x35, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, + 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, + 0x41, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x53, 0x77, 0x61, 0x70, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x53, 0x77, 0x61, + 0x70, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x42, 0x20, 0x5a, 0x1e, 0x2f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, - 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, - 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x69, 0x6e, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x82, 0x01, 0x0a, 0x11, 0x41, 0x74, 0x6f, 0x6d, - 0x69, 0x63, 0x53, 0x77, 0x61, 0x70, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x35, 0x2e, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, - 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x74, 0x6f, 0x6d, - 0x69, 0x63, 0x53, 0x77, 0x61, 0x70, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, - 0x70, 0x63, 0x2e, 0x41, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x53, 0x77, 0x61, 0x70, 0x48, 0x69, 0x73, - 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x20, 0x5a, 0x1e, - 0x2f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x5f, - 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x70, 0x63, 0x70, 0x62, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/exchange/spot_exchange_rpc/pb/goadesign_goagen_injective_spot_exchange_rpc_grpc.pb.go b/exchange/spot_exchange_rpc/pb/goadesign_goagen_injective_spot_exchange_rpc_grpc.pb.go index e276906a..d7c11241 100644 --- a/exchange/spot_exchange_rpc/pb/goadesign_goagen_injective_spot_exchange_rpc_grpc.pb.go +++ b/exchange/spot_exchange_rpc/pb/goadesign_goagen_injective_spot_exchange_rpc_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.2.0 -// - protoc v3.19.4 +// - protoc v4.24.4 // source: goadesign_goagen_injective_spot_exchange_rpc.proto package injective_spot_exchange_rpcpb diff --git a/exchange/spot_exchange_rpc/pb/injective_spot_exchange_rpc.pb.gw.go b/exchange/spot_exchange_rpc/pb/injective_spot_exchange_rpc.pb.gw.go deleted file mode 100644 index 4abea1de..00000000 --- a/exchange/spot_exchange_rpc/pb/injective_spot_exchange_rpc.pb.gw.go +++ /dev/null @@ -1,1427 +0,0 @@ -// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: injective_spot_exchange_rpc.proto - -/* -Package injective_spot_exchange_rpcpb is a reverse proxy. - -It translates gRPC into RESTful JSON APIs. -*/ -package injective_spot_exchange_rpcpb - -import ( - "context" - "io" - "net/http" - - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" - "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/grpclog" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/proto" -) - -// Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = metadata.Join - -func request_InjectiveSpotExchangeRPC_Markets_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq MarketsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Markets(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveSpotExchangeRPC_Markets_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveSpotExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq MarketsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Markets(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveSpotExchangeRPC_Market_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq MarketRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Market(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveSpotExchangeRPC_Market_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveSpotExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq MarketRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Market(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveSpotExchangeRPC_StreamMarkets_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveSpotExchangeRPC_StreamMarketsClient, runtime.ServerMetadata, error) { - var protoReq StreamMarketsRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamMarkets(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveSpotExchangeRPC_OrderbookV2_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrderbookV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.OrderbookV2(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveSpotExchangeRPC_OrderbookV2_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveSpotExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrderbookV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.OrderbookV2(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveSpotExchangeRPC_OrderbooksV2_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrderbooksV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.OrderbooksV2(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveSpotExchangeRPC_OrderbooksV2_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveSpotExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrderbooksV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.OrderbooksV2(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveSpotExchangeRPC_StreamOrderbookV2_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveSpotExchangeRPC_StreamOrderbookV2Client, runtime.ServerMetadata, error) { - var protoReq StreamOrderbookV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamOrderbookV2(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveSpotExchangeRPC_StreamOrderbookUpdate_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveSpotExchangeRPC_StreamOrderbookUpdateClient, runtime.ServerMetadata, error) { - var protoReq StreamOrderbookUpdateRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamOrderbookUpdate(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveSpotExchangeRPC_Orders_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrdersRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Orders(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveSpotExchangeRPC_Orders_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveSpotExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrdersRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Orders(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveSpotExchangeRPC_StreamOrders_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveSpotExchangeRPC_StreamOrdersClient, runtime.ServerMetadata, error) { - var protoReq StreamOrdersRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamOrders(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveSpotExchangeRPC_Trades_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq TradesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Trades(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveSpotExchangeRPC_Trades_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveSpotExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq TradesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Trades(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveSpotExchangeRPC_StreamTrades_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveSpotExchangeRPC_StreamTradesClient, runtime.ServerMetadata, error) { - var protoReq StreamTradesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamTrades(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveSpotExchangeRPC_TradesV2_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq TradesV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.TradesV2(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveSpotExchangeRPC_TradesV2_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveSpotExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq TradesV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.TradesV2(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveSpotExchangeRPC_StreamTradesV2_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveSpotExchangeRPC_StreamTradesV2Client, runtime.ServerMetadata, error) { - var protoReq StreamTradesV2Request - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamTradesV2(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveSpotExchangeRPC_SubaccountOrdersList_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountOrdersListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.SubaccountOrdersList(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveSpotExchangeRPC_SubaccountOrdersList_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveSpotExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountOrdersListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.SubaccountOrdersList(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveSpotExchangeRPC_SubaccountTradesList_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountTradesListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.SubaccountTradesList(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveSpotExchangeRPC_SubaccountTradesList_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveSpotExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SubaccountTradesListRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.SubaccountTradesList(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveSpotExchangeRPC_OrdersHistory_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrdersHistoryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.OrdersHistory(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveSpotExchangeRPC_OrdersHistory_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveSpotExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq OrdersHistoryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.OrdersHistory(ctx, &protoReq) - return msg, metadata, err - -} - -func request_InjectiveSpotExchangeRPC_StreamOrdersHistory_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (InjectiveSpotExchangeRPC_StreamOrdersHistoryClient, runtime.ServerMetadata, error) { - var protoReq StreamOrdersHistoryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - stream, err := client.StreamOrdersHistory(ctx, &protoReq) - if err != nil { - return nil, metadata, err - } - header, err := stream.Header() - if err != nil { - return nil, metadata, err - } - metadata.HeaderMD = header - return stream, metadata, nil - -} - -func request_InjectiveSpotExchangeRPC_AtomicSwapHistory_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveSpotExchangeRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AtomicSwapHistoryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.AtomicSwapHistory(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveSpotExchangeRPC_AtomicSwapHistory_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveSpotExchangeRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AtomicSwapHistoryRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.AtomicSwapHistory(ctx, &protoReq) - return msg, metadata, err - -} - -// RegisterInjectiveSpotExchangeRPCHandlerServer registers the http handlers for service InjectiveSpotExchangeRPC to "mux". -// UnaryRPC :call InjectiveSpotExchangeRPCServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterInjectiveSpotExchangeRPCHandlerFromEndpoint instead. -func RegisterInjectiveSpotExchangeRPCHandlerServer(ctx context.Context, mux *runtime.ServeMux, server InjectiveSpotExchangeRPCServer) error { - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_Markets_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Markets", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Markets")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveSpotExchangeRPC_Markets_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_Markets_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_Market_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Market", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Market")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveSpotExchangeRPC_Market_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_Market_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_StreamMarkets_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_OrderbookV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/OrderbookV2", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/OrderbookV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveSpotExchangeRPC_OrderbookV2_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_OrderbookV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_OrderbooksV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/OrderbooksV2", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/OrderbooksV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveSpotExchangeRPC_OrderbooksV2_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_OrderbooksV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_StreamOrderbookV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_StreamOrderbookUpdate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_Orders_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Orders", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Orders")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveSpotExchangeRPC_Orders_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_Orders_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_StreamOrders_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_Trades_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Trades", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Trades")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveSpotExchangeRPC_Trades_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_Trades_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_StreamTrades_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_TradesV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/TradesV2", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/TradesV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveSpotExchangeRPC_TradesV2_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_TradesV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_StreamTradesV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_SubaccountOrdersList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/SubaccountOrdersList", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/SubaccountOrdersList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveSpotExchangeRPC_SubaccountOrdersList_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_SubaccountOrdersList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_SubaccountTradesList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/SubaccountTradesList", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/SubaccountTradesList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveSpotExchangeRPC_SubaccountTradesList_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_SubaccountTradesList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_OrdersHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/OrdersHistory", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/OrdersHistory")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveSpotExchangeRPC_OrdersHistory_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_OrdersHistory_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_StreamOrdersHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") - _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_AtomicSwapHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/AtomicSwapHistory", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/AtomicSwapHistory")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveSpotExchangeRPC_AtomicSwapHistory_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_AtomicSwapHistory_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -// RegisterInjectiveSpotExchangeRPCHandlerFromEndpoint is same as RegisterInjectiveSpotExchangeRPCHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterInjectiveSpotExchangeRPCHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterInjectiveSpotExchangeRPCHandler(ctx, mux, conn) -} - -// RegisterInjectiveSpotExchangeRPCHandler registers the http handlers for service InjectiveSpotExchangeRPC to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterInjectiveSpotExchangeRPCHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterInjectiveSpotExchangeRPCHandlerClient(ctx, mux, NewInjectiveSpotExchangeRPCClient(conn)) -} - -// RegisterInjectiveSpotExchangeRPCHandlerClient registers the http handlers for service InjectiveSpotExchangeRPC -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "InjectiveSpotExchangeRPCClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "InjectiveSpotExchangeRPCClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "InjectiveSpotExchangeRPCClient" to call the correct interceptors. -func RegisterInjectiveSpotExchangeRPCHandlerClient(ctx context.Context, mux *runtime.ServeMux, client InjectiveSpotExchangeRPCClient) error { - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_Markets_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Markets", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Markets")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_Markets_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_Markets_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_Market_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Market", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Market")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_Market_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_Market_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_StreamMarkets_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/StreamMarkets", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/StreamMarkets")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_StreamMarkets_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_StreamMarkets_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_OrderbookV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/OrderbookV2", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/OrderbookV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_OrderbookV2_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_OrderbookV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_OrderbooksV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/OrderbooksV2", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/OrderbooksV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_OrderbooksV2_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_OrderbooksV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_StreamOrderbookV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/StreamOrderbookV2", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/StreamOrderbookV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_StreamOrderbookV2_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_StreamOrderbookV2_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_StreamOrderbookUpdate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/StreamOrderbookUpdate", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/StreamOrderbookUpdate")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_StreamOrderbookUpdate_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_StreamOrderbookUpdate_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_Orders_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Orders", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Orders")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_Orders_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_Orders_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_StreamOrders_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/StreamOrders", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/StreamOrders")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_StreamOrders_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_StreamOrders_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_Trades_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Trades", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/Trades")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_Trades_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_Trades_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_StreamTrades_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/StreamTrades", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/StreamTrades")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_StreamTrades_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_StreamTrades_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_TradesV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/TradesV2", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/TradesV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_TradesV2_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_TradesV2_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_StreamTradesV2_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/StreamTradesV2", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/StreamTradesV2")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_StreamTradesV2_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_StreamTradesV2_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_SubaccountOrdersList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/SubaccountOrdersList", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/SubaccountOrdersList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_SubaccountOrdersList_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_SubaccountOrdersList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_SubaccountTradesList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/SubaccountTradesList", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/SubaccountTradesList")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_SubaccountTradesList_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_SubaccountTradesList_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_OrdersHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/OrdersHistory", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/OrdersHistory")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_OrdersHistory_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_OrdersHistory_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_StreamOrdersHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/StreamOrdersHistory", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/StreamOrdersHistory")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_StreamOrdersHistory_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_StreamOrdersHistory_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("POST", pattern_InjectiveSpotExchangeRPC_AtomicSwapHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/AtomicSwapHistory", runtime.WithHTTPPathPattern("/injective_spot_exchange_rpc.InjectiveSpotExchangeRPC/AtomicSwapHistory")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveSpotExchangeRPC_AtomicSwapHistory_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveSpotExchangeRPC_AtomicSwapHistory_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -var ( - pattern_InjectiveSpotExchangeRPC_Markets_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "Markets"}, "")) - - pattern_InjectiveSpotExchangeRPC_Market_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "Market"}, "")) - - pattern_InjectiveSpotExchangeRPC_StreamMarkets_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "StreamMarkets"}, "")) - - pattern_InjectiveSpotExchangeRPC_OrderbookV2_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "OrderbookV2"}, "")) - - pattern_InjectiveSpotExchangeRPC_OrderbooksV2_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "OrderbooksV2"}, "")) - - pattern_InjectiveSpotExchangeRPC_StreamOrderbookV2_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "StreamOrderbookV2"}, "")) - - pattern_InjectiveSpotExchangeRPC_StreamOrderbookUpdate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "StreamOrderbookUpdate"}, "")) - - pattern_InjectiveSpotExchangeRPC_Orders_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "Orders"}, "")) - - pattern_InjectiveSpotExchangeRPC_StreamOrders_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "StreamOrders"}, "")) - - pattern_InjectiveSpotExchangeRPC_Trades_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "Trades"}, "")) - - pattern_InjectiveSpotExchangeRPC_StreamTrades_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "StreamTrades"}, "")) - - pattern_InjectiveSpotExchangeRPC_TradesV2_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "TradesV2"}, "")) - - pattern_InjectiveSpotExchangeRPC_StreamTradesV2_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "StreamTradesV2"}, "")) - - pattern_InjectiveSpotExchangeRPC_SubaccountOrdersList_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "SubaccountOrdersList"}, "")) - - pattern_InjectiveSpotExchangeRPC_SubaccountTradesList_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "SubaccountTradesList"}, "")) - - pattern_InjectiveSpotExchangeRPC_OrdersHistory_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "OrdersHistory"}, "")) - - pattern_InjectiveSpotExchangeRPC_StreamOrdersHistory_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "StreamOrdersHistory"}, "")) - - pattern_InjectiveSpotExchangeRPC_AtomicSwapHistory_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_spot_exchange_rpc.InjectiveSpotExchangeRPC", "AtomicSwapHistory"}, "")) -) - -var ( - forward_InjectiveSpotExchangeRPC_Markets_0 = runtime.ForwardResponseMessage - - forward_InjectiveSpotExchangeRPC_Market_0 = runtime.ForwardResponseMessage - - forward_InjectiveSpotExchangeRPC_StreamMarkets_0 = runtime.ForwardResponseStream - - forward_InjectiveSpotExchangeRPC_OrderbookV2_0 = runtime.ForwardResponseMessage - - forward_InjectiveSpotExchangeRPC_OrderbooksV2_0 = runtime.ForwardResponseMessage - - forward_InjectiveSpotExchangeRPC_StreamOrderbookV2_0 = runtime.ForwardResponseStream - - forward_InjectiveSpotExchangeRPC_StreamOrderbookUpdate_0 = runtime.ForwardResponseStream - - forward_InjectiveSpotExchangeRPC_Orders_0 = runtime.ForwardResponseMessage - - forward_InjectiveSpotExchangeRPC_StreamOrders_0 = runtime.ForwardResponseStream - - forward_InjectiveSpotExchangeRPC_Trades_0 = runtime.ForwardResponseMessage - - forward_InjectiveSpotExchangeRPC_StreamTrades_0 = runtime.ForwardResponseStream - - forward_InjectiveSpotExchangeRPC_TradesV2_0 = runtime.ForwardResponseMessage - - forward_InjectiveSpotExchangeRPC_StreamTradesV2_0 = runtime.ForwardResponseStream - - forward_InjectiveSpotExchangeRPC_SubaccountOrdersList_0 = runtime.ForwardResponseMessage - - forward_InjectiveSpotExchangeRPC_SubaccountTradesList_0 = runtime.ForwardResponseMessage - - forward_InjectiveSpotExchangeRPC_OrdersHistory_0 = runtime.ForwardResponseMessage - - forward_InjectiveSpotExchangeRPC_StreamOrdersHistory_0 = runtime.ForwardResponseStream - - forward_InjectiveSpotExchangeRPC_AtomicSwapHistory_0 = runtime.ForwardResponseMessage -) diff --git a/exchange/spot_exchange_rpc/pb/injective_spot_exchange_rpc.proto b/exchange/spot_exchange_rpc/pb/injective_spot_exchange_rpc.proto deleted file mode 100644 index aa7b07f4..00000000 --- a/exchange/spot_exchange_rpc/pb/injective_spot_exchange_rpc.proto +++ /dev/null @@ -1,725 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// InjectiveSpotExchangeRPC protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -syntax = "proto3"; - -package injective_spot_exchange_rpc; - -option go_package = "/injective_spot_exchange_rpcpb"; - -// InjectiveSpotExchangeRPC defines gRPC API of Spot Exchange provider. -service InjectiveSpotExchangeRPC { - // Get a list of Spot Markets - rpc Markets (MarketsRequest) returns (MarketsResponse); - // Get details of a single spot market - rpc Market (MarketRequest) returns (MarketResponse); - // Stream live updates of selected spot markets - rpc StreamMarkets (StreamMarketsRequest) returns (stream StreamMarketsResponse); - // Orderbook of a Spot Market - rpc OrderbookV2 (OrderbookV2Request) returns (OrderbookV2Response); - // Orderbook of Spot Markets - rpc OrderbooksV2 (OrderbooksV2Request) returns (OrderbooksV2Response); - // Stream live snapshot updates of selected spot market orderbook - rpc StreamOrderbookV2 (StreamOrderbookV2Request) returns (stream StreamOrderbookV2Response); - // Stream live level updates of selected spot market orderbook - rpc StreamOrderbookUpdate (StreamOrderbookUpdateRequest) returns (stream StreamOrderbookUpdateResponse); - // Orders of a Spot Market - rpc Orders (OrdersRequest) returns (OrdersResponse); - // Stream updates to individual orders of a Spot Market - rpc StreamOrders (StreamOrdersRequest) returns (stream StreamOrdersResponse); - // Trades of a Spot Market - rpc Trades (TradesRequest) returns (TradesResponse); - // Stream newly executed trades from Spot Market - rpc StreamTrades (StreamTradesRequest) returns (stream StreamTradesResponse); - // Trades of a Spot Market - rpc TradesV2 (TradesV2Request) returns (TradesV2Response); - // Stream newly executed trades from Spot Market - rpc StreamTradesV2 (StreamTradesV2Request) returns (stream StreamTradesV2Response); - // List orders posted from this subaccount - rpc SubaccountOrdersList (SubaccountOrdersListRequest) returns (SubaccountOrdersListResponse); - // List trades executed by this subaccount - rpc SubaccountTradesList (SubaccountTradesListRequest) returns (SubaccountTradesListResponse); - // Lists history orders posted from this subaccount - rpc OrdersHistory (OrdersHistoryRequest) returns (OrdersHistoryResponse); - // Stream updates to historical orders of a spot Market - rpc StreamOrdersHistory (StreamOrdersHistoryRequest) returns (stream StreamOrdersHistoryResponse); - // Get historical atomic swaps - rpc AtomicSwapHistory (AtomicSwapHistoryRequest) returns (AtomicSwapHistoryResponse); -} - -message MarketsRequest { - // Filter by market status - string market_status = 1; - // Filter by the Coin denomination of the base currency - string base_denom = 2; - // Filter by the Coin denomination of the quote currency - string quote_denom = 3; - repeated string market_statuses = 4; -} - -message MarketsResponse { - // Spot Markets list - repeated SpotMarketInfo markets = 1; -} - -message SpotMarketInfo { - // SpotMarket ID is keccak265(baseDenom || quoteDenom) - string market_id = 1; - // The status of the market - string market_status = 2; - // A name of the pair in format AAA/BBB, where AAA is base asset, BBB is quote -// asset. - string ticker = 3; - // Coin denom used for the base asset. - string base_denom = 4; - // Token metadata for base asset, only for Ethereum-based assets - TokenMeta base_token_meta = 5; - // Coin denom used for the quote asset. - string quote_denom = 6; - // Token metadata for quote asset, only for Ethereum-based assets - TokenMeta quote_token_meta = 7; - // Defines the fee percentage makers pay when trading (in quote asset) - string maker_fee_rate = 8; - // Defines the fee percentage takers pay when trading (in quote asset) - string taker_fee_rate = 9; - // Percentage of the transaction fee shared with the service provider - string service_provider_fee = 10; - // Defines the minimum required tick size for the order's price - string min_price_tick_size = 11; - // Defines the minimum required tick size for the order's quantity - string min_quantity_tick_size = 12; - // Minimum notional value for the market - string min_notional = 13; -} - -message TokenMeta { - // Token full name - string name = 1; - // Token Ethereum contract address - string address = 2; - // Token symbol short name - string symbol = 3; - // URL to the logo image - string logo = 4; - // Token decimals - sint32 decimals = 5; - // Token metadata fetched timestamp in UNIX millis. - sint64 updated_at = 6; -} - -message MarketRequest { - // MarketId of the market we want to fetch - string market_id = 1; -} - -message MarketResponse { - // Info about particular spot market - SpotMarketInfo market = 1; -} - -message StreamMarketsRequest { - // List of market IDs for updates streaming, empty means 'ALL' spot markets - repeated string market_ids = 1; -} - -message StreamMarketsResponse { - // Info about particular spot market - SpotMarketInfo market = 1; - // Update type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message OrderbookV2Request { - // MarketId of the market's orderbook we want to fetch - string market_id = 1; -} - -message OrderbookV2Response { - // Orderbook of a particular spot market - SpotLimitOrderbookV2 orderbook = 1; -} - -message SpotLimitOrderbookV2 { - // Array of price levels for buys - repeated PriceLevel buys = 1; - // Array of price levels for sells - repeated PriceLevel sells = 2; - // market orderbook sequence - uint64 sequence = 3; - // Last update timestamp in UNIX millis. - sint64 timestamp = 4; -} - -message PriceLevel { - // Price number of the price level. - string price = 1; - // Quantity of the price level. - string quantity = 2; - // Price level last updated timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message OrderbooksV2Request { - // MarketIds of the markets - repeated string market_ids = 1; -} - -message OrderbooksV2Response { - repeated SingleSpotLimitOrderbookV2 orderbooks = 1; -} - -message SingleSpotLimitOrderbookV2 { - // market's ID - string market_id = 1; - // Orderbook of the market - SpotLimitOrderbookV2 orderbook = 2; -} - -message StreamOrderbookV2Request { - // List of market IDs for orderbook streaming, empty means 'ALL' spot markets - repeated string market_ids = 1; -} - -message StreamOrderbookV2Response { - // Orderbook of a Spot Market - SpotLimitOrderbookV2 orderbook = 1; - // Order update type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; - // MarketId of the market's orderbook - string market_id = 4; -} - -message StreamOrderbookUpdateRequest { - // List of market IDs for orderbook streaming, empty means 'ALL' spot markets - repeated string market_ids = 1; -} - -message StreamOrderbookUpdateResponse { - // Orderbook level updates of a Spot Market - OrderbookLevelUpdates orderbook_level_updates = 1; - // Order update type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; - // MarketId of the market's orderbook - string market_id = 4; -} - -message OrderbookLevelUpdates { - // market's ID - string market_id = 1; - // orderbook update sequence - uint64 sequence = 2; - // buy levels - repeated PriceLevelUpdate buys = 3; - // sell levels - repeated PriceLevelUpdate sells = 4; - // updates timestamp - sint64 updated_at = 5; -} - -message PriceLevelUpdate { - // Price number of the price level. - string price = 1; - // Quantity of the price level. - string quantity = 2; - // Price level status. - bool is_active = 3; - // Price level last updated timestamp in UNIX millis. - sint64 timestamp = 4; -} - -message OrdersRequest { - // MarketId of the market's orderbook we want to fetch - string market_id = 1; - // Look for specific order side - string order_side = 2; - // Look for specific subaccountId of an order - string subaccount_id = 3; - // Skip will skip the first n item from the result - uint64 skip = 4; - // Limit is used to specify the maximum number of items to be returned. - sint32 limit = 5; - // The starting timestamp in UNIX milliseconds that the trades must be equal or -// older than - sint64 start_time = 6; - // The ending timestamp in UNIX milliseconds that the trades must be equal or -// younger than - sint64 end_time = 7; - // MarketIds of the markets of which we want to get trades - repeated string market_ids = 8; - // Should include inactive orders - bool include_inactive = 9; - // Choose to return subaccount total orders - bool subaccount_total_orders = 10; - // TradeId of the order we want to fetch - string trade_id = 11; - // Client order ID - string cid = 12; -} - -message OrdersResponse { - repeated SpotLimitOrder orders = 1; - Paging paging = 2; -} - -message SpotLimitOrder { - // Hash of the order - string order_hash = 1; - // The side of the order - string order_side = 2; - // Spot Market ID is keccak265(baseDenom + quoteDenom) - string market_id = 3; - // The subaccountId that this order belongs to - string subaccount_id = 4; - // Price of the order - string price = 5; - // Quantity of the order - string quantity = 6; - // The amount of the quantity remaining unfilled - string unfilled_quantity = 7; - // Trigger price is the trigger price used by stop/take orders. 0 if the -// trigger price is not set. - string trigger_price = 8; - // Fee recipient address - string fee_recipient = 9; - // Order state - string state = 10; - // Order committed timestamp in UNIX millis. - sint64 created_at = 11; - // Order updated timestamp in UNIX millis. - sint64 updated_at = 12; - // Transaction Hash where order is created. Not all orders have this field - string tx_hash = 13; - // Custom client order ID - string cid = 14; -} -// Paging defines the structure for required params for handling pagination -message Paging { - // total number of txs saved in database - sint64 total = 1; - // can be either block height or index num - sint32 from = 2; - // can be either block height or index num - sint32 to = 3; - // count entries by subaccount, serving some places on helix - sint64 count_by_subaccount = 4; - // array of tokens to navigate to the next pages - repeated string next = 5; -} - -message StreamOrdersRequest { - // MarketId of the market's orderbook we want to fetch - string market_id = 1; - // Look for specific order side - string order_side = 2; - // Look for specific subaccountId of an order - string subaccount_id = 3; - // Skip will skip the first n item from the result - uint64 skip = 4; - // Limit is used to specify the maximum number of items to be returned. - sint32 limit = 5; - // The starting timestamp in UNIX milliseconds that the trades must be equal or -// older than - sint64 start_time = 6; - // The ending timestamp in UNIX milliseconds that the trades must be equal or -// younger than - sint64 end_time = 7; - // MarketIds of the markets of which we want to get trades - repeated string market_ids = 8; - // Should include inactive orders - bool include_inactive = 9; - // Choose to return subaccount total orders - bool subaccount_total_orders = 10; - // TradeId of the order we want to fetch - string trade_id = 11; - // Client order ID - string cid = 12; -} - -message StreamOrdersResponse { - // Updated market order - SpotLimitOrder order = 1; - // Order update type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message TradesRequest { - // MarketId of the market's orderbook we want to fetch - string market_id = 1; - // Filter by execution side of the trade - string execution_side = 2; - // Filter by direction the trade - string direction = 3; - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 4; - // Skip will skip the first n item from the item result - uint64 skip = 5; - // Limit is used to specify the maximum number of items to be returned. - sint32 limit = 6; - // The starting timestamp in UNIX milliseconds that the trades must be equal or -// older than - sint64 start_time = 7; - // The ending timestamp in UNIX milliseconds that the trades must be equal or -// younger than - sint64 end_time = 8; - // MarketIds of the markets of which we want to get trades - repeated string market_ids = 9; - // Subaccount ids of traders we want to get trades - repeated string subaccount_ids = 10; - repeated string execution_types = 11; - // Filter by the tradeId of the trade - string trade_id = 12; - // Account address - string account_address = 13; - // Client order ID - string cid = 14; -} - -message TradesResponse { - // Trades of a Spot Market - repeated SpotTrade trades = 1; - // Paging indicates pages response is on - Paging paging = 2; -} - -message SpotTrade { - // Maker order hash. - string order_hash = 1; - // The subaccountId that executed the trade - string subaccount_id = 2; - // The ID of the market that this trade is in - string market_id = 3; - // The execution type of the trade - string trade_execution_type = 4; - // The direction the trade - string trade_direction = 5; - // Price level at which trade has been executed - PriceLevel price = 6; - // The fee associated with the trade (quote asset denom) - string fee = 7; - // Timestamp of trade execution in UNIX millis - sint64 executed_at = 8; - // Fee recipient address - string fee_recipient = 9; - // A unique string that helps differentiate between trades - string trade_id = 10; - // Trade's execution side, marker/taker - string execution_side = 11; - // Custom client order ID - string cid = 12; -} - -message StreamTradesRequest { - // MarketId of the market's orderbook we want to fetch - string market_id = 1; - // Filter by execution side of the trade - string execution_side = 2; - // Filter by direction the trade - string direction = 3; - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 4; - // Skip will skip the first n item from the item result - uint64 skip = 5; - // Limit is used to specify the maximum number of items to be returned. - sint32 limit = 6; - // The starting timestamp in UNIX milliseconds that the trades must be equal or -// older than - sint64 start_time = 7; - // The ending timestamp in UNIX milliseconds that the trades must be equal or -// younger than - sint64 end_time = 8; - // MarketIds of the markets of which we want to get trades - repeated string market_ids = 9; - // Subaccount ids of traders we want to get trades - repeated string subaccount_ids = 10; - repeated string execution_types = 11; - // Filter by the tradeId of the trade - string trade_id = 12; - // Account address - string account_address = 13; - // Client order ID - string cid = 14; -} - -message StreamTradesResponse { - // New spot market trade - SpotTrade trade = 1; - // Executed trades update type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message TradesV2Request { - // MarketId of the market's orderbook we want to fetch - string market_id = 1; - // Filter by execution side of the trade - string execution_side = 2; - // Filter by direction the trade - string direction = 3; - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 4; - // Skip will skip the first n item from the item result - uint64 skip = 5; - // Limit is used to specify the maximum number of items to be returned. - sint32 limit = 6; - // The starting timestamp in UNIX milliseconds that the trades must be equal or -// older than - sint64 start_time = 7; - // The ending timestamp in UNIX milliseconds that the trades must be equal or -// younger than - sint64 end_time = 8; - // MarketIds of the markets of which we want to get trades - repeated string market_ids = 9; - // Subaccount ids of traders we want to get trades - repeated string subaccount_ids = 10; - repeated string execution_types = 11; - // Filter by the tradeId of the trade - string trade_id = 12; - // Account address - string account_address = 13; - // Client order ID - string cid = 14; -} - -message TradesV2Response { - // Trades of a Spot Market - repeated SpotTrade trades = 1; - // Paging indicates pages response is on - Paging paging = 2; -} - -message StreamTradesV2Request { - // MarketId of the market's orderbook we want to fetch - string market_id = 1; - // Filter by execution side of the trade - string execution_side = 2; - // Filter by direction the trade - string direction = 3; - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 4; - // Skip will skip the first n item from the item result - uint64 skip = 5; - // Limit is used to specify the maximum number of items to be returned. - sint32 limit = 6; - // The starting timestamp in UNIX milliseconds that the trades must be equal or -// older than - sint64 start_time = 7; - // The ending timestamp in UNIX milliseconds that the trades must be equal or -// younger than - sint64 end_time = 8; - // MarketIds of the markets of which we want to get trades - repeated string market_ids = 9; - // Subaccount ids of traders we want to get trades - repeated string subaccount_ids = 10; - repeated string execution_types = 11; - // Filter by the tradeId of the trade - string trade_id = 12; - // Account address - string account_address = 13; - // Client order ID - string cid = 14; -} - -message StreamTradesV2Response { - // New spot market trade - SpotTrade trade = 1; - // Executed trades update type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message SubaccountOrdersListRequest { - // subaccount ID to filter orders for specific subaccount - string subaccount_id = 1; - // Market ID to filter orders for specific market - string market_id = 2; - // Skip will skip the first n item from the result - uint64 skip = 3; - // Limit is used to specify the maximum number of items to be returned - sint32 limit = 4; -} - -message SubaccountOrdersListResponse { - repeated SpotLimitOrder orders = 1; - Paging paging = 2; -} - -message SubaccountTradesListRequest { - // SubaccountId of the trader we want to get the trades from - string subaccount_id = 1; - // Filter trades by market ID - string market_id = 2; - // Filter by execution type of trades - string execution_type = 3; - // Filter by direction trades - string direction = 4; - // Skip will skip the first n item from the result - uint64 skip = 5; - // Limit is used to specify the maximum number of items to be returned - sint32 limit = 6; -} - -message SubaccountTradesListResponse { - // List of spot market trades - repeated SpotTrade trades = 1; -} - -message OrdersHistoryRequest { - // subaccount ID to filter orders for specific subaccount - string subaccount_id = 1; - // Market ID to filter orders for specific market - string market_id = 2; - // Skip will skip the first n item from the result - uint64 skip = 3; - // Limit is used to specify the maximum number of items to be returned - sint32 limit = 4; - // filter by order types - repeated string order_types = 5; - // order side filter - string direction = 6; - // Search for orders which createdAt >= startTime, time in millisecond - sint64 start_time = 7; - // Search for orders which createdAt <= endTime, time in millisecond - sint64 end_time = 8; - // Filter by order state - string state = 9; - repeated string execution_types = 10; - repeated string market_ids = 11; - // TradeId of the order we want to fetch - string trade_id = 12; - // Return only orders for active markets - bool active_markets_only = 13; - // Client order ID - string cid = 14; -} - -message OrdersHistoryResponse { - // List of history spot orders - repeated SpotOrderHistory orders = 1; - Paging paging = 2; -} - -message SpotOrderHistory { - // Hash of the order - string order_hash = 1; - // Spot Market ID is keccak265(baseDenom + quoteDenom) - string market_id = 2; - // active state of the order - bool is_active = 3; - // The subaccountId that this order belongs to - string subaccount_id = 4; - // The execution type - string execution_type = 5; - // The side of the order - string order_type = 6; - // Price of the order - string price = 7; - // Trigger price - string trigger_price = 8; - // Quantity of the order - string quantity = 9; - // Filled amount - string filled_quantity = 10; - // Order state - string state = 11; - // Order committed timestamp in UNIX millis. - sint64 created_at = 12; - // Order updated timestamp in UNIX millis. - sint64 updated_at = 13; - // Order direction (order side) - string direction = 14; - // Transaction Hash where order is created. Not all orders have this field - string tx_hash = 15; - // Custom client order ID - string cid = 16; -} - -message StreamOrdersHistoryRequest { - // subaccount ID to filter orders for specific subaccount - string subaccount_id = 1; - // Market ID to filter orders for specific market - string market_id = 2; - // filter by order types - repeated string order_types = 3; - // order side filter - string direction = 4; - // Filter by order state - string state = 5; - repeated string execution_types = 6; -} - -message StreamOrdersHistoryResponse { - // Updated order - SpotOrderHistory order = 1; - // Order update type - string operation_type = 2; - // Operation timestamp in UNIX millis. - sint64 timestamp = 3; -} - -message AtomicSwapHistoryRequest { - // sender of the atomic swap - string address = 1; - // atomic swap contract address to filter - string contract_address = 2; - // skip some swaps - sint32 skip = 3; - // limit number of swaps returned by this API - sint32 limit = 4; - // lowerbound of atomic swap index - sint32 from_number = 5; - // upperbound of atomic swap index - sint32 to_number = 6; -} - -message AtomicSwapHistoryResponse { - // Paging indicates total number of records with this filter - Paging paging = 1; - // swap data - repeated AtomicSwap data = 2; -} - -message AtomicSwap { - // executor of the swap - string sender = 1; - // swap route - string route = 2; - // source coin - Coin source_coin = 3; - // destination received coin - Coin dest_coin = 4; - // fees of each steps in route - repeated Coin fees = 5; - // contract address that executes to make this swap - string contract_address = 6; - // Numerical index by sender to use in pagination from_number and to_number - sint32 index_by_sender = 7; - // Numerical index by sender + acontract to use in pagination from_number and -// to_number, that support contract filter - sint32 index_by_sender_contract = 8; - // transaction hash of the swap - string tx_hash = 9; - // transaction timestamp of the swap - sint64 executed_at = 10; - // Refunded amount of the swap - string refund_amount = 11; -} - -message Coin { - // Denom of the coin - string denom = 1; - string amount = 2; -} diff --git a/exchange/trading_rpc/pb/goadesign_goagen_injective_trading_rpc.pb.go b/exchange/trading_rpc/pb/goadesign_goagen_injective_trading_rpc.pb.go index fa06c65a..f3726468 100644 --- a/exchange/trading_rpc/pb/goadesign_goagen_injective_trading_rpc.pb.go +++ b/exchange/trading_rpc/pb/goadesign_goagen_injective_trading_rpc.pb.go @@ -8,7 +8,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 -// protoc v4.25.3 +// protoc v4.24.4 // source: goadesign_goagen_injective_trading_rpc.proto package injective_trading_rpcpb @@ -53,6 +53,16 @@ type ListTradingStrategiesRequest struct { StrategyType []string `protobuf:"bytes,10,rep,name=strategy_type,json=strategyType,proto3" json:"strategy_type,omitempty"` // Filter by market type MarketType string `protobuf:"bytes,11,opt,name=market_type,json=marketType,proto3" json:"market_type,omitempty"` + // The last executed timestamp in UNIX milliseconds for the last executed time + // of the trading strategy + LastExecutedTime int64 `protobuf:"zigzag64,12,opt,name=last_executed_time,json=lastExecutedTime,proto3" json:"last_executed_time,omitempty"` + // Include TVL in the response + WithTvl bool `protobuf:"varint,13,opt,name=with_tvl,json=withTvl,proto3" json:"with_tvl,omitempty"` + // Indicates whether the trading strategy is a trailing strategy + IsTrailingStrategy bool `protobuf:"varint,14,opt,name=is_trailing_strategy,json=isTrailingStrategy,proto3" json:"is_trailing_strategy,omitempty"` + // Indicates whether the trading strategy performance should be included in the + // response + WithPerformance bool `protobuf:"varint,15,opt,name=with_performance,json=withPerformance,proto3" json:"with_performance,omitempty"` } func (x *ListTradingStrategiesRequest) Reset() { @@ -164,6 +174,34 @@ func (x *ListTradingStrategiesRequest) GetMarketType() string { return "" } +func (x *ListTradingStrategiesRequest) GetLastExecutedTime() int64 { + if x != nil { + return x.LastExecutedTime + } + return 0 +} + +func (x *ListTradingStrategiesRequest) GetWithTvl() bool { + if x != nil { + return x.WithTvl + } + return false +} + +func (x *ListTradingStrategiesRequest) GetIsTrailingStrategy() bool { + if x != nil { + return x.IsTrailingStrategy + } + return false +} + +func (x *ListTradingStrategiesRequest) GetWithPerformance() bool { + if x != nil { + return x.WithPerformance + } + return false +} + type ListTradingStrategiesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -291,6 +329,40 @@ type TradingStrategy struct { ContractName string `protobuf:"bytes,32,opt,name=contract_name,json=contractName,proto3" json:"contract_name,omitempty"` // Type of the market MarketType string `protobuf:"bytes,33,opt,name=market_type,json=marketType,proto3" json:"market_type,omitempty"` + // lastExecutedAt timestamp in UNIX millis. + LastExecutedAt int64 `protobuf:"zigzag64,34,opt,name=last_executed_at,json=lastExecutedAt,proto3" json:"last_executed_at,omitempty"` + // trailing up price + TrailUpPrice string `protobuf:"bytes,35,opt,name=trail_up_price,json=trailUpPrice,proto3" json:"trail_up_price,omitempty"` + // trailing down price + TrailDownPrice string `protobuf:"bytes,36,opt,name=trail_down_price,json=trailDownPrice,proto3" json:"trail_down_price,omitempty"` + // trailing up counter + TrailUpCounter int64 `protobuf:"zigzag64,37,opt,name=trail_up_counter,json=trailUpCounter,proto3" json:"trail_up_counter,omitempty"` + // trailing down counter + TrailDownCounter int64 `protobuf:"zigzag64,38,opt,name=trail_down_counter,json=trailDownCounter,proto3" json:"trail_down_counter,omitempty"` + // TVL of the trading strategy + Tvl string `protobuf:"bytes,39,opt,name=tvl,proto3" json:"tvl,omitempty"` + // PnL of the trading strategy + Pnl string `protobuf:"bytes,40,opt,name=pnl,proto3" json:"pnl,omitempty"` + // PnL percentage of the trading strategy + PnlPerc string `protobuf:"bytes,41,opt,name=pnl_perc,json=pnlPerc,proto3" json:"pnl_perc,omitempty"` + // pnlUpdatedAt timestamp in UNIX millis. + PnlUpdatedAt int64 `protobuf:"zigzag64,42,opt,name=pnl_updated_at,json=pnlUpdatedAt,proto3" json:"pnl_updated_at,omitempty"` + // Indicates the performance of the trading strategy + Performance string `protobuf:"bytes,43,opt,name=performance,proto3" json:"performance,omitempty"` + // Return on investment of the trading strategy + Roi string `protobuf:"bytes,44,opt,name=roi,proto3" json:"roi,omitempty"` + // Initial base price of the trading strategy + InitialBasePrice string `protobuf:"bytes,45,opt,name=initial_base_price,json=initialBasePrice,proto3" json:"initial_base_price,omitempty"` + // Initial quote price of the trading strategy + InitialQuotePrice string `protobuf:"bytes,46,opt,name=initial_quote_price,json=initialQuotePrice,proto3" json:"initial_quote_price,omitempty"` + // Current base price of the trading strategy + CurrentBasePrice string `protobuf:"bytes,47,opt,name=current_base_price,json=currentBasePrice,proto3" json:"current_base_price,omitempty"` + // Current quote price of the trading strategy + CurrentQuotePrice string `protobuf:"bytes,48,opt,name=current_quote_price,json=currentQuotePrice,proto3" json:"current_quote_price,omitempty"` + // Final base price of the trading strategy + FinalBasePrice string `protobuf:"bytes,49,opt,name=final_base_price,json=finalBasePrice,proto3" json:"final_base_price,omitempty"` + // Final quote price of the trading strategy + FinalQuotePrice string `protobuf:"bytes,50,opt,name=final_quote_price,json=finalQuotePrice,proto3" json:"final_quote_price,omitempty"` } func (x *TradingStrategy) Reset() { @@ -556,6 +628,125 @@ func (x *TradingStrategy) GetMarketType() string { return "" } +func (x *TradingStrategy) GetLastExecutedAt() int64 { + if x != nil { + return x.LastExecutedAt + } + return 0 +} + +func (x *TradingStrategy) GetTrailUpPrice() string { + if x != nil { + return x.TrailUpPrice + } + return "" +} + +func (x *TradingStrategy) GetTrailDownPrice() string { + if x != nil { + return x.TrailDownPrice + } + return "" +} + +func (x *TradingStrategy) GetTrailUpCounter() int64 { + if x != nil { + return x.TrailUpCounter + } + return 0 +} + +func (x *TradingStrategy) GetTrailDownCounter() int64 { + if x != nil { + return x.TrailDownCounter + } + return 0 +} + +func (x *TradingStrategy) GetTvl() string { + if x != nil { + return x.Tvl + } + return "" +} + +func (x *TradingStrategy) GetPnl() string { + if x != nil { + return x.Pnl + } + return "" +} + +func (x *TradingStrategy) GetPnlPerc() string { + if x != nil { + return x.PnlPerc + } + return "" +} + +func (x *TradingStrategy) GetPnlUpdatedAt() int64 { + if x != nil { + return x.PnlUpdatedAt + } + return 0 +} + +func (x *TradingStrategy) GetPerformance() string { + if x != nil { + return x.Performance + } + return "" +} + +func (x *TradingStrategy) GetRoi() string { + if x != nil { + return x.Roi + } + return "" +} + +func (x *TradingStrategy) GetInitialBasePrice() string { + if x != nil { + return x.InitialBasePrice + } + return "" +} + +func (x *TradingStrategy) GetInitialQuotePrice() string { + if x != nil { + return x.InitialQuotePrice + } + return "" +} + +func (x *TradingStrategy) GetCurrentBasePrice() string { + if x != nil { + return x.CurrentBasePrice + } + return "" +} + +func (x *TradingStrategy) GetCurrentQuotePrice() string { + if x != nil { + return x.CurrentQuotePrice + } + return "" +} + +func (x *TradingStrategy) GetFinalBasePrice() string { + if x != nil { + return x.FinalBasePrice + } + return "" +} + +func (x *TradingStrategy) GetFinalQuotePrice() string { + if x != nil { + return x.FinalQuotePrice + } + return "" +} + type ExitConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -698,6 +889,176 @@ func (x *Paging) GetNext() []string { return nil } +type GetTradingStatsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *GetTradingStatsRequest) Reset() { + *x = GetTradingStatsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_injective_trading_rpc_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetTradingStatsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetTradingStatsRequest) ProtoMessage() {} + +func (x *GetTradingStatsRequest) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_injective_trading_rpc_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 GetTradingStatsRequest.ProtoReflect.Descriptor instead. +func (*GetTradingStatsRequest) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_injective_trading_rpc_proto_rawDescGZIP(), []int{5} +} + +type GetTradingStatsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Total of unique active trading strategies + ActiveTradingStrategies uint64 `protobuf:"varint,1,opt,name=active_trading_strategies,json=activeTradingStrategies,proto3" json:"active_trading_strategies,omitempty"` + // Total number of created trading strategies + TotalTradingStrategiesCreated uint64 `protobuf:"varint,2,opt,name=total_trading_strategies_created,json=totalTradingStrategiesCreated,proto3" json:"total_trading_strategies_created,omitempty"` + // Total TVL of all active trading strategies + TotalTvl string `protobuf:"bytes,3,opt,name=total_tvl,json=totalTvl,proto3" json:"total_tvl,omitempty"` + // Market stats + Markets []*Market `protobuf:"bytes,4,rep,name=markets,proto3" json:"markets,omitempty"` +} + +func (x *GetTradingStatsResponse) Reset() { + *x = GetTradingStatsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_injective_trading_rpc_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetTradingStatsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetTradingStatsResponse) ProtoMessage() {} + +func (x *GetTradingStatsResponse) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_injective_trading_rpc_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetTradingStatsResponse.ProtoReflect.Descriptor instead. +func (*GetTradingStatsResponse) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_injective_trading_rpc_proto_rawDescGZIP(), []int{6} +} + +func (x *GetTradingStatsResponse) GetActiveTradingStrategies() uint64 { + if x != nil { + return x.ActiveTradingStrategies + } + return 0 +} + +func (x *GetTradingStatsResponse) GetTotalTradingStrategiesCreated() uint64 { + if x != nil { + return x.TotalTradingStrategiesCreated + } + return 0 +} + +func (x *GetTradingStatsResponse) GetTotalTvl() string { + if x != nil { + return x.TotalTvl + } + return "" +} + +func (x *GetTradingStatsResponse) GetMarkets() []*Market { + if x != nil { + return x.Markets + } + return nil +} + +type Market struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // MarketId of the trading strategy + MarketId string `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"` + // Total of unique active trading strategies + ActiveTradingStrategies uint64 `protobuf:"varint,2,opt,name=active_trading_strategies,json=activeTradingStrategies,proto3" json:"active_trading_strategies,omitempty"` +} + +func (x *Market) Reset() { + *x = Market{} + if protoimpl.UnsafeEnabled { + mi := &file_goadesign_goagen_injective_trading_rpc_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Market) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Market) ProtoMessage() {} + +func (x *Market) ProtoReflect() protoreflect.Message { + mi := &file_goadesign_goagen_injective_trading_rpc_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Market.ProtoReflect.Descriptor instead. +func (*Market) Descriptor() ([]byte, []int) { + return file_goadesign_goagen_injective_trading_rpc_proto_rawDescGZIP(), []int{7} +} + +func (x *Market) GetMarketId() string { + if x != nil { + return x.MarketId + } + return "" +} + +func (x *Market) GetActiveTradingStrategies() uint64 { + if x != nil { + return x.ActiveTradingStrategies + } + return 0 +} + var File_goadesign_goagen_injective_trading_rpc_proto protoreflect.FileDescriptor var file_goadesign_goagen_injective_trading_rpc_proto_rawDesc = []byte{ @@ -705,7 +1066,7 @@ var file_goadesign_goagen_injective_trading_rpc_proto_rawDesc = []byte{ 0x65, 0x6e, 0x5f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x15, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, - 0x67, 0x5f, 0x72, 0x70, 0x63, 0x22, 0xf6, 0x02, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x72, + 0x67, 0x5f, 0x72, 0x70, 0x63, 0x22, 0x9c, 0x04, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, @@ -728,128 +1089,209 @@ var file_goadesign_goagen_injective_trading_rpc_proto_rawDesc = []byte{ 0x74, 0x65, 0x67, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x9e, - 0x01, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, - 0x72, 0x61, 0x74, 0x65, 0x67, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x46, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x69, 0x65, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, - 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x52, 0x0a, 0x73, 0x74, - 0x72, 0x61, 0x74, 0x65, 0x67, 0x69, 0x65, 0x73, 0x12, 0x35, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x70, 0x63, - 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x22, - 0xd9, 0x0a, 0x0a, 0x0f, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, - 0x65, 0x67, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, - 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, - 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, - 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, - 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, - 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x69, - 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, - 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x61, 0x73, 0x65, - 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x62, 0x61, 0x73, 0x65, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x25, 0x0a, - 0x0e, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, - 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x51, 0x75, 0x61, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x62, 0x6f, - 0x75, 0x6e, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6c, 0x6f, 0x77, 0x65, 0x72, - 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x75, 0x70, 0x70, 0x65, 0x72, 0x5f, 0x62, - 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, 0x70, 0x70, 0x65, - 0x72, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x6c, - 0x6f, 0x73, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x6f, 0x70, 0x4c, - 0x6f, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x6b, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x66, - 0x69, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x61, 0x6b, 0x65, 0x50, 0x72, - 0x6f, 0x66, 0x69, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x66, 0x65, 0x65, - 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x77, 0x61, 0x70, 0x46, 0x65, 0x65, 0x12, - 0x21, 0x0a, 0x0c, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x18, - 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x62, 0x61, 0x73, 0x65, 0x44, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x5f, 0x64, 0x65, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x71, 0x75, 0x6f, 0x74, 0x65, - 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x72, 0x6b, 0x65, - 0x74, 0x5f, 0x6d, 0x69, 0x64, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0e, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x4d, 0x69, 0x64, 0x50, 0x72, 0x69, 0x63, - 0x65, 0x12, 0x3e, 0x0a, 0x1b, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x19, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x12, 0x3c, 0x0a, 0x1a, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, - 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x18, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x73, 0x65, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, - 0x31, 0x0a, 0x15, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x6f, 0x66, 0x5f, 0x67, 0x72, 0x69, - 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, - 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x47, 0x72, 0x69, 0x64, 0x4c, 0x65, 0x76, 0x65, - 0x6c, 0x73, 0x12, 0x3c, 0x0a, 0x1b, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x5f, 0x65, 0x78, 0x69, - 0x74, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, - 0x79, 0x18, 0x18, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x45, - 0x78, 0x69, 0x74, 0x57, 0x69, 0x74, 0x68, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x4f, 0x6e, 0x6c, 0x79, - 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, - 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x61, 0x73, 0x6f, - 0x6e, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x65, 0x78, 0x65, - 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x70, 0x65, - 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, - 0x0a, 0x0e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x48, - 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, - 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0d, 0x72, - 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1d, 0x0a, 0x0a, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x12, - 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x12, 0x52, - 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x78, - 0x69, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, - 0x78, 0x69, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x4b, 0x0a, 0x10, 0x73, 0x74, 0x6f, 0x70, 0x5f, - 0x6c, 0x6f, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x1c, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x72, - 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x78, 0x69, 0x74, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x73, 0x74, 0x6f, 0x70, 0x4c, 0x6f, 0x73, 0x73, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4f, 0x0a, 0x12, 0x74, 0x61, 0x6b, 0x65, 0x5f, 0x70, 0x72, 0x6f, - 0x66, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, - 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x78, 0x69, 0x74, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x52, 0x10, 0x74, 0x61, 0x6b, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, - 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x74, - 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x1f, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x56, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, - 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x20, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, - 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x21, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x48, 0x0a, 0x0a, 0x45, - 0x78, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x78, 0x69, - 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x78, - 0x69, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x69, 0x74, 0x5f, 0x70, - 0x72, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x78, 0x69, 0x74, - 0x50, 0x72, 0x69, 0x63, 0x65, 0x22, 0x86, 0x01, 0x0a, 0x06, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, - 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x12, 0x52, - 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x11, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x6f, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x5f, 0x62, 0x79, 0x5f, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x12, 0x52, 0x11, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x79, - 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x65, - 0x78, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x65, 0x78, 0x74, 0x32, 0x9a, - 0x01, 0x0a, 0x13, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, - 0x69, 0x6e, 0x67, 0x52, 0x50, 0x43, 0x12, 0x82, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x54, - 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x69, 0x65, 0x73, - 0x12, 0x33, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, - 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x72, 0x61, + 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2c, + 0x0a, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x12, 0x52, 0x10, 0x6c, 0x61, 0x73, 0x74, + 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, + 0x77, 0x69, 0x74, 0x68, 0x5f, 0x74, 0x76, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, + 0x77, 0x69, 0x74, 0x68, 0x54, 0x76, 0x6c, 0x12, 0x30, 0x0a, 0x14, 0x69, 0x73, 0x5f, 0x74, 0x72, + 0x61, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x69, 0x73, 0x54, 0x72, 0x61, 0x69, 0x6c, 0x69, 0x6e, + 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x77, 0x69, 0x74, + 0x68, 0x5f, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0f, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0f, 0x77, 0x69, 0x74, 0x68, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x6e, 0x63, 0x65, 0x22, 0x9e, 0x01, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x69, 0x65, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, - 0x73, 0x74, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, - 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x1a, 0x5a, 0x18, 0x2f, - 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, - 0x67, 0x5f, 0x72, 0x70, 0x63, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, + 0x67, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, + 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, + 0x67, 0x79, 0x52, 0x0a, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x69, 0x65, 0x73, 0x12, 0x35, + 0x0a, 0x06, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, + 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, + 0x6e, 0x67, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, + 0x61, 0x67, 0x69, 0x6e, 0x67, 0x22, 0xd6, 0x0f, 0x0a, 0x0f, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, + 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, + 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, + 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, + 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, + 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, + 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x23, + 0x0a, 0x0d, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x62, 0x61, 0x73, 0x65, 0x51, 0x75, 0x61, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x5f, 0x71, 0x75, 0x61, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x71, 0x75, 0x6f, + 0x74, 0x65, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, + 0x77, 0x65, 0x72, 0x5f, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x75, + 0x70, 0x70, 0x65, 0x72, 0x5f, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x75, 0x70, 0x70, 0x65, 0x72, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x1b, 0x0a, 0x09, + 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x6c, 0x6f, 0x73, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x73, 0x74, 0x6f, 0x70, 0x4c, 0x6f, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x6b, + 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x74, 0x61, 0x6b, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x77, + 0x61, 0x70, 0x5f, 0x66, 0x65, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x77, + 0x61, 0x70, 0x46, 0x65, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x65, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x62, 0x61, 0x73, + 0x65, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x71, 0x75, 0x6f, 0x74, + 0x65, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x28, 0x0a, + 0x10, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x6d, 0x69, 0x64, 0x5f, 0x70, 0x72, 0x69, 0x63, + 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x4d, + 0x69, 0x64, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x3e, 0x0a, 0x1b, 0x73, 0x75, 0x62, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x5f, 0x71, 0x75, + 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x19, 0x73, 0x75, + 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x51, + 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x3c, 0x0a, 0x1a, 0x73, 0x75, 0x62, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x71, 0x75, 0x61, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x18, 0x73, 0x75, 0x62, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x73, 0x65, 0x51, 0x75, 0x61, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x31, 0x0a, 0x15, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x5f, + 0x6f, 0x66, 0x5f, 0x67, 0x72, 0x69, 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x18, 0x17, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x47, 0x72, + 0x69, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x12, 0x3c, 0x0a, 0x1b, 0x73, 0x68, 0x6f, 0x75, + 0x6c, 0x64, 0x5f, 0x65, 0x78, 0x69, 0x74, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x71, 0x75, 0x6f, + 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x18, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x73, + 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x45, 0x78, 0x69, 0x74, 0x57, 0x69, 0x74, 0x68, 0x51, 0x75, 0x6f, + 0x74, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x72, + 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x6f, + 0x70, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x65, 0x6e, 0x64, 0x69, + 0x6e, 0x67, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x1a, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x10, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, + 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0d, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x72, + 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0e, 0x20, + 0x01, 0x28, 0x12, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x48, 0x65, 0x69, 0x67, + 0x68, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, + 0x18, 0x0f, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, + 0x10, 0x20, 0x01, 0x28, 0x12, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x78, 0x69, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x1b, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x78, 0x69, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x4b, 0x0a, + 0x10, 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x6c, 0x6f, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x70, 0x63, 0x2e, + 0x45, 0x78, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x73, 0x74, 0x6f, 0x70, + 0x4c, 0x6f, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4f, 0x0a, 0x12, 0x74, 0x61, + 0x6b, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x45, + 0x78, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x10, 0x74, 0x61, 0x6b, 0x65, 0x50, + 0x72, 0x6f, 0x66, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x73, + 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x1e, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, + 0x72, 0x61, 0x63, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x63, + 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x20, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x21, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, + 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x22, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0e, 0x6c, 0x61, 0x73, + 0x74, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x74, + 0x72, 0x61, 0x69, 0x6c, 0x5f, 0x75, 0x70, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x23, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x69, 0x6c, 0x55, 0x70, 0x50, 0x72, 0x69, 0x63, + 0x65, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x72, 0x61, 0x69, 0x6c, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x5f, + 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x24, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x72, 0x61, + 0x69, 0x6c, 0x44, 0x6f, 0x77, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x74, + 0x72, 0x61, 0x69, 0x6c, 0x5f, 0x75, 0x70, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x18, + 0x25, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0e, 0x74, 0x72, 0x61, 0x69, 0x6c, 0x55, 0x70, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x72, 0x61, 0x69, 0x6c, 0x5f, 0x64, + 0x6f, 0x77, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x26, 0x20, 0x01, 0x28, + 0x12, 0x52, 0x10, 0x74, 0x72, 0x61, 0x69, 0x6c, 0x44, 0x6f, 0x77, 0x6e, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x76, 0x6c, 0x18, 0x27, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x74, 0x76, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x6e, 0x6c, 0x18, 0x28, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x70, 0x6e, 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6e, 0x6c, 0x5f, 0x70, + 0x65, 0x72, 0x63, 0x18, 0x29, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6e, 0x6c, 0x50, 0x65, + 0x72, 0x63, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x6e, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x5f, 0x61, 0x74, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0c, 0x70, 0x6e, 0x6c, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, + 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x6f, + 0x69, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x6f, 0x69, 0x12, 0x2c, 0x0a, 0x12, + 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x70, 0x72, 0x69, + 0x63, 0x65, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, + 0x6c, 0x42, 0x61, 0x73, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x69, 0x6e, + 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, + 0x65, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, + 0x51, 0x75, 0x6f, 0x74, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, + 0x18, 0x2f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x42, + 0x61, 0x73, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x75, 0x72, 0x72, + 0x65, 0x6e, 0x74, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, + 0x30, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x51, 0x75, + 0x6f, 0x74, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x69, 0x6e, 0x61, + 0x6c, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x31, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x42, 0x61, 0x73, 0x65, 0x50, 0x72, 0x69, + 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x71, 0x75, 0x6f, 0x74, + 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x32, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x66, + 0x69, 0x6e, 0x61, 0x6c, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x22, 0x48, + 0x0a, 0x0a, 0x45, 0x78, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1b, 0x0a, 0x09, + 0x65, 0x78, 0x69, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x65, 0x78, 0x69, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x69, + 0x74, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, + 0x78, 0x69, 0x74, 0x50, 0x72, 0x69, 0x63, 0x65, 0x22, 0x86, 0x01, 0x0a, 0x06, 0x50, 0x61, 0x67, + 0x69, 0x6e, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x12, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x72, 0x6f, + 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x11, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x0e, 0x0a, + 0x02, 0x74, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x2e, 0x0a, + 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x62, 0x79, 0x5f, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x12, 0x52, 0x11, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x42, 0x79, 0x53, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x65, 0x78, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x65, 0x78, + 0x74, 0x22, 0x18, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xf4, 0x01, 0x0a, 0x17, + 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x19, 0x61, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, + 0x67, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x17, 0x61, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, + 0x69, 0x65, 0x73, 0x12, 0x47, 0x0a, 0x20, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x72, 0x61, + 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x69, 0x65, 0x73, 0x5f, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x1d, 0x74, + 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, + 0x65, 0x67, 0x69, 0x65, 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, + 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x76, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x76, 0x6c, 0x12, 0x37, 0x0a, 0x07, 0x6d, 0x61, 0x72, + 0x6b, 0x65, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x69, 0x6e, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, + 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x52, 0x07, 0x6d, 0x61, 0x72, 0x6b, 0x65, + 0x74, 0x73, 0x22, 0x61, 0x0a, 0x06, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x09, + 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x19, 0x61, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x72, 0x61, + 0x74, 0x65, 0x67, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x17, 0x61, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, + 0x65, 0x67, 0x69, 0x65, 0x73, 0x32, 0x8c, 0x02, 0x0a, 0x13, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x50, 0x43, 0x12, 0x82, 0x01, + 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, + 0x61, 0x74, 0x65, 0x67, 0x69, 0x65, 0x73, 0x12, 0x33, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x70, 0x63, 0x2e, + 0x4c, 0x69, 0x73, 0x74, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, + 0x65, 0x67, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x69, + 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, + 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, + 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x70, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x2d, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, + 0x74, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, + 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x1a, 0x5a, 0x18, 0x2f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x70, 0x63, 0x70, 0x62, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -864,26 +1306,32 @@ func file_goadesign_goagen_injective_trading_rpc_proto_rawDescGZIP() []byte { return file_goadesign_goagen_injective_trading_rpc_proto_rawDescData } -var file_goadesign_goagen_injective_trading_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 5) +var file_goadesign_goagen_injective_trading_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 8) var file_goadesign_goagen_injective_trading_rpc_proto_goTypes = []interface{}{ (*ListTradingStrategiesRequest)(nil), // 0: injective_trading_rpc.ListTradingStrategiesRequest (*ListTradingStrategiesResponse)(nil), // 1: injective_trading_rpc.ListTradingStrategiesResponse (*TradingStrategy)(nil), // 2: injective_trading_rpc.TradingStrategy (*ExitConfig)(nil), // 3: injective_trading_rpc.ExitConfig (*Paging)(nil), // 4: injective_trading_rpc.Paging + (*GetTradingStatsRequest)(nil), // 5: injective_trading_rpc.GetTradingStatsRequest + (*GetTradingStatsResponse)(nil), // 6: injective_trading_rpc.GetTradingStatsResponse + (*Market)(nil), // 7: injective_trading_rpc.Market } var file_goadesign_goagen_injective_trading_rpc_proto_depIdxs = []int32{ 2, // 0: injective_trading_rpc.ListTradingStrategiesResponse.strategies:type_name -> injective_trading_rpc.TradingStrategy 4, // 1: injective_trading_rpc.ListTradingStrategiesResponse.paging:type_name -> injective_trading_rpc.Paging 3, // 2: injective_trading_rpc.TradingStrategy.stop_loss_config:type_name -> injective_trading_rpc.ExitConfig 3, // 3: injective_trading_rpc.TradingStrategy.take_profit_config:type_name -> injective_trading_rpc.ExitConfig - 0, // 4: injective_trading_rpc.InjectiveTradingRPC.ListTradingStrategies:input_type -> injective_trading_rpc.ListTradingStrategiesRequest - 1, // 5: injective_trading_rpc.InjectiveTradingRPC.ListTradingStrategies:output_type -> injective_trading_rpc.ListTradingStrategiesResponse - 5, // [5:6] is the sub-list for method output_type - 4, // [4:5] is the sub-list for method input_type - 4, // [4:4] is the sub-list for extension type_name - 4, // [4:4] is the sub-list for extension extendee - 0, // [0:4] is the sub-list for field type_name + 7, // 4: injective_trading_rpc.GetTradingStatsResponse.markets:type_name -> injective_trading_rpc.Market + 0, // 5: injective_trading_rpc.InjectiveTradingRPC.ListTradingStrategies:input_type -> injective_trading_rpc.ListTradingStrategiesRequest + 5, // 6: injective_trading_rpc.InjectiveTradingRPC.GetTradingStats:input_type -> injective_trading_rpc.GetTradingStatsRequest + 1, // 7: injective_trading_rpc.InjectiveTradingRPC.ListTradingStrategies:output_type -> injective_trading_rpc.ListTradingStrategiesResponse + 6, // 8: injective_trading_rpc.InjectiveTradingRPC.GetTradingStats:output_type -> injective_trading_rpc.GetTradingStatsResponse + 7, // [7:9] is the sub-list for method output_type + 5, // [5:7] is the sub-list for method input_type + 5, // [5:5] is the sub-list for extension type_name + 5, // [5:5] is the sub-list for extension extendee + 0, // [0:5] is the sub-list for field type_name } func init() { file_goadesign_goagen_injective_trading_rpc_proto_init() } @@ -952,6 +1400,42 @@ func file_goadesign_goagen_injective_trading_rpc_proto_init() { return nil } } + file_goadesign_goagen_injective_trading_rpc_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetTradingStatsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_injective_trading_rpc_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetTradingStatsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_goadesign_goagen_injective_trading_rpc_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Market); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -959,7 +1443,7 @@ func file_goadesign_goagen_injective_trading_rpc_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_goadesign_goagen_injective_trading_rpc_proto_rawDesc, NumEnums: 0, - NumMessages: 5, + NumMessages: 8, NumExtensions: 0, NumServices: 1, }, diff --git a/exchange/trading_rpc/pb/goadesign_goagen_injective_trading_rpc_grpc.pb.go b/exchange/trading_rpc/pb/goadesign_goagen_injective_trading_rpc_grpc.pb.go index ec918fd5..3f34c2e6 100644 --- a/exchange/trading_rpc/pb/goadesign_goagen_injective_trading_rpc_grpc.pb.go +++ b/exchange/trading_rpc/pb/goadesign_goagen_injective_trading_rpc_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.2.0 -// - protoc v4.25.3 +// - protoc v4.24.4 // source: goadesign_goagen_injective_trading_rpc.proto package injective_trading_rpcpb @@ -24,6 +24,8 @@ const _ = grpc.SupportPackageIsVersion7 type InjectiveTradingRPCClient interface { // Lists all trading strategies ListTradingStrategies(ctx context.Context, in *ListTradingStrategiesRequest, opts ...grpc.CallOption) (*ListTradingStrategiesResponse, error) + // GetStats returns global statistics in the last 24hs + GetTradingStats(ctx context.Context, in *GetTradingStatsRequest, opts ...grpc.CallOption) (*GetTradingStatsResponse, error) } type injectiveTradingRPCClient struct { @@ -43,12 +45,23 @@ func (c *injectiveTradingRPCClient) ListTradingStrategies(ctx context.Context, i return out, nil } +func (c *injectiveTradingRPCClient) GetTradingStats(ctx context.Context, in *GetTradingStatsRequest, opts ...grpc.CallOption) (*GetTradingStatsResponse, error) { + out := new(GetTradingStatsResponse) + err := c.cc.Invoke(ctx, "/injective_trading_rpc.InjectiveTradingRPC/GetTradingStats", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // InjectiveTradingRPCServer is the server API for InjectiveTradingRPC service. // All implementations must embed UnimplementedInjectiveTradingRPCServer // for forward compatibility type InjectiveTradingRPCServer interface { // Lists all trading strategies ListTradingStrategies(context.Context, *ListTradingStrategiesRequest) (*ListTradingStrategiesResponse, error) + // GetStats returns global statistics in the last 24hs + GetTradingStats(context.Context, *GetTradingStatsRequest) (*GetTradingStatsResponse, error) mustEmbedUnimplementedInjectiveTradingRPCServer() } @@ -59,6 +72,9 @@ type UnimplementedInjectiveTradingRPCServer struct { func (UnimplementedInjectiveTradingRPCServer) ListTradingStrategies(context.Context, *ListTradingStrategiesRequest) (*ListTradingStrategiesResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ListTradingStrategies not implemented") } +func (UnimplementedInjectiveTradingRPCServer) GetTradingStats(context.Context, *GetTradingStatsRequest) (*GetTradingStatsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetTradingStats not implemented") +} func (UnimplementedInjectiveTradingRPCServer) mustEmbedUnimplementedInjectiveTradingRPCServer() {} // UnsafeInjectiveTradingRPCServer may be embedded to opt out of forward compatibility for this service. @@ -90,6 +106,24 @@ func _InjectiveTradingRPC_ListTradingStrategies_Handler(srv interface{}, ctx con return interceptor(ctx, in, info, handler) } +func _InjectiveTradingRPC_GetTradingStats_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetTradingStatsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(InjectiveTradingRPCServer).GetTradingStats(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/injective_trading_rpc.InjectiveTradingRPC/GetTradingStats", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(InjectiveTradingRPCServer).GetTradingStats(ctx, req.(*GetTradingStatsRequest)) + } + return interceptor(ctx, in, info, handler) +} + // InjectiveTradingRPC_ServiceDesc is the grpc.ServiceDesc for InjectiveTradingRPC service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -101,6 +135,10 @@ var InjectiveTradingRPC_ServiceDesc = grpc.ServiceDesc{ MethodName: "ListTradingStrategies", Handler: _InjectiveTradingRPC_ListTradingStrategies_Handler, }, + { + MethodName: "GetTradingStats", + Handler: _InjectiveTradingRPC_GetTradingStats_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "goadesign_goagen_injective_trading_rpc.proto", diff --git a/exchange/trading_rpc/pb/injective_trading_rpc.pb.gw.go b/exchange/trading_rpc/pb/injective_trading_rpc.pb.gw.go deleted file mode 100644 index 6e6cf424..00000000 --- a/exchange/trading_rpc/pb/injective_trading_rpc.pb.gw.go +++ /dev/null @@ -1,171 +0,0 @@ -// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: injective_trading_rpc.proto - -/* -Package injective_trading_rpcpb is a reverse proxy. - -It translates gRPC into RESTful JSON APIs. -*/ -package injective_trading_rpcpb - -import ( - "context" - "io" - "net/http" - - "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" - "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/grpclog" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/proto" -) - -// Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = metadata.Join - -func request_InjectiveTradingRPC_ListTradingStrategies_0(ctx context.Context, marshaler runtime.Marshaler, client InjectiveTradingRPCClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ListTradingStrategiesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ListTradingStrategies(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_InjectiveTradingRPC_ListTradingStrategies_0(ctx context.Context, marshaler runtime.Marshaler, server InjectiveTradingRPCServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ListTradingStrategiesRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.ListTradingStrategies(ctx, &protoReq) - return msg, metadata, err - -} - -// RegisterInjectiveTradingRPCHandlerServer registers the http handlers for service InjectiveTradingRPC to "mux". -// UnaryRPC :call InjectiveTradingRPCServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterInjectiveTradingRPCHandlerFromEndpoint instead. -func RegisterInjectiveTradingRPCHandlerServer(ctx context.Context, mux *runtime.ServeMux, server InjectiveTradingRPCServer) error { - - mux.Handle("POST", pattern_InjectiveTradingRPC_ListTradingStrategies_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/injective_trading_rpc.InjectiveTradingRPC/ListTradingStrategies", runtime.WithHTTPPathPattern("/injective_trading_rpc.InjectiveTradingRPC/ListTradingStrategies")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_InjectiveTradingRPC_ListTradingStrategies_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveTradingRPC_ListTradingStrategies_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -// RegisterInjectiveTradingRPCHandlerFromEndpoint is same as RegisterInjectiveTradingRPCHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterInjectiveTradingRPCHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterInjectiveTradingRPCHandler(ctx, mux, conn) -} - -// RegisterInjectiveTradingRPCHandler registers the http handlers for service InjectiveTradingRPC to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterInjectiveTradingRPCHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterInjectiveTradingRPCHandlerClient(ctx, mux, NewInjectiveTradingRPCClient(conn)) -} - -// RegisterInjectiveTradingRPCHandlerClient registers the http handlers for service InjectiveTradingRPC -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "InjectiveTradingRPCClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "InjectiveTradingRPCClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "InjectiveTradingRPCClient" to call the correct interceptors. -func RegisterInjectiveTradingRPCHandlerClient(ctx context.Context, mux *runtime.ServeMux, client InjectiveTradingRPCClient) error { - - mux.Handle("POST", pattern_InjectiveTradingRPC_ListTradingStrategies_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/injective_trading_rpc.InjectiveTradingRPC/ListTradingStrategies", runtime.WithHTTPPathPattern("/injective_trading_rpc.InjectiveTradingRPC/ListTradingStrategies")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_InjectiveTradingRPC_ListTradingStrategies_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_InjectiveTradingRPC_ListTradingStrategies_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - return nil -} - -var ( - pattern_InjectiveTradingRPC_ListTradingStrategies_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"injective_trading_rpc.InjectiveTradingRPC", "ListTradingStrategies"}, "")) -) - -var ( - forward_InjectiveTradingRPC_ListTradingStrategies_0 = runtime.ForwardResponseMessage -) diff --git a/exchange/trading_rpc/pb/injective_trading_rpc.proto b/exchange/trading_rpc/pb/injective_trading_rpc.proto deleted file mode 100644 index 18b00922..00000000 --- a/exchange/trading_rpc/pb/injective_trading_rpc.proto +++ /dev/null @@ -1,138 +0,0 @@ -// Code generated with goa v3.7.0, DO NOT EDIT. -// -// InjectiveTradingRPC protocol buffer definition -// -// Command: -// $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../ - -syntax = "proto3"; - -package injective_trading_rpc; - -option go_package = "/injective_trading_rpcpb"; - -// InjectiveTradingStrategiesRPC defined a gRPC service for Injective Trading -// Strategies. -service InjectiveTradingRPC { - // Lists all trading strategies - rpc ListTradingStrategies (ListTradingStrategiesRequest) returns (ListTradingStrategiesResponse); -} - -message ListTradingStrategiesRequest { - string state = 1; - // MarketId of the trading strategy - string market_id = 2; - // subaccount ID to filter by - string subaccount_id = 3; - // Account address - string account_address = 4; - // Indicates whether the trading strategy is pending execution - bool pending_execution = 5; - // The starting timestamp in UNIX milliseconds for the creation time of the -// trading strategy - sint64 start_time = 6; - // The ending timestamp in UNIX milliseconds for the creation time of the -// trading strategy - sint64 end_time = 7; - sint32 limit = 8; - uint64 skip = 9; - // Filter by strategy type - repeated string strategy_type = 10; - // Filter by market type - string market_type = 11; -} - -message ListTradingStrategiesResponse { - // The trading strategies - repeated TradingStrategy strategies = 1; - Paging paging = 2; -} - -message TradingStrategy { - string state = 1; - // MarketId of the trading strategy - string market_id = 2; - // subaccount ID of the trading strategy - string subaccount_id = 3; - // Account address - string account_address = 4; - // Contract address - string contract_address = 5; - // Execution price of the trading strategy - string execution_price = 6; - // Base quantity of the trading strategy - string base_quantity = 7; - // Quote quantity of the trading strategy - string quote_quantity = 20; - // Lower bound of the trading strategy - string lower_bound = 8; - // Upper bound of the trading strategy - string upper_bound = 9; - // Stop loss limit of the trading strategy - string stop_loss = 10; - // Take profit limit of the trading strategy - string take_profit = 11; - // Swap fee of the trading strategy - string swap_fee = 12; - // Base deposit at the time of closing the trading strategy - string base_deposit = 17; - // Quote deposit at the time of closing the trading strategy - string quote_deposit = 18; - // Market mid price at the time of closing the trading strategy - string market_mid_price = 19; - // Subscription quote quantity of the trading strategy - string subscription_quote_quantity = 21; - // Subscription base quantity of the trading strategy - string subscription_base_quantity = 22; - // Number of grid levels of the trading strategy - string number_of_grid_levels = 23; - // Indicates whether the trading strategy should exit with quote only - bool should_exit_with_quote_only = 24; - // Indicates the reason for stopping the trading strategy - string stop_reason = 25; - // Indicates whether the trading strategy is pending execution - bool pending_execution = 26; - // Block height when the strategy was created. - sint64 created_height = 13; - // Block height when the strategy was removed. - sint64 removed_height = 14; - // UpdatedAt timestamp in UNIX millis. - sint64 created_at = 15; - // UpdatedAt timestamp in UNIX millis. - sint64 updated_at = 16; - // Indicate how bot will convert funds (into base or quote or keep as is) after -// strategy ended - string exit_type = 27; - // Exit config for stop loss - ExitConfig stop_loss_config = 28; - // Exit config for take profit - ExitConfig take_profit_config = 29; - // Strategy type: arithmetic, geometric... - string strategy_type = 30; - // Version of the contract - string contract_version = 31; - // Name of the contract - string contract_name = 32; - // Type of the market - string market_type = 33; -} - -message ExitConfig { - // strategy exit type (stopLoss/takeProfit) - string exit_type = 1; - // strategy stopLoss/takeProfit price - string exit_price = 2; -} -// Paging defines the structure for required params for handling pagination -message Paging { - // total number of txs saved in database - sint64 total = 1; - // can be either block height or index num - sint32 from = 2; - // can be either block height or index num - sint32 to = 3; - // count entries by subaccount, serving some places on helix - sint64 count_by_subaccount = 4; - // array of tokens to navigate to the next pages - repeated string next = 5; -} diff --git a/exchange/trading_rpc/pb/injective_trading_rpc_grpc.pb_mock.go b/exchange/trading_rpc/pb/injective_trading_rpc_grpc.pb_mock.go deleted file mode 100644 index 17ef5dbc..00000000 --- a/exchange/trading_rpc/pb/injective_trading_rpc_grpc.pb_mock.go +++ /dev/null @@ -1,141 +0,0 @@ -// Code generated by MockGen. DO NOT EDIT. -// Source: api/gen/grpc/injective_trading_rpc/pb/goadesign_goagen_injective_trading_rpc_grpc.pb.go - -// Package injective_trading_rpcpb is a generated GoMock package. -package injective_trading_rpcpb - -import ( - context "context" - reflect "reflect" - - gomock "github.com/golang/mock/gomock" - grpc "google.golang.org/grpc" -) - -// MockInjectiveTradingRPCClient is a mock of InjectiveTradingRPCClient interface. -type MockInjectiveTradingRPCClient struct { - ctrl *gomock.Controller - recorder *MockInjectiveTradingRPCClientMockRecorder -} - -// MockInjectiveTradingRPCClientMockRecorder is the mock recorder for MockInjectiveTradingRPCClient. -type MockInjectiveTradingRPCClientMockRecorder struct { - mock *MockInjectiveTradingRPCClient -} - -// NewMockInjectiveTradingRPCClient creates a new mock instance. -func NewMockInjectiveTradingRPCClient(ctrl *gomock.Controller) *MockInjectiveTradingRPCClient { - mock := &MockInjectiveTradingRPCClient{ctrl: ctrl} - mock.recorder = &MockInjectiveTradingRPCClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockInjectiveTradingRPCClient) EXPECT() *MockInjectiveTradingRPCClientMockRecorder { - return m.recorder -} - -// ListTradingStrategies mocks base method. -func (m *MockInjectiveTradingRPCClient) ListTradingStrategies(ctx context.Context, in *ListTradingStrategiesRequest, opts ...grpc.CallOption) (*ListTradingStrategiesResponse, error) { - m.ctrl.T.Helper() - varargs := []interface{}{ctx, in} - for _, a := range opts { - varargs = append(varargs, a) - } - ret := m.ctrl.Call(m, "ListTradingStrategies", varargs...) - ret0, _ := ret[0].(*ListTradingStrategiesResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ListTradingStrategies indicates an expected call of ListTradingStrategies. -func (mr *MockInjectiveTradingRPCClientMockRecorder) ListTradingStrategies(ctx, in interface{}, opts ...interface{}) *gomock.Call { - mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{ctx, in}, opts...) - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListTradingStrategies", reflect.TypeOf((*MockInjectiveTradingRPCClient)(nil).ListTradingStrategies), varargs...) -} - -// MockInjectiveTradingRPCServer is a mock of InjectiveTradingRPCServer interface. -type MockInjectiveTradingRPCServer struct { - ctrl *gomock.Controller - recorder *MockInjectiveTradingRPCServerMockRecorder -} - -// MockInjectiveTradingRPCServerMockRecorder is the mock recorder for MockInjectiveTradingRPCServer. -type MockInjectiveTradingRPCServerMockRecorder struct { - mock *MockInjectiveTradingRPCServer -} - -// NewMockInjectiveTradingRPCServer creates a new mock instance. -func NewMockInjectiveTradingRPCServer(ctrl *gomock.Controller) *MockInjectiveTradingRPCServer { - mock := &MockInjectiveTradingRPCServer{ctrl: ctrl} - mock.recorder = &MockInjectiveTradingRPCServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockInjectiveTradingRPCServer) EXPECT() *MockInjectiveTradingRPCServerMockRecorder { - return m.recorder -} - -// ListTradingStrategies mocks base method. -func (m *MockInjectiveTradingRPCServer) ListTradingStrategies(arg0 context.Context, arg1 *ListTradingStrategiesRequest) (*ListTradingStrategiesResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ListTradingStrategies", arg0, arg1) - ret0, _ := ret[0].(*ListTradingStrategiesResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ListTradingStrategies indicates an expected call of ListTradingStrategies. -func (mr *MockInjectiveTradingRPCServerMockRecorder) ListTradingStrategies(arg0, arg1 interface{}) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListTradingStrategies", reflect.TypeOf((*MockInjectiveTradingRPCServer)(nil).ListTradingStrategies), arg0, arg1) -} - -// mustEmbedUnimplementedInjectiveTradingRPCServer mocks base method. -func (m *MockInjectiveTradingRPCServer) mustEmbedUnimplementedInjectiveTradingRPCServer() { - m.ctrl.T.Helper() - m.ctrl.Call(m, "mustEmbedUnimplementedInjectiveTradingRPCServer") -} - -// mustEmbedUnimplementedInjectiveTradingRPCServer indicates an expected call of mustEmbedUnimplementedInjectiveTradingRPCServer. -func (mr *MockInjectiveTradingRPCServerMockRecorder) mustEmbedUnimplementedInjectiveTradingRPCServer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "mustEmbedUnimplementedInjectiveTradingRPCServer", reflect.TypeOf((*MockInjectiveTradingRPCServer)(nil).mustEmbedUnimplementedInjectiveTradingRPCServer)) -} - -// MockUnsafeInjectiveTradingRPCServer is a mock of UnsafeInjectiveTradingRPCServer interface. -type MockUnsafeInjectiveTradingRPCServer struct { - ctrl *gomock.Controller - recorder *MockUnsafeInjectiveTradingRPCServerMockRecorder -} - -// MockUnsafeInjectiveTradingRPCServerMockRecorder is the mock recorder for MockUnsafeInjectiveTradingRPCServer. -type MockUnsafeInjectiveTradingRPCServerMockRecorder struct { - mock *MockUnsafeInjectiveTradingRPCServer -} - -// NewMockUnsafeInjectiveTradingRPCServer creates a new mock instance. -func NewMockUnsafeInjectiveTradingRPCServer(ctrl *gomock.Controller) *MockUnsafeInjectiveTradingRPCServer { - mock := &MockUnsafeInjectiveTradingRPCServer{ctrl: ctrl} - mock.recorder = &MockUnsafeInjectiveTradingRPCServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockUnsafeInjectiveTradingRPCServer) EXPECT() *MockUnsafeInjectiveTradingRPCServerMockRecorder { - return m.recorder -} - -// mustEmbedUnimplementedInjectiveTradingRPCServer mocks base method. -func (m *MockUnsafeInjectiveTradingRPCServer) mustEmbedUnimplementedInjectiveTradingRPCServer() { - m.ctrl.T.Helper() - m.ctrl.Call(m, "mustEmbedUnimplementedInjectiveTradingRPCServer") -} - -// mustEmbedUnimplementedInjectiveTradingRPCServer indicates an expected call of mustEmbedUnimplementedInjectiveTradingRPCServer. -func (mr *MockUnsafeInjectiveTradingRPCServerMockRecorder) mustEmbedUnimplementedInjectiveTradingRPCServer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "mustEmbedUnimplementedInjectiveTradingRPCServer", reflect.TypeOf((*MockUnsafeInjectiveTradingRPCServer)(nil).mustEmbedUnimplementedInjectiveTradingRPCServer)) -} diff --git a/go.mod b/go.mod index 411a8b43..fdab5254 100644 --- a/go.mod +++ b/go.mod @@ -1,29 +1,28 @@ module github.com/InjectiveLabs/sdk-go -go 1.22 +go 1.22.2 + +toolchain go1.22.5 require ( cosmossdk.io/errors v1.0.1 cosmossdk.io/math v1.3.0 - cosmossdk.io/store v1.1.0 - cosmossdk.io/x/evidence v0.1.0 - cosmossdk.io/x/feegrant v0.1.0 - cosmossdk.io/x/tx v0.13.3 - cosmossdk.io/x/upgrade v0.1.1 + cosmossdk.io/x/evidence v0.1.1 + cosmossdk.io/x/feegrant v0.1.1 + cosmossdk.io/x/tx v0.13.4 + cosmossdk.io/x/upgrade v0.1.3 github.com/CosmWasm/wasmd v0.40.2 github.com/InjectiveLabs/suplog v1.3.3 - github.com/bandprotocol/bandchain-packet v0.0.4 + github.com/bandprotocol/bandchain-packet v0.0.0-00010101000000-000000000000 github.com/btcsuite/btcd v0.23.4 github.com/btcsuite/btcd/btcutil v1.1.3 - github.com/cometbft/cometbft v0.38.9 + github.com/cometbft/cometbft v0.38.10 github.com/cosmos/cosmos-proto v1.0.0-beta.5 github.com/cosmos/cosmos-sdk v0.50.7 github.com/cosmos/go-bip39 v1.0.0 github.com/cosmos/gogoproto v1.5.0 - github.com/cosmos/ibc-go/modules/capability v1.0.0 - github.com/cosmos/ibc-go/v8 v8.2.0 + github.com/cosmos/ibc-go/v8 v8.3.2 github.com/ethereum/go-ethereum v1.11.5 - github.com/golang/mock v1.6.0 github.com/golang/protobuf v1.5.4 github.com/google/uuid v1.6.0 github.com/grpc-ecosystem/grpc-gateway/v2 v2.11.3 @@ -33,25 +32,25 @@ require ( github.com/shopspring/decimal v1.2.0 github.com/stretchr/testify v1.9.0 github.com/tyler-smith/go-bip39 v1.1.0 - golang.org/x/crypto v0.24.0 - google.golang.org/genproto/googleapis/api v0.0.0-20240227224415-6ceb2ff114de - google.golang.org/grpc v1.63.2 - google.golang.org/protobuf v1.33.0 - gopkg.in/ini.v1 v1.67.0 - gopkg.in/yaml.v2 v2.4.0 + go.uber.org/mock v0.5.0 + golang.org/x/crypto v0.25.0 + google.golang.org/genproto/googleapis/api v0.0.0-20240318140521-94a12d6c2237 + google.golang.org/grpc v1.64.1 + google.golang.org/protobuf v1.34.2 gotest.tools/v3 v3.5.1 ) require ( cosmossdk.io/api v0.7.5 // indirect cosmossdk.io/collections v0.4.0 // indirect - cosmossdk.io/core v0.11.0 // indirect - cosmossdk.io/depinject v1.0.0-alpha.4 // indirect + cosmossdk.io/core v0.11.1 // indirect + cosmossdk.io/depinject v1.0.0 // indirect cosmossdk.io/log v1.3.1 // indirect + cosmossdk.io/store v1.1.0 // indirect filippo.io/edwards25519 v1.0.0 // indirect github.com/99designs/go-keychain v0.0.0-20191008050251-8e49817e8af4 // indirect github.com/99designs/keyring v1.2.2 // indirect - github.com/CosmWasm/wasmvm/v2 v2.0.0 // indirect + github.com/CosmWasm/wasmvm/v2 v2.1.2 // indirect github.com/DataDog/appsec-internal-go v1.5.0 // indirect github.com/DataDog/datadog-agent/pkg/obfuscate v0.48.0 // indirect github.com/DataDog/datadog-agent/pkg/remoteconfig/state v0.48.1 // indirect @@ -87,7 +86,8 @@ require ( github.com/cosmos/btcutil v1.0.5 // indirect github.com/cosmos/cosmos-db v1.0.2 // indirect github.com/cosmos/gogogateway v1.2.0 // indirect - github.com/cosmos/iavl v1.1.2 // indirect + github.com/cosmos/iavl v1.2.0 // indirect + github.com/cosmos/ibc-go/modules/capability v1.0.0 // indirect github.com/cosmos/ics23/go v0.10.0 // indirect github.com/cosmos/ledger-cosmos-go v0.13.3 // indirect github.com/danieljoos/wincred v1.1.2 // indirect @@ -164,11 +164,11 @@ require ( github.com/oklog/ulid v1.3.1 // indirect github.com/opencontainers/go-digest v1.0.0 // indirect github.com/outcaste-io/ristretto v0.2.3 // indirect - github.com/pelletier/go-toml/v2 v2.1.0 // indirect + github.com/pelletier/go-toml/v2 v2.2.2 // indirect github.com/petermattis/goid v0.0.0-20231207134359-e60b3f734c67 // indirect github.com/philhofer/fwd v1.1.2 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect - github.com/prometheus/client_golang v1.19.0 // indirect + github.com/prometheus/client_golang v1.19.1 // indirect github.com/prometheus/client_model v0.6.1 // indirect github.com/prometheus/common v0.52.2 // indirect github.com/prometheus/procfs v0.13.0 // indirect @@ -176,11 +176,12 @@ require ( github.com/rivo/uniseg v0.4.4 // indirect github.com/rogpeppe/go-internal v1.12.0 // indirect github.com/rs/cors v1.8.3 // indirect - github.com/rs/zerolog v1.32.0 // indirect + github.com/rs/zerolog v1.33.0 // indirect github.com/sagikazarmark/locafero v0.4.0 // indirect github.com/sagikazarmark/slog-shim v0.1.0 // indirect github.com/sasha-s/go-deadlock v0.3.1 // indirect github.com/secure-systems-lab/go-securesystemslib v0.7.0 // indirect + github.com/shamaton/msgpack/v2 v2.2.0 // indirect github.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible // indirect github.com/sirupsen/logrus v1.9.3 // indirect github.com/sourcegraph/conc v0.3.0 // indirect @@ -188,7 +189,7 @@ require ( github.com/spf13/cast v1.6.0 // indirect github.com/spf13/cobra v1.8.0 // indirect github.com/spf13/pflag v1.0.5 // indirect - github.com/spf13/viper v1.18.2 // indirect + github.com/spf13/viper v1.19.0 // indirect github.com/subosito/gotenv v1.6.0 // indirect github.com/syndtr/goleveldb v1.0.1-0.20220721030215-126854af5e6d // indirect github.com/tendermint/go-amino v0.16.0 // indirect @@ -198,7 +199,7 @@ require ( github.com/tklauser/numcpus v0.4.0 // indirect github.com/zondax/hid v0.9.2 // indirect github.com/zondax/ledger-go v0.14.3 // indirect - go.etcd.io/bbolt v1.3.8 // indirect + go.etcd.io/bbolt v1.4.0-alpha.0.0.20240404170359-43604f3112c5 // indirect go.opentelemetry.io/otel v1.24.0 // indirect go.opentelemetry.io/otel/metric v1.24.0 // indirect go.opentelemetry.io/otel/trace v1.24.0 // indirect @@ -206,18 +207,20 @@ require ( go.uber.org/multierr v1.11.0 // indirect golang.org/x/exp v0.0.0-20240613232115-7f521ea00fb8 // indirect golang.org/x/mod v0.18.0 // indirect - golang.org/x/net v0.26.0 // indirect + golang.org/x/net v0.27.0 // indirect golang.org/x/sync v0.7.0 // indirect - golang.org/x/sys v0.21.0 // indirect - golang.org/x/term v0.21.0 // indirect + golang.org/x/sys v0.22.0 // indirect + golang.org/x/term v0.22.0 // indirect golang.org/x/text v0.16.0 // indirect golang.org/x/time v0.5.0 // indirect golang.org/x/tools v0.22.0 // indirect - golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect + golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect google.golang.org/genproto v0.0.0-20240227224415-6ceb2ff114de // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240401170217-c3f982113cda // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240709173604-40e1e62336c5 // indirect gopkg.in/DataDog/dd-trace-go.v1 v1.62.0 // indirect + gopkg.in/ini.v1 v1.67.0 // indirect gopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce // indirect + gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect nhooyr.io/websocket v1.8.6 // indirect pgregory.net/rapid v1.1.0 // indirect @@ -230,11 +233,11 @@ replace ( cosmossdk.io/x/feegrant => github.com/InjectiveLabs/cosmos-sdk/x/feegrant v0.50.6-inj-0 cosmossdk.io/x/upgrade => github.com/InjectiveLabs/cosmos-sdk/x/upgrade v0.50.6-inj-0 - github.com/CosmWasm/wasmd => github.com/InjectiveLabs/wasmd v0.51.0-inj-0 + github.com/CosmWasm/wasmd => github.com/InjectiveLabs/wasmd v0.52.0-inj-0 github.com/bandprotocol/bandchain-packet => github.com/InjectiveLabs/bandchain-packet v0.0.4-inj-1 - github.com/cometbft/cometbft => github.com/InjectiveLabs/cometbft v0.38.10-inj-1 + github.com/cometbft/cometbft => github.com/InjectiveLabs/cometbft v0.38.11-inj-0 - github.com/cosmos/cosmos-sdk => github.com/InjectiveLabs/cosmos-sdk v0.50.8-inj-0 + github.com/cosmos/cosmos-sdk => github.com/InjectiveLabs/cosmos-sdk v0.50.9-inj-2 github.com/cosmos/ibc-apps/modules/ibc-hooks/v8 => github.com/InjectiveLabs/ibc-apps/modules/ibc-hooks/v8 v8.0.0-inj-0 github.com/cosmos/ibc-go/v8 => github.com/InjectiveLabs/ibc-go/v8 v8.3.2-inj-0 github.com/miguelmota/go-ethereum-hdwallet => github.com/InjectiveLabs/go-ethereum-hdwallet v0.1.2 diff --git a/go.sum b/go.sum index a9b25d4b..fd1aaba9 100644 --- a/go.sum +++ b/go.sum @@ -1,35 +1,35 @@ 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.112.0 h1:tpFCD7hpHFlQ8yPwT3x+QeXqc2T6+n6T+hmABHfDUSM= -cloud.google.com/go v0.112.0/go.mod h1:3jEEVwZ/MHU4djK5t5RHuKOA/GbLddgTdVubX1qnPD4= -cloud.google.com/go/compute v1.24.0 h1:phWcR2eWzRJaL/kOiJwfFsPs4BaKq1j6vnpZrc1YlVg= -cloud.google.com/go/compute v1.24.0/go.mod h1:kw1/T+h/+tK2LJK0wiPPx1intgdAM3j/g3hFDlscY40= +cloud.google.com/go v0.112.1 h1:uJSeirPke5UNZHIb4SxfZklVSiWWVqW4oXlETwZziwM= +cloud.google.com/go v0.112.1/go.mod h1:+Vbu+Y1UU+I1rjmzeMOb/8RfkKJK2Gyxi1X6jJCZLo4= +cloud.google.com/go/compute v1.25.1 h1:ZRpHJedLtTpKgr3RV1Fx23NuaAEN1Zfx9hw1u4aJdjU= +cloud.google.com/go/compute v1.25.1/go.mod h1:oopOIR53ly6viBYxaDhBfJwzUAxf1zE//uf3IB011ls= 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/iam v1.1.6 h1:bEa06k05IO4f4uJonbB5iAgKTPpABy1ayxaIZV/GHVc= cloud.google.com/go/iam v1.1.6/go.mod h1:O0zxdPeGBoFdWW3HWmBxJsk0pfvNM/p/qa82rWOGTwI= -cloud.google.com/go/storage v1.36.0 h1:P0mOkAcaJxhCTvAkMhxMfrTKiNcub4YmmPBtlhAyTr8= -cloud.google.com/go/storage v1.36.0/go.mod h1:M6M/3V/D3KpzMTJyPOR/HU6n2Si5QdaXYEsng2xgOs8= +cloud.google.com/go/storage v1.38.0 h1:Az68ZRGlnNTpIBbLjSMIV2BDcwwXYlRlQzis0llkpJg= +cloud.google.com/go/storage v1.38.0/go.mod h1:tlUADB0mAb9BgYls9lq+8MGkfzOXuLrnHXlpHmvFJoY= cosmossdk.io/api v0.7.5 h1:eMPTReoNmGUm8DeiQL9DyM8sYDjEhWzL1+nLbI9DqtQ= cosmossdk.io/api v0.7.5/go.mod h1:IcxpYS5fMemZGqyYtErK7OqvdM0C8kdW3dq8Q/XIG38= cosmossdk.io/client/v2 v2.0.0-beta.1 h1:XkHh1lhrLYIT9zKl7cIOXUXg2hdhtjTPBUfqERNA1/Q= cosmossdk.io/client/v2 v2.0.0-beta.1/go.mod h1:JEUSu9moNZQ4kU3ir1DKD5eU4bllmAexrGWjmb9k8qU= cosmossdk.io/collections v0.4.0 h1:PFmwj2W8szgpD5nOd8GWH6AbYNi1f2J6akWXJ7P5t9s= cosmossdk.io/collections v0.4.0/go.mod h1:oa5lUING2dP+gdDquow+QjlF45eL1t4TJDypgGd+tv0= -cosmossdk.io/core v0.11.0 h1:vtIafqUi+1ZNAE/oxLOQQ7Oek2n4S48SWLG8h/+wdbo= -cosmossdk.io/core v0.11.0/go.mod h1:LaTtayWBSoacF5xNzoF8tmLhehqlA9z1SWiPuNC6X1w= -cosmossdk.io/depinject v1.0.0-alpha.4 h1:PLNp8ZYAMPTUKyG9IK2hsbciDWqna2z1Wsl98okJopc= -cosmossdk.io/depinject v1.0.0-alpha.4/go.mod h1:HeDk7IkR5ckZ3lMGs/o91AVUc7E596vMaOmslGFM3yU= +cosmossdk.io/core v0.11.1 h1:h9WfBey7NAiFfIcUhDVNS503I2P2HdZLebJlUIs8LPA= +cosmossdk.io/core v0.11.1/go.mod h1:OJzxcdC+RPrgGF8NJZR2uoQr56tc7gfBKhiKeDO7hH0= +cosmossdk.io/depinject v1.0.0 h1:dQaTu6+O6askNXO06+jyeUAnF2/ssKwrrszP9t5q050= +cosmossdk.io/depinject v1.0.0/go.mod h1:zxK/h3HgHoA/eJVtiSsoaRaRA2D5U4cJ5thIG4ssbB8= cosmossdk.io/errors v1.0.1 h1:bzu+Kcr0kS/1DuPBtUFdWjzLqyUuCiyHjyJB6srBV/0= cosmossdk.io/errors v1.0.1/go.mod h1:MeelVSZThMi4bEakzhhhE/CKqVv3nOJDA25bIqRDu/U= cosmossdk.io/log v1.3.1 h1:UZx8nWIkfbbNEWusZqzAx3ZGvu54TZacWib3EzUYmGI= cosmossdk.io/log v1.3.1/go.mod h1:2/dIomt8mKdk6vl3OWJcPk2be3pGOS8OQaLUM/3/tCM= cosmossdk.io/math v1.3.0 h1:RC+jryuKeytIiictDslBP9i1fhkVm6ZDmZEoNP316zE= cosmossdk.io/math v1.3.0/go.mod h1:vnRTxewy+M7BtXBNFybkuhSH4WfedVAAnERHgVFhp3k= -cosmossdk.io/x/circuit v0.1.0 h1:IAej8aRYeuOMritczqTlljbUVHq1E85CpBqaCTwYgXs= -cosmossdk.io/x/circuit v0.1.0/go.mod h1:YDzblVE8+E+urPYQq5kq5foRY/IzhXovSYXb4nwd39w= -cosmossdk.io/x/tx v0.13.3 h1:Ha4mNaHmxBc6RMun9aKuqul8yHiL78EKJQ8g23Zf73g= -cosmossdk.io/x/tx v0.13.3/go.mod h1:I8xaHv0rhUdIvIdptKIqzYy27+n2+zBVaxO6fscFhys= +cosmossdk.io/x/circuit v0.1.1 h1:KPJCnLChWrxD4jLwUiuQaf5mFD/1m7Omyo7oooefBVQ= +cosmossdk.io/x/circuit v0.1.1/go.mod h1:B6f/urRuQH8gjt4eLIXfZJucrbreuYrKh5CSjaOxr+Q= +cosmossdk.io/x/tx v0.13.4 h1:Eg0PbJgeO0gM8p5wx6xa0fKR7hIV6+8lC56UrsvSo0Y= +cosmossdk.io/x/tx v0.13.4/go.mod h1:BkFqrnGGgW50Y6cwTy+JvgAhiffbGEKW6KF9ufcDpvk= dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= filippo.io/edwards25519 v1.0.0 h1:0wAIcmJUqRdI8IJ/3eGi5/HwXZWPujYXXlkrQogz0Ek= filippo.io/edwards25519 v1.0.0/go.mod h1:N1IkdkCkiLB6tki+MYJoSx2JTY9NUlxZE7eHn5EwJns= @@ -39,8 +39,8 @@ github.com/99designs/keyring v1.2.2 h1:pZd3neh/EmUzWONb35LxQfvuY7kiSXAq3HQd97+XB github.com/99designs/keyring v1.2.2/go.mod h1:wes/FrByc8j7lFOAGLGSNEg8f/PaI3cgTBqhFkHUrPk= 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/CosmWasm/wasmvm/v2 v2.0.0 h1:IqNCI2G0mvs7K6ej17/I28805rVqnu+Y1cWDqIdwb08= -github.com/CosmWasm/wasmvm/v2 v2.0.0/go.mod h1:su9lg5qLr7adV95eOfzjZWkGiky8WNaNIHDr7Fpu7Ck= +github.com/CosmWasm/wasmvm/v2 v2.1.2 h1:GkJ5bAsRlLHfIQVg/FY1VHwLyBwlCjAhDea0B8L+e20= +github.com/CosmWasm/wasmvm/v2 v2.1.2/go.mod h1:bMhLQL4Yp9CzJi9A83aR7VO9wockOsSlZbT4ztOl6bg= github.com/DataDog/appsec-internal-go v1.5.0 h1:8kS5zSx5T49uZ8dZTdT19QVAvC/B8ByyZdhQKYQWHno= github.com/DataDog/appsec-internal-go v1.5.0/go.mod h1:pEp8gjfNLtEOmz+iZqC8bXhu0h4k7NUsW/qiQb34k1U= github.com/DataDog/datadog-agent/pkg/obfuscate v0.48.0 h1:bUMSNsw1iofWiju9yc1f+kBd33E3hMJtq9GuU602Iy8= @@ -63,10 +63,10 @@ github.com/DataDog/zstd v1.5.5 h1:oWf5W7GtOLgp6bciQYDmhHHjdhYkALu6S/5Ni9ZgSvQ= github.com/DataDog/zstd v1.5.5/go.mod h1:g4AWEaM3yOg3HYfnJ3YIawPnVdXJh9QME85blwSAmyw= github.com/InjectiveLabs/bandchain-packet v0.0.4-inj-1 h1:ZnvCV/lzjWmBwuGbkAz+okucfJEyEzkU9GYK3tKU9cU= github.com/InjectiveLabs/bandchain-packet v0.0.4-inj-1/go.mod h1:QELTDYiwnbAqIgTF9zeKr+hVlK6eVyt6Nxmh6/1mmzQ= -github.com/InjectiveLabs/cometbft v0.38.10-inj-1 h1:k4I22d5KcXEluYFSVfuSepkibyUesMD+UGOpBwqjXbo= -github.com/InjectiveLabs/cometbft v0.38.10-inj-1/go.mod h1:jHPx9vQpWzPHEAiYI/7EDKaB1NXhK6o3SArrrY8ExKc= -github.com/InjectiveLabs/cosmos-sdk v0.50.8-inj-0 h1:Jf+0AEdUUNG1mNARompZWTFI/UltAUGX66owYks7TAs= -github.com/InjectiveLabs/cosmos-sdk v0.50.8-inj-0/go.mod h1:igpF5mgbiTmaS3hO/yoIIv7+ICbzMBIowFWSw5aOrKA= +github.com/InjectiveLabs/cometbft v0.38.11-inj-0 h1:yf+qvOtlvmLZCBkQCInApRy9icp8+TuSWFwZwWPA5NU= +github.com/InjectiveLabs/cometbft v0.38.11-inj-0/go.mod h1:jHPx9vQpWzPHEAiYI/7EDKaB1NXhK6o3SArrrY8ExKc= +github.com/InjectiveLabs/cosmos-sdk v0.50.9-inj-2 h1:E5YT12BFhar95RanHLyI3zw12yQTGGPbktGQlN1UYsk= +github.com/InjectiveLabs/cosmos-sdk v0.50.9-inj-2/go.mod h1:f7gwrwkQ0cXiqvdAvifcNACCota5CVBLA5Hwyti9V6Q= github.com/InjectiveLabs/cosmos-sdk/store v0.50.6-inj-0 h1:75YtRrju3R21u/VXttzuBoh49o28xABR2OUqioT9hMQ= github.com/InjectiveLabs/cosmos-sdk/store v0.50.6-inj-0/go.mod h1:ZW4eIE98wivInyQyhxU2nHqEielc/iZAcr41qNyWSrw= github.com/InjectiveLabs/cosmos-sdk/x/evidence v0.50.6-inj-0 h1:rb73cHJPCTwnBq96WC9L1ymqnHe5i4of1wjpXFAOUe4= @@ -81,8 +81,8 @@ github.com/InjectiveLabs/metrics v0.0.10 h1:BoOwXnCtRRIPmq06jcI20pXZYE758eusaCI5 github.com/InjectiveLabs/metrics v0.0.10/go.mod h1:eYu++0DVUjk/jjV9WgvCo8gQU+16Yoyhp1iu+ghKNME= github.com/InjectiveLabs/suplog v1.3.3 h1:ARIR3lWD9BxcrmqTwgcGBt8t7e10gwOqllUAXa/MfxI= github.com/InjectiveLabs/suplog v1.3.3/go.mod h1:+I9WRgUhzmo1V/n7IkW24kFBFB9ZTPAiXXXCogWxmTM= -github.com/InjectiveLabs/wasmd v0.51.0-inj-0 h1:5YvS+OWjein0p3APDqLok/DjLmxJ4XAi8FXrmzhjjXo= -github.com/InjectiveLabs/wasmd v0.51.0-inj-0/go.mod h1:CGIOxbGca/pOiZ+Q7e6aMoNnnSPXrV5/hV1dK3H8FUo= +github.com/InjectiveLabs/wasmd v0.52.0-inj-0 h1:2sJftrI2+kc27wfBP9TZuoqszZx7YU8WNkFO/vMeZqQ= +github.com/InjectiveLabs/wasmd v0.52.0-inj-0/go.mod h1:kWL0LDT6QPnxQin9T2OBoDgqZidtbC+mRm0kL3pO65k= github.com/Knetic/govaluate v3.0.1-0.20171022003610-9aa49832a739+incompatible/go.mod h1:r7JcOSlj0wfOMncg0iLm8Leh48TZaKVeNIfJntJ2wa0= github.com/Microsoft/go-winio v0.5.0/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= @@ -243,8 +243,8 @@ github.com/cosmos/gogogateway v1.2.0/go.mod h1:iQpLkGWxYcnCdz5iAdLcRBSw3h7NXeOkZ github.com/cosmos/gogoproto v1.4.2/go.mod h1:cLxOsn1ljAHSV527CHOtaIP91kK6cCrZETRBrkzItWU= github.com/cosmos/gogoproto v1.5.0 h1:SDVwzEqZDDBoslaeZg+dGE55hdzHfgUA40pEanMh52o= github.com/cosmos/gogoproto v1.5.0/go.mod h1:iUM31aofn3ymidYG6bUR5ZFrk+Om8p5s754eMUcyp8I= -github.com/cosmos/iavl v1.1.2 h1:zL9FK7C4L/P4IF1Dm5fIwz0WXCnn7Bp1M2FxH0ayM7Y= -github.com/cosmos/iavl v1.1.2/go.mod h1:jLeUvm6bGT1YutCaL2fIar/8vGUE8cPZvh/gXEWDaDM= +github.com/cosmos/iavl v1.2.0 h1:kVxTmjTh4k0Dh1VNL046v6BXqKziqMDzxo93oh3kOfM= +github.com/cosmos/iavl v1.2.0/go.mod h1:HidWWLVAtODJqFD6Hbne2Y0q3SdxByJepHUOeoH4LiI= github.com/cosmos/ibc-go/modules/capability v1.0.0 h1:r/l++byFtn7jHYa09zlAdSeevo8ci1mVZNO9+V0xsLE= github.com/cosmos/ibc-go/modules/capability v1.0.0/go.mod h1:D81ZxzjZAe0ZO5ambnvn1qedsFQ8lOwtqicG6liLBco= github.com/cosmos/ics23/go v0.10.0 h1:iXqLLgp2Lp+EdpIuwXTYIQU+AiHj9mOC2X9ab++bZDM= @@ -472,8 +472,8 @@ 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/googleapis/enterprise-certificate-proxy v0.3.2 h1:Vie5ybvEvT75RniqhfFxPRy3Bf7vr3h0cechB90XaQs= github.com/googleapis/enterprise-certificate-proxy v0.3.2/go.mod h1:VLSiSSBs/ksPL8kq3OBOQ6WRI2QnaFynd1DCjZ62+V0= -github.com/googleapis/gax-go/v2 v2.12.0 h1:A+gCJKdRfqXkr+BIRGtZLibNXf0m1f9E4HG56etFpas= -github.com/googleapis/gax-go/v2 v2.12.0/go.mod h1:y+aIqrI5eb1YGMVJfuV3185Ts/D7qKpsEkdD5+I6QGU= +github.com/googleapis/gax-go/v2 v2.12.3 h1:5/zPPDvw8Q1SuXjrqrZslrqT7dL/uJT2CQii/cLCKqA= +github.com/googleapis/gax-go/v2 v2.12.3/go.mod h1:AKloxT6GtNbaLm8QTNSidHUVsHYcBHwWRvkNFJUQcS4= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= github.com/gorilla/context v1.1.1/go.mod h1:kBGZzfjB9CEq2AlWe17Uuf7NDRt0dE0s8S51q0aT7Yg= github.com/gorilla/handlers v1.5.2 h1:cLTUSsNkgcwhgRqvCNmdbRWG0A3N4F+M2nWKdScwyEE= @@ -509,8 +509,8 @@ github.com/hashicorp/go-cleanhttp v0.5.0/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtng github.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= github.com/hashicorp/go-cleanhttp v0.5.2 h1:035FKYIWjmULyFRBKPs8TBQoi0x6d9G4xc9neXJWAZQ= github.com/hashicorp/go-cleanhttp v0.5.2/go.mod h1:kO/YDlP8L1346E6Sodw+PrpBSV4/SoxCXGY6BqNFT48= -github.com/hashicorp/go-getter v1.7.3 h1:bN2+Fw9XPFvOCjB0UOevFIMICZ7G2XSQHzfvLUyOM5E= -github.com/hashicorp/go-getter v1.7.3/go.mod h1:W7TalhMmbPmsSMdNjD0ZskARur/9GJ17cfHTRtXV744= +github.com/hashicorp/go-getter v1.7.5 h1:dT58k9hQ/vbxNMwoI5+xFYAJuv6152UNvdHokfI5wE4= +github.com/hashicorp/go-getter v1.7.5/go.mod h1:W7TalhMmbPmsSMdNjD0ZskARur/9GJ17cfHTRtXV744= github.com/hashicorp/go-hclog v1.5.0 h1:bI2ocEMgcVlz55Oj1xZNBsVi900c7II+fWDyV9o+13c= github.com/hashicorp/go-hclog v1.5.0/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= @@ -746,8 +746,8 @@ github.com/pascaldekloe/goe v0.1.0 h1:cBOtyMzM9HTpWjXfbbunk26uA6nG3a8n06Wieeh0Mw github.com/pascaldekloe/goe v0.1.0/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= -github.com/pelletier/go-toml/v2 v2.1.0 h1:FnwAJ4oYMvbT/34k9zzHuZNrhlz48GB3/s6at6/MHO4= -github.com/pelletier/go-toml/v2 v2.1.0/go.mod h1:tJU2Z3ZkXwnxa4DPO899bsyIoywizdUvyaeZurnPPDc= +github.com/pelletier/go-toml/v2 v2.2.2 h1:aYUidT7k73Pcl9nb2gScu7NSrKCSHIDE89b3+6Wq+LM= +github.com/pelletier/go-toml/v2 v2.2.2/go.mod h1:1t835xjRzz80PqgE6HHgN2JOsmgYu/h4qDAS4n929Rs= github.com/performancecopilot/speed v3.0.0+incompatible/go.mod h1:/CLtqpZ5gBg1M9iaPbIdPPGyKcA8hKdoy6hAWba7Yac= github.com/petermattis/goid v0.0.0-20180202154549-b0b1615b78e5/go.mod h1:jvVRKCrJTQWu0XVbaOlby/2lO20uSCHEMzzplHXte1o= github.com/petermattis/goid v0.0.0-20231207134359-e60b3f734c67 h1:jik8PHtAIsPlCRJjJzl4udgEf7hawInF9texMeO2jrU= @@ -774,8 +774,8 @@ github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5Fsn github.com/prometheus/client_golang v1.3.0/go.mod h1:hJaj2vgQTGQmVCsAACORcieXFeDPbaTKGT+JTgUa3og= github.com/prometheus/client_golang v1.4.0/go.mod h1:e9GMxYsXl05ICDXkRhurwBS4Q3OK1iX/F2sw+iXX5zU= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= -github.com/prometheus/client_golang v1.19.0 h1:ygXvpU1AoN1MhdzckN+PyD9QJOSD4x7kmXYlnfbA6JU= -github.com/prometheus/client_golang v1.19.0/go.mod h1:ZRM9uEAypZakd+q/x7+gmsvXdURP+DABIEIjnmDdp+k= +github.com/prometheus/client_golang v1.19.1 h1:wZWJDwK+NameRJuPGDhlnFgx8e8HN3XHQeLaYJFJBOE= +github.com/prometheus/client_golang v1.19.1/go.mod h1:mP78NwGzrVks5S2H6ab8+ZZGJLZUq1hoULYBAYBw1Ho= github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20190115171406-56726106282f/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= @@ -818,8 +818,8 @@ github.com/rs/cors v1.7.0/go.mod h1:gFx+x8UowdsKA9AchylcLynDq+nNFfI8FkUZdN/jGCU= github.com/rs/cors v1.8.3 h1:O+qNyWn7Z+F9M0ILBHgMVPuB1xTOucVd5gtaYyXBpRo= github.com/rs/cors v1.8.3/go.mod h1:XyqrcTp5zjWr1wsJ8PIRZssZ8b/WMcMf71DJnit4EMU= github.com/rs/xid v1.5.0/go.mod h1:trrq9SKmegXys3aeAKXMUTdJsYXVwGY3RLcfgqegfbg= -github.com/rs/zerolog v1.32.0 h1:keLypqrlIjaFsbmJOBdB/qvyF8KEtCWHwobLp5l/mQ0= -github.com/rs/zerolog v1.32.0/go.mod h1:/7mN4D5sKwJLZQ2b/znpjC3/GQWY/xaDXUM0kKWRHss= +github.com/rs/zerolog v1.33.0 h1:1cU2KZkvPxNyfgEmhHAz/1A9Bz+llsdYzklWFzgp0r8= +github.com/rs/zerolog v1.33.0/go.mod h1:/7mN4D5sKwJLZQ2b/znpjC3/GQWY/xaDXUM0kKWRHss= github.com/russross/blackfriday v1.5.2 h1:HyvC0ARfnZBqnXwABFeSZHpKvJHJJfPz81GNueLj0oo= github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= @@ -836,6 +836,8 @@ github.com/sasha-s/go-deadlock v0.3.1/go.mod h1:F73l+cr82YSh10GxyRI6qZiCgK64VaZj github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= github.com/secure-systems-lab/go-securesystemslib v0.7.0 h1:OwvJ5jQf9LnIAS83waAjPbcMsODrTQUpJ02eNLUoxBg= github.com/secure-systems-lab/go-securesystemslib v0.7.0/go.mod h1:/2gYnlnHVQ6xeGtfIqFy7Do03K4cdCY0A/GlJLDKLHI= +github.com/shamaton/msgpack/v2 v2.2.0 h1:IP1m01pHwCrMa6ZccP9B3bqxEMKMSmMVAVKk54g3L/Y= +github.com/shamaton/msgpack/v2 v2.2.0/go.mod h1:6khjYnkx73f7VQU7wjcFS9DFjs+59naVWJv1TB7qdOI= github.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible h1:Bn1aCHHRnjv4Bl16T8rcaFjYSrGrIZvpiGO6P3Q4GpU= github.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA= github.com/shopspring/decimal v1.2.0 h1:abSATXmQEYyShuxI4/vyW3tV1MrKAJzCZ/0zLUXYbsQ= @@ -873,8 +875,8 @@ github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnIn github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s= -github.com/spf13/viper v1.18.2 h1:LUXCnvUvSM6FXAsj6nnfc8Q2tp1dIgUfY9Kc8GsSOiQ= -github.com/spf13/viper v1.18.2/go.mod h1:EKmWIqdnk5lOcmR72yw6hS+8OPYcwD0jteitLMVB+yk= +github.com/spf13/viper v1.19.0 h1:RWq5SEjt8o25SROyN3z2OrDB9l7RPd3lwTWU8EcEdcI= +github.com/spf13/viper v1.19.0/go.mod h1:GQUN9bilAbhU/jgc1bKs99f/suXKeUMct8Adx5+Ntkg= github.com/status-im/keycard-go v0.2.0 h1:QDLFswOQu1r5jsycloeQh3bVU8n/NatHHaZobtDnDzA= github.com/status-im/keycard-go v0.2.0/go.mod h1:wlp8ZLbsmrF6g6WjugPAx+IzoLrkdf9+mHxBEeo3Hbg= github.com/streadway/amqp v0.0.0-20190404075320-75d898a42a94/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw= @@ -945,18 +947,18 @@ github.com/zondax/hid v0.9.2/go.mod h1:l5wttcP0jwtdLjqjMMWFVEE7d1zO0jvSPA9OPZxWp github.com/zondax/ledger-go v0.14.3 h1:wEpJt2CEcBJ428md/5MgSLsXLBos98sBOyxNmCjfUCw= github.com/zondax/ledger-go v0.14.3/go.mod h1:IKKaoxupuB43g4NxeQmbLXv7T9AlQyie1UpHb342ycI= go.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= -go.etcd.io/bbolt v1.3.8 h1:xs88BrvEv273UsB79e0hcVrlUWmS0a8upikMFhSyAtA= -go.etcd.io/bbolt v1.3.8/go.mod h1:N9Mkw9X8x5fupy0IKsmuqVtoGDyxsaDlbk4Rd05IAQw= +go.etcd.io/bbolt v1.4.0-alpha.0.0.20240404170359-43604f3112c5 h1:qxen9oVGzDdIRP6ejyAJc760RwW4SnVDiTYTzwnXuxo= +go.etcd.io/bbolt v1.4.0-alpha.0.0.20240404170359-43604f3112c5/go.mod h1:eW0HG9/oHQhvRCvb1/pIXW4cOvtDqeQK+XSi3TnwaXY= go.etcd.io/etcd v0.0.0-20191023171146-3cf2f69b5738/go.mod h1:dnLIgRNXwCJa5e+c6mIZCrds/GIG4ncV9HhK5PX7jPg= go.opencensus.io v0.20.1/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk= go.opencensus.io v0.20.2/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk= go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.47.0 h1:UNQQKPfTDe1J81ViolILjTKPr9WetKW6uei2hFgJmFs= -go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.47.0/go.mod h1:r9vWsPS/3AQItv3OSlEJ/E4mbrhUbbw18meOjArPtKQ= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.47.0 h1:sv9kVfal0MK0wBMCOGr+HeJm9v803BkJxGrk2au7j08= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.47.0/go.mod h1:SK2UL73Zy1quvRPonmOmRDiWk1KBV3LyIeeIxcEApWw= +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.49.0 h1:jq9TW8u3so/bN+JPT166wjOI6/vQPF6Xe7nMNIltagk= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0/go.mod h1:p8pYQP+m5XfbZm9fxtSKAbM6oIllS7s2AfxrChvc7iw= go.opentelemetry.io/otel v1.24.0 h1:0LAOdjNmQeSTzGBzduGe/rU4tZhMwL5rWgtp9Ku5Jfo= go.opentelemetry.io/otel v1.24.0/go.mod h1:W7b9Ozg4nkF5tWI5zsXkaKKDjdVjpD4oAt9Qi/MArHo= go.opentelemetry.io/otel/metric v1.24.0 h1:6EhoGWWK28x1fbpA4tYTOWBkPefTDQnb8WSGXlc88kI= @@ -974,6 +976,8 @@ go.uber.org/atomic v1.11.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= +go.uber.org/mock v0.5.0 h1:KAMbZvZPyBPWgD14IrIQ38QCyjwpvVVV6K/bHl1IwQU= +go.uber.org/mock v0.5.0/go.mod h1:ge71pBPLYDk7QIi1LupWxdAykm7KIEFchiOqd6z7qMM= go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0= go.uber.org/multierr v1.3.0/go.mod h1:VgVr7evmIr6uPjLBxg28wmKNXyqE9akIJ5XnfpiKl+4= go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= @@ -996,8 +1000,8 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200728195943-123391ffb6de/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.24.0 h1:mnl8DM0o513X8fdIkmyFE/5hTYxbwYOjDS/+rK6qpRI= -golang.org/x/crypto v0.24.0/go.mod h1:Z1PMYSOR5nyMcyAVAIQSKCDwalqy85Aqn1x3Ws4L5DM= +golang.org/x/crypto v0.25.0 h1:ypSNr+bnYL2YhwoMt2zPxHFmbAN1KZs/njMG3hxUp30= +golang.org/x/crypto v0.25.0/go.mod h1:T+wALwcMOSE0kXgUAnPAHqTLW+XHgcELELW8VaDgm/M= 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-20200331195152-e8c3332aa8e5/go.mod h1:4M0jN8W1tt0AVLNr8HDosyJCDCDuyL9N9+3m7wDWgKw= @@ -1053,8 +1057,8 @@ golang.org/x/net v0.0.0-20220517181318-183a9ca12b87/go.mod h1:CfG3xpIq0wQ8r1q4Su golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco= golang.org/x/net v0.3.0/go.mod h1:MBQ8lrhLObU/6UmLb4fmbmk5OcyYmqtbGd/9yIeKjEE= -golang.org/x/net v0.26.0 h1:soB7SVo0PWrY4vPW/+ay0jKDNScG2X9wFeYlXIvJsOQ= -golang.org/x/net v0.26.0/go.mod h1:5YKkiSynbBIh3p6iOc/vibscux0x38BZDkn8sCUPxHE= +golang.org/x/net v0.27.0 h1:5K3Njcw06/l2y9vpGCSdcxWOYHOUk3dVNGDXN+FvAys= +golang.org/x/net v0.27.0/go.mod h1:dDi0PyhWNoiUOrAS8uXv/vnScO4wnHQO4mj9fn/RytE= 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-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -1134,14 +1138,14 @@ golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.21.0 h1:rF+pYz3DAGSQAxAu1CbC7catZg4ebC4UIeIhKxBZvws= -golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.22.0 h1:RI27ohtqKCnwULzJLqkv897zojh5/DwS/ENaMzUOaWI= +golang.org/x/sys v0.22.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= 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.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.3.0/go.mod h1:q750SLmJuPmVoN1blW3UFBPREJfb1KmY3vwxfr+nFDA= -golang.org/x/term v0.21.0 h1:WVXCp+/EBEHOj53Rvu+7KiT/iElMrO8ACK16SMZ3jaA= -golang.org/x/term v0.21.0/go.mod h1:ooXLefLobQVslOqselCNF4SxFAaoS6KujMbsGzSDmX0= +golang.org/x/term v0.22.0 h1:BbsgPEJULsl2fV/AT3v15Mjva5yXKQDyKf+TbDz7QJk= +golang.org/x/term v0.22.0/go.mod h1:F3qCibpT5AMpCRfhfT53vVJwhLtIVHhB9XDjfFvnMI4= golang.org/x/text v0.3.0/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= @@ -1184,11 +1188,11 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T 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-20220907171357-04be3eba64a2 h1:H2TDz8ibqkAF6YGhCdN3jS9O0/s90v0rJh3X/OLHEUk= -golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= +golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 h1:+cNy6SZtPcJQH3LJVLOSmiC7MMxXNOb3PU/VUEz+EhU= +golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90= google.golang.org/api v0.3.1/go.mod h1:6wY9I6uQWHQ8EM57III9mq/AjF+i8G65rmVagqKMtkk= -google.golang.org/api v0.162.0 h1:Vhs54HkaEpkMBdgGdOT2P6F0csGG/vxDS0hWHJzmmps= -google.golang.org/api v0.162.0/go.mod h1:6SulDkfoBIg4NFmCuZ39XeeAgSHCPecfSUuDyYlAHs0= +google.golang.org/api v0.171.0 h1:w174hnBPqut76FzW5Qaupt7zY8Kql6fiVjgys4f58sU= +google.golang.org/api v0.171.0/go.mod h1:Hnq5AHm4OTMt2BUVjael2CWZFD6vksJdWCWiUAmjC9o= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.2.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= @@ -1207,10 +1211,10 @@ google.golang.org/genproto v0.0.0-20210126160654-44e461bb6506/go.mod h1:FWY/as6D google.golang.org/genproto v0.0.0-20220314164441-57ef72a4c106/go.mod h1:hAL49I2IFola2sVEjAn7MEwsja0xp51I0tlGAf9hz4E= google.golang.org/genproto v0.0.0-20240227224415-6ceb2ff114de h1:F6qOa9AZTYJXOUEr4jDysRDLrm4PHePlge4v4TGAlxY= google.golang.org/genproto v0.0.0-20240227224415-6ceb2ff114de/go.mod h1:VUhTRKeHn9wwcdrk73nvdC9gF178Tzhmt/qyaFcPLSo= -google.golang.org/genproto/googleapis/api v0.0.0-20240227224415-6ceb2ff114de h1:jFNzHPIeuzhdRwVhbZdiym9q0ory/xY3sA+v2wPg8I0= -google.golang.org/genproto/googleapis/api v0.0.0-20240227224415-6ceb2ff114de/go.mod h1:5iCWqnniDlqZHrd3neWVTOwvh/v6s3232omMecelax8= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240401170217-c3f982113cda h1:LI5DOvAxUPMv/50agcLLoo+AdWc1irS9Rzz4vPuD1V4= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240401170217-c3f982113cda/go.mod h1:WtryC6hu0hhx87FDGxWCDptyssuo68sk10vYjF+T9fY= +google.golang.org/genproto/googleapis/api v0.0.0-20240318140521-94a12d6c2237 h1:RFiFrvy37/mpSpdySBDrUdipW/dHwsRwh3J3+A9VgT4= +google.golang.org/genproto/googleapis/api v0.0.0-20240318140521-94a12d6c2237/go.mod h1:Z5Iiy3jtmioajWHDGFk7CeugTyHtPvMHA4UTmUkyalE= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240709173604-40e1e62336c5 h1:SbSDUWW1PAO24TNpLdeheoYPd7kllICcLU52x6eD4kQ= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240709173604-40e1e62336c5/go.mod h1:Ue6ibwXGpU+dqIcODieyLOcgj7z8+IcskoNIgZxtrFY= google.golang.org/grpc v1.17.0/go.mod h1:6QZJwpn2B+Zp71q/5VxRsJ6NXXVCE5NRUHRo+f3cWCs= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.0/go.mod h1:chYK+tFQF0nDUGJgXMSgLCQk3phJEuONr2DCgLDdAQM= @@ -1228,8 +1232,8 @@ google.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTp google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= google.golang.org/grpc v1.45.0/go.mod h1:lN7owxKUQEqMfSyQikvvk5tf/6zMPsrK+ONuO11+0rQ= google.golang.org/grpc v1.49.0/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= -google.golang.org/grpc v1.63.2 h1:MUeiw1B2maTVZthpU5xvASfTh3LDbxHd6IJ6QQVU+xM= -google.golang.org/grpc v1.63.2/go.mod h1:WAX/8DgncnokcFUldAxq7GeB5DXHDbMF+lLvDomNkRA= +google.golang.org/grpc v1.64.1 h1:LKtvyfbX3UGVPFcGqJ9ItpVWW6oN/2XqTxfAnwRRXiA= +google.golang.org/grpc v1.64.1/go.mod h1:hiQF4LFZelK2WKaP6W0L92zGHtiQdZxk8CrSdvyjeP0= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= @@ -1245,8 +1249,8 @@ google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQ google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= google.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= -google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= +google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= gopkg.in/DataDog/dd-trace-go.v1 v1.62.0 h1:jeZxE4ZlfAc+R0zO5TEmJBwOLet3NThsOfYJeSQg1x0= gopkg.in/DataDog/dd-trace-go.v1 v1.62.0/go.mod h1:YTvYkk3PTsfw0OWrRFxV/IQ5Gy4nZ5TRvxTAP3JcIzs= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= diff --git a/proto/buf.gen.ts.yaml b/proto/buf.gen.ts.yaml deleted file mode 100644 index 77ac7550..00000000 --- a/proto/buf.gen.ts.yaml +++ /dev/null @@ -1,13 +0,0 @@ -version: v1 -managed: - enabled: true -plugins: - - plugin: buf.build/community/stephenh-ts-proto - out: ../client/proto-ts/gen/proto - opt: - - esModuleInterop=true - - forceLong=string - - env=both - - outputClientImpl=grpc-web - - exportCommonSymbols=false - - useExactTypes=false \ No newline at end of file diff --git a/proto/injective/auction/v1beta1/auction.proto b/proto/injective/auction/v1beta1/auction.proto index c5f95038..b46a3ee9 100644 --- a/proto/injective/auction/v1beta1/auction.proto +++ b/proto/injective/auction/v1beta1/auction.proto @@ -18,6 +18,12 @@ message Params { (gogoproto.customtype) = "cosmossdk.io/math.LegacyDec", (gogoproto.nullable) = false ]; + // inj_basket_max_cap defines the maximum cap for INJ contained in an auction + // basket + string inj_basket_max_cap = 3 [ + (gogoproto.customtype) = "cosmossdk.io/math.Int", + (gogoproto.nullable) = false + ]; } message Bid { @@ -26,7 +32,7 @@ message Bid { (gogoproto.moretags) = "yaml:\"bidder\"" ]; - string amount = 2 [ + cosmos.base.v1beta1.Coin amount = 2 [ (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Coin", (gogoproto.nullable) = false ]; @@ -36,7 +42,7 @@ message LastAuctionResult { // winner describes the address of the winner string winner = 1; // amount describes the amount the winner get from the auction - string amount = 2 [ + cosmos.base.v1beta1.Coin amount = 2 [ (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Coin", (gogoproto.nullable) = false ]; @@ -48,7 +54,7 @@ message EventBid { // bidder describes the address of bidder string bidder = 1; // amount describes the amount the bidder put on the auction - string amount = 2 [ + cosmos.base.v1beta1.Coin amount = 2 [ (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Coin", (gogoproto.nullable) = false ]; @@ -60,7 +66,7 @@ message EventAuctionResult { // winner describes the address of the winner string winner = 1; // amount describes the amount the winner get from the auction - string amount = 2 [ + cosmos.base.v1beta1.Coin amount = 2 [ (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Coin", (gogoproto.nullable) = false ]; diff --git a/proto/injective/exchange/v1beta1/events.proto b/proto/injective/exchange/v1beta1/events.proto index 22cbafdd..0363f43d 100644 --- a/proto/injective/exchange/v1beta1/events.proto +++ b/proto/injective/exchange/v1beta1/events.proto @@ -53,6 +53,16 @@ message EventDerivativeMarketPaused { string missing_funds_rate = 4; } +message EventSettledMarketBalance { + string market_id = 1; + string amount = 2; +} + +message EventNotSettledMarketBalance { + string market_id = 1; + string amount = 2; +} + message EventMarketBeyondBankruptcy { string market_id = 1; string settle_price = 2; diff --git a/proto/injective/exchange/v1beta1/exchange.proto b/proto/injective/exchange/v1beta1/exchange.proto index c7b837b6..b21e441b 100644 --- a/proto/injective/exchange/v1beta1/exchange.proto +++ b/proto/injective/exchange/v1beta1/exchange.proto @@ -269,7 +269,10 @@ message DerivativeMarket { string admin = 18; // level of admin permissions uint32 admin_permissions = 19; + // quote token decimals + uint32 quote_decimals = 20; } + // An object describing a binary options market in Injective Protocol. message BinaryOptionsMarket { option (gogoproto.goproto_getters) = false; @@ -337,6 +340,8 @@ message BinaryOptionsMarket { ]; // level of admin permissions uint32 admin_permissions = 19; + // quote token decimals + uint32 quote_decimals = 20; } message ExpiryFuturesMarketInfo { @@ -481,6 +486,10 @@ message SpotMarket { string admin = 12; // level of admin permissions uint32 admin_permissions = 13; + // base token decimals + uint32 base_decimals = 14; + // quote token decimals + uint32 quote_decimals = 15; } // A subaccount's deposit for a given base currency @@ -982,3 +991,11 @@ message EffectiveGrant { ]; bool is_valid = 3; } + +message DenomMinNotional { + string denom = 1; + string min_notional = 2 [ + (gogoproto.customtype) = "cosmossdk.io/math.LegacyDec", + (gogoproto.nullable) = false + ]; +} diff --git a/proto/injective/exchange/v1beta1/genesis.proto b/proto/injective/exchange/v1beta1/genesis.proto index eccb4363..097067cf 100644 --- a/proto/injective/exchange/v1beta1/genesis.proto +++ b/proto/injective/exchange/v1beta1/genesis.proto @@ -133,6 +133,8 @@ message GenesisState { repeated FullGrantAuthorizations grant_authorizations = 35; repeated FullActiveGrant active_grants = 36; + + repeated DenomMinNotional denom_min_notionals = 37; } message OrderbookSequence { diff --git a/proto/injective/exchange/v1beta1/proposal.proto b/proto/injective/exchange/v1beta1/proposal.proto index a116cfc8..fc9b7057 100644 --- a/proto/injective/exchange/v1beta1/proposal.proto +++ b/proto/injective/exchange/v1beta1/proposal.proto @@ -66,6 +66,11 @@ message SpotMarketParamUpdateProposal { ]; AdminInfo admin_info = 12; + + // base token decimals + uint32 base_decimals = 13; + // quote token decimals + uint32 quote_decimals = 14; } enum ExchangeType { @@ -114,6 +119,8 @@ message BatchExchangeModificationProposal { repeated MarketForcedSettlementProposal market_forced_settlement_proposals = 13; + + DenomMinNotionalProposal denom_min_notional_proposal = 14; } // SpotMarketLaunchProposal defines a SDK message for proposing a new spot @@ -159,6 +166,10 @@ message SpotMarketLaunchProposal { (gogoproto.nullable) = false ]; AdminInfo admin_info = 11; + // base token decimals + uint32 base_decimals = 14; + // quote token decimals + uint32 quote_decimals = 15; } // PerpetualMarketLaunchProposal defines a SDK message for proposing a new @@ -650,4 +661,16 @@ message AtomicMarketOrderFeeMultiplierScheduleProposal { string description = 2; repeated MarketFeeMultiplier market_fee_multipliers = 3; +} + +message DenomMinNotionalProposal { + option (amino.name) = "exchange/DenomMinNotionalProposal"; + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + option (cosmos_proto.implements_interface) = "cosmos.gov.v1beta1.Content"; + + string title = 1; + string description = 2; + + repeated DenomMinNotional denom_min_notionals = 3; } \ No newline at end of file diff --git a/proto/injective/exchange/v1beta1/query.proto b/proto/injective/exchange/v1beta1/query.proto index e74a687c..78753374 100644 --- a/proto/injective/exchange/v1beta1/query.proto +++ b/proto/injective/exchange/v1beta1/query.proto @@ -12,6 +12,17 @@ option go_package = "github.com/InjectiveLabs/injective-core/injective-chain/mod // Query defines the gRPC querier service. service Query { + rpc L3DerivativeOrderBook(QueryFullDerivativeOrderbookRequest) + returns (QueryFullDerivativeOrderbookResponse) { + option (google.api.http).get = + "/injective/exchange/v1beta1/derivative/L3OrderBook/{market_id}"; + } + + rpc L3SpotOrderBook(QueryFullSpotOrderbookRequest) + returns (QueryFullSpotOrderbookResponse) { + option (google.api.http).get = + "/injective/exchange/v1beta1/spot/L3OrderBook/{market_id}"; + } // Retrieves exchange params rpc QueryExchangeParams(QueryExchangeParamsRequest) returns (QueryExchangeParamsResponse) { @@ -437,6 +448,32 @@ service Query { option (google.api.http).get = "/injective/exchange/v1beta1/grant_authorizations/{granter}"; } + + // Retrieves a derivative or binary options market's balance + rpc MarketBalance(QueryMarketBalanceRequest) + returns (QueryMarketBalanceResponse) { + option (google.api.http).get = + "/injective/exchange/v1beta1/market_balance/{market_id}"; + } + // Retrieves all derivative or binary options market balances + rpc MarketBalances(QueryMarketBalancesRequest) + returns (QueryMarketBalancesResponse) { + option (google.api.http).get = + "/injective/exchange/v1beta1/market_balances"; + } + // Retrieves the min notional for a denom + rpc DenomMinNotional(QueryDenomMinNotionalRequest) + returns (QueryDenomMinNotionalResponse) { + option (google.api.http).get = + "/injective/exchange/v1beta1/denom_min_notional/{denom}"; + } + + // Retrieves the min notionals for all denoms + rpc DenomMinNotionals(QueryDenomMinNotionalsRequest) + returns (QueryDenomMinNotionalsResponse) { + option (google.api.http).get = + "/injective/exchange/v1beta1/denom_min_notionals"; + } } message Subaccount { @@ -1410,7 +1447,39 @@ message TrimmedDerivativeConditionalOrder { message QueryTraderDerivativeConditionalOrdersResponse { repeated TrimmedDerivativeConditionalOrder orders = 1; } +message QueryFullSpotOrderbookRequest { + // market id + string market_id = 1; +} + +message QueryFullSpotOrderbookResponse { + repeated TrimmedLimitOrder Bids = 1; + repeated TrimmedLimitOrder Asks = 2; +} + +message QueryFullDerivativeOrderbookRequest { + // market id + string market_id = 1; +} +message QueryFullDerivativeOrderbookResponse { + repeated TrimmedLimitOrder Bids = 1; + repeated TrimmedLimitOrder Asks = 2; +} +message TrimmedLimitOrder { + string price = 1 [ + (gogoproto.customtype) = "cosmossdk.io/math.LegacyDec", + (gogoproto.nullable) = false + ]; + // quantity of the order + string quantity = 2 [ + (gogoproto.customtype) = "cosmossdk.io/math.LegacyDec", + (gogoproto.nullable) = false + ]; + + string order_hash = 3; + string subaccount_id = 4; +} message QueryMarketAtomicExecutionFeeMultiplierRequest { string market_id = 1; } message QueryMarketAtomicExecutionFeeMultiplierResponse { @@ -1448,3 +1517,44 @@ message QueryGrantAuthorizationsResponse { ]; repeated GrantAuthorization grants = 2; } + +message QueryMarketBalanceRequest { + // market id + string market_id = 1; +} + +message QueryMarketBalanceResponse { + string balance = 1[ + (gogoproto.customtype) = "cosmossdk.io/math.LegacyDec", + (gogoproto.nullable) = false + ]; +} + +message QueryMarketBalancesRequest {} + +message QueryMarketBalancesResponse { + repeated MarketBalance balances = 1; +} + +message MarketBalance { + string market_id = 1; + string balance = 2 [ + (gogoproto.customtype) = "cosmossdk.io/math.LegacyDec", + (gogoproto.nullable) = false + ]; +} + +message QueryDenomMinNotionalRequest { string denom = 1; } + +message QueryDenomMinNotionalResponse { + string amount = 1 [ + (gogoproto.customtype) = "cosmossdk.io/math.LegacyDec", + (gogoproto.nullable) = false + ]; +} + +message QueryDenomMinNotionalsRequest {} + +message QueryDenomMinNotionalsResponse { + repeated DenomMinNotional denom_min_notionals = 1; +} diff --git a/proto/injective/exchange/v1beta1/tx.proto b/proto/injective/exchange/v1beta1/tx.proto index b282f4da..cae7401f 100644 --- a/proto/injective/exchange/v1beta1/tx.proto +++ b/proto/injective/exchange/v1beta1/tx.proto @@ -7,6 +7,7 @@ import "cosmos/msg/v1/msg.proto"; import "cosmos_proto/cosmos.proto"; import "gogoproto/gogo.proto"; import "injective/exchange/v1beta1/exchange.proto"; +import "injective/exchange/v1beta1/proposal.proto"; import "injective/oracle/v1beta1/oracle.proto"; import "amino/amino.proto"; @@ -168,6 +169,9 @@ service Msg { rpc ActivateStakeGrant(MsgActivateStakeGrant) returns (MsgActivateStakeGrantResponse); + + rpc BatchExchangeModification(MsgBatchExchangeModification) + returns (MsgBatchExchangeModificationResponse); } message MsgUpdateSpotMarket { @@ -381,6 +385,10 @@ message MsgInstantSpotMarketLaunch { (gogoproto.customtype) = "cosmossdk.io/math.LegacyDec", (gogoproto.nullable) = false ]; + // base token decimals + uint32 base_decimals = 8; + // quote token decimals + uint32 quote_decimals = 9; } // MsgInstantSpotMarketLaunchResponse defines the Msg/InstantSpotMarketLaunch @@ -1151,4 +1159,17 @@ message MsgActivateStakeGrant { string granter = 2; } -message MsgActivateStakeGrantResponse {} \ No newline at end of file +message MsgActivateStakeGrantResponse {} + +message MsgBatchExchangeModification { + option (amino.name) = "exchange/MsgBatchExchangeModification"; + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + option (cosmos.msg.v1.signer) = "sender"; + + // message sender, that is also the TX signer + string sender = 1; + BatchExchangeModificationProposal proposal = 2; +} + +message MsgBatchExchangeModificationResponse {} \ No newline at end of file diff --git a/proto/injective/peggy/v1/events.proto b/proto/injective/peggy/v1/events.proto index 8a5f866d..e1760f97 100644 --- a/proto/injective/peggy/v1/events.proto +++ b/proto/injective/peggy/v1/events.proto @@ -145,4 +145,40 @@ message EventValidatorSlash { string consensus_address = 3; string operator_address = 4; string moniker = 5; +} + +message EventDepositReceived { + // Ethereum sender address + string sender = 1; + + // Injective receiver address + string receiver = 2; + + // Coin deposited to Injective + string amount = 3 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Coin", + (gogoproto.nullable) = false + ]; +} + +message EventWithdrawalsCompleted { + // token denom of each withdrawal + string denom = 1; + + // individual withdrawals + repeated Withdrawal withdrawals = 2; +} + +message Withdrawal { + // Injective sender address + string sender = 1; + + // Ethereum receiver address + string receiver = 2; + + // Amount of tokens withdrawn to Ethereum + string amount = 3 [ + (gogoproto.customtype) = "cosmossdk.io/math.Int", + (gogoproto.nullable) = false + ]; } \ No newline at end of file diff --git a/proto/injective/peggy/v1/params.proto b/proto/injective/peggy/v1/params.proto index 43c4b3a8..7300ce7f 100644 --- a/proto/injective/peggy/v1/params.proto +++ b/proto/injective/peggy/v1/params.proto @@ -133,4 +133,7 @@ message Params { cosmos.base.v1beta1.Coin valset_reward = 21 [ (gogoproto.nullable) = false ]; repeated string admins = 22; + + // address for receiving Peggy Deposits from sanctioned Ethereum addresses + string segregated_wallet_address = 23; } diff --git a/proto/injective/peggy/v1/proposal.proto b/proto/injective/peggy/v1/proposal.proto deleted file mode 100644 index f6eed0f1..00000000 --- a/proto/injective/peggy/v1/proposal.proto +++ /dev/null @@ -1,29 +0,0 @@ -syntax = "proto3"; -package injective.peggy.v1; - -import "cosmos_proto/cosmos.proto"; -import "gogoproto/gogo.proto"; - -option go_package = "github.com/InjectiveLabs/injective-core/injective-chain/modules/peggy/types"; - -message BlacklistEthereumAddressesProposal { - option (gogoproto.equal) = false; - option (gogoproto.goproto_getters) = false; - - option (cosmos_proto.implements_interface) = "cosmos.gov.v1beta1.Content"; - - string title = 1; - string description = 2; - repeated string blacklist_addresses = 3; -} - -message RevokeEthereumBlacklistProposal { - option (gogoproto.equal) = false; - option (gogoproto.goproto_getters) = false; - - option (cosmos_proto.implements_interface) = "cosmos.gov.v1beta1.Content"; - - string title = 1; - string description = 2; - repeated string blacklist_addresses = 3; -} \ No newline at end of file diff --git a/proto/injective/permissions/v1beta1/genesis.proto b/proto/injective/permissions/v1beta1/genesis.proto index 7890fc27..52d80556 100644 --- a/proto/injective/permissions/v1beta1/genesis.proto +++ b/proto/injective/permissions/v1beta1/genesis.proto @@ -12,4 +12,5 @@ message GenesisState { // params defines the parameters of the module. Params params = 1 [ (gogoproto.nullable) = false ]; repeated Namespace namespaces = 2 [ (gogoproto.nullable) = false ]; + repeated AddressVoucher vouchers = 3; } \ No newline at end of file diff --git a/proto/injective/permissions/v1beta1/permissions.proto b/proto/injective/permissions/v1beta1/permissions.proto index 0abb5c5c..8166a72b 100644 --- a/proto/injective/permissions/v1beta1/permissions.proto +++ b/proto/injective/permissions/v1beta1/permissions.proto @@ -1,56 +1,103 @@ syntax = "proto3"; package injective.permissions.v1beta1; -import "gogoproto/gogo.proto"; import "cosmos/base/v1beta1/coin.proto"; +import "gogoproto/gogo.proto"; option go_package = "github.com/InjectiveLabs/injective-core/injective-chain/modules/permissions/types"; // Namespace defines a permissions namespace message Namespace { string denom = 1; // tokenfactory denom to which this namespace applies to - string wasm_hook = - 2; // address of smart contract to apply code-based restrictions + string contract_hook = 2; // address of smart contract to apply code-based restrictions - bool mints_paused = 3; - bool sends_paused = 4; - bool burns_paused = 5; + repeated Role role_permissions = 3; // permissions for each role + repeated ActorRoles actor_roles = 4; // roles for each actor + repeated RoleManager role_managers = 5; // managers for each role + repeated PolicyStatus policy_statuses = 6; // status for each policy + repeated PolicyManagerCapability policy_manager_capabilities = 7; // capabilities for each manager for each policy +} - repeated Role role_permissions = 6; // permissions for each role +// AddressRoles defines roles for an actor +message ActorRoles { + string actor = 1; + repeated string roles = 2; +} - repeated AddressRoles address_roles = 7; +// RoleActors defines actors for a role +message RoleActors { + string role = 1; + repeated string actors = 2; } -message AddressRoles { - string address = 1; +// RoleManager defines roles for a manager address +message RoleManager { + string manager = 1; repeated string roles = 2; } // each Action enum value should be a power of two enum Action { + // 0 is reserved for ACTION_UNSPECIFIED UNSPECIFIED = 0; + // 1 is reserved for MINT MINT = 1; + // 2 is reserved for RECEIVE RECEIVE = 2; + // 4 is reserved for BURN BURN = 4; + // 8 is reserved for SEND + SEND = 8; + // 16 is reserved for SUPER_BURN + SUPER_BURN = 16; + + // + // MANAGER ACTIONS BELOW + // + + // 2^27 is reserved for MODIFY_POLICY_MANAGERS + MODIFY_POLICY_MANAGERS = 0x8000000; // 2^27 or 134217728 + // 2^28 is reserved for MODIFY_CONTRACT_HOOK + MODIFY_CONTRACT_HOOK = 0x10000000; // 2^28 or 268435456 + // 2^29 is reserved for MODIFY_ROLE_PERMISSIONS + MODIFY_ROLE_PERMISSIONS = 0x20000000; // 2^29 or 536870912 + // 2^30 is reserved for MODIFY_ROLE_MANAGERS + MODIFY_ROLE_MANAGERS = 0x40000000; // 2^30 or 1073741824 +} + +// PolicyStatus defines the status of a policy +message PolicyStatus { + Action action = 1; + bool is_disabled = 2; + bool is_sealed = 3; } // Role is only used for storage message Role { - string role = 1; - uint32 permissions = 2; + string name = 1; + uint32 role_id = 2; + uint32 permissions = 3; } -// used in storage -message RoleIDs { repeated uint32 role_ids = 1; } +// PolicyManagerCapability defines the capabilities of a manager for a policy +message PolicyManagerCapability { + string manager = 1; + Action action = 2; + bool can_disable = 3; + bool can_seal = 4; +} -message Voucher { - repeated cosmos.base.v1beta1.Coin coins = 1 [ - (gogoproto.nullable) = false, - (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins" - ]; +// used in storage +message RoleIDs { + repeated uint32 role_ids = 1; } +// AddressVoucher is used to represent a voucher for a specific address message AddressVoucher { string address = 1; - Voucher voucher = 2; -} \ No newline at end of file + cosmos.base.v1beta1.Coin voucher = 2 [ + (gogoproto.nullable) = false, + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Coin", + (gogoproto.jsontag) = "voucher,omitempty" + ]; +} diff --git a/proto/injective/permissions/v1beta1/query.proto b/proto/injective/permissions/v1beta1/query.proto index 6e4d4b9c..c1b0d320 100644 --- a/proto/injective/permissions/v1beta1/query.proto +++ b/proto/injective/permissions/v1beta1/query.proto @@ -19,45 +19,89 @@ service Query { option (google.api.http).get = "/injective/permissions/v1beta1/params"; } - // AllNamespaces defines a gRPC query method that returns the permissions + // NamespaceDenoms defines a gRPC query method that returns the denoms for which a namespace exists + rpc NamespaceDenoms(QueryNamespaceDenomsRequest) + returns (QueryNamespaceDenomsResponse) { + option (google.api.http).get = + "/injective/permissions/v1beta1/namespace_denoms"; + } + + // Namespaces defines a gRPC query method that returns the permissions // module's created namespaces. - rpc AllNamespaces(QueryAllNamespacesRequest) - returns (QueryAllNamespacesResponse) { + rpc Namespaces(QueryNamespacesRequest) + returns (QueryNamespacesResponse) { option (google.api.http).get = - "/injective/permissions/v1beta1/all_namespaces"; + "/injective/permissions/v1beta1/namespaces"; } - // NamespaceByDenom defines a gRPC query method that returns the permissions + // Namespace defines a gRPC query method that returns the permissions // module's namespace associated with the provided denom. - rpc NamespaceByDenom(QueryNamespaceByDenomRequest) - returns (QueryNamespaceByDenomResponse) { + rpc Namespace(QueryNamespaceRequest) + returns (QueryNamespaceResponse) { + option (google.api.http).get = + "/injective/permissions/v1beta1/namespace/{denom}"; + } + + // RolesByActor defines a gRPC query method that returns roles for the actor in the namespace + rpc RolesByActor(QueryRolesByActorRequest) + returns (QueryRolesByActorResponse) { + option (google.api.http).get = + "/injective/permissions/v1beta1/roles_by_actor/{denom}/{actor}"; + } + + // ActorsByRole defines a gRPC query method that returns a namespace's roles associated with the provided actor. + rpc ActorsByRole(QueryActorsByRoleRequest) + returns (QueryActorsByRoleResponse) { + option (google.api.http).get = + "/injective/permissions/v1beta1/actors_by_role/{denom}/{role}"; + } + + // RoleManagers defines a gRPC query method that returns a namespace's role managers + rpc RoleManagers(QueryRoleManagersRequest) + returns (QueryRoleManagersResponse) { + option (google.api.http).get = + "/injective/permissions/v1beta1/role_managers/{denom}"; + } + + // RoleManager defines a gRPC query method that returns the roles a given role manager manages for a given namespace + rpc RoleManager(QueryRoleManagerRequest) + returns (QueryRoleManagerResponse) { + option (google.api.http).get = + "/injective/permissions/v1beta1/role_manager/{denom}/{manager}"; + } + + // PolicyStatuses defines a gRPC query method that returns a namespace's policy statuses + rpc PolicyStatuses(QueryPolicyStatusesRequest) + returns (QueryPolicyStatusesResponse) { option (google.api.http).get = - "/injective/permissions/v1beta1/namespace_by_denom"; + "/injective/permissions/v1beta1/policy_statuses/{denom}"; } - // AddressRoles defines a gRPC query method that returns address roles in the - // namespace - rpc AddressRoles(QueryAddressRolesRequest) - returns (QueryAddressRolesResponse) { + // PolicyManagerCapabilities defines a gRPC query method that returns a namespace's policy manager capabilities + rpc PolicyManagerCapabilities(QueryPolicyManagerCapabilitiesRequest) + returns (QueryPolicyManagerCapabilitiesResponse) { option (google.api.http).get = - "/injective/permissions/v1beta1/addresses_by_role"; + "/injective/permissions/v1beta1/policy_manager_capabilities/{denom}"; } - // AddressesByRole defines a gRPC query method that returns a namespace's - // roles associated with the provided address. - rpc AddressesByRole(QueryAddressesByRoleRequest) - returns (QueryAddressesByRoleResponse) { + // Vouchers defines a gRPC query method for the vouchers for a given denom + rpc Vouchers(QueryVouchersRequest) + returns (QueryVouchersResponse) { option (google.api.http).get = - "/injective/permissions/v1beta1/addresses_by_role"; + "/injective/permissions/v1beta1/vouchers/{denom}"; } - // VouchersForAddress defines a gRPC query method that returns a map of - // vouchers that are held by permissions module for this address, keyed by the - // originator address - rpc VouchersForAddress(QueryVouchersForAddressRequest) - returns (QueryVouchersForAddressResponse) { + // Voucher defines a gRPC query method for the vouchers for a given denom and address + rpc Voucher(QueryVoucherRequest) + returns (QueryVoucherResponse) { option (google.api.http).get = - "/injective/permissions/v1beta1/vouchers_for_address"; + "/injective/permissions/v1beta1/voucher/{denom}/{address}"; + } + + // Retrieves the entire permissions module's state + rpc PermissionsModuleState(QueryModuleStateRequest) + returns (QueryModuleStateResponse) { + option (google.api.http).get = "/injective/permissions/v1beta1/module_state"; } } @@ -70,49 +114,118 @@ message QueryParamsResponse { Params params = 1 [ (gogoproto.nullable) = false ]; } -// QueryAllNamespacesRequest is the request type for the Query/AllNamespaces RPC +// QueryNamespaceDenomsRequest is the request type for the Query/NamespaceDenoms RPC // method. -message QueryAllNamespacesRequest {} +message QueryNamespaceDenomsRequest {} -// QueryAllNamespacesResponse is the response type for the Query/AllNamespaces +// QueryNamespaceDenomsResponse is the response type for the Query/NamespaceDenoms // RPC method. -message QueryAllNamespacesResponse { repeated Namespace namespaces = 1; } +message QueryNamespaceDenomsResponse { repeated string denoms = 1; } -// QueryNamespaceByDenomRequest is the request type for the -// Query/NamespaceByDenom RPC method. -message QueryNamespaceByDenomRequest { +// QueryNamespacesRequest is the request type for the Query/Namespaces RPC +// method. +message QueryNamespacesRequest {} + +// QueryNamespacesResponse is the response type for the Query/Namespaces +// RPC method. +message QueryNamespacesResponse { repeated Namespace namespaces = 1; } + +// QueryNamespaceRequest is the request type for the +// Query/Namespace RPC method. +message QueryNamespaceRequest { string denom = 1; - bool include_roles = 2; } -// QueryNamespaceByDenomResponse is the response type for the +// QueryNamespaceResponse is the response type for the // Query/NamespaceByDenom RPC method. -message QueryNamespaceByDenomResponse { Namespace namespace = 1; } +message QueryNamespaceResponse { Namespace namespace = 1; } // QueryAddressesByRoleRequest is the request type for the Query/AddressesByRole // RPC method. -message QueryAddressesByRoleRequest { +message QueryActorsByRoleRequest { string denom = 1; string role = 2; } // QueryAddressesByRoleResponse is the response type for the // Query/AddressesByRole RPC method. -message QueryAddressesByRoleResponse { repeated string addresses = 1; } +message QueryActorsByRoleResponse { repeated string actors = 1; } -message QueryAddressRolesRequest { +// QueryRolesByActorRequest is the request type for the +// Query/RolesByActor RPC method. +message QueryRolesByActorRequest { + string denom = 1; + string actor = 2; +} + +// QueryRolesByActorResponse is the response type for the +// Query/RolesByActor RPC method. +message QueryRolesByActorResponse { repeated string roles = 1; } + +// QueryRoleManagersRequest is the request type for the Query/RoleManagers +// RPC method. +message QueryRoleManagersRequest { + string denom = 1; +} + +// QueryRoleManagersResponse is the response type for the +// Query/RoleManagers RPC method. +message QueryRoleManagersResponse { repeated RoleManager role_managers = 1; } + +// QueryRoleManagerRequest is the request type for the Query/RoleManager +// RPC method. +message QueryRoleManagerRequest { + string denom = 1; + string manager = 2; +} + +// QueryRoleManagerResponse is the response type for the +// Query/RoleManager RPC method. +message QueryRoleManagerResponse { RoleManager role_manager = 1; } + +// QueryPolicyStatusesRequest is the request type for the Query/PolicyStatuses +// RPC method. +message QueryPolicyStatusesRequest { + string denom = 1; +} + +// QueryRoleManagerResponse is the response type for the +// Query/RoleManager RPC method. +message QueryPolicyStatusesResponse { repeated PolicyStatus policy_statuses = 1; } + +// QueryPolicyManagerCapabilitiesRequest is the request type for the Query/PolicyManagerCapabilities +// RPC method. +message QueryPolicyManagerCapabilitiesRequest { string denom = 1; - string address = 2; } -message QueryAddressRolesResponse { repeated string roles = 1; } +// QueryPolicyManagerCapabilitiesResponse is the response type for the +// Query/PolicyManagerCapabilities RPC method. +message QueryPolicyManagerCapabilitiesResponse { repeated PolicyManagerCapability policy_manager_capabilities = 1; } + +message QueryVouchersRequest { string denom = 1; } + +message QueryVouchersResponse { + repeated AddressVoucher vouchers = 1; +} -message QueryVouchersForAddressRequest { string address = 1; } +message QueryVoucherRequest { + string denom = 1; + string address = 2; +} -message QueryVouchersForAddressResponse { - repeated cosmos.base.v1beta1.Coin vouchers = 1 [ +message QueryVoucherResponse { + cosmos.base.v1beta1.Coin voucher = 1 [ (gogoproto.nullable) = false, - (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins", - (gogoproto.jsontag) = "vouchers,omitempty" + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Coin", + (gogoproto.jsontag) = "voucher,omitempty" ]; } + +// QueryModuleStateRequest is the request type for the Query/PermissionsModuleState +// RPC method. +message QueryModuleStateRequest {} + +// QueryModuleStateResponse is the response type for the Query/PermissionsModuleState +// RPC method. +message QueryModuleStateResponse { GenesisState state = 1; } \ No newline at end of file diff --git a/proto/injective/permissions/v1beta1/tx.proto b/proto/injective/permissions/v1beta1/tx.proto index b5749aa7..8ae7b7f2 100644 --- a/proto/injective/permissions/v1beta1/tx.proto +++ b/proto/injective/permissions/v1beta1/tx.proto @@ -18,13 +18,12 @@ service Msg { rpc UpdateParams(MsgUpdateParams) returns (MsgUpdateParamsResponse); rpc CreateNamespace(MsgCreateNamespace) returns (MsgCreateNamespaceResponse); - rpc DeleteNamespace(MsgDeleteNamespace) returns (MsgDeleteNamespaceResponse); rpc UpdateNamespace(MsgUpdateNamespace) returns (MsgUpdateNamespaceResponse); - rpc UpdateNamespaceRoles(MsgUpdateNamespaceRoles) - returns (MsgUpdateNamespaceRolesResponse); - rpc RevokeNamespaceRoles(MsgRevokeNamespaceRoles) - returns (MsgRevokeNamespaceRolesResponse); + rpc UpdateActorRoles(MsgUpdateActorRoles) + returns (MsgUpdateActorRolesResponse); rpc ClaimVoucher(MsgClaimVoucher) returns (MsgClaimVoucherResponse); + + // rpc DeleteNamespace(MsgDeleteNamespace) returns (MsgDeleteNamespaceResponse); } message MsgUpdateParams { @@ -52,69 +51,36 @@ message MsgCreateNamespace { message MsgCreateNamespaceResponse {} -message MsgDeleteNamespace { - option (amino.name) = "permissions/MsgDeleteNamespace"; - option (cosmos.msg.v1.signer) = "sender"; - string sender = 1 [ (gogoproto.moretags) = "yaml:\"sender\"" ]; - - string namespace_denom = 2; -} - -message MsgDeleteNamespaceResponse {} - message MsgUpdateNamespace { option (amino.name) = "permissions/MsgUpdateNamespace"; option (cosmos.msg.v1.signer) = "sender"; string sender = 1 [ (gogoproto.moretags) = "yaml:\"sender\"" ]; - string namespace_denom = - 2; // namespace denom to which this updates are applied - - message MsgSetWasmHook { string new_value = 1; } - MsgSetWasmHook wasm_hook = - 3; // address of smart contract to apply code-based restrictions + string denom = 2; // denom whose namespace updates are to be applied - message MsgSetMintsPaused { bool new_value = 1; } - MsgSetMintsPaused mints_paused = 4; + message SetContractHook { string new_value = 1; } + SetContractHook contract_hook = 3; // address of smart contract to apply code-based restrictions - message MsgSetSendsPaused { bool new_value = 1; } - MsgSetSendsPaused sends_paused = 5; - - message MsgSetBurnsPaused { bool new_value = 1; } - MsgSetBurnsPaused burns_paused = 6; + repeated Role role_permissions = 4; // role permissions to update + repeated RoleManager role_managers = 5; // role managers to update + repeated PolicyStatus policy_statuses = 6; // policy statuses to update + repeated PolicyManagerCapability policy_manager_capabilities = 7; // policy manager capabilities to update } message MsgUpdateNamespaceResponse {} -message MsgUpdateNamespaceRoles { - option (amino.name) = "permissions/MsgUpdateNamespaceRoles"; +message MsgUpdateActorRoles { + option (amino.name) = "permissions/MsgUpdateActorRoles"; option (cosmos.msg.v1.signer) = "sender"; string sender = 1 [ (gogoproto.moretags) = "yaml:\"sender\"" ]; - string namespace_denom = - 2; // namespace denom to which this updates are applied - - repeated Role role_permissions = - 3; // new role definitions or updated permissions for existing roles - repeated AddressRoles address_roles = - 4; // new addresses to add or new roles for existing addresses to - // overwrite current roles -} - -message MsgUpdateNamespaceRolesResponse {} - -message MsgRevokeNamespaceRoles { - option (amino.name) = "permissions/MsgRevokeNamespaceRoles"; - option (cosmos.msg.v1.signer) = "sender"; - string sender = 1 [ (gogoproto.moretags) = "yaml:\"sender\"" ]; + string denom = 2; // namespace denom to which this updates are applied - string namespace_denom = - 2; // namespace denom to which this updates are applied - repeated AddressRoles address_roles_to_revoke = - 3; // {"address" => array of roles to revoke from this address} + repeated RoleActors role_actors_to_add = 3; // roles to add for given actors + repeated RoleActors role_actors_to_revoke = 5; // roles to revoke from given actors } -message MsgRevokeNamespaceRolesResponse {} +message MsgUpdateActorRolesResponse {} message MsgClaimVoucher { option (amino.name) = "permissions/MsgClaimVoucher"; diff --git a/proto/injective/stream/v1beta1/query.proto b/proto/injective/stream/v1beta1/query.proto index 66d168ed..1803d572 100644 --- a/proto/injective/stream/v1beta1/query.proto +++ b/proto/injective/stream/v1beta1/query.proto @@ -80,7 +80,7 @@ enum OrderUpdateStatus { message SpotOrderUpdate { OrderUpdateStatus status = 1; - bytes order_hash = 2; + string order_hash = 2; string cid = 3; SpotOrder order = 4; } @@ -93,7 +93,7 @@ message SpotOrder { message DerivativeOrderUpdate { OrderUpdateStatus status = 1; - bytes order_hash = 2; + string order_hash = 2; string cid = 3; DerivativeOrder order = 4; } @@ -155,7 +155,7 @@ message SpotTrade { (gogoproto.customtype) = "cosmossdk.io/math.LegacyDec", (gogoproto.nullable) = false ]; - bytes order_hash = 8; + string order_hash = 8; string fee_recipient_address = 9 [ (gogoproto.nullable) = true ]; string cid = 10; string trade_id = 11; diff --git a/proto/injective/tokenfactory/v1beta1/authorityMetadata.proto b/proto/injective/tokenfactory/v1beta1/authorityMetadata.proto index fd68ac49..54cc9d18 100644 --- a/proto/injective/tokenfactory/v1beta1/authorityMetadata.proto +++ b/proto/injective/tokenfactory/v1beta1/authorityMetadata.proto @@ -14,4 +14,7 @@ message DenomAuthorityMetadata { // Can be empty for no admin, or a valid injective address string admin = 1 [ (gogoproto.moretags) = "yaml:\"admin\"" ]; + + // true if the admin can burn tokens from other addresses + bool admin_burn_allowed = 2 [ (gogoproto.moretags) = "yaml:\"admin_burn_allowed\"" ]; } diff --git a/proto/injective/tokenfactory/v1beta1/events.proto b/proto/injective/tokenfactory/v1beta1/events.proto index fd20575b..6efc471e 100644 --- a/proto/injective/tokenfactory/v1beta1/events.proto +++ b/proto/injective/tokenfactory/v1beta1/events.proto @@ -8,27 +8,29 @@ import "injective/tokenfactory/v1beta1/authorityMetadata.proto"; option go_package = "github.com/InjectiveLabs/injective-core/injective-chain/modules/tokenfactory/types"; -message EventCreateTFDenom { +message EventCreateDenom { string account = 1; string denom = 2; } -message EventMintTFDenom { - string recipient_address = 1; +message EventMint { + string minter = 1; cosmos.base.v1beta1.Coin amount = 2 [ (gogoproto.nullable) = false ]; + string receiver = 3; } -message EventBurnDenom { - string burner_address = 1; +message EventBurn { + string burner = 1; cosmos.base.v1beta1.Coin amount = 2 [ (gogoproto.nullable) = false ]; + string burn_from = 3; } -message EventChangeTFAdmin { +message EventChangeAdmin { string denom = 1; string new_admin_address = 2; } -message EventSetTFDenomMetadata { +message EventSetDenomMetadata { string denom = 1; cosmos.bank.v1beta1.Metadata metadata = 2 [ (gogoproto.nullable) = false ]; } diff --git a/proto/injective/tokenfactory/v1beta1/tx.proto b/proto/injective/tokenfactory/v1beta1/tx.proto index 7ece2944..568b005b 100644 --- a/proto/injective/tokenfactory/v1beta1/tx.proto +++ b/proto/injective/tokenfactory/v1beta1/tx.proto @@ -11,7 +11,7 @@ import "amino/amino.proto"; option go_package = "github.com/InjectiveLabs/injective-core/injective-chain/modules/tokenfactory/types"; -// Msg defines the tokefactory module's gRPC message service. +// Msg defines the tokenfactory module's gRPC message service. service Msg { option (cosmos.msg.v1.service) = true; @@ -22,10 +22,6 @@ service Msg { rpc SetDenomMetadata(MsgSetDenomMetadata) returns (MsgSetDenomMetadataResponse); rpc UpdateParams(MsgUpdateParams) returns (MsgUpdateParamsResponse); - - // ForceTransfer is deactivated for now because we need to think through edge - // cases rpc ForceTransfer(MsgForceTransfer) returns - // (MsgForceTransferResponse); } // MsgCreateDenom defines the message structure for the CreateDenom gRPC service @@ -47,6 +43,8 @@ message MsgCreateDenom { string name = 3 [ (gogoproto.moretags) = "yaml:\"name\"" ]; string symbol = 4 [ (gogoproto.moretags) = "yaml:\"symbol\"" ]; uint32 decimals = 5 [ (gogoproto.moretags) = "yaml:\"decimals\"" ]; + // true if admins are allowed to burn tokens from other addresses + bool allow_admin_burn = 6 [ (gogoproto.moretags) = "yaml:\"allow_admin_burn\"" ]; } // MsgCreateDenomResponse is the return value of MsgCreateDenom @@ -56,8 +54,8 @@ message MsgCreateDenomResponse { [ (gogoproto.moretags) = "yaml:\"new_token_denom\"" ]; } -// MsgMint is the sdk.Msg type for allowing an admin account to mint -// more of a token. For now, we only support minting to the sender account +// MsgMint is the sdk.Msg type for allowing an admin account or other permitted accounts to mint +// more of a token. message MsgMint { option (amino.name) = "injective/tokenfactory/mint"; option (cosmos.msg.v1.signer) = "sender"; @@ -67,12 +65,13 @@ message MsgMint { (gogoproto.moretags) = "yaml:\"amount\"", (gogoproto.nullable) = false ]; + string receiver = 3 [ (gogoproto.moretags) = "yaml:\"receiver\"" ]; } message MsgMintResponse {} // MsgBurn is the sdk.Msg type for allowing an admin account to burn -// a token. For now, we only support burning from the sender account. +// a token. message MsgBurn { option (amino.name) = "injective/tokenfactory/burn"; option (cosmos.msg.v1.signer) = "sender"; @@ -82,6 +81,10 @@ message MsgBurn { (gogoproto.moretags) = "yaml:\"amount\"", (gogoproto.nullable) = false ]; + string burnFromAddress = 3 [ + (gogoproto.moretags) = "yaml:\"burn_from_address\"", + (amino.dont_omitempty) = true + ]; } message MsgBurnResponse {} @@ -101,20 +104,6 @@ message MsgChangeAdmin { // MsgChangeAdmin message. message MsgChangeAdminResponse {} -// message MsgForceTransfer { -// string sender = 1 [ (gogoproto.moretags) = "yaml:\"sender\"" ]; -// cosmos.base.v1beta1.Coin amount = 2 [ -// (gogoproto.moretags) = "yaml:\"amount\"", -// (gogoproto.nullable) = false -// ]; -// string transferFromAddress = 3 -// [ (gogoproto.moretags) = "yaml:\"transfer_from_address\"" ]; -// string transferToAddress = 4 -// [ (gogoproto.moretags) = "yaml:\"transfer_to_address\"" ]; -// } - -// message MsgForceTransferResponse {} - // MsgSetDenomMetadata is the sdk.Msg type for allowing an admin account to set // the denom's bank metadata message MsgSetDenomMetadata { @@ -126,6 +115,12 @@ message MsgSetDenomMetadata { (gogoproto.moretags) = "yaml:\"metadata\"", (gogoproto.nullable) = false ]; + + message AdminBurnDisabled { + // true if the admin burn capability should be disabled + bool should_disable = 1 [ (gogoproto.moretags) = "yaml:\"should_disable\"" ]; + } + AdminBurnDisabled admin_burn_disabled = 3 [ (gogoproto.moretags) = "yaml:\"admin_burn_disabled\"" ]; } // MsgSetDenomMetadataResponse defines the response structure for an executed diff --git a/proto/injective/wasmx/v1/authz.proto b/proto/injective/wasmx/v1/authz.proto new file mode 100644 index 00000000..4f03a8c0 --- /dev/null +++ b/proto/injective/wasmx/v1/authz.proto @@ -0,0 +1,21 @@ +syntax = "proto3"; +package injective.wasmx.v1; + +import "cosmwasm/wasm/v1/authz.proto"; +import "cosmos_proto/cosmos.proto"; +import "amino/amino.proto"; +import "gogoproto/gogo.proto"; + +option go_package = "github.com/InjectiveLabs/injective-core/injective-chain/modules/wasmx/types"; + +// ContractExecutionAuthorization defines authorization for wasm execute. +// Since: wasmd 0.30 +message ContractExecutionCompatAuthorization { + option (amino.name) = "wasmx/ContractExecutionCompatAuthorization"; + option (cosmos_proto.implements_interface) = + "cosmos.authz.v1beta1.Authorization"; + + // Grants for contract executions + repeated cosmwasm.wasm.v1.ContractGrant grants = 1 + [ (gogoproto.nullable) = false, (amino.dont_omitempty) = true ]; +} \ No newline at end of file