diff --git a/CHANGELOG.md b/CHANGELOG.md index dbee224c917..6f7ab03e294 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -49,6 +49,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### API breaks * [#4336](https://github.com/osmosis-labs/osmosis/pull/4336) Move epochs module into its own go.mod +* [#4658](https://github.com/osmosis-labs/osmosis/pull/4658) Deprecate x/gamm Pool query. The new one is located in x/poolmanager. ## v15.0.0 diff --git a/proto/osmosis/concentrated-liquidity/pool-model/query.proto b/proto/osmosis/concentrated-liquidity/pool-model/query.proto index 780f62d9270..cb8f69fcef9 100644 --- a/proto/osmosis/concentrated-liquidity/pool-model/query.proto +++ b/proto/osmosis/concentrated-liquidity/pool-model/query.proto @@ -23,12 +23,6 @@ service Query { "/osmosis/concentratedliquidity/v1beta1/pools"; } - // Pool returns the Pool specified by the pool id - rpc Pool(QueryPoolRequest) returns (QueryPoolResponse) { - option (google.api.http).get = - "/osmosis/concentratedliquidity/v1beta1/pools/{pool_id}"; - } - // Params returns concentrated liquidity module params. rpc Params(QueryParamsRequest) returns (QueryParamsResponse) { option (google.api.http).get = @@ -63,14 +57,6 @@ message QueryUserPositionsResponse { [ (gogoproto.nullable) = false ]; } -//=============================== Pool -message QueryPoolRequest { - uint64 pool_id = 1 [ (gogoproto.moretags) = "yaml:\"pool_id\"" ]; -} -message QueryPoolResponse { - google.protobuf.Any pool = 1 [ (cosmos_proto.accepts_interface) = "PoolI" ]; -} - //=============================== Pools message QueryPoolsRequest { // pagination defines an optional pagination for the request. diff --git a/proto/osmosis/gamm/v1beta1/query.proto b/proto/osmosis/gamm/v1beta1/query.proto index 68f9db369a4..39985fad0b0 100644 --- a/proto/osmosis/gamm/v1beta1/query.proto +++ b/proto/osmosis/gamm/v1beta1/query.proto @@ -36,8 +36,9 @@ service Query { option (google.api.http).get = "/osmosis/gamm/v1beta1/filtered_pools"; } - // Per Pool gRPC Endpoints + // Deprecated: please use the alternative in x/poolmanager rpc Pool(QueryPoolRequest) returns (QueryPoolResponse) { + option deprecated = true; option (google.api.http).get = "/osmosis/gamm/v1beta1/pools/{pool_id}"; } @@ -106,10 +107,14 @@ service Query { } //=============================== Pool +// Deprecated: please use the alternative in x/poolmanager message QueryPoolRequest { + option deprecated = true; uint64 pool_id = 1 [ (gogoproto.moretags) = "yaml:\"pool_id\"" ]; } +// Deprecated: please use the alternative in x/poolmanager message QueryPoolResponse { + option deprecated = true; google.protobuf.Any pool = 1 [ (cosmos_proto.accepts_interface) = "PoolI" ]; } diff --git a/proto/osmosis/poolmanager/v1beta1/query.proto b/proto/osmosis/poolmanager/v1beta1/query.proto index 69e32f52f3b..223f2997a52 100644 --- a/proto/osmosis/poolmanager/v1beta1/query.proto +++ b/proto/osmosis/poolmanager/v1beta1/query.proto @@ -34,9 +34,16 @@ service Query { "/osmosis/gamm/v1beta1/{pool_id}/estimate/swap_exact_amount_out"; } + // Returns the total number of pools existing in Osmosis. rpc NumPools(NumPoolsRequest) returns (NumPoolsResponse) { option (google.api.http).get = "/osmosis/poolmanager/v1beta1/num_pools"; } + + // Pool returns the Pool specified by the pool id + rpc Pool(PoolRequest) returns (PoolResponse) { + option (google.api.http).get = + "/osmosis/poolmanager/v1beta1/pools/{pool_id}"; + } } //=============================== Params @@ -88,3 +95,11 @@ message NumPoolsRequest {} message NumPoolsResponse { uint64 num_pools = 1 [ (gogoproto.moretags) = "yaml:\"num_pools\"" ]; } + +//=============================== Pool +message PoolRequest { + uint64 pool_id = 1 [ (gogoproto.moretags) = "yaml:\"pool_id\"" ]; +} +message PoolResponse { + google.protobuf.Any pool = 1 [ (cosmos_proto.accepts_interface) = "PoolI" ]; +} diff --git a/proto/osmosis/poolmanager/v1beta1/query.yml b/proto/osmosis/poolmanager/v1beta1/query.yml index 329f0d8ca74..62480c49a23 100644 --- a/proto/osmosis/poolmanager/v1beta1/query.yml +++ b/proto/osmosis/poolmanager/v1beta1/query.yml @@ -23,3 +23,8 @@ queries: query_func: "k.NumPools" cli: cmd: "NumPools" + Pool: + proto_wrapper: + query_func: "k.Pool" + cli: + cmd: "Pool" diff --git a/tests/cl-go-client/main.go b/tests/cl-go-client/main.go index 6d836bf5602..f79b7ef9371 100644 --- a/tests/cl-go-client/main.go +++ b/tests/cl-go-client/main.go @@ -16,7 +16,7 @@ import ( cl "github.com/osmosis-labs/osmosis/v15/x/concentrated-liquidity" "github.com/osmosis-labs/osmosis/v15/x/concentrated-liquidity/model" cltypes "github.com/osmosis-labs/osmosis/v15/x/concentrated-liquidity/types" - clquery "github.com/osmosis-labs/osmosis/v15/x/concentrated-liquidity/types/query" + poolmanagerqueryproto "github.com/osmosis-labs/osmosis/v15/x/poolmanager/client/queryproto" ) const ( @@ -62,11 +62,11 @@ func main() { log.Println("connected to: ", "chain-id", statusResp.NodeInfo.Network, "height", statusResp.SyncInfo.LatestBlockHeight) - // Instantiate a query client for your `blog` blockchain - clQueryClient := clquery.NewQueryClient(igniteClient.Context()) + // Instantiate a query client + clQueryClient := poolmanagerqueryproto.NewQueryClient(igniteClient.Context()) // Query pool with id 1 and create new if does not exist. - _, err = clQueryClient.Pool(ctx, &clquery.QueryPoolRequest{PoolId: expectedPoolId}) + _, err = clQueryClient.Pool(ctx, &poolmanagerqueryproto.PoolRequest{PoolId: expectedPoolId}) if err != nil { if !strings.Contains(err.Error(), cltypes.PoolNotFoundError{PoolId: expectedPoolId}.Error()) { log.Fatal(err) diff --git a/tests/e2e/configurer/chain/queries.go b/tests/e2e/configurer/chain/queries.go index 6260693826a..da3e653aaee 100644 --- a/tests/e2e/configurer/chain/queries.go +++ b/tests/e2e/configurer/chain/queries.go @@ -24,6 +24,7 @@ import ( cltypes "github.com/osmosis-labs/osmosis/v15/x/concentrated-liquidity/types" "github.com/osmosis-labs/osmosis/v15/x/concentrated-liquidity/types/query" gammtypes "github.com/osmosis-labs/osmosis/v15/x/gamm/types" + poolmanagerqueryproto "github.com/osmosis-labs/osmosis/v15/x/poolmanager/client/queryproto" poolmanagertypes "github.com/osmosis-labs/osmosis/v15/x/poolmanager/types" protorevtypes "github.com/osmosis-labs/osmosis/v15/x/protorev/types" superfluidtypes "github.com/osmosis-labs/osmosis/v15/x/superfluid/types" @@ -281,11 +282,11 @@ func (n *NodeConfig) QueryConcentratedPositions(address string) []model.Position return positionsResponse.Positions } func (n *NodeConfig) QueryConcentratedPool(poolId uint64) (cltypes.ConcentratedPoolExtension, error) { - path := fmt.Sprintf("/osmosis/concentratedliquidity/v1beta1/pools/%d", poolId) + path := fmt.Sprintf("/osmosis/poolmanager/v1beta1/pools/%d", poolId) bz, err := n.QueryGRPCGateway(path) require.NoError(n.t, err) - var poolResponse query.QueryPoolResponse + var poolResponse poolmanagerqueryproto.PoolResponse err = util.Cdc.UnmarshalJSON(bz, &poolResponse) require.NoError(n.t, err) diff --git a/x/concentrated-liquidity/client/cli/query.go b/x/concentrated-liquidity/client/cli/query.go index 6bb821500af..c315475bca7 100644 --- a/x/concentrated-liquidity/client/cli/query.go +++ b/x/concentrated-liquidity/client/cli/query.go @@ -12,7 +12,6 @@ import ( // GetQueryCmd returns the cli query commands for this module. func GetQueryCmd() *cobra.Command { cmd := osmocli.QueryIndexCmd(types.ModuleName) - osmocli.AddQueryCmd(cmd, query.NewQueryClient, GetCmdPool) osmocli.AddQueryCmd(cmd, query.NewQueryClient, GetCmdPools) osmocli.AddQueryCmd(cmd, query.NewQueryClient, GetUserPositions) osmocli.AddQueryCmd(cmd, query.NewQueryClient, GetClaimableFees) @@ -34,14 +33,6 @@ func GetUserPositions() (*osmocli.QueryDescriptor, *query.QueryUserPositionsRequ &query.QueryUserPositionsRequest{} } -func GetCmdPool() (*osmocli.QueryDescriptor, *query.QueryPoolRequest) { - return &osmocli.QueryDescriptor{ - Use: "pool [poolID]", - Short: "Query pool", - Long: `{{.Short}}{{.ExampleHeader}} -{{.CommandPrefix}} pool 1`}, &query.QueryPoolRequest{} -} - func GetCmdPools() (*osmocli.QueryDescriptor, *query.QueryPoolsRequest) { return &osmocli.QueryDescriptor{ Use: "pools", diff --git a/x/concentrated-liquidity/grpc_query.go b/x/concentrated-liquidity/grpc_query.go index ce21c6ff1d2..b735579ebe6 100644 --- a/x/concentrated-liquidity/grpc_query.go +++ b/x/concentrated-liquidity/grpc_query.go @@ -37,29 +37,6 @@ func NewQuerier(k Keeper) Querier { return Querier{Keeper: k} } -// Pool checks if a pool exists and returns the desired pool. -func (q Querier) Pool( - ctx context.Context, - req *clquery.QueryPoolRequest, -) (*clquery.QueryPoolResponse, error) { - if req == nil { - return nil, status.Error(codes.InvalidArgument, "empty request") - } - sdkCtx := sdk.UnwrapSDKContext(ctx) - - pool, err := q.Keeper.GetPool(sdkCtx, req.PoolId) - if err != nil { - return nil, status.Error(codes.Internal, err.Error()) - } - - any, err := codectypes.NewAnyWithValue(pool) - if err != nil { - return nil, err - } - - return &clquery.QueryPoolResponse{Pool: any}, nil -} - // UserPositions returns positions of a specified address func (q Querier) UserPositions(ctx context.Context, req *clquery.QueryUserPositionsRequest) (*clquery.QueryUserPositionsResponse, error) { if req == nil { diff --git a/x/concentrated-liquidity/types/query/query.pb.go b/x/concentrated-liquidity/types/query/query.pb.go index b75a74a0efa..92fa9c99897 100644 --- a/x/concentrated-liquidity/types/query/query.pb.go +++ b/x/concentrated-liquidity/types/query/query.pb.go @@ -134,95 +134,6 @@ func (m *QueryUserPositionsResponse) GetPositions() []model.PositionWithUnderlyi return nil } -// =============================== Pool -type QueryPoolRequest struct { - PoolId uint64 `protobuf:"varint,1,opt,name=pool_id,json=poolId,proto3" json:"pool_id,omitempty" yaml:"pool_id"` -} - -func (m *QueryPoolRequest) Reset() { *m = QueryPoolRequest{} } -func (m *QueryPoolRequest) String() string { return proto.CompactTextString(m) } -func (*QueryPoolRequest) ProtoMessage() {} -func (*QueryPoolRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ce34c1e206115391, []int{2} -} -func (m *QueryPoolRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryPoolRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryPoolRequest.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 *QueryPoolRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryPoolRequest.Merge(m, src) -} -func (m *QueryPoolRequest) XXX_Size() int { - return m.Size() -} -func (m *QueryPoolRequest) XXX_DiscardUnknown() { - xxx_messageInfo_QueryPoolRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryPoolRequest proto.InternalMessageInfo - -func (m *QueryPoolRequest) GetPoolId() uint64 { - if m != nil { - return m.PoolId - } - return 0 -} - -type QueryPoolResponse struct { - Pool *types.Any `protobuf:"bytes,1,opt,name=pool,proto3" json:"pool,omitempty"` -} - -func (m *QueryPoolResponse) Reset() { *m = QueryPoolResponse{} } -func (m *QueryPoolResponse) String() string { return proto.CompactTextString(m) } -func (*QueryPoolResponse) ProtoMessage() {} -func (*QueryPoolResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_ce34c1e206115391, []int{3} -} -func (m *QueryPoolResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryPoolResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryPoolResponse.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 *QueryPoolResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryPoolResponse.Merge(m, src) -} -func (m *QueryPoolResponse) XXX_Size() int { - return m.Size() -} -func (m *QueryPoolResponse) XXX_DiscardUnknown() { - xxx_messageInfo_QueryPoolResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryPoolResponse proto.InternalMessageInfo - -func (m *QueryPoolResponse) GetPool() *types.Any { - if m != nil { - return m.Pool - } - return nil -} - // =============================== Pools type QueryPoolsRequest struct { // pagination defines an optional pagination for the request. @@ -233,7 +144,7 @@ func (m *QueryPoolsRequest) Reset() { *m = QueryPoolsRequest{} } func (m *QueryPoolsRequest) String() string { return proto.CompactTextString(m) } func (*QueryPoolsRequest) ProtoMessage() {} func (*QueryPoolsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ce34c1e206115391, []int{4} + return fileDescriptor_ce34c1e206115391, []int{2} } func (m *QueryPoolsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -279,7 +190,7 @@ func (m *QueryPoolsResponse) Reset() { *m = QueryPoolsResponse{} } func (m *QueryPoolsResponse) String() string { return proto.CompactTextString(m) } func (*QueryPoolsResponse) ProtoMessage() {} func (*QueryPoolsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_ce34c1e206115391, []int{5} + return fileDescriptor_ce34c1e206115391, []int{3} } func (m *QueryPoolsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -330,7 +241,7 @@ func (m *QueryParamsRequest) Reset() { *m = QueryParamsRequest{} } func (m *QueryParamsRequest) String() string { return proto.CompactTextString(m) } func (*QueryParamsRequest) ProtoMessage() {} func (*QueryParamsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ce34c1e206115391, []int{6} + return fileDescriptor_ce34c1e206115391, []int{4} } func (m *QueryParamsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -367,7 +278,7 @@ func (m *QueryParamsResponse) Reset() { *m = QueryParamsResponse{} } func (m *QueryParamsResponse) String() string { return proto.CompactTextString(m) } func (*QueryParamsResponse) ProtoMessage() {} func (*QueryParamsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_ce34c1e206115391, []int{7} + return fileDescriptor_ce34c1e206115391, []int{5} } func (m *QueryParamsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -414,7 +325,7 @@ func (m *QueryLiquidityDepthsForRangeRequest) Reset() { *m = QueryLiquid func (m *QueryLiquidityDepthsForRangeRequest) String() string { return proto.CompactTextString(m) } func (*QueryLiquidityDepthsForRangeRequest) ProtoMessage() {} func (*QueryLiquidityDepthsForRangeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ce34c1e206115391, []int{8} + return fileDescriptor_ce34c1e206115391, []int{6} } func (m *QueryLiquidityDepthsForRangeRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -458,7 +369,7 @@ func (m *QueryLiquidityDepthsForRangeResponse) Reset() { *m = QueryLiqui func (m *QueryLiquidityDepthsForRangeResponse) String() string { return proto.CompactTextString(m) } func (*QueryLiquidityDepthsForRangeResponse) ProtoMessage() {} func (*QueryLiquidityDepthsForRangeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_ce34c1e206115391, []int{9} + return fileDescriptor_ce34c1e206115391, []int{7} } func (m *QueryLiquidityDepthsForRangeResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -503,7 +414,7 @@ func (m *LiquidityDepth) Reset() { *m = LiquidityDepth{} } func (m *LiquidityDepth) String() string { return proto.CompactTextString(m) } func (*LiquidityDepth) ProtoMessage() {} func (*LiquidityDepth) Descriptor() ([]byte, []int) { - return fileDescriptor_ce34c1e206115391, []int{10} + return fileDescriptor_ce34c1e206115391, []int{8} } func (m *LiquidityDepth) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -544,7 +455,7 @@ func (m *QueryClaimableFeesRequest) Reset() { *m = QueryClaimableFeesReq func (m *QueryClaimableFeesRequest) String() string { return proto.CompactTextString(m) } func (*QueryClaimableFeesRequest) ProtoMessage() {} func (*QueryClaimableFeesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ce34c1e206115391, []int{11} + return fileDescriptor_ce34c1e206115391, []int{9} } func (m *QueryClaimableFeesRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -609,7 +520,7 @@ func (m *QueryClaimableFeesResponse) Reset() { *m = QueryClaimableFeesRe func (m *QueryClaimableFeesResponse) String() string { return proto.CompactTextString(m) } func (*QueryClaimableFeesResponse) ProtoMessage() {} func (*QueryClaimableFeesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_ce34c1e206115391, []int{12} + return fileDescriptor_ce34c1e206115391, []int{10} } func (m *QueryClaimableFeesResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -648,8 +559,6 @@ func (m *QueryClaimableFeesResponse) GetClaimableFees() []types2.Coin { func init() { proto.RegisterType((*QueryUserPositionsRequest)(nil), "osmosis.concentratedliquidity.v1beta1.QueryUserPositionsRequest") proto.RegisterType((*QueryUserPositionsResponse)(nil), "osmosis.concentratedliquidity.v1beta1.QueryUserPositionsResponse") - proto.RegisterType((*QueryPoolRequest)(nil), "osmosis.concentratedliquidity.v1beta1.QueryPoolRequest") - proto.RegisterType((*QueryPoolResponse)(nil), "osmosis.concentratedliquidity.v1beta1.QueryPoolResponse") proto.RegisterType((*QueryPoolsRequest)(nil), "osmosis.concentratedliquidity.v1beta1.QueryPoolsRequest") proto.RegisterType((*QueryPoolsResponse)(nil), "osmosis.concentratedliquidity.v1beta1.QueryPoolsResponse") proto.RegisterType((*QueryParamsRequest)(nil), "osmosis.concentratedliquidity.v1beta1.QueryParamsRequest") @@ -666,76 +575,72 @@ func init() { } var fileDescriptor_ce34c1e206115391 = []byte{ - // 1095 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0x4d, 0x6f, 0x1b, 0x45, - 0x18, 0xce, 0xe6, 0xc3, 0x95, 0x27, 0x38, 0x34, 0x43, 0x2a, 0x1a, 0x0b, 0xec, 0x6a, 0xa1, 0x25, - 0xd0, 0x7a, 0x57, 0x49, 0x63, 0x08, 0x11, 0x5f, 0xb1, 0xab, 0x50, 0x53, 0x84, 0xca, 0x8a, 0x0a, - 0xa9, 0x20, 0x59, 0xeb, 0xdd, 0x89, 0xb3, 0xf2, 0x7a, 0x67, 0xb3, 0xb3, 0x4e, 0x6b, 0x55, 0xb9, - 0x70, 0x07, 0x21, 0xd1, 0x13, 0x57, 0xfe, 0x01, 0x42, 0x48, 0xfc, 0x83, 0x8a, 0x53, 0x25, 0x2e, - 0x15, 0x48, 0x06, 0x25, 0xfc, 0x02, 0xdf, 0x91, 0xd0, 0xcc, 0xbc, 0x6b, 0xef, 0x1a, 0xa7, 0xf6, - 0xa6, 0x9c, 0xec, 0xf1, 0xfb, 0xf1, 0x3c, 0xcf, 0x3b, 0xef, 0xbc, 0x33, 0x46, 0x65, 0xca, 0xda, - 0x94, 0x39, 0x4c, 0xb7, 0xa8, 0x67, 0x11, 0x2f, 0x0c, 0xcc, 0x90, 0xd8, 0x25, 0xd7, 0x39, 0xe8, - 0x38, 0xb6, 0x13, 0x76, 0x75, 0x9f, 0x52, 0xb7, 0xd4, 0xa6, 0x36, 0x71, 0xf5, 0x83, 0x0e, 0x09, - 0xba, 0x9a, 0x1f, 0xd0, 0x90, 0xe2, 0xcb, 0x10, 0xa6, 0xc5, 0xc3, 0x06, 0x51, 0xda, 0xe1, 0x7a, - 0x83, 0x84, 0xe6, 0x7a, 0x7e, 0xa5, 0x49, 0x9b, 0x54, 0x44, 0xe8, 0xfc, 0x9b, 0x0c, 0xce, 0x5f, - 0x9d, 0x84, 0x69, 0x06, 0x66, 0x9b, 0x81, 0x73, 0xc1, 0x12, 0xde, 0x7a, 0xc3, 0x64, 0x44, 0x87, - 0xbc, 0xba, 0x45, 0x1d, 0x0f, 0xec, 0x6f, 0xc4, 0xed, 0x82, 0xe2, 0xc0, 0xcb, 0x37, 0x9b, 0x8e, - 0x67, 0x86, 0x0e, 0x8d, 0x7c, 0x5f, 0x6a, 0x52, 0xda, 0x74, 0x89, 0x6e, 0xfa, 0x8e, 0x6e, 0x7a, - 0x1e, 0x0d, 0x85, 0x31, 0x42, 0x5a, 0x05, 0xab, 0x58, 0x35, 0x3a, 0x7b, 0xba, 0xe9, 0x75, 0x23, - 0x93, 0x04, 0xa9, 0x4b, 0x29, 0x72, 0x01, 0xa6, 0xe2, 0x68, 0x54, 0xe8, 0xb4, 0x09, 0x0b, 0xcd, - 0xb6, 0x1f, 0x09, 0x18, 0x75, 0xb0, 0x3b, 0x41, 0x9c, 0x54, 0x69, 0xe2, 0x0e, 0x30, 0x67, 0xe8, - 0xae, 0x1e, 0xa2, 0xd5, 0x4f, 0xb9, 0xca, 0x3b, 0x8c, 0x04, 0xb7, 0xc1, 0xc4, 0x0c, 0x72, 0xd0, - 0x21, 0x2c, 0xc4, 0xd7, 0xd0, 0x39, 0xd3, 0xb6, 0x03, 0xc2, 0xd8, 0x45, 0xe5, 0x92, 0xb2, 0x96, - 0xad, 0xe0, 0x7e, 0xaf, 0xb8, 0xd4, 0x35, 0xdb, 0xee, 0xb6, 0x0a, 0x06, 0xd5, 0x88, 0x5c, 0xf0, - 0x55, 0x74, 0x8e, 0x6f, 0x6f, 0xdd, 0xb1, 0x2f, 0xce, 0x5e, 0x52, 0xd6, 0xe6, 0xe3, 0xde, 0x60, - 0x50, 0x8d, 0x0c, 0xff, 0x56, 0xb3, 0xd5, 0xaf, 0x15, 0x94, 0x1f, 0x07, 0xcc, 0x7c, 0xea, 0x31, - 0x82, 0x29, 0xca, 0x46, 0x44, 0x39, 0xf6, 0xdc, 0xda, 0xe2, 0xc6, 0x2d, 0x6d, 0xaa, 0x26, 0xd1, - 0xa2, 0x64, 0x9f, 0x3b, 0xe1, 0xfe, 0x1d, 0xcf, 0x26, 0x81, 0xdb, 0x75, 0xbc, 0xe6, 0x0e, 0x63, - 0x24, 0xac, 0x04, 0xc4, 0x6c, 0xd9, 0xf4, 0x9e, 0x57, 0x99, 0x7f, 0xd4, 0x2b, 0xce, 0x18, 0x43, - 0x0c, 0xf5, 0x7d, 0x74, 0x5e, 0xd0, 0xb9, 0x4d, 0xa9, 0x1b, 0xc9, 0x8f, 0x09, 0x52, 0x26, 0x0a, - 0xba, 0x89, 0x96, 0x63, 0x09, 0x40, 0xc6, 0x75, 0x34, 0xcf, 0xcd, 0x22, 0x7c, 0x71, 0x63, 0x45, - 0x93, 0x7b, 0xa7, 0x45, 0x7b, 0xa7, 0xed, 0x78, 0xdd, 0x4a, 0xf6, 0xd7, 0x9f, 0x4a, 0x0b, 0x3c, - 0xaa, 0x66, 0x08, 0x67, 0xf5, 0x8b, 0x58, 0xa6, 0xc1, 0x56, 0xec, 0x22, 0x34, 0xec, 0x3f, 0x51, - 0xdf, 0xc5, 0x8d, 0x2b, 0x1a, 0xb4, 0x0e, 0x6f, 0x56, 0x4d, 0x9e, 0xa7, 0x41, 0x15, 0xcc, 0x26, - 0x81, 0x58, 0x23, 0x16, 0xa9, 0x3e, 0x54, 0x10, 0x8e, 0x67, 0x07, 0xa2, 0x65, 0xb4, 0xc0, 0xb1, - 0xa3, 0x5a, 0x4f, 0x64, 0x2a, 0xbd, 0xf1, 0x87, 0x63, 0x58, 0xbd, 0x36, 0x91, 0x95, 0xc4, 0x4c, - 0xd0, 0x5a, 0x89, 0x58, 0x89, 0xb3, 0x0a, 0xc4, 0xd5, 0xbb, 0xe8, 0x85, 0xc4, 0xaf, 0x40, 0xb6, - 0x8a, 0x32, 0xf2, 0x4c, 0x43, 0x5d, 0x2f, 0x4f, 0xe8, 0x0c, 0x19, 0x0e, 0x7b, 0x0e, 0xa1, 0xea, - 0xf7, 0xb3, 0xe8, 0x15, 0x91, 0xfc, 0xe3, 0xc8, 0xef, 0x06, 0xf1, 0xc3, 0x7d, 0xb6, 0x4b, 0x03, - 0xc3, 0xf4, 0x06, 0xc5, 0x4b, 0xd5, 0x04, 0xb8, 0x81, 0x90, 0x4b, 0xef, 0x91, 0xa0, 0x1e, 0x3a, - 0x56, 0x4b, 0xd4, 0x23, 0x5b, 0xa9, 0x72, 0xd8, 0xdf, 0x7b, 0xc5, 0x2b, 0x4d, 0x27, 0xdc, 0xef, - 0x34, 0x34, 0x8b, 0xb6, 0xe1, 0xc8, 0xc3, 0x47, 0x89, 0xd9, 0x2d, 0x3d, 0xec, 0xfa, 0x84, 0x69, - 0x35, 0x2f, 0xec, 0xf7, 0x8a, 0xcb, 0x32, 0xfb, 0x30, 0x93, 0x6a, 0x64, 0xc5, 0xe2, 0x33, 0xc7, - 0x6a, 0x71, 0x8c, 0x8e, 0xef, 0x47, 0x18, 0x73, 0xcf, 0x86, 0x31, 0xcc, 0xa4, 0x1a, 0x59, 0xb1, - 0xe0, 0x18, 0xea, 0x37, 0x0a, 0x7a, 0xf5, 0xe9, 0xc5, 0x81, 0xad, 0xd8, 0x43, 0xe7, 0x07, 0x75, - 0xae, 0xdb, 0xc2, 0x07, 0x5a, 0xa8, 0x3c, 0xe5, 0x71, 0x4d, 0x22, 0xc0, 0x26, 0x3d, 0xef, 0x26, - 0x71, 0xd5, 0x3f, 0x14, 0xb4, 0x94, 0xf4, 0xc4, 0x2d, 0x94, 0x1b, 0x42, 0x7b, 0x24, 0x84, 0x11, - 0xb5, 0x9b, 0xa2, 0x14, 0x37, 0x88, 0xd5, 0xef, 0x15, 0x57, 0xa0, 0xdc, 0xf1, 0x64, 0xaa, 0xf1, - 0xdc, 0x60, 0xfd, 0x09, 0x09, 0xf1, 0x97, 0x08, 0xf1, 0x22, 0xd5, 0x1d, 0xcf, 0x26, 0xf7, 0x61, - 0x63, 0xdf, 0x4d, 0x5d, 0xf4, 0x45, 0x89, 0x04, 0xe5, 0xe6, 0x1f, 0x35, 0x9e, 0x4f, 0xfd, 0x53, - 0x81, 0x29, 0x5c, 0x75, 0x4d, 0xa7, 0x6d, 0x36, 0x5c, 0xb2, 0x4b, 0x08, 0x3b, 0x53, 0x07, 0xbe, - 0x8e, 0x32, 0x8c, 0xf0, 0xa9, 0x07, 0x24, 0x97, 0xfb, 0xbd, 0x62, 0x4e, 0xfa, 0xca, 0xdf, 0x55, - 0x03, 0x1c, 0xf0, 0x66, 0xa2, 0x59, 0x79, 0x23, 0xcd, 0x55, 0x2e, 0x4c, 0x6c, 0xbf, 0xcd, 0x44, - 0xfb, 0xcd, 0x8f, 0x46, 0x9d, 0xd2, 0x50, 0x47, 0x30, 0xed, 0x47, 0x04, 0x42, 0x17, 0xd5, 0xd1, - 0x92, 0x15, 0x19, 0xea, 0x7b, 0x84, 0x44, 0x3d, 0xb4, 0x9a, 0x18, 0x25, 0x51, 0xc7, 0x54, 0xa9, - 0xe3, 0x55, 0x5e, 0xe6, 0xc5, 0xef, 0xf7, 0x8a, 0x17, 0x24, 0x6c, 0x32, 0x5c, 0x35, 0x72, 0x56, - 0x1c, 0x68, 0xe3, 0x87, 0x2c, 0x5a, 0x10, 0xf8, 0xf8, 0x47, 0x05, 0x89, 0x11, 0xc6, 0xf0, 0xd6, - 0x94, 0x0d, 0xfa, 0x9f, 0x59, 0x9c, 0x7f, 0xfb, 0x0c, 0x91, 0x52, 0xa9, 0xba, 0xf9, 0xd5, 0x6f, - 0x7f, 0x7f, 0x37, 0xab, 0xe1, 0x6b, 0xfa, 0xb8, 0x6b, 0x7a, 0x78, 0x4b, 0x0f, 0xde, 0x1c, 0x82, - 0xea, 0x2f, 0x0a, 0x9a, 0xe7, 0x79, 0xf0, 0x5b, 0x69, 0x91, 0x23, 0xca, 0x5b, 0xe9, 0x03, 0x81, - 0xf1, 0x7b, 0x82, 0xf1, 0x16, 0x7e, 0x33, 0x0d, 0x63, 0xfd, 0x01, 0x34, 0xe6, 0x11, 0xfe, 0x59, - 0x41, 0x19, 0x39, 0x80, 0x71, 0xba, 0xba, 0xc5, 0x6f, 0x82, 0xfc, 0xf6, 0x59, 0x42, 0x41, 0x41, - 0x59, 0x28, 0xd0, 0x71, 0x69, 0x5a, 0x05, 0x92, 0xed, 0x3f, 0x0a, 0x7a, 0xf1, 0x94, 0xf1, 0x87, - 0x3f, 0x4a, 0x43, 0xe7, 0xe9, 0x17, 0x4c, 0xfe, 0xd6, 0xff, 0x92, 0x0b, 0xb4, 0xd6, 0x84, 0xd6, - 0x2a, 0xde, 0x99, 0x52, 0xeb, 0xe8, 0xf0, 0xae, 0xef, 0xd1, 0xa0, 0x1e, 0x08, 0x8d, 0x4f, 0x14, - 0x94, 0x4b, 0x3c, 0xce, 0xf0, 0x07, 0x69, 0x98, 0x8e, 0x7b, 0x50, 0xe6, 0x77, 0x9e, 0x21, 0x03, - 0x28, 0xac, 0x08, 0x85, 0xef, 0xe0, 0xed, 0xa9, 0xfb, 0x11, 0x32, 0xe8, 0x0f, 0xe0, 0xa1, 0x7a, - 0x84, 0x1f, 0x2a, 0x28, 0x97, 0x98, 0x44, 0xe9, 0xa4, 0x8d, 0x9b, 0xd2, 0xe9, 0xa4, 0x8d, 0x1d, - 0x83, 0x95, 0xc6, 0xa3, 0xe3, 0x82, 0xf2, 0xf8, 0xb8, 0xa0, 0xfc, 0x75, 0x5c, 0x50, 0xbe, 0x3d, - 0x29, 0xcc, 0x3c, 0x3e, 0x29, 0xcc, 0x3c, 0x39, 0x29, 0xcc, 0xdc, 0xbd, 0x19, 0xbb, 0x62, 0x00, - 0xa6, 0xe4, 0x9a, 0x0d, 0x36, 0xa8, 0xc1, 0xe1, 0x7a, 0x59, 0xbf, 0x7f, 0xda, 0x93, 0x5f, 0x5c, - 0x41, 0xf2, 0xcf, 0x4c, 0x23, 0x23, 0x5e, 0x74, 0xd7, 0xff, 0x0d, 0x00, 0x00, 0xff, 0xff, 0x86, - 0xfd, 0x8b, 0xd8, 0xa9, 0x0d, 0x00, 0x00, + // 1034 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0xcf, 0x6f, 0x1b, 0x45, + 0x14, 0xce, 0xe6, 0xa7, 0x3c, 0xc1, 0x81, 0x0c, 0xa9, 0x68, 0x2c, 0xb0, 0xab, 0x81, 0x96, 0x40, + 0xeb, 0x5d, 0x25, 0xc4, 0x12, 0x44, 0x20, 0x11, 0xbb, 0x0a, 0x98, 0x22, 0x54, 0x56, 0x54, 0x48, + 0x05, 0xc9, 0x1a, 0xef, 0x4e, 0x9c, 0x91, 0xd7, 0x3b, 0x9b, 0x9d, 0x71, 0x5a, 0x0b, 0xf5, 0xc2, + 0x1d, 0x84, 0x44, 0x4f, 0xfc, 0x19, 0x08, 0xf1, 0x37, 0x54, 0x9c, 0x2a, 0x71, 0xa9, 0x40, 0x32, + 0x28, 0x41, 0xe2, 0xee, 0x3b, 0x12, 0xda, 0x99, 0xd9, 0xf5, 0xae, 0x71, 0x6a, 0x3b, 0xe5, 0x64, + 0x8f, 0xdf, 0x8f, 0xef, 0x7b, 0xef, 0x7d, 0xf3, 0x3c, 0xa0, 0xc2, 0x78, 0x87, 0x71, 0xca, 0x2d, + 0x87, 0xf9, 0x0e, 0xf1, 0x45, 0x88, 0x05, 0x71, 0xcb, 0x1e, 0x3d, 0xee, 0x52, 0x97, 0x8a, 0x9e, + 0x15, 0x30, 0xe6, 0x95, 0x3b, 0xcc, 0x25, 0x9e, 0x75, 0xdc, 0x25, 0x61, 0xcf, 0x0c, 0x42, 0x26, + 0x18, 0xbc, 0xaa, 0xc3, 0xcc, 0x74, 0x58, 0x12, 0x65, 0x9e, 0x6c, 0x37, 0x89, 0xc0, 0xdb, 0x85, + 0x8d, 0x16, 0x6b, 0x31, 0x19, 0x61, 0x45, 0xdf, 0x54, 0x70, 0xe1, 0xfa, 0x24, 0x4c, 0x1c, 0xe2, + 0x0e, 0xd7, 0xce, 0x45, 0x47, 0x7a, 0x5b, 0x4d, 0xcc, 0x89, 0xa5, 0xf3, 0x5a, 0x0e, 0xa3, 0xbe, + 0xb6, 0xbf, 0x99, 0xb6, 0x4b, 0x8a, 0x89, 0x57, 0x80, 0x5b, 0xd4, 0xc7, 0x82, 0xb2, 0xd8, 0xf7, + 0xe5, 0x16, 0x63, 0x2d, 0x8f, 0x58, 0x38, 0xa0, 0x16, 0xf6, 0x7d, 0x26, 0xa4, 0x31, 0x46, 0xda, + 0xd4, 0x56, 0x79, 0x6a, 0x76, 0x0f, 0x2d, 0xec, 0xf7, 0x62, 0x93, 0x02, 0x69, 0xa8, 0x52, 0xd4, + 0x41, 0x9b, 0x4a, 0xa3, 0x51, 0x82, 0x76, 0x08, 0x17, 0xb8, 0x13, 0xc4, 0x05, 0x8c, 0x3a, 0xb8, + 0xdd, 0x30, 0x4d, 0xaa, 0x3c, 0x71, 0x02, 0x9c, 0x0e, 0xdd, 0xd1, 0x09, 0xd8, 0xfc, 0x34, 0xaa, + 0xf2, 0x0e, 0x27, 0xe1, 0x6d, 0x6d, 0xe2, 0x36, 0x39, 0xee, 0x12, 0x2e, 0xe0, 0x0d, 0xb0, 0x82, + 0x5d, 0x37, 0x24, 0x9c, 0x5f, 0x36, 0xae, 0x18, 0x5b, 0xb9, 0x2a, 0x1c, 0xf4, 0x4b, 0x6b, 0x3d, + 0xdc, 0xf1, 0xf6, 0x90, 0x36, 0x20, 0x3b, 0x76, 0x81, 0xd7, 0xc1, 0x4a, 0x34, 0xde, 0x06, 0x75, + 0x2f, 0xcf, 0x5f, 0x31, 0xb6, 0x16, 0xd3, 0xde, 0xda, 0x80, 0xec, 0xe5, 0xe8, 0x5b, 0xdd, 0x45, + 0xdf, 0x18, 0xa0, 0x30, 0x0e, 0x98, 0x07, 0xcc, 0xe7, 0x04, 0x32, 0x90, 0x8b, 0x89, 0x46, 0xd8, + 0x0b, 0x5b, 0xab, 0x3b, 0xb7, 0xcc, 0xa9, 0x44, 0x62, 0xc6, 0xc9, 0x3e, 0xa7, 0xe2, 0xe8, 0x8e, + 0xef, 0x92, 0xd0, 0xeb, 0x51, 0xbf, 0xb5, 0xcf, 0x39, 0x11, 0xd5, 0x90, 0xe0, 0xb6, 0xcb, 0xee, + 0xf9, 0xd5, 0xc5, 0x47, 0xfd, 0xd2, 0x9c, 0x3d, 0xc4, 0x40, 0x5f, 0x80, 0x75, 0x49, 0xe7, 0x36, + 0x63, 0x5e, 0x52, 0xff, 0x01, 0x00, 0xc3, 0xa1, 0xcb, 0xa2, 0x56, 0x77, 0xae, 0x99, 0x7a, 0x5e, + 0x91, 0x42, 0x4c, 0x25, 0xe2, 0x04, 0x1a, 0xb7, 0x88, 0x8e, 0xb5, 0x53, 0x91, 0xe8, 0xa1, 0x01, + 0x60, 0x3a, 0xbb, 0x2e, 0xb2, 0x02, 0x96, 0xa2, 0x6e, 0xc4, 0x05, 0x6e, 0x98, 0x6a, 0xb4, 0x66, + 0x3c, 0x5a, 0x73, 0xdf, 0xef, 0x55, 0x73, 0xbf, 0xfc, 0x54, 0x5e, 0x8a, 0xe2, 0xea, 0xb6, 0xf2, + 0x86, 0x1f, 0x8c, 0x61, 0xf5, 0xfa, 0x44, 0x56, 0x0a, 0x33, 0x43, 0x6b, 0x23, 0x66, 0x25, 0x2f, + 0x88, 0x26, 0x8e, 0xee, 0x82, 0x17, 0x33, 0xbf, 0x6a, 0xb2, 0x35, 0xb0, 0xac, 0x2e, 0x92, 0x94, + 0xc2, 0xea, 0xce, 0xd5, 0x09, 0xe3, 0x50, 0xe1, 0xba, 0xd1, 0x3a, 0x14, 0xfd, 0x30, 0x0f, 0x5e, + 0x95, 0xc9, 0x3f, 0x8e, 0xfd, 0x6e, 0x92, 0x40, 0x1c, 0xf1, 0x03, 0x16, 0xda, 0xd8, 0x4f, 0x9a, + 0x97, 0x96, 0x92, 0x31, 0x49, 0x4a, 0xb0, 0x09, 0x80, 0xc7, 0xee, 0x91, 0xb0, 0x21, 0xa8, 0xd3, + 0x96, 0xfd, 0xc8, 0x55, 0x6b, 0x11, 0xec, 0x6f, 0xfd, 0xd2, 0xb5, 0x16, 0x15, 0x47, 0xdd, 0xa6, + 0xe9, 0xb0, 0x8e, 0xbe, 0x67, 0xfa, 0xa3, 0xcc, 0xdd, 0xb6, 0x25, 0x7a, 0x01, 0xe1, 0x66, 0xdd, + 0x17, 0x83, 0x7e, 0x69, 0x5d, 0x65, 0x1f, 0x66, 0x42, 0x76, 0x4e, 0x1e, 0x3e, 0xa3, 0x4e, 0x3b, + 0xc2, 0xe8, 0x06, 0x41, 0x8c, 0xb1, 0xf0, 0x6c, 0x18, 0xc3, 0x4c, 0xc8, 0xce, 0xc9, 0x43, 0x84, + 0x81, 0xbe, 0x35, 0xc0, 0x6b, 0x4f, 0x6f, 0x8e, 0x1e, 0xc5, 0x21, 0x78, 0x21, 0xe9, 0x73, 0xc3, + 0x95, 0x3e, 0x5a, 0x42, 0x95, 0x29, 0xef, 0x48, 0x16, 0x41, 0x0f, 0xe9, 0x79, 0x2f, 0x8b, 0x8b, + 0x7e, 0x37, 0xc0, 0x5a, 0xd6, 0x13, 0xb6, 0x41, 0x7e, 0x08, 0xed, 0x13, 0xa1, 0xf7, 0xc2, 0xc1, + 0x0c, 0xad, 0xb8, 0x49, 0x9c, 0x41, 0xbf, 0xb4, 0xa1, 0xdb, 0x9d, 0x4e, 0x86, 0xec, 0xe7, 0x92, + 0xf3, 0x27, 0x44, 0xc0, 0x2f, 0x01, 0x88, 0x9a, 0xd4, 0xa0, 0xbe, 0x4b, 0xee, 0xeb, 0xc1, 0xbe, + 0x37, 0x73, 0xd3, 0x57, 0x15, 0x92, 0x6e, 0x77, 0xf4, 0x51, 0x8f, 0xf2, 0xa1, 0x3f, 0x0c, 0xbd, + 0xfa, 0x6a, 0x1e, 0xa6, 0x1d, 0xdc, 0xf4, 0xc8, 0x01, 0x21, 0xfc, 0x42, 0x0a, 0x7c, 0x03, 0x2c, + 0x73, 0x12, 0xad, 0x1a, 0x4d, 0x72, 0x7d, 0xd0, 0x2f, 0xe5, 0x95, 0xaf, 0xfa, 0x1d, 0xd9, 0xda, + 0x01, 0xee, 0x66, 0xc4, 0x1a, 0x09, 0x69, 0xa1, 0x7a, 0x69, 0xa2, 0xfc, 0x76, 0x33, 0xf2, 0x5b, + 0x1c, 0x8d, 0x3a, 0x47, 0x50, 0x0f, 0xf4, 0x8a, 0x1d, 0x29, 0x50, 0xab, 0xa8, 0x01, 0xd6, 0x9c, + 0xd8, 0xd0, 0x38, 0x24, 0x24, 0xd6, 0xd0, 0x66, 0x66, 0x95, 0xc4, 0x8a, 0xa9, 0x31, 0xea, 0x57, + 0x5f, 0x89, 0x9a, 0x3f, 0xe8, 0x97, 0x2e, 0x29, 0xd8, 0x6c, 0x38, 0xb2, 0xf3, 0x4e, 0x1a, 0x68, + 0xe7, 0xef, 0x15, 0xb0, 0x24, 0xf1, 0xe1, 0x8f, 0x06, 0x90, 0x2b, 0x8c, 0xc3, 0xb7, 0xa7, 0x14, + 0xe8, 0x7f, 0x76, 0x71, 0xe1, 0x9d, 0x0b, 0x44, 0xaa, 0x4a, 0xd1, 0xee, 0xd7, 0xbf, 0xfe, 0xf5, + 0xfd, 0xbc, 0x09, 0x6f, 0x58, 0xe3, 0xfe, 0x1b, 0x87, 0x7f, 0x8d, 0xc9, 0x1f, 0xbd, 0xa4, 0xfa, + 0xb3, 0x01, 0x96, 0xd5, 0x12, 0x83, 0xb3, 0x61, 0xa7, 0xb7, 0x69, 0x61, 0xef, 0x22, 0xa1, 0x9a, + 0x77, 0x45, 0xf2, 0xb6, 0x60, 0x79, 0x5a, 0xde, 0x8a, 0xed, 0x3f, 0x06, 0x78, 0xe9, 0x9c, 0x15, + 0x02, 0x3f, 0x9a, 0x85, 0xce, 0xd3, 0x97, 0x74, 0xe1, 0xd6, 0xff, 0x92, 0x4b, 0xd7, 0x5a, 0x97, + 0xb5, 0xd6, 0xe0, 0xfe, 0x94, 0xb5, 0x8e, 0x2e, 0xc0, 0xc6, 0x21, 0x0b, 0x1b, 0xa1, 0xac, 0xf1, + 0x89, 0x01, 0xf2, 0x99, 0x57, 0x05, 0x7c, 0x7f, 0x16, 0xa6, 0xe3, 0x5e, 0x42, 0x85, 0xfd, 0x67, + 0xc8, 0xa0, 0x2b, 0xac, 0xca, 0x0a, 0xdf, 0x85, 0x7b, 0x53, 0xab, 0x50, 0x67, 0xb0, 0xbe, 0xd2, + 0x2f, 0xac, 0x07, 0xf0, 0xa1, 0x01, 0xf2, 0x99, 0xdb, 0x3c, 0x5b, 0x69, 0xe3, 0x36, 0xdd, 0x6c, + 0xa5, 0x8d, 0x5d, 0x25, 0xd5, 0xe6, 0xa3, 0xd3, 0xa2, 0xf1, 0xf8, 0xb4, 0x68, 0xfc, 0x79, 0x5a, + 0x34, 0xbe, 0x3b, 0x2b, 0xce, 0x3d, 0x3e, 0x2b, 0xce, 0x3d, 0x39, 0x2b, 0xce, 0xdd, 0xfd, 0x30, + 0xb5, 0xa6, 0x35, 0x4c, 0xd9, 0xc3, 0x4d, 0x9e, 0xf4, 0xe0, 0x64, 0xbb, 0x62, 0xdd, 0x3f, 0xef, + 0xad, 0x2a, 0xd7, 0xb8, 0x7a, 0x85, 0x37, 0x97, 0xe5, 0xab, 0xe8, 0xad, 0x7f, 0x03, 0x00, 0x00, + 0xff, 0xff, 0x51, 0x8a, 0xab, 0x72, 0x62, 0x0c, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -752,8 +657,6 @@ const _ = grpc.SupportPackageIsVersion4 type QueryClient interface { // Pools returns all concentrated liquidity pools Pools(ctx context.Context, in *QueryPoolsRequest, opts ...grpc.CallOption) (*QueryPoolsResponse, error) - // Pool returns the Pool specified by the pool id - Pool(ctx context.Context, in *QueryPoolRequest, opts ...grpc.CallOption) (*QueryPoolResponse, error) // Params returns concentrated liquidity module params. Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error) // LiquidityDepthsForRange returns Liqiudity Depths for given range @@ -780,15 +683,6 @@ func (c *queryClient) Pools(ctx context.Context, in *QueryPoolsRequest, opts ... return out, nil } -func (c *queryClient) Pool(ctx context.Context, in *QueryPoolRequest, opts ...grpc.CallOption) (*QueryPoolResponse, error) { - out := new(QueryPoolResponse) - err := c.cc.Invoke(ctx, "/osmosis.concentratedliquidity.v1beta1.Query/Pool", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *queryClient) Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error) { out := new(QueryParamsResponse) err := c.cc.Invoke(ctx, "/osmosis.concentratedliquidity.v1beta1.Query/Params", in, out, opts...) @@ -829,8 +723,6 @@ func (c *queryClient) ClaimableFees(ctx context.Context, in *QueryClaimableFeesR type QueryServer interface { // Pools returns all concentrated liquidity pools Pools(context.Context, *QueryPoolsRequest) (*QueryPoolsResponse, error) - // Pool returns the Pool specified by the pool id - Pool(context.Context, *QueryPoolRequest) (*QueryPoolResponse, error) // Params returns concentrated liquidity module params. Params(context.Context, *QueryParamsRequest) (*QueryParamsResponse, error) // LiquidityDepthsForRange returns Liqiudity Depths for given range @@ -847,9 +739,6 @@ type UnimplementedQueryServer struct { func (*UnimplementedQueryServer) Pools(ctx context.Context, req *QueryPoolsRequest) (*QueryPoolsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method Pools not implemented") } -func (*UnimplementedQueryServer) Pool(ctx context.Context, req *QueryPoolRequest) (*QueryPoolResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Pool not implemented") -} func (*UnimplementedQueryServer) Params(ctx context.Context, req *QueryParamsRequest) (*QueryParamsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method Params not implemented") } @@ -885,24 +774,6 @@ func _Query_Pools_Handler(srv interface{}, ctx context.Context, dec func(interfa return interceptor(ctx, in, info, handler) } -func _Query_Pool_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryPoolRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).Pool(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/osmosis.concentratedliquidity.v1beta1.Query/Pool", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).Pool(ctx, req.(*QueryPoolRequest)) - } - return interceptor(ctx, in, info, handler) -} - 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 { @@ -983,10 +854,6 @@ var _Query_serviceDesc = grpc.ServiceDesc{ MethodName: "Pools", Handler: _Query_Pools_Handler, }, - { - MethodName: "Pool", - Handler: _Query_Pool_Handler, - }, { MethodName: "Params", Handler: _Query_Params_Handler, @@ -1080,69 +947,6 @@ func (m *QueryUserPositionsResponse) MarshalToSizedBuffer(dAtA []byte) (int, err return len(dAtA) - i, nil } -func (m *QueryPoolRequest) 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 *QueryPoolRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryPoolRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.PoolId != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.PoolId)) - i-- - dAtA[i] = 0x8 - } - return len(dAtA) - i, nil -} - -func (m *QueryPoolResponse) 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 *QueryPoolResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryPoolResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Pool != nil { - { - size, err := m.Pool.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 *QueryPoolsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -1535,31 +1339,6 @@ func (m *QueryUserPositionsResponse) Size() (n int) { return n } -func (m *QueryPoolRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.PoolId != 0 { - n += 1 + sovQuery(uint64(m.PoolId)) - } - return n -} - -func (m *QueryPoolResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Pool != nil { - l = m.Pool.Size() - n += 1 + l + sovQuery(uint64(l)) - } - return n -} - func (m *QueryPoolsRequest) Size() (n int) { if m == nil { return 0 @@ -1884,161 +1663,6 @@ func (m *QueryUserPositionsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryPoolRequest) 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: QueryPoolRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryPoolRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field PoolId", wireType) - } - m.PoolId = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.PoolId |= uint64(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 - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryPoolResponse) 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: QueryPoolResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryPoolResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Pool", 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.Pool == nil { - m.Pool = &types.Any{} - } - if err := m.Pool.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 *QueryPoolsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/x/concentrated-liquidity/types/query/query.pb.gw.go b/x/concentrated-liquidity/types/query/query.pb.gw.go index 184587ff0a6..cfcd402ab8d 100644 --- a/x/concentrated-liquidity/types/query/query.pb.gw.go +++ b/x/concentrated-liquidity/types/query/query.pb.gw.go @@ -69,60 +69,6 @@ func local_request_Query_Pools_0(ctx context.Context, marshaler runtime.Marshale } -func request_Query_Pool_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryPoolRequest - var metadata runtime.ServerMetadata - - var ( - val string - ok bool - err error - _ = err - ) - - val, ok = pathParams["pool_id"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "pool_id") - } - - protoReq.PoolId, err = runtime.Uint64(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "pool_id", err) - } - - msg, err := client.Pool(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_Query_Pool_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryPoolRequest - var metadata runtime.ServerMetadata - - var ( - val string - ok bool - err error - _ = err - ) - - val, ok = pathParams["pool_id"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "pool_id") - } - - protoReq.PoolId, err = runtime.Uint64(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "pool_id", err) - } - - msg, err := server.Pool(ctx, &protoReq) - return msg, metadata, err - -} - func request_Query_Params_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq QueryParamsRequest var metadata runtime.ServerMetadata @@ -278,29 +224,6 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv }) - mux.Handle("GET", pattern_Query_Pool_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) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_Query_Pool_0(rctx, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_Pool_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("GET", pattern_Query_Params_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -431,26 +354,6 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie }) - mux.Handle("GET", pattern_Query_Pool_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) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_Query_Pool_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_Pool_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("GET", pattern_Query_Params_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -517,8 +420,6 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie var ( pattern_Query_Pools_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"osmosis", "concentratedliquidity", "v1beta1", "pools"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_Pool_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"osmosis", "concentratedliquidity", "v1beta1", "pools", "pool_id"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_Params_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"osmosis", "concentratedliquidity", "v1beta1", "params"}, "", runtime.AssumeColonVerbOpt(false))) pattern_Query_LiquidityDepthsForRange_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"osmosis", "concentratedliquidity", "v1beta1", "liquidity_depths_for_range"}, "", runtime.AssumeColonVerbOpt(false))) @@ -529,8 +430,6 @@ var ( var ( forward_Query_Pools_0 = runtime.ForwardResponseMessage - forward_Query_Pool_0 = runtime.ForwardResponseMessage - forward_Query_Params_0 = runtime.ForwardResponseMessage forward_Query_LiquidityDepthsForRange_0 = runtime.ForwardResponseMessage diff --git a/x/gamm/client/cli/query.go b/x/gamm/client/cli/query.go index 21ba7ce3366..107756d90ea 100644 --- a/x/gamm/client/cli/query.go +++ b/x/gamm/client/cli/query.go @@ -23,6 +23,7 @@ import ( // GetQueryCmd returns the cli query commands for this module. func GetQueryCmd() *cobra.Command { cmd := osmocli.QueryIndexCmd(types.ModuleName) + osmocli.AddQueryCmd(cmd, types.NewQueryClient, GetCmdPool) osmocli.AddQueryCmd(cmd, types.NewQueryClient, GetCmdSpotPrice) osmocli.AddQueryCmd(cmd, types.NewQueryClient, GetCmdPool) osmocli.AddQueryCmd(cmd, types.NewQueryClient, GetCmdPools) @@ -45,10 +46,14 @@ var customRouterFlagOverride = map[string]string{ "router": FlagSwapRouteDenoms, } +// Deprecated: use x/poolmanager's Pool query. +// nolint: staticcheck func GetCmdPool() (*osmocli.QueryDescriptor, *types.QueryPoolRequest) { return &osmocli.QueryDescriptor{ Use: "pool [poolID]", Short: "Query pool", + // Deprecated: use x/poolmanager's Pool query. + // nolint: staticcheck Long: `{{.Short}}{{.ExampleHeader}} {{.CommandPrefix}} pool 1`}, &types.QueryPoolRequest{} } diff --git a/x/gamm/keeper/grpc_query.go b/x/gamm/keeper/grpc_query.go index 4cb5fe4d14e..7c012fd799c 100644 --- a/x/gamm/keeper/grpc_query.go +++ b/x/gamm/keeper/grpc_query.go @@ -42,6 +42,8 @@ func NewV2Querier(k Keeper) QuerierV2 { } // Pool checks if a pool exists and their respective poolWeights. +// Deprecated: use x/poolmanager's Pool query. +// nolint: staticcheck func (q Querier) Pool( ctx context.Context, req *types.QueryPoolRequest, @@ -52,7 +54,9 @@ func (q Querier) Pool( sdkCtx := sdk.UnwrapSDKContext(ctx) - pool, err := q.Keeper.GetPoolAndPoke(sdkCtx, req.PoolId) + // Route the call to poolmanager that has the knowledge of all pool ids + // within Osmosis. + pool, err := q.Keeper.poolManager.RoutePool(sdkCtx, req.PoolId) if err != nil { return nil, status.Error(codes.Internal, err.Error()) } @@ -62,6 +66,8 @@ func (q Querier) Pool( return nil, err } + // Deprecated: use x/poolmanager's Pool query. + // nolint: staticcheck return &types.QueryPoolResponse{Pool: any}, nil } diff --git a/x/gamm/types/expected_keepers.go b/x/gamm/types/expected_keepers.go index 96fc819da31..ab77e9518d8 100644 --- a/x/gamm/types/expected_keepers.go +++ b/x/gamm/types/expected_keepers.go @@ -86,4 +86,6 @@ type PoolManager interface { tokenOut sdk.Coin) (tokenInAmount sdk.Int, err error) GetPoolModule(ctx sdk.Context, poolId uint64) (poolmanagertypes.SwapI, error) + + RoutePool(ctx sdk.Context, poolId uint64) (poolmanagertypes.PoolI, error) } diff --git a/x/gamm/types/query.pb.go b/x/gamm/types/query.pb.go index a13866d2afa..a52949f1230 100644 --- a/x/gamm/types/query.pb.go +++ b/x/gamm/types/query.pb.go @@ -36,6 +36,9 @@ var _ = math.Inf const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package // =============================== Pool +// Deprecated: please use the alternative in x/poolmanager +// +// Deprecated: Do not use. type QueryPoolRequest struct { PoolId uint64 `protobuf:"varint,1,opt,name=pool_id,json=poolId,proto3" json:"pool_id,omitempty" yaml:"pool_id"` } @@ -80,6 +83,9 @@ func (m *QueryPoolRequest) GetPoolId() uint64 { return 0 } +// Deprecated: please use the alternative in x/poolmanager +// +// Deprecated: Do not use. type QueryPoolResponse struct { Pool *types.Any `protobuf:"bytes,1,opt,name=pool,proto3" json:"pool,omitempty"` } @@ -1515,122 +1521,122 @@ func init() { func init() { proto.RegisterFile("osmosis/gamm/v1beta1/query.proto", fileDescriptor_d9a717df9ca609ef) } var fileDescriptor_d9a717df9ca609ef = []byte{ - // 1832 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x58, 0x49, 0x6c, 0x1c, 0xc5, - 0x1a, 0x76, 0x8d, 0x97, 0x78, 0xca, 0xf1, 0x56, 0x71, 0x92, 0xc9, 0xd8, 0x99, 0xc9, 0xab, 0x97, - 0xd8, 0x4e, 0x62, 0xf7, 0xc4, 0x8e, 0xa3, 0xf7, 0xe4, 0xf7, 0xb2, 0xd8, 0x89, 0x1d, 0x8f, 0x45, - 0x62, 0xd3, 0x89, 0x40, 0x80, 0x60, 0xd4, 0xb6, 0x3b, 0xe3, 0x4e, 0x66, 0xba, 0xda, 0xd3, 0xd5, - 0xb1, 0x2d, 0x14, 0x45, 0xca, 0x01, 0x45, 0x5c, 0x82, 0x04, 0x04, 0x81, 0x10, 0x70, 0x40, 0x08, - 0x71, 0x05, 0x89, 0x13, 0x07, 0x84, 0x90, 0x22, 0x4e, 0x91, 0xe0, 0x80, 0x38, 0x0c, 0x28, 0x81, - 0x1b, 0x27, 0x5f, 0xb8, 0xa2, 0x5a, 0x7a, 0x99, 0x7d, 0x81, 0x48, 0xe1, 0x64, 0x4f, 0xd5, 0xbf, - 0x7c, 0xff, 0xf7, 0xff, 0xf5, 0xf7, 0x5f, 0x05, 0x0f, 0x11, 0x3b, 0x4b, 0x6c, 0xc3, 0x4e, 0xa4, - 0xb5, 0x6c, 0x36, 0x71, 0x73, 0x62, 0x45, 0xa7, 0xda, 0x44, 0x62, 0xc3, 0xd1, 0x73, 0xdb, 0x8a, - 0x95, 0x23, 0x94, 0xa0, 0x01, 0x29, 0xa1, 0x30, 0x09, 0x45, 0x4a, 0x44, 0x07, 0xd2, 0x24, 0x4d, - 0xb8, 0x40, 0x82, 0xfd, 0x27, 0x64, 0xa3, 0x07, 0xcb, 0x5a, 0xa3, 0x5b, 0x72, 0x7b, 0xcc, 0xdd, - 0xb6, 0x08, 0xc9, 0x64, 0x35, 0x53, 0x4b, 0xeb, 0x39, 0x4f, 0xca, 0xde, 0xd4, 0xac, 0x54, 0x8e, - 0x38, 0x54, 0x97, 0xd2, 0xb1, 0x55, 0x2e, 0x9e, 0x58, 0xd1, 0x6c, 0xdd, 0x93, 0x5a, 0x25, 0x86, - 0x29, 0xf7, 0x8f, 0x05, 0xf7, 0x39, 0x62, 0x4f, 0xca, 0xd2, 0xd2, 0x86, 0xa9, 0x51, 0x83, 0xb8, - 0xb2, 0x43, 0x69, 0x42, 0xd2, 0x19, 0x3d, 0xa1, 0x59, 0x46, 0x42, 0x33, 0x4d, 0x42, 0xf9, 0xa6, - 0x2d, 0x77, 0x0f, 0xc8, 0x5d, 0xfe, 0x6b, 0xc5, 0xb9, 0x96, 0xd0, 0xcc, 0x6d, 0x77, 0x4b, 0x38, - 0x49, 0x89, 0x50, 0xc5, 0x0f, 0xb1, 0x85, 0xcf, 0xc2, 0xbe, 0x67, 0x99, 0xd7, 0x65, 0x42, 0x32, - 0xaa, 0xbe, 0xe1, 0xe8, 0x36, 0x45, 0xc7, 0xe1, 0x2e, 0x16, 0x5b, 0xca, 0x58, 0x8b, 0x80, 0x43, - 0x60, 0xb4, 0x6d, 0x16, 0xed, 0xe4, 0xe3, 0x3d, 0xdb, 0x5a, 0x36, 0x33, 0x8d, 0xe5, 0x06, 0x56, - 0x3b, 0xd8, 0x7f, 0xc9, 0x35, 0xbc, 0x00, 0xfb, 0x03, 0x06, 0x6c, 0x8b, 0x98, 0xb6, 0x8e, 0x4e, - 0xc2, 0x36, 0xb6, 0xcd, 0xd5, 0xbb, 0x26, 0x07, 0x14, 0x01, 0x4d, 0x71, 0xa1, 0x29, 0x33, 0xe6, - 0xf6, 0x6c, 0xf8, 0xbb, 0x2f, 0xc6, 0xdb, 0x99, 0x56, 0x52, 0xe5, 0xc2, 0xf8, 0xa5, 0x80, 0x25, - 0xdb, 0xc5, 0x32, 0x0f, 0xa1, 0xcf, 0x43, 0x24, 0xc4, 0xed, 0x0d, 0x2b, 0x32, 0x04, 0x46, 0x9a, - 0x22, 0xd2, 0x2c, 0x49, 0x53, 0x96, 0xb5, 0xb4, 0x2e, 0x75, 0xd5, 0x80, 0x26, 0x7e, 0x0b, 0x40, - 0x14, 0xb4, 0x2e, 0x81, 0x9e, 0x82, 0xed, 0xcc, 0xb7, 0x1d, 0x01, 0x87, 0x5a, 0xeb, 0x41, 0x2a, - 0xa4, 0xd1, 0xc5, 0x32, 0xa8, 0x46, 0x6a, 0xa2, 0x12, 0x3e, 0x0b, 0x60, 0x45, 0xe1, 0x00, 0x47, - 0x75, 0xd9, 0xc9, 0x06, 0xc3, 0x9e, 0x0e, 0x45, 0x00, 0xbe, 0x0c, 0xf7, 0x16, 0xed, 0x49, 0xd0, - 0x13, 0x30, 0x6c, 0x3a, 0xd9, 0x94, 0x0b, 0x9c, 0x65, 0x68, 0x60, 0x27, 0x1f, 0xef, 0x13, 0x19, - 0xf2, 0xb6, 0xb0, 0xda, 0x69, 0x4a, 0x55, 0x6e, 0xef, 0xbc, 0xf4, 0xc5, 0x56, 0xae, 0x6e, 0x5b, - 0x7a, 0x53, 0xe9, 0x5e, 0x94, 0xa0, 0x7c, 0x23, 0x3e, 0x28, 0x2e, 0x4c, 0xb7, 0x2d, 0x9d, 0xdb, - 0x09, 0x07, 0x41, 0x79, 0x5b, 0x58, 0xed, 0xb4, 0xa4, 0x2a, 0xfe, 0x12, 0xc0, 0x18, 0x37, 0x76, - 0x5e, 0xcb, 0xac, 0x2e, 0x12, 0xc3, 0x64, 0x46, 0xaf, 0xac, 0x6b, 0x39, 0xdd, 0x6e, 0x06, 0x1b, - 0x5a, 0x87, 0x61, 0x4a, 0x6e, 0xe8, 0xa6, 0x9d, 0x32, 0x58, 0x52, 0x58, 0x42, 0x0f, 0x14, 0x24, - 0xc5, 0x4d, 0xc7, 0x79, 0x62, 0x98, 0xb3, 0x27, 0x1e, 0xe4, 0xe3, 0x2d, 0x9f, 0xfd, 0x1c, 0x1f, - 0x4d, 0x1b, 0x74, 0xdd, 0x59, 0x51, 0x56, 0x49, 0x56, 0x1e, 0x0d, 0xf9, 0x67, 0xdc, 0x5e, 0xbb, - 0x91, 0x60, 0x98, 0x6d, 0xae, 0x60, 0xab, 0x9d, 0xc2, 0x7a, 0xd2, 0xc4, 0x77, 0x42, 0x30, 0x5e, - 0x11, 0xb9, 0x24, 0xc4, 0x86, 0x7d, 0x36, 0x5b, 0x49, 0x11, 0x87, 0xa6, 0xb4, 0x2c, 0x71, 0x4c, - 0x2a, 0x79, 0x49, 0x32, 0xcf, 0x3f, 0xe5, 0xe3, 0xc3, 0x75, 0x78, 0x4e, 0x9a, 0x74, 0x27, 0x1f, - 0xdf, 0x2f, 0x22, 0x2e, 0xb6, 0x87, 0xd5, 0x1e, 0xbe, 0xb4, 0xe4, 0xd0, 0x19, 0xbe, 0x80, 0xae, - 0x43, 0x28, 0x29, 0x20, 0x0e, 0x7d, 0x12, 0x1c, 0x48, 0x86, 0x97, 0x1c, 0x8a, 0xdf, 0x03, 0x70, - 0xc4, 0x23, 0x61, 0x6e, 0xcb, 0xa0, 0x8c, 0x04, 0x2e, 0x35, 0x9f, 0x23, 0xd9, 0xc2, 0x3c, 0xee, - 0x2f, 0xca, 0xa3, 0x97, 0xb3, 0xe7, 0x60, 0xaf, 0x88, 0xca, 0x30, 0x5d, 0x92, 0x42, 0x9c, 0x24, - 0xa5, 0x31, 0x92, 0xd4, 0x6e, 0x6e, 0x26, 0x69, 0x0a, 0x22, 0xf0, 0x7d, 0x00, 0x47, 0x6b, 0x83, - 0x93, 0xa9, 0x2a, 0x64, 0x0d, 0x3c, 0x51, 0xd6, 0xe6, 0xe0, 0x3e, 0xef, 0x00, 0x2d, 0x6b, 0x39, - 0x2d, 0xdb, 0x54, 0xad, 0xe3, 0x8b, 0x70, 0x7f, 0x89, 0x19, 0x19, 0xcd, 0x18, 0xec, 0xb0, 0xf8, - 0x4a, 0xb5, 0xf6, 0xab, 0x4a, 0x19, 0x7c, 0x49, 0x9e, 0xc1, 0xab, 0x84, 0x6a, 0x19, 0x66, 0xed, - 0x19, 0x63, 0xc3, 0x31, 0xd6, 0x0c, 0xba, 0xdd, 0x14, 0xae, 0x8f, 0x80, 0x3c, 0x19, 0xe5, 0xec, - 0x49, 0x80, 0xb7, 0x60, 0x38, 0xe3, 0x2e, 0xd6, 0x66, 0xfb, 0x02, 0x63, 0xdb, 0xef, 0x24, 0x9e, - 0x26, 0x6e, 0x2c, 0x03, 0xbe, 0xde, 0xbc, 0xa4, 0x8e, 0x23, 0x6c, 0xbe, 0xdd, 0x60, 0x07, 0x46, - 0x4a, 0xed, 0xc8, 0x10, 0x5f, 0x80, 0xbb, 0x29, 0x5b, 0x4e, 0xf1, 0xaa, 0x74, 0x33, 0x51, 0x25, - 0xca, 0x41, 0x19, 0xe5, 0x1e, 0xe1, 0x2c, 0xa8, 0x8c, 0xd5, 0x2e, 0xea, 0xbb, 0xc0, 0x5f, 0x01, - 0x78, 0xb8, 0xa4, 0xf7, 0x5c, 0x26, 0x57, 0x36, 0x35, 0xeb, 0x1f, 0xd1, 0x3b, 0xff, 0x00, 0xf0, - 0x48, 0x0d, 0xfc, 0x92, 0xc4, 0xdb, 0x8d, 0x1d, 0xcb, 0x39, 0x49, 0x61, 0xbf, 0x4b, 0xa1, 0xab, - 0x8a, 0x9b, 0x3c, 0xab, 0xe8, 0x12, 0x84, 0x22, 0x05, 0xb2, 0x9b, 0x36, 0xd3, 0x97, 0xc2, 0xc2, - 0x02, 0x3b, 0xfa, 0xbf, 0x03, 0xf9, 0xf1, 0xbc, 0x62, 0x11, 0xba, 0x9c, 0x33, 0x56, 0x9b, 0xfa, - 0x04, 0xa3, 0x39, 0xd8, 0xc7, 0x82, 0x4f, 0x69, 0xb6, 0xad, 0xd3, 0xd4, 0x9a, 0x6e, 0x92, 0xac, - 0xc4, 0x36, 0xe8, 0x7f, 0x2a, 0x8a, 0x25, 0xb0, 0xda, 0xc3, 0x96, 0x66, 0xd8, 0xca, 0x05, 0xb6, - 0x80, 0x16, 0x60, 0xff, 0x86, 0x43, 0x68, 0xa1, 0x9d, 0x56, 0x6e, 0x67, 0x68, 0x27, 0x1f, 0x8f, - 0x08, 0x3b, 0x25, 0x22, 0x58, 0xed, 0xe5, 0x6b, 0xbe, 0x25, 0x36, 0x5c, 0x2c, 0xb6, 0x75, 0xb6, - 0xf5, 0xb5, 0xab, 0x5d, 0x9b, 0x06, 0x5d, 0x67, 0x99, 0x9c, 0xd7, 0x75, 0xfc, 0x35, 0x80, 0x83, - 0xfe, 0xc8, 0xf5, 0xbc, 0x41, 0xd7, 0xe7, 0x8d, 0x0c, 0xd5, 0x73, 0x6e, 0xd0, 0xa7, 0x61, 0x77, - 0xd6, 0x30, 0x53, 0xc1, 0x56, 0xc0, 0x9c, 0x47, 0x76, 0xf2, 0xf1, 0x01, 0xe1, 0xbc, 0x60, 0x1b, - 0xab, 0xbb, 0xb3, 0x86, 0xe9, 0x75, 0x13, 0x34, 0x18, 0x1c, 0x38, 0x78, 0xfc, 0xfe, 0x68, 0x51, - 0x34, 0x36, 0xb6, 0x36, 0x3d, 0x36, 0x7e, 0x00, 0xe0, 0x50, 0xf9, 0x18, 0x9e, 0x92, 0x01, 0x52, - 0x95, 0x9f, 0x93, 0x40, 0x49, 0x49, 0x64, 0x53, 0x10, 0xda, 0x16, 0xa1, 0x29, 0x8b, 0xad, 0x4a, - 0x6e, 0xf7, 0xfa, 0xc7, 0xc3, 0xdf, 0xc3, 0x6a, 0xd8, 0x76, 0xb5, 0xf9, 0xa0, 0xf8, 0x7a, 0x08, - 0x1e, 0x14, 0x46, 0x37, 0x35, 0x6b, 0x6e, 0x4b, 0x5b, 0x95, 0xd3, 0x45, 0xd2, 0x74, 0x53, 0x77, - 0x14, 0x76, 0xd8, 0xba, 0xb9, 0xa6, 0xe7, 0xa4, 0xdd, 0xfe, 0x9d, 0x7c, 0xbc, 0x5b, 0xda, 0xe5, - 0xeb, 0x58, 0x95, 0x02, 0xc1, 0xd2, 0x0e, 0xd5, 0x2c, 0x6d, 0x05, 0x8a, 0x3e, 0xc1, 0x9a, 0x90, - 0x28, 0xc5, 0x3d, 0x3b, 0xf9, 0x78, 0x6f, 0xe0, 0x40, 0xa7, 0x0c, 0x13, 0xab, 0xbb, 0xf8, 0xbf, - 0x49, 0x13, 0xbd, 0x0c, 0x3b, 0xf8, 0x65, 0xcb, 0x8e, 0xb4, 0x71, 0xfa, 0x15, 0xc5, 0xbd, 0xe7, - 0x05, 0x2e, 0x67, 0x1e, 0x89, 0x2c, 0x1c, 0x2f, 0x12, 0xa6, 0x36, 0xbb, 0x57, 0xb6, 0x0c, 0x89, - 0x5d, 0xd8, 0xc2, 0xaa, 0x34, 0xca, 0xc9, 0x78, 0xd7, 0x1d, 0x52, 0xcb, 0x90, 0xe1, 0x4f, 0x7a, - 0x02, 0xdb, 0xdf, 0x37, 0xe9, 0x15, 0xdb, 0xc3, 0x6a, 0x0f, 0x5f, 0xf2, 0x26, 0x3d, 0x8e, 0xed, - 0x5e, 0xa8, 0x3c, 0xb6, 0x25, 0x87, 0x3e, 0xe9, 0x4c, 0xbd, 0xe2, 0x31, 0xdf, 0xca, 0x99, 0x4f, - 0xd4, 0xc9, 0x3c, 0x83, 0x56, 0x07, 0xf5, 0xec, 0x3a, 0xe1, 0x71, 0x10, 0x69, 0x2b, 0xbe, 0x4e, - 0x78, 0x5b, 0x58, 0x7e, 0x58, 0x96, 0x1c, 0xc1, 0xc8, 0x3b, 0xee, 0xf8, 0x51, 0x8e, 0x11, 0x99, - 0x2e, 0x0b, 0xf6, 0xba, 0xa5, 0x54, 0x98, 0xad, 0x85, 0x86, 0xb3, 0xb5, 0xaf, 0xb0, 0x32, 0xbd, - 0x64, 0x75, 0xcb, 0x02, 0x0d, 0xe4, 0x6a, 0x08, 0x46, 0xfd, 0x69, 0xa1, 0x78, 0xc6, 0xc2, 0xef, - 0xbb, 0xbd, 0xb2, 0x78, 0xfb, 0xa9, 0x18, 0x99, 0x26, 0x3f, 0x1f, 0x80, 0xed, 0x1c, 0x1e, 0xba, - 0x0d, 0x79, 0x23, 0xb3, 0xd1, 0x88, 0x52, 0xee, 0x49, 0x45, 0x29, 0xb9, 0xc1, 0x47, 0x47, 0x6b, - 0x0b, 0x8a, 0x20, 0xf1, 0xbf, 0xef, 0x7c, 0xff, 0xeb, 0x9b, 0xa1, 0x83, 0x68, 0x30, 0x51, 0xf6, - 0x05, 0x46, 0x74, 0xce, 0x7b, 0x00, 0x76, 0xba, 0x37, 0x62, 0x74, 0xac, 0x8a, 0xed, 0xa2, 0x2b, - 0x75, 0xf4, 0x78, 0x5d, 0xb2, 0x12, 0xca, 0x31, 0x0e, 0xe5, 0x5f, 0x28, 0x5e, 0x1e, 0x8a, 0x77, - 0xc7, 0xbe, 0x1b, 0x02, 0xe8, 0x63, 0x00, 0x7b, 0x0a, 0xd3, 0x86, 0x4e, 0x54, 0xf1, 0x55, 0xb6, - 0x00, 0xa2, 0x13, 0x0d, 0x68, 0x48, 0x8c, 0xe3, 0x1c, 0xe3, 0x08, 0x3a, 0x52, 0x1e, 0xa3, 0x18, - 0x21, 0xbd, 0x1c, 0xa2, 0x4f, 0x00, 0xec, 0x2d, 0xfa, 0x8a, 0xa1, 0x89, 0x5a, 0xb9, 0x29, 0xf9, - 0x6a, 0x47, 0x27, 0x1b, 0x51, 0x91, 0x48, 0xc7, 0x38, 0xd2, 0x61, 0x74, 0xb8, 0x3c, 0xd2, 0x6b, - 0x5c, 0x5a, 0x5f, 0x13, 0x94, 0xa2, 0xd7, 0x00, 0x6c, 0x63, 0x96, 0xd0, 0x70, 0x0d, 0x57, 0x2e, - 0xa4, 0x91, 0x9a, 0x72, 0xf5, 0x31, 0xc6, 0xdd, 0x27, 0x5e, 0x95, 0xbd, 0xee, 0x16, 0xba, 0x0f, - 0x60, 0xa7, 0xfb, 0xce, 0x51, 0xb5, 0xd4, 0x8a, 0x5e, 0x54, 0xaa, 0x96, 0x5a, 0xf1, 0xc3, 0x09, - 0x9e, 0xe0, 0xa0, 0x8e, 0xa3, 0xa3, 0x95, 0x41, 0xf1, 0x19, 0x27, 0x00, 0xec, 0x6d, 0x00, 0x23, - 0x95, 0xa6, 0x67, 0x34, 0x5d, 0xc5, 0x79, 0x8d, 0x2b, 0x43, 0xf4, 0x7f, 0x4d, 0xe9, 0xca, 0x40, - 0x5a, 0xd0, 0x37, 0x00, 0xa2, 0xd2, 0x17, 0x11, 0x34, 0x55, 0xa7, 0xd5, 0x42, 0x2c, 0xa7, 0x1a, - 0xd4, 0x92, 0x28, 0xce, 0x71, 0x3a, 0xa7, 0xd1, 0x7f, 0xeb, 0xca, 0x71, 0xe2, 0x3a, 0x31, 0xcc, - 0x14, 0x7f, 0xb5, 0xd5, 0xd9, 0xd7, 0x22, 0x65, 0x98, 0xe8, 0x37, 0x00, 0x07, 0xab, 0xbc, 0x1a, - 0xa0, 0xd3, 0x35, 0x80, 0x55, 0x7f, 0x0a, 0x89, 0x9e, 0x69, 0x56, 0x5d, 0x06, 0x78, 0x91, 0x07, - 0x38, 0x83, 0xce, 0xd6, 0x17, 0xa0, 0xbe, 0x65, 0x50, 0x11, 0xa0, 0x78, 0x67, 0x11, 0x9f, 0x28, - 0x16, 0xe7, 0x87, 0x00, 0x42, 0xff, 0xf9, 0x00, 0x8d, 0xd5, 0x28, 0xda, 0x82, 0xc7, 0x8a, 0xe8, - 0x78, 0x9d, 0xd2, 0x12, 0xf4, 0x14, 0x07, 0xad, 0xa0, 0xb1, 0xfa, 0x40, 0x8b, 0xb7, 0x09, 0xf4, - 0x2d, 0x80, 0xa8, 0xf4, 0x1d, 0xa1, 0x6a, 0x3d, 0x55, 0x7c, 0xc6, 0xa8, 0x5a, 0x4f, 0x95, 0x1f, - 0x2b, 0xf0, 0x2c, 0x47, 0xfe, 0x7f, 0x34, 0x5d, 0x1f, 0x72, 0xd1, 0x75, 0xf9, 0x4f, 0xbf, 0xf5, - 0x7e, 0x0a, 0x60, 0x57, 0xe0, 0x95, 0x00, 0x8d, 0xd7, 0x82, 0x52, 0x58, 0x31, 0x4a, 0xbd, 0xe2, - 0x12, 0xf2, 0x34, 0x87, 0x3c, 0x85, 0x26, 0x1b, 0x81, 0x2c, 0xae, 0xa9, 0xac, 0x28, 0xc2, 0xde, - 0x5d, 0x02, 0x55, 0x6b, 0x64, 0xc5, 0x97, 0xd8, 0xe8, 0x58, 0x7d, 0xc2, 0x12, 0xe4, 0x7f, 0x1a, - 0xac, 0x08, 0xa6, 0xcc, 0x3f, 0xb7, 0x0f, 0x01, 0x3c, 0x30, 0x67, 0x53, 0x23, 0xab, 0x51, 0xbd, - 0x64, 0x26, 0x47, 0x27, 0xab, 0x81, 0xa8, 0x70, 0x9d, 0x89, 0x4e, 0x35, 0xa6, 0x24, 0x23, 0x58, - 0xe0, 0x11, 0x9c, 0x45, 0xa7, 0xcb, 0x47, 0x10, 0x38, 0x82, 0x12, 0x6d, 0x22, 0xd0, 0x67, 0xbc, - 0x63, 0xc8, 0x42, 0xfa, 0x01, 0xc0, 0x68, 0x85, 0x90, 0x96, 0x1c, 0x8a, 0x1a, 0x80, 0xe7, 0x4f, - 0xfe, 0x55, 0xeb, 0xbd, 0xf2, 0x74, 0x8c, 0x93, 0x3c, 0xaa, 0x73, 0xe8, 0xcc, 0x5f, 0x88, 0x8a, - 0x38, 0xf4, 0x6e, 0x08, 0xcc, 0x2e, 0x3e, 0x78, 0x14, 0x03, 0x0f, 0x1f, 0xc5, 0xc0, 0x2f, 0x8f, - 0x62, 0xe0, 0x8d, 0xc7, 0xb1, 0x96, 0x87, 0x8f, 0x63, 0x2d, 0x3f, 0x3e, 0x8e, 0xb5, 0xbc, 0x78, - 0x22, 0x30, 0x84, 0x4a, 0x37, 0xe3, 0x19, 0x6d, 0xc5, 0xf6, 0x7c, 0xde, 0x9c, 0x38, 0x95, 0xd8, - 0x12, 0x9e, 0xf9, 0x48, 0xba, 0xd2, 0xc1, 0x2f, 0xd4, 0x27, 0xff, 0x0c, 0x00, 0x00, 0xff, 0xff, - 0x84, 0xe5, 0x37, 0x9b, 0xeb, 0x1b, 0x00, 0x00, + // 1840 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x58, 0x4d, 0x6c, 0x1c, 0x49, + 0x15, 0x76, 0x8d, 0x7f, 0xd6, 0x53, 0x5e, 0xff, 0xd5, 0x3a, 0x9b, 0xc9, 0xd8, 0x99, 0x09, 0xc5, + 0xae, 0xed, 0x4d, 0xec, 0x1e, 0xdb, 0x71, 0x04, 0x32, 0x64, 0x77, 0x6d, 0xaf, 0x9d, 0x8c, 0x95, + 0xc4, 0xa6, 0x13, 0x81, 0x00, 0xc1, 0xa8, 0x6d, 0x77, 0xc6, 0x9d, 0xcc, 0x74, 0xb5, 0xa7, 0xab, + 0x63, 0x5b, 0x28, 0x8a, 0x94, 0x53, 0xe0, 0x12, 0x24, 0x20, 0x08, 0x84, 0x80, 0x03, 0x42, 0x88, + 0x33, 0x82, 0x13, 0x07, 0x84, 0x90, 0x22, 0x4e, 0x91, 0xe0, 0x80, 0x38, 0x0c, 0x28, 0x81, 0x1b, + 0x27, 0x5f, 0xb8, 0xa2, 0xaa, 0x7a, 0xfd, 0x33, 0xff, 0x3f, 0x10, 0x29, 0x9c, 0xec, 0xa9, 0x7a, + 0x3f, 0xdf, 0xfb, 0xde, 0xab, 0xd7, 0xaf, 0x0a, 0x5f, 0x60, 0x6e, 0x91, 0xb9, 0x96, 0x9b, 0xc9, + 0x1b, 0xc5, 0x62, 0xe6, 0xc1, 0xe2, 0xae, 0xc9, 0x8d, 0xc5, 0xcc, 0xa1, 0x67, 0x96, 0x4e, 0x34, + 0xa7, 0xc4, 0x38, 0x23, 0x13, 0x20, 0xa1, 0x09, 0x09, 0x0d, 0x24, 0x92, 0x13, 0x79, 0x96, 0x67, + 0x52, 0x20, 0x23, 0xfe, 0x53, 0xb2, 0xc9, 0xf3, 0x75, 0xad, 0xf1, 0x63, 0xd8, 0x9e, 0xf3, 0xb7, + 0x1d, 0xc6, 0x0a, 0x45, 0xc3, 0x36, 0xf2, 0x66, 0x29, 0x90, 0x72, 0x8f, 0x0c, 0x27, 0x57, 0x62, + 0x1e, 0x37, 0x41, 0x3a, 0xb5, 0x27, 0xc5, 0x33, 0xbb, 0x86, 0x6b, 0x06, 0x52, 0x7b, 0xcc, 0xb2, + 0x61, 0xff, 0x62, 0x74, 0x5f, 0x22, 0x0e, 0xa4, 0x1c, 0x23, 0x6f, 0xd9, 0x06, 0xb7, 0x98, 0x2f, + 0x3b, 0x95, 0x67, 0x2c, 0x5f, 0x30, 0x33, 0x86, 0x63, 0x65, 0x0c, 0xdb, 0x66, 0x5c, 0x6e, 0xba, + 0xb0, 0x7b, 0x0e, 0x76, 0xe5, 0xaf, 0x5d, 0xef, 0x6e, 0xc6, 0xb0, 0x4f, 0xfc, 0x2d, 0xe5, 0x24, + 0xa7, 0x42, 0x55, 0x3f, 0xd4, 0x16, 0x5d, 0xc7, 0x63, 0x5f, 0x10, 0x5e, 0x77, 0x18, 0x2b, 0xe8, + 0xe6, 0xa1, 0x67, 0xba, 0x9c, 0x5c, 0xc2, 0x6f, 0x89, 0xd8, 0x72, 0xd6, 0x7e, 0x02, 0x5d, 0x40, + 0xb3, 0x7d, 0x6b, 0xe4, 0xb4, 0x9c, 0x1e, 0x39, 0x31, 0x8a, 0x85, 0x15, 0x0a, 0x1b, 0x54, 0x1f, + 0x10, 0xff, 0x65, 0xf7, 0x57, 0x62, 0x09, 0x44, 0x6f, 0xe0, 0xf1, 0x88, 0x11, 0xd7, 0x61, 0xb6, + 0x6b, 0x92, 0xcb, 0xb8, 0x4f, 0x88, 0x48, 0x13, 0x43, 0x4b, 0x13, 0x9a, 0x82, 0xa7, 0xf9, 0xf0, + 0xb4, 0x55, 0xfb, 0x64, 0x2d, 0xfe, 0xc7, 0x5f, 0xcd, 0xf7, 0x0b, 0xad, 0xac, 0x2e, 0x85, 0xa5, + 0xb5, 0xaf, 0x46, 0xac, 0xb9, 0x3e, 0xa6, 0x4d, 0x8c, 0x43, 0x3e, 0x12, 0x31, 0x69, 0x73, 0x5a, + 0x83, 0x50, 0x04, 0x79, 0x9a, 0x4a, 0x37, 0x90, 0xa7, 0xed, 0x18, 0x79, 0x13, 0x74, 0xf5, 0x88, + 0x26, 0xfd, 0x2e, 0xc2, 0x24, 0x6a, 0x1d, 0xc0, 0x5e, 0xc1, 0xfd, 0xc2, 0xbf, 0x9b, 0x40, 0x17, + 0x7a, 0xdb, 0x41, 0xab, 0xa4, 0xc9, 0xb5, 0x3a, 0xa8, 0x66, 0x5a, 0xa2, 0x52, 0x3e, 0x2b, 0x60, + 0x25, 0xf1, 0x84, 0x44, 0x75, 0xcb, 0x2b, 0x46, 0xc3, 0x96, 0x7c, 0xdc, 0xc2, 0x67, 0xaa, 0xf6, + 0x00, 0xf4, 0x22, 0x8e, 0xdb, 0x5e, 0x31, 0xe7, 0x03, 0x17, 0x99, 0x9a, 0x38, 0x2d, 0xa7, 0xc7, + 0x54, 0xa6, 0x82, 0x2d, 0xaa, 0x0f, 0xda, 0xa0, 0x2a, 0xed, 0xad, 0x83, 0x2f, 0xb1, 0x72, 0xe7, + 0xc4, 0x31, 0xbb, 0x49, 0x3b, 0xdd, 0x02, 0x50, 0xa1, 0x91, 0x10, 0x94, 0x14, 0xe6, 0x27, 0x8e, + 0x29, 0xed, 0xc4, 0xa3, 0xa0, 0x82, 0x2d, 0xaa, 0x0f, 0x3a, 0xa0, 0x4a, 0x7f, 0x83, 0x70, 0x4a, + 0x1a, 0x5b, 0x37, 0x0a, 0x7b, 0x5b, 0xcc, 0xb2, 0x85, 0xd1, 0xdb, 0x07, 0x46, 0xc9, 0x74, 0xbb, + 0xc1, 0x46, 0x0e, 0x70, 0x9c, 0xb3, 0xfb, 0xa6, 0xed, 0xe6, 0x2c, 0x91, 0x14, 0x91, 0xd0, 0x73, + 0x15, 0x49, 0xf1, 0xd3, 0xb1, 0xce, 0x2c, 0x7b, 0x6d, 0xe1, 0x79, 0x39, 0xdd, 0xf3, 0xcb, 0xbf, + 0xa5, 0x67, 0xf3, 0x16, 0x3f, 0xf0, 0x76, 0xb5, 0x3d, 0x56, 0x84, 0x23, 0x02, 0x7f, 0xe6, 0xdd, + 0xfd, 0xfb, 0x19, 0x81, 0xd9, 0x95, 0x0a, 0xae, 0x3e, 0xa8, 0xac, 0x67, 0x6d, 0xfa, 0x38, 0x86, + 0xd3, 0x0d, 0x91, 0x03, 0x21, 0x2e, 0x1e, 0x73, 0xc5, 0x4a, 0x8e, 0x79, 0x3c, 0x67, 0x14, 0x99, + 0x67, 0x73, 0xe0, 0x25, 0x2b, 0x3c, 0xff, 0xb5, 0x9c, 0x9e, 0x6e, 0xc3, 0x73, 0xd6, 0xe6, 0xa7, + 0xe5, 0xf4, 0x59, 0x15, 0x71, 0xb5, 0x3d, 0xaa, 0x8f, 0xc8, 0xa5, 0x6d, 0x8f, 0xaf, 0xca, 0x05, + 0x72, 0x0f, 0x63, 0xa0, 0x80, 0x79, 0xfc, 0x75, 0x70, 0x00, 0x0c, 0x6f, 0x7b, 0x9c, 0xfe, 0x10, + 0xe1, 0x99, 0x80, 0x84, 0x8d, 0x63, 0x8b, 0x0b, 0x12, 0xa4, 0xd4, 0x66, 0x89, 0x15, 0x2b, 0xf3, + 0x78, 0xb6, 0x2a, 0x8f, 0x41, 0xce, 0xbe, 0x88, 0x47, 0x55, 0x54, 0x96, 0xed, 0x93, 0x14, 0x93, + 0x24, 0x69, 0x9d, 0x91, 0xa4, 0x0f, 0x4b, 0x33, 0x59, 0x5b, 0x11, 0x41, 0x9f, 0x21, 0x3c, 0xdb, + 0x1a, 0x1c, 0xa4, 0xaa, 0x92, 0x35, 0xf4, 0x5a, 0x59, 0xdb, 0xc0, 0xef, 0x06, 0x07, 0x68, 0xc7, + 0x28, 0x19, 0xc5, 0xae, 0x6a, 0x9d, 0x5e, 0xc3, 0x67, 0x6b, 0xcc, 0x40, 0x34, 0x73, 0x78, 0xc0, + 0x91, 0x2b, 0xcd, 0x5a, 0xb0, 0x0e, 0x32, 0xf4, 0x26, 0x9c, 0xc1, 0x3b, 0x8c, 0x1b, 0x05, 0x61, + 0xed, 0x86, 0x75, 0xe8, 0x59, 0xfb, 0x16, 0x3f, 0xe9, 0x0a, 0xd7, 0x4f, 0x11, 0x9c, 0x8c, 0x7a, + 0xf6, 0x00, 0xe0, 0x43, 0x1c, 0x2f, 0xf8, 0x8b, 0xad, 0xd9, 0xfe, 0x44, 0xb0, 0x1d, 0x76, 0x92, + 0x40, 0x93, 0x76, 0x96, 0x81, 0x50, 0x6f, 0x13, 0xa8, 0x93, 0x08, 0xbb, 0x6f, 0x37, 0xd4, 0xc3, + 0x89, 0x5a, 0x3b, 0x10, 0xe2, 0x97, 0xf1, 0xdb, 0x5c, 0x2c, 0xe7, 0x64, 0x55, 0xfa, 0x99, 0x68, + 0x12, 0xe5, 0x24, 0x44, 0xf9, 0x8e, 0x72, 0x16, 0x55, 0xa6, 0xfa, 0x10, 0x0f, 0x5d, 0xd0, 0xdf, + 0x22, 0xfc, 0x5e, 0x4d, 0xef, 0xb9, 0xc5, 0x6e, 0x1f, 0x19, 0xce, 0xff, 0x45, 0xef, 0xfc, 0x37, + 0xc2, 0xef, 0xb7, 0xc0, 0x0f, 0x24, 0x3e, 0xea, 0xec, 0x58, 0x6e, 0x00, 0x85, 0xe3, 0x3e, 0x85, + 0xbe, 0x2a, 0xed, 0xf2, 0xac, 0x92, 0x9b, 0x18, 0xab, 0x14, 0x40, 0x37, 0xed, 0xa6, 0x2f, 0xc5, + 0x95, 0x05, 0x71, 0xf4, 0xff, 0x85, 0xe0, 0xe3, 0x79, 0xdb, 0x61, 0x7c, 0xa7, 0x64, 0xed, 0x75, + 0xf5, 0x09, 0x26, 0x1b, 0x78, 0x4c, 0x04, 0x9f, 0x33, 0x5c, 0xd7, 0xe4, 0xb9, 0x7d, 0xd3, 0x66, + 0x45, 0xc0, 0x36, 0x19, 0x7e, 0x2a, 0xaa, 0x25, 0xa8, 0x3e, 0x22, 0x96, 0x56, 0xc5, 0xca, 0x27, + 0x62, 0x81, 0x5c, 0xc7, 0xe3, 0x87, 0x1e, 0xe3, 0x95, 0x76, 0x7a, 0xa5, 0x9d, 0xa9, 0xd3, 0x72, + 0x3a, 0xa1, 0xec, 0xd4, 0x88, 0x50, 0x7d, 0x54, 0xae, 0x85, 0x96, 0xc4, 0x70, 0xb1, 0xd5, 0x37, + 0xd8, 0x37, 0xd6, 0xaf, 0x0f, 0x1d, 0x59, 0xfc, 0x40, 0x64, 0x72, 0xd3, 0x34, 0xe9, 0xef, 0x10, + 0x9e, 0x0c, 0x47, 0xae, 0x2f, 0x59, 0xfc, 0x60, 0xd3, 0x2a, 0x70, 0xb3, 0xe4, 0x07, 0x7d, 0x15, + 0x0f, 0x17, 0x2d, 0x3b, 0x17, 0x6d, 0x05, 0xc2, 0x79, 0xe2, 0xb4, 0x9c, 0x9e, 0x50, 0xce, 0x2b, + 0xb6, 0xa9, 0xfe, 0x76, 0xd1, 0xb2, 0x83, 0x6e, 0x42, 0x26, 0xa3, 0x03, 0x87, 0x8c, 0x3f, 0x1c, + 0x2d, 0xaa, 0xc6, 0xc6, 0xde, 0xae, 0xc7, 0xc6, 0x1f, 0x23, 0x3c, 0x55, 0x3f, 0x86, 0x37, 0x64, + 0x80, 0xd4, 0xe1, 0x73, 0x12, 0x29, 0x29, 0x40, 0xb6, 0x8c, 0xb1, 0xeb, 0x30, 0x9e, 0x73, 0xc4, + 0x2a, 0x70, 0x7b, 0x26, 0x3c, 0x1e, 0xe1, 0x1e, 0xd5, 0xe3, 0xae, 0xaf, 0x2d, 0x07, 0xc5, 0x6f, + 0xc5, 0xf0, 0x79, 0x65, 0xf4, 0xc8, 0x70, 0x36, 0x8e, 0x8d, 0x3d, 0x98, 0x2e, 0xb2, 0xb6, 0x9f, + 0xba, 0x0f, 0xf0, 0x80, 0x6b, 0xda, 0xfb, 0x66, 0x09, 0xec, 0x8e, 0x9f, 0x96, 0xd3, 0xc3, 0x60, + 0x57, 0xae, 0x53, 0x1d, 0x04, 0xa2, 0xa5, 0x1d, 0x6b, 0x59, 0xda, 0x1a, 0x56, 0x7d, 0x42, 0x34, + 0x21, 0x55, 0x8a, 0xef, 0x9c, 0x96, 0xd3, 0xa3, 0x91, 0x03, 0x9d, 0xb3, 0x6c, 0xaa, 0xbf, 0x25, + 0xff, 0xcd, 0xda, 0xe4, 0x6b, 0x78, 0x40, 0x5e, 0xba, 0xdc, 0x44, 0x9f, 0xa4, 0x5f, 0xd3, 0xfc, + 0xfb, 0x5e, 0xe4, 0x92, 0x16, 0x90, 0x28, 0xc2, 0x09, 0x22, 0x11, 0x6a, 0x6b, 0x67, 0xa0, 0x65, + 0x00, 0x76, 0x65, 0x8b, 0xea, 0x60, 0x54, 0x92, 0xf1, 0x03, 0x7f, 0x48, 0xad, 0x43, 0x46, 0x38, + 0xe9, 0x29, 0x6c, 0xff, 0xbb, 0x49, 0xaf, 0xda, 0x1e, 0xd5, 0x47, 0xe4, 0x52, 0x30, 0xe9, 0x49, + 0x6c, 0x4f, 0x63, 0xf5, 0xb1, 0x6d, 0x7b, 0xfc, 0x75, 0x67, 0xea, 0xeb, 0x01, 0xf3, 0xbd, 0x92, + 0xf9, 0x4c, 0x9b, 0xcc, 0x0b, 0x68, 0x6d, 0x50, 0x2f, 0xae, 0x13, 0x01, 0x07, 0x89, 0xbe, 0xea, + 0xeb, 0x44, 0xb0, 0x45, 0xe1, 0xc3, 0xb2, 0xed, 0x29, 0x46, 0xbe, 0xef, 0x8f, 0x1f, 0xf5, 0x18, + 0x81, 0x74, 0x39, 0x78, 0xd4, 0x2f, 0xa5, 0xca, 0x6c, 0x5d, 0xef, 0x38, 0x5b, 0xef, 0x56, 0x56, + 0x66, 0x90, 0xac, 0x61, 0x28, 0xd0, 0x48, 0xae, 0xa6, 0x70, 0x32, 0x9c, 0x16, 0xaa, 0x67, 0x2c, + 0xfa, 0x23, 0xbf, 0x57, 0x56, 0x6f, 0xbf, 0x11, 0x23, 0xd3, 0xd2, 0xaf, 0x27, 0x70, 0xbf, 0x84, + 0x47, 0x1e, 0x61, 0xd9, 0xc8, 0x5c, 0x32, 0xa3, 0xd5, 0x7b, 0x5a, 0xd1, 0x6a, 0x6e, 0xf0, 0xc9, + 0xd9, 0xd6, 0x82, 0x2a, 0x48, 0xfa, 0xe9, 0xc7, 0x7f, 0xfa, 0xc7, 0x77, 0x62, 0xe7, 0xc9, 0x64, + 0xa6, 0xee, 0x4b, 0x8c, 0xea, 0x9c, 0x4f, 0x11, 0x1e, 0xf4, 0x6f, 0xc4, 0xe4, 0x62, 0x13, 0xdb, + 0x55, 0x57, 0xea, 0xe4, 0xa5, 0xb6, 0x64, 0x01, 0xca, 0x45, 0x09, 0xe5, 0x53, 0x24, 0x5d, 0x1f, + 0x4a, 0x70, 0xc7, 0x7e, 0x12, 0x43, 0xe4, 0x67, 0x08, 0x8f, 0x54, 0xa6, 0x8d, 0x2c, 0x34, 0xf1, + 0x55, 0xb7, 0x00, 0x92, 0x8b, 0x1d, 0x68, 0x00, 0xc6, 0x79, 0x89, 0x71, 0x86, 0xbc, 0x5f, 0x1f, + 0xa3, 0x1a, 0x21, 0x83, 0x1c, 0x92, 0x9f, 0x23, 0x3c, 0x5a, 0xf5, 0x15, 0x23, 0x8b, 0xad, 0x72, + 0x53, 0xf3, 0xd5, 0x4e, 0x2e, 0x75, 0xa2, 0x02, 0x48, 0xe7, 0x24, 0xd2, 0x69, 0xf2, 0x5e, 0x7d, + 0xa4, 0x77, 0xa5, 0xb4, 0xb9, 0xaf, 0x28, 0x25, 0xdf, 0x44, 0xb8, 0x4f, 0x58, 0x22, 0xd3, 0x2d, + 0x5c, 0xf9, 0x90, 0x66, 0x5a, 0xca, 0x01, 0x8e, 0x85, 0xe6, 0x8c, 0x49, 0xf7, 0x99, 0x6f, 0x40, + 0xaf, 0x7b, 0x28, 0x72, 0xfb, 0x0c, 0xe1, 0x41, 0xff, 0xa9, 0xa3, 0x69, 0xb5, 0x55, 0x3d, 0xaa, + 0x34, 0xad, 0xb6, 0xea, 0xb7, 0x13, 0xba, 0x28, 0x71, 0x5d, 0x22, 0x1f, 0x34, 0xc6, 0x25, 0xc7, + 0x9c, 0x10, 0x1b, 0xf9, 0x1e, 0xc2, 0x89, 0x46, 0x03, 0x34, 0x59, 0x69, 0xe2, 0xbc, 0xc5, 0xad, + 0x21, 0xf9, 0xb9, 0xae, 0x74, 0x21, 0x90, 0x1e, 0xf2, 0x7b, 0x84, 0x49, 0xed, 0xa3, 0x08, 0x59, + 0x6e, 0xd3, 0x6a, 0x25, 0x96, 0x2b, 0x1d, 0x6a, 0x01, 0x8a, 0x8f, 0x25, 0x9d, 0x2b, 0xe4, 0xb3, + 0x6d, 0xa5, 0x39, 0x73, 0x8f, 0x59, 0x76, 0x4e, 0x3e, 0xe0, 0x9a, 0xe2, 0x83, 0x91, 0xb3, 0x6c, + 0xf2, 0x4f, 0x84, 0x27, 0x9b, 0x3c, 0x1c, 0x90, 0xab, 0x2d, 0x80, 0x35, 0x7f, 0x0d, 0x49, 0x7e, + 0xd8, 0xad, 0x3a, 0x04, 0x78, 0x4d, 0x06, 0xb8, 0x4a, 0x3e, 0x6a, 0x2f, 0x40, 0xf3, 0xd8, 0xe2, + 0x2a, 0x40, 0xf5, 0xd4, 0xa2, 0xbe, 0x52, 0x22, 0xce, 0x9f, 0x20, 0x8c, 0xc3, 0x17, 0x04, 0x32, + 0xd7, 0xa2, 0x68, 0x2b, 0xde, 0x2b, 0x92, 0xf3, 0x6d, 0x4a, 0x03, 0xe8, 0x65, 0x09, 0x5a, 0x23, + 0x73, 0xed, 0x81, 0x56, 0xcf, 0x13, 0xe4, 0x0f, 0x08, 0x93, 0xda, 0xa7, 0x84, 0xa6, 0xf5, 0xd4, + 0xf0, 0x25, 0xa3, 0x69, 0x3d, 0x35, 0x7e, 0xaf, 0xa0, 0x6b, 0x12, 0xf9, 0xe7, 0xc9, 0x4a, 0x7b, + 0xc8, 0x55, 0xe3, 0x95, 0x3f, 0xc3, 0xee, 0xfb, 0x0b, 0x84, 0x87, 0x22, 0x0f, 0x05, 0x64, 0xbe, + 0x15, 0x94, 0xca, 0x8a, 0xd1, 0xda, 0x15, 0x07, 0xc8, 0x2b, 0x12, 0xf2, 0x32, 0x59, 0xea, 0x04, + 0xb2, 0xba, 0xa9, 0x8a, 0xa2, 0x88, 0x07, 0xd7, 0x09, 0xd2, 0xac, 0x91, 0x55, 0xdf, 0x63, 0x93, + 0x73, 0xed, 0x09, 0x03, 0xc8, 0xcf, 0x74, 0x58, 0x11, 0x42, 0x59, 0x7e, 0x71, 0x5f, 0x20, 0x7c, + 0x6e, 0xc3, 0xe5, 0x56, 0xd1, 0xe0, 0x66, 0xcd, 0x58, 0x4e, 0x2e, 0x37, 0x03, 0xd1, 0xe0, 0x46, + 0x93, 0x5c, 0xee, 0x4c, 0x09, 0x22, 0xb8, 0x2e, 0x23, 0xf8, 0x88, 0x5c, 0xad, 0x1f, 0x41, 0xe4, + 0x08, 0x02, 0xda, 0x4c, 0xa4, 0xcf, 0x04, 0xc7, 0x50, 0x84, 0xf4, 0x67, 0x84, 0x93, 0x0d, 0x42, + 0xda, 0xf6, 0x38, 0xe9, 0x00, 0x5e, 0x38, 0xfc, 0x37, 0xad, 0xf7, 0xc6, 0x03, 0x32, 0xcd, 0xca, + 0xa8, 0x3e, 0x26, 0x1f, 0xfe, 0x17, 0x51, 0x31, 0x8f, 0x3f, 0x89, 0xa1, 0xb5, 0xad, 0xe7, 0x2f, + 0x53, 0xe8, 0xc5, 0xcb, 0x14, 0xfa, 0xfb, 0xcb, 0x14, 0xfa, 0xf6, 0xab, 0x54, 0xcf, 0x8b, 0x57, + 0xa9, 0x9e, 0xbf, 0xbc, 0x4a, 0xf5, 0x7c, 0x65, 0x21, 0x32, 0x87, 0x82, 0x9b, 0xf9, 0x82, 0xb1, + 0xeb, 0x06, 0x3e, 0x1f, 0x2c, 0x5e, 0xc9, 0x1c, 0x2b, 0xcf, 0x72, 0x2a, 0xdd, 0x1d, 0x90, 0x77, + 0xea, 0xcb, 0xff, 0x09, 0x00, 0x00, 0xff, 0xff, 0xb6, 0x55, 0xbd, 0xca, 0xf6, 0x1b, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -1652,7 +1658,7 @@ type QueryClient interface { // PoolsWithFilter allows you to query specific pools with requested // parameters PoolsWithFilter(ctx context.Context, in *QueryPoolsWithFilterRequest, opts ...grpc.CallOption) (*QueryPoolsWithFilterResponse, error) - // Per Pool gRPC Endpoints + // Deprecated: please use the alternative in x/poolmanager Pool(ctx context.Context, in *QueryPoolRequest, opts ...grpc.CallOption) (*QueryPoolResponse, error) // PoolType returns the type of the pool. // Returns "Balancer" as a string literal when the pool is a balancer pool. @@ -1720,6 +1726,7 @@ func (c *queryClient) PoolsWithFilter(ctx context.Context, in *QueryPoolsWithFil return out, nil } +// Deprecated: Do not use. func (c *queryClient) Pool(ctx context.Context, in *QueryPoolRequest, opts ...grpc.CallOption) (*QueryPoolResponse, error) { out := new(QueryPoolResponse) err := c.cc.Invoke(ctx, "/osmosis.gamm.v1beta1.Query/Pool", in, out, opts...) @@ -1831,7 +1838,7 @@ type QueryServer interface { // PoolsWithFilter allows you to query specific pools with requested // parameters PoolsWithFilter(context.Context, *QueryPoolsWithFilterRequest) (*QueryPoolsWithFilterResponse, error) - // Per Pool gRPC Endpoints + // Deprecated: please use the alternative in x/poolmanager Pool(context.Context, *QueryPoolRequest) (*QueryPoolResponse, error) // PoolType returns the type of the pool. // Returns "Balancer" as a string literal when the pool is a balancer pool. diff --git a/x/poolmanager/client/cli/query.go b/x/poolmanager/client/cli/query.go index 64343756b5d..827cf6e2fe4 100644 --- a/x/poolmanager/client/cli/query.go +++ b/x/poolmanager/client/cli/query.go @@ -64,6 +64,15 @@ func GetCmdNumPools() (*osmocli.QueryDescriptor, *queryproto.NumPoolsRequest) { }, &queryproto.NumPoolsRequest{} } +// GetCmdPool returns pool information. +func GetCmdPool() (*osmocli.QueryDescriptor, *queryproto.PoolRequest) { + return &osmocli.QueryDescriptor{ + Use: "pool [poolID]", + Short: "Query pool", + Long: `{{.Short}}{{.ExampleHeader}} +{{.CommandPrefix}} pool 1`}, &queryproto.PoolRequest{} +} + func EstimateSwapExactAmountInParseArgs(args []string, fs *flag.FlagSet) (proto.Message, error) { poolID, err := strconv.Atoi(args[0]) if err != nil { diff --git a/x/poolmanager/client/grpc/grpc_query.go b/x/poolmanager/client/grpc/grpc_query.go index 58179cc6deb..ca9d236800e 100644 --- a/x/poolmanager/client/grpc/grpc_query.go +++ b/x/poolmanager/client/grpc/grpc_query.go @@ -20,6 +20,16 @@ type Querier struct { var _ queryproto.QueryServer = Querier{} +func (q Querier) Pool(grpcCtx context.Context, + req *queryproto.PoolRequest, +) (*queryproto.PoolResponse, error) { + if req == nil { + return nil, status.Error(codes.InvalidArgument, "empty request") + } + ctx := sdk.UnwrapSDKContext(grpcCtx) + return q.Q.Pool(ctx, *req) +} + func (q Querier) Params(grpcCtx context.Context, req *queryproto.ParamsRequest, ) (*queryproto.ParamsResponse, error) { diff --git a/x/poolmanager/client/query_proto_wrap.go b/x/poolmanager/client/query_proto_wrap.go index f7b3cc7376e..ee64c321de4 100644 --- a/x/poolmanager/client/query_proto_wrap.go +++ b/x/poolmanager/client/query_proto_wrap.go @@ -5,6 +5,8 @@ import ( "google.golang.org/grpc/codes" "google.golang.org/grpc/status" + codectypes "github.com/cosmos/cosmos-sdk/codec/types" + "github.com/osmosis-labs/osmosis/v15/x/poolmanager" "github.com/osmosis-labs/osmosis/v15/x/poolmanager/client/queryproto" "github.com/osmosis-labs/osmosis/v15/x/poolmanager/types" @@ -83,3 +85,20 @@ func (q Querier) NumPools(ctx sdk.Context, _ queryproto.NumPoolsRequest) (*query NumPools: q.K.GetNextPoolId(ctx) - 1, }, nil } + +// Pool returns the pool specified by id. +func (q Querier) Pool(ctx sdk.Context, req queryproto.PoolRequest) (*queryproto.PoolResponse, error) { + pool, err := q.K.RoutePool(ctx, req.PoolId) + if err != nil { + return nil, status.Error(codes.Internal, err.Error()) + } + + any, err := codectypes.NewAnyWithValue(pool) + if err != nil { + return nil, err + } + + return &queryproto.PoolResponse{ + Pool: any, + }, nil +} diff --git a/x/poolmanager/client/queryproto/query.pb.go b/x/poolmanager/client/queryproto/query.pb.go index dc9b5bc1b61..103d3577e26 100644 --- a/x/poolmanager/client/queryproto/query.pb.go +++ b/x/poolmanager/client/queryproto/query.pb.go @@ -7,7 +7,7 @@ import ( context "context" fmt "fmt" _ "github.com/cosmos/cosmos-proto" - _ "github.com/cosmos/cosmos-sdk/codec/types" + types1 "github.com/cosmos/cosmos-sdk/codec/types" _ "github.com/cosmos/cosmos-sdk/types" github_com_cosmos_cosmos_sdk_types "github.com/cosmos/cosmos-sdk/types" _ "github.com/cosmos/cosmos-sdk/types/query" @@ -412,6 +412,95 @@ func (m *NumPoolsResponse) GetNumPools() uint64 { return 0 } +// =============================== Pool +type PoolRequest struct { + PoolId uint64 `protobuf:"varint,1,opt,name=pool_id,json=poolId,proto3" json:"pool_id,omitempty" yaml:"pool_id"` +} + +func (m *PoolRequest) Reset() { *m = PoolRequest{} } +func (m *PoolRequest) String() string { return proto.CompactTextString(m) } +func (*PoolRequest) ProtoMessage() {} +func (*PoolRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_6256a4106f701b7d, []int{8} +} +func (m *PoolRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *PoolRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_PoolRequest.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 *PoolRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_PoolRequest.Merge(m, src) +} +func (m *PoolRequest) XXX_Size() int { + return m.Size() +} +func (m *PoolRequest) XXX_DiscardUnknown() { + xxx_messageInfo_PoolRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_PoolRequest proto.InternalMessageInfo + +func (m *PoolRequest) GetPoolId() uint64 { + if m != nil { + return m.PoolId + } + return 0 +} + +type PoolResponse struct { + Pool *types1.Any `protobuf:"bytes,1,opt,name=pool,proto3" json:"pool,omitempty"` +} + +func (m *PoolResponse) Reset() { *m = PoolResponse{} } +func (m *PoolResponse) String() string { return proto.CompactTextString(m) } +func (*PoolResponse) ProtoMessage() {} +func (*PoolResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_6256a4106f701b7d, []int{9} +} +func (m *PoolResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *PoolResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_PoolResponse.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 *PoolResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_PoolResponse.Merge(m, src) +} +func (m *PoolResponse) XXX_Size() int { + return m.Size() +} +func (m *PoolResponse) XXX_DiscardUnknown() { + xxx_messageInfo_PoolResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_PoolResponse proto.InternalMessageInfo + +func (m *PoolResponse) GetPool() *types1.Any { + if m != nil { + return m.Pool + } + return nil +} + func init() { proto.RegisterType((*ParamsRequest)(nil), "osmosis.poolmanager.v1beta1.ParamsRequest") proto.RegisterType((*ParamsResponse)(nil), "osmosis.poolmanager.v1beta1.ParamsResponse") @@ -421,6 +510,8 @@ func init() { proto.RegisterType((*EstimateSwapExactAmountOutResponse)(nil), "osmosis.poolmanager.v1beta1.EstimateSwapExactAmountOutResponse") proto.RegisterType((*NumPoolsRequest)(nil), "osmosis.poolmanager.v1beta1.NumPoolsRequest") proto.RegisterType((*NumPoolsResponse)(nil), "osmosis.poolmanager.v1beta1.NumPoolsResponse") + proto.RegisterType((*PoolRequest)(nil), "osmosis.poolmanager.v1beta1.PoolRequest") + proto.RegisterType((*PoolResponse)(nil), "osmosis.poolmanager.v1beta1.PoolResponse") } func init() { @@ -428,59 +519,64 @@ func init() { } var fileDescriptor_6256a4106f701b7d = []byte{ - // 824 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x55, 0x4d, 0x6f, 0xeb, 0x44, - 0x14, 0x8d, 0xd3, 0xbc, 0xbc, 0x74, 0x9e, 0xda, 0xf4, 0x0d, 0x0f, 0x48, 0x03, 0x8a, 0xc3, 0x14, - 0x4a, 0xfa, 0x65, 0x2b, 0x45, 0x6c, 0x90, 0xda, 0xd2, 0xa0, 0x20, 0xb2, 0xa1, 0xc5, 0xdd, 0x21, - 0x95, 0x68, 0x92, 0x0c, 0xc6, 0x6a, 0x3c, 0xe3, 0x66, 0xc6, 0x6d, 0x23, 0xc4, 0x86, 0x1d, 0x9b, - 0x0a, 0x09, 0x09, 0xf8, 0x49, 0x5d, 0x56, 0x62, 0x83, 0x58, 0x44, 0xd0, 0xc2, 0x1f, 0xc8, 0x0f, - 0x40, 0xc8, 0x33, 0x63, 0x27, 0xad, 0x54, 0x13, 0x8a, 0xde, 0x2a, 0xce, 0xdc, 0x73, 0xef, 0x9c, - 0x73, 0xee, 0xbd, 0x36, 0x78, 0x97, 0x71, 0x9f, 0x71, 0x8f, 0xdb, 0x01, 0x63, 0x7d, 0x1f, 0x53, - 0xec, 0x92, 0x81, 0x7d, 0x56, 0xef, 0x10, 0x81, 0xeb, 0xf6, 0x69, 0x48, 0x06, 0x43, 0x2b, 0x18, - 0x30, 0xc1, 0xe0, 0x1b, 0x1a, 0x68, 0x4d, 0x01, 0x2d, 0x0d, 0x2c, 0xbf, 0x70, 0x99, 0xcb, 0x24, - 0xce, 0x8e, 0x9e, 0x54, 0x4a, 0x79, 0x2d, 0xad, 0xb6, 0x4b, 0x28, 0x91, 0xe5, 0x24, 0xf4, 0xed, - 0x34, 0xa8, 0xb8, 0xd0, 0xa8, 0xcd, 0x34, 0x14, 0x3f, 0xc7, 0x41, 0x7b, 0xc0, 0x42, 0x41, 0x34, - 0xba, 0xd2, 0x95, 0x70, 0xbb, 0x83, 0x39, 0x49, 0x50, 0x5d, 0xe6, 0x51, 0x1d, 0x5f, 0x9f, 0x8e, - 0x4b, 0xa9, 0x09, 0x2a, 0xc0, 0xae, 0x47, 0xb1, 0xf0, 0x58, 0x8c, 0x7d, 0xd3, 0x65, 0xcc, 0xed, - 0x13, 0x1b, 0x07, 0x9e, 0x8d, 0x29, 0x65, 0x42, 0x06, 0x63, 0xf6, 0xcb, 0x3a, 0x2a, 0xff, 0x75, - 0xc2, 0x2f, 0x6d, 0x4c, 0x87, 0x71, 0x48, 0x5d, 0xd2, 0x56, 0xe6, 0xa8, 0x3f, 0x3a, 0x64, 0xde, - 0xcf, 0x12, 0x9e, 0x4f, 0xb8, 0xc0, 0x7e, 0xa0, 0x00, 0xa8, 0x08, 0x16, 0x0e, 0xf1, 0x00, 0xfb, - 0xdc, 0x21, 0xa7, 0x21, 0xe1, 0x02, 0x1d, 0x81, 0xc5, 0xf8, 0x80, 0x07, 0x8c, 0x72, 0x02, 0xf7, - 0x41, 0x3e, 0x90, 0x27, 0x25, 0xa3, 0x6a, 0xd4, 0x9e, 0x6d, 0xaf, 0x58, 0x29, 0x6d, 0xb2, 0x54, - 0x72, 0x23, 0x77, 0x35, 0x32, 0x33, 0x8e, 0x4e, 0x44, 0xdf, 0x65, 0x41, 0xb5, 0xc9, 0x85, 0xe7, - 0x63, 0x41, 0x8e, 0xce, 0x71, 0xd0, 0xbc, 0xc0, 0x5d, 0xb1, 0xef, 0xb3, 0x90, 0x8a, 0x16, 0xd5, - 0x37, 0xc3, 0x35, 0x90, 0xe7, 0x84, 0xf6, 0xc8, 0x40, 0xde, 0x33, 0xdf, 0x78, 0x3e, 0x1e, 0x99, - 0x0b, 0x43, 0xec, 0xf7, 0x3f, 0x40, 0xea, 0x1c, 0x39, 0x1a, 0x00, 0x37, 0xc0, 0xd3, 0xe8, 0xee, - 0xb6, 0xd7, 0x2b, 0x65, 0xab, 0x46, 0x2d, 0xd7, 0x80, 0xe3, 0x91, 0xb9, 0xa8, 0xb0, 0x3a, 0x80, - 0x9c, 0x7c, 0xf4, 0xd4, 0xea, 0x41, 0x0b, 0x14, 0x04, 0x3b, 0x21, 0xb4, 0xed, 0xd1, 0xd2, 0x9c, - 0xac, 0xfc, 0xca, 0x78, 0x64, 0x16, 0x15, 0x3a, 0x8e, 0x20, 0xe7, 0xa9, 0x7c, 0x6c, 0x51, 0x78, - 0x0c, 0xf2, 0xb2, 0xc5, 0xbc, 0x94, 0xab, 0xce, 0xd5, 0x9e, 0x6d, 0x5b, 0xa9, 0x7a, 0x23, 0x39, - 0x89, 0x92, 0x28, 0xad, 0xf1, 0x6a, 0x24, 0x7d, 0xc2, 0x5d, 0xd5, 0x42, 0x8e, 0x2e, 0x8a, 0x7e, - 0x36, 0xc0, 0x5b, 0x29, 0x5e, 0x68, 0xd3, 0x39, 0x58, 0x52, 0xd4, 0x58, 0x28, 0xda, 0x58, 0x46, - 0xb5, 0x2d, 0xad, 0xa8, 0xfc, 0x6f, 0x23, 0x73, 0xd5, 0xf5, 0xc4, 0x57, 0x61, 0xc7, 0xea, 0x32, - 0x5f, 0xf7, 0x5c, 0xff, 0x6c, 0xf1, 0xde, 0x89, 0x2d, 0x86, 0x01, 0xe1, 0x56, 0x8b, 0x8a, 0xf1, - 0xc8, 0x7c, 0x7d, 0x5a, 0xea, 0xa4, 0x1e, 0x72, 0x16, 0xe5, 0xd1, 0x41, 0xa8, 0xaf, 0x47, 0x97, - 0xd9, 0x07, 0xa9, 0x1d, 0x84, 0xe2, 0x65, 0xf7, 0xe9, 0x8b, 0xc4, 0xf7, 0x39, 0xe9, 0xbb, 0x3d, - 0xa3, 0xef, 0x11, 0xb5, 0x19, 0x8c, 0x87, 0x75, 0x30, 0x9f, 0x58, 0x50, 0xca, 0x49, 0xea, 0x2f, - 0xc6, 0x23, 0x73, 0xe9, 0x9e, 0x3b, 0xc8, 0x29, 0xc4, 0xb6, 0xa0, 0x1f, 0x0d, 0x80, 0xd2, 0x0c, - 0xd1, 0xcd, 0x0a, 0x40, 0x31, 0x9e, 0xa3, 0xbb, 0xbd, 0xfa, 0xe4, 0x3f, 0xf7, 0xea, 0xb5, 0xbb, - 0x63, 0x99, 0xb4, 0x6a, 0x41, 0x4f, 0xa7, 0xee, 0xd4, 0x73, 0x50, 0xfc, 0x34, 0xf4, 0x0f, 0x19, - 0xeb, 0x27, 0x8b, 0xdb, 0x04, 0x4b, 0x93, 0x23, 0x4d, 0xac, 0x0e, 0xe6, 0x69, 0xe8, 0xb7, 0x23, - 0xff, 0xd4, 0xf6, 0xe6, 0xa6, 0x25, 0x27, 0x21, 0xe4, 0x14, 0xa8, 0x4e, 0xdd, 0xfe, 0xfb, 0x09, - 0x78, 0xf2, 0x59, 0xf4, 0xa2, 0x82, 0x97, 0x06, 0xc8, 0xab, 0x6d, 0x86, 0xeb, 0x33, 0xac, 0xbc, - 0xe6, 0x51, 0xde, 0x98, 0x09, 0xab, 0x08, 0xa2, 0x8d, 0x6f, 0x7f, 0xf9, 0xf3, 0x87, 0xec, 0x3b, - 0x70, 0xc5, 0x4e, 0x7b, 0xed, 0x6a, 0x16, 0x7f, 0x18, 0x60, 0xf9, 0xc1, 0xcd, 0x81, 0x3b, 0xa9, - 0xf7, 0xfe, 0xdb, 0xdb, 0xa7, 0xbc, 0xfb, 0xd8, 0x74, 0xad, 0xa4, 0x29, 0x95, 0xec, 0xc1, 0x9d, - 0x44, 0x89, 0x8b, 0x7d, 0x3f, 0x91, 0xf0, 0xb5, 0x1e, 0xf7, 0x6f, 0x6c, 0xa2, 0x4b, 0xa9, 0x8f, - 0x09, 0x89, 0x8a, 0xe9, 0x2e, 0xb7, 0x3d, 0x0a, 0xff, 0x32, 0x40, 0xf9, 0xe1, 0x89, 0x83, 0x8f, - 0x62, 0x39, 0xd9, 0xdd, 0xf2, 0xde, 0xa3, 0xf3, 0xb5, 0xcc, 0x8f, 0xa5, 0xcc, 0x0f, 0xe1, 0xee, - 0xff, 0x90, 0xc9, 0x42, 0x01, 0x7f, 0x32, 0x40, 0x21, 0x1e, 0x57, 0xb8, 0x99, 0xca, 0xea, 0xde, - 0xa0, 0x97, 0xb7, 0x66, 0x44, 0x6b, 0xc6, 0x96, 0x64, 0x5c, 0x83, 0xab, 0xa9, 0x23, 0x96, 0xec, - 0x42, 0xe3, 0xf8, 0xea, 0xa6, 0x62, 0x5c, 0xdf, 0x54, 0x8c, 0xdf, 0x6f, 0x2a, 0xc6, 0xf7, 0xb7, - 0x95, 0xcc, 0xf5, 0x6d, 0x25, 0xf3, 0xeb, 0x6d, 0x25, 0xf3, 0xf9, 0x47, 0x53, 0x5b, 0xac, 0x6b, - 0x6d, 0xf5, 0x71, 0x87, 0x27, 0x85, 0xcf, 0xea, 0xef, 0xdb, 0x17, 0x77, 0xca, 0x77, 0xfb, 0x1e, - 0xa1, 0x42, 0x7d, 0xf9, 0xd5, 0x37, 0x38, 0x2f, 0x7f, 0xde, 0xfb, 0x27, 0x00, 0x00, 0xff, 0xff, - 0x67, 0x6c, 0xef, 0xe0, 0x15, 0x09, 0x00, 0x00, + // 909 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0x4f, 0x6f, 0x1b, 0x45, + 0x14, 0xcf, 0x26, 0xae, 0x93, 0x4c, 0xc8, 0x9f, 0x0e, 0x01, 0xdc, 0x05, 0x79, 0xc3, 0x14, 0x8a, + 0xd3, 0x24, 0xbb, 0x72, 0x0a, 0x97, 0x4a, 0x6d, 0x89, 0x2b, 0x23, 0x7c, 0xa1, 0x65, 0x7b, 0x43, + 0x2a, 0xd6, 0xd8, 0x1e, 0x96, 0x55, 0xbd, 0x33, 0x5b, 0xcf, 0x6c, 0x1b, 0x0b, 0x71, 0xe1, 0xc6, + 0xa5, 0xe2, 0x8f, 0x04, 0x7c, 0x10, 0x3e, 0x44, 0xc5, 0xa9, 0x12, 0x17, 0xc4, 0xc1, 0x82, 0x04, + 0xbe, 0x80, 0x3f, 0x01, 0xda, 0x99, 0xb7, 0x6b, 0x27, 0x52, 0x36, 0x26, 0x88, 0x93, 0x67, 0xe7, + 0xfd, 0xde, 0x7b, 0xbf, 0xf7, 0x7b, 0xf3, 0x5e, 0x82, 0xde, 0x11, 0x32, 0x12, 0x32, 0x94, 0x5e, + 0x2c, 0x44, 0x3f, 0xa2, 0x9c, 0x06, 0x6c, 0xe0, 0x3d, 0xa9, 0x77, 0x98, 0xa2, 0x75, 0xef, 0x71, + 0xc2, 0x06, 0x43, 0x37, 0x1e, 0x08, 0x25, 0xf0, 0xeb, 0x00, 0x74, 0xa7, 0x80, 0x2e, 0x00, 0xed, + 0xcd, 0x40, 0x04, 0x42, 0xe3, 0xbc, 0xf4, 0x64, 0x5c, 0xec, 0xed, 0xa2, 0xd8, 0x01, 0xe3, 0x4c, + 0x87, 0xd3, 0xd0, 0xb7, 0x8a, 0xa0, 0xea, 0x10, 0x50, 0xbb, 0x45, 0x28, 0xf9, 0x94, 0xc6, 0xed, + 0x81, 0x48, 0x14, 0x03, 0x74, 0xb5, 0xab, 0xe1, 0x5e, 0x87, 0x4a, 0x96, 0xa3, 0xba, 0x22, 0xe4, + 0x60, 0xbf, 0x3e, 0x6d, 0xd7, 0xa5, 0xe6, 0xa8, 0x98, 0x06, 0x21, 0xa7, 0x2a, 0x14, 0x19, 0xf6, + 0x8d, 0x40, 0x88, 0xa0, 0xcf, 0x3c, 0x1a, 0x87, 0x1e, 0xe5, 0x5c, 0x28, 0x6d, 0xcc, 0xd8, 0x5f, + 0x01, 0xab, 0xfe, 0xea, 0x24, 0x9f, 0x79, 0x94, 0x0f, 0x33, 0x93, 0x49, 0xd2, 0x36, 0xe2, 0x98, + 0x0f, 0x30, 0x39, 0xa7, 0xbd, 0x54, 0x18, 0x31, 0xa9, 0x68, 0x14, 0x1b, 0x00, 0x59, 0x47, 0xab, + 0xf7, 0xe9, 0x80, 0x46, 0xd2, 0x67, 0x8f, 0x13, 0x26, 0x15, 0x79, 0x80, 0xd6, 0xb2, 0x0b, 0x19, + 0x0b, 0x2e, 0x19, 0x3e, 0x40, 0xe5, 0x58, 0xdf, 0x54, 0xac, 0x2d, 0xab, 0xb6, 0xb2, 0x7f, 0xd5, + 0x2d, 0x68, 0x93, 0x6b, 0x9c, 0x1b, 0xa5, 0xe7, 0x23, 0x67, 0xce, 0x07, 0x47, 0xf2, 0xf5, 0x3c, + 0xda, 0x6a, 0x4a, 0x15, 0x46, 0x54, 0xb1, 0x07, 0x4f, 0x69, 0xdc, 0x3c, 0xa4, 0x5d, 0x75, 0x10, + 0x89, 0x84, 0xab, 0x16, 0x87, 0xcc, 0x78, 0x1b, 0x95, 0x25, 0xe3, 0x3d, 0x36, 0xd0, 0x79, 0x96, + 0x1b, 0x97, 0xc7, 0x23, 0x67, 0x75, 0x48, 0xa3, 0xfe, 0x4d, 0x62, 0xee, 0x89, 0x0f, 0x00, 0xbc, + 0x83, 0x16, 0xd3, 0xdc, 0xed, 0xb0, 0x57, 0x99, 0xdf, 0xb2, 0x6a, 0xa5, 0x06, 0x1e, 0x8f, 0x9c, + 0x35, 0x83, 0x05, 0x03, 0xf1, 0xcb, 0xe9, 0xa9, 0xd5, 0xc3, 0x2e, 0x5a, 0x52, 0xe2, 0x11, 0xe3, + 0xed, 0x90, 0x57, 0x16, 0x74, 0xe4, 0x97, 0xc7, 0x23, 0x67, 0xdd, 0xa0, 0x33, 0x0b, 0xf1, 0x17, + 0xf5, 0xb1, 0xc5, 0xf1, 0x43, 0x54, 0xd6, 0x2d, 0x96, 0x95, 0xd2, 0xd6, 0x42, 0x6d, 0x65, 0xdf, + 0x2d, 0xac, 0x37, 0x2d, 0x27, 0xaf, 0x24, 0x75, 0x6b, 0xbc, 0x92, 0x96, 0x3e, 0xe1, 0x6e, 0x62, + 0x11, 0x1f, 0x82, 0x92, 0x9f, 0x2c, 0xf4, 0x66, 0x81, 0x16, 0x20, 0xba, 0x44, 0x1b, 0x86, 0x9a, + 0x48, 0x54, 0x9b, 0x6a, 0x2b, 0xc8, 0xd2, 0x4a, 0xc3, 0xff, 0x3e, 0x72, 0xae, 0x05, 0xa1, 0xfa, + 0x3c, 0xe9, 0xb8, 0x5d, 0x11, 0x41, 0xcf, 0xe1, 0x67, 0x4f, 0xf6, 0x1e, 0x79, 0x6a, 0x18, 0x33, + 0xe9, 0xb6, 0xb8, 0x1a, 0x8f, 0x9c, 0xd7, 0xa6, 0x4b, 0x9d, 0xc4, 0x23, 0xfe, 0x9a, 0xbe, 0xba, + 0x97, 0x40, 0x7a, 0xf2, 0x6c, 0xfe, 0x4c, 0x6a, 0xf7, 0x12, 0xf5, 0x7f, 0xf7, 0xe9, 0xd3, 0x5c, + 0xf7, 0x05, 0xad, 0xbb, 0x37, 0xa3, 0xee, 0x29, 0xb5, 0x19, 0x84, 0xc7, 0x75, 0xb4, 0x9c, 0x4b, + 0x50, 0x29, 0x69, 0xea, 0x9b, 0xe3, 0x91, 0xb3, 0x71, 0x4a, 0x1d, 0xe2, 0x2f, 0x65, 0xb2, 0x90, + 0x1f, 0x2c, 0x44, 0x8a, 0x04, 0x81, 0x66, 0xc5, 0x68, 0x3d, 0x7b, 0x47, 0x27, 0x7b, 0xf5, 0xe1, + 0xbf, 0xee, 0xd5, 0xab, 0x27, 0x9f, 0x65, 0xde, 0xaa, 0x55, 0x78, 0x9d, 0xd0, 0xa9, 0xcb, 0x68, + 0xfd, 0xa3, 0x24, 0xba, 0x2f, 0x44, 0x3f, 0x1f, 0xdc, 0x26, 0xda, 0x98, 0x5c, 0x01, 0xb1, 0x3a, + 0x5a, 0xe6, 0x49, 0xd4, 0x4e, 0xf5, 0x33, 0xd3, 0x5b, 0x9a, 0x2e, 0x39, 0x37, 0x11, 0x7f, 0x89, + 0x83, 0x2b, 0xb9, 0x89, 0x56, 0xd2, 0x43, 0xd6, 0xec, 0xa9, 0x0e, 0x5a, 0xe7, 0x75, 0x90, 0xdc, + 0x45, 0x2f, 0x19, 0x5f, 0x48, 0x7f, 0x03, 0x95, 0x52, 0x0b, 0xec, 0x8d, 0x4d, 0xd7, 0x2c, 0x23, + 0x37, 0x5b, 0x46, 0xee, 0x01, 0x1f, 0x36, 0x96, 0x7f, 0xf9, 0x79, 0xef, 0x52, 0xea, 0xd5, 0xf2, + 0x35, 0x78, 0xff, 0xbb, 0x45, 0x74, 0xe9, 0xe3, 0x74, 0x53, 0xe2, 0x67, 0x16, 0x2a, 0x9b, 0x75, + 0x82, 0xaf, 0xcf, 0xb0, 0x73, 0x80, 0xb2, 0xbd, 0x33, 0x13, 0xd6, 0x50, 0x24, 0x3b, 0x5f, 0xfd, + 0xfa, 0xd7, 0xf7, 0xf3, 0x6f, 0xe3, 0xab, 0x5e, 0xd1, 0xde, 0x07, 0x16, 0x7f, 0x5a, 0xe8, 0xca, + 0x99, 0xa3, 0x8b, 0x6f, 0x15, 0xe6, 0x3d, 0x6f, 0xfd, 0xd9, 0xb7, 0x2f, 0xea, 0x0e, 0x95, 0x34, + 0x75, 0x25, 0x77, 0xf0, 0xad, 0xbc, 0x92, 0x80, 0x46, 0x51, 0x5e, 0xc2, 0x17, 0xd0, 0xad, 0x2f, + 0x3d, 0x06, 0xa1, 0xcc, 0x5f, 0x33, 0x96, 0x06, 0x83, 0x67, 0xd6, 0x0e, 0x39, 0xfe, 0xdb, 0x42, + 0xf6, 0xd9, 0x4f, 0x1e, 0x5f, 0x88, 0xe5, 0x64, 0x79, 0xd8, 0x77, 0x2e, 0xec, 0x0f, 0x65, 0x7e, + 0xa0, 0xcb, 0x7c, 0x1f, 0xdf, 0xfe, 0x0f, 0x65, 0x8a, 0x44, 0xe1, 0x1f, 0x2d, 0xb4, 0x94, 0xcd, + 0x0b, 0xde, 0x2d, 0x64, 0x75, 0x6a, 0xd2, 0xec, 0xbd, 0x19, 0xd1, 0xc0, 0xd8, 0xd5, 0x8c, 0x6b, + 0xf8, 0x5a, 0xe1, 0x13, 0xcb, 0x87, 0x11, 0x7f, 0x6b, 0xa1, 0x52, 0x1a, 0x01, 0xd7, 0x8a, 0x1f, + 0xf2, 0x64, 0x4a, 0xed, 0xed, 0x19, 0x90, 0xc0, 0xe6, 0x5d, 0xcd, 0xc6, 0xc5, 0xbb, 0x85, 0x6c, + 0x34, 0x93, 0x89, 0x98, 0x8d, 0x87, 0xcf, 0x8f, 0xaa, 0xd6, 0x8b, 0xa3, 0xaa, 0xf5, 0xc7, 0x51, + 0xd5, 0xfa, 0xe6, 0xb8, 0x3a, 0xf7, 0xe2, 0xb8, 0x3a, 0xf7, 0xdb, 0x71, 0x75, 0xee, 0x93, 0xbb, + 0x53, 0xab, 0x0d, 0x22, 0xee, 0xf5, 0x69, 0x47, 0xe6, 0xe1, 0x9f, 0xd4, 0xdf, 0xf3, 0x0e, 0x4f, + 0x24, 0xe9, 0xf6, 0x43, 0xc6, 0x95, 0xf9, 0x77, 0xc8, 0xec, 0x82, 0xb2, 0xfe, 0xb9, 0xf1, 0x4f, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x99, 0x1d, 0x42, 0xba, 0x2a, 0x0a, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -500,7 +596,10 @@ type QueryClient interface { EstimateSwapExactAmountIn(ctx context.Context, in *EstimateSwapExactAmountInRequest, opts ...grpc.CallOption) (*EstimateSwapExactAmountInResponse, error) // Estimates swap amount in given out. EstimateSwapExactAmountOut(ctx context.Context, in *EstimateSwapExactAmountOutRequest, opts ...grpc.CallOption) (*EstimateSwapExactAmountOutResponse, error) + // Returns the total number of pools existing in Osmosis. NumPools(ctx context.Context, in *NumPoolsRequest, opts ...grpc.CallOption) (*NumPoolsResponse, error) + // Pool returns the Pool specified by the pool id + Pool(ctx context.Context, in *PoolRequest, opts ...grpc.CallOption) (*PoolResponse, error) } type queryClient struct { @@ -547,6 +646,15 @@ func (c *queryClient) NumPools(ctx context.Context, in *NumPoolsRequest, opts .. return out, nil } +func (c *queryClient) Pool(ctx context.Context, in *PoolRequest, opts ...grpc.CallOption) (*PoolResponse, error) { + out := new(PoolResponse) + err := c.cc.Invoke(ctx, "/osmosis.poolmanager.v1beta1.Query/Pool", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // QueryServer is the server API for Query service. type QueryServer interface { Params(context.Context, *ParamsRequest) (*ParamsResponse, error) @@ -554,7 +662,10 @@ type QueryServer interface { EstimateSwapExactAmountIn(context.Context, *EstimateSwapExactAmountInRequest) (*EstimateSwapExactAmountInResponse, error) // Estimates swap amount in given out. EstimateSwapExactAmountOut(context.Context, *EstimateSwapExactAmountOutRequest) (*EstimateSwapExactAmountOutResponse, error) + // Returns the total number of pools existing in Osmosis. NumPools(context.Context, *NumPoolsRequest) (*NumPoolsResponse, error) + // Pool returns the Pool specified by the pool id + Pool(context.Context, *PoolRequest) (*PoolResponse, error) } // UnimplementedQueryServer can be embedded to have forward compatible implementations. @@ -573,6 +684,9 @@ func (*UnimplementedQueryServer) EstimateSwapExactAmountOut(ctx context.Context, func (*UnimplementedQueryServer) NumPools(ctx context.Context, req *NumPoolsRequest) (*NumPoolsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method NumPools not implemented") } +func (*UnimplementedQueryServer) Pool(ctx context.Context, req *PoolRequest) (*PoolResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Pool not implemented") +} func RegisterQueryServer(s grpc1.Server, srv QueryServer) { s.RegisterService(&_Query_serviceDesc, srv) @@ -650,6 +764,24 @@ func _Query_NumPools_Handler(srv interface{}, ctx context.Context, dec func(inte return interceptor(ctx, in, info, handler) } +func _Query_Pool_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(PoolRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).Pool(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/osmosis.poolmanager.v1beta1.Query/Pool", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).Pool(ctx, req.(*PoolRequest)) + } + return interceptor(ctx, in, info, handler) +} + var _Query_serviceDesc = grpc.ServiceDesc{ ServiceName: "osmosis.poolmanager.v1beta1.Query", HandlerType: (*QueryServer)(nil), @@ -670,6 +802,10 @@ var _Query_serviceDesc = grpc.ServiceDesc{ MethodName: "NumPools", Handler: _Query_NumPools_Handler, }, + { + MethodName: "Pool", + Handler: _Query_Pool_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "osmosis/poolmanager/v1beta1/query.proto", @@ -960,6 +1096,69 @@ func (m *NumPoolsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *PoolRequest) 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 *PoolRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PoolRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PoolId != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.PoolId)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *PoolResponse) 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 *PoolResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PoolResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Pool != nil { + { + size, err := m.Pool.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 @@ -1086,6 +1285,31 @@ func (m *NumPoolsResponse) Size() (n int) { return n } +func (m *PoolRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.PoolId != 0 { + n += 1 + sovQuery(uint64(m.PoolId)) + } + return n +} + +func (m *PoolResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Pool != nil { + l = m.Pool.Size() + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + func sovQuery(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -1846,6 +2070,161 @@ func (m *NumPoolsResponse) Unmarshal(dAtA []byte) error { } return nil } +func (m *PoolRequest) 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: PoolRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: PoolRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field PoolId", wireType) + } + m.PoolId = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.PoolId |= uint64(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 + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *PoolResponse) 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: PoolResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: PoolResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Pool", 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.Pool == nil { + m.Pool = &types1.Any{} + } + if err := m.Pool.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 skipQuery(dAtA []byte) (n int, err error) { l := len(dAtA) iNdEx := 0 diff --git a/x/poolmanager/client/queryproto/query.pb.gw.go b/x/poolmanager/client/queryproto/query.pb.gw.go index 54ba86f259c..85607d806bd 100644 --- a/x/poolmanager/client/queryproto/query.pb.gw.go +++ b/x/poolmanager/client/queryproto/query.pb.gw.go @@ -213,6 +213,60 @@ func local_request_Query_NumPools_0(ctx context.Context, marshaler runtime.Marsh } +func request_Query_Pool_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq PoolRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["pool_id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "pool_id") + } + + protoReq.PoolId, err = runtime.Uint64(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "pool_id", err) + } + + msg, err := client.Pool(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_Query_Pool_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq PoolRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["pool_id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "pool_id") + } + + protoReq.PoolId, err = runtime.Uint64(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "pool_id", err) + } + + msg, err := server.Pool(ctx, &protoReq) + return msg, metadata, err + +} + // RegisterQueryHandlerServer registers the http handlers for service Query to "mux". // UnaryRPC :call QueryServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. @@ -311,6 +365,29 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv }) + mux.Handle("GET", pattern_Query_Pool_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) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_Query_Pool_0(rctx, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_Query_Pool_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + return nil } @@ -432,6 +509,26 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie }) + mux.Handle("GET", pattern_Query_Pool_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) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_Query_Pool_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_Query_Pool_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + return nil } @@ -443,6 +540,8 @@ var ( pattern_Query_EstimateSwapExactAmountOut_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3, 2, 4, 2, 5}, []string{"osmosis", "gamm", "v1beta1", "pool_id", "estimate", "swap_exact_amount_out"}, "", runtime.AssumeColonVerbOpt(false))) pattern_Query_NumPools_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"osmosis", "poolmanager", "v1beta1", "num_pools"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_Query_Pool_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"osmosis", "poolmanager", "v1beta1", "pools", "pool_id"}, "", runtime.AssumeColonVerbOpt(false))) ) var ( @@ -453,4 +552,6 @@ var ( forward_Query_EstimateSwapExactAmountOut_0 = runtime.ForwardResponseMessage forward_Query_NumPools_0 = runtime.ForwardResponseMessage + + forward_Query_Pool_0 = runtime.ForwardResponseMessage ) diff --git a/x/poolmanager/router.go b/x/poolmanager/router.go index bde509c1ee7..8751ca027da 100644 --- a/x/poolmanager/router.go +++ b/x/poolmanager/router.go @@ -388,6 +388,18 @@ func (k Keeper) MultihopEstimateInGivenExactAmountOut( return insExpected[0], nil } +func (k Keeper) RoutePool( + ctx sdk.Context, + poolId uint64, +) (types.PoolI, error) { + swapModule, err := k.GetPoolModule(ctx, poolId) + if err != nil { + return nil, err + } + + return swapModule.GetPool(ctx, poolId) +} + func (k Keeper) isOsmoRoutedMultihop(ctx sdk.Context, route types.MultihopRoute, inDenom, outDenom string) (isRouted bool) { if route.Length() != 2 { return false