diff --git a/lnrpc/rpc.pb.go b/lnrpc/rpc.pb.go index d21424989..e0e3da0d8 100644 --- a/lnrpc/rpc.pb.go +++ b/lnrpc/rpc.pb.go @@ -48,7 +48,8 @@ It has these top-level messages: WalletBalanceResponse ChannelBalanceRequest ChannelBalanceResponse - RouteRequest + QueryRoutesRequest + QueryRoutesResponse Hop Route NodeInfoRequest @@ -1544,30 +1545,46 @@ func (m *ChannelBalanceResponse) GetBalance() int64 { return 0 } -type RouteRequest struct { +type QueryRoutesRequest struct { PubKey string `protobuf:"bytes,1,opt,name=pub_key,json=pubKey" json:"pub_key,omitempty"` Amt int64 `protobuf:"varint,2,opt,name=amt" json:"amt,omitempty"` } -func (m *RouteRequest) Reset() { *m = RouteRequest{} } -func (m *RouteRequest) String() string { return proto.CompactTextString(m) } -func (*RouteRequest) ProtoMessage() {} -func (*RouteRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{39} } +func (m *QueryRoutesRequest) Reset() { *m = QueryRoutesRequest{} } +func (m *QueryRoutesRequest) String() string { return proto.CompactTextString(m) } +func (*QueryRoutesRequest) ProtoMessage() {} +func (*QueryRoutesRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{39} } -func (m *RouteRequest) GetPubKey() string { +func (m *QueryRoutesRequest) GetPubKey() string { if m != nil { return m.PubKey } return "" } -func (m *RouteRequest) GetAmt() int64 { +func (m *QueryRoutesRequest) GetAmt() int64 { if m != nil { return m.Amt } return 0 } +type QueryRoutesResponse struct { + Routes []*Route `protobuf:"bytes,1,rep,name=routes" json:"routes,omitempty"` +} + +func (m *QueryRoutesResponse) Reset() { *m = QueryRoutesResponse{} } +func (m *QueryRoutesResponse) String() string { return proto.CompactTextString(m) } +func (*QueryRoutesResponse) ProtoMessage() {} +func (*QueryRoutesResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{40} } + +func (m *QueryRoutesResponse) GetRoutes() []*Route { + if m != nil { + return m.Routes + } + return nil +} + type Hop struct { ChanId uint64 `protobuf:"varint,1,opt,name=chan_id" json:"chan_id,omitempty"` ChanCapacity int64 `protobuf:"varint,2,opt,name=chan_capacity" json:"chan_capacity,omitempty"` @@ -1578,7 +1595,7 @@ type Hop struct { func (m *Hop) Reset() { *m = Hop{} } func (m *Hop) String() string { return proto.CompactTextString(m) } func (*Hop) ProtoMessage() {} -func (*Hop) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{40} } +func (*Hop) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{41} } func (m *Hop) GetChanId() uint64 { if m != nil { @@ -1618,7 +1635,7 @@ type Route struct { func (m *Route) Reset() { *m = Route{} } func (m *Route) String() string { return proto.CompactTextString(m) } func (*Route) ProtoMessage() {} -func (*Route) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{41} } +func (*Route) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{42} } func (m *Route) GetTotalTimeLock() uint32 { if m != nil { @@ -1655,7 +1672,7 @@ type NodeInfoRequest struct { func (m *NodeInfoRequest) Reset() { *m = NodeInfoRequest{} } func (m *NodeInfoRequest) String() string { return proto.CompactTextString(m) } func (*NodeInfoRequest) ProtoMessage() {} -func (*NodeInfoRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{42} } +func (*NodeInfoRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{43} } func (m *NodeInfoRequest) GetPubKey() string { if m != nil { @@ -1673,7 +1690,7 @@ type NodeInfo struct { func (m *NodeInfo) Reset() { *m = NodeInfo{} } func (m *NodeInfo) String() string { return proto.CompactTextString(m) } func (*NodeInfo) ProtoMessage() {} -func (*NodeInfo) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{43} } +func (*NodeInfo) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{44} } func (m *NodeInfo) GetNode() *LightningNode { if m != nil { @@ -1706,7 +1723,7 @@ type LightningNode struct { func (m *LightningNode) Reset() { *m = LightningNode{} } func (m *LightningNode) String() string { return proto.CompactTextString(m) } func (*LightningNode) ProtoMessage() {} -func (*LightningNode) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{44} } +func (*LightningNode) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{45} } func (m *LightningNode) GetLastUpdate() uint32 { if m != nil { @@ -1746,7 +1763,7 @@ type RoutingPolicy struct { func (m *RoutingPolicy) Reset() { *m = RoutingPolicy{} } func (m *RoutingPolicy) String() string { return proto.CompactTextString(m) } func (*RoutingPolicy) ProtoMessage() {} -func (*RoutingPolicy) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{45} } +func (*RoutingPolicy) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{46} } func (m *RoutingPolicy) GetTimeLockDelta() uint32 { if m != nil { @@ -1790,7 +1807,7 @@ type ChannelEdge struct { func (m *ChannelEdge) Reset() { *m = ChannelEdge{} } func (m *ChannelEdge) String() string { return proto.CompactTextString(m) } func (*ChannelEdge) ProtoMessage() {} -func (*ChannelEdge) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{46} } +func (*ChannelEdge) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{47} } func (m *ChannelEdge) GetChannelId() uint64 { if m != nil { @@ -1854,7 +1871,7 @@ type ChannelGraphRequest struct { func (m *ChannelGraphRequest) Reset() { *m = ChannelGraphRequest{} } func (m *ChannelGraphRequest) String() string { return proto.CompactTextString(m) } func (*ChannelGraphRequest) ProtoMessage() {} -func (*ChannelGraphRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{47} } +func (*ChannelGraphRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{48} } type ChannelGraph struct { Nodes []*LightningNode `protobuf:"bytes,1,rep,name=nodes" json:"nodes,omitempty"` @@ -1864,7 +1881,7 @@ type ChannelGraph struct { func (m *ChannelGraph) Reset() { *m = ChannelGraph{} } func (m *ChannelGraph) String() string { return proto.CompactTextString(m) } func (*ChannelGraph) ProtoMessage() {} -func (*ChannelGraph) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{48} } +func (*ChannelGraph) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{49} } func (m *ChannelGraph) GetNodes() []*LightningNode { if m != nil { @@ -1887,7 +1904,7 @@ type ChanInfoRequest struct { func (m *ChanInfoRequest) Reset() { *m = ChanInfoRequest{} } func (m *ChanInfoRequest) String() string { return proto.CompactTextString(m) } func (*ChanInfoRequest) ProtoMessage() {} -func (*ChanInfoRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{49} } +func (*ChanInfoRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{50} } func (m *ChanInfoRequest) GetChanId() uint64 { if m != nil { @@ -1902,7 +1919,7 @@ type NetworkInfoRequest struct { func (m *NetworkInfoRequest) Reset() { *m = NetworkInfoRequest{} } func (m *NetworkInfoRequest) String() string { return proto.CompactTextString(m) } func (*NetworkInfoRequest) ProtoMessage() {} -func (*NetworkInfoRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{50} } +func (*NetworkInfoRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{51} } type NetworkInfo struct { GraphDiameter uint32 `protobuf:"varint,1,opt,name=graph_diameter" json:"graph_diameter,omitempty"` @@ -1919,7 +1936,7 @@ type NetworkInfo struct { func (m *NetworkInfo) Reset() { *m = NetworkInfo{} } func (m *NetworkInfo) String() string { return proto.CompactTextString(m) } func (*NetworkInfo) ProtoMessage() {} -func (*NetworkInfo) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{51} } +func (*NetworkInfo) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{52} } func (m *NetworkInfo) GetGraphDiameter() uint32 { if m != nil { @@ -1990,7 +2007,7 @@ type GraphTopologySubscription struct { func (m *GraphTopologySubscription) Reset() { *m = GraphTopologySubscription{} } func (m *GraphTopologySubscription) String() string { return proto.CompactTextString(m) } func (*GraphTopologySubscription) ProtoMessage() {} -func (*GraphTopologySubscription) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{52} } +func (*GraphTopologySubscription) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{53} } type GraphTopologyUpdate struct { NodeUpdates []*NodeUpdate `protobuf:"bytes,1,rep,name=node_updates,json=nodeUpdates" json:"node_updates,omitempty"` @@ -2001,7 +2018,7 @@ type GraphTopologyUpdate struct { func (m *GraphTopologyUpdate) Reset() { *m = GraphTopologyUpdate{} } func (m *GraphTopologyUpdate) String() string { return proto.CompactTextString(m) } func (*GraphTopologyUpdate) ProtoMessage() {} -func (*GraphTopologyUpdate) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{53} } +func (*GraphTopologyUpdate) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{54} } func (m *GraphTopologyUpdate) GetNodeUpdates() []*NodeUpdate { if m != nil { @@ -2034,7 +2051,7 @@ type NodeUpdate struct { func (m *NodeUpdate) Reset() { *m = NodeUpdate{} } func (m *NodeUpdate) String() string { return proto.CompactTextString(m) } func (*NodeUpdate) ProtoMessage() {} -func (*NodeUpdate) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{54} } +func (*NodeUpdate) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{55} } func (m *NodeUpdate) GetAddresses() []string { if m != nil { @@ -2076,7 +2093,7 @@ type ChannelEdgeUpdate struct { func (m *ChannelEdgeUpdate) Reset() { *m = ChannelEdgeUpdate{} } func (m *ChannelEdgeUpdate) String() string { return proto.CompactTextString(m) } func (*ChannelEdgeUpdate) ProtoMessage() {} -func (*ChannelEdgeUpdate) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{55} } +func (*ChannelEdgeUpdate) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{56} } func (m *ChannelEdgeUpdate) GetChanId() uint64 { if m != nil { @@ -2130,7 +2147,7 @@ type ClosedChannelUpdate struct { func (m *ClosedChannelUpdate) Reset() { *m = ClosedChannelUpdate{} } func (m *ClosedChannelUpdate) String() string { return proto.CompactTextString(m) } func (*ClosedChannelUpdate) ProtoMessage() {} -func (*ClosedChannelUpdate) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{56} } +func (*ClosedChannelUpdate) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{57} } func (m *ClosedChannelUpdate) GetChanId() uint64 { if m != nil { @@ -2167,7 +2184,7 @@ type SetAliasRequest struct { func (m *SetAliasRequest) Reset() { *m = SetAliasRequest{} } func (m *SetAliasRequest) String() string { return proto.CompactTextString(m) } func (*SetAliasRequest) ProtoMessage() {} -func (*SetAliasRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{57} } +func (*SetAliasRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{58} } func (m *SetAliasRequest) GetNewAlias() string { if m != nil { @@ -2182,7 +2199,7 @@ type SetAliasResponse struct { func (m *SetAliasResponse) Reset() { *m = SetAliasResponse{} } func (m *SetAliasResponse) String() string { return proto.CompactTextString(m) } func (*SetAliasResponse) ProtoMessage() {} -func (*SetAliasResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{58} } +func (*SetAliasResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{59} } type Invoice struct { Memo string `protobuf:"bytes,1,opt,name=memo" json:"memo,omitempty"` @@ -2199,7 +2216,7 @@ type Invoice struct { func (m *Invoice) Reset() { *m = Invoice{} } func (m *Invoice) String() string { return proto.CompactTextString(m) } func (*Invoice) ProtoMessage() {} -func (*Invoice) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{59} } +func (*Invoice) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{60} } func (m *Invoice) GetMemo() string { if m != nil { @@ -2272,7 +2289,7 @@ type AddInvoiceResponse struct { func (m *AddInvoiceResponse) Reset() { *m = AddInvoiceResponse{} } func (m *AddInvoiceResponse) String() string { return proto.CompactTextString(m) } func (*AddInvoiceResponse) ProtoMessage() {} -func (*AddInvoiceResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{60} } +func (*AddInvoiceResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{61} } func (m *AddInvoiceResponse) GetRHash() []byte { if m != nil { @@ -2296,7 +2313,7 @@ type PaymentHash struct { func (m *PaymentHash) Reset() { *m = PaymentHash{} } func (m *PaymentHash) String() string { return proto.CompactTextString(m) } func (*PaymentHash) ProtoMessage() {} -func (*PaymentHash) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{61} } +func (*PaymentHash) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{62} } func (m *PaymentHash) GetRHashStr() string { if m != nil { @@ -2319,7 +2336,7 @@ type ListInvoiceRequest struct { func (m *ListInvoiceRequest) Reset() { *m = ListInvoiceRequest{} } func (m *ListInvoiceRequest) String() string { return proto.CompactTextString(m) } func (*ListInvoiceRequest) ProtoMessage() {} -func (*ListInvoiceRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{62} } +func (*ListInvoiceRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{63} } func (m *ListInvoiceRequest) GetPendingOnly() bool { if m != nil { @@ -2335,7 +2352,7 @@ type ListInvoiceResponse struct { func (m *ListInvoiceResponse) Reset() { *m = ListInvoiceResponse{} } func (m *ListInvoiceResponse) String() string { return proto.CompactTextString(m) } func (*ListInvoiceResponse) ProtoMessage() {} -func (*ListInvoiceResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{63} } +func (*ListInvoiceResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{64} } func (m *ListInvoiceResponse) GetInvoices() []*Invoice { if m != nil { @@ -2350,7 +2367,7 @@ type InvoiceSubscription struct { func (m *InvoiceSubscription) Reset() { *m = InvoiceSubscription{} } func (m *InvoiceSubscription) String() string { return proto.CompactTextString(m) } func (*InvoiceSubscription) ProtoMessage() {} -func (*InvoiceSubscription) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{64} } +func (*InvoiceSubscription) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{65} } type Payment struct { PaymentHash string `protobuf:"bytes,1,opt,name=payment_hash" json:"payment_hash,omitempty"` @@ -2363,7 +2380,7 @@ type Payment struct { func (m *Payment) Reset() { *m = Payment{} } func (m *Payment) String() string { return proto.CompactTextString(m) } func (*Payment) ProtoMessage() {} -func (*Payment) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{65} } +func (*Payment) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{66} } func (m *Payment) GetPaymentHash() string { if m != nil { @@ -2406,7 +2423,7 @@ type ListPaymentsRequest struct { func (m *ListPaymentsRequest) Reset() { *m = ListPaymentsRequest{} } func (m *ListPaymentsRequest) String() string { return proto.CompactTextString(m) } func (*ListPaymentsRequest) ProtoMessage() {} -func (*ListPaymentsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{66} } +func (*ListPaymentsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{67} } type ListPaymentsResponse struct { Payments []*Payment `protobuf:"bytes,1,rep,name=payments" json:"payments,omitempty"` @@ -2415,7 +2432,7 @@ type ListPaymentsResponse struct { func (m *ListPaymentsResponse) Reset() { *m = ListPaymentsResponse{} } func (m *ListPaymentsResponse) String() string { return proto.CompactTextString(m) } func (*ListPaymentsResponse) ProtoMessage() {} -func (*ListPaymentsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{67} } +func (*ListPaymentsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{68} } func (m *ListPaymentsResponse) GetPayments() []*Payment { if m != nil { @@ -2430,7 +2447,7 @@ type DeleteAllPaymentsRequest struct { func (m *DeleteAllPaymentsRequest) Reset() { *m = DeleteAllPaymentsRequest{} } func (m *DeleteAllPaymentsRequest) String() string { return proto.CompactTextString(m) } func (*DeleteAllPaymentsRequest) ProtoMessage() {} -func (*DeleteAllPaymentsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{68} } +func (*DeleteAllPaymentsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{69} } type DeleteAllPaymentsResponse struct { } @@ -2438,7 +2455,7 @@ type DeleteAllPaymentsResponse struct { func (m *DeleteAllPaymentsResponse) Reset() { *m = DeleteAllPaymentsResponse{} } func (m *DeleteAllPaymentsResponse) String() string { return proto.CompactTextString(m) } func (*DeleteAllPaymentsResponse) ProtoMessage() {} -func (*DeleteAllPaymentsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{69} } +func (*DeleteAllPaymentsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{70} } type DebugLevelRequest struct { Show bool `protobuf:"varint,1,opt,name=show" json:"show,omitempty"` @@ -2448,7 +2465,7 @@ type DebugLevelRequest struct { func (m *DebugLevelRequest) Reset() { *m = DebugLevelRequest{} } func (m *DebugLevelRequest) String() string { return proto.CompactTextString(m) } func (*DebugLevelRequest) ProtoMessage() {} -func (*DebugLevelRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{70} } +func (*DebugLevelRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{71} } func (m *DebugLevelRequest) GetShow() bool { if m != nil { @@ -2471,7 +2488,7 @@ type DebugLevelResponse struct { func (m *DebugLevelResponse) Reset() { *m = DebugLevelResponse{} } func (m *DebugLevelResponse) String() string { return proto.CompactTextString(m) } func (*DebugLevelResponse) ProtoMessage() {} -func (*DebugLevelResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{71} } +func (*DebugLevelResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{72} } func (m *DebugLevelResponse) GetSubSystems() string { if m != nil { @@ -2487,7 +2504,7 @@ type PayReqString struct { func (m *PayReqString) Reset() { *m = PayReqString{} } func (m *PayReqString) String() string { return proto.CompactTextString(m) } func (*PayReqString) ProtoMessage() {} -func (*PayReqString) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{72} } +func (*PayReqString) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{73} } func (m *PayReqString) GetPayReq() string { if m != nil { @@ -2505,7 +2522,7 @@ type PayReq struct { func (m *PayReq) Reset() { *m = PayReq{} } func (m *PayReq) String() string { return proto.CompactTextString(m) } func (*PayReq) ProtoMessage() {} -func (*PayReq) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{73} } +func (*PayReq) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{74} } func (m *PayReq) GetDestination() string { if m != nil { @@ -2569,7 +2586,8 @@ func init() { proto.RegisterType((*WalletBalanceResponse)(nil), "lnrpc.WalletBalanceResponse") proto.RegisterType((*ChannelBalanceRequest)(nil), "lnrpc.ChannelBalanceRequest") proto.RegisterType((*ChannelBalanceResponse)(nil), "lnrpc.ChannelBalanceResponse") - proto.RegisterType((*RouteRequest)(nil), "lnrpc.RouteRequest") + proto.RegisterType((*QueryRoutesRequest)(nil), "lnrpc.QueryRoutesRequest") + proto.RegisterType((*QueryRoutesResponse)(nil), "lnrpc.QueryRoutesResponse") proto.RegisterType((*Hop)(nil), "lnrpc.Hop") proto.RegisterType((*Route)(nil), "lnrpc.Route") proto.RegisterType((*NodeInfoRequest)(nil), "lnrpc.NodeInfoRequest") @@ -2648,7 +2666,7 @@ type LightningClient interface { DescribeGraph(ctx context.Context, in *ChannelGraphRequest, opts ...grpc.CallOption) (*ChannelGraph, error) GetChanInfo(ctx context.Context, in *ChanInfoRequest, opts ...grpc.CallOption) (*ChannelEdge, error) GetNodeInfo(ctx context.Context, in *NodeInfoRequest, opts ...grpc.CallOption) (*NodeInfo, error) - QueryRoute(ctx context.Context, in *RouteRequest, opts ...grpc.CallOption) (*Route, error) + QueryRoutes(ctx context.Context, in *QueryRoutesRequest, opts ...grpc.CallOption) (*QueryRoutesResponse, error) GetNetworkInfo(ctx context.Context, in *NetworkInfoRequest, opts ...grpc.CallOption) (*NetworkInfo, error) SubscribeChannelGraph(ctx context.Context, in *GraphTopologySubscription, opts ...grpc.CallOption) (Lightning_SubscribeChannelGraphClient, error) SetAlias(ctx context.Context, in *SetAliasRequest, opts ...grpc.CallOption) (*SetAliasResponse, error) @@ -3029,9 +3047,9 @@ func (c *lightningClient) GetNodeInfo(ctx context.Context, in *NodeInfoRequest, return out, nil } -func (c *lightningClient) QueryRoute(ctx context.Context, in *RouteRequest, opts ...grpc.CallOption) (*Route, error) { - out := new(Route) - err := grpc.Invoke(ctx, "/lnrpc.Lightning/QueryRoute", in, out, c.cc, opts...) +func (c *lightningClient) QueryRoutes(ctx context.Context, in *QueryRoutesRequest, opts ...grpc.CallOption) (*QueryRoutesResponse, error) { + out := new(QueryRoutesResponse) + err := grpc.Invoke(ctx, "/lnrpc.Lightning/QueryRoutes", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -3129,7 +3147,7 @@ type LightningServer interface { DescribeGraph(context.Context, *ChannelGraphRequest) (*ChannelGraph, error) GetChanInfo(context.Context, *ChanInfoRequest) (*ChannelEdge, error) GetNodeInfo(context.Context, *NodeInfoRequest) (*NodeInfo, error) - QueryRoute(context.Context, *RouteRequest) (*Route, error) + QueryRoutes(context.Context, *QueryRoutesRequest) (*QueryRoutesResponse, error) GetNetworkInfo(context.Context, *NetworkInfoRequest) (*NetworkInfo, error) SubscribeChannelGraph(*GraphTopologySubscription, Lightning_SubscribeChannelGraphServer) error SetAlias(context.Context, *SetAliasRequest) (*SetAliasResponse, error) @@ -3664,20 +3682,20 @@ func _Lightning_GetNodeInfo_Handler(srv interface{}, ctx context.Context, dec fu return interceptor(ctx, in, info, handler) } -func _Lightning_QueryRoute_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(RouteRequest) +func _Lightning_QueryRoutes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryRoutesRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(LightningServer).QueryRoute(ctx, in) + return srv.(LightningServer).QueryRoutes(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/lnrpc.Lightning/QueryRoute", + FullMethod: "/lnrpc.Lightning/QueryRoutes", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(LightningServer).QueryRoute(ctx, req.(*RouteRequest)) + return srv.(LightningServer).QueryRoutes(ctx, req.(*QueryRoutesRequest)) } return interceptor(ctx, in, info, handler) } @@ -3854,8 +3872,8 @@ var _Lightning_serviceDesc = grpc.ServiceDesc{ Handler: _Lightning_GetNodeInfo_Handler, }, { - MethodName: "QueryRoute", - Handler: _Lightning_QueryRoute_Handler, + MethodName: "QueryRoutes", + Handler: _Lightning_QueryRoutes_Handler, }, { MethodName: "GetNetworkInfo", @@ -3909,250 +3927,252 @@ var _Lightning_serviceDesc = grpc.ServiceDesc{ func init() { proto.RegisterFile("rpc.proto", fileDescriptor0) } var fileDescriptor0 = []byte{ - // 3917 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x7a, 0xcf, 0x6f, 0x1c, 0x47, - 0x76, 0xbf, 0x7a, 0x38, 0x24, 0x67, 0xde, 0xcc, 0xf0, 0x47, 0x91, 0x22, 0x47, 0x43, 0xd9, 0x96, - 0x6a, 0x0d, 0x8b, 0x5f, 0x7e, 0x0d, 0x52, 0x66, 0x02, 0x47, 0xb6, 0x93, 0x2c, 0x68, 0x89, 0x2b, - 0x0a, 0xcb, 0xa5, 0xb8, 0x4d, 0xd9, 0xda, 0xec, 0x22, 0x98, 0x34, 0xa7, 0x8b, 0xc3, 0x5e, 0xf5, - 0x74, 0xb7, 0xbb, 0x6b, 0x48, 0xcd, 0x0a, 0x42, 0x82, 0xcd, 0xde, 0x92, 0x60, 0x11, 0x04, 0xc8, - 0x71, 0x11, 0x20, 0xe7, 0x5c, 0x72, 0x4c, 0xfe, 0x86, 0x00, 0x01, 0xf6, 0x94, 0x43, 0x6e, 0x41, - 0xee, 0xb9, 0xe7, 0x10, 0xbc, 0xfa, 0xd1, 0x5d, 0xd5, 0xdd, 0xb4, 0x15, 0xe4, 0x34, 0x53, 0x9f, - 0x7a, 0xf5, 0xaa, 0xea, 0xd5, 0x7b, 0xaf, 0xde, 0x7b, 0xd5, 0xd0, 0x4e, 0x93, 0xd1, 0x6e, 0x92, - 0xc6, 0x3c, 0x26, 0xf3, 0x61, 0x94, 0x26, 0xa3, 0xc1, 0xdd, 0x71, 0x1c, 0x8f, 0x43, 0xb6, 0xe7, - 0x25, 0xc1, 0x9e, 0x17, 0x45, 0x31, 0xf7, 0x78, 0x10, 0x47, 0x99, 0x24, 0xa2, 0xff, 0xe5, 0x40, - 0xe7, 0x45, 0xea, 0x45, 0x99, 0x37, 0x42, 0x98, 0xf4, 0x61, 0x91, 0xbf, 0x1e, 0x5e, 0x7a, 0xd9, - 0x65, 0xdf, 0xb9, 0xe7, 0x6c, 0xb7, 0x5d, 0xdd, 0x24, 0x1b, 0xb0, 0xe0, 0x4d, 0xe2, 0x69, 0xc4, - 0xfb, 0x8d, 0x7b, 0xce, 0xf6, 0x9c, 0xab, 0x5a, 0xe4, 0x63, 0x58, 0x8d, 0xa6, 0x93, 0xe1, 0x28, - 0x8e, 0x2e, 0x82, 0x74, 0x22, 0x99, 0xf7, 0xe7, 0xee, 0x39, 0xdb, 0xf3, 0x6e, 0xb5, 0x83, 0xbc, - 0x0f, 0x70, 0x1e, 0xc6, 0xa3, 0x57, 0x72, 0x8a, 0xa6, 0x98, 0xc2, 0x40, 0x08, 0x85, 0xae, 0x6a, - 0xb1, 0x60, 0x7c, 0xc9, 0xfb, 0xf3, 0x82, 0x91, 0x85, 0x21, 0x0f, 0x1e, 0x4c, 0xd8, 0x30, 0xe3, - 0xde, 0x24, 0xe9, 0x2f, 0x88, 0xd5, 0x18, 0x88, 0xe8, 0x8f, 0xb9, 0x17, 0x0e, 0x2f, 0x18, 0xcb, - 0xfa, 0x8b, 0xaa, 0x3f, 0x47, 0x68, 0x1f, 0x36, 0x9e, 0x32, 0x6e, 0xec, 0x3a, 0x73, 0xd9, 0x37, - 0x53, 0x96, 0x71, 0x7a, 0x0c, 0xc4, 0x80, 0x9f, 0x30, 0xee, 0x05, 0x61, 0x46, 0x3e, 0x85, 0x2e, - 0x37, 0x88, 0xfb, 0xce, 0xbd, 0xb9, 0xed, 0xce, 0x3e, 0xd9, 0x15, 0xf2, 0xdd, 0x35, 0x06, 0xb8, - 0x16, 0x1d, 0xfd, 0x57, 0x07, 0x3a, 0x67, 0x2c, 0xf2, 0x15, 0x77, 0x42, 0xa0, 0xe9, 0xb3, 0x8c, - 0x0b, 0xc1, 0x76, 0x5d, 0xf1, 0x9f, 0x7c, 0x00, 0x1d, 0xfc, 0x1d, 0x66, 0x3c, 0x0d, 0xa2, 0xb1, - 0x10, 0x6d, 0xdb, 0x05, 0x84, 0xce, 0x04, 0x42, 0x56, 0x60, 0xce, 0x9b, 0x70, 0x21, 0xd0, 0x39, - 0x17, 0xff, 0x92, 0xfb, 0xd0, 0x4d, 0xbc, 0xd9, 0x84, 0x45, 0xbc, 0x10, 0x62, 0xd7, 0xed, 0x28, - 0xec, 0x08, 0xa5, 0xb8, 0x0b, 0x6b, 0x26, 0x89, 0xe6, 0x3e, 0x2f, 0xb8, 0xaf, 0x1a, 0x94, 0x6a, - 0x92, 0x07, 0xb0, 0xac, 0xe9, 0x53, 0xb9, 0x58, 0x21, 0xd6, 0xb6, 0xbb, 0xa4, 0x60, 0x2d, 0xa0, - 0x08, 0xba, 0x72, 0x47, 0x59, 0x12, 0x47, 0x19, 0x23, 0x3b, 0xb0, 0xa2, 0x07, 0x26, 0x29, 0x0b, - 0x26, 0xde, 0x98, 0xa9, 0xed, 0x55, 0x70, 0xb2, 0x0f, 0xbd, 0x7c, 0x92, 0x78, 0xca, 0x99, 0xd8, - 0x6c, 0x67, 0xbf, 0xab, 0xe4, 0xe8, 0x22, 0xe6, 0xda, 0x24, 0xf4, 0x97, 0x0e, 0x74, 0x1f, 0x5f, - 0x7a, 0x51, 0xc4, 0xc2, 0xd3, 0x38, 0x88, 0x38, 0xea, 0xc7, 0xc5, 0x34, 0xf2, 0x83, 0x68, 0x3c, - 0xe4, 0xaf, 0x03, 0x5f, 0x4d, 0x66, 0x61, 0xb8, 0x28, 0xb3, 0x8d, 0xbb, 0x57, 0x82, 0xad, 0xe0, - 0xc8, 0x2f, 0x9e, 0xf2, 0x64, 0xca, 0x87, 0x41, 0xe4, 0xb3, 0xd7, 0x42, 0xce, 0x3d, 0xd7, 0xc2, - 0xe8, 0x1f, 0xc2, 0xca, 0x31, 0x2a, 0x5e, 0x14, 0x44, 0xe3, 0x03, 0xdf, 0x4f, 0x59, 0x96, 0xa1, - 0x35, 0x24, 0xd3, 0xf3, 0x57, 0x6c, 0xa6, 0xcc, 0x44, 0xb5, 0xf0, 0x8c, 0x2f, 0xe3, 0x8c, 0xab, - 0xf9, 0xc4, 0x7f, 0xfa, 0x77, 0x0e, 0x2c, 0xa3, 0xd4, 0x7e, 0xe4, 0x45, 0x33, 0xad, 0x0b, 0xc7, - 0xd0, 0x45, 0x56, 0x2f, 0xe2, 0x03, 0x69, 0x53, 0x52, 0xa7, 0xb6, 0x95, 0x2c, 0x4a, 0xd4, 0xbb, - 0x26, 0xe9, 0x61, 0xc4, 0xd3, 0x99, 0xdb, 0xf5, 0x0c, 0x68, 0xf0, 0x7d, 0x58, 0xad, 0x90, 0xa0, - 0xe6, 0x14, 0xeb, 0xc3, 0xbf, 0x64, 0x1d, 0xe6, 0xaf, 0xbc, 0x70, 0xca, 0x94, 0x05, 0xcb, 0xc6, - 0xe7, 0x8d, 0x47, 0x0e, 0xfd, 0x08, 0x56, 0x8a, 0x39, 0xd5, 0xd9, 0x12, 0x68, 0xe6, 0x22, 0x6e, - 0xbb, 0xe2, 0x3f, 0x8a, 0x02, 0xe9, 0x1e, 0xc7, 0x41, 0x6e, 0x34, 0x48, 0x87, 0x8b, 0xd1, 0x74, - 0xf8, 0xff, 0x26, 0x67, 0x41, 0x1f, 0xc0, 0xaa, 0x31, 0xfe, 0x5b, 0x26, 0xfa, 0x8d, 0x03, 0xab, - 0x27, 0xec, 0x5a, 0x89, 0x5b, 0x4f, 0xf5, 0x08, 0x9a, 0x7c, 0x96, 0x48, 0x15, 0x5b, 0xda, 0xff, - 0x50, 0x49, 0xab, 0x42, 0xb7, 0xab, 0x9a, 0x2f, 0x66, 0x09, 0x73, 0xc5, 0x08, 0xfa, 0x1c, 0x3a, - 0x06, 0x48, 0x36, 0x61, 0xed, 0xe5, 0xb3, 0x17, 0x27, 0x87, 0x67, 0x67, 0xc3, 0xd3, 0xaf, 0xbe, - 0xfc, 0xe1, 0xe1, 0x1f, 0x0d, 0x8f, 0x0e, 0xce, 0x8e, 0x56, 0x6e, 0x91, 0x0d, 0x20, 0x27, 0x87, - 0x67, 0x2f, 0x0e, 0x9f, 0x58, 0xb8, 0x43, 0x96, 0xa1, 0x63, 0x02, 0x0d, 0x3a, 0x80, 0xfe, 0x09, - 0xbb, 0x7e, 0x19, 0xf0, 0x88, 0x65, 0x99, 0x3d, 0x3d, 0xdd, 0x05, 0x62, 0xae, 0x49, 0x6d, 0xb3, - 0x0f, 0x8b, 0x9e, 0x84, 0xb4, 0x6b, 0x55, 0x4d, 0xfa, 0x15, 0x90, 0xc7, 0x71, 0x14, 0xb1, 0x11, - 0x3f, 0x65, 0x2c, 0xd5, 0x9b, 0xfd, 0xff, 0x86, 0x5c, 0x3b, 0xfb, 0x9b, 0x6a, 0xb3, 0x65, 0x4d, - 0x54, 0x02, 0x27, 0xd0, 0x4c, 0x58, 0x3a, 0x11, 0xe2, 0x6e, 0xb9, 0xe2, 0x3f, 0xdd, 0x83, 0x35, - 0x8b, 0x6d, 0xb1, 0x8e, 0x84, 0xb1, 0x74, 0xa8, 0x24, 0x3e, 0xef, 0xea, 0x26, 0xfd, 0x47, 0x07, - 0x9a, 0x47, 0x2f, 0x8e, 0x1f, 0x93, 0x01, 0xb4, 0x82, 0x68, 0x14, 0x4f, 0xd0, 0x69, 0x38, 0x82, - 0x63, 0xde, 0xbe, 0xf1, 0x1e, 0xb8, 0x0b, 0x6d, 0xe1, 0x6b, 0xd0, 0x53, 0x0b, 0x33, 0xea, 0xba, - 0x05, 0x80, 0xb7, 0x04, 0x7b, 0x9d, 0x04, 0xa9, 0xb8, 0x06, 0xb4, 0x73, 0x6f, 0x0a, 0x63, 0xab, - 0x76, 0xa0, 0x05, 0xa7, 0xec, 0x2a, 0x1e, 0x49, 0xd0, 0x67, 0xa1, 0x37, 0x13, 0xce, 0xab, 0xe7, - 0x56, 0x70, 0xfa, 0x9f, 0x73, 0xd0, 0x3b, 0x18, 0xf1, 0xe0, 0x8a, 0x29, 0x47, 0x21, 0x56, 0x28, - 0x00, 0xb5, 0x76, 0xd5, 0x22, 0x1f, 0x42, 0x2f, 0x65, 0x93, 0x98, 0xb3, 0xa1, 0x32, 0x5d, 0x69, - 0xa4, 0x36, 0x88, 0x54, 0x23, 0xc9, 0x68, 0x98, 0xa0, 0xcb, 0x11, 0x7b, 0x69, 0xbb, 0x36, 0x88, - 0x42, 0x44, 0x00, 0x85, 0x88, 0xbb, 0x68, 0xba, 0xba, 0x89, 0xb2, 0x1b, 0x79, 0x89, 0x37, 0x0a, - 0xb8, 0x5c, 0xf3, 0x9c, 0x9b, 0xb7, 0x91, 0x77, 0x18, 0x8f, 0xbc, 0x70, 0x78, 0xee, 0x85, 0x5e, - 0x34, 0x62, 0xea, 0xf2, 0xb2, 0x41, 0xf2, 0x11, 0x2c, 0xa9, 0x25, 0x69, 0x32, 0x79, 0x87, 0x95, - 0x50, 0x94, 0xe9, 0x34, 0xca, 0x18, 0xe7, 0x21, 0xf3, 0x73, 0xd2, 0x96, 0x20, 0xad, 0x76, 0x90, - 0x87, 0xb0, 0x26, 0xef, 0xc0, 0xcc, 0xe3, 0x71, 0x76, 0x19, 0x64, 0xc3, 0x8c, 0x45, 0xbc, 0xdf, - 0x16, 0xf4, 0x75, 0x5d, 0xe4, 0x11, 0x6c, 0x96, 0xe0, 0x94, 0x8d, 0x58, 0x70, 0xc5, 0xfc, 0x3e, - 0x88, 0x51, 0x37, 0x75, 0x93, 0x7b, 0xd0, 0xc1, 0xab, 0x7f, 0x9a, 0xf8, 0x1e, 0x67, 0x59, 0xbf, - 0x23, 0x24, 0x64, 0x42, 0xe4, 0x13, 0xe8, 0x25, 0x4c, 0xfa, 0xe2, 0x4b, 0x1e, 0x8e, 0xb2, 0x7e, - 0x57, 0x38, 0xc0, 0x8e, 0xd2, 0x72, 0xd4, 0x42, 0xd7, 0xa6, 0xa0, 0xb7, 0x61, 0xed, 0x38, 0xc8, - 0xb8, 0x3a, 0xe5, 0xdc, 0xd8, 0x8e, 0x60, 0xdd, 0x86, 0x95, 0x9a, 0x3f, 0x84, 0x96, 0x3a, 0x32, - 0x5c, 0x00, 0x32, 0x5f, 0x57, 0xcc, 0x2d, 0x6d, 0x71, 0x73, 0x2a, 0xfa, 0xab, 0x06, 0x34, 0xd1, - 0x52, 0x84, 0x85, 0x4c, 0xcf, 0x87, 0x85, 0xf7, 0xd4, 0x4d, 0xd3, 0x76, 0x1a, 0x96, 0xed, 0x98, - 0xd6, 0x3d, 0x67, 0x59, 0xb7, 0x08, 0x79, 0x66, 0x9c, 0x29, 0x79, 0x4b, 0x6d, 0x31, 0x90, 0xa2, - 0x3f, 0x65, 0xa3, 0x2b, 0xa1, 0x32, 0x79, 0x3f, 0x22, 0xa8, 0x50, 0x99, 0xc7, 0xe5, 0x68, 0xa9, - 0x2f, 0x79, 0x5b, 0xf7, 0x89, 0x91, 0x8b, 0x45, 0x9f, 0x18, 0xd7, 0x87, 0xc5, 0x20, 0x3a, 0x8f, - 0xa7, 0x91, 0x2f, 0x94, 0xa2, 0xe5, 0xea, 0x26, 0x9a, 0x6a, 0x22, 0x6e, 0xc1, 0x60, 0xc2, 0x94, - 0x02, 0x14, 0x00, 0x25, 0x78, 0xdd, 0x65, 0xc2, 0x67, 0xe4, 0x42, 0xfe, 0x14, 0x56, 0x0d, 0x4c, - 0x49, 0xf8, 0x3e, 0xcc, 0xe3, 0xee, 0x75, 0x40, 0xa4, 0xcf, 0x4e, 0x38, 0x1b, 0xd9, 0x43, 0x57, - 0x60, 0xe9, 0x29, 0xe3, 0xcf, 0xa2, 0x8b, 0x58, 0x73, 0xfa, 0xf7, 0x06, 0x2c, 0xe7, 0x90, 0x62, - 0xb4, 0x0d, 0xcb, 0x81, 0xcf, 0x22, 0x1e, 0xf0, 0xd9, 0xd0, 0xba, 0x55, 0xcb, 0x30, 0xde, 0x60, - 0x5e, 0x18, 0x78, 0x99, 0x32, 0x5d, 0xd9, 0x20, 0xfb, 0xb0, 0x8e, 0xba, 0xa5, 0xd5, 0x25, 0x3f, - 0x76, 0x79, 0x99, 0xd7, 0xf6, 0xa1, 0x39, 0x20, 0x2e, 0x5d, 0x43, 0x31, 0x44, 0xba, 0xa4, 0xba, - 0x2e, 0x94, 0x9a, 0xe4, 0x84, 0x5b, 0x96, 0xde, 0xa8, 0x00, 0x2a, 0x81, 0xeb, 0x82, 0x0c, 0x24, - 0xca, 0x81, 0xab, 0x11, 0xfc, 0xb6, 0x2a, 0xc1, 0xef, 0x36, 0x2c, 0x67, 0xb3, 0x68, 0xc4, 0xfc, - 0x21, 0x8f, 0x71, 0xde, 0x20, 0x12, 0xa7, 0xd3, 0x72, 0xcb, 0xb0, 0x08, 0xd3, 0x59, 0xc6, 0x23, - 0xc6, 0x85, 0x29, 0xb6, 0x5c, 0xdd, 0xa4, 0xbf, 0x10, 0x77, 0x49, 0x1e, 0x71, 0x7f, 0x25, 0xec, - 0x8d, 0x6c, 0x41, 0x5b, 0xce, 0x93, 0x5d, 0x7a, 0x2a, 0x66, 0x6a, 0x09, 0xe0, 0xec, 0xd2, 0xc3, - 0x80, 0xd2, 0x5a, 0xba, 0xd4, 0xec, 0x8e, 0xc0, 0x8e, 0xe4, 0xca, 0x3f, 0x84, 0x25, 0x1d, 0xcb, - 0x67, 0xc3, 0x90, 0x5d, 0x70, 0x1d, 0x28, 0x45, 0xd3, 0x09, 0x4e, 0x97, 0x1d, 0xb3, 0x0b, 0x4e, - 0x4f, 0x60, 0x55, 0x59, 0xd5, 0xf3, 0x84, 0xe9, 0xa9, 0x3f, 0x2b, 0xfb, 0x53, 0x79, 0x9f, 0xad, - 0x29, 0x6d, 0x31, 0xa3, 0xbb, 0x92, 0x93, 0xa5, 0x2e, 0x10, 0xd5, 0xfd, 0x38, 0x8c, 0x33, 0xa6, - 0x18, 0x52, 0xe8, 0x8e, 0xc2, 0x38, 0x2b, 0x87, 0x80, 0x26, 0x86, 0xf2, 0xc9, 0xa6, 0xa3, 0x11, - 0x5a, 0xa3, 0xbc, 0x11, 0x75, 0x93, 0xfe, 0xca, 0x81, 0x35, 0xc1, 0x4d, 0xdb, 0x7f, 0x1e, 0x5a, - 0xbc, 0xfb, 0x32, 0xbb, 0x23, 0x33, 0x24, 0x7d, 0x4f, 0xa5, 0x23, 0x61, 0x30, 0x09, 0xf4, 0xa5, - 0xd8, 0x46, 0xe4, 0x18, 0x01, 0x54, 0xd9, 0x8b, 0x38, 0x1d, 0x31, 0x21, 0xb1, 0x96, 0x2b, 0x1b, - 0xf4, 0xdf, 0x1c, 0x58, 0x15, 0xcb, 0x38, 0xe3, 0x1e, 0x9f, 0x66, 0x6a, 0x6b, 0xbf, 0x0f, 0x3d, - 0xdc, 0x06, 0xd3, 0xea, 0xaa, 0x16, 0xb1, 0x9e, 0x5b, 0x96, 0x40, 0x25, 0xf1, 0xd1, 0x2d, 0xd7, - 0x26, 0x26, 0xdf, 0x87, 0xae, 0x99, 0x6c, 0xa9, 0xf8, 0xfa, 0x8e, 0xde, 0x41, 0x45, 0x2b, 0x8e, - 0x6e, 0xb9, 0xd6, 0x00, 0xf2, 0x05, 0x80, 0xb8, 0xc5, 0x04, 0x5b, 0xb1, 0x5e, 0x63, 0x78, 0xe5, - 0x20, 0x8e, 0x6e, 0xb9, 0x06, 0xf9, 0x97, 0x2d, 0x58, 0x90, 0xce, 0x9d, 0x3e, 0x85, 0x9e, 0xb5, - 0x52, 0x2b, 0xc0, 0xeb, 0xca, 0x00, 0xaf, 0x12, 0x78, 0x37, 0x6a, 0x02, 0xef, 0xff, 0x76, 0x80, - 0xa0, 0x26, 0x95, 0x8e, 0xea, 0x23, 0x58, 0xe2, 0x5e, 0x3a, 0x66, 0x7c, 0x68, 0xc7, 0x31, 0x25, - 0x54, 0xdc, 0x42, 0xb1, 0x6f, 0xdd, 0xf6, 0x5d, 0xd7, 0x84, 0xc8, 0x2e, 0x10, 0xa3, 0xa9, 0xd3, - 0x24, 0xe9, 0xbf, 0x6b, 0x7a, 0xd0, 0xd1, 0xc8, 0xab, 0x5a, 0xe7, 0x11, 0x2a, 0x12, 0x6a, 0x8a, - 0x43, 0xaf, 0xed, 0x43, 0x17, 0x9d, 0x4c, 0x31, 0x07, 0xf3, 0xb8, 0x8e, 0x07, 0x74, 0x5b, 0xbb, - 0x14, 0x61, 0x56, 0xca, 0x63, 0x14, 0x00, 0xfd, 0xad, 0x03, 0x2b, 0xb8, 0x7d, 0x4b, 0x45, 0x3e, - 0x07, 0xa1, 0x7d, 0xef, 0xa8, 0x21, 0x16, 0xed, 0xff, 0x5d, 0x41, 0x1e, 0x41, 0x5b, 0x30, 0x8c, - 0x13, 0x16, 0x29, 0xfd, 0xe8, 0xdb, 0xfa, 0x51, 0x18, 0xfe, 0xd1, 0x2d, 0xb7, 0x20, 0x36, 0xb4, - 0xe3, 0x10, 0x6e, 0xab, 0x55, 0x96, 0x8e, 0xf5, 0x63, 0x58, 0xc8, 0xc4, 0x4e, 0x55, 0x78, 0xbf, - 0x6e, 0x73, 0x96, 0x52, 0x70, 0x15, 0x0d, 0xfd, 0x8b, 0x39, 0xd8, 0x28, 0xf3, 0x51, 0xd7, 0xc9, - 0x4f, 0x60, 0xa5, 0x72, 0x15, 0xc8, 0x2b, 0xea, 0x63, 0x5b, 0x4c, 0xa5, 0x81, 0x65, 0xb8, 0xc2, - 0x65, 0xf0, 0xb7, 0x0d, 0x58, 0xb2, 0x89, 0x50, 0x8f, 0xf3, 0x4b, 0xaa, 0xb8, 0xb8, 0x2c, 0xac, - 0x1a, 0x52, 0x36, 0xea, 0x42, 0x4a, 0x33, 0x70, 0x9c, 0xfb, 0xae, 0xc0, 0xb1, 0xf9, 0x6e, 0x81, - 0xe3, 0x7c, 0x6d, 0xe0, 0x58, 0xf6, 0xa0, 0x32, 0xd7, 0xb7, 0x3d, 0x68, 0x71, 0x1a, 0x8b, 0xef, - 0x70, 0x1a, 0x9f, 0xc1, 0xfa, 0x4b, 0x2f, 0x0c, 0x19, 0xff, 0x52, 0x4e, 0xa1, 0xcf, 0xf4, 0x3e, - 0x74, 0xaf, 0x65, 0x8a, 0x34, 0x8c, 0xa3, 0x70, 0xa6, 0x02, 0xf2, 0x8e, 0xc2, 0x9e, 0x47, 0xe1, - 0x8c, 0x7e, 0x02, 0xb7, 0x4b, 0x43, 0x8b, 0x3c, 0x45, 0x6f, 0x03, 0x87, 0x39, 0xae, 0x6e, 0xd2, - 0x4d, 0xb8, 0xad, 0x96, 0x61, 0x4f, 0x47, 0xf7, 0x61, 0xa3, 0xdc, 0x51, 0xcf, 0x6c, 0xae, 0x60, - 0xf6, 0x19, 0x74, 0x65, 0xe9, 0x41, 0x2d, 0x79, 0xb3, 0x1c, 0xfc, 0x61, 0x6a, 0xff, 0x43, 0x36, - 0xd3, 0x95, 0x98, 0x46, 0x5e, 0x89, 0xa1, 0x7f, 0x0a, 0x73, 0x47, 0x71, 0x62, 0xe6, 0x02, 0x8e, - 0x9d, 0x0b, 0xa8, 0x83, 0x1f, 0xe6, 0xe7, 0x2a, 0x07, 0xdb, 0x20, 0x1e, 0x9b, 0x37, 0xe1, 0x78, - 0xb9, 0x5f, 0xc4, 0xe9, 0xb5, 0x97, 0xfa, 0xea, 0xf8, 0x4b, 0x28, 0x2e, 0xe0, 0x82, 0xe9, 0xa3, - 0xc7, 0xbf, 0xf4, 0xd7, 0x0e, 0xcc, 0x8b, 0xc5, 0x63, 0xe8, 0x20, 0x83, 0x71, 0x79, 0x15, 0x61, - 0x0e, 0xe6, 0x08, 0x7f, 0x52, 0x86, 0x4b, 0xd5, 0xb1, 0x46, 0xb9, 0x3a, 0x86, 0x3e, 0x49, 0xb6, - 0x8a, 0xb2, 0x53, 0x01, 0x90, 0xf7, 0xa1, 0x79, 0x19, 0x27, 0x18, 0x27, 0xa1, 0x3d, 0x81, 0x0e, - 0xd7, 0xe3, 0xc4, 0x15, 0x38, 0xdd, 0x81, 0xe5, 0x93, 0xd8, 0x67, 0x46, 0xc4, 0x77, 0xa3, 0x40, - 0xe9, 0x9f, 0x39, 0xd0, 0xd2, 0xc4, 0x64, 0x1b, 0x9a, 0xe8, 0x70, 0x4b, 0xfe, 0x2c, 0xcf, 0x76, - 0x91, 0xce, 0x15, 0x14, 0xa8, 0xbd, 0xc2, 0x47, 0x6a, 0xd3, 0x6e, 0xe4, 0x91, 0x48, 0x11, 0xab, - 0xe1, 0x15, 0x21, 0xd6, 0x5c, 0xb2, 0xa8, 0x12, 0x4a, 0xdf, 0x40, 0xcf, 0x9a, 0x02, 0xef, 0x8c, - 0xd0, 0xcb, 0xb8, 0xca, 0x53, 0x94, 0x0c, 0x4d, 0xc8, 0x4c, 0x0e, 0x1a, 0x95, 0xe4, 0xe0, 0x86, - 0x14, 0x20, 0x0f, 0x5b, 0x9b, 0x46, 0xd8, 0x4a, 0xff, 0xc1, 0x81, 0x1e, 0x9e, 0x5e, 0x10, 0x8d, - 0x4f, 0xe3, 0x30, 0x18, 0xcd, 0xc4, 0x29, 0xea, 0x83, 0xc2, 0xf4, 0x96, 0x7b, 0xf9, 0x29, 0xda, - 0x30, 0x3a, 0x8b, 0x49, 0x10, 0x89, 0xcc, 0x48, 0x9d, 0x61, 0xde, 0x46, 0xad, 0xbb, 0x60, 0x68, - 0xed, 0x19, 0x1b, 0x4e, 0xf0, 0xda, 0x91, 0x7b, 0xb7, 0x41, 0x0c, 0x80, 0x11, 0x48, 0x3d, 0xce, - 0x86, 0x93, 0x20, 0x0c, 0x03, 0x49, 0x2b, 0xb5, 0xab, 0xae, 0x8b, 0xfe, 0x73, 0x03, 0x3a, 0xca, - 0xbc, 0x0e, 0xfd, 0x31, 0x43, 0x4d, 0xd2, 0x1e, 0x2c, 0x57, 0x7d, 0x03, 0xd1, 0xfd, 0x96, 0xcf, - 0x33, 0x90, 0xb2, 0xac, 0xe7, 0xaa, 0xb2, 0xc6, 0xfb, 0x31, 0xf6, 0xd9, 0x27, 0x78, 0x0d, 0x2b, - 0xd9, 0x15, 0x80, 0xee, 0xdd, 0x17, 0xbd, 0xf3, 0x45, 0xaf, 0x00, 0x2c, 0x77, 0xba, 0x50, 0x72, - 0xa7, 0x8f, 0xa0, 0xab, 0xd8, 0x08, 0xb9, 0x0b, 0x17, 0x57, 0x28, 0x9d, 0x75, 0x26, 0xae, 0x45, - 0xa9, 0x47, 0xee, 0xeb, 0x91, 0xad, 0xef, 0x1a, 0xa9, 0x29, 0x31, 0x7d, 0x55, 0xc2, 0x7b, 0x9a, - 0x7a, 0xc9, 0xa5, 0x76, 0x59, 0x7e, 0x5e, 0xe0, 0x14, 0x30, 0xd9, 0x81, 0x79, 0x1c, 0xa6, 0x6f, - 0xac, 0x7a, 0x43, 0x90, 0x24, 0x64, 0x1b, 0xe6, 0x99, 0x3f, 0x16, 0x56, 0x6c, 0x56, 0xa4, 0x8d, - 0x33, 0x72, 0x25, 0x01, 0x9a, 0x25, 0xa2, 0x25, 0xb3, 0xb4, 0xbd, 0xd6, 0x02, 0x36, 0x9f, 0xf9, - 0x74, 0x1d, 0xc8, 0x09, 0xe3, 0xd7, 0x71, 0xfa, 0xca, 0xcc, 0xdb, 0xfe, 0x7c, 0x0e, 0x3a, 0x06, - 0x8c, 0x16, 0x36, 0xc6, 0x05, 0x0f, 0xfd, 0xc0, 0x9b, 0x30, 0xce, 0x52, 0xa5, 0xa9, 0x25, 0x54, - 0x38, 0xb7, 0xab, 0xf1, 0x30, 0x9e, 0xf2, 0xa1, 0xcf, 0xc6, 0x29, 0x93, 0xc5, 0x47, 0xc7, 0x2d, - 0xa1, 0x48, 0x37, 0xf1, 0x5e, 0x9b, 0x74, 0x52, 0x1f, 0x4a, 0xa8, 0x0e, 0x99, 0xa4, 0x8c, 0x9a, - 0x45, 0xc8, 0x24, 0x25, 0x52, 0xf6, 0x0d, 0xf3, 0x35, 0xbe, 0xe1, 0x53, 0xd8, 0x90, 0x5e, 0x20, - 0x92, 0xdb, 0x19, 0x96, 0xd4, 0xe4, 0x86, 0x5e, 0xb2, 0x03, 0x2b, 0xb8, 0x66, 0xad, 0xe0, 0x59, - 0xf0, 0x0b, 0x59, 0x98, 0x71, 0xdc, 0x0a, 0x8e, 0xb4, 0x68, 0x8e, 0x16, 0xad, 0xac, 0xcc, 0x54, - 0x70, 0x41, 0xeb, 0xbd, 0xb6, 0x69, 0xdb, 0x8a, 0xb6, 0x84, 0xd3, 0x2d, 0xb8, 0x23, 0xd4, 0xe4, - 0x45, 0x9c, 0xc4, 0x61, 0x3c, 0x9e, 0x9d, 0x4d, 0xcf, 0xb3, 0x51, 0x1a, 0x24, 0x18, 0x9d, 0xd1, - 0x7f, 0x71, 0x60, 0xcd, 0xea, 0x55, 0x21, 0xe3, 0xef, 0x4a, 0x9d, 0xcd, 0xcb, 0x31, 0x52, 0xb3, - 0x56, 0x75, 0xf5, 0x34, 0xf6, 0x55, 0x40, 0x2f, 0x63, 0xe3, 0xaf, 0x54, 0x85, 0xe6, 0x00, 0x96, - 0xf5, 0xd4, 0x7a, 0xa0, 0x54, 0xb3, 0x7e, 0x55, 0xcd, 0xd4, 0xf8, 0x25, 0x35, 0x40, 0xb3, 0xf8, - 0x03, 0x19, 0x67, 0x30, 0x5f, 0x6c, 0x02, 0xbd, 0x22, 0x8e, 0x1f, 0xe8, 0xf1, 0xa2, 0xeb, 0xb1, - 0x39, 0xc4, 0xed, 0x8c, 0x72, 0x30, 0xa3, 0x7f, 0xe9, 0x00, 0x14, 0xab, 0xc3, 0x93, 0x57, 0xfe, - 0x54, 0xed, 0xa1, 0xed, 0x16, 0x00, 0x46, 0x1a, 0x56, 0x1c, 0x26, 0xdd, 0x4d, 0x47, 0x63, 0x78, - 0x81, 0x3f, 0x80, 0xe5, 0x71, 0x18, 0x9f, 0x8b, 0x8b, 0xce, 0xe3, 0xd3, 0x94, 0x65, 0xaa, 0x4e, - 0xb9, 0x24, 0xe1, 0x1f, 0x28, 0xf4, 0x06, 0x77, 0xfd, 0x57, 0x8d, 0x3c, 0xbd, 0x2d, 0xf6, 0x7c, - 0xa3, 0x19, 0x91, 0xfd, 0x8a, 0xf7, 0xbb, 0x21, 0x9b, 0x14, 0x51, 0xf2, 0xe9, 0x77, 0x86, 0x80, - 0x5f, 0xc0, 0x52, 0x2a, 0xdd, 0x8b, 0xf6, 0x3d, 0xcd, 0x6f, 0xf1, 0x3d, 0xbd, 0xd4, 0xba, 0x58, - 0xfe, 0x1f, 0xac, 0x78, 0xfe, 0x15, 0x4b, 0x79, 0x20, 0x22, 0x3c, 0x71, 0xd3, 0x4a, 0x8f, 0xb9, - 0x6c, 0xe0, 0xe2, 0x06, 0x7c, 0x00, 0xcb, 0x23, 0x59, 0x35, 0xce, 0x29, 0xd5, 0x5b, 0x50, 0x01, - 0x23, 0x21, 0xfd, 0x7b, 0x9d, 0x49, 0xdb, 0x67, 0x78, 0xb3, 0x44, 0xcc, 0xdd, 0x35, 0x4a, 0xbb, - 0xfb, 0x9e, 0xca, 0x7c, 0x7d, 0x5d, 0x84, 0x50, 0xf5, 0x05, 0x09, 0xaa, 0x2a, 0x84, 0x2d, 0xd2, - 0xe6, 0xbb, 0x88, 0x94, 0xee, 0xc2, 0xf2, 0x19, 0xe3, 0x07, 0x78, 0x82, 0xda, 0xf3, 0x6d, 0x41, - 0x3b, 0x62, 0xd7, 0x43, 0x79, 0xc4, 0x32, 0x24, 0x69, 0x45, 0xec, 0x5a, 0xd0, 0x50, 0x02, 0x2b, - 0x05, 0xbd, 0x0c, 0x1e, 0xe9, 0x5f, 0x37, 0x60, 0xf1, 0x59, 0x74, 0x15, 0x07, 0x23, 0x91, 0xcb, - 0x4e, 0xd8, 0x24, 0xd6, 0x8f, 0x15, 0xf8, 0x1f, 0x2f, 0x7e, 0x51, 0xfa, 0x4c, 0xb8, 0x4a, 0x32, - 0x75, 0x13, 0xaf, 0xc0, 0xb4, 0x78, 0x19, 0x93, 0xda, 0x66, 0x20, 0x64, 0x03, 0x16, 0x52, 0xf3, - 0x15, 0x4f, 0xb5, 0x8a, 0x97, 0x9a, 0x79, 0xe3, 0xa5, 0x46, 0x54, 0x35, 0x64, 0x55, 0x57, 0x1c, - 0x49, 0xcb, 0xd5, 0x4d, 0x11, 0x68, 0xa6, 0x4c, 0x95, 0xc5, 0xf1, 0x32, 0x5d, 0x54, 0x81, 0xa6, - 0x09, 0xe2, 0x85, 0x2b, 0x07, 0x48, 0x1a, 0xe9, 0x90, 0x4c, 0x08, 0x03, 0x90, 0xf2, 0x43, 0x60, - 0x5b, 0xaa, 0x49, 0x09, 0xa6, 0x5f, 0x03, 0x39, 0xf0, 0x7d, 0x25, 0x95, 0x3c, 0xcc, 0x2e, 0xf6, - 0xe3, 0x58, 0xfb, 0xa9, 0xe1, 0xdb, 0xa8, 0xe7, 0x7b, 0x08, 0x9d, 0x53, 0xe3, 0x25, 0x53, 0x08, - 0x50, 0xbf, 0x61, 0x2a, 0xa1, 0x1b, 0x88, 0x31, 0x61, 0xc3, 0x9c, 0x90, 0xfe, 0x1e, 0x90, 0xe3, - 0x20, 0xe3, 0xf9, 0xfa, 0xf2, 0x74, 0x44, 0xe7, 0x74, 0x66, 0x3a, 0xa2, 0x30, 0x91, 0x8e, 0x1c, - 0xc8, 0x2a, 0x73, 0x79, 0x63, 0x3b, 0xd0, 0x0a, 0x24, 0xa4, 0xfd, 0xe7, 0x92, 0x52, 0x3c, 0x4d, - 0x99, 0xf7, 0xe3, 0x4d, 0xaf, 0x40, 0xcb, 0x3d, 0xff, 0xda, 0x81, 0x45, 0xb5, 0x35, 0xbc, 0xa7, - 0xac, 0x37, 0x5c, 0x95, 0x35, 0x9a, 0x58, 0xfd, 0x6b, 0x5d, 0xf5, 0xa4, 0xe7, 0xea, 0x4e, 0x9a, - 0x40, 0x33, 0xf1, 0xf8, 0xa5, 0x08, 0xd3, 0xdb, 0xae, 0xf8, 0xaf, 0xd3, 0x87, 0xf9, 0x22, 0x7d, - 0x50, 0x15, 0x75, 0xb5, 0xa8, 0xbc, 0xd8, 0xfb, 0xa5, 0xac, 0xa8, 0x17, 0x70, 0x21, 0x03, 0xb5, - 0xc0, 0xb2, 0x0c, 0x14, 0xa9, 0x9b, 0xf7, 0xd3, 0x01, 0xf4, 0x9f, 0xb0, 0x90, 0x71, 0x76, 0x10, - 0x86, 0x65, 0xfe, 0x5b, 0x70, 0xa7, 0xa6, 0x4f, 0xd9, 0xda, 0x0f, 0x60, 0xf5, 0x09, 0x3b, 0x9f, - 0x8e, 0x8f, 0xd9, 0x55, 0x51, 0x1a, 0x20, 0xd0, 0xcc, 0x2e, 0xe3, 0x6b, 0x75, 0x5e, 0xe2, 0x3f, - 0x79, 0x0f, 0x20, 0x44, 0x9a, 0x61, 0x96, 0xb0, 0x91, 0xd2, 0xa6, 0xb6, 0x40, 0xce, 0x12, 0x36, - 0xa2, 0x9f, 0x02, 0x31, 0xf9, 0xa8, 0x2d, 0xa0, 0x05, 0x4c, 0xcf, 0x87, 0xd9, 0x2c, 0xe3, 0x6c, - 0xa2, 0x8d, 0xdf, 0x84, 0xe8, 0x03, 0xe8, 0x9e, 0x7a, 0x33, 0x97, 0x7d, 0xa3, 0x9e, 0xc6, 0x31, - 0x7b, 0xf1, 0x66, 0xa8, 0x9e, 0x79, 0xf6, 0x22, 0xba, 0x69, 0x0a, 0x0b, 0x92, 0x10, 0x99, 0xfa, - 0x2c, 0xe3, 0x41, 0x24, 0xab, 0x2a, 0x8a, 0xa9, 0x01, 0x55, 0x8e, 0xbb, 0x51, 0x73, 0xdc, 0x2a, - 0x74, 0xd1, 0x8f, 0x29, 0xea, 0x5c, 0x2d, 0x6c, 0x67, 0x1f, 0x7a, 0x56, 0xfe, 0x4d, 0x16, 0x61, - 0xee, 0xe0, 0xf8, 0x78, 0xe5, 0x16, 0xe9, 0xc0, 0xe2, 0xf3, 0xd3, 0xc3, 0x93, 0x67, 0x27, 0x4f, - 0x57, 0x1c, 0x6c, 0x3c, 0x3e, 0x7e, 0x7e, 0x86, 0x8d, 0xc6, 0xfe, 0x3f, 0x6d, 0x42, 0x3b, 0x8f, - 0x1e, 0xc9, 0xcf, 0xa1, 0x67, 0x65, 0xdb, 0x64, 0x4b, 0x1d, 0x61, 0x5d, 0xfa, 0x3e, 0xb8, 0x5b, - 0xdf, 0xa9, 0x8e, 0xea, 0xfd, 0x5f, 0xfe, 0xf6, 0x3f, 0xfe, 0xa6, 0xd1, 0x27, 0x1b, 0x7b, 0x57, - 0x9f, 0xec, 0xa9, 0x74, 0x7a, 0x4f, 0x54, 0x8d, 0x65, 0x91, 0xfa, 0x15, 0x2c, 0xd9, 0xd9, 0x38, - 0xb9, 0x6b, 0x3b, 0xeb, 0xd2, 0x6c, 0xef, 0xdd, 0xd0, 0xab, 0xa6, 0xbb, 0x2b, 0xa6, 0xdb, 0x20, - 0xeb, 0xe6, 0x74, 0x79, 0x54, 0xc7, 0xc4, 0xb3, 0x82, 0xf9, 0x51, 0x07, 0xd1, 0xfc, 0xea, 0x3f, - 0xf6, 0x18, 0xdc, 0xa9, 0x7e, 0xc0, 0xa1, 0xbe, 0xf8, 0xa0, 0x7d, 0x31, 0x15, 0x21, 0x2b, 0x38, - 0x95, 0xf9, 0x4d, 0x07, 0xf9, 0x19, 0xb4, 0xf3, 0x07, 0x6c, 0xb2, 0x69, 0x3c, 0xd7, 0x9b, 0x4f, - 0xe2, 0x83, 0x7e, 0xb5, 0x43, 0x6d, 0x62, 0x4b, 0x70, 0xbe, 0x4d, 0x2b, 0x9c, 0x3f, 0x77, 0x76, - 0xc8, 0x31, 0xdc, 0x56, 0x1e, 0xe3, 0x9c, 0xfd, 0x6f, 0x76, 0x52, 0xf3, 0x29, 0xca, 0x43, 0x87, - 0x7c, 0x01, 0x2d, 0xfd, 0xa6, 0x4f, 0x36, 0xea, 0x3f, 0x2c, 0x18, 0x6c, 0x56, 0x70, 0x65, 0x28, - 0x07, 0x00, 0xc5, 0x13, 0x36, 0xe9, 0xdf, 0xf4, 0xd2, 0x9e, 0x0b, 0xb1, 0xe6, 0xbd, 0x7b, 0x2c, - 0x5e, 0xf0, 0xed, 0x17, 0x72, 0xf2, 0x41, 0x41, 0x5f, 0xfb, 0x76, 0xfe, 0x2d, 0x0c, 0xe9, 0x86, - 0x90, 0xdd, 0x0a, 0x59, 0x42, 0xd9, 0x45, 0xec, 0x5a, 0x67, 0xd7, 0x3f, 0x85, 0x8e, 0xf1, 0xce, - 0x4d, 0x8c, 0x7a, 0x66, 0xe9, 0x49, 0x7d, 0x30, 0xa8, 0xeb, 0x52, 0xdc, 0xd7, 0x05, 0xf7, 0x25, - 0xda, 0x46, 0xee, 0xe2, 0x4d, 0x07, 0x8f, 0xe4, 0xc7, 0x68, 0x3c, 0xea, 0xe1, 0x8b, 0x14, 0x6f, - 0xf0, 0xf6, 0xf3, 0x58, 0x7e, 0xde, 0x95, 0x37, 0x32, 0xba, 0x2a, 0xb8, 0x76, 0x48, 0xc1, 0x95, - 0xfc, 0x08, 0x16, 0xd5, 0x03, 0x18, 0xb9, 0x5d, 0x9c, 0xab, 0x91, 0x6b, 0x0d, 0x36, 0xca, 0xb0, - 0x62, 0xb6, 0x26, 0x98, 0xf5, 0x48, 0x07, 0x99, 0x8d, 0x19, 0x0f, 0x90, 0x47, 0x08, 0xcb, 0x76, - 0x49, 0x32, 0xcb, 0xcd, 0xac, 0xb6, 0xce, 0x9a, 0x9b, 0x59, 0x7d, 0x11, 0xd4, 0x36, 0x33, 0x6d, - 0x5e, 0x7b, 0xba, 0x84, 0xfc, 0xc7, 0xd0, 0x35, 0x5f, 0x5b, 0xc9, 0xc0, 0xd8, 0x79, 0xe9, 0x65, - 0x76, 0xb0, 0x55, 0xdb, 0x67, 0x8b, 0x9b, 0x74, 0xcd, 0x69, 0xc8, 0x4f, 0x61, 0xd9, 0x28, 0xf8, - 0x9f, 0xcd, 0xa2, 0x51, 0x7e, 0x9c, 0xd5, 0x87, 0x80, 0x41, 0x5d, 0xec, 0x47, 0x37, 0x05, 0xe3, - 0x55, 0x6a, 0x31, 0xc6, 0xa3, 0x7c, 0x0c, 0x1d, 0x83, 0xc7, 0xb7, 0xf1, 0xdd, 0x34, 0xba, 0xcc, - 0xe2, 0xfb, 0x43, 0x87, 0xfc, 0xc6, 0x81, 0xae, 0xf9, 0x7c, 0x44, 0xac, 0x6c, 0xa6, 0xc4, 0xa7, - 0x6f, 0xf6, 0x99, 0x8c, 0xe8, 0xd7, 0x62, 0x91, 0xa7, 0x3b, 0x27, 0x96, 0x90, 0xdf, 0x58, 0x05, - 0xe1, 0x5d, 0xf3, 0x63, 0xa5, 0xb7, 0xe5, 0x4e, 0xf3, 0xa1, 0xe4, 0xed, 0xde, 0x1b, 0xf1, 0xaa, - 0xf4, 0xf6, 0xa1, 0x43, 0x3e, 0x97, 0xdf, 0x9c, 0xe9, 0x40, 0x83, 0x18, 0x06, 0x5e, 0x16, 0x9b, - 0xf9, 0x25, 0xd7, 0xb6, 0xf3, 0xd0, 0x21, 0x7f, 0x22, 0xbf, 0x53, 0x52, 0x63, 0x85, 0xf4, 0xdf, - 0x75, 0x3c, 0xfd, 0x50, 0xec, 0xe8, 0x7d, 0x7a, 0xc7, 0xda, 0x51, 0xd9, 0xc3, 0x9d, 0x02, 0x14, - 0x51, 0x23, 0x29, 0x85, 0x50, 0xb9, 0xed, 0x57, 0x03, 0x4b, 0xfb, 0x54, 0x75, 0xa4, 0x85, 0x1c, - 0x7f, 0x2e, 0x15, 0x52, 0xd1, 0x67, 0xf9, 0xb1, 0x56, 0xa3, 0xbf, 0xc1, 0xa0, 0xae, 0x4b, 0xf1, - 0xff, 0x9e, 0xe0, 0xff, 0x1e, 0xd9, 0x32, 0xf9, 0xef, 0xbd, 0x31, 0xa3, 0xc5, 0xb7, 0xe4, 0x6b, - 0xe8, 0x1d, 0xc7, 0xf1, 0xab, 0x69, 0x92, 0x27, 0x03, 0x76, 0xfc, 0x83, 0x11, 0xeb, 0xa0, 0xb4, - 0x29, 0x7a, 0x5f, 0x70, 0xde, 0x22, 0x77, 0x6c, 0xce, 0x45, 0x0c, 0xfb, 0x96, 0x78, 0xb0, 0x9a, - 0xfb, 0xfd, 0x7c, 0x23, 0x03, 0x9b, 0x8f, 0x19, 0x4a, 0x56, 0xe6, 0xb0, 0x6e, 0xe2, 0x7c, 0x8e, - 0x4c, 0xf3, 0x7c, 0xe8, 0x90, 0x53, 0xe8, 0x3e, 0x61, 0xa3, 0xd8, 0x67, 0x2a, 0x66, 0x59, 0x2b, - 0x56, 0x9e, 0xc7, 0x3a, 0x83, 0x9e, 0x05, 0xda, 0x9e, 0x20, 0xf1, 0x66, 0x29, 0xfb, 0x66, 0xef, - 0x8d, 0x0a, 0x86, 0xde, 0x6a, 0x4f, 0xa0, 0x03, 0x38, 0xcb, 0x13, 0x94, 0x22, 0x3e, 0xcb, 0x13, - 0x54, 0x22, 0x3e, 0xcb, 0x13, 0xe8, 0x00, 0x92, 0x84, 0x18, 0x07, 0x96, 0x82, 0xc4, 0xfc, 0xf6, - 0xb8, 0x29, 0xb4, 0x1c, 0xdc, 0xbb, 0x99, 0xc0, 0x9e, 0x6d, 0xc7, 0x9e, 0xed, 0x0c, 0x7a, 0x4f, - 0x98, 0x14, 0x96, 0x2c, 0xc3, 0x0d, 0x6c, 0xd7, 0x62, 0x96, 0xec, 0xca, 0x6e, 0x47, 0xf4, 0xd9, - 0x8e, 0x5e, 0xd4, 0xc0, 0xc8, 0xcf, 0xa0, 0xf3, 0x94, 0x71, 0x5d, 0x77, 0xcb, 0xef, 0xe0, 0x52, - 0x21, 0x6e, 0x50, 0x53, 0xb6, 0xa3, 0xf7, 0x04, 0xb7, 0x01, 0xe9, 0xe7, 0xdc, 0xf6, 0x98, 0x3f, - 0x66, 0xd2, 0x09, 0x0c, 0x03, 0xff, 0x2d, 0xf9, 0x89, 0x60, 0x9e, 0x97, 0xcf, 0x37, 0x8c, 0x6a, - 0x8e, 0xc9, 0x7c, 0xb9, 0x84, 0xd7, 0x71, 0xc6, 0x1c, 0x7f, 0xef, 0x8d, 0xaa, 0x62, 0x23, 0x67, - 0xf8, 0xf1, 0x94, 0xa5, 0x33, 0xf9, 0xb0, 0xb0, 0x66, 0x7d, 0x9e, 0xa9, 0xb8, 0x5a, 0xdf, 0x6c, - 0xd2, 0x07, 0x82, 0xe5, 0x7d, 0xf2, 0x41, 0xc1, 0x52, 0x7c, 0xbd, 0x59, 0xf0, 0xdc, 0x7b, 0xe3, - 0x4d, 0xf8, 0x5b, 0xf2, 0x52, 0x7c, 0x0d, 0x62, 0x56, 0x11, 0x8b, 0xdb, 0xbe, 0x5c, 0x70, 0xcc, - 0xc5, 0x62, 0x74, 0xd9, 0x11, 0x80, 0x9c, 0x49, 0xdc, 0x81, 0x2f, 0x8d, 0xc0, 0xc9, 0xaa, 0xa6, - 0x6a, 0x7d, 0xb8, 0xb1, 0x68, 0x96, 0x3b, 0x85, 0x9a, 0xc2, 0x99, 0x8e, 0xa1, 0x64, 0x35, 0xc0, - 0x88, 0xa1, 0xac, 0x72, 0x82, 0x11, 0x43, 0xd9, 0x65, 0x03, 0x8c, 0xa1, 0x8a, 0x14, 0x24, 0x8f, - 0xa1, 0x2a, 0xd9, 0x4d, 0xee, 0xf6, 0xaa, 0xf9, 0xca, 0xf9, 0x82, 0xf8, 0x4a, 0xfb, 0x77, 0xfe, - 0x27, 0x00, 0x00, 0xff, 0xff, 0xd8, 0xb5, 0x39, 0xb1, 0xd7, 0x2d, 0x00, 0x00, + // 3938 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x5a, 0xcd, 0x6f, 0x1c, 0xc9, + 0x75, 0x57, 0x0f, 0x87, 0xe4, 0xcc, 0x9b, 0x19, 0x7e, 0x14, 0x29, 0x72, 0x34, 0xd2, 0xae, 0xb5, + 0x65, 0x61, 0xc5, 0x30, 0x0b, 0x52, 0xcb, 0x04, 0x1b, 0x79, 0x37, 0xc9, 0x82, 0x2b, 0xd1, 0xa2, + 0x60, 0x9a, 0xa2, 0x9b, 0xda, 0x95, 0x63, 0x23, 0x98, 0x34, 0xa7, 0x8b, 0xc3, 0xb6, 0x7a, 0xba, + 0x7b, 0xbb, 0x6b, 0x48, 0x8d, 0x05, 0x22, 0x81, 0xe3, 0x5b, 0x12, 0x18, 0x41, 0x80, 0x1c, 0x8d, + 0x00, 0x39, 0xe7, 0x92, 0x6b, 0xfe, 0x86, 0x00, 0x06, 0x7c, 0xca, 0x21, 0xb7, 0x20, 0xf7, 0xdc, + 0x73, 0x08, 0x5e, 0x7d, 0x74, 0x57, 0x75, 0x37, 0x77, 0x15, 0xf8, 0x34, 0x53, 0xbf, 0x7a, 0xf5, + 0xaa, 0xea, 0xd5, 0x7b, 0xaf, 0xde, 0x7b, 0xd5, 0xd0, 0x4e, 0x93, 0xd1, 0x4e, 0x92, 0xc6, 0x3c, + 0x26, 0xf3, 0x61, 0x94, 0x26, 0xa3, 0xc1, 0xbd, 0x71, 0x1c, 0x8f, 0x43, 0xb6, 0xeb, 0x25, 0xc1, + 0xae, 0x17, 0x45, 0x31, 0xf7, 0x78, 0x10, 0x47, 0x99, 0x24, 0xa2, 0xff, 0xe3, 0x40, 0xe7, 0x65, + 0xea, 0x45, 0x99, 0x37, 0x42, 0x98, 0xf4, 0x61, 0x91, 0xbf, 0x19, 0x5e, 0x78, 0xd9, 0x45, 0xdf, + 0xb9, 0xef, 0x6c, 0xb5, 0x5d, 0xdd, 0x24, 0x1b, 0xb0, 0xe0, 0x4d, 0xe2, 0x69, 0xc4, 0xfb, 0x8d, + 0xfb, 0xce, 0xd6, 0x9c, 0xab, 0x5a, 0xe4, 0x23, 0x58, 0x8d, 0xa6, 0x93, 0xe1, 0x28, 0x8e, 0xce, + 0x83, 0x74, 0x22, 0x99, 0xf7, 0xe7, 0xee, 0x3b, 0x5b, 0xf3, 0x6e, 0xb5, 0x83, 0xbc, 0x0f, 0x70, + 0x16, 0xc6, 0xa3, 0xd7, 0x72, 0x8a, 0xa6, 0x98, 0xc2, 0x40, 0x08, 0x85, 0xae, 0x6a, 0xb1, 0x60, + 0x7c, 0xc1, 0xfb, 0xf3, 0x82, 0x91, 0x85, 0x21, 0x0f, 0x1e, 0x4c, 0xd8, 0x30, 0xe3, 0xde, 0x24, + 0xe9, 0x2f, 0x88, 0xd5, 0x18, 0x88, 0xe8, 0x8f, 0xb9, 0x17, 0x0e, 0xcf, 0x19, 0xcb, 0xfa, 0x8b, + 0xaa, 0x3f, 0x47, 0x68, 0x1f, 0x36, 0x9e, 0x31, 0x6e, 0xec, 0x3a, 0x73, 0xd9, 0xd7, 0x53, 0x96, + 0x71, 0x7a, 0x04, 0xc4, 0x80, 0x9f, 0x32, 0xee, 0x05, 0x61, 0x46, 0x3e, 0x81, 0x2e, 0x37, 0x88, + 0xfb, 0xce, 0xfd, 0xb9, 0xad, 0xce, 0x1e, 0xd9, 0x11, 0xf2, 0xdd, 0x31, 0x06, 0xb8, 0x16, 0x1d, + 0xfd, 0x8d, 0x03, 0x9d, 0x53, 0x16, 0xf9, 0x8a, 0x3b, 0x21, 0xd0, 0xf4, 0x59, 0xc6, 0x85, 0x60, + 0xbb, 0xae, 0xf8, 0x4f, 0xbe, 0x03, 0x1d, 0xfc, 0x1d, 0x66, 0x3c, 0x0d, 0xa2, 0xb1, 0x10, 0x6d, + 0xdb, 0x05, 0x84, 0x4e, 0x05, 0x42, 0x56, 0x60, 0xce, 0x9b, 0x70, 0x21, 0xd0, 0x39, 0x17, 0xff, + 0x92, 0x0f, 0xa0, 0x9b, 0x78, 0xb3, 0x09, 0x8b, 0x78, 0x21, 0xc4, 0xae, 0xdb, 0x51, 0xd8, 0x21, + 0x4a, 0x71, 0x07, 0xd6, 0x4c, 0x12, 0xcd, 0x7d, 0x5e, 0x70, 0x5f, 0x35, 0x28, 0xd5, 0x24, 0x0f, + 0x61, 0x59, 0xd3, 0xa7, 0x72, 0xb1, 0x42, 0xac, 0x6d, 0x77, 0x49, 0xc1, 0x5a, 0x40, 0x11, 0x74, + 0xe5, 0x8e, 0xb2, 0x24, 0x8e, 0x32, 0x46, 0xb6, 0x61, 0x45, 0x0f, 0x4c, 0x52, 0x16, 0x4c, 0xbc, + 0x31, 0x53, 0xdb, 0xab, 0xe0, 0x64, 0x0f, 0x7a, 0xf9, 0x24, 0xf1, 0x94, 0x33, 0xb1, 0xd9, 0xce, + 0x5e, 0x57, 0xc9, 0xd1, 0x45, 0xcc, 0xb5, 0x49, 0xe8, 0x2f, 0x1c, 0xe8, 0x3e, 0xb9, 0xf0, 0xa2, + 0x88, 0x85, 0x27, 0x71, 0x10, 0x71, 0xd4, 0x8f, 0xf3, 0x69, 0xe4, 0x07, 0xd1, 0x78, 0xc8, 0xdf, + 0x04, 0xbe, 0x9a, 0xcc, 0xc2, 0x70, 0x51, 0x66, 0x1b, 0x77, 0xaf, 0x04, 0x5b, 0xc1, 0x91, 0x5f, + 0x3c, 0xe5, 0xc9, 0x94, 0x0f, 0x83, 0xc8, 0x67, 0x6f, 0x84, 0x9c, 0x7b, 0xae, 0x85, 0xd1, 0x3f, + 0x85, 0x95, 0x23, 0x54, 0xbc, 0x28, 0x88, 0xc6, 0xfb, 0xbe, 0x9f, 0xb2, 0x2c, 0x43, 0x6b, 0x48, + 0xa6, 0x67, 0xaf, 0xd9, 0x4c, 0x99, 0x89, 0x6a, 0xe1, 0x19, 0x5f, 0xc4, 0x19, 0x57, 0xf3, 0x89, + 0xff, 0xf4, 0x9f, 0x1c, 0x58, 0x46, 0xa9, 0xfd, 0xd0, 0x8b, 0x66, 0x5a, 0x17, 0x8e, 0xa0, 0x8b, + 0xac, 0x5e, 0xc6, 0xfb, 0xd2, 0xa6, 0xa4, 0x4e, 0x6d, 0x29, 0x59, 0x94, 0xa8, 0x77, 0x4c, 0xd2, + 0x83, 0x88, 0xa7, 0x33, 0xb7, 0xeb, 0x19, 0xd0, 0xe0, 0x73, 0x58, 0xad, 0x90, 0xa0, 0xe6, 0x14, + 0xeb, 0xc3, 0xbf, 0x64, 0x1d, 0xe6, 0x2f, 0xbd, 0x70, 0xca, 0x94, 0x05, 0xcb, 0xc6, 0xa7, 0x8d, + 0xc7, 0x0e, 0xfd, 0x10, 0x56, 0x8a, 0x39, 0xd5, 0xd9, 0x12, 0x68, 0xe6, 0x22, 0x6e, 0xbb, 0xe2, + 0x3f, 0x8a, 0x02, 0xe9, 0x9e, 0xc4, 0x41, 0x6e, 0x34, 0x48, 0x87, 0x8b, 0xd1, 0x74, 0xf8, 0xff, + 0x26, 0x67, 0x41, 0x1f, 0xc2, 0xaa, 0x31, 0xfe, 0x1b, 0x26, 0xfa, 0xb5, 0x03, 0xab, 0xc7, 0xec, + 0x4a, 0x89, 0x5b, 0x4f, 0xf5, 0x18, 0x9a, 0x7c, 0x96, 0x48, 0x15, 0x5b, 0xda, 0x7b, 0xa0, 0xa4, + 0x55, 0xa1, 0xdb, 0x51, 0xcd, 0x97, 0xb3, 0x84, 0xb9, 0x62, 0x04, 0x7d, 0x01, 0x1d, 0x03, 0x24, + 0x9b, 0xb0, 0xf6, 0xea, 0xf9, 0xcb, 0xe3, 0x83, 0xd3, 0xd3, 0xe1, 0xc9, 0x97, 0x5f, 0xfc, 0xe0, + 0xe0, 0xcf, 0x86, 0x87, 0xfb, 0xa7, 0x87, 0x2b, 0xb7, 0xc8, 0x06, 0x90, 0xe3, 0x83, 0xd3, 0x97, + 0x07, 0x4f, 0x2d, 0xdc, 0x21, 0xcb, 0xd0, 0x31, 0x81, 0x06, 0x1d, 0x40, 0xff, 0x98, 0x5d, 0xbd, + 0x0a, 0x78, 0xc4, 0xb2, 0xcc, 0x9e, 0x9e, 0xee, 0x00, 0x31, 0xd7, 0xa4, 0xb6, 0xd9, 0x87, 0x45, + 0x4f, 0x42, 0xda, 0xb5, 0xaa, 0x26, 0xfd, 0x12, 0xc8, 0x93, 0x38, 0x8a, 0xd8, 0x88, 0x9f, 0x30, + 0x96, 0xea, 0xcd, 0xfe, 0xbe, 0x21, 0xd7, 0xce, 0xde, 0xa6, 0xda, 0x6c, 0x59, 0x13, 0x95, 0xc0, + 0x09, 0x34, 0x13, 0x96, 0x4e, 0x84, 0xb8, 0x5b, 0xae, 0xf8, 0x4f, 0x77, 0x61, 0xcd, 0x62, 0x5b, + 0xac, 0x23, 0x61, 0x2c, 0x1d, 0x2a, 0x89, 0xcf, 0xbb, 0xba, 0x49, 0xff, 0xd5, 0x81, 0xe6, 0xe1, + 0xcb, 0xa3, 0x27, 0x64, 0x00, 0xad, 0x20, 0x1a, 0xc5, 0x13, 0x74, 0x1a, 0x8e, 0xe0, 0x98, 0xb7, + 0x6f, 0xbc, 0x07, 0xee, 0x41, 0x5b, 0xf8, 0x1a, 0xf4, 0xd4, 0xc2, 0x8c, 0xba, 0x6e, 0x01, 0xe0, + 0x2d, 0xc1, 0xde, 0x24, 0x41, 0x2a, 0xae, 0x01, 0xed, 0xdc, 0x9b, 0xc2, 0xd8, 0xaa, 0x1d, 0x68, + 0xc1, 0x29, 0xbb, 0x8c, 0x47, 0x12, 0xf4, 0x59, 0xe8, 0xcd, 0x84, 0xf3, 0xea, 0xb9, 0x15, 0x9c, + 0xfe, 0xf7, 0x1c, 0xf4, 0xf6, 0x47, 0x3c, 0xb8, 0x64, 0xca, 0x51, 0x88, 0x15, 0x0a, 0x40, 0xad, + 0x5d, 0xb5, 0xc8, 0x03, 0xe8, 0xa5, 0x6c, 0x12, 0x73, 0x36, 0x54, 0xa6, 0x2b, 0x8d, 0xd4, 0x06, + 0x91, 0x6a, 0x24, 0x19, 0x0d, 0x13, 0x74, 0x39, 0x62, 0x2f, 0x6d, 0xd7, 0x06, 0x51, 0x88, 0x08, + 0xa0, 0x10, 0x71, 0x17, 0x4d, 0x57, 0x37, 0x51, 0x76, 0x23, 0x2f, 0xf1, 0x46, 0x01, 0x97, 0x6b, + 0x9e, 0x73, 0xf3, 0x36, 0xf2, 0x0e, 0xe3, 0x91, 0x17, 0x0e, 0xcf, 0xbc, 0xd0, 0x8b, 0x46, 0x4c, + 0x5d, 0x5e, 0x36, 0x48, 0x3e, 0x84, 0x25, 0xb5, 0x24, 0x4d, 0x26, 0xef, 0xb0, 0x12, 0x8a, 0x32, + 0x9d, 0x46, 0x19, 0xe3, 0x3c, 0x64, 0x7e, 0x4e, 0xda, 0x12, 0xa4, 0xd5, 0x0e, 0xf2, 0x08, 0xd6, + 0xe4, 0x1d, 0x98, 0x79, 0x3c, 0xce, 0x2e, 0x82, 0x6c, 0x98, 0xb1, 0x88, 0xf7, 0xdb, 0x82, 0xbe, + 0xae, 0x8b, 0x3c, 0x86, 0xcd, 0x12, 0x9c, 0xb2, 0x11, 0x0b, 0x2e, 0x99, 0xdf, 0x07, 0x31, 0xea, + 0xa6, 0x6e, 0x72, 0x1f, 0x3a, 0x78, 0xf5, 0x4f, 0x13, 0xdf, 0xe3, 0x2c, 0xeb, 0x77, 0x84, 0x84, + 0x4c, 0x88, 0x7c, 0x0c, 0xbd, 0x84, 0x49, 0x5f, 0x7c, 0xc1, 0xc3, 0x51, 0xd6, 0xef, 0x0a, 0x07, + 0xd8, 0x51, 0x5a, 0x8e, 0x5a, 0xe8, 0xda, 0x14, 0xf4, 0x36, 0xac, 0x1d, 0x05, 0x19, 0x57, 0xa7, + 0x9c, 0x1b, 0xdb, 0x21, 0xac, 0xdb, 0xb0, 0x52, 0xf3, 0x47, 0xd0, 0x52, 0x47, 0x86, 0x0b, 0x40, + 0xe6, 0xeb, 0x8a, 0xb9, 0xa5, 0x2d, 0x6e, 0x4e, 0x45, 0x7f, 0xd9, 0x80, 0x26, 0x5a, 0x8a, 0xb0, + 0x90, 0xe9, 0xd9, 0xb0, 0xf0, 0x9e, 0xba, 0x69, 0xda, 0x4e, 0xc3, 0xb2, 0x1d, 0xd3, 0xba, 0xe7, + 0x2c, 0xeb, 0x16, 0x21, 0xcf, 0x8c, 0x33, 0x25, 0x6f, 0xa9, 0x2d, 0x06, 0x52, 0xf4, 0xa7, 0x6c, + 0x74, 0x29, 0x54, 0x26, 0xef, 0x47, 0x04, 0x15, 0x2a, 0xf3, 0xb8, 0x1c, 0x2d, 0xf5, 0x25, 0x6f, + 0xeb, 0x3e, 0x31, 0x72, 0xb1, 0xe8, 0x13, 0xe3, 0xfa, 0xb0, 0x18, 0x44, 0x67, 0xf1, 0x34, 0xf2, + 0x85, 0x52, 0xb4, 0x5c, 0xdd, 0x44, 0x53, 0x4d, 0xc4, 0x2d, 0x18, 0x4c, 0x98, 0x52, 0x80, 0x02, + 0xa0, 0x04, 0xaf, 0xbb, 0x4c, 0xf8, 0x8c, 0x5c, 0xc8, 0x9f, 0xc0, 0xaa, 0x81, 0x29, 0x09, 0x7f, + 0x00, 0xf3, 0xb8, 0x7b, 0x1d, 0x10, 0xe9, 0xb3, 0x13, 0xce, 0x46, 0xf6, 0xd0, 0x15, 0x58, 0x7a, + 0xc6, 0xf8, 0xf3, 0xe8, 0x3c, 0xd6, 0x9c, 0xfe, 0xb3, 0x01, 0xcb, 0x39, 0xa4, 0x18, 0x6d, 0xc1, + 0x72, 0xe0, 0xb3, 0x88, 0x07, 0x7c, 0x36, 0xb4, 0x6e, 0xd5, 0x32, 0x8c, 0x37, 0x98, 0x17, 0x06, + 0x5e, 0xa6, 0x4c, 0x57, 0x36, 0xc8, 0x1e, 0xac, 0xa3, 0x6e, 0x69, 0x75, 0xc9, 0x8f, 0x5d, 0x5e, + 0xe6, 0xb5, 0x7d, 0x68, 0x0e, 0x88, 0x4b, 0xd7, 0x50, 0x0c, 0x91, 0x2e, 0xa9, 0xae, 0x0b, 0xa5, + 0x26, 0x39, 0xe1, 0x96, 0xa5, 0x37, 0x2a, 0x80, 0x4a, 0xe0, 0xba, 0x20, 0x03, 0x89, 0x72, 0xe0, + 0x6a, 0x04, 0xbf, 0xad, 0x4a, 0xf0, 0xbb, 0x05, 0xcb, 0xd9, 0x2c, 0x1a, 0x31, 0x7f, 0xc8, 0x63, + 0x9c, 0x37, 0x88, 0xc4, 0xe9, 0xb4, 0xdc, 0x32, 0x2c, 0xc2, 0x74, 0x96, 0xf1, 0x88, 0x71, 0x61, + 0x8a, 0x2d, 0x57, 0x37, 0xe9, 0xcf, 0xc5, 0x5d, 0x92, 0x47, 0xdc, 0x5f, 0x0a, 0x7b, 0x23, 0x77, + 0xa1, 0x2d, 0xe7, 0xc9, 0x2e, 0x3c, 0x15, 0x33, 0xb5, 0x04, 0x70, 0x7a, 0xe1, 0x61, 0x40, 0x69, + 0x2d, 0x5d, 0x6a, 0x76, 0x47, 0x60, 0x87, 0x72, 0xe5, 0x0f, 0x60, 0x49, 0xc7, 0xf2, 0xd9, 0x30, + 0x64, 0xe7, 0x5c, 0x07, 0x4a, 0xd1, 0x74, 0x82, 0xd3, 0x65, 0x47, 0xec, 0x9c, 0xd3, 0x63, 0x58, + 0x55, 0x56, 0xf5, 0x22, 0x61, 0x7a, 0xea, 0xef, 0x95, 0xfd, 0xa9, 0xbc, 0xcf, 0xd6, 0x94, 0xb6, + 0x98, 0xd1, 0x5d, 0xc9, 0xc9, 0x52, 0x17, 0x88, 0xea, 0x7e, 0x12, 0xc6, 0x19, 0x53, 0x0c, 0x29, + 0x74, 0x47, 0x61, 0x9c, 0x95, 0x43, 0x40, 0x13, 0x43, 0xf9, 0x64, 0xd3, 0xd1, 0x08, 0xad, 0x51, + 0xde, 0x88, 0xba, 0x49, 0x7f, 0xe9, 0xc0, 0x9a, 0xe0, 0xa6, 0xed, 0x3f, 0x0f, 0x2d, 0xde, 0x7d, + 0x99, 0xdd, 0x91, 0x19, 0x92, 0xbe, 0xa7, 0xd2, 0x91, 0x30, 0x98, 0x04, 0xfa, 0x52, 0x6c, 0x23, + 0x72, 0x84, 0x00, 0xaa, 0xec, 0x79, 0x9c, 0x8e, 0x98, 0x90, 0x58, 0xcb, 0x95, 0x0d, 0xfa, 0x1f, + 0x0e, 0xac, 0x8a, 0x65, 0x9c, 0x72, 0x8f, 0x4f, 0x33, 0xb5, 0xb5, 0x3f, 0x86, 0x1e, 0x6e, 0x83, + 0x69, 0x75, 0x55, 0x8b, 0x58, 0xcf, 0x2d, 0x4b, 0xa0, 0x92, 0xf8, 0xf0, 0x96, 0x6b, 0x13, 0x93, + 0xcf, 0xa1, 0x6b, 0x26, 0x5b, 0x2a, 0xbe, 0xbe, 0xa3, 0x77, 0x50, 0xd1, 0x8a, 0xc3, 0x5b, 0xae, + 0x35, 0x80, 0x7c, 0x06, 0x20, 0x6e, 0x31, 0xc1, 0x56, 0xac, 0xd7, 0x18, 0x5e, 0x39, 0x88, 0xc3, + 0x5b, 0xae, 0x41, 0xfe, 0x45, 0x0b, 0x16, 0xa4, 0x73, 0xa7, 0xcf, 0xa0, 0x67, 0xad, 0xd4, 0x0a, + 0xf0, 0xba, 0x32, 0xc0, 0xab, 0x04, 0xde, 0x8d, 0x9a, 0xc0, 0xfb, 0x7f, 0x1d, 0x20, 0xa8, 0x49, + 0xa5, 0xa3, 0xfa, 0x10, 0x96, 0xb8, 0x97, 0x8e, 0x19, 0x1f, 0xda, 0x71, 0x4c, 0x09, 0x15, 0xb7, + 0x50, 0xec, 0x5b, 0xb7, 0x7d, 0xd7, 0x35, 0x21, 0xb2, 0x03, 0xc4, 0x68, 0xea, 0x34, 0x49, 0xfa, + 0xef, 0x9a, 0x1e, 0x74, 0x34, 0xf2, 0xaa, 0xd6, 0x79, 0x84, 0x8a, 0x84, 0x9a, 0xe2, 0xd0, 0x6b, + 0xfb, 0xd0, 0x45, 0x27, 0x53, 0xcc, 0xc1, 0x3c, 0xae, 0xe3, 0x01, 0xdd, 0xd6, 0x2e, 0x45, 0x98, + 0x95, 0xf2, 0x18, 0x05, 0x40, 0x7f, 0xeb, 0xc0, 0x0a, 0x6e, 0xdf, 0x52, 0x91, 0x4f, 0x41, 0x68, + 0xdf, 0x3b, 0x6a, 0x88, 0x45, 0xfb, 0xbb, 0x2b, 0xc8, 0x63, 0x68, 0x0b, 0x86, 0x71, 0xc2, 0x22, + 0xa5, 0x1f, 0x7d, 0x5b, 0x3f, 0x0a, 0xc3, 0x3f, 0xbc, 0xe5, 0x16, 0xc4, 0x86, 0x76, 0x1c, 0xc0, + 0x6d, 0xb5, 0xca, 0xd2, 0xb1, 0x7e, 0x04, 0x0b, 0x99, 0xd8, 0xa9, 0x0a, 0xef, 0xd7, 0x6d, 0xce, + 0x52, 0x0a, 0xae, 0xa2, 0xa1, 0x7f, 0x33, 0x07, 0x1b, 0x65, 0x3e, 0xea, 0x3a, 0xf9, 0x31, 0xac, + 0x54, 0xae, 0x02, 0x79, 0x45, 0x7d, 0x64, 0x8b, 0xa9, 0x34, 0xb0, 0x0c, 0x57, 0xb8, 0x0c, 0xfe, + 0xb1, 0x01, 0x4b, 0x36, 0x11, 0xea, 0x71, 0x7e, 0x49, 0x15, 0x17, 0x97, 0x85, 0x55, 0x43, 0xca, + 0x46, 0x5d, 0x48, 0x69, 0x06, 0x8e, 0x73, 0xdf, 0x16, 0x38, 0x36, 0xdf, 0x2d, 0x70, 0x9c, 0xaf, + 0x0d, 0x1c, 0xcb, 0x1e, 0x54, 0xe6, 0xfa, 0xb6, 0x07, 0x2d, 0x4e, 0x63, 0xf1, 0x1d, 0x4e, 0xe3, + 0x7b, 0xb0, 0xfe, 0xca, 0x0b, 0x43, 0xc6, 0xbf, 0x90, 0x53, 0xe8, 0x33, 0xfd, 0x00, 0xba, 0x57, + 0x32, 0x45, 0x1a, 0xc6, 0x51, 0x38, 0x53, 0x01, 0x79, 0x47, 0x61, 0x2f, 0xa2, 0x70, 0x46, 0x3f, + 0x86, 0xdb, 0xa5, 0xa1, 0x45, 0x9e, 0xa2, 0xb7, 0x81, 0xc3, 0x1c, 0x57, 0x37, 0xe9, 0x26, 0xdc, + 0x56, 0xcb, 0xb0, 0xa7, 0xa3, 0x7b, 0xb0, 0x51, 0xee, 0xa8, 0x67, 0x36, 0x57, 0x30, 0xfb, 0x1c, + 0xc8, 0x8f, 0xa6, 0x2c, 0x9d, 0x89, 0xfa, 0x43, 0x9e, 0x69, 0x6e, 0x96, 0x43, 0x40, 0x4c, 0xf0, + 0x7f, 0xc0, 0x66, 0xba, 0x1e, 0xd3, 0xc8, 0xeb, 0x31, 0xf4, 0x33, 0x58, 0xb3, 0x18, 0xa8, 0x19, + 0x1f, 0xc0, 0x82, 0xa8, 0x61, 0x68, 0xdd, 0xb3, 0xeb, 0x1c, 0xaa, 0x8f, 0xfe, 0x25, 0xcc, 0x1d, + 0xc6, 0x89, 0x99, 0x4e, 0x38, 0x76, 0x3a, 0xa1, 0x74, 0x67, 0x98, 0xab, 0x86, 0x9c, 0xd9, 0x06, + 0xf1, 0xe4, 0xbd, 0x09, 0xc7, 0xf8, 0xe0, 0x3c, 0x4e, 0xaf, 0xbc, 0xd4, 0x57, 0x1a, 0x54, 0x42, + 0x71, 0xf5, 0xe7, 0x4c, 0x6b, 0x0f, 0xfe, 0xa5, 0xbf, 0x72, 0x60, 0x5e, 0x2c, 0x09, 0xa3, 0x0f, + 0x19, 0xcf, 0xcb, 0xdb, 0x0c, 0xd3, 0x38, 0x47, 0xb8, 0xa4, 0x32, 0x5c, 0x2a, 0xb0, 0x35, 0xca, + 0x05, 0x36, 0x74, 0x6b, 0xb2, 0x55, 0x54, 0xae, 0x0a, 0x80, 0xbc, 0x0f, 0xcd, 0x8b, 0x38, 0xc1, + 0x50, 0x0b, 0xc5, 0x02, 0x3a, 0xe2, 0x8f, 0x13, 0x57, 0xe0, 0x74, 0x1b, 0x96, 0x8f, 0x63, 0x9f, + 0x19, 0x41, 0xe3, 0x8d, 0xa7, 0x41, 0xff, 0xca, 0x81, 0x96, 0x26, 0x26, 0x5b, 0xd0, 0x44, 0x9f, + 0x5d, 0x72, 0x89, 0x79, 0xc2, 0x8c, 0x74, 0xae, 0xa0, 0x40, 0x03, 0x10, 0x6e, 0x56, 0x7b, 0x87, + 0x46, 0x1e, 0xcc, 0x14, 0xe1, 0x1e, 0xde, 0x32, 0x62, 0xcd, 0x25, 0xa3, 0x2c, 0xa1, 0xf4, 0x2d, + 0xf4, 0xac, 0x29, 0xf0, 0xda, 0x09, 0xbd, 0x8c, 0xab, 0x54, 0x47, 0xc9, 0xd0, 0x84, 0xcc, 0xfc, + 0xa2, 0x51, 0xc9, 0x2f, 0x6e, 0xc8, 0x22, 0xf2, 0xc8, 0xb7, 0x69, 0x44, 0xbe, 0xf4, 0x5f, 0x1c, + 0xe8, 0xe1, 0xe9, 0x05, 0xd1, 0xf8, 0x24, 0x0e, 0x83, 0xd1, 0x4c, 0x9c, 0xa2, 0x3e, 0x28, 0xcc, + 0x90, 0xb9, 0x97, 0x9f, 0xa2, 0x0d, 0xa3, 0xbf, 0x99, 0x04, 0x91, 0x48, 0xae, 0xd4, 0x19, 0xe6, + 0x6d, 0xd4, 0xba, 0x73, 0x86, 0x0e, 0x23, 0x63, 0xc3, 0x09, 0xde, 0x5c, 0x72, 0xef, 0x36, 0x88, + 0x31, 0x34, 0x02, 0xa9, 0xc7, 0xd9, 0x70, 0x12, 0x84, 0x61, 0x20, 0x69, 0xa5, 0x76, 0xd5, 0x75, + 0xd1, 0x7f, 0x6b, 0x40, 0x47, 0x59, 0xe8, 0x81, 0x3f, 0x66, 0xa8, 0x49, 0xda, 0x09, 0xe6, 0xaa, + 0x6f, 0x20, 0xba, 0xdf, 0x72, 0x9b, 0x06, 0x52, 0x96, 0xf5, 0x5c, 0x55, 0xd6, 0x78, 0xc5, 0xc6, + 0x3e, 0xfb, 0x18, 0x6f, 0x72, 0x25, 0xbb, 0x02, 0xd0, 0xbd, 0x7b, 0xa2, 0x77, 0xbe, 0xe8, 0x15, + 0x80, 0xe5, 0x91, 0x17, 0x4a, 0x1e, 0xf9, 0x31, 0x74, 0x15, 0x1b, 0x21, 0x77, 0xe1, 0x25, 0x0b, + 0xa5, 0xb3, 0xce, 0xc4, 0xb5, 0x28, 0xf5, 0xc8, 0x3d, 0x3d, 0xb2, 0xf5, 0x6d, 0x23, 0x35, 0x25, + 0x66, 0xc0, 0x4a, 0x78, 0xcf, 0x52, 0x2f, 0xb9, 0xd0, 0x5e, 0xcf, 0xcf, 0x6b, 0xa4, 0x02, 0x26, + 0xdb, 0x30, 0x8f, 0xc3, 0xb4, 0xe3, 0xa9, 0x37, 0x04, 0x49, 0x42, 0xb6, 0x60, 0x9e, 0xf9, 0x63, + 0x61, 0xc5, 0x66, 0x51, 0xdb, 0x38, 0x23, 0x57, 0x12, 0xa0, 0x59, 0x22, 0x5a, 0x32, 0x4b, 0xdb, + 0x6b, 0x2d, 0x60, 0xf3, 0xb9, 0x4f, 0xd7, 0x81, 0x1c, 0x33, 0x7e, 0x15, 0xa7, 0xaf, 0xcd, 0xd4, + 0xef, 0xaf, 0xe7, 0xa0, 0x63, 0xc0, 0x68, 0x61, 0x63, 0x5c, 0xf0, 0xd0, 0x0f, 0xbc, 0x09, 0xe3, + 0x2c, 0x55, 0x9a, 0x5a, 0x42, 0x85, 0x73, 0xbb, 0x1c, 0x0f, 0xe3, 0x29, 0x1f, 0xfa, 0x6c, 0x9c, + 0x32, 0x59, 0xbf, 0x74, 0xdc, 0x12, 0x8a, 0x74, 0x13, 0xef, 0x8d, 0x49, 0x27, 0xf5, 0xa1, 0x84, + 0xea, 0xa8, 0x4b, 0xca, 0xa8, 0x59, 0x44, 0x5d, 0x52, 0x22, 0x65, 0xdf, 0x30, 0x5f, 0xe3, 0x1b, + 0x3e, 0x81, 0x0d, 0xe9, 0x05, 0x22, 0xb9, 0x9d, 0x61, 0x49, 0x4d, 0x6e, 0xe8, 0x25, 0xdb, 0xb0, + 0x82, 0x6b, 0xd6, 0x0a, 0x9e, 0x05, 0x3f, 0x97, 0xb5, 0x1d, 0xc7, 0xad, 0xe0, 0x48, 0x8b, 0xe6, + 0x68, 0xd1, 0xca, 0xe2, 0x4e, 0x05, 0x17, 0xb4, 0xde, 0x1b, 0x9b, 0xb6, 0xad, 0x68, 0x4b, 0x38, + 0xbd, 0x0b, 0x77, 0x84, 0x9a, 0xbc, 0x8c, 0x93, 0x38, 0x8c, 0xc7, 0xb3, 0xd3, 0xe9, 0x59, 0x36, + 0x4a, 0x83, 0x04, 0x03, 0x3c, 0xfa, 0xef, 0x0e, 0xac, 0x59, 0xbd, 0x2a, 0xea, 0xfc, 0x43, 0xa9, + 0xb3, 0x79, 0x45, 0x47, 0x6a, 0xd6, 0xaa, 0x2e, 0xc0, 0xc6, 0xbe, 0xca, 0x09, 0x64, 0x78, 0xfd, + 0xa5, 0x2a, 0xf2, 0xec, 0xc3, 0xb2, 0x9e, 0x5a, 0x0f, 0x94, 0x6a, 0xd6, 0xaf, 0xaa, 0x99, 0x1a, + 0xbf, 0xa4, 0x06, 0x68, 0x16, 0x7f, 0x22, 0x43, 0x15, 0xe6, 0x8b, 0x4d, 0xa0, 0x57, 0xc4, 0xf1, + 0x03, 0x3d, 0x5e, 0x74, 0x3d, 0x31, 0x87, 0xb8, 0x9d, 0x51, 0x0e, 0x66, 0xf4, 0x6f, 0x1d, 0x80, + 0x62, 0x75, 0x78, 0xf2, 0xca, 0x9f, 0xaa, 0x3d, 0xb4, 0xdd, 0x02, 0xc0, 0x60, 0xc5, 0x0a, 0xe5, + 0xa4, 0xbb, 0xe9, 0x68, 0x0c, 0x6f, 0xff, 0x87, 0xb0, 0x3c, 0x0e, 0xe3, 0x33, 0x71, 0xd1, 0x79, + 0x7c, 0x9a, 0xb2, 0x4c, 0x95, 0x3a, 0x97, 0x24, 0xfc, 0x7d, 0x85, 0xde, 0xe0, 0xae, 0xff, 0xae, + 0x91, 0x67, 0xc8, 0xc5, 0x9e, 0x6f, 0x34, 0x23, 0xb2, 0x57, 0xf1, 0x7e, 0x37, 0x24, 0xa4, 0x22, + 0xd0, 0x3e, 0xf9, 0xd6, 0x28, 0xf2, 0x33, 0x58, 0x4a, 0xa5, 0x7b, 0xd1, 0xbe, 0xa7, 0xf9, 0x0d, + 0xbe, 0xa7, 0x97, 0x5a, 0x17, 0xcb, 0xef, 0xc1, 0x8a, 0xe7, 0x5f, 0xb2, 0x94, 0x07, 0x22, 0x48, + 0x14, 0x37, 0xad, 0xf4, 0x98, 0xcb, 0x06, 0x2e, 0x6e, 0xc0, 0x87, 0xb0, 0x3c, 0x92, 0x85, 0xe7, + 0x9c, 0x52, 0x3d, 0x27, 0x15, 0x30, 0x12, 0xd2, 0x7f, 0xd6, 0xc9, 0xb8, 0x7d, 0x86, 0x37, 0x4b, + 0xc4, 0xdc, 0x5d, 0xa3, 0xb4, 0xbb, 0xef, 0xaa, 0xe4, 0xd9, 0xd7, 0x75, 0x0c, 0x55, 0xa2, 0x90, + 0xa0, 0x2a, 0x64, 0xd8, 0x22, 0x6d, 0xbe, 0x8b, 0x48, 0xe9, 0x0e, 0x2c, 0x9f, 0x32, 0xbe, 0x8f, + 0x27, 0xa8, 0x3d, 0xdf, 0x5d, 0x68, 0x47, 0xec, 0x6a, 0x28, 0x8f, 0x58, 0x86, 0x24, 0xad, 0x88, + 0x5d, 0x09, 0x1a, 0x4a, 0x60, 0xa5, 0xa0, 0x97, 0xd1, 0x20, 0xfd, 0xfb, 0x06, 0x2c, 0x3e, 0x8f, + 0x2e, 0xe3, 0x60, 0x24, 0xd2, 0xe1, 0x09, 0x9b, 0xc4, 0xfa, 0xbd, 0x03, 0xff, 0xe3, 0xc5, 0x2f, + 0xaa, 0xa7, 0x09, 0x57, 0x79, 0xaa, 0x6e, 0xe2, 0x15, 0x98, 0x16, 0x8f, 0x6b, 0x52, 0xdb, 0x0c, + 0x84, 0x6c, 0xc0, 0x42, 0x6a, 0x3e, 0x04, 0xaa, 0x56, 0xf1, 0xd8, 0x33, 0x6f, 0x3c, 0xf6, 0x88, + 0xc2, 0x88, 0x2c, 0x0c, 0x8b, 0x23, 0x69, 0xb9, 0xba, 0x29, 0x02, 0xcd, 0x94, 0xa9, 0xca, 0x3a, + 0x5e, 0xa6, 0x8b, 0x2a, 0xd0, 0x34, 0x41, 0xbc, 0x70, 0xe5, 0x00, 0x49, 0x23, 0x1d, 0x92, 0x09, + 0x61, 0x00, 0x52, 0x7e, 0x4b, 0x6c, 0x4b, 0x35, 0x29, 0xc1, 0xf4, 0x2b, 0x20, 0xfb, 0xbe, 0xaf, + 0xa4, 0x92, 0xc7, 0xcd, 0xc5, 0x7e, 0x1c, 0x6b, 0x3f, 0x35, 0x7c, 0x1b, 0xf5, 0x7c, 0x0f, 0xa0, + 0x73, 0x62, 0x3c, 0x86, 0x0a, 0x01, 0xea, 0x67, 0x50, 0x25, 0x74, 0x03, 0x31, 0x26, 0x6c, 0x98, + 0x13, 0xd2, 0x3f, 0x02, 0x72, 0x14, 0x64, 0x3c, 0x5f, 0x5f, 0x9e, 0xd1, 0xe8, 0xb4, 0xd0, 0xcc, + 0x68, 0x14, 0x26, 0x32, 0x9a, 0x7d, 0x59, 0xa8, 0x2e, 0x6f, 0x6c, 0x1b, 0x5a, 0x81, 0x84, 0xb4, + 0xff, 0x5c, 0x52, 0x8a, 0xa7, 0x29, 0xf3, 0x7e, 0xbc, 0xe9, 0x15, 0x68, 0xb9, 0xe7, 0x5f, 0x39, + 0xb0, 0xa8, 0xb6, 0x86, 0xf7, 0x94, 0xf5, 0x0c, 0xac, 0x12, 0x4f, 0x13, 0xab, 0x7f, 0xf0, 0xab, + 0x9e, 0xf4, 0x5c, 0xdd, 0x49, 0x13, 0x68, 0x26, 0x1e, 0xbf, 0x10, 0x61, 0x7a, 0xdb, 0x15, 0xff, + 0x75, 0xfa, 0x30, 0x5f, 0xa4, 0x0f, 0xaa, 0x28, 0xaf, 0x16, 0x95, 0xd7, 0x8b, 0xbf, 0x90, 0x45, + 0xf9, 0x02, 0x2e, 0x64, 0xa0, 0x16, 0x58, 0x96, 0x81, 0x22, 0x75, 0xf3, 0x7e, 0x3a, 0x80, 0xfe, + 0x53, 0x16, 0x32, 0xce, 0xf6, 0xc3, 0xb0, 0xcc, 0xff, 0x2e, 0xdc, 0xa9, 0xe9, 0x53, 0xb6, 0xf6, + 0x7d, 0x58, 0x7d, 0xca, 0xce, 0xa6, 0xe3, 0x23, 0x76, 0x59, 0x54, 0x17, 0x08, 0x34, 0xb3, 0x8b, + 0xf8, 0x4a, 0x9d, 0x97, 0xf8, 0x4f, 0xde, 0x03, 0x08, 0x91, 0x66, 0x98, 0x25, 0x6c, 0xa4, 0xb4, + 0xa9, 0x2d, 0x90, 0xd3, 0x84, 0x8d, 0xe8, 0x27, 0x40, 0x4c, 0x3e, 0x6a, 0x0b, 0x68, 0x01, 0xd3, + 0xb3, 0x61, 0x36, 0xcb, 0x38, 0x9b, 0x68, 0xe3, 0x37, 0x21, 0xfa, 0x10, 0xba, 0x27, 0xde, 0xcc, + 0x65, 0x5f, 0xab, 0xd7, 0x75, 0xcc, 0x5e, 0xbc, 0x19, 0xaa, 0x67, 0x9e, 0xbd, 0x88, 0x6e, 0x9a, + 0xc2, 0x82, 0x24, 0x44, 0xa6, 0x3e, 0xcb, 0x78, 0x10, 0xc9, 0xc2, 0x8c, 0x62, 0x6a, 0x40, 0x95, + 0xe3, 0x6e, 0xd4, 0x1c, 0xb7, 0x0a, 0x5d, 0xf4, 0x7b, 0x8c, 0x3a, 0x57, 0x0b, 0xdb, 0xde, 0x83, + 0x9e, 0x95, 0xc2, 0x93, 0x45, 0x98, 0xdb, 0x3f, 0x3a, 0x5a, 0xb9, 0x45, 0x3a, 0xb0, 0xf8, 0xe2, + 0xe4, 0xe0, 0xf8, 0xf9, 0xf1, 0xb3, 0x15, 0x07, 0x1b, 0x4f, 0x8e, 0x5e, 0x9c, 0x62, 0xa3, 0xb1, + 0xf7, 0x9b, 0x4d, 0x68, 0xe7, 0xd1, 0x23, 0xf9, 0x19, 0xf4, 0xac, 0x84, 0x9d, 0xdc, 0x55, 0x47, + 0x58, 0x57, 0x01, 0x18, 0xdc, 0xab, 0xef, 0x54, 0x47, 0xf5, 0xfe, 0x2f, 0x7e, 0xfb, 0x5f, 0xff, + 0xd0, 0xe8, 0x93, 0x8d, 0xdd, 0xcb, 0x8f, 0x77, 0x55, 0x46, 0xbe, 0x2b, 0x0a, 0xcf, 0xb2, 0xce, + 0xfd, 0x1a, 0x96, 0xec, 0x84, 0x9e, 0xdc, 0xb3, 0x9d, 0x75, 0x69, 0xb6, 0xf7, 0x6e, 0xe8, 0x55, + 0xd3, 0xdd, 0x13, 0xd3, 0x6d, 0x90, 0x75, 0x73, 0xba, 0x3c, 0xaa, 0x63, 0xe2, 0x65, 0xc2, 0xfc, + 0x2e, 0x84, 0x68, 0x7e, 0xf5, 0xdf, 0x8b, 0x0c, 0xee, 0x54, 0xbf, 0x01, 0x51, 0x1f, 0x8d, 0xd0, + 0xbe, 0x98, 0x8a, 0x90, 0x15, 0x9c, 0xca, 0xfc, 0x2c, 0x84, 0xfc, 0x14, 0xda, 0xf9, 0x1b, 0x38, + 0xd9, 0x34, 0x5e, 0xfc, 0xcd, 0x57, 0xf5, 0x41, 0xbf, 0xda, 0xa1, 0x36, 0x71, 0x57, 0x70, 0xbe, + 0x4d, 0x2b, 0x9c, 0x3f, 0x75, 0xb6, 0xc9, 0x11, 0xdc, 0x56, 0x1e, 0xe3, 0x8c, 0xfd, 0x7f, 0x76, + 0x52, 0xf3, 0x35, 0xcb, 0x23, 0x87, 0x7c, 0x06, 0x2d, 0xfd, 0x59, 0x00, 0xd9, 0xa8, 0xff, 0x36, + 0x61, 0xb0, 0x59, 0xc1, 0x95, 0xa1, 0xec, 0x03, 0x14, 0xaf, 0xe0, 0xa4, 0x7f, 0xd3, 0x63, 0x7d, + 0x2e, 0xc4, 0x9a, 0x27, 0xf3, 0xb1, 0xf8, 0x08, 0xc0, 0x7e, 0x64, 0x27, 0xdf, 0x29, 0xe8, 0x6b, + 0x9f, 0xdf, 0xbf, 0x81, 0x21, 0xdd, 0x10, 0xb2, 0x5b, 0x21, 0x4b, 0x28, 0xbb, 0x88, 0x5d, 0xe9, + 0xec, 0xfa, 0x27, 0xd0, 0x31, 0x9e, 0xca, 0x89, 0x51, 0x12, 0x2d, 0xbd, 0xca, 0x0f, 0x06, 0x75, + 0x5d, 0x8a, 0xfb, 0xba, 0xe0, 0xbe, 0x44, 0xdb, 0xc8, 0x5d, 0x3c, 0x0b, 0xe1, 0x91, 0xfc, 0x08, + 0x8d, 0x47, 0xbd, 0x9d, 0x91, 0xe2, 0x19, 0xdf, 0x7e, 0x61, 0xcb, 0xcf, 0xbb, 0xf2, 0xcc, 0x46, + 0x57, 0x05, 0xd7, 0x0e, 0x29, 0xb8, 0x92, 0x1f, 0xc2, 0xa2, 0x7a, 0x43, 0x23, 0xb7, 0x8b, 0x73, + 0x35, 0x72, 0xad, 0xc1, 0x46, 0x19, 0x56, 0xcc, 0xd6, 0x04, 0xb3, 0x1e, 0xe9, 0x20, 0xb3, 0x31, + 0xe3, 0x01, 0xf2, 0x08, 0x61, 0xd9, 0xae, 0x6a, 0x66, 0xb9, 0x99, 0xd5, 0x96, 0x6a, 0x73, 0x33, + 0xab, 0xaf, 0xa3, 0xda, 0x66, 0xa6, 0xcd, 0x6b, 0x57, 0x57, 0xa1, 0xff, 0x1c, 0xba, 0xe6, 0x83, + 0x2d, 0x19, 0x18, 0x3b, 0x2f, 0x3d, 0xee, 0x0e, 0xee, 0xd6, 0xf6, 0xd9, 0xe2, 0x26, 0x5d, 0x73, + 0x1a, 0xf2, 0x13, 0x58, 0x36, 0xde, 0x0c, 0x4e, 0x67, 0xd1, 0x28, 0x3f, 0xce, 0xea, 0x5b, 0xc2, + 0xa0, 0x2e, 0xf6, 0xa3, 0x9b, 0x82, 0xf1, 0x2a, 0xb5, 0x18, 0xe3, 0x51, 0x3e, 0x81, 0x8e, 0xc1, + 0xe3, 0x9b, 0xf8, 0x6e, 0x1a, 0x5d, 0x66, 0xfd, 0xfe, 0x91, 0x43, 0x7e, 0xed, 0x40, 0xd7, 0x7c, + 0x81, 0x22, 0x56, 0x36, 0x53, 0xe2, 0xd3, 0x37, 0xfb, 0x4c, 0x46, 0xf4, 0x2b, 0xb1, 0xc8, 0x93, + 0xed, 0x63, 0x4b, 0xc8, 0x6f, 0xad, 0x9a, 0xf2, 0x8e, 0xf9, 0xbd, 0xd3, 0x75, 0xb9, 0xd3, 0x7c, + 0x6b, 0xb9, 0xde, 0x7d, 0x2b, 0x1e, 0xa6, 0xae, 0x1f, 0x39, 0xe4, 0x53, 0xf9, 0xd9, 0x9a, 0x0e, + 0x34, 0x88, 0x61, 0xe0, 0x65, 0xb1, 0x99, 0x1f, 0x83, 0x6d, 0x39, 0x8f, 0x1c, 0xf2, 0x17, 0xf2, + 0x53, 0x27, 0x35, 0x56, 0x48, 0xff, 0x5d, 0xc7, 0xd3, 0x07, 0x62, 0x47, 0xef, 0xd3, 0x3b, 0xd6, + 0x8e, 0xca, 0x1e, 0xee, 0x04, 0xa0, 0x88, 0x1a, 0x49, 0x29, 0x84, 0xca, 0x6d, 0xbf, 0x1a, 0x58, + 0xda, 0xa7, 0xaa, 0x23, 0x2d, 0xe4, 0xf8, 0x33, 0xa9, 0x90, 0x8a, 0x3e, 0xcb, 0x8f, 0xb5, 0x1a, + 0xfd, 0x0d, 0x06, 0x75, 0x5d, 0x8a, 0xff, 0x77, 0x05, 0xff, 0xf7, 0xc8, 0x5d, 0x93, 0xff, 0xee, + 0x5b, 0x33, 0x5a, 0xbc, 0x26, 0x5f, 0x41, 0xef, 0x28, 0x8e, 0x5f, 0x4f, 0x93, 0x3c, 0x19, 0xb0, + 0xe3, 0x1f, 0x8c, 0x58, 0x07, 0xa5, 0x4d, 0xd1, 0x0f, 0x04, 0xe7, 0xbb, 0xe4, 0x8e, 0xcd, 0xb9, + 0x88, 0x61, 0xaf, 0x89, 0x07, 0xab, 0xb9, 0xdf, 0xcf, 0x37, 0x32, 0xb0, 0xf9, 0x98, 0xa1, 0x64, + 0x65, 0x0e, 0xeb, 0x26, 0xce, 0xe7, 0xc8, 0x34, 0xcf, 0x47, 0x0e, 0x39, 0x81, 0xee, 0x53, 0x36, + 0x8a, 0x7d, 0xa6, 0x62, 0x96, 0xb5, 0x62, 0xe5, 0x79, 0xac, 0x33, 0xe8, 0x59, 0xa0, 0xed, 0x09, + 0x12, 0x6f, 0x96, 0xb2, 0xaf, 0x77, 0xdf, 0xaa, 0x60, 0xe8, 0x5a, 0x7b, 0x02, 0x1d, 0xc0, 0x59, + 0x9e, 0xa0, 0x14, 0xf1, 0x59, 0x9e, 0xa0, 0x12, 0xf1, 0x59, 0x9e, 0x40, 0x07, 0x90, 0x24, 0xc4, + 0x38, 0xb0, 0x14, 0x24, 0xe6, 0xb7, 0xc7, 0x4d, 0xa1, 0xe5, 0xe0, 0xfe, 0xcd, 0x04, 0xf6, 0x6c, + 0xdb, 0xf6, 0x6c, 0xa7, 0xd0, 0x7b, 0xca, 0xa4, 0xb0, 0x64, 0x19, 0x6e, 0x60, 0xbb, 0x16, 0xb3, + 0x64, 0x57, 0x76, 0x3b, 0xa2, 0xcf, 0x76, 0xf4, 0xa2, 0x06, 0x46, 0x7e, 0x0a, 0x9d, 0x67, 0x8c, + 0xeb, 0xba, 0x5b, 0x7e, 0x07, 0x97, 0x0a, 0x71, 0x83, 0x9a, 0xb2, 0x1d, 0xbd, 0x2f, 0xb8, 0x0d, + 0x48, 0x3f, 0xe7, 0xb6, 0xcb, 0xfc, 0x31, 0x93, 0x4e, 0x60, 0x18, 0xf8, 0xd7, 0xe4, 0xc7, 0x82, + 0x79, 0x5e, 0x3e, 0xdf, 0x30, 0xaa, 0x39, 0x26, 0xf3, 0xe5, 0x12, 0x5e, 0xc7, 0x19, 0x73, 0xfc, + 0xdd, 0xb7, 0xaa, 0x8a, 0x7d, 0x4d, 0x22, 0xe8, 0x18, 0x4f, 0x22, 0xb9, 0x41, 0x55, 0xdf, 0x59, + 0x72, 0x83, 0xaa, 0x79, 0x41, 0xa1, 0x5b, 0x62, 0x1e, 0x4a, 0xee, 0x17, 0xf3, 0xc8, 0x57, 0x93, + 0x62, 0xa6, 0xdd, 0xb7, 0xde, 0x84, 0x5f, 0x93, 0x57, 0xe2, 0x33, 0x13, 0xb3, 0xb6, 0x58, 0xc4, + 0x00, 0xe5, 0x32, 0x64, 0x2e, 0x2c, 0xa3, 0xcb, 0x8e, 0x0b, 0xe4, 0x54, 0xe2, 0x66, 0x7c, 0x65, + 0x84, 0x53, 0x56, 0x8d, 0x55, 0x6b, 0xc9, 0x8d, 0xa5, 0xb4, 0x7c, 0x67, 0x35, 0xe5, 0x34, 0x1d, + 0x59, 0xc9, 0x1a, 0x81, 0x11, 0x59, 0x59, 0x45, 0x06, 0x23, 0xb2, 0xb2, 0x8b, 0x09, 0x18, 0x59, + 0x15, 0x89, 0x49, 0x1e, 0x59, 0x55, 0x72, 0x9e, 0xdc, 0x19, 0x56, 0xb3, 0x98, 0xb3, 0x05, 0xf1, + 0xf9, 0xf7, 0x1f, 0xfc, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x32, 0xff, 0xeb, 0x90, 0x30, 0x2e, + 0x00, 0x00, } diff --git a/lnrpc/rpc.pb.gw.go b/lnrpc/rpc.pb.gw.go index c67b6e02c..59aac4027 100644 --- a/lnrpc/rpc.pb.gw.go +++ b/lnrpc/rpc.pb.gw.go @@ -432,8 +432,8 @@ func request_Lightning_GetNodeInfo_0(ctx context.Context, marshaler runtime.Mars } -func request_Lightning_QueryRoute_0(ctx context.Context, marshaler runtime.Marshaler, client LightningClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq RouteRequest +func request_Lightning_QueryRoutes_0(ctx context.Context, marshaler runtime.Marshaler, client LightningClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq QueryRoutesRequest var metadata runtime.ServerMetadata var ( @@ -465,7 +465,7 @@ func request_Lightning_QueryRoute_0(ctx context.Context, marshaler runtime.Marsh return nil, metadata, err } - msg, err := client.QueryRoute(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.QueryRoutes(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } @@ -1153,7 +1153,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn * }) - mux.Handle("GET", pattern_Lightning_QueryRoute_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_Lightning_QueryRoutes_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(ctx) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -1170,14 +1170,14 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn * if err != nil { runtime.HTTPError(ctx, outboundMarshaler, w, req, err) } - resp, md, err := request_Lightning_QueryRoute_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_Lightning_QueryRoutes_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, outboundMarshaler, w, req, err) return } - forward_Lightning_QueryRoute_0(ctx, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_Lightning_QueryRoutes_0(ctx, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) @@ -1259,7 +1259,7 @@ var ( pattern_Lightning_GetNodeInfo_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "graph", "node", "pub_key"}, "")) - pattern_Lightning_QueryRoute_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3, 1, 0, 4, 1, 5, 4}, []string{"v1", "graph", "route", "pub_key", "amt"}, "")) + pattern_Lightning_QueryRoutes_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3, 1, 0, 4, 1, 5, 4}, []string{"v1", "graph", "routes", "pub_key", "amt"}, "")) pattern_Lightning_GetNetworkInfo_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "graph", "info"}, "")) ) @@ -1311,7 +1311,7 @@ var ( forward_Lightning_GetNodeInfo_0 = runtime.ForwardResponseMessage - forward_Lightning_QueryRoute_0 = runtime.ForwardResponseMessage + forward_Lightning_QueryRoutes_0 = runtime.ForwardResponseMessage forward_Lightning_GetNetworkInfo_0 = runtime.ForwardResponseMessage ) diff --git a/lnrpc/rpc.proto b/lnrpc/rpc.proto index b120f5adf..b4b570ea4 100644 --- a/lnrpc/rpc.proto +++ b/lnrpc/rpc.proto @@ -147,9 +147,9 @@ service Lightning { }; } - rpc QueryRoute(RouteRequest) returns (Route) { + rpc QueryRoutes(QueryRoutesRequest) returns (QueryRoutesResponse) { option (google.api.http) = { - get: "/v1/graph/route/{pub_key}/{amt}" + get: "/v1/graph/routes/{pub_key}/{amt}" }; } @@ -405,10 +405,13 @@ message ChannelBalanceResponse { int64 balance = 1 [ json_name = "balance" ]; } -message RouteRequest { +message QueryRoutesRequest { string pub_key = 1; int64 amt = 2; } +message QueryRoutesResponse { + repeated Route routes = 1 [ json_name = "routes"]; +} message Hop { uint64 chan_id = 1 [ json_name = "chan_id" ]; diff --git a/lnrpc/rpc.swagger.json b/lnrpc/rpc.swagger.json index 98f574ebf..a66dab849 100644 --- a/lnrpc/rpc.swagger.json +++ b/lnrpc/rpc.swagger.json @@ -289,14 +289,14 @@ ] } }, - "/v1/graph/route/{pub_key}/{amt}": { + "/v1/graph/routes/{pub_key}/{amt}": { "get": { - "operationId": "QueryRoute", + "operationId": "QueryRoutes", "responses": { "200": { "description": "", "schema": { - "$ref": "#/definitions/lnrpcRoute" + "$ref": "#/definitions/lnrpcQueryRoutesResponse" } } }, @@ -1463,6 +1463,29 @@ } } }, + "lnrpcQueryRoutesRequest": { + "type": "object", + "properties": { + "pub_key": { + "type": "string" + }, + "amt": { + "type": "string", + "format": "int64" + } + } + }, + "lnrpcQueryRoutesResponse": { + "type": "object", + "properties": { + "routes": { + "type": "array", + "items": { + "$ref": "#/definitions/lnrpcRoute" + } + } + } + }, "lnrpcRoute": { "type": "object", "properties": { @@ -1486,18 +1509,6 @@ } } }, - "lnrpcRouteRequest": { - "type": "object", - "properties": { - "pub_key": { - "type": "string" - }, - "amt": { - "type": "string", - "format": "int64" - } - } - }, "lnrpcRoutingPolicy": { "type": "object", "properties": {