lnrpc: extend Route to include millisatoshis

This commit is contained in:
t4sk 2018-04-12 16:34:31 +08:00
parent eab87140e9
commit 31feeca51a
4 changed files with 487 additions and 386 deletions

@ -519,7 +519,9 @@ func (m *ChannelPoint) String() string { return proto.CompactTextStri
func (*ChannelPoint) ProtoMessage() {}
func (*ChannelPoint) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
type isChannelPoint_FundingTxid interface{ isChannelPoint_FundingTxid() }
type isChannelPoint_FundingTxid interface {
isChannelPoint_FundingTxid()
}
type ChannelPoint_FundingTxidBytes struct {
FundingTxidBytes []byte `protobuf:"bytes,1,opt,name=funding_txid_bytes,proto3,oneof"`
@ -1606,7 +1608,9 @@ func (m *CloseStatusUpdate) String() string { return proto.CompactTex
func (*CloseStatusUpdate) ProtoMessage() {}
func (*CloseStatusUpdate) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{41} }
type isCloseStatusUpdate_Update interface{ isCloseStatusUpdate_Update() }
type isCloseStatusUpdate_Update interface {
isCloseStatusUpdate_Update()
}
type CloseStatusUpdate_ClosePending struct {
ClosePending *PendingUpdate `protobuf:"bytes,1,opt,name=close_pending,oneof"`
@ -1869,7 +1873,9 @@ func (m *OpenStatusUpdate) String() string { return proto.CompactText
func (*OpenStatusUpdate) ProtoMessage() {}
func (*OpenStatusUpdate) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{44} }
type isOpenStatusUpdate_Update interface{ isOpenStatusUpdate_Update() }
type isOpenStatusUpdate_Update interface {
isOpenStatusUpdate_Update()
}
type OpenStatusUpdate_ChanPending struct {
ChanPending *PendingUpdate `protobuf:"bytes,1,opt,name=chan_pending,oneof"`
@ -2487,6 +2493,8 @@ type Hop struct {
AmtToForward int64 `protobuf:"varint,3,opt,name=amt_to_forward" json:"amt_to_forward,omitempty"`
Fee int64 `protobuf:"varint,4,opt,name=fee" json:"fee,omitempty"`
Expiry uint32 `protobuf:"varint,5,opt,name=expiry" json:"expiry,omitempty"`
AmtToForwardMsat int64 `protobuf:"varint,6,opt,name=amt_to_forward_msat" json:"amt_to_forward_msat,omitempty"`
FeeMsat int64 `protobuf:"varint,7,opt,name=fee_msat" json:"fee_msat,omitempty"`
}
func (m *Hop) Reset() { *m = Hop{} }
@ -2529,6 +2537,20 @@ func (m *Hop) GetExpiry() uint32 {
return 0
}
func (m *Hop) GetAmtToForwardMsat() int64 {
if m != nil {
return m.AmtToForwardMsat
}
return 0
}
func (m *Hop) GetFeeMsat() int64 {
if m != nil {
return m.FeeMsat
}
return 0
}
// *
// A path through the channel graph which runs over one or more channels in
// succession. This struct carries all the information required to craft the
@ -2557,6 +2579,12 @@ type Route struct {
// *
// Contains details concerning the specific forwarding details at each hop.
Hops []*Hop `protobuf:"bytes,4,rep,name=hops" json:"hops,omitempty"`
// *
// The total fees in millisatoshis.
TotalFeesMsat int64 `protobuf:"varint,5,opt,name=total_fees_msat" json:"total_fees_msat,omitempty"`
// *
// The total amount in millisatoshis.
TotalAmtMsat int64 `protobuf:"varint,6,opt,name=total_amt_msat" json:"total_amt_msat,omitempty"`
}
func (m *Route) Reset() { *m = Route{} }
@ -2592,6 +2620,20 @@ func (m *Route) GetHops() []*Hop {
return nil
}
func (m *Route) GetTotalFeesMsat() int64 {
if m != nil {
return m.TotalFeesMsat
}
return 0
}
func (m *Route) GetTotalAmtMsat() int64 {
if m != nil {
return m.TotalAmtMsat
}
return 0
}
type NodeInfoRequest struct {
// / The 33-byte hex-encoded compressed public of the target node
PubKey string `protobuf:"bytes,1,opt,name=pub_key,json=pubKey" json:"pub_key,omitempty"`
@ -3776,7 +3818,9 @@ func (m *PolicyUpdateRequest) String() string { return proto.CompactT
func (*PolicyUpdateRequest) ProtoMessage() {}
func (*PolicyUpdateRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{92} }
type isPolicyUpdateRequest_Scope interface{ isPolicyUpdateRequest_Scope() }
type isPolicyUpdateRequest_Scope interface {
isPolicyUpdateRequest_Scope()
}
type PolicyUpdateRequest_Global struct {
Global bool `protobuf:"varint,1,opt,name=global,oneof"`
@ -6159,343 +6203,346 @@ var _Lightning_serviceDesc = grpc.ServiceDesc{
func init() { proto.RegisterFile("rpc.proto", fileDescriptor0) }
var fileDescriptor0 = []byte{
// 5394 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x3c, 0x4d, 0x93, 0x1c, 0xc9,
0x55, 0xaa, 0x9e, 0x9e, 0x8f, 0x7e, 0xdd, 0xf3, 0x95, 0x33, 0x1a, 0xb5, 0x7a, 0xb5, 0x5a, 0x6d,
0x79, 0x63, 0x25, 0xc4, 0xa2, 0xd1, 0x8e, 0xed, 0x65, 0x59, 0xc1, 0x3a, 0xf4, 0x3d, 0x6b, 0x6b,
0xe5, 0x71, 0x8d, 0xe4, 0x05, 0x2f, 0xd0, 0xae, 0xe9, 0xce, 0xe9, 0x29, 0xab, 0xbb, 0xaa, 0xb6,
0x2a, 0x7b, 0x46, 0xbd, 0x8b, 0x22, 0xf8, 0x88, 0xe0, 0x84, 0xc3, 0x07, 0x88, 0x20, 0x0c, 0xe1,
0x20, 0xc2, 0xbe, 0xc0, 0x81, 0x23, 0x27, 0x13, 0xfc, 0x00, 0x47, 0x10, 0x1c, 0x7c, 0x72, 0x70,
0xe3, 0xe3, 0x02, 0x67, 0x2e, 0x1c, 0x08, 0xe2, 0xbd, 0xfc, 0xa8, 0xcc, 0xaa, 0x1a, 0x49, 0xb6,
0xc1, 0xb7, 0xce, 0x97, 0x2f, 0x5f, 0x7e, 0xbd, 0xf7, 0xf2, 0x7d, 0x55, 0x43, 0x2b, 0x4b, 0x07,
0xd7, 0xd2, 0x2c, 0x11, 0x09, 0x9b, 0x1f, 0xc7, 0x59, 0x3a, 0xe8, 0x5d, 0x18, 0x25, 0xc9, 0x68,
0xcc, 0xb7, 0xc3, 0x34, 0xda, 0x0e, 0xe3, 0x38, 0x11, 0xa1, 0x88, 0x92, 0x38, 0x97, 0x48, 0xfe,
0x37, 0x61, 0xe5, 0x3e, 0x8f, 0xf7, 0x39, 0x1f, 0x06, 0xfc, 0x93, 0x29, 0xcf, 0x05, 0xfb, 0x65,
0x58, 0x0f, 0xf9, 0xa7, 0x9c, 0x0f, 0xfb, 0x69, 0x98, 0xe7, 0xe9, 0x51, 0x16, 0xe6, 0xbc, 0xeb,
0x5d, 0xf2, 0xae, 0x74, 0x82, 0x35, 0xd9, 0xb1, 0x67, 0xe0, 0xec, 0x75, 0xe8, 0xe4, 0x88, 0xca,
0x63, 0x91, 0x25, 0xe9, 0xac, 0xdb, 0x20, 0xbc, 0x36, 0xc2, 0xee, 0x4a, 0x90, 0x3f, 0x86, 0x55,
0x33, 0x43, 0x9e, 0x26, 0x71, 0xce, 0xd9, 0x75, 0xd8, 0x1c, 0x44, 0xe9, 0x11, 0xcf, 0xfa, 0x34,
0x78, 0x12, 0xf3, 0x49, 0x12, 0x47, 0x83, 0xae, 0x77, 0x69, 0xee, 0x4a, 0x2b, 0x60, 0xb2, 0x0f,
0x47, 0x7c, 0xa8, 0x7a, 0xd8, 0x65, 0x58, 0xe5, 0xb1, 0x84, 0xf3, 0x21, 0x8d, 0x52, 0x53, 0xad,
0x14, 0x60, 0x1c, 0xe0, 0xff, 0xa5, 0x07, 0xeb, 0x1f, 0xc4, 0x91, 0xf8, 0x28, 0x1c, 0x8f, 0xb9,
0xd0, 0x7b, 0xba, 0x0c, 0xab, 0x27, 0x04, 0xa0, 0x3d, 0x9d, 0x24, 0xd9, 0x50, 0xed, 0x68, 0x45,
0x82, 0xf7, 0x14, 0xf4, 0xd4, 0x95, 0x35, 0x4e, 0x5d, 0x59, 0xed, 0x71, 0xcd, 0xd5, 0x1f, 0x97,
0xbf, 0x09, 0xcc, 0x5e, 0x9c, 0x3c, 0x0e, 0xff, 0x7d, 0xd8, 0x78, 0x1c, 0x8f, 0x93, 0xc1, 0x93,
0x9f, 0x6d, 0xd1, 0xfe, 0x16, 0x6c, 0xba, 0xe3, 0x15, 0xdd, 0xef, 0x36, 0xa0, 0xfd, 0x28, 0x0b,
0xe3, 0x3c, 0x1c, 0xe0, 0x95, 0xb3, 0x2e, 0x2c, 0x8a, 0xa7, 0xfd, 0xa3, 0x30, 0x3f, 0x22, 0x42,
0xad, 0x40, 0x37, 0xd9, 0x16, 0x2c, 0x84, 0x93, 0x64, 0x1a, 0x0b, 0x3a, 0xd5, 0xb9, 0x40, 0xb5,
0xd8, 0x5b, 0xb0, 0x1e, 0x4f, 0x27, 0xfd, 0x41, 0x12, 0x1f, 0x46, 0xd9, 0x44, 0x32, 0x0e, 0x6d,
0x6e, 0x3e, 0xa8, 0x76, 0xb0, 0x8b, 0x00, 0x07, 0xb8, 0x0c, 0x39, 0x45, 0x93, 0xa6, 0xb0, 0x20,
0xcc, 0x87, 0x8e, 0x6a, 0xf1, 0x68, 0x74, 0x24, 0xba, 0xf3, 0x44, 0xc8, 0x81, 0x21, 0x0d, 0x11,
0x4d, 0x78, 0x3f, 0x17, 0xe1, 0x24, 0xed, 0x2e, 0xd0, 0x6a, 0x2c, 0x08, 0xf5, 0x27, 0x22, 0x1c,
0xf7, 0x0f, 0x39, 0xcf, 0xbb, 0x8b, 0xaa, 0xdf, 0x40, 0xd8, 0x9b, 0xb0, 0x32, 0xe4, 0xb9, 0xe8,
0x87, 0xc3, 0x61, 0xc6, 0xf3, 0x9c, 0xe7, 0xdd, 0x25, 0xba, 0xba, 0x12, 0xd4, 0xef, 0xc2, 0xd6,
0x7d, 0x2e, 0xac, 0xd3, 0xc9, 0xd5, 0xb1, 0xfb, 0x0f, 0x80, 0x59, 0xe0, 0x3b, 0x5c, 0x84, 0xd1,
0x38, 0x67, 0xef, 0x40, 0x47, 0x58, 0xc8, 0xc4, 0xaa, 0xed, 0x1d, 0x76, 0x8d, 0x64, 0xec, 0x9a,
0x35, 0x20, 0x70, 0xf0, 0xfc, 0xff, 0xf6, 0xa0, 0xbd, 0xcf, 0x63, 0x23, 0x5d, 0x0c, 0x9a, 0xb8,
0x12, 0x75, 0x93, 0xf4, 0x9b, 0xbd, 0x06, 0x6d, 0x5a, 0x5d, 0x2e, 0xb2, 0x28, 0x1e, 0xd1, 0x15,
0xb4, 0x02, 0x40, 0xd0, 0x3e, 0x41, 0xd8, 0x1a, 0xcc, 0x85, 0x13, 0x41, 0x07, 0x3f, 0x17, 0xe0,
0x4f, 0x94, 0xbb, 0x34, 0x9c, 0x4d, 0x78, 0x2c, 0x8a, 0xc3, 0xee, 0x04, 0x6d, 0x05, 0xdb, 0xc5,
0xd3, 0xbe, 0x06, 0x1b, 0x36, 0x8a, 0xa6, 0x3e, 0x4f, 0xd4, 0xd7, 0x2d, 0x4c, 0x35, 0xc9, 0x65,
0x58, 0xd5, 0xf8, 0x99, 0x5c, 0x2c, 0x1d, 0x7f, 0x2b, 0x58, 0x51, 0x60, 0xbd, 0x85, 0x2b, 0xb0,
0x76, 0x18, 0xc5, 0xe1, 0xb8, 0x3f, 0x18, 0x8b, 0xe3, 0xfe, 0x90, 0x8f, 0x45, 0x48, 0x17, 0x31,
0x1f, 0xac, 0x10, 0xfc, 0xf6, 0x58, 0x1c, 0xdf, 0x41, 0xa8, 0xff, 0x67, 0x1e, 0x74, 0xe4, 0xe6,
0x95, 0xe0, 0xbf, 0x01, 0xcb, 0x7a, 0x0e, 0x9e, 0x65, 0x49, 0xa6, 0xf8, 0xd0, 0x05, 0xb2, 0xab,
0xb0, 0xa6, 0x01, 0x69, 0xc6, 0xa3, 0x49, 0x38, 0xe2, 0x4a, 0xda, 0x2b, 0x70, 0xb6, 0x53, 0x50,
0xcc, 0x92, 0xa9, 0x90, 0xa2, 0xd7, 0xde, 0xe9, 0xa8, 0x8b, 0x09, 0x10, 0x16, 0xb8, 0x28, 0xfe,
0xf7, 0x3d, 0xe8, 0xdc, 0x3e, 0x0a, 0xe3, 0x98, 0x8f, 0xf7, 0x92, 0x28, 0x16, 0xec, 0x3a, 0xb0,
0xc3, 0x69, 0x3c, 0x8c, 0xe2, 0x51, 0x5f, 0x3c, 0x8d, 0x86, 0xfd, 0x83, 0x99, 0xe0, 0xb9, 0xbc,
0xa2, 0xdd, 0x33, 0x41, 0x4d, 0x1f, 0x7b, 0x0b, 0xd6, 0x1c, 0x68, 0x2e, 0x32, 0x79, 0x6f, 0xbb,
0x67, 0x82, 0x4a, 0x0f, 0x32, 0x7e, 0x32, 0x15, 0xe9, 0x54, 0xf4, 0xa3, 0x78, 0xc8, 0x9f, 0xd2,
0x1a, 0x97, 0x03, 0x07, 0x76, 0x6b, 0x05, 0x3a, 0xf6, 0x38, 0xff, 0x7d, 0x58, 0x7b, 0x80, 0x12,
0x11, 0x47, 0xf1, 0xe8, 0xa6, 0x64, 0x5b, 0x14, 0xd3, 0x74, 0x7a, 0xf0, 0x84, 0xcf, 0xd4, 0xb9,
0xa9, 0x16, 0x32, 0xd5, 0x51, 0x92, 0x0b, 0xc5, 0x39, 0xf4, 0xdb, 0xff, 0x57, 0x0f, 0x56, 0xf1,
0xec, 0x3f, 0x0c, 0xe3, 0x99, 0xbe, 0xb9, 0x07, 0xd0, 0x41, 0x52, 0x8f, 0x92, 0x9b, 0x52, 0xd8,
0x25, 0x13, 0x5f, 0x51, 0x67, 0x55, 0xc2, 0xbe, 0x66, 0xa3, 0xa2, 0x32, 0x9f, 0x05, 0xce, 0x68,
0x64, 0x5b, 0x11, 0x66, 0x23, 0x2e, 0x48, 0x0d, 0x28, 0xb5, 0x00, 0x12, 0x74, 0x3b, 0x89, 0x0f,
0xd9, 0x25, 0xe8, 0xe4, 0xa1, 0xe8, 0xa7, 0x3c, 0xa3, 0x53, 0x23, 0xd6, 0x9b, 0x0b, 0x20, 0x0f,
0xc5, 0x1e, 0xcf, 0x6e, 0xcd, 0x04, 0xef, 0x7d, 0x09, 0xd6, 0x2b, 0xb3, 0x20, 0xb7, 0x17, 0x5b,
0xc4, 0x9f, 0x6c, 0x13, 0xe6, 0x8f, 0xc3, 0xf1, 0x94, 0x2b, 0xed, 0x24, 0x1b, 0xef, 0x35, 0xde,
0xf5, 0xfc, 0x37, 0x61, 0xad, 0x58, 0xb6, 0x62, 0x32, 0x06, 0x4d, 0x3c, 0x41, 0x45, 0x80, 0x7e,
0xfb, 0x7f, 0xe0, 0x49, 0xc4, 0xdb, 0x49, 0x64, 0x24, 0x1d, 0x11, 0x51, 0x21, 0x68, 0x44, 0xfc,
0x7d, 0xaa, 0x26, 0xfc, 0xf9, 0x37, 0xeb, 0x5f, 0x86, 0x75, 0x6b, 0x09, 0xcf, 0x59, 0xec, 0xb7,
0x3d, 0x58, 0x7f, 0xc8, 0x4f, 0xd4, 0xad, 0xeb, 0xd5, 0xbe, 0x0b, 0x4d, 0x31, 0x4b, 0xe5, 0x53,
0xbc, 0xb2, 0xf3, 0x86, 0xba, 0xb4, 0x0a, 0xde, 0x35, 0xd5, 0x7c, 0x34, 0x4b, 0x79, 0x40, 0x23,
0xfc, 0xf7, 0xa1, 0x6d, 0x01, 0xd9, 0x39, 0xd8, 0xf8, 0xe8, 0x83, 0x47, 0x0f, 0xef, 0xee, 0xef,
0xf7, 0xf7, 0x1e, 0xdf, 0xfa, 0xca, 0xdd, 0xdf, 0xea, 0xef, 0xde, 0xdc, 0xdf, 0x5d, 0x3b, 0xc3,
0xb6, 0x80, 0x3d, 0xbc, 0xbb, 0xff, 0xe8, 0xee, 0x1d, 0x07, 0xee, 0xf9, 0x3d, 0xe8, 0x3e, 0xe4,
0x27, 0x1f, 0x45, 0x22, 0xe6, 0x79, 0xee, 0xce, 0xe6, 0x5f, 0x03, 0x66, 0x2f, 0x41, 0xed, 0xaa,
0x0b, 0x8b, 0x4a, 0xd5, 0xea, 0x97, 0x46, 0x35, 0xfd, 0x37, 0x81, 0xed, 0x47, 0xa3, 0xf8, 0x43,
0x9e, 0xe7, 0xe1, 0x88, 0xeb, 0xbd, 0xad, 0xc1, 0xdc, 0x24, 0x1f, 0x29, 0xa5, 0x88, 0x3f, 0xfd,
0xcf, 0xc3, 0x86, 0x83, 0xa7, 0x08, 0x5f, 0x80, 0x56, 0x1e, 0x8d, 0xe2, 0x50, 0x4c, 0x33, 0xae,
0x48, 0x17, 0x00, 0xff, 0x1e, 0x6c, 0x7e, 0x9d, 0x67, 0xd1, 0xe1, 0xec, 0x45, 0xe4, 0x5d, 0x3a,
0x8d, 0x32, 0x9d, 0xbb, 0x70, 0xb6, 0x44, 0x47, 0x4d, 0x2f, 0x19, 0x51, 0x5d, 0xd7, 0x52, 0x20,
0x1b, 0x96, 0x58, 0x36, 0x6c, 0xb1, 0xf4, 0x1f, 0x03, 0xbb, 0x9d, 0xc4, 0x31, 0x1f, 0x88, 0x3d,
0xce, 0xb3, 0xc2, 0xbe, 0x2a, 0xb8, 0xae, 0xbd, 0x73, 0x4e, 0xdd, 0x63, 0x59, 0xd6, 0x15, 0x3b,
0x32, 0x68, 0xa6, 0x3c, 0x9b, 0x10, 0xe1, 0xa5, 0x80, 0x7e, 0xfb, 0x67, 0x61, 0xc3, 0x21, 0xab,
0x5e, 0xfb, 0xb7, 0xe1, 0xec, 0x9d, 0x28, 0x1f, 0x54, 0x27, 0xec, 0xc2, 0x62, 0x3a, 0x3d, 0xe8,
0x17, 0x32, 0xa5, 0x9b, 0xf8, 0x08, 0x96, 0x87, 0x28, 0x62, 0x7f, 0xec, 0x41, 0x73, 0xf7, 0xd1,
0x83, 0xdb, 0xac, 0x07, 0x4b, 0x51, 0x3c, 0x48, 0x26, 0xf8, 0x74, 0xc8, 0x4d, 0x9b, 0xf6, 0xa9,
0xb2, 0x72, 0x01, 0x5a, 0xf4, 0xe2, 0xe0, 0xbb, 0xae, 0x4c, 0xa1, 0x02, 0x80, 0x36, 0x05, 0x7f,
0x9a, 0x46, 0x19, 0x19, 0x0d, 0xda, 0x14, 0x68, 0x92, 0x46, 0xac, 0x76, 0xf8, 0xff, 0xd3, 0x84,
0x45, 0xa5, 0xab, 0x69, 0xbe, 0x81, 0x88, 0x8e, 0xb9, 0x5a, 0x89, 0x6a, 0xe1, 0xab, 0x92, 0xf1,
0x49, 0x22, 0x78, 0xdf, 0xb9, 0x06, 0x17, 0x88, 0x58, 0x03, 0x49, 0xa8, 0x9f, 0xa2, 0xd6, 0xa7,
0x95, 0xb5, 0x02, 0x17, 0x88, 0x87, 0x85, 0x80, 0x7e, 0x34, 0xa4, 0x35, 0x35, 0x03, 0xdd, 0xc4,
0x93, 0x18, 0x84, 0x69, 0x38, 0x88, 0xc4, 0x4c, 0x09, 0xb7, 0x69, 0x23, 0xed, 0x71, 0x32, 0x08,
0xc7, 0xfd, 0x83, 0x70, 0x1c, 0xc6, 0x03, 0xae, 0x0c, 0x17, 0x17, 0x88, 0xb6, 0x89, 0x5a, 0x92,
0x46, 0x93, 0xf6, 0x4b, 0x09, 0x8a, 0x36, 0xce, 0x20, 0x99, 0x4c, 0x22, 0x81, 0x26, 0x4d, 0x77,
0x49, 0x2a, 0x92, 0x02, 0x42, 0x3b, 0x91, 0xad, 0x13, 0x79, 0x7a, 0x2d, 0x39, 0x9b, 0x03, 0x44,
0x2a, 0x87, 0x9c, 0x93, 0x42, 0x7a, 0x72, 0xd2, 0x05, 0x49, 0xa5, 0x80, 0xe0, 0x3d, 0x4c, 0xe3,
0x9c, 0x0b, 0x31, 0xe6, 0x43, 0xb3, 0xa0, 0x36, 0xa1, 0x55, 0x3b, 0xd8, 0x75, 0xd8, 0x90, 0x56,
0x56, 0x1e, 0x8a, 0x24, 0x3f, 0x8a, 0xf2, 0x7e, 0xce, 0x63, 0xd1, 0xed, 0x10, 0x7e, 0x5d, 0x17,
0x7b, 0x17, 0xce, 0x95, 0xc0, 0x19, 0x1f, 0xf0, 0xe8, 0x98, 0x0f, 0xbb, 0xcb, 0x34, 0xea, 0xb4,
0x6e, 0x76, 0x09, 0xda, 0x68, 0x5c, 0x4e, 0xd3, 0x61, 0x88, 0xef, 0xf0, 0x0a, 0xdd, 0x83, 0x0d,
0x62, 0x6f, 0xc3, 0x72, 0xca, 0xe5, 0x63, 0x79, 0x24, 0xc6, 0x83, 0xbc, 0xbb, 0x4a, 0x2f, 0x59,
0x5b, 0x09, 0x13, 0x72, 0x6e, 0xe0, 0x62, 0x20, 0x53, 0x0e, 0x72, 0x32, 0x57, 0xc2, 0x59, 0x77,
0x8d, 0xd8, 0xad, 0x00, 0x90, 0x8c, 0x64, 0xd1, 0x71, 0x28, 0x78, 0x77, 0x9d, 0x78, 0x4b, 0x37,
0xfd, 0xbf, 0xf2, 0x60, 0xe3, 0x41, 0x94, 0x0b, 0xc5, 0x84, 0x46, 0x1d, 0xbf, 0x06, 0x6d, 0xc9,
0x7e, 0xfd, 0x24, 0x1e, 0xcf, 0x14, 0x47, 0x82, 0x04, 0x7d, 0x35, 0x1e, 0xcf, 0xd8, 0xe7, 0x60,
0x39, 0x8a, 0x6d, 0x14, 0x29, 0xc3, 0x1d, 0x0d, 0x24, 0xa4, 0xd7, 0xa0, 0x9d, 0x4e, 0x0f, 0xc6,
0xd1, 0x40, 0xa2, 0xcc, 0x49, 0x2a, 0x12, 0x44, 0x08, 0x68, 0xe8, 0xc9, 0x95, 0x48, 0x8c, 0x26,
0x61, 0xb4, 0x15, 0x0c, 0x51, 0xfc, 0x5b, 0xb0, 0xe9, 0x2e, 0x50, 0x29, 0xab, 0xab, 0xb0, 0xa4,
0x78, 0x3b, 0xef, 0xb6, 0xe9, 0x7c, 0x56, 0xd4, 0xf9, 0x28, 0xd4, 0xc0, 0xf4, 0xfb, 0xff, 0xe1,
0x41, 0x13, 0x15, 0xc0, 0xe9, 0xca, 0xc2, 0xd6, 0xe9, 0x73, 0x8e, 0x4e, 0x27, 0xbb, 0x1f, 0xad,
0x22, 0xc9, 0x12, 0x52, 0x6c, 0x2c, 0x48, 0xd1, 0x9f, 0xf1, 0xc1, 0x31, 0xc9, 0x8e, 0xe9, 0x47,
0x08, 0x4a, 0x16, 0x3e, 0x9d, 0x34, 0x5a, 0x0a, 0x8e, 0x69, 0xeb, 0x3e, 0x1a, 0xb9, 0x58, 0xf4,
0xd1, 0xb8, 0x2e, 0x2c, 0x46, 0xf1, 0x41, 0x32, 0x8d, 0x87, 0x24, 0x24, 0x4b, 0x81, 0x6e, 0xe2,
0x65, 0xa7, 0x64, 0x49, 0x45, 0x13, 0xae, 0xa4, 0xa3, 0x00, 0xf8, 0x0c, 0x4d, 0xab, 0x9c, 0x14,
0x9e, 0x79, 0xc7, 0xde, 0x81, 0x75, 0x0b, 0xa6, 0x4e, 0xf0, 0x75, 0x98, 0x4f, 0x11, 0xa0, 0x0c,
0x25, 0xcd, 0x5e, 0xa4, 0x29, 0x65, 0x8f, 0xbf, 0x86, 0xfe, 0xb3, 0xf8, 0x20, 0x3e, 0x4c, 0x34,
0xa5, 0x9f, 0xcc, 0xa1, 0xc3, 0xab, 0x40, 0x8a, 0xd0, 0x15, 0x58, 0x8d, 0x86, 0x3c, 0x16, 0x91,
0x98, 0xf5, 0x1d, 0x0b, 0xae, 0x0c, 0xc6, 0x17, 0x26, 0x1c, 0x47, 0x61, 0xae, 0x74, 0x98, 0x6c,
0xb0, 0x1d, 0xd8, 0x44, 0xf6, 0xd7, 0x1c, 0x6d, 0xae, 0x55, 0x1a, 0x92, 0xb5, 0x7d, 0x28, 0xb1,
0x08, 0x57, 0x1c, 0x68, 0x86, 0x48, 0x4d, 0x5b, 0xd7, 0x85, 0xa7, 0x26, 0x29, 0xe1, 0x96, 0xe7,
0xa5, 0x88, 0x18, 0x40, 0xc5, 0x7b, 0x5b, 0x90, 0x46, 0x6c, 0xd9, 0x7b, 0xb3, 0x3c, 0xc0, 0xa5,
0x8a, 0x07, 0x78, 0x05, 0x56, 0xf3, 0x59, 0x3c, 0xe0, 0xc3, 0xbe, 0x48, 0x70, 0xde, 0x28, 0xa6,
0xdb, 0x59, 0x0a, 0xca, 0x60, 0xf2, 0x55, 0x79, 0x2e, 0x62, 0x2e, 0x48, 0x75, 0x2d, 0x05, 0xba,
0x89, 0xaf, 0x00, 0xa1, 0x48, 0xa6, 0x6e, 0x05, 0xaa, 0x85, 0x4f, 0xe5, 0x34, 0x8b, 0xf2, 0x6e,
0x87, 0xa0, 0xf4, 0x9b, 0x7d, 0x01, 0xce, 0x1e, 0xa0, 0x67, 0x75, 0xc4, 0xc3, 0x21, 0xcf, 0xe8,
0xf6, 0xa5, 0x63, 0x29, 0x35, 0x50, 0x7d, 0x27, 0xce, 0x7d, 0xcc, 0xb3, 0x3c, 0x4a, 0x62, 0xd2,
0x3d, 0xad, 0x40, 0x37, 0xfd, 0x4f, 0xe9, 0x45, 0x37, 0x2e, 0xef, 0x63, 0x52, 0x47, 0xec, 0x15,
0x68, 0xc9, 0x3d, 0xe6, 0x47, 0xa1, 0x32, 0x32, 0x96, 0x08, 0xb0, 0x7f, 0x14, 0xa2, 0x00, 0x3b,
0xc7, 0xd6, 0x20, 0xcb, 0xb1, 0x4d, 0xb0, 0x5d, 0x79, 0x6a, 0x6f, 0xc0, 0x8a, 0x76, 0xa6, 0xf3,
0xfe, 0x98, 0x1f, 0x0a, 0xed, 0x20, 0xc4, 0xd3, 0x09, 0x4e, 0x97, 0x3f, 0xe0, 0x87, 0xc2, 0x7f,
0x08, 0xeb, 0x4a, 0x6e, 0xbf, 0x9a, 0x72, 0x3d, 0xf5, 0xaf, 0x95, 0x1f, 0x35, 0x69, 0x55, 0x6c,
0xb8, 0x82, 0x4e, 0x5e, 0x4e, 0xe9, 0xa5, 0xf3, 0x03, 0x60, 0xaa, 0xfb, 0xf6, 0x38, 0xc9, 0xb9,
0x22, 0xe8, 0x43, 0x67, 0x30, 0x4e, 0x72, 0xed, 0x86, 0xa8, 0xed, 0x38, 0x30, 0x3c, 0x9f, 0x7c,
0x3a, 0x18, 0xa0, 0x26, 0x90, 0x3a, 0x4d, 0x37, 0xfd, 0xbf, 0xf6, 0x60, 0x83, 0xa8, 0x69, 0x0d,
0x63, 0x6c, 0xd7, 0x97, 0x5f, 0x66, 0x67, 0x60, 0xbb, 0x66, 0x9b, 0x30, 0x7f, 0x98, 0x64, 0x03,
0xae, 0x66, 0x92, 0x8d, 0x9f, 0xde, 0x1a, 0x6f, 0x56, 0xac, 0xf1, 0x9f, 0x78, 0xb0, 0x4e, 0x4b,
0xdd, 0x17, 0xa1, 0x98, 0xe6, 0x6a, 0xfb, 0xbf, 0x0e, 0xcb, 0xb8, 0x55, 0xae, 0xc5, 0x49, 0x2d,
0x74, 0xd3, 0x48, 0x3e, 0x41, 0x25, 0xf2, 0xee, 0x99, 0xc0, 0x45, 0x66, 0x5f, 0x82, 0x8e, 0x1d,
0x11, 0xa1, 0x35, 0xb7, 0x77, 0xce, 0xeb, 0x5d, 0x56, 0x38, 0x67, 0xf7, 0x4c, 0xe0, 0x0c, 0x60,
0x37, 0x00, 0xc8, 0xdc, 0x20, 0xb2, 0xca, 0x95, 0x3d, 0xef, 0x1e, 0x92, 0x75, 0x59, 0xbb, 0x67,
0x02, 0x0b, 0xfd, 0xd6, 0x12, 0x2c, 0xc8, 0xf7, 0xd1, 0xbf, 0x0f, 0xcb, 0xce, 0x4a, 0x1d, 0x2f,
0xa3, 0x23, 0xbd, 0x8c, 0x8a, 0x53, 0xda, 0xa8, 0x3a, 0xa5, 0xfe, 0xbf, 0x37, 0x80, 0x21, 0xb7,
0x95, 0xae, 0x13, 0x1f, 0xe8, 0x64, 0xe8, 0x98, 0x5b, 0x9d, 0xc0, 0x06, 0xb1, 0x6b, 0xc0, 0xac,
0xa6, 0x8e, 0x3d, 0xc8, 0x77, 0xa3, 0xa6, 0x07, 0x15, 0x9c, 0xb4, 0x95, 0xb4, 0x0f, 0xac, 0x0c,
0x4b, 0x79, 0x6f, 0xb5, 0x7d, 0xf8, 0x34, 0xa4, 0xd3, 0xfc, 0x08, 0x0d, 0x08, 0x6d, 0x90, 0xe9,
0x76, 0x99, 0x41, 0x16, 0x5e, 0xc8, 0x20, 0x8b, 0x65, 0x06, 0xb1, 0x4d, 0x82, 0x25, 0xc7, 0x24,
0x40, 0xfb, 0x6b, 0x12, 0xc5, 0x64, 0x57, 0xf4, 0x27, 0x38, 0xbb, 0xb2, 0xbf, 0x1c, 0x20, 0xbb,
0x0a, 0x6b, 0xca, 0xae, 0x2b, 0xec, 0x0e, 0xa0, 0x33, 0xae, 0xc0, 0xfd, 0x1f, 0x7b, 0xb0, 0x86,
0xe7, 0xec, 0xf0, 0xe2, 0x7b, 0x40, 0xa2, 0xf0, 0x92, 0xac, 0xe8, 0xe0, 0xfe, 0xfc, 0x9c, 0xf8,
0x2e, 0xb4, 0x88, 0x60, 0x92, 0xf2, 0x58, 0x31, 0x62, 0xd7, 0x65, 0xc4, 0x42, 0x0b, 0xed, 0x9e,
0x09, 0x0a, 0x64, 0x8b, 0x0d, 0xff, 0xc9, 0x83, 0xb6, 0x5a, 0xe6, 0xcf, 0xec, 0x4b, 0xf4, 0x60,
0x09, 0x39, 0xd2, 0x32, 0xd8, 0x4d, 0x1b, 0x5f, 0x93, 0x09, 0x3a, 0x6c, 0xf8, 0x7c, 0x3a, 0x7e,
0x44, 0x19, 0x8c, 0x6f, 0x21, 0x29, 0xdc, 0xbc, 0x2f, 0xa2, 0x71, 0x5f, 0xf7, 0xaa, 0x00, 0x64,
0x5d, 0x17, 0xea, 0x9d, 0x5c, 0x84, 0x23, 0xae, 0x9e, 0x39, 0xd9, 0x40, 0x87, 0x49, 0x6d, 0xa8,
0x64, 0x0e, 0xfa, 0x3f, 0x02, 0x38, 0x57, 0xe9, 0x32, 0xe1, 0x6e, 0x65, 0x20, 0x8f, 0xa3, 0xc9,
0x41, 0x62, 0x6c, 0x6d, 0xcf, 0xb6, 0x9d, 0x9d, 0x2e, 0x36, 0x82, 0xb3, 0xfa, 0x3d, 0xc7, 0x33,
0x2d, 0x5e, 0xef, 0x06, 0x19, 0x22, 0x6f, 0xbb, 0x3c, 0x50, 0x9e, 0x50, 0xc3, 0x6d, 0xc9, 0xad,
0xa7, 0xc7, 0x8e, 0xa0, 0x6b, 0x0c, 0x07, 0xa5, 0xe2, 0x2d, 0xe3, 0x02, 0xe7, 0x7a, 0xeb, 0x05,
0x73, 0x91, 0x3e, 0x1a, 0xea, 0x69, 0x4e, 0xa5, 0xc6, 0x66, 0x70, 0x51, 0xf7, 0x91, 0x0e, 0xaf,
0xce, 0xd7, 0x7c, 0xa9, 0xbd, 0xdd, 0xc3, 0xc1, 0xee, 0xa4, 0x2f, 0x20, 0xdc, 0xfb, 0x91, 0x07,
0x2b, 0x2e, 0x39, 0x64, 0x1d, 0x25, 0x84, 0x5a, 0x19, 0x69, 0x83, 0xac, 0x04, 0xae, 0xba, 0x8d,
0x8d, 0x3a, 0xb7, 0xd1, 0x76, 0x0e, 0xe7, 0x5e, 0xe4, 0x1c, 0x36, 0x5f, 0xce, 0x39, 0x9c, 0xaf,
0x73, 0x0e, 0x7b, 0xff, 0xe5, 0x01, 0xab, 0xde, 0x2f, 0xbb, 0x2f, 0xfd, 0xd6, 0x98, 0x8f, 0x95,
0x9e, 0xf8, 0x95, 0x97, 0xe3, 0x11, 0x7d, 0x86, 0x7a, 0x34, 0x32, 0xab, 0xad, 0x08, 0x6c, 0xb3,
0x65, 0x39, 0xa8, 0xeb, 0x2a, 0xb9, 0xab, 0xcd, 0x17, 0xbb, 0xab, 0xf3, 0x2f, 0x76, 0x57, 0x17,
0xca, 0xee, 0x6a, 0xef, 0xf7, 0x60, 0xd9, 0xb9, 0xf5, 0xff, 0xbb, 0x1d, 0x97, 0x4d, 0x1e, 0x79,
0xc1, 0x0e, 0xac, 0xf7, 0x9f, 0x0d, 0x60, 0x55, 0xce, 0xfb, 0x85, 0xae, 0x81, 0xf8, 0xc8, 0x51,
0x20, 0x73, 0x8a, 0x8f, 0x1c, 0xd5, 0xf1, 0xff, 0xa9, 0x14, 0xdf, 0x82, 0xf5, 0x8c, 0x0f, 0x92,
0x63, 0x4a, 0xc2, 0xb9, 0xa1, 0x8e, 0x6a, 0x07, 0x1a, 0x7d, 0xae, 0x93, 0xbe, 0xe4, 0xe4, 0x4c,
0xac, 0x97, 0xa1, 0xe4, 0xab, 0xfb, 0x5b, 0xb0, 0x29, 0x53, 0x59, 0xb7, 0x24, 0x29, 0xad, 0x64,
0xbf, 0xe7, 0xc1, 0xd9, 0x52, 0x47, 0x91, 0x58, 0x90, 0x7a, 0xd4, 0x55, 0xae, 0x2e, 0x10, 0xd7,
0xaf, 0x18, 0xd8, 0x5a, 0xbf, 0x7c, 0x6f, 0xaa, 0x1d, 0x78, 0x3e, 0xd3, 0xb8, 0x8a, 0x2f, 0x4f,
0xbd, 0xae, 0xcb, 0x3f, 0x07, 0x67, 0xd5, 0xcd, 0x96, 0x16, 0x7e, 0x08, 0x5b, 0xe5, 0x8e, 0x22,
0x52, 0xea, 0x2e, 0x59, 0x37, 0xd1, 0x24, 0x72, 0x74, 0xb6, 0xbb, 0xde, 0xda, 0x3e, 0xff, 0x77,
0x81, 0x7d, 0x6d, 0xca, 0xb3, 0x19, 0xa5, 0x3d, 0x4c, 0xa8, 0xe2, 0x5c, 0xd9, 0xa7, 0x5f, 0x48,
0xa7, 0x07, 0x5f, 0xe1, 0x33, 0x9d, 0x57, 0x6a, 0x14, 0x79, 0xa5, 0x57, 0x01, 0xd0, 0x15, 0xa1,
0x3c, 0x89, 0xce, 0xf4, 0xa1, 0x0f, 0x28, 0x09, 0xfa, 0x37, 0x60, 0xc3, 0xa1, 0x6f, 0x4e, 0x7f,
0x41, 0x8d, 0x90, 0x8e, 0xb2, 0x9b, 0x7d, 0x51, 0x7d, 0xfe, 0x9f, 0x7b, 0x30, 0xb7, 0x9b, 0xa4,
0x76, 0x88, 0xcd, 0x73, 0x43, 0x6c, 0x4a, 0xd7, 0xf6, 0x8d, 0x2a, 0x6d, 0x28, 0x4d, 0x61, 0x03,
0x51, 0x53, 0x86, 0x13, 0x81, 0xae, 0xe2, 0x61, 0x92, 0x9d, 0x84, 0xd9, 0x50, 0x5d, 0x49, 0x09,
0x8a, 0xbb, 0x2b, 0x14, 0x12, 0xfe, 0x44, 0x23, 0x83, 0x22, 0x8c, 0x33, 0xe5, 0xdd, 0xaa, 0x96,
0xff, 0x1d, 0x0f, 0xe6, 0x69, 0xad, 0x28, 0x3d, 0x92, 0x65, 0x28, 0xe5, 0x48, 0x01, 0x4c, 0x4f,
0x4a, 0x4f, 0x09, 0x5c, 0x4a, 0x44, 0x36, 0x2a, 0x89, 0xc8, 0x0b, 0xd0, 0x92, 0xad, 0x22, 0x73,
0x57, 0x00, 0xd8, 0x45, 0x68, 0x1e, 0x25, 0xa9, 0x7e, 0xf3, 0x40, 0xc7, 0xad, 0x92, 0x34, 0x20,
0xb8, 0x7f, 0x15, 0x56, 0x1f, 0x26, 0x43, 0x6e, 0xc5, 0x15, 0x4e, 0xbd, 0x45, 0xff, 0xf7, 0x3d,
0x58, 0xd2, 0xc8, 0xec, 0x0a, 0x34, 0xf1, 0xe9, 0x2a, 0x19, 0x8b, 0x26, 0xba, 0x8c, 0x78, 0x01,
0x61, 0xa0, 0xca, 0x21, 0xaf, 0xb3, 0x30, 0x2d, 0xb4, 0xcf, 0x59, 0x3c, 0xda, 0x6f, 0xc2, 0x8a,
0x5c, 0x73, 0xe9, 0x71, 0x2b, 0x41, 0xfd, 0xbf, 0xf1, 0x60, 0xd9, 0x99, 0x03, 0x5d, 0x84, 0x71,
0x98, 0x0b, 0x15, 0xb1, 0x53, 0x87, 0x68, 0x83, 0xec, 0x48, 0x53, 0xc3, 0x8d, 0x34, 0x99, 0x18,
0xc8, 0x9c, 0x1d, 0x03, 0xb9, 0x0e, 0xad, 0x22, 0xa9, 0xdb, 0x74, 0x54, 0x09, 0xce, 0xa8, 0xe3,
0xe6, 0x05, 0x12, 0xd2, 0x19, 0x24, 0xe3, 0x24, 0x53, 0x39, 0x4f, 0xd9, 0xf0, 0x6f, 0x40, 0xdb,
0xc2, 0xc7, 0x65, 0xc4, 0x5c, 0x9c, 0x24, 0xd9, 0x13, 0x1d, 0xf0, 0x52, 0x4d, 0x93, 0x1e, 0x6a,
0x14, 0xe9, 0x21, 0xff, 0x6f, 0x3d, 0x58, 0x46, 0x4e, 0x89, 0xe2, 0xd1, 0x5e, 0x32, 0x8e, 0x06,
0x33, 0xe2, 0x18, 0xcd, 0x14, 0x2a, 0x19, 0xaa, 0x39, 0xc6, 0x05, 0xa3, 0x8d, 0xa0, 0x3d, 0x04,
0xc5, 0x2f, 0xa6, 0x8d, 0x9c, 0x8f, 0x6f, 0xdd, 0x41, 0x98, 0x73, 0xe9, 0x52, 0x28, 0xdd, 0xee,
0x00, 0x51, 0x23, 0x21, 0x20, 0x0b, 0x05, 0xef, 0x4f, 0xa2, 0xf1, 0x38, 0x92, 0xb8, 0x92, 0xc3,
0xeb, 0xba, 0xfc, 0x1f, 0x36, 0xa0, 0xad, 0x34, 0xcf, 0xdd, 0xe1, 0x48, 0x86, 0x96, 0x95, 0xe1,
0x62, 0xc4, 0xcf, 0x82, 0xe8, 0x7e, 0xc7, 0xd4, 0xb1, 0x20, 0xe5, 0x6b, 0x9d, 0xab, 0x5e, 0xeb,
0x05, 0x68, 0x21, 0x7b, 0xbd, 0x4d, 0x36, 0x95, 0xac, 0x01, 0x28, 0x00, 0xba, 0x77, 0x87, 0x7a,
0xe7, 0x8b, 0x5e, 0x02, 0x38, 0x56, 0xd4, 0x42, 0xc9, 0x8a, 0x7a, 0x17, 0x3a, 0x8a, 0x0c, 0x9d,
0x3b, 0x39, 0x6c, 0x05, 0x83, 0x3b, 0x77, 0x12, 0x38, 0x98, 0x7a, 0xe4, 0x8e, 0x1e, 0xb9, 0xf4,
0xa2, 0x91, 0x1a, 0x93, 0x32, 0x2d, 0xf2, 0x6c, 0xee, 0x67, 0x61, 0x7a, 0xa4, 0xb5, 0xf9, 0xd0,
0xa4, 0x8f, 0x09, 0xcc, 0xae, 0xc2, 0x3c, 0x0e, 0xd3, 0xda, 0xaf, 0x5e, 0xe8, 0x24, 0x0a, 0xbb,
0x02, 0xf3, 0x7c, 0x38, 0xe2, 0xda, 0x92, 0x67, 0xae, 0x4f, 0x85, 0x77, 0x14, 0x48, 0x04, 0x54,
0x01, 0x08, 0x2d, 0xa9, 0x00, 0x57, 0x73, 0x2e, 0x60, 0xf3, 0x83, 0xa1, 0xbf, 0x09, 0xec, 0xa1,
0xe4, 0x5a, 0x3b, 0x12, 0xf9, 0x47, 0x73, 0xd0, 0xb6, 0xc0, 0x28, 0xcd, 0x23, 0x5c, 0x70, 0x7f,
0x18, 0x85, 0x13, 0x2e, 0x78, 0xa6, 0x38, 0xb5, 0x04, 0x25, 0x05, 0x7b, 0x3c, 0xea, 0x27, 0x53,
0xd1, 0x1f, 0xf2, 0x51, 0xc6, 0xe5, 0x9b, 0xe3, 0x05, 0x25, 0x28, 0xe2, 0x4d, 0xc2, 0xa7, 0x36,
0x9e, 0xe4, 0x87, 0x12, 0x54, 0xc7, 0x15, 0xe5, 0x19, 0x35, 0x8b, 0xb8, 0xa2, 0x3c, 0x91, 0xb2,
0x1e, 0x9a, 0xaf, 0xd1, 0x43, 0xef, 0xc0, 0x96, 0xd4, 0x38, 0x4a, 0x36, 0xfb, 0x25, 0x36, 0x39,
0xa5, 0x17, 0x7d, 0x70, 0x5c, 0xb3, 0x66, 0xf0, 0x3c, 0xfa, 0x54, 0x7a, 0xfa, 0x5e, 0x50, 0x81,
0x23, 0x2e, 0x8a, 0xa3, 0x83, 0x2b, 0x73, 0x2f, 0x15, 0x38, 0xe1, 0x86, 0x4f, 0x5d, 0xdc, 0x96,
0xc2, 0x2d, 0xc1, 0xfd, 0x65, 0x68, 0xef, 0x8b, 0x24, 0xd5, 0x97, 0xb2, 0x02, 0x1d, 0xd9, 0x54,
0x99, 0xb6, 0x57, 0xe0, 0x3c, 0x71, 0xd1, 0xa3, 0x24, 0x4d, 0xc6, 0xc9, 0x68, 0xb6, 0x3f, 0x3d,
0xc8, 0x07, 0x59, 0x94, 0xa2, 0x85, 0xed, 0xff, 0xa3, 0x07, 0x1b, 0x4e, 0xaf, 0x0a, 0x0d, 0x7c,
0x41, 0xb2, 0xb4, 0x49, 0x91, 0x48, 0xc6, 0x5b, 0xb7, 0xd4, 0xa1, 0x44, 0x94, 0x41, 0x99, 0xc7,
0x2a, 0x6b, 0x72, 0x13, 0x56, 0xf5, 0xca, 0xf4, 0x40, 0xc9, 0x85, 0xdd, 0x2a, 0x17, 0xaa, 0xf1,
0x2b, 0x6a, 0x80, 0x26, 0xf1, 0x1b, 0xd2, 0x4e, 0xe5, 0x43, 0xda, 0xa3, 0xf6, 0x11, 0x7b, 0x7a,
0xbc, 0x6d, 0x1c, 0xeb, 0x15, 0x0c, 0x0c, 0x30, 0xf7, 0xff, 0xc4, 0x03, 0x28, 0x56, 0x87, 0x8c,
0x51, 0xa8, 0x74, 0x59, 0xfc, 0x65, 0xa9, 0xef, 0xd7, 0xa1, 0x63, 0xa2, 0xe3, 0xc5, 0x2b, 0xd1,
0xd6, 0x30, 0x34, 0x60, 0x2e, 0xc3, 0xea, 0x68, 0x9c, 0x1c, 0xd0, 0x9b, 0x4b, 0xa9, 0xdb, 0x5c,
0xe5, 0x1b, 0x57, 0x24, 0xf8, 0x9e, 0x82, 0x16, 0x4f, 0x4a, 0xd3, 0x7a, 0x52, 0xfc, 0x6f, 0x37,
0x4c, 0x4c, 0xb5, 0xd8, 0xf3, 0xa9, 0x52, 0xc6, 0x76, 0x2a, 0xca, 0xf1, 0x94, 0x10, 0x26, 0x45,
0x43, 0xf6, 0x5e, 0xe8, 0x18, 0xde, 0x80, 0x95, 0x4c, 0x6a, 0x1f, 0xad, 0x9a, 0x9a, 0xcf, 0x51,
0x4d, 0xcb, 0x99, 0xf3, 0xee, 0xfc, 0x12, 0xac, 0x85, 0xc3, 0x63, 0x9e, 0x89, 0x88, 0x3c, 0x04,
0x7a, 0xf4, 0xa5, 0x42, 0x5d, 0xb5, 0xe0, 0xf4, 0x16, 0x5f, 0x86, 0x55, 0x95, 0xe3, 0x35, 0x98,
0xaa, 0xb2, 0xa7, 0x00, 0x23, 0xa2, 0xff, 0x03, 0x1d, 0xbe, 0x75, 0xef, 0xf0, 0xf4, 0x13, 0xb1,
0x77, 0xd7, 0x28, 0xed, 0xee, 0x73, 0x2a, 0x94, 0x3a, 0xd4, 0x6e, 0x88, 0x0a, 0x6a, 0x4b, 0xa0,
0x0a, 0x7d, 0xbb, 0x47, 0xda, 0x7c, 0x99, 0x23, 0xf5, 0xbf, 0x37, 0x07, 0x8b, 0x1f, 0xc4, 0xc7,
0x49, 0x34, 0xa0, 0xc0, 0xe6, 0x84, 0x4f, 0x12, 0x5d, 0x3e, 0x81, 0xbf, 0xf1, 0x45, 0xa7, 0x54,
0x62, 0x2a, 0x54, 0x64, 0x52, 0x37, 0xf1, 0x75, 0xcb, 0x8a, 0x92, 0x22, 0xc9, 0x29, 0x16, 0x04,
0xed, 0xc3, 0xcc, 0xae, 0xa7, 0x52, 0xad, 0xa2, 0xfe, 0x64, 0xde, 0xaa, 0x3f, 0xa1, 0x30, 0xb8,
0xcc, 0x92, 0xd2, 0x71, 0x2e, 0x05, 0xba, 0x49, 0x76, 0x6c, 0xc6, 0xa5, 0x93, 0x4c, 0xef, 0xe4,
0xa2, 0xb2, 0x63, 0x6d, 0x20, 0xbe, 0xa5, 0x72, 0x80, 0xc4, 0x91, 0xba, 0xc6, 0x06, 0xa1, 0x6d,
0x51, 0x2e, 0xc9, 0x6a, 0xc9, 0x2b, 0x2e, 0x81, 0x51, 0x21, 0x0d, 0xb9, 0xd1, 0x1b, 0x72, 0x0f,
0x20, 0x4b, 0xa6, 0xca, 0x70, 0xcb, 0x0a, 0x96, 0xd9, 0x5e, 0xd5, 0x22, 0x1b, 0x24, 0x1c, 0x8f,
0x0f, 0xc2, 0xc1, 0x13, 0x2a, 0x94, 0xa3, 0xe4, 0x6e, 0x2b, 0x70, 0x81, 0xb8, 0x6a, 0xaa, 0xfb,
0x52, 0x24, 0x96, 0x65, 0x72, 0xd6, 0x02, 0xf9, 0x5f, 0x07, 0x76, 0x73, 0x38, 0x54, 0x37, 0x64,
0x7c, 0x84, 0xe2, 0x6c, 0x3d, 0xe7, 0x6c, 0x6b, 0xf6, 0xd8, 0xa8, 0xdd, 0xa3, 0x7f, 0x17, 0xda,
0x7b, 0x56, 0x7d, 0x1b, 0x5d, 0xa6, 0xae, 0x6c, 0x53, 0x0c, 0x60, 0x41, 0xac, 0x09, 0x1b, 0xf6,
0x84, 0xfe, 0xaf, 0x02, 0x7b, 0x10, 0xe5, 0xc2, 0xac, 0x4f, 0x1e, 0xe0, 0xeb, 0xd0, 0x31, 0x1e,
0x55, 0x91, 0xcf, 0x6d, 0x2b, 0x18, 0xe5, 0x59, 0x6f, 0xca, 0x44, 0x70, 0x79, 0x63, 0x57, 0x61,
0x29, 0x92, 0x20, 0xad, 0x87, 0x75, 0x9a, 0x55, 0x63, 0x9a, 0x7e, 0x34, 0x28, 0x14, 0xd0, 0x51,
0xf3, 0x3f, 0xf4, 0x60, 0x51, 0x6d, 0x0d, 0x9f, 0x43, 0xa7, 0xb2, 0x4f, 0x6e, 0xcc, 0x81, 0xd5,
0xd7, 0x43, 0x55, 0xb9, 0x6e, 0xae, 0x8e, 0xeb, 0x18, 0x34, 0xd3, 0x50, 0x1c, 0x91, 0x05, 0xdd,
0x0a, 0xe8, 0xb7, 0xf6, 0x94, 0xe6, 0x0b, 0x4f, 0xa9, 0xae, 0x04, 0x4f, 0xea, 0x8c, 0x0a, 0x1c,
0x37, 0x45, 0xa9, 0x53, 0x09, 0x37, 0x11, 0x51, 0x95, 0x96, 0x2e, 0xc0, 0xc5, 0x79, 0x29, 0x12,
0xe5, 0xf3, 0x52, 0xa8, 0x81, 0xe9, 0xf7, 0x7b, 0xd0, 0xbd, 0xc3, 0xc7, 0x5c, 0xf0, 0x9b, 0xe3,
0x71, 0x99, 0xfe, 0x2b, 0x70, 0xbe, 0xa6, 0x4f, 0xbd, 0xaa, 0xf7, 0x60, 0xfd, 0x0e, 0x3f, 0x98,
0x8e, 0x1e, 0xf0, 0xe3, 0x22, 0x6d, 0xc1, 0xa0, 0x99, 0x1f, 0x25, 0x27, 0xea, 0x6e, 0xe9, 0x37,
0x3a, 0xbc, 0x63, 0xc4, 0xe9, 0xe7, 0x29, 0x1f, 0xe8, 0x4a, 0x20, 0x82, 0xec, 0xa7, 0x7c, 0xe0,
0xbf, 0x03, 0xcc, 0xa6, 0xa3, 0xb6, 0x80, 0x92, 0x3b, 0x3d, 0xe8, 0xe7, 0xb3, 0x5c, 0xf0, 0x89,
0x2e, 0x71, 0xb2, 0x41, 0xfe, 0x65, 0xe8, 0xec, 0x85, 0xb3, 0x80, 0x7f, 0xa2, 0x8a, 0x2b, 0xd1,
0x79, 0x0b, 0x67, 0xc8, 0xca, 0xc6, 0x79, 0xa3, 0x6e, 0xff, 0x1f, 0x1a, 0xb0, 0x20, 0x31, 0x91,
0xea, 0x90, 0xe7, 0x22, 0x8a, 0x65, 0xc8, 0x5e, 0x51, 0xb5, 0x40, 0x15, 0xde, 0x68, 0xd4, 0xf0,
0x86, 0x32, 0xa7, 0x74, 0x55, 0x85, 0x62, 0x02, 0x07, 0x46, 0xbe, 0xa9, 0x49, 0x85, 0x36, 0x95,
0x6f, 0x6a, 0xd2, 0x9f, 0xae, 0x97, 0x5c, 0xe8, 0x07, 0xb9, 0x3e, 0xcd, 0xb4, 0x8a, 0x1d, 0x6c,
0x50, 0xad, 0x16, 0x5a, 0x94, 0x5c, 0x53, 0xd1, 0x42, 0x15, 0x6d, 0xb3, 0xf4, 0x12, 0xda, 0x46,
0xda, 0x58, 0x8e, 0xb6, 0x61, 0xb0, 0x76, 0x8f, 0xf3, 0x80, 0xa7, 0x49, 0xa6, 0x2b, 0x54, 0xfd,
0xef, 0x7a, 0xb0, 0xa6, 0x5e, 0x0f, 0xd3, 0xc7, 0x5e, 0x77, 0x9e, 0x1a, 0xaf, 0x2e, 0x8a, 0xfb,
0x06, 0x2c, 0x93, 0xb3, 0x85, 0x9e, 0x14, 0x79, 0x56, 0x2a, 0xfe, 0xe0, 0x00, 0x71, 0x4d, 0x3a,
0x2e, 0x39, 0x89, 0xc6, 0xea, 0x80, 0x6d, 0x10, 0x3e, 0x8b, 0xda, 0x19, 0xa3, 0xe3, 0xf5, 0x02,
0xd3, 0xf6, 0xff, 0xde, 0x83, 0x75, 0x6b, 0xc1, 0x8a, 0xa3, 0x6e, 0x80, 0x4e, 0x7b, 0xca, 0x78,
0x82, 0x14, 0x8c, 0x73, 0xee, 0x4b, 0x58, 0x0c, 0x73, 0x90, 0xe9, 0x62, 0xc2, 0x19, 0x2d, 0x30,
0x9f, 0xca, 0x5a, 0xb1, 0x66, 0x60, 0x83, 0x90, 0x29, 0x4e, 0x38, 0x7f, 0x62, 0x50, 0xe6, 0x08,
0xc5, 0x81, 0x51, 0x56, 0x2b, 0x89, 0xc5, 0x91, 0x41, 0x92, 0x85, 0x1c, 0x2e, 0xd0, 0xff, 0x67,
0x0f, 0x36, 0xa4, 0x05, 0xa2, 0xec, 0x3b, 0x53, 0x64, 0xb6, 0x20, 0x4d, 0x2e, 0x29, 0x5d, 0xbb,
0x67, 0x02, 0xd5, 0x66, 0x5f, 0x7c, 0x49, 0xab, 0xc9, 0x64, 0x33, 0x4f, 0xb9, 0x8b, 0xb9, 0xba,
0xbb, 0x78, 0xce, 0x49, 0xd7, 0x79, 0xe6, 0xf3, 0xb5, 0x9e, 0xf9, 0xad, 0x45, 0x98, 0xcf, 0x07,
0x49, 0xca, 0xfd, 0x2d, 0xd8, 0x74, 0x37, 0xa7, 0xd4, 0xc9, 0xf7, 0x3d, 0xe8, 0xde, 0x93, 0x61,
0xa5, 0x28, 0x1e, 0xed, 0x46, 0xb9, 0x48, 0x32, 0x53, 0x55, 0x7b, 0x11, 0x20, 0x17, 0x61, 0x26,
0x64, 0xb5, 0x89, 0xf2, 0xa9, 0x0b, 0x08, 0xae, 0x91, 0xc7, 0x43, 0xd9, 0x2b, 0xef, 0xc6, 0xb4,
0xf1, 0x62, 0x28, 0xd3, 0xda, 0x4f, 0x0e, 0x0f, 0x73, 0x6e, 0x6c, 0x24, 0x1b, 0x86, 0x6e, 0x16,
0x4a, 0x2f, 0x3a, 0x16, 0xfc, 0x98, 0xd4, 0xa6, 0xf4, 0xa1, 0x4a, 0x50, 0xff, 0xef, 0x3c, 0x58,
0x2d, 0x16, 0x79, 0x17, 0x81, 0xae, 0xa4, 0xcb, 0xa5, 0x59, 0x92, 0xae, 0xbd, 0xfd, 0x68, 0xd8,
0x8f, 0x62, 0xb5, 0x36, 0x0b, 0x42, 0xd2, 0xa7, 0x5a, 0xc9, 0x54, 0x57, 0xf6, 0xd8, 0x20, 0x99,
0xb6, 0x13, 0x38, 0x5a, 0x96, 0xf5, 0xa8, 0x16, 0x15, 0x0b, 0x4d, 0x04, 0x8d, 0x5a, 0x90, 0x31,
0x3e, 0xd5, 0xd4, 0x6f, 0xcd, 0x22, 0x41, 0xf1, 0xa7, 0xff, 0x1d, 0x0f, 0xce, 0xd7, 0x1c, 0xae,
0x92, 0x8c, 0x3b, 0xb0, 0x7e, 0x68, 0x3a, 0xf5, 0x01, 0x48, 0xf1, 0xd8, 0x52, 0x5c, 0x54, 0xda,
0x74, 0x50, 0x1d, 0xc0, 0xde, 0x82, 0x75, 0x0a, 0x52, 0xc8, 0x23, 0x75, 0x32, 0xde, 0xd5, 0x8e,
0x9d, 0x1f, 0x34, 0x60, 0x45, 0xc6, 0x99, 0xe5, 0x77, 0x15, 0x3c, 0x63, 0x1f, 0xc2, 0xa2, 0xfa,
0x8a, 0x85, 0x9d, 0x55, 0xd3, 0xba, 0xdf, 0xcd, 0xf4, 0xb6, 0xca, 0x60, 0xc5, 0x3b, 0x1b, 0x7f,
0xf8, 0xe3, 0x7f, 0xfb, 0xd3, 0xc6, 0x32, 0x6b, 0x6f, 0x1f, 0xbf, 0xbd, 0x3d, 0xe2, 0x71, 0x8e,
0x34, 0x7e, 0x1b, 0xa0, 0xf8, 0x10, 0x84, 0x75, 0x8d, 0xc1, 0x50, 0xfa, 0x70, 0xa5, 0x77, 0xbe,
0xa6, 0x47, 0xd1, 0x3d, 0x4f, 0x74, 0x37, 0xfc, 0x15, 0xa4, 0x1b, 0xc5, 0x91, 0x90, 0x5f, 0x85,
0xbc, 0xe7, 0x5d, 0x65, 0x43, 0xe8, 0xd8, 0x1f, 0x84, 0x30, 0xed, 0x9f, 0xd5, 0x7c, 0x65, 0xd2,
0x7b, 0xa5, 0xb6, 0x4f, 0x3b, 0xa7, 0x34, 0xc7, 0x59, 0x7f, 0x0d, 0xe7, 0x98, 0x12, 0x86, 0x99,
0x65, 0xe7, 0x5f, 0x5e, 0x81, 0x96, 0x89, 0x71, 0xb0, 0x6f, 0xc1, 0xb2, 0x13, 0x9a, 0x67, 0x9a,
0x70, 0x5d, 0x24, 0xbf, 0x77, 0xa1, 0xbe, 0x53, 0x4d, 0x7b, 0x91, 0xa6, 0xed, 0xb2, 0x2d, 0x9c,
0x56, 0xc5, 0xb6, 0xb7, 0x29, 0x21, 0x21, 0x8b, 0x83, 0x9e, 0xc0, 0x8a, 0x1b, 0x4e, 0x67, 0x17,
0x5c, 0x85, 0x52, 0x9a, 0xed, 0xd5, 0x53, 0x7a, 0xd5, 0x74, 0x17, 0x68, 0xba, 0x2d, 0xb6, 0x69,
0x4f, 0x67, 0x62, 0x0f, 0x9c, 0xca, 0xb9, 0xec, 0x2f, 0x45, 0xd8, 0xab, 0xe6, 0xaa, 0xeb, 0xbe,
0x20, 0x31, 0x97, 0x56, 0xfd, 0x8c, 0xc4, 0xef, 0xd2, 0x54, 0x8c, 0xd1, 0x81, 0xda, 0x1f, 0x8a,
0xb0, 0x8f, 0xa1, 0x65, 0xaa, 0xc3, 0xd9, 0x39, 0xab, 0x24, 0xdf, 0x2e, 0x59, 0xef, 0x75, 0xab,
0x1d, 0x75, 0x57, 0x65, 0x53, 0x46, 0x86, 0x78, 0x00, 0x67, 0x95, 0xc1, 0x79, 0xc0, 0x7f, 0x9a,
0x9d, 0xd4, 0x7c, 0xdf, 0x72, 0xdd, 0x63, 0x37, 0x60, 0x49, 0x17, 0xdd, 0xb3, 0xad, 0xfa, 0x8f,
0x07, 0x7a, 0xe7, 0x2a, 0x70, 0x25, 0xcf, 0x37, 0x01, 0x8a, 0x82, 0x71, 0xc3, 0xf9, 0x95, 0x32,
0x76, 0x73, 0x88, 0x35, 0xd5, 0xe5, 0x23, 0x2a, 0x8f, 0x77, 0xeb, 0xd1, 0xd9, 0x6b, 0x05, 0x7e,
0x6d, 0xa5, 0xfa, 0x73, 0x08, 0xfa, 0x5b, 0x74, 0x76, 0x6b, 0x8c, 0x44, 0x29, 0xe6, 0x27, 0xba,
0xb0, 0xf1, 0x0e, 0xb4, 0xad, 0x22, 0x74, 0xa6, 0x29, 0x54, 0x0b, 0xd8, 0x7b, 0xbd, 0xba, 0x2e,
0xb5, 0xdc, 0x2f, 0xc3, 0xb2, 0x53, 0x4d, 0x6e, 0x24, 0xa3, 0xae, 0x56, 0xdd, 0x48, 0x46, 0x7d,
0x01, 0xfa, 0x37, 0xa0, 0x6d, 0xd5, 0x7e, 0x33, 0xab, 0xa0, 0xa3, 0x54, 0xf5, 0x6d, 0x56, 0x54,
0x57, 0x2a, 0xbe, 0x49, 0xfb, 0x5d, 0xf1, 0x5b, 0xb8, 0x5f, 0xaa, 0xee, 0x43, 0x26, 0xf9, 0x16,
0xac, 0xb8, 0xd5, 0xe0, 0x46, 0xaa, 0x6a, 0xeb, 0xca, 0x8d, 0x54, 0x9d, 0x52, 0x42, 0xae, 0x18,
0xf2, 0xea, 0x86, 0x99, 0x64, 0xfb, 0x33, 0x15, 0xe1, 0x7f, 0xc6, 0xbe, 0x86, 0xaa, 0x43, 0x95,
0x5b, 0xb2, 0xa2, 0x06, 0xde, 0x2d, 0xca, 0x34, 0xdc, 0x5e, 0xa9, 0xcc, 0xf4, 0xd7, 0x89, 0x78,
0x9b, 0x15, 0x3b, 0x90, 0x1a, 0x9a, 0xca, 0x2e, 0x2d, 0x0d, 0x6d, 0x57, 0x66, 0x5a, 0x1a, 0xda,
0xa9, 0xce, 0x2c, 0x6b, 0x68, 0x11, 0x21, 0x8d, 0x18, 0x56, 0x4b, 0x49, 0x5c, 0x23, 0x2c, 0xf5,
0x25, 0x20, 0xbd, 0x8b, 0xcf, 0xcf, 0xfd, 0xba, 0x6a, 0x46, 0xab, 0x97, 0x6d, 0x5d, 0xb1, 0xf3,
0x3b, 0xd0, 0xb1, 0xab, 0x78, 0x8d, 0xce, 0xae, 0xa9, 0x3d, 0x36, 0x3a, 0xbb, 0xae, 0xec, 0x57,
0x5f, 0x2e, 0xeb, 0xd8, 0xd3, 0xb0, 0x6f, 0xc0, 0xaa, 0x55, 0x2e, 0xb0, 0x3f, 0x8b, 0x07, 0x86,
0x79, 0xaa, 0x05, 0x5e, 0xbd, 0x3a, 0xfb, 0xcc, 0x3f, 0x47, 0x84, 0xd7, 0x7d, 0x87, 0x30, 0x32,
0xce, 0x6d, 0x68, 0xdb, 0xa5, 0x08, 0xcf, 0xa1, 0x7b, 0xce, 0xea, 0xb2, 0x6b, 0x9d, 0xae, 0x7b,
0xec, 0x2f, 0x3c, 0xe8, 0xd8, 0xa5, 0x83, 0xcc, 0x09, 0x2a, 0x96, 0xe8, 0x74, 0xed, 0x3e, 0x9b,
0x90, 0x1f, 0xd0, 0x22, 0x1f, 0x5c, 0xfd, 0xb2, 0x73, 0xc8, 0x9f, 0x39, 0x76, 0xfe, 0xb5, 0xf2,
0x07, 0x5a, 0xcf, 0xca, 0x08, 0x76, 0x11, 0xdc, 0xb3, 0xeb, 0x1e, 0x7b, 0x4f, 0x7e, 0xc4, 0xa7,
0x7d, 0x74, 0x66, 0x29, 0xb7, 0xf2, 0x91, 0xd9, 0xdf, 0xbb, 0x5d, 0xf1, 0xae, 0x7b, 0xec, 0x9b,
0xf2, 0x3b, 0x2c, 0x35, 0x96, 0x4e, 0xfe, 0x65, 0xc7, 0xfb, 0x6f, 0xd0, 0x6e, 0x2e, 0xfa, 0xe7,
0x9d, 0xdd, 0x94, 0xb5, 0xfb, 0x1e, 0x40, 0x11, 0x70, 0x61, 0xa5, 0xe8, 0x83, 0xd1, 0x7b, 0xd5,
0x98, 0x8c, 0x7b, 0xa3, 0x3a, 0x48, 0x81, 0x14, 0x3f, 0x96, 0xcc, 0xa8, 0xf0, 0x73, 0x73, 0xa5,
0xd5, 0xc0, 0x49, 0xaf, 0x57, 0xd7, 0x55, 0xc7, 0x8a, 0x9a, 0x3e, 0x7b, 0x0c, 0xcb, 0x0f, 0x92,
0xe4, 0xc9, 0x34, 0x35, 0x41, 0x3c, 0xd7, 0xff, 0xdf, 0x0d, 0xf3, 0xa3, 0x5e, 0x69, 0x17, 0xfe,
0x25, 0x22, 0xd5, 0x63, 0x5d, 0x8b, 0xd4, 0xf6, 0x67, 0x45, 0xb8, 0xe7, 0x19, 0x0b, 0x61, 0xdd,
0xbc, 0x71, 0x66, 0xe1, 0x3d, 0x97, 0x8c, 0x1d, 0x75, 0xa9, 0x4c, 0xe1, 0x58, 0x1d, 0x7a, 0xb5,
0xdb, 0xb9, 0xa6, 0x79, 0xdd, 0x63, 0x7b, 0xd0, 0xb9, 0xc3, 0x07, 0xc9, 0x90, 0x2b, 0x8f, 0x7d,
0xa3, 0x58, 0xb8, 0x71, 0xf5, 0x7b, 0xcb, 0x0e, 0xd0, 0x95, 0xfa, 0x34, 0x9c, 0x65, 0xfc, 0x93,
0xed, 0xcf, 0x54, 0x2c, 0xe0, 0x99, 0x96, 0x7a, 0x1d, 0xbf, 0x70, 0xa4, 0xbe, 0x14, 0xf0, 0x70,
0xa4, 0xbe, 0x12, 0xf0, 0x70, 0x8e, 0x5a, 0xc7, 0x4f, 0xd8, 0x18, 0xd6, 0x2b, 0x31, 0x12, 0xf3,
0x52, 0x9e, 0x16, 0x59, 0xe9, 0x5d, 0x3a, 0x1d, 0xc1, 0x9d, 0xed, 0xaa, 0x3b, 0xdb, 0x3e, 0x2c,
0xdf, 0xe1, 0xf2, 0xb0, 0x64, 0x62, 0xac, 0xe7, 0xaa, 0x11, 0x3b, 0x89, 0x56, 0x56, 0x31, 0xd4,
0xe7, 0xaa, 0x75, 0xca, 0x4a, 0xb1, 0x8f, 0xa1, 0x7d, 0x9f, 0x0b, 0x9d, 0x09, 0x33, 0xf6, 0x46,
0x29, 0x35, 0xd6, 0xab, 0x49, 0xa4, 0xb9, 0x3c, 0x43, 0xd4, 0xb6, 0xf9, 0x70, 0xc4, 0xa5, 0xb0,
0xf7, 0xa3, 0xe1, 0x33, 0xf6, 0x9b, 0x44, 0xdc, 0x24, 0xcf, 0xb7, 0xac, 0x04, 0x8a, 0x4d, 0x7c,
0xb5, 0x04, 0xaf, 0xa3, 0x1c, 0x27, 0x43, 0x6e, 0x3d, 0x70, 0x31, 0xb4, 0xad, 0x4a, 0x09, 0x23,
0x40, 0xd5, 0xea, 0x0c, 0x23, 0x40, 0x35, 0x85, 0x15, 0xfe, 0x15, 0x9a, 0xc7, 0x67, 0x97, 0x8a,
0x79, 0x64, 0x31, 0x45, 0x31, 0xd3, 0xf6, 0x67, 0xe1, 0x44, 0x3c, 0x63, 0x1f, 0xd1, 0x77, 0x08,
0x76, 0xb6, 0xaf, 0xb0, 0x77, 0xca, 0x89, 0x41, 0x73, 0x58, 0x56, 0x97, 0x6b, 0x03, 0xc9, 0xa9,
0xe8, 0x1d, 0xfc, 0x22, 0xc0, 0xbe, 0x48, 0xd2, 0x3b, 0x21, 0x9f, 0x24, 0x71, 0xa1, 0xb9, 0x8a,
0x8c, 0x56, 0xa1, 0xb9, 0xac, 0xb4, 0x16, 0xfb, 0xc8, 0xb2, 0x38, 0x9d, 0x64, 0xa9, 0x66, 0xae,
0x53, 0x93, 0x5e, 0xe6, 0x40, 0x6a, 0x12, 0x5f, 0xd7, 0x3d, 0xb4, 0x1f, 0x8b, 0x88, 0x9c, 0xb1,
0x1f, 0x2b, 0xc1, 0x3e, 0xa3, 0xf6, 0x6a, 0xc2, 0x77, 0x7b, 0xd0, 0x2a, 0xc2, 0x42, 0xfa, 0x49,
0x2a, 0x07, 0x91, 0xcc, 0x1b, 0x53, 0x09, 0xd6, 0xf8, 0x6b, 0x74, 0x54, 0xc0, 0x96, 0xf0, 0xa8,
0x28, 0x02, 0x13, 0xc1, 0x86, 0x5c, 0xa0, 0x79, 0x30, 0x29, 0x47, 0xa3, 0x77, 0x52, 0x13, 0x30,
0x31, 0xd2, 0x5c, 0x1b, 0x6f, 0x70, 0x7c, 0x3b, 0xe4, 0x56, 0x99, 0x1f, 0x42, 0xd5, 0x3c, 0x81,
0xf5, 0x8a, 0xb3, 0x6c, 0x44, 0xfa, 0xb4, 0x18, 0x85, 0x11, 0xe9, 0x53, 0xfd, 0x6c, 0xff, 0x2c,
0x4d, 0xb9, 0xea, 0x03, 0x4e, 0x99, 0x9f, 0x44, 0x62, 0x70, 0xf4, 0x9e, 0x77, 0xf5, 0x60, 0x81,
0xfe, 0x26, 0xe2, 0xf3, 0xff, 0x1b, 0x00, 0x00, 0xff, 0xff, 0x70, 0x25, 0x2d, 0xcc, 0x58, 0x42,
0x00, 0x00,
// 5446 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x7c, 0xcd, 0x93, 0x1c, 0xc9,
0x55, 0xb8, 0xaa, 0xa7, 0xe7, 0xa3, 0x5f, 0xf7, 0x7c, 0xe5, 0x8c, 0x46, 0xad, 0x5e, 0x59, 0xab,
0x4d, 0x6f, 0x58, 0xfa, 0xcd, 0x6f, 0xd1, 0x68, 0xc7, 0xf6, 0xb2, 0xac, 0xc0, 0x0e, 0x7d, 0xcf,
0xda, 0x5a, 0x79, 0x5c, 0x23, 0x79, 0xc1, 0x0b, 0xb4, 0x6b, 0xba, 0x73, 0x7a, 0xca, 0xea, 0xae,
0xaa, 0xad, 0xaa, 0x9e, 0x51, 0xef, 0xa2, 0x08, 0x3e, 0x22, 0x38, 0xe1, 0xe0, 0x00, 0x17, 0x43,
0x38, 0x88, 0xb0, 0x2f, 0x70, 0xe0, 0xc8, 0xc9, 0x04, 0x7f, 0x80, 0x23, 0x08, 0x0e, 0x3e, 0x39,
0xb8, 0xf1, 0x71, 0x00, 0x82, 0x23, 0x17, 0x0e, 0x04, 0xf1, 0x5e, 0x7e, 0x54, 0x66, 0x55, 0x8d,
0x24, 0xdb, 0xc0, 0xad, 0xf3, 0xe5, 0xcb, 0x97, 0x5f, 0xef, 0xbd, 0x7c, 0x5f, 0xd5, 0xd0, 0x4a,
0x93, 0xc1, 0xf5, 0x24, 0x8d, 0xf3, 0x98, 0xcd, 0x8f, 0xa3, 0x34, 0x19, 0xf4, 0x2e, 0x8d, 0xe2,
0x78, 0x34, 0x16, 0x3b, 0x41, 0x12, 0xee, 0x04, 0x51, 0x14, 0xe7, 0x41, 0x1e, 0xc6, 0x51, 0x26,
0x91, 0xf8, 0xb7, 0x60, 0xe5, 0x81, 0x88, 0x0e, 0x84, 0x18, 0xfa, 0xe2, 0xe3, 0xa9, 0xc8, 0x72,
0xf6, 0xff, 0x61, 0x3d, 0x10, 0x9f, 0x08, 0x31, 0xec, 0x27, 0x41, 0x96, 0x25, 0xc7, 0x69, 0x90,
0x89, 0xae, 0x77, 0xc5, 0xbb, 0xd6, 0xf1, 0xd7, 0x64, 0xc7, 0xbe, 0x81, 0xb3, 0x37, 0xa0, 0x93,
0x21, 0xaa, 0x88, 0xf2, 0x34, 0x4e, 0x66, 0xdd, 0x06, 0xe1, 0xb5, 0x11, 0x76, 0x4f, 0x82, 0xf8,
0x18, 0x56, 0xcd, 0x0c, 0x59, 0x12, 0x47, 0x99, 0x60, 0x37, 0x60, 0x73, 0x10, 0x26, 0xc7, 0x22,
0xed, 0xd3, 0xe0, 0x49, 0x24, 0x26, 0x71, 0x14, 0x0e, 0xba, 0xde, 0x95, 0xb9, 0x6b, 0x2d, 0x9f,
0xc9, 0x3e, 0x1c, 0xf1, 0x81, 0xea, 0x61, 0x57, 0x61, 0x55, 0x44, 0x12, 0x2e, 0x86, 0x34, 0x4a,
0x4d, 0xb5, 0x52, 0x80, 0x71, 0x00, 0xff, 0x53, 0x0f, 0xd6, 0xdf, 0x8f, 0xc2, 0xfc, 0xc3, 0x60,
0x3c, 0x16, 0xb9, 0xde, 0xd3, 0x55, 0x58, 0x3d, 0x25, 0x00, 0xed, 0xe9, 0x34, 0x4e, 0x87, 0x6a,
0x47, 0x2b, 0x12, 0xbc, 0xaf, 0xa0, 0x67, 0xae, 0xac, 0x71, 0xe6, 0xca, 0x6a, 0x8f, 0x6b, 0xae,
0xfe, 0xb8, 0xf8, 0x26, 0x30, 0x7b, 0x71, 0xf2, 0x38, 0xf8, 0x97, 0x60, 0xe3, 0x49, 0x34, 0x8e,
0x07, 0x4f, 0x7f, 0xb6, 0x45, 0xf3, 0x2d, 0xd8, 0x74, 0xc7, 0x2b, 0xba, 0xdf, 0x6d, 0x40, 0xfb,
0x71, 0x1a, 0x44, 0x59, 0x30, 0xc0, 0x2b, 0x67, 0x5d, 0x58, 0xcc, 0x9f, 0xf5, 0x8f, 0x83, 0xec,
0x98, 0x08, 0xb5, 0x7c, 0xdd, 0x64, 0x5b, 0xb0, 0x10, 0x4c, 0xe2, 0x69, 0x94, 0xd3, 0xa9, 0xce,
0xf9, 0xaa, 0xc5, 0xde, 0x82, 0xf5, 0x68, 0x3a, 0xe9, 0x0f, 0xe2, 0xe8, 0x28, 0x4c, 0x27, 0x92,
0x71, 0x68, 0x73, 0xf3, 0x7e, 0xb5, 0x83, 0x5d, 0x06, 0x38, 0xc4, 0x65, 0xc8, 0x29, 0x9a, 0x34,
0x85, 0x05, 0x61, 0x1c, 0x3a, 0xaa, 0x25, 0xc2, 0xd1, 0x71, 0xde, 0x9d, 0x27, 0x42, 0x0e, 0x0c,
0x69, 0xe4, 0xe1, 0x44, 0xf4, 0xb3, 0x3c, 0x98, 0x24, 0xdd, 0x05, 0x5a, 0x8d, 0x05, 0xa1, 0xfe,
0x38, 0x0f, 0xc6, 0xfd, 0x23, 0x21, 0xb2, 0xee, 0xa2, 0xea, 0x37, 0x10, 0xf6, 0x39, 0x58, 0x19,
0x8a, 0x2c, 0xef, 0x07, 0xc3, 0x61, 0x2a, 0xb2, 0x4c, 0x64, 0xdd, 0x25, 0xba, 0xba, 0x12, 0x94,
0x77, 0x61, 0xeb, 0x81, 0xc8, 0xad, 0xd3, 0xc9, 0xd4, 0xb1, 0xf3, 0x87, 0xc0, 0x2c, 0xf0, 0x5d,
0x91, 0x07, 0xe1, 0x38, 0x63, 0xef, 0x40, 0x27, 0xb7, 0x90, 0x89, 0x55, 0xdb, 0xbb, 0xec, 0x3a,
0xc9, 0xd8, 0x75, 0x6b, 0x80, 0xef, 0xe0, 0xf1, 0xff, 0xf4, 0xa0, 0x7d, 0x20, 0x22, 0x23, 0x5d,
0x0c, 0x9a, 0xb8, 0x12, 0x75, 0x93, 0xf4, 0x9b, 0xbd, 0x0e, 0x6d, 0x5a, 0x5d, 0x96, 0xa7, 0x61,
0x34, 0xa2, 0x2b, 0x68, 0xf9, 0x80, 0xa0, 0x03, 0x82, 0xb0, 0x35, 0x98, 0x0b, 0x26, 0x39, 0x1d,
0xfc, 0x9c, 0x8f, 0x3f, 0x51, 0xee, 0x92, 0x60, 0x36, 0x11, 0x51, 0x5e, 0x1c, 0x76, 0xc7, 0x6f,
0x2b, 0xd8, 0x1e, 0x9e, 0xf6, 0x75, 0xd8, 0xb0, 0x51, 0x34, 0xf5, 0x79, 0xa2, 0xbe, 0x6e, 0x61,
0xaa, 0x49, 0xae, 0xc2, 0xaa, 0xc6, 0x4f, 0xe5, 0x62, 0xe9, 0xf8, 0x5b, 0xfe, 0x8a, 0x02, 0xeb,
0x2d, 0x5c, 0x83, 0xb5, 0xa3, 0x30, 0x0a, 0xc6, 0xfd, 0xc1, 0x38, 0x3f, 0xe9, 0x0f, 0xc5, 0x38,
0x0f, 0xe8, 0x22, 0xe6, 0xfd, 0x15, 0x82, 0xdf, 0x19, 0xe7, 0x27, 0x77, 0x11, 0xca, 0xff, 0xd8,
0x83, 0x8e, 0xdc, 0xbc, 0x12, 0xfc, 0x37, 0x61, 0x59, 0xcf, 0x21, 0xd2, 0x34, 0x4e, 0x15, 0x1f,
0xba, 0x40, 0xb6, 0x0d, 0x6b, 0x1a, 0x90, 0xa4, 0x22, 0x9c, 0x04, 0x23, 0xa1, 0xa4, 0xbd, 0x02,
0x67, 0xbb, 0x05, 0xc5, 0x34, 0x9e, 0xe6, 0x52, 0xf4, 0xda, 0xbb, 0x1d, 0x75, 0x31, 0x3e, 0xc2,
0x7c, 0x17, 0x85, 0x7f, 0xdf, 0x83, 0xce, 0x9d, 0xe3, 0x20, 0x8a, 0xc4, 0x78, 0x3f, 0x0e, 0xa3,
0x9c, 0xdd, 0x00, 0x76, 0x34, 0x8d, 0x86, 0x61, 0x34, 0xea, 0xe7, 0xcf, 0xc2, 0x61, 0xff, 0x70,
0x96, 0x8b, 0x4c, 0x5e, 0xd1, 0xde, 0x39, 0xbf, 0xa6, 0x8f, 0xbd, 0x05, 0x6b, 0x0e, 0x34, 0xcb,
0x53, 0x79, 0x6f, 0x7b, 0xe7, 0xfc, 0x4a, 0x0f, 0x32, 0x7e, 0x3c, 0xcd, 0x93, 0x69, 0xde, 0x0f,
0xa3, 0xa1, 0x78, 0x46, 0x6b, 0x5c, 0xf6, 0x1d, 0xd8, 0xed, 0x15, 0xe8, 0xd8, 0xe3, 0xf8, 0x97,
0x60, 0xed, 0x21, 0x4a, 0x44, 0x14, 0x46, 0xa3, 0x5b, 0x92, 0x6d, 0x51, 0x4c, 0x93, 0xe9, 0xe1,
0x53, 0x31, 0x53, 0xe7, 0xa6, 0x5a, 0xc8, 0x54, 0xc7, 0x71, 0x96, 0x2b, 0xce, 0xa1, 0xdf, 0xfc,
0x1f, 0x3d, 0x58, 0xc5, 0xb3, 0xff, 0x20, 0x88, 0x66, 0xfa, 0xe6, 0x1e, 0x42, 0x07, 0x49, 0x3d,
0x8e, 0x6f, 0x49, 0x61, 0x97, 0x4c, 0x7c, 0x4d, 0x9d, 0x55, 0x09, 0xfb, 0xba, 0x8d, 0x8a, 0xca,
0x7c, 0xe6, 0x3b, 0xa3, 0x91, 0x6d, 0xf3, 0x20, 0x1d, 0x89, 0x9c, 0xd4, 0x80, 0x52, 0x0b, 0x20,
0x41, 0x77, 0xe2, 0xe8, 0x88, 0x5d, 0x81, 0x4e, 0x16, 0xe4, 0xfd, 0x44, 0xa4, 0x74, 0x6a, 0xc4,
0x7a, 0x73, 0x3e, 0x64, 0x41, 0xbe, 0x2f, 0xd2, 0xdb, 0xb3, 0x5c, 0xf4, 0xbe, 0x0c, 0xeb, 0x95,
0x59, 0x90, 0xdb, 0x8b, 0x2d, 0xe2, 0x4f, 0xb6, 0x09, 0xf3, 0x27, 0xc1, 0x78, 0x2a, 0x94, 0x76,
0x92, 0x8d, 0xf7, 0x1a, 0xef, 0x7a, 0xfc, 0x73, 0xb0, 0x56, 0x2c, 0x5b, 0x31, 0x19, 0x83, 0x26,
0x9e, 0xa0, 0x22, 0x40, 0xbf, 0xf9, 0xef, 0x78, 0x12, 0xf1, 0x4e, 0x1c, 0x1a, 0x49, 0x47, 0x44,
0x54, 0x08, 0x1a, 0x11, 0x7f, 0x9f, 0xa9, 0x09, 0x7f, 0xfe, 0xcd, 0xf2, 0xab, 0xb0, 0x6e, 0x2d,
0xe1, 0x05, 0x8b, 0xfd, 0x8e, 0x07, 0xeb, 0x8f, 0xc4, 0xa9, 0xba, 0x75, 0xbd, 0xda, 0x77, 0xa1,
0x99, 0xcf, 0x12, 0xf9, 0x14, 0xaf, 0xec, 0xbe, 0xa9, 0x2e, 0xad, 0x82, 0x77, 0x5d, 0x35, 0x1f,
0xcf, 0x12, 0xe1, 0xd3, 0x08, 0xfe, 0x25, 0x68, 0x5b, 0x40, 0x76, 0x01, 0x36, 0x3e, 0x7c, 0xff,
0xf1, 0xa3, 0x7b, 0x07, 0x07, 0xfd, 0xfd, 0x27, 0xb7, 0xbf, 0x7a, 0xef, 0xd7, 0xfa, 0x7b, 0xb7,
0x0e, 0xf6, 0xd6, 0xce, 0xb1, 0x2d, 0x60, 0x8f, 0xee, 0x1d, 0x3c, 0xbe, 0x77, 0xd7, 0x81, 0x7b,
0xbc, 0x07, 0xdd, 0x47, 0xe2, 0xf4, 0xc3, 0x30, 0x8f, 0x44, 0x96, 0xb9, 0xb3, 0xf1, 0xeb, 0xc0,
0xec, 0x25, 0xa8, 0x5d, 0x75, 0x61, 0x51, 0xa9, 0x5a, 0xfd, 0xd2, 0xa8, 0x26, 0xff, 0x1c, 0xb0,
0x83, 0x70, 0x14, 0x7d, 0x20, 0xb2, 0x2c, 0x18, 0x09, 0xbd, 0xb7, 0x35, 0x98, 0x9b, 0x64, 0x23,
0xa5, 0x14, 0xf1, 0x27, 0xff, 0x3c, 0x6c, 0x38, 0x78, 0x8a, 0xf0, 0x25, 0x68, 0x65, 0xe1, 0x28,
0x0a, 0xf2, 0x69, 0x2a, 0x14, 0xe9, 0x02, 0xc0, 0xef, 0xc3, 0xe6, 0x37, 0x44, 0x1a, 0x1e, 0xcd,
0x5e, 0x46, 0xde, 0xa5, 0xd3, 0x28, 0xd3, 0xb9, 0x07, 0xe7, 0x4b, 0x74, 0xd4, 0xf4, 0x92, 0x11,
0xd5, 0x75, 0x2d, 0xf9, 0xb2, 0x61, 0x89, 0x65, 0xc3, 0x16, 0x4b, 0xfe, 0x04, 0xd8, 0x9d, 0x38,
0x8a, 0xc4, 0x20, 0xdf, 0x17, 0x22, 0x2d, 0xec, 0xab, 0x82, 0xeb, 0xda, 0xbb, 0x17, 0xd4, 0x3d,
0x96, 0x65, 0x5d, 0xb1, 0x23, 0x83, 0x66, 0x22, 0xd2, 0x09, 0x11, 0x5e, 0xf2, 0xe9, 0x37, 0x3f,
0x0f, 0x1b, 0x0e, 0x59, 0xf5, 0xda, 0xbf, 0x0d, 0xe7, 0xef, 0x86, 0xd9, 0xa0, 0x3a, 0x61, 0x17,
0x16, 0x93, 0xe9, 0x61, 0xbf, 0x90, 0x29, 0xdd, 0xc4, 0x47, 0xb0, 0x3c, 0x44, 0x11, 0xfb, 0x7d,
0x0f, 0x9a, 0x7b, 0x8f, 0x1f, 0xde, 0x61, 0x3d, 0x58, 0x0a, 0xa3, 0x41, 0x3c, 0xc1, 0xa7, 0x43,
0x6e, 0xda, 0xb4, 0xcf, 0x94, 0x95, 0x4b, 0xd0, 0xa2, 0x17, 0x07, 0xdf, 0x75, 0x65, 0x0a, 0x15,
0x00, 0xb4, 0x29, 0xc4, 0xb3, 0x24, 0x4c, 0xc9, 0x68, 0xd0, 0xa6, 0x40, 0x93, 0x34, 0x62, 0xb5,
0x83, 0xff, 0x57, 0x13, 0x16, 0x95, 0xae, 0xa6, 0xf9, 0x06, 0x79, 0x78, 0x22, 0xd4, 0x4a, 0x54,
0x0b, 0x5f, 0x95, 0x54, 0x4c, 0xe2, 0x5c, 0xf4, 0x9d, 0x6b, 0x70, 0x81, 0x88, 0x35, 0x90, 0x84,
0xfa, 0x09, 0x6a, 0x7d, 0x5a, 0x59, 0xcb, 0x77, 0x81, 0x78, 0x58, 0x08, 0xe8, 0x87, 0x43, 0x5a,
0x53, 0xd3, 0xd7, 0x4d, 0x3c, 0x89, 0x41, 0x90, 0x04, 0x83, 0x30, 0x9f, 0x29, 0xe1, 0x36, 0x6d,
0xa4, 0x3d, 0x8e, 0x07, 0xc1, 0xb8, 0x7f, 0x18, 0x8c, 0x83, 0x68, 0x20, 0x94, 0xe1, 0xe2, 0x02,
0xd1, 0x36, 0x51, 0x4b, 0xd2, 0x68, 0xd2, 0x7e, 0x29, 0x41, 0xd1, 0xc6, 0x19, 0xc4, 0x93, 0x49,
0x98, 0xa3, 0x49, 0xd3, 0x5d, 0x92, 0x8a, 0xa4, 0x80, 0xd0, 0x4e, 0x64, 0xeb, 0x54, 0x9e, 0x5e,
0x4b, 0xce, 0xe6, 0x00, 0x91, 0xca, 0x91, 0x10, 0xa4, 0x90, 0x9e, 0x9e, 0x76, 0x41, 0x52, 0x29,
0x20, 0x78, 0x0f, 0xd3, 0x28, 0x13, 0x79, 0x3e, 0x16, 0x43, 0xb3, 0xa0, 0x36, 0xa1, 0x55, 0x3b,
0xd8, 0x0d, 0xd8, 0x90, 0x56, 0x56, 0x16, 0xe4, 0x71, 0x76, 0x1c, 0x66, 0xfd, 0x4c, 0x44, 0x79,
0xb7, 0x43, 0xf8, 0x75, 0x5d, 0xec, 0x5d, 0xb8, 0x50, 0x02, 0xa7, 0x62, 0x20, 0xc2, 0x13, 0x31,
0xec, 0x2e, 0xd3, 0xa8, 0xb3, 0xba, 0xd9, 0x15, 0x68, 0xa3, 0x71, 0x39, 0x4d, 0x86, 0x01, 0xbe,
0xc3, 0x2b, 0x74, 0x0f, 0x36, 0x88, 0xbd, 0x0d, 0xcb, 0x89, 0x90, 0x8f, 0xe5, 0x71, 0x3e, 0x1e,
0x64, 0xdd, 0x55, 0x7a, 0xc9, 0xda, 0x4a, 0x98, 0x90, 0x73, 0x7d, 0x17, 0x03, 0x99, 0x72, 0x90,
0x91, 0xb9, 0x12, 0xcc, 0xba, 0x6b, 0xc4, 0x6e, 0x05, 0x80, 0x64, 0x24, 0x0d, 0x4f, 0x82, 0x5c,
0x74, 0xd7, 0x89, 0xb7, 0x74, 0x93, 0xff, 0x99, 0x07, 0x1b, 0x0f, 0xc3, 0x2c, 0x57, 0x4c, 0x68,
0xd4, 0xf1, 0xeb, 0xd0, 0x96, 0xec, 0xd7, 0x8f, 0xa3, 0xf1, 0x4c, 0x71, 0x24, 0x48, 0xd0, 0xd7,
0xa2, 0xf1, 0x8c, 0x7d, 0x16, 0x96, 0xc3, 0xc8, 0x46, 0x91, 0x32, 0xdc, 0xd1, 0x40, 0x42, 0x7a,
0x1d, 0xda, 0xc9, 0xf4, 0x70, 0x1c, 0x0e, 0x24, 0xca, 0x9c, 0xa4, 0x22, 0x41, 0x84, 0x80, 0x86,
0x9e, 0x5c, 0x89, 0xc4, 0x68, 0x12, 0x46, 0x5b, 0xc1, 0x10, 0x85, 0xdf, 0x86, 0x4d, 0x77, 0x81,
0x4a, 0x59, 0x6d, 0xc3, 0x92, 0xe2, 0xed, 0xac, 0xdb, 0xa6, 0xf3, 0x59, 0x51, 0xe7, 0xa3, 0x50,
0x7d, 0xd3, 0xcf, 0xff, 0xd5, 0x83, 0x26, 0x2a, 0x80, 0xb3, 0x95, 0x85, 0xad, 0xd3, 0xe7, 0x1c,
0x9d, 0x4e, 0x76, 0x3f, 0x5a, 0x45, 0x92, 0x25, 0xa4, 0xd8, 0x58, 0x90, 0xa2, 0x3f, 0x15, 0x83,
0x13, 0x92, 0x1d, 0xd3, 0x8f, 0x10, 0x94, 0x2c, 0x7c, 0x3a, 0x69, 0xb4, 0x14, 0x1c, 0xd3, 0xd6,
0x7d, 0x34, 0x72, 0xb1, 0xe8, 0xa3, 0x71, 0x5d, 0x58, 0x0c, 0xa3, 0xc3, 0x78, 0x1a, 0x0d, 0x49,
0x48, 0x96, 0x7c, 0xdd, 0xc4, 0xcb, 0x4e, 0xc8, 0x92, 0x0a, 0x27, 0x42, 0x49, 0x47, 0x01, 0xe0,
0x0c, 0x4d, 0xab, 0x8c, 0x14, 0x9e, 0x79, 0xc7, 0xde, 0x81, 0x75, 0x0b, 0xa6, 0x4e, 0xf0, 0x0d,
0x98, 0x4f, 0x10, 0xa0, 0x0c, 0x25, 0xcd, 0x5e, 0xa4, 0x29, 0x65, 0x0f, 0x5f, 0x43, 0xff, 0x39,
0x7f, 0x3f, 0x3a, 0x8a, 0x35, 0xa5, 0x9f, 0xcc, 0xa1, 0xc3, 0xab, 0x40, 0x8a, 0xd0, 0x35, 0x58,
0x0d, 0x87, 0x22, 0xca, 0xc3, 0x7c, 0xd6, 0x77, 0x2c, 0xb8, 0x32, 0x18, 0x5f, 0x98, 0x60, 0x1c,
0x06, 0x99, 0xd2, 0x61, 0xb2, 0xc1, 0x76, 0x61, 0x13, 0xd9, 0x5f, 0x73, 0xb4, 0xb9, 0x56, 0x69,
0x48, 0xd6, 0xf6, 0xa1, 0xc4, 0x22, 0x5c, 0x71, 0xa0, 0x19, 0x22, 0x35, 0x6d, 0x5d, 0x17, 0x9e,
0x9a, 0xa4, 0x84, 0x5b, 0x9e, 0x97, 0x22, 0x62, 0x00, 0x15, 0xef, 0x6d, 0x41, 0x1a, 0xb1, 0x65,
0xef, 0xcd, 0xf2, 0x00, 0x97, 0x2a, 0x1e, 0xe0, 0x35, 0x58, 0xcd, 0x66, 0xd1, 0x40, 0x0c, 0xfb,
0x79, 0x8c, 0xf3, 0x86, 0x11, 0xdd, 0xce, 0x92, 0x5f, 0x06, 0x93, 0xaf, 0x2a, 0xb2, 0x3c, 0x12,
0x39, 0xa9, 0xae, 0x25, 0x5f, 0x37, 0xf1, 0x15, 0x20, 0x14, 0xc9, 0xd4, 0x2d, 0x5f, 0xb5, 0xf0,
0xa9, 0x9c, 0xa6, 0x61, 0xd6, 0xed, 0x10, 0x94, 0x7e, 0xb3, 0x2f, 0xc0, 0xf9, 0x43, 0xf4, 0xac,
0x8e, 0x45, 0x30, 0x14, 0x29, 0xdd, 0xbe, 0x74, 0x2c, 0xa5, 0x06, 0xaa, 0xef, 0xc4, 0xb9, 0x4f,
0x44, 0x9a, 0x85, 0x71, 0x44, 0xba, 0xa7, 0xe5, 0xeb, 0x26, 0xff, 0x84, 0x5e, 0x74, 0xe3, 0xf2,
0x3e, 0x21, 0x75, 0xc4, 0x5e, 0x83, 0x96, 0xdc, 0x63, 0x76, 0x1c, 0x28, 0x23, 0x63, 0x89, 0x00,
0x07, 0xc7, 0x01, 0x0a, 0xb0, 0x73, 0x6c, 0x0d, 0xb2, 0x1c, 0xdb, 0x04, 0xdb, 0x93, 0xa7, 0xf6,
0x26, 0xac, 0x68, 0x67, 0x3a, 0xeb, 0x8f, 0xc5, 0x51, 0xae, 0x1d, 0x84, 0x68, 0x3a, 0xc1, 0xe9,
0xb2, 0x87, 0xe2, 0x28, 0xe7, 0x8f, 0x60, 0x5d, 0xc9, 0xed, 0xd7, 0x12, 0xa1, 0xa7, 0xfe, 0xa5,
0xf2, 0xa3, 0x26, 0xad, 0x8a, 0x0d, 0x57, 0xd0, 0xc9, 0xcb, 0x29, 0xbd, 0x74, 0xdc, 0x07, 0xa6,
0xba, 0xef, 0x8c, 0xe3, 0x4c, 0x28, 0x82, 0x1c, 0x3a, 0x83, 0x71, 0x9c, 0x69, 0x37, 0x44, 0x6d,
0xc7, 0x81, 0xe1, 0xf9, 0x64, 0xd3, 0xc1, 0x00, 0x35, 0x81, 0xd4, 0x69, 0xba, 0xc9, 0xff, 0xdc,
0x83, 0x0d, 0xa2, 0xa6, 0x35, 0x8c, 0xb1, 0x5d, 0x5f, 0x7d, 0x99, 0x9d, 0x81, 0xed, 0x9a, 0x6d,
0xc2, 0xfc, 0x51, 0x9c, 0x0e, 0x84, 0x9a, 0x49, 0x36, 0x7e, 0x7a, 0x6b, 0xbc, 0x59, 0xb1, 0xc6,
0x7f, 0xe2, 0xc1, 0x3a, 0x2d, 0xf5, 0x20, 0x0f, 0xf2, 0x69, 0xa6, 0xb6, 0xff, 0xcb, 0xb0, 0x8c,
0x5b, 0x15, 0x5a, 0x9c, 0xd4, 0x42, 0x37, 0x8d, 0xe4, 0x13, 0x54, 0x22, 0xef, 0x9d, 0xf3, 0x5d,
0x64, 0xf6, 0x65, 0xe8, 0xd8, 0x11, 0x11, 0x5a, 0x73, 0x7b, 0xf7, 0xa2, 0xde, 0x65, 0x85, 0x73,
0xf6, 0xce, 0xf9, 0xce, 0x00, 0x76, 0x13, 0x80, 0xcc, 0x0d, 0x22, 0xab, 0x5c, 0xd9, 0x8b, 0xee,
0x21, 0x59, 0x97, 0xb5, 0x77, 0xce, 0xb7, 0xd0, 0x6f, 0x2f, 0xc1, 0x82, 0x7c, 0x1f, 0xf9, 0x03,
0x58, 0x76, 0x56, 0xea, 0x78, 0x19, 0x1d, 0xe9, 0x65, 0x54, 0x9c, 0xd2, 0x46, 0xd5, 0x29, 0xe5,
0xff, 0xdc, 0x00, 0x86, 0xdc, 0x56, 0xba, 0x4e, 0x7c, 0xa0, 0xe3, 0xa1, 0x63, 0x6e, 0x75, 0x7c,
0x1b, 0xc4, 0xae, 0x03, 0xb3, 0x9a, 0x3a, 0xf6, 0x20, 0xdf, 0x8d, 0x9a, 0x1e, 0x54, 0x70, 0xd2,
0x56, 0xd2, 0x3e, 0xb0, 0x32, 0x2c, 0xe5, 0xbd, 0xd5, 0xf6, 0xe1, 0xd3, 0x90, 0x4c, 0xb3, 0x63,
0x34, 0x20, 0xb4, 0x41, 0xa6, 0xdb, 0x65, 0x06, 0x59, 0x78, 0x29, 0x83, 0x2c, 0x96, 0x19, 0xc4,
0x36, 0x09, 0x96, 0x1c, 0x93, 0x00, 0xed, 0xaf, 0x49, 0x18, 0x91, 0x5d, 0xd1, 0x9f, 0xe0, 0xec,
0xca, 0xfe, 0x72, 0x80, 0x6c, 0x1b, 0xd6, 0x94, 0x5d, 0x57, 0xd8, 0x1d, 0x40, 0x67, 0x5c, 0x81,
0xf3, 0x1f, 0x7b, 0xb0, 0x86, 0xe7, 0xec, 0xf0, 0xe2, 0x7b, 0x40, 0xa2, 0xf0, 0x8a, 0xac, 0xe8,
0xe0, 0xfe, 0xfc, 0x9c, 0xf8, 0x2e, 0xb4, 0x88, 0x60, 0x9c, 0x88, 0x48, 0x31, 0x62, 0xd7, 0x65,
0xc4, 0x42, 0x0b, 0xed, 0x9d, 0xf3, 0x0b, 0x64, 0x8b, 0x0d, 0xff, 0xce, 0x83, 0xb6, 0x5a, 0xe6,
0xcf, 0xec, 0x4b, 0xf4, 0x60, 0x09, 0x39, 0xd2, 0x32, 0xd8, 0x4d, 0x1b, 0x5f, 0x93, 0x09, 0x3a,
0x6c, 0xf8, 0x7c, 0x3a, 0x7e, 0x44, 0x19, 0x8c, 0x6f, 0x21, 0x29, 0xdc, 0xac, 0x9f, 0x87, 0xe3,
0xbe, 0xee, 0x55, 0x01, 0xc8, 0xba, 0x2e, 0xd4, 0x3b, 0x59, 0x1e, 0x8c, 0x84, 0x7a, 0xe6, 0x64,
0x03, 0x1d, 0x26, 0xb5, 0xa1, 0x92, 0x39, 0xc8, 0x7f, 0x04, 0x70, 0xa1, 0xd2, 0x65, 0xc2, 0xdd,
0xca, 0x40, 0x1e, 0x87, 0x93, 0xc3, 0xd8, 0xd8, 0xda, 0x9e, 0x6d, 0x3b, 0x3b, 0x5d, 0x6c, 0x04,
0xe7, 0xf5, 0x7b, 0x8e, 0x67, 0x5a, 0xbc, 0xde, 0x0d, 0x32, 0x44, 0xde, 0x76, 0x79, 0xa0, 0x3c,
0xa1, 0x86, 0xdb, 0x92, 0x5b, 0x4f, 0x8f, 0x1d, 0x43, 0xd7, 0x18, 0x0e, 0x4a, 0xc5, 0x5b, 0xc6,
0x05, 0xce, 0xf5, 0xd6, 0x4b, 0xe6, 0x22, 0x7d, 0x34, 0xd4, 0xd3, 0x9c, 0x49, 0x8d, 0xcd, 0xe0,
0xb2, 0xee, 0x23, 0x1d, 0x5e, 0x9d, 0xaf, 0xf9, 0x4a, 0x7b, 0xbb, 0x8f, 0x83, 0xdd, 0x49, 0x5f,
0x42, 0xb8, 0xf7, 0x23, 0x0f, 0x56, 0x5c, 0x72, 0xc8, 0x3a, 0x4a, 0x08, 0xb5, 0x32, 0xd2, 0x06,
0x59, 0x09, 0x5c, 0x75, 0x1b, 0x1b, 0x75, 0x6e, 0xa3, 0xed, 0x1c, 0xce, 0xbd, 0xcc, 0x39, 0x6c,
0xbe, 0x9a, 0x73, 0x38, 0x5f, 0xe7, 0x1c, 0xf6, 0xfe, 0xc3, 0x03, 0x56, 0xbd, 0x5f, 0xf6, 0x40,
0xfa, 0xad, 0x91, 0x18, 0x2b, 0x3d, 0xf1, 0x0b, 0xaf, 0xc6, 0x23, 0xfa, 0x0c, 0xf5, 0x68, 0x64,
0x56, 0x5b, 0x11, 0xd8, 0x66, 0xcb, 0xb2, 0x5f, 0xd7, 0x55, 0x72, 0x57, 0x9b, 0x2f, 0x77, 0x57,
0xe7, 0x5f, 0xee, 0xae, 0x2e, 0x94, 0xdd, 0xd5, 0xde, 0x6f, 0xc1, 0xb2, 0x73, 0xeb, 0xff, 0x73,
0x3b, 0x2e, 0x9b, 0x3c, 0xf2, 0x82, 0x1d, 0x58, 0xef, 0xdf, 0x1a, 0xc0, 0xaa, 0x9c, 0xf7, 0x7f,
0xba, 0x06, 0xe2, 0x23, 0x47, 0x81, 0xcc, 0x29, 0x3e, 0x72, 0x54, 0xc7, 0xff, 0xa6, 0x52, 0x7c,
0x0b, 0xd6, 0x53, 0x31, 0x88, 0x4f, 0x28, 0x09, 0xe7, 0x86, 0x3a, 0xaa, 0x1d, 0x68, 0xf4, 0xb9,
0x4e, 0xfa, 0x92, 0x93, 0x33, 0xb1, 0x5e, 0x86, 0x92, 0xaf, 0xce, 0xb7, 0x60, 0x53, 0xa6, 0xb2,
0x6e, 0x4b, 0x52, 0x5a, 0xc9, 0x7e, 0xcf, 0x83, 0xf3, 0xa5, 0x8e, 0x22, 0xb1, 0x20, 0xf5, 0xa8,
0xab, 0x5c, 0x5d, 0x20, 0xae, 0x5f, 0x31, 0xb0, 0xb5, 0x7e, 0xf9, 0xde, 0x54, 0x3b, 0xf0, 0x7c,
0xa6, 0x51, 0x15, 0x5f, 0x9e, 0x7a, 0x5d, 0x17, 0xbf, 0x00, 0xe7, 0xd5, 0xcd, 0x96, 0x16, 0x7e,
0x04, 0x5b, 0xe5, 0x8e, 0x22, 0x52, 0xea, 0x2e, 0x59, 0x37, 0xd1, 0x24, 0x72, 0x74, 0xb6, 0xbb,
0xde, 0xda, 0x3e, 0xfe, 0x9b, 0xc0, 0xbe, 0x3e, 0x15, 0xe9, 0x8c, 0xd2, 0x1e, 0x26, 0x54, 0x71,
0xa1, 0xec, 0xd3, 0x2f, 0x24, 0xd3, 0xc3, 0xaf, 0x8a, 0x99, 0xce, 0x2b, 0x35, 0x8a, 0xbc, 0xd2,
0x67, 0x00, 0xd0, 0x15, 0xa1, 0x3c, 0x89, 0xce, 0xf4, 0xa1, 0x0f, 0x28, 0x09, 0xf2, 0x9b, 0xb0,
0xe1, 0xd0, 0x37, 0xa7, 0xbf, 0xa0, 0x46, 0x48, 0x47, 0xd9, 0xcd, 0xbe, 0xa8, 0x3e, 0xfe, 0xef,
0x1e, 0xcc, 0xed, 0xc5, 0x89, 0x1d, 0x62, 0xf3, 0xdc, 0x10, 0x9b, 0xd2, 0xb5, 0x7d, 0xa3, 0x4a,
0x1b, 0x4a, 0x53, 0xd8, 0x40, 0xb6, 0x0d, 0x2b, 0xc1, 0x24, 0x47, 0x57, 0xf1, 0x28, 0x4e, 0x4f,
0x83, 0x74, 0x28, 0xaf, 0xe4, 0x76, 0xa3, 0xeb, 0xf9, 0xa5, 0x1e, 0xb6, 0x09, 0x73, 0x46, 0x29,
0x11, 0x02, 0x36, 0xd1, 0xd8, 0xa0, 0x48, 0xe3, 0x4c, 0x79, 0xb9, 0xaa, 0x85, 0x37, 0xee, 0x8e,
0x97, 0xe6, 0x9d, 0xe4, 0xf0, 0xba, 0x2e, 0xd4, 0xfb, 0xa8, 0xa3, 0x08, 0x4d, 0x85, 0x27, 0x74,
0x9b, 0xff, 0x8b, 0x07, 0xf3, 0x74, 0x02, 0x28, 0x93, 0x92, 0x11, 0x29, 0x91, 0x49, 0x61, 0x51,
0x4f, 0xca, 0x64, 0x09, 0xcc, 0xb8, 0x93, 0xde, 0x6c, 0x98, 0x65, 0xdb, 0x29, 0xce, 0x2b, 0xd0,
0x92, 0x2d, 0x93, 0x13, 0x24, 0x94, 0x02, 0xc8, 0x2e, 0x43, 0xf3, 0x38, 0x4e, 0xf4, 0x8b, 0x0a,
0x3a, 0x2a, 0x16, 0x27, 0x3e, 0xc1, 0x8b, 0xf5, 0x20, 0x3d, 0xb9, 0x78, 0xa9, 0x93, 0xcb, 0x60,
0x7c, 0x95, 0x0c, 0x59, 0xfb, 0x30, 0x4a, 0x50, 0xbe, 0x0d, 0xab, 0x8f, 0xe2, 0xa1, 0xb0, 0xe2,
0x20, 0x67, 0x72, 0x1d, 0xff, 0x6d, 0x0f, 0x96, 0x34, 0x32, 0xbb, 0x06, 0x4d, 0x7c, 0x6a, 0x4b,
0xc6, 0xad, 0x89, 0x86, 0x23, 0x9e, 0x4f, 0x18, 0xa8, 0x22, 0xc9, 0x4b, 0x2e, 0x4c, 0x21, 0xed,
0x23, 0x17, 0x46, 0x86, 0x59, 0x6e, 0xe9, 0x31, 0x2e, 0x41, 0xf9, 0x5f, 0x78, 0xb0, 0xec, 0xcc,
0x81, 0x2e, 0xcd, 0x38, 0xc8, 0x72, 0x15, 0x61, 0x54, 0xd7, 0x63, 0x83, 0xec, 0xc8, 0x58, 0xc3,
0x8d, 0x8c, 0x99, 0x98, 0xcd, 0x9c, 0x1d, 0xb3, 0xb9, 0x01, 0xad, 0x22, 0x09, 0xdd, 0x74, 0x54,
0x1f, 0xce, 0xa8, 0xe3, 0xfc, 0x05, 0x12, 0xd2, 0x19, 0xc4, 0xe3, 0x38, 0x55, 0x39, 0x5a, 0xd9,
0xe0, 0x37, 0xa1, 0x6d, 0xe1, 0xe3, 0x32, 0x22, 0x91, 0x9f, 0xc6, 0xe9, 0x53, 0x1d, 0xa0, 0x53,
0x4d, 0x93, 0xce, 0x6a, 0x14, 0xe9, 0x2c, 0xfe, 0x97, 0x1e, 0x2c, 0x23, 0x0f, 0x86, 0xd1, 0x68,
0x3f, 0x1e, 0x87, 0x83, 0x19, 0xdd, 0xbd, 0x66, 0x37, 0x95, 0xbc, 0xd5, 0xbc, 0xe8, 0x82, 0x91,
0xb7, 0xb5, 0x47, 0xa3, 0x04, 0xd1, 0xb4, 0x51, 0x52, 0x91, 0xcf, 0x0f, 0x83, 0x4c, 0x31, 0xbf,
0x7a, 0x8b, 0x1c, 0x20, 0xca, 0x13, 0x02, 0xd2, 0x20, 0x17, 0xfd, 0x49, 0x38, 0x1e, 0x87, 0x12,
0x57, 0x9a, 0x08, 0x75, 0x5d, 0xfc, 0x87, 0x0d, 0x68, 0x2b, 0x4d, 0x79, 0x6f, 0x38, 0x92, 0xa1,
0x70, 0x65, 0x68, 0x19, 0x75, 0x61, 0x41, 0x74, 0xbf, 0x63, 0x9a, 0x59, 0x90, 0xf2, 0xb5, 0xce,
0x55, 0xaf, 0xf5, 0x12, 0xb4, 0x90, 0xbd, 0xde, 0x26, 0x1b, 0x50, 0xd6, 0x2c, 0x14, 0x00, 0xdd,
0xbb, 0x4b, 0xbd, 0xf3, 0x45, 0x2f, 0x01, 0x1c, 0xab, 0x6f, 0xa1, 0x64, 0xf5, 0xbd, 0x0b, 0x1d,
0x45, 0x86, 0xce, 0x9d, 0xb4, 0x43, 0xc1, 0xe0, 0xce, 0x9d, 0xf8, 0x0e, 0xa6, 0x1e, 0xb9, 0xab,
0x47, 0x2e, 0xbd, 0x6c, 0xa4, 0xc6, 0xa4, 0xcc, 0x90, 0x3c, 0x9b, 0x07, 0x69, 0x90, 0x1c, 0xeb,
0xd7, 0x67, 0x68, 0xd2, 0xdd, 0x04, 0x66, 0xdb, 0x30, 0x8f, 0xc3, 0xb4, 0xb6, 0xae, 0x17, 0x3a,
0x89, 0xc2, 0xae, 0xc1, 0xbc, 0x18, 0x8e, 0x84, 0xf6, 0x3c, 0x98, 0xeb, 0x03, 0xe2, 0x1d, 0xf9,
0x12, 0x01, 0x55, 0x00, 0x42, 0x4b, 0x2a, 0xc0, 0xd5, 0xf4, 0x0b, 0xd8, 0x7c, 0x7f, 0xc8, 0x37,
0x81, 0x3d, 0x92, 0x5c, 0x6b, 0x47, 0x4e, 0x7f, 0x6f, 0x0e, 0xda, 0x16, 0x18, 0xa5, 0x79, 0x84,
0x0b, 0xee, 0x0f, 0xc3, 0x60, 0x22, 0x72, 0x91, 0x2a, 0x4e, 0x2d, 0x41, 0x11, 0x2f, 0x38, 0x19,
0xf5, 0xe3, 0x69, 0xde, 0x1f, 0x8a, 0x51, 0x2a, 0xe4, 0x1b, 0x89, 0x8f, 0x81, 0x03, 0x45, 0xbc,
0x49, 0xf0, 0xcc, 0xc6, 0x93, 0xfc, 0x50, 0x82, 0xea, 0x38, 0xa8, 0x3c, 0xa3, 0x66, 0x11, 0x07,
0x95, 0x27, 0x52, 0xd6, 0x43, 0xf3, 0x35, 0x7a, 0xe8, 0x1d, 0xd8, 0x92, 0x1a, 0x47, 0xc9, 0x66,
0xbf, 0xc4, 0x26, 0x67, 0xf4, 0xb2, 0x6d, 0x58, 0xc3, 0x35, 0x6b, 0x06, 0xcf, 0xc2, 0x4f, 0x64,
0x64, 0xc2, 0xf3, 0x2b, 0x70, 0xc4, 0x45, 0x71, 0x74, 0x70, 0x65, 0xae, 0xa8, 0x02, 0x27, 0xdc,
0xe0, 0x99, 0x8b, 0xdb, 0x52, 0xb8, 0x25, 0x38, 0x5f, 0x86, 0xf6, 0x41, 0x1e, 0x27, 0xfa, 0x52,
0x56, 0xa0, 0x23, 0x9b, 0x2a, 0x33, 0xf8, 0x1a, 0x5c, 0x24, 0x2e, 0x7a, 0x1c, 0x27, 0xf1, 0x38,
0x1e, 0xcd, 0x0e, 0xa6, 0x87, 0xd9, 0x20, 0x0d, 0x13, 0xf4, 0x08, 0xf8, 0xdf, 0x7a, 0xb0, 0xe1,
0xf4, 0xaa, 0x50, 0xc6, 0x17, 0x24, 0x4b, 0x9b, 0x94, 0x8e, 0x64, 0xbc, 0x75, 0x4b, 0x1d, 0x4a,
0x44, 0x19, 0x44, 0x7a, 0xa2, 0xb2, 0x3c, 0xb7, 0x60, 0x55, 0xaf, 0x4c, 0x0f, 0x94, 0x5c, 0xd8,
0xad, 0x72, 0xa1, 0x1a, 0xbf, 0xa2, 0x06, 0x68, 0x12, 0xbf, 0x22, 0xed, 0x6a, 0x31, 0xa4, 0x3d,
0x6a, 0x9f, 0xb6, 0xa7, 0xc7, 0xdb, 0xc6, 0xbc, 0x5e, 0xc1, 0xc0, 0x00, 0x33, 0xfe, 0x07, 0x1e,
0x40, 0xb1, 0x3a, 0x64, 0x8c, 0x42, 0xa5, 0xcb, 0x62, 0x35, 0x4b, 0x7d, 0xbf, 0x01, 0x1d, 0x13,
0xcd, 0x2f, 0x5e, 0x89, 0xb6, 0x86, 0xa1, 0xc1, 0x75, 0x15, 0x56, 0x47, 0xe3, 0xf8, 0x90, 0x9e,
0x58, 0x4a, 0x35, 0x67, 0x2a, 0x3f, 0xba, 0x22, 0xc1, 0xf7, 0x15, 0xb4, 0x78, 0x52, 0x9a, 0xd6,
0x93, 0xc2, 0xbf, 0xd3, 0x30, 0x31, 0xe0, 0x62, 0xcf, 0x67, 0x4a, 0x19, 0xdb, 0xad, 0x28, 0xc7,
0x33, 0x42, 0xae, 0x14, 0xbd, 0xd9, 0x7f, 0xa9, 0x23, 0x7b, 0x13, 0x56, 0x52, 0xa9, 0x7d, 0xb4,
0x6a, 0x6a, 0xbe, 0x40, 0x35, 0x2d, 0xa7, 0xce, 0xbb, 0xf3, 0xff, 0x60, 0x2d, 0x18, 0x9e, 0x88,
0x34, 0x0f, 0xc9, 0xa3, 0xa1, 0x47, 0x5f, 0x2a, 0xd4, 0x55, 0x0b, 0x4e, 0x6f, 0xf1, 0x55, 0x58,
0x55, 0x39, 0x69, 0x83, 0xa9, 0x2a, 0x91, 0x0a, 0x30, 0x22, 0xf2, 0x1f, 0xe8, 0x70, 0xb3, 0x7b,
0x87, 0x67, 0x9f, 0x88, 0xbd, 0xbb, 0x46, 0x69, 0x77, 0x9f, 0x55, 0xa1, 0xdf, 0xa1, 0x76, 0x9b,
0x54, 0x10, 0x5e, 0x02, 0x55, 0xa8, 0xde, 0x3d, 0xd2, 0xe6, 0xab, 0x1c, 0x29, 0xff, 0xde, 0x1c,
0x2c, 0xbe, 0x1f, 0x9d, 0xc4, 0xe1, 0x80, 0x02, 0xb1, 0x13, 0x31, 0x89, 0x75, 0xb9, 0x07, 0xfe,
0xc6, 0x17, 0x9d, 0x52, 0x9f, 0x49, 0xae, 0x22, 0xa9, 0xba, 0x89, 0xaf, 0x5b, 0x5a, 0x94, 0x40,
0x49, 0x4e, 0xb1, 0x20, 0x68, 0xc7, 0xa6, 0x76, 0xfd, 0x97, 0x6a, 0x15, 0xf5, 0x32, 0xf3, 0x56,
0xbd, 0x0c, 0x85, 0xed, 0x65, 0x56, 0x97, 0x8e, 0x73, 0xc9, 0xd7, 0x4d, 0xb2, 0xbb, 0x53, 0x21,
0x9d, 0x7a, 0x7a, 0x27, 0x17, 0x95, 0xdd, 0x6d, 0x03, 0xf1, 0x2d, 0x95, 0x03, 0x24, 0x8e, 0xd4,
0x35, 0x36, 0x08, 0x6d, 0x8b, 0x72, 0x09, 0x59, 0x4b, 0x5e, 0x71, 0x09, 0x8c, 0x0a, 0x69, 0x28,
0x8c, 0xde, 0x90, 0x7b, 0x00, 0x59, 0xe2, 0x55, 0x86, 0x5b, 0xd6, 0xba, 0xcc, 0x4e, 0x6b, 0x6b,
0x1d, 0x6d, 0x90, 0x60, 0x3c, 0x3e, 0x0c, 0x06, 0x4f, 0xa9, 0xb0, 0x8f, 0x92, 0xd1, 0x2d, 0xdf,
0x05, 0xe2, 0xaa, 0xa9, 0x4e, 0x4d, 0x91, 0x58, 0x96, 0xc9, 0x64, 0x0b, 0xc4, 0xbf, 0x01, 0xec,
0xd6, 0x70, 0xa8, 0x6e, 0xc8, 0xf8, 0x34, 0xc5, 0xd9, 0x7a, 0xce, 0xd9, 0xd6, 0xec, 0xb1, 0x51,
0xbb, 0x47, 0x7e, 0x0f, 0xda, 0xfb, 0x56, 0x3d, 0x1e, 0x5d, 0xa6, 0xae, 0xc4, 0x53, 0x0c, 0x60,
0x41, 0xac, 0x09, 0x1b, 0xf6, 0x84, 0xfc, 0x17, 0x81, 0x3d, 0x0c, 0xb3, 0xdc, 0xac, 0x4f, 0x1e,
0xe0, 0x1b, 0xd0, 0x31, 0x1e, 0x60, 0x91, 0x7f, 0x6e, 0x2b, 0x18, 0xe5, 0x85, 0x6f, 0xc9, 0xc4,
0x75, 0x79, 0x63, 0xdb, 0xb0, 0x14, 0x4a, 0x90, 0xd6, 0xc3, 0x3a, 0x2d, 0xac, 0x31, 0x4d, 0x3f,
0x1a, 0x14, 0x0a, 0xe8, 0xa8, 0xf9, 0x1f, 0x7a, 0xb0, 0xa8, 0xb6, 0x86, 0xcf, 0xa1, 0x53, 0x89,
0x28, 0x37, 0xe6, 0xc0, 0xea, 0xeb, 0xb7, 0xaa, 0x5c, 0x37, 0x57, 0xc7, 0x75, 0x0c, 0x9a, 0x49,
0x90, 0x1f, 0x93, 0x05, 0xdd, 0xf2, 0xe9, 0x37, 0xfa, 0xad, 0xe8, 0xd5, 0x49, 0xee, 0x26, 0x8f,
0xae, 0xae, 0x64, 0x50, 0xea, 0x8c, 0x0a, 0x1c, 0x37, 0x45, 0xa9, 0x5e, 0x09, 0x37, 0x11, 0x5c,
0x95, 0x46, 0x2f, 0xc0, 0xc5, 0x79, 0x29, 0x12, 0xe5, 0xf3, 0x52, 0xa8, 0xbe, 0xe9, 0xe7, 0x3d,
0xe8, 0xde, 0x15, 0x63, 0x91, 0x8b, 0x5b, 0xe3, 0x71, 0x99, 0xfe, 0x6b, 0x70, 0xb1, 0xa6, 0x4f,
0xbd, 0xaa, 0xf7, 0x61, 0xfd, 0xae, 0x38, 0x9c, 0x8e, 0x1e, 0x8a, 0x93, 0x22, 0xcd, 0xc2, 0xa0,
0x99, 0x1d, 0xc7, 0xa7, 0xea, 0x6e, 0xe9, 0x37, 0x3a, 0xe8, 0x63, 0xc4, 0xe9, 0x67, 0x89, 0x18,
0xe8, 0xca, 0x25, 0x82, 0x1c, 0x24, 0x62, 0xc0, 0xdf, 0x01, 0x66, 0xd3, 0x51, 0x5b, 0x40, 0xc9,
0x9d, 0x1e, 0xf6, 0xb3, 0x59, 0x96, 0x8b, 0x89, 0x2e, 0xc9, 0xb2, 0x41, 0xfc, 0x2a, 0x74, 0xf6,
0x83, 0x99, 0x2f, 0x3e, 0x56, 0xc5, 0xa0, 0xe8, 0xbc, 0x05, 0x33, 0x64, 0x65, 0xe3, 0xbc, 0x51,
0x37, 0xff, 0x9b, 0x06, 0x2c, 0x48, 0x4c, 0xa4, 0x3a, 0x14, 0x59, 0x1e, 0x46, 0x32, 0xc5, 0xa0,
0xa8, 0x5a, 0xa0, 0x0a, 0x6f, 0x34, 0x6a, 0x78, 0x43, 0x99, 0x53, 0xba, 0x0a, 0x44, 0x31, 0x81,
0x03, 0xc3, 0x77, 0xb7, 0x48, 0xdd, 0x4a, 0xef, 0xa1, 0x00, 0x94, 0xbc, 0xf9, 0x42, 0x3f, 0xc8,
0xf5, 0x69, 0xa6, 0x55, 0xec, 0x60, 0x83, 0x6a, 0xb5, 0xd0, 0xa2, 0xe4, 0x9a, 0x8a, 0x16, 0xaa,
0x68, 0x9b, 0xa5, 0x57, 0xd0, 0x36, 0xd2, 0xc6, 0x72, 0xb4, 0x0d, 0x83, 0xb5, 0xfb, 0x42, 0xf8,
0x22, 0x89, 0x53, 0x5d, 0x51, 0xcb, 0xbf, 0xeb, 0xc1, 0x9a, 0x7a, 0x3d, 0x4c, 0x1f, 0x7b, 0xc3,
0x79, 0x6a, 0xbc, 0xba, 0xa8, 0xf3, 0x9b, 0xb0, 0x4c, 0xce, 0x96, 0x09, 0x41, 0xa8, 0x78, 0x89,
0x03, 0xc4, 0x35, 0xe9, 0x38, 0xea, 0x24, 0x1c, 0xab, 0x03, 0xb6, 0x41, 0x3a, 0x8a, 0x81, 0xce,
0x18, 0x1d, 0xaf, 0xe7, 0x9b, 0x36, 0xff, 0x6b, 0x0f, 0xd6, 0xad, 0x05, 0x2b, 0x8e, 0xba, 0x09,
0x3a, 0x4d, 0x2b, 0x23, 0x15, 0x52, 0x30, 0x2e, 0xb8, 0x2f, 0x61, 0x31, 0xcc, 0x41, 0xa6, 0x8b,
0x09, 0x66, 0xb4, 0xc0, 0x6c, 0x2a, 0x6b, 0xdb, 0x9a, 0xbe, 0x0d, 0x42, 0xa6, 0x38, 0x15, 0xe2,
0xa9, 0x41, 0x99, 0x23, 0x14, 0x07, 0x46, 0x59, 0xb8, 0x38, 0xca, 0x8f, 0x0d, 0x92, 0x2c, 0x3c,
0x71, 0x81, 0xfc, 0xef, 0x3d, 0xd8, 0x90, 0x16, 0x88, 0xb2, 0xef, 0x4c, 0x51, 0xdc, 0x82, 0x34,
0xb9, 0xa4, 0x74, 0xed, 0x9d, 0xf3, 0x55, 0x9b, 0x7d, 0xf1, 0x15, 0xad, 0x26, 0x93, 0x7d, 0x3d,
0xe3, 0x2e, 0xe6, 0xea, 0xee, 0xe2, 0x05, 0x27, 0x5d, 0xe7, 0x99, 0xcf, 0xd7, 0x7a, 0xe6, 0xb7,
0x17, 0x61, 0x3e, 0x1b, 0xc4, 0x89, 0xe0, 0x5b, 0xb0, 0xe9, 0x6e, 0x4e, 0xa9, 0x93, 0xef, 0x7b,
0xd0, 0xbd, 0x2f, 0xe3, 0x54, 0x61, 0x34, 0xda, 0x0b, 0xb3, 0x3c, 0x4e, 0x4d, 0x15, 0xf0, 0x65,
0x80, 0x2c, 0x0f, 0xd2, 0x5c, 0x56, 0xc7, 0x28, 0x9f, 0xba, 0x80, 0xe0, 0x1a, 0x45, 0x34, 0x94,
0xbd, 0xf2, 0x6e, 0x4c, 0x1b, 0x2f, 0x86, 0x32, 0xc3, 0xfd, 0xf8, 0xe8, 0x28, 0x13, 0xc6, 0x46,
0xb2, 0x61, 0xe8, 0x66, 0xa1, 0xf4, 0xa2, 0x63, 0x21, 0x4e, 0x48, 0x6d, 0x4a, 0x1f, 0xaa, 0x04,
0xe5, 0x7f, 0xe5, 0xc1, 0x6a, 0xb1, 0xc8, 0x7b, 0x08, 0x74, 0x25, 0x5d, 0x2e, 0xcd, 0x92, 0x74,
0xed, 0xed, 0x87, 0xc3, 0x7e, 0x18, 0xa9, 0xb5, 0x59, 0x10, 0x92, 0x3e, 0xd5, 0x8a, 0xa7, 0xba,
0x12, 0xc9, 0x06, 0xc9, 0x34, 0x63, 0x8e, 0xa3, 0x65, 0x19, 0x92, 0x6a, 0x51, 0x71, 0xd3, 0x24,
0xa7, 0x51, 0x0b, 0x32, 0x26, 0xa9, 0x9a, 0xfa, 0xad, 0x59, 0x24, 0x28, 0xfe, 0xe4, 0x7f, 0xe8,
0xc1, 0xc5, 0x9a, 0xc3, 0x55, 0x92, 0x71, 0x17, 0xd6, 0x8f, 0x4c, 0xa7, 0x3e, 0x00, 0x29, 0x1e,
0x5b, 0x8a, 0x8b, 0x4a, 0x9b, 0xf6, 0xab, 0x03, 0xd8, 0x5b, 0xb0, 0x4e, 0x41, 0x0a, 0x79, 0xa4,
0x4e, 0x86, 0xbe, 0xda, 0xb1, 0xfb, 0x83, 0x06, 0xac, 0xc8, 0xb8, 0xb8, 0xfc, 0x0e, 0x44, 0xa4,
0xec, 0x03, 0x58, 0x54, 0x5f, 0xdd, 0xb0, 0xf3, 0x6a, 0x5a, 0xf7, 0x3b, 0x9f, 0xde, 0x56, 0x19,
0xac, 0x78, 0x67, 0xe3, 0x77, 0x7f, 0xfc, 0x4f, 0x7f, 0xd4, 0x58, 0x66, 0xed, 0x9d, 0x93, 0xb7,
0x77, 0x46, 0x22, 0xca, 0x90, 0xc6, 0xaf, 0x03, 0x14, 0x1f, 0xae, 0xb0, 0xae, 0x31, 0x18, 0x4a,
0x1f, 0xda, 0xf4, 0x2e, 0xd6, 0xf4, 0x28, 0xba, 0x17, 0x89, 0xee, 0x06, 0x5f, 0x41, 0xba, 0x61,
0x14, 0xe6, 0xf2, 0x2b, 0x96, 0xf7, 0xbc, 0x6d, 0x36, 0x84, 0x8e, 0xfd, 0x01, 0x0b, 0xd3, 0xfe,
0x59, 0xcd, 0x57, 0x31, 0xbd, 0xd7, 0x6a, 0xfb, 0xb4, 0x73, 0x4a, 0x73, 0x9c, 0xe7, 0x6b, 0x38,
0xc7, 0x94, 0x30, 0xcc, 0x2c, 0xbb, 0xff, 0xf0, 0x1a, 0xb4, 0x4c, 0x8c, 0x83, 0x7d, 0x1b, 0x96,
0x9d, 0x54, 0x02, 0xd3, 0x84, 0xeb, 0x32, 0x0f, 0xbd, 0x4b, 0xf5, 0x9d, 0x6a, 0xda, 0xcb, 0x34,
0x6d, 0x97, 0x6d, 0xe1, 0xb4, 0x2a, 0x16, 0xbf, 0x43, 0x09, 0x14, 0x59, 0xcc, 0xf4, 0x14, 0x56,
0xdc, 0xf0, 0x3f, 0xbb, 0xe4, 0x2a, 0x94, 0xd2, 0x6c, 0x9f, 0x39, 0xa3, 0x57, 0x4d, 0x77, 0x89,
0xa6, 0xdb, 0x62, 0x9b, 0xf6, 0x74, 0x26, 0xf6, 0x20, 0xa8, 0xfc, 0xcc, 0xfe, 0xb2, 0x85, 0x7d,
0xc6, 0x5c, 0x75, 0xdd, 0x17, 0x2f, 0xe6, 0xd2, 0xaa, 0x9f, 0xbd, 0xf0, 0x2e, 0x4d, 0xc5, 0x18,
0x1d, 0xa8, 0xfd, 0x61, 0x0b, 0xfb, 0x08, 0x5a, 0xa6, 0x9a, 0x9d, 0x5d, 0xb0, 0x3e, 0x21, 0xb0,
0x4b, 0xec, 0x7b, 0xdd, 0x6a, 0x47, 0xdd, 0x55, 0xd9, 0x94, 0x91, 0x21, 0x1e, 0xc2, 0x79, 0x65,
0x70, 0x1e, 0x8a, 0x9f, 0x66, 0x27, 0x35, 0xdf, 0xe3, 0xdc, 0xf0, 0xd8, 0x4d, 0x58, 0xd2, 0x1f,
0x09, 0xb0, 0xad, 0xfa, 0x8f, 0x1d, 0x7a, 0x17, 0x2a, 0x70, 0x25, 0xcf, 0xb7, 0x00, 0x8a, 0x02,
0x77, 0xc3, 0xf9, 0x95, 0xb2, 0x7b, 0x73, 0x88, 0x35, 0xd5, 0xf0, 0x23, 0x2a, 0xe7, 0x77, 0xeb,
0xe7, 0xd9, 0xeb, 0x05, 0x7e, 0x6d, 0x65, 0xfd, 0x0b, 0x08, 0xf2, 0x2d, 0x3a, 0xbb, 0x35, 0x46,
0xa2, 0x14, 0x89, 0x53, 0x5d, 0x88, 0x79, 0x17, 0xda, 0x56, 0xd1, 0x3c, 0xd3, 0x14, 0xaa, 0x05,
0xf7, 0xbd, 0x5e, 0x5d, 0x97, 0x5a, 0xee, 0x57, 0x60, 0xd9, 0xa9, 0x7e, 0x37, 0x92, 0x51, 0x57,
0x5b, 0x6f, 0x24, 0xa3, 0xbe, 0x60, 0xfe, 0x9b, 0xd0, 0xb6, 0x6a, 0xd5, 0x99, 0x55, 0x80, 0x52,
0xaa, 0x52, 0x37, 0x2b, 0xaa, 0x2b, 0x6d, 0xdf, 0xa4, 0xfd, 0xae, 0xf0, 0x16, 0xee, 0x97, 0xaa,
0x11, 0x91, 0x49, 0xbe, 0x0d, 0x2b, 0x6e, 0xf5, 0xba, 0x91, 0xaa, 0xda, 0x3a, 0x78, 0x23, 0x55,
0x67, 0x94, 0xbc, 0x2b, 0x86, 0xdc, 0xde, 0x30, 0x93, 0xec, 0x7c, 0xaa, 0x22, 0xfc, 0xcf, 0xd9,
0xd7, 0x51, 0x75, 0xa8, 0xf2, 0x50, 0x56, 0xd4, 0xec, 0xbb, 0x45, 0xa4, 0x86, 0xdb, 0x2b, 0x95,
0xa4, 0x7c, 0x9d, 0x88, 0xb7, 0x59, 0xb1, 0x03, 0xa9, 0xa1, 0xa9, 0x4c, 0xd4, 0xd2, 0xd0, 0x76,
0x25, 0xa9, 0xa5, 0xa1, 0x9d, 0x6a, 0xd2, 0xb2, 0x86, 0xce, 0x43, 0xa4, 0x11, 0xc1, 0x6a, 0x29,
0xe9, 0x6c, 0x84, 0xa5, 0xbe, 0x64, 0xa5, 0x77, 0xf9, 0xc5, 0xb9, 0x6a, 0x57, 0xcd, 0x68, 0xf5,
0xb2, 0xa3, 0x2b, 0x8c, 0x7e, 0x03, 0x3a, 0x76, 0xd5, 0xb1, 0xd1, 0xd9, 0x35, 0xb5, 0xd2, 0x46,
0x67, 0xd7, 0x95, 0x29, 0xeb, 0xcb, 0x65, 0x1d, 0x7b, 0x1a, 0xf6, 0x4d, 0x58, 0xb5, 0xca, 0x1b,
0x0e, 0x66, 0xd1, 0xc0, 0x30, 0x4f, 0xb5, 0x20, 0xad, 0x57, 0x67, 0x9f, 0xf1, 0x0b, 0x44, 0x78,
0x9d, 0x3b, 0x84, 0x91, 0x71, 0xee, 0x40, 0xdb, 0x2e, 0x9d, 0x78, 0x01, 0xdd, 0x0b, 0x56, 0x97,
0x5d, 0x9b, 0x75, 0xc3, 0x63, 0x7f, 0xe2, 0x41, 0xc7, 0x2e, 0x75, 0x64, 0x4e, 0x50, 0xb1, 0x44,
0xa7, 0x6b, 0xf7, 0xd9, 0x84, 0xb8, 0x4f, 0x8b, 0x7c, 0xb8, 0xfd, 0x15, 0xe7, 0x90, 0x3f, 0x75,
0xec, 0xfc, 0xeb, 0xe5, 0x0f, 0xca, 0x9e, 0x97, 0x11, 0xec, 0xa2, 0xbd, 0xe7, 0x37, 0x3c, 0xf6,
0x9e, 0xfc, 0xe8, 0x50, 0xfb, 0xe8, 0xcc, 0x52, 0x6e, 0xe5, 0x23, 0xb3, 0xbf, 0xcf, 0xbb, 0xe6,
0xdd, 0xf0, 0xd8, 0xb7, 0xe4, 0x77, 0x63, 0x6a, 0x2c, 0x9d, 0xfc, 0xab, 0x8e, 0xe7, 0x6f, 0xd2,
0x6e, 0x2e, 0xf3, 0x8b, 0xce, 0x6e, 0xca, 0xda, 0x7d, 0x1f, 0xa0, 0x08, 0xb8, 0xb0, 0x52, 0xf4,
0xc1, 0xe8, 0xbd, 0x6a, 0x4c, 0xc6, 0xbd, 0x51, 0x1d, 0xa4, 0x40, 0x8a, 0x1f, 0x49, 0x66, 0x54,
0xf8, 0x99, 0xb9, 0xd2, 0x6a, 0xe0, 0xa4, 0xd7, 0xab, 0xeb, 0xaa, 0x63, 0x45, 0x4d, 0x9f, 0x3d,
0x81, 0xe5, 0x87, 0x71, 0xfc, 0x74, 0x9a, 0x98, 0x20, 0x9e, 0xeb, 0xff, 0xef, 0x05, 0xd9, 0x71,
0xaf, 0xb4, 0x0b, 0x7e, 0x85, 0x48, 0xf5, 0x58, 0xd7, 0x22, 0xb5, 0xf3, 0x69, 0x11, 0xee, 0x79,
0xce, 0x02, 0x58, 0x37, 0x6f, 0x9c, 0x59, 0x78, 0xcf, 0x25, 0x63, 0x47, 0x5d, 0x2a, 0x53, 0x38,
0x56, 0x87, 0x5e, 0xed, 0x4e, 0xa6, 0x69, 0xde, 0xf0, 0xd8, 0x3e, 0x74, 0xee, 0x8a, 0x41, 0x3c,
0x14, 0xca, 0x63, 0xdf, 0x28, 0x16, 0x6e, 0x5c, 0xfd, 0xde, 0xb2, 0x03, 0x74, 0xa5, 0x3e, 0x09,
0x66, 0xa9, 0xf8, 0x78, 0xe7, 0x53, 0x15, 0x0b, 0x78, 0xae, 0xa5, 0x5e, 0xc7, 0x2f, 0x1c, 0xa9,
0x2f, 0x05, 0x3c, 0x1c, 0xa9, 0xaf, 0x04, 0x3c, 0x9c, 0xa3, 0xd6, 0xf1, 0x13, 0x36, 0x86, 0xf5,
0x4a, 0x8c, 0xc4, 0xbc, 0x94, 0x67, 0x45, 0x56, 0x7a, 0x57, 0xce, 0x46, 0x70, 0x67, 0xdb, 0x76,
0x67, 0x3b, 0x80, 0xe5, 0xbb, 0x42, 0x1e, 0x96, 0x4c, 0x8c, 0xf5, 0x5c, 0x35, 0x62, 0x27, 0xd1,
0xca, 0x2a, 0x86, 0xfa, 0x5c, 0xb5, 0x4e, 0x59, 0x29, 0xf6, 0x11, 0xb4, 0x1f, 0x88, 0x5c, 0x67,
0xc2, 0x8c, 0xbd, 0x51, 0x4a, 0x8d, 0xf5, 0x6a, 0x12, 0x69, 0x2e, 0xcf, 0x10, 0xb5, 0x1d, 0x31,
0x1c, 0x09, 0x29, 0xec, 0xfd, 0x70, 0xf8, 0x9c, 0xfd, 0x2a, 0x11, 0x37, 0xc9, 0xf3, 0x2d, 0x2b,
0x81, 0x62, 0x13, 0x5f, 0x2d, 0xc1, 0xeb, 0x28, 0x47, 0xf1, 0x50, 0x58, 0x0f, 0x5c, 0x04, 0x6d,
0xab, 0xb2, 0xc3, 0x08, 0x50, 0xb5, 0x9a, 0xc4, 0x08, 0x50, 0x4d, 0x21, 0x08, 0xbf, 0x46, 0xf3,
0x70, 0x76, 0xa5, 0x98, 0x47, 0x16, 0x7f, 0x14, 0x33, 0xed, 0x7c, 0x1a, 0x4c, 0xf2, 0xe7, 0xec,
0x43, 0xfa, 0x6e, 0xc2, 0xce, 0xf6, 0x15, 0xf6, 0x4e, 0x39, 0x31, 0x68, 0x0e, 0xcb, 0xea, 0x72,
0x6d, 0x20, 0x39, 0x15, 0xbd, 0x83, 0x5f, 0x04, 0x38, 0xc8, 0xe3, 0xe4, 0x6e, 0x20, 0x26, 0x71,
0x54, 0x68, 0xae, 0x22, 0xa3, 0x55, 0x68, 0x2e, 0x2b, 0xad, 0xc5, 0x3e, 0xb4, 0x2c, 0x4e, 0x27,
0x59, 0xaa, 0x99, 0xeb, 0xcc, 0xa4, 0x97, 0x39, 0x90, 0x9a, 0xc4, 0xd7, 0x0d, 0x0f, 0xed, 0xc7,
0x22, 0x22, 0x67, 0xec, 0xc7, 0x4a, 0xb0, 0xcf, 0xa8, 0xbd, 0x9a, 0xf0, 0xdd, 0x3e, 0xb4, 0x8a,
0xb0, 0x90, 0x7e, 0x92, 0xca, 0x41, 0x24, 0xf3, 0xc6, 0x54, 0x82, 0x35, 0x7c, 0x8d, 0x8e, 0x0a,
0xd8, 0x12, 0x1e, 0x15, 0x45, 0x60, 0x42, 0xd8, 0x90, 0x0b, 0x34, 0x0f, 0x26, 0xe5, 0x68, 0xf4,
0x4e, 0x6a, 0x02, 0x26, 0x46, 0x9a, 0x6b, 0xe3, 0x0d, 0x8e, 0x6f, 0x87, 0xdc, 0x2a, 0xf3, 0x43,
0xa8, 0x9a, 0x27, 0xb0, 0x5e, 0x71, 0x96, 0x8d, 0x48, 0x9f, 0x15, 0xa3, 0x30, 0x22, 0x7d, 0xa6,
0x9f, 0xcd, 0xcf, 0xd3, 0x94, 0xab, 0x1c, 0x70, 0xca, 0xec, 0x34, 0xcc, 0x07, 0xc7, 0xef, 0x79,
0xdb, 0x87, 0x0b, 0xf4, 0xb7, 0x16, 0x9f, 0xff, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0xbc, 0xb9,
0x7b, 0x12, 0x08, 0x43, 0x00, 0x00,
}

@ -592,10 +592,18 @@ func RegisterWalletUnlockerHandlerFromEndpoint(ctx context.Context, mux *runtime
// RegisterWalletUnlockerHandler registers the http handlers for service WalletUnlocker to "mux".
// The handlers forward requests to the grpc endpoint over "conn".
func RegisterWalletUnlockerHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error {
client := NewWalletUnlockerClient(conn)
return RegisterWalletUnlockerHandlerClient(ctx, mux, NewWalletUnlockerClient(conn))
}
// RegisterWalletUnlockerHandler registers the http handlers for service WalletUnlocker to "mux".
// The handlers forward requests to the grpc endpoint over the given implementation of "WalletUnlockerClient".
// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "WalletUnlockerClient"
// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in
// "WalletUnlockerClient" to call the correct interceptors.
func RegisterWalletUnlockerHandlerClient(ctx context.Context, mux *runtime.ServeMux, client WalletUnlockerClient) error {
mux.Handle("GET", pattern_WalletUnlocker_GenSeed_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -624,7 +632,7 @@ func RegisterWalletUnlockerHandler(ctx context.Context, mux *runtime.ServeMux, c
})
mux.Handle("POST", pattern_WalletUnlocker_InitWallet_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -653,7 +661,7 @@ func RegisterWalletUnlockerHandler(ctx context.Context, mux *runtime.ServeMux, c
})
mux.Handle("POST", pattern_WalletUnlocker_UnlockWallet_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -728,10 +736,18 @@ func RegisterLightningHandlerFromEndpoint(ctx context.Context, mux *runtime.Serv
// RegisterLightningHandler registers the http handlers for service Lightning to "mux".
// The handlers forward requests to the grpc endpoint over "conn".
func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error {
client := NewLightningClient(conn)
return RegisterLightningHandlerClient(ctx, mux, NewLightningClient(conn))
}
// RegisterLightningHandler registers the http handlers for service Lightning to "mux".
// The handlers forward requests to the grpc endpoint over the given implementation of "LightningClient".
// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "LightningClient"
// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in
// "LightningClient" to call the correct interceptors.
func RegisterLightningHandlerClient(ctx context.Context, mux *runtime.ServeMux, client LightningClient) error {
mux.Handle("GET", pattern_Lightning_WalletBalance_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -760,7 +776,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_ChannelBalance_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -789,7 +805,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_GetTransactions_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -818,7 +834,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("POST", pattern_Lightning_SendCoins_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -847,7 +863,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_NewWitnessAddress_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -876,7 +892,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("POST", pattern_Lightning_ConnectPeer_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -905,7 +921,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("DELETE", pattern_Lightning_DisconnectPeer_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -934,7 +950,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_ListPeers_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -963,7 +979,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_GetInfo_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -992,7 +1008,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_PendingChannels_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1021,7 +1037,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_ListChannels_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1050,7 +1066,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("POST", pattern_Lightning_OpenChannelSync_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1079,7 +1095,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("DELETE", pattern_Lightning_CloseChannel_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1108,7 +1124,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("POST", pattern_Lightning_SendPaymentSync_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1137,7 +1153,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("POST", pattern_Lightning_AddInvoice_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1166,7 +1182,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_ListInvoices_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1195,7 +1211,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_LookupInvoice_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1224,7 +1240,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_SubscribeInvoices_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1253,7 +1269,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_DecodePayReq_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1282,7 +1298,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_ListPayments_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1311,7 +1327,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("DELETE", pattern_Lightning_DeleteAllPayments_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1340,7 +1356,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_DescribeGraph_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1369,7 +1385,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_GetChanInfo_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1398,7 +1414,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_GetNodeInfo_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1427,7 +1443,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_QueryRoutes_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1456,7 +1472,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_GetNetworkInfo_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1485,7 +1501,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("GET", pattern_Lightning_FeeReport_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1514,7 +1530,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("POST", pattern_Lightning_UpdateChannelPolicy_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {
@ -1543,7 +1559,7 @@ func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *
})
mux.Handle("POST", pattern_Lightning_ForwardingHistory_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
ctx, cancel := context.WithCancel(ctx)
ctx, cancel := context.WithCancel(req.Context())
defer cancel()
if cn, ok := w.(http.CloseNotifier); ok {
go func(done <-chan struct{}, closed <-chan bool) {

@ -1155,9 +1155,11 @@ message Hop {
*/
uint64 chan_id = 1 [json_name = "chan_id"];
int64 chan_capacity = 2 [json_name = "chan_capacity"];
int64 amt_to_forward = 3 [json_name = "amt_to_forward"];
int64 fee = 4 [json_name = "fee"];
int64 amt_to_forward = 3 [json_name = "amt_to_forward", deprecated = true];
int64 fee = 4 [json_name = "fee", deprecated = true];
uint32 expiry = 5 [json_name = "expiry"];
int64 amt_to_forward_msat = 6 [json_name = "amt_to_forward_msat"];
int64 fee_msat = 7 [json_name = "fee_msat"];
}
/**
@ -1182,7 +1184,7 @@ message Route {
of a one-hop payment, this value will be zero as we don't need to pay a fee
it ourself.
*/
int64 total_fees = 2 [json_name = "total_fees"];
int64 total_fees = 2 [json_name = "total_fees", deprecated = true];
/**
The total amount of funds required to complete a payment over this route.
@ -1191,12 +1193,22 @@ message Route {
satoshis, otherwise the route will fail at an intermediate node due to an
insufficient amount of fees.
*/
int64 total_amt = 3 [json_name = "total_amt"];
int64 total_amt = 3 [json_name = "total_amt", deprecated = true];
/**
Contains details concerning the specific forwarding details at each hop.
*/
repeated Hop hops = 4 [json_name = "hops"];
/**
The total fees in millisatoshis.
*/
int64 total_fees_msat = 5 [json_name = "total_fees_msat"];
/**
The total amount in millisatoshis.
*/
int64 total_amt_msat = 6 [json_name = "total_amt_msat"];
}
message NodeInfoRequest {

@ -789,6 +789,14 @@
}
},
"definitions": {
"NewAddressRequestAddressType": {
"type": "string",
"enum": [
"WITNESS_PUBKEY_HASH",
"NESTED_PUBKEY_HASH"
],
"default": "WITNESS_PUBKEY_HASH"
},
"PendingChannelsResponseClosedChannel": {
"type": "object",
"properties": {
@ -1496,6 +1504,14 @@
"expiry": {
"type": "integer",
"format": "int64"
},
"amt_to_forward_msat": {
"type": "string",
"format": "int64"
},
"fee_msat": {
"type": "string",
"format": "int64"
}
}
},
@ -2097,6 +2113,16 @@
"$ref": "#/definitions/lnrpcHop"
},
"description": "*\nContains details concerning the specific forwarding details at each hop."
},
"total_fees_msat": {
"type": "string",
"format": "int64",
"description": "*\nThe total fees in millisatoshis."
},
"total_amt_msat": {
"type": "string",
"format": "int64",
"description": "*\nThe total amount in millisatoshis."
}
},
"description": "*\nA path through the channel graph which runs over one or more channels in\nsuccession. This struct carries all the information required to craft the\nSphinx onion packet, and send the payment along the first hop in the path. A\nroute is only selected as valid if all the channels have sufficient capacity to\ncarry the initial payment amount after fees are accounted for."