diff --git a/breacharbiter.go b/breacharbiter.go index a5925203f..cebbe1cdd 100644 --- a/breacharbiter.go +++ b/breacharbiter.go @@ -90,7 +90,7 @@ type BreachConfig struct { // PublishTransaction facilitates the process of broadcasting a // transaction to the network. - PublishTransaction func(*wire.MsgTx) error + PublishTransaction func(*wire.MsgTx, string) error // ContractBreaches is a channel where the breachArbiter will receive // notifications in the event of a contract breach being observed. A @@ -566,7 +566,7 @@ justiceTxBroadcast: // We'll now attempt to broadcast the transaction which finalized the // channel's retribution against the cheating counter party. - err = b.cfg.PublishTransaction(finalTx) + err = b.cfg.PublishTransaction(finalTx, "") if err != nil { brarLog.Errorf("Unable to broadcast justice tx: %v", err) diff --git a/breacharbiter_test.go b/breacharbiter_test.go index 72448ab54..e6eee2503 100644 --- a/breacharbiter_test.go +++ b/breacharbiter_test.go @@ -1371,7 +1371,7 @@ func testBreachSpends(t *testing.T, test breachTest) { // Make PublishTransaction always return ErrDoubleSpend to begin with. publErr = lnwallet.ErrDoubleSpend - brar.cfg.PublishTransaction = func(tx *wire.MsgTx) error { + brar.cfg.PublishTransaction = func(tx *wire.MsgTx, _ string) error { publTx <- tx publMtx.Lock() @@ -1681,7 +1681,7 @@ func createTestArbiter(t *testing.T, contractBreaches chan *ContractBreachEvent, ContractBreaches: contractBreaches, Signer: signer, Notifier: notifier, - PublishTransaction: func(_ *wire.MsgTx) error { return nil }, + PublishTransaction: func(_ *wire.MsgTx, _ string) error { return nil }, Store: store, }) diff --git a/chancloser.go b/chancloser.go index b261a3657..a85db9c98 100644 --- a/chancloser.go +++ b/chancloser.go @@ -83,7 +83,7 @@ type chanCloseCfg struct { unregisterChannel func(lnwire.ChannelID) // broadcastTx broadcasts the passed transaction to the network. - broadcastTx func(*wire.MsgTx) error + broadcastTx func(*wire.MsgTx, string) error // disableChannel disables a channel, resulting in it not being able to // forward payments. @@ -544,7 +544,8 @@ func (c *channelCloser) ProcessCloseMsg(msg lnwire.Message) ([]lnwire.Message, b newLogClosure(func() string { return spew.Sdump(closeTx) })) - if err := c.cfg.broadcastTx(closeTx); err != nil { + err = c.cfg.broadcastTx(closeTx, "") + if err != nil { return nil, false, err } diff --git a/cmd/lncli/commands.go b/cmd/lncli/commands.go index e327c9771..56d20a298 100644 --- a/cmd/lncli/commands.go +++ b/cmd/lncli/commands.go @@ -194,6 +194,11 @@ func estimateFees(ctx *cli.Context) error { return nil } +var txLabelFlag = cli.StringFlag{ + Name: "label", + Usage: "(optional) a label for the transaction", +} + var sendCoinsCommand = cli.Command{ Name: "sendcoins", Category: "On-chain", @@ -236,6 +241,7 @@ var sendCoinsCommand = cli.Command{ "sat/byte that should be used when crafting " + "the transaction", }, + txLabelFlag, }, Action: actionDecorator(sendCoins), } @@ -295,6 +301,7 @@ func sendCoins(ctx *cli.Context) error { TargetConf: int32(ctx.Int64("conf_target")), SatPerByte: ctx.Int64("sat_per_byte"), SendAll: ctx.Bool("sweepall"), + Label: ctx.String(txLabelFlag.Name), } txid, err := client.SendCoins(ctxb, req) if err != nil { @@ -450,6 +457,7 @@ var sendManyCommand = cli.Command{ Usage: "(optional) a manual fee expressed in sat/byte that should be " + "used when crafting the transaction", }, + txLabelFlag, }, Action: actionDecorator(sendMany), } @@ -475,6 +483,7 @@ func sendMany(ctx *cli.Context) error { AddrToAmount: amountToAddr, TargetConf: int32(ctx.Int64("conf_target")), SatPerByte: ctx.Int64("sat_per_byte"), + Label: ctx.String(txLabelFlag.Name), }) if err != nil { return err diff --git a/contractcourt/chain_arbitrator.go b/contractcourt/chain_arbitrator.go index 9aa691a9b..f5979ed8f 100644 --- a/contractcourt/chain_arbitrator.go +++ b/contractcourt/chain_arbitrator.go @@ -79,7 +79,7 @@ type ChainArbitratorConfig struct { // PublishTx reliably broadcasts a transaction to the network. Once // this function exits without an error, then they transaction MUST // continually be rebroadcast if needed. - PublishTx func(*wire.MsgTx) error + PublishTx func(*wire.MsgTx, string) error // DeliverResolutionMsg is a function that will append an outgoing // message to the "out box" for a ChannelLink. This is used to cancel @@ -699,7 +699,7 @@ func (c *ChainArbitrator) rebroadcast(channel *channeldb.OpenChannel, log.Infof("Re-publishing %s close tx(%v) for channel %v", kind, closeTx.TxHash(), chanPoint) - err = c.cfg.PublishTx(closeTx) + err = c.cfg.PublishTx(closeTx, "") if err != nil && err != lnwallet.ErrDoubleSpend { log.Warnf("Unable to broadcast %s close tx(%v): %v", kind, closeTx.TxHash(), err) diff --git a/contractcourt/chain_arbitrator_test.go b/contractcourt/chain_arbitrator_test.go index 2692e2975..60c7eebe7 100644 --- a/contractcourt/chain_arbitrator_test.go +++ b/contractcourt/chain_arbitrator_test.go @@ -82,7 +82,7 @@ func TestChainArbitratorRepublishCloses(t *testing.T) { chainArbCfg := ChainArbitratorConfig{ ChainIO: &mockChainIO{}, Notifier: &mockNotifier{}, - PublishTx: func(tx *wire.MsgTx) error { + PublishTx: func(tx *wire.MsgTx, _ string) error { published[tx.TxHash()]++ return nil }, @@ -174,7 +174,7 @@ func TestResolveContract(t *testing.T) { chainArbCfg := ChainArbitratorConfig{ ChainIO: &mockChainIO{}, Notifier: &mockNotifier{}, - PublishTx: func(tx *wire.MsgTx) error { + PublishTx: func(tx *wire.MsgTx, _ string) error { return nil }, Clock: clock.NewDefaultClock(), diff --git a/contractcourt/channel_arbitrator.go b/contractcourt/channel_arbitrator.go index f4e0d96a3..f6f7fedad 100644 --- a/contractcourt/channel_arbitrator.go +++ b/contractcourt/channel_arbitrator.go @@ -851,7 +851,7 @@ func (c *ChannelArbitrator) stateStep( // At this point, we'll now broadcast the commitment // transaction itself. - if err := c.cfg.PublishTx(closeTx); err != nil { + if err := c.cfg.PublishTx(closeTx, ""); err != nil { log.Errorf("ChannelArbitrator(%v): unable to broadcast "+ "close tx: %v", c.cfg.ChanPoint, err) if err != lnwallet.ErrDoubleSpend { diff --git a/contractcourt/channel_arbitrator_test.go b/contractcourt/channel_arbitrator_test.go index 3dedb4200..f71aa1720 100644 --- a/contractcourt/channel_arbitrator_test.go +++ b/contractcourt/channel_arbitrator_test.go @@ -324,7 +324,7 @@ func createTestChannelArbitrator(t *testing.T, log ArbitratorLog, mockSweeper := newMockSweeper() chainArbCfg := ChainArbitratorConfig{ ChainIO: chainIO, - PublishTx: func(*wire.MsgTx) error { + PublishTx: func(*wire.MsgTx, string) error { return nil }, DeliverResolutionMsg: func(msgs ...ResolutionMsg) error { @@ -575,7 +575,7 @@ func TestChannelArbitratorLocalForceClose(t *testing.T) { // We create a channel we can use to pause the ChannelArbitrator at the // point where it broadcasts the close tx, and check its state. stateChan := make(chan ArbitratorState) - chanArb.cfg.PublishTx = func(*wire.MsgTx) error { + chanArb.cfg.PublishTx = func(*wire.MsgTx, string) error { // When the force close tx is being broadcasted, check that the // state is correct at that point. select { @@ -998,7 +998,7 @@ func TestChannelArbitratorLocalForceCloseRemoteConfirmed(t *testing.T) { // Create a channel we can use to assert the state when it publishes // the close tx. stateChan := make(chan ArbitratorState) - chanArb.cfg.PublishTx = func(*wire.MsgTx) error { + chanArb.cfg.PublishTx = func(*wire.MsgTx, string) error { // When the force close tx is being broadcasted, check that the // state is correct at that point. select { @@ -1106,7 +1106,7 @@ func TestChannelArbitratorLocalForceDoubleSpend(t *testing.T) { // Return ErrDoubleSpend when attempting to publish the tx. stateChan := make(chan ArbitratorState) - chanArb.cfg.PublishTx = func(*wire.MsgTx) error { + chanArb.cfg.PublishTx = func(*wire.MsgTx, string) error { // When the force close tx is being broadcasted, check that the // state is correct at that point. select { @@ -1339,7 +1339,7 @@ func TestChannelArbitratorForceCloseBreachedChannel(t *testing.T) { // unexpected publication error, causing the state machine to halt. expErr := errors.New("intentional publication error") stateChan := make(chan ArbitratorState) - chanArb.cfg.PublishTx = func(*wire.MsgTx) error { + chanArb.cfg.PublishTx = func(*wire.MsgTx, string) error { // When the force close tx is being broadcasted, check that the // state is correct at that point. select { diff --git a/contractcourt/htlc_success_resolver.go b/contractcourt/htlc_success_resolver.go index 38fa7fd05..7c32e154d 100644 --- a/contractcourt/htlc_success_resolver.go +++ b/contractcourt/htlc_success_resolver.go @@ -155,7 +155,7 @@ func (h *htlcSuccessResolver) Resolve() (ContractResolver, error) { // Regardless of whether an existing transaction was found or newly // constructed, we'll broadcast the sweep transaction to the // network. - err := h.PublishTx(h.sweepTx) + err := h.PublishTx(h.sweepTx, "") if err != nil { log.Infof("%T(%x): unable to publish tx: %v", h, h.htlc.RHash[:], err) @@ -199,7 +199,7 @@ func (h *htlcSuccessResolver) Resolve() (ContractResolver, error) { // the claiming process. // // TODO(roasbeef): after changing sighashes send to tx bundler - err := h.PublishTx(h.htlcResolution.SignedSuccessTx) + err := h.PublishTx(h.htlcResolution.SignedSuccessTx, "") if err != nil { return nil, err } diff --git a/fundingmanager.go b/fundingmanager.go index c62f7526f..ae7dd9d70 100644 --- a/fundingmanager.go +++ b/fundingmanager.go @@ -236,7 +236,7 @@ type fundingConfig struct { // PublishTransaction facilitates the process of broadcasting a // transaction to the network. - PublishTransaction func(*wire.MsgTx) error + PublishTransaction func(*wire.MsgTx, string) error // FeeEstimator calculates appropriate fee rates based on historical // transaction information. @@ -553,7 +553,7 @@ func (f *fundingManager) start() error { channel.IsInitiator { err := f.cfg.PublishTransaction( - channel.FundingTxn, + channel.FundingTxn, "", ) if err != nil { fndgLog.Errorf("Unable to rebroadcast "+ @@ -1995,7 +1995,7 @@ func (f *fundingManager) handleFundingSigned(fmsg *fundingSignedMsg) { fndgLog.Infof("Broadcasting funding tx for ChannelPoint(%v): %v", completeChan.FundingOutpoint, spew.Sdump(fundingTx)) - err = f.cfg.PublishTransaction(fundingTx) + err = f.cfg.PublishTransaction(fundingTx, "") if err != nil { fndgLog.Errorf("Unable to broadcast funding tx for "+ "ChannelPoint(%v): %v", diff --git a/fundingmanager_test.go b/fundingmanager_test.go index a389c973e..96e2ddc2c 100644 --- a/fundingmanager_test.go +++ b/fundingmanager_test.go @@ -412,7 +412,7 @@ func createTestFundingManager(t *testing.T, privKey *btcec.PrivateKey, ReportShortChanID: func(wire.OutPoint) error { return nil }, - PublishTransaction: func(txn *wire.MsgTx) error { + PublishTransaction: func(txn *wire.MsgTx, _ string) error { publTxChan <- txn return nil }, @@ -515,7 +515,7 @@ func recreateAliceFundingManager(t *testing.T, alice *testNode) { }, DefaultMinHtlcIn: 5, RequiredRemoteMaxValue: oldCfg.RequiredRemoteMaxValue, - PublishTransaction: func(txn *wire.MsgTx) error { + PublishTransaction: func(txn *wire.MsgTx, _ string) error { publishChan <- txn return nil }, diff --git a/labels/labels.go b/labels/labels.go new file mode 100644 index 000000000..3bbe5feaa --- /dev/null +++ b/labels/labels.go @@ -0,0 +1,33 @@ +// Package labels contains labels used to label transactions broadcast by lnd. +// These labels are used across packages, so they are declared in a separate +// package to avoid dependency issues. +package labels + +import ( + "fmt" + + "github.com/btcsuite/btcwallet/wtxmgr" +) + +// External labels a transaction as user initiated via the api. This +// label is only used when a custom user provided label is not given. +const External = "external" + +// ValidateAPI returns the generic api label if the label provided is empty. +// This allows us to label all transactions published by the api, even if +// no label is provided. If a label is provided, it is validated against +// the known restrictions. +func ValidateAPI(label string) (string, error) { + if len(label) > wtxmgr.TxLabelLimit { + return "", fmt.Errorf("label length: %v exceeds "+ + "limit of %v", len(label), wtxmgr.TxLabelLimit) + } + + // If no label was provided by the user, add the generic user + // send label. + if len(label) == 0 { + return External, nil + } + + return label, nil +} diff --git a/lnrpc/rpc.pb.go b/lnrpc/rpc.pb.go index dbe5a1d86..e4fc8fbeb 100644 --- a/lnrpc/rpc.pb.go +++ b/lnrpc/rpc.pb.go @@ -771,7 +771,9 @@ type Transaction struct { // Addresses that received funds for this transaction DestAddresses []string `protobuf:"bytes,8,rep,name=dest_addresses,json=destAddresses,proto3" json:"dest_addresses,omitempty"` // The raw transaction hex. - RawTxHex string `protobuf:"bytes,9,opt,name=raw_tx_hex,json=rawTxHex,proto3" json:"raw_tx_hex,omitempty"` + RawTxHex string `protobuf:"bytes,9,opt,name=raw_tx_hex,json=rawTxHex,proto3" json:"raw_tx_hex,omitempty"` + // A label that was optionally set on transaction broadcast. + Label string `protobuf:"bytes,10,opt,name=label,proto3" json:"label,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -865,6 +867,13 @@ func (m *Transaction) GetRawTxHex() string { return "" } +func (m *Transaction) GetLabel() string { + if m != nil { + return m.Label + } + return "" +} + type GetTransactionsRequest struct { // //The height from which to list transactions, inclusive. If this value is @@ -1897,7 +1906,9 @@ type SendManyRequest struct { TargetConf int32 `protobuf:"varint,3,opt,name=target_conf,json=targetConf,proto3" json:"target_conf,omitempty"` // A manual fee rate set in sat/byte that should be used when crafting the // transaction. - SatPerByte int64 `protobuf:"varint,5,opt,name=sat_per_byte,json=satPerByte,proto3" json:"sat_per_byte,omitempty"` + SatPerByte int64 `protobuf:"varint,5,opt,name=sat_per_byte,json=satPerByte,proto3" json:"sat_per_byte,omitempty"` + // An optional label for the transaction, limited to 500 characters. + Label string `protobuf:"bytes,6,opt,name=label,proto3" json:"label,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1949,6 +1960,13 @@ func (m *SendManyRequest) GetSatPerByte() int64 { return 0 } +func (m *SendManyRequest) GetLabel() string { + if m != nil { + return m.Label + } + return "" +} + type SendManyResponse struct { // The id of the transaction Txid string `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"` @@ -2004,7 +2022,9 @@ type SendCoinsRequest struct { //If set, then the amount field will be ignored, and lnd will attempt to //send all the coins under control of the internal wallet to the specified //address. - SendAll bool `protobuf:"varint,6,opt,name=send_all,json=sendAll,proto3" json:"send_all,omitempty"` + SendAll bool `protobuf:"varint,6,opt,name=send_all,json=sendAll,proto3" json:"send_all,omitempty"` + // An optional label for the transaction, limited to 500 characters. + Label string `protobuf:"bytes,7,opt,name=label,proto3" json:"label,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -2070,6 +2090,13 @@ func (m *SendCoinsRequest) GetSendAll() bool { return false } +func (m *SendCoinsRequest) GetLabel() string { + if m != nil { + return m.Label + } + return "" +} + type SendCoinsResponse struct { // The transaction ID of the transaction Txid string `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"` @@ -11607,738 +11634,740 @@ func init() { func init() { proto.RegisterFile("rpc.proto", fileDescriptor_77a6da22d6a3feb1) } var fileDescriptor_77a6da22d6a3feb1 = []byte{ - // 11696 bytes of a gzipped FileDescriptorProto + // 11718 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x7d, 0x5b, 0x6c, 0x23, 0x59, - 0x76, 0x58, 0xf3, 0x25, 0x92, 0x87, 0x0f, 0x51, 0x57, 0x2f, 0xb6, 0x7a, 0x7a, 0xba, 0xa7, 0x66, - 0x76, 0xa6, 0xa7, 0x67, 0x56, 0xdd, 0xd3, 0xbb, 0x3d, 0xb3, 0xbb, 0x13, 0xaf, 0x97, 0x92, 0xa8, - 0x11, 0xb7, 0x25, 0x4a, 0x53, 0xa4, 0x66, 0xdc, 0xeb, 0x47, 0xb9, 0x44, 0x5e, 0x49, 0xe5, 0x26, - 0xab, 0x38, 0x55, 0x45, 0xb5, 0xb4, 0x8b, 0xc9, 0x47, 0x90, 0x17, 0x8c, 0x24, 0x40, 0x90, 0x38, - 0x40, 0x1c, 0x1b, 0x79, 0x18, 0x49, 0x90, 0x1f, 0xc3, 0x80, 0x9d, 0x00, 0x01, 0xf2, 0xef, 0x9f, - 0x04, 0x41, 0xb0, 0xce, 0x47, 0x02, 0xc3, 0x40, 0x90, 0xc4, 0xf9, 0x0b, 0x0c, 0xe4, 0x3b, 0x40, - 0x70, 0xcf, 0xb9, 0xb7, 0xea, 0x16, 0x59, 0xea, 0xee, 0xd9, 0xdd, 0xec, 0x8f, 0xc4, 0x7b, 0xee, - 0xb9, 0xef, 0x73, 0xcf, 0x3d, 0xaf, 0x7b, 0x0b, 0xca, 0xfe, 0x64, 0xb0, 0x39, 0xf1, 0xbd, 0xd0, - 0x63, 0x85, 0x91, 0xeb, 0x4f, 0x06, 0x1b, 0xaf, 0x9d, 0x79, 0xde, 0xd9, 0x88, 0x3f, 0xb0, 0x27, - 0xce, 0x03, 0xdb, 0x75, 0xbd, 0xd0, 0x0e, 0x1d, 0xcf, 0x0d, 0x08, 0xc9, 0xf8, 0xf3, 0x0c, 0xe4, - 0x8f, 0xc3, 0x4b, 0x8f, 0x3d, 0x86, 0xaa, 0x3d, 0x1c, 0xfa, 0x3c, 0x08, 0xac, 0xf0, 0x6a, 0xc2, - 0x9b, 0x99, 0xbb, 0x99, 0x7b, 0xf5, 0x47, 0x6c, 0x13, 0x2b, 0xd9, 0x6c, 0x51, 0x56, 0xff, 0x6a, - 0xc2, 0xcd, 0x8a, 0x1d, 0x27, 0x58, 0x13, 0x8a, 0x32, 0xd9, 0xcc, 0xde, 0xcd, 0xdc, 0x2b, 0x9b, - 0x2a, 0xc9, 0x6e, 0x03, 0xd8, 0x63, 0x6f, 0xea, 0x86, 0x56, 0x60, 0x87, 0xcd, 0xdc, 0xdd, 0xcc, - 0xbd, 0x9c, 0x59, 0x26, 0x48, 0xcf, 0x0e, 0xd9, 0x2d, 0x28, 0x4f, 0x9e, 0x59, 0xc1, 0xc0, 0x77, - 0x26, 0x61, 0x33, 0x8f, 0x45, 0x4b, 0x93, 0x67, 0x3d, 0x4c, 0xb3, 0xf7, 0xa0, 0xe4, 0x4d, 0xc3, - 0x89, 0xe7, 0xb8, 0x61, 0xb3, 0x70, 0x37, 0x73, 0xaf, 0xf2, 0x68, 0x51, 0x76, 0xe4, 0x70, 0x1a, - 0x1e, 0x09, 0xb0, 0x19, 0x21, 0xb0, 0xb7, 0xa0, 0x36, 0xf0, 0xdc, 0x53, 0xc7, 0x1f, 0xd3, 0xc8, - 0x9a, 0x0b, 0xd8, 0x56, 0x12, 0x68, 0xfc, 0x41, 0x16, 0x2a, 0x7d, 0xdf, 0x76, 0x03, 0x7b, 0x20, - 0x00, 0x6c, 0x1d, 0x8a, 0xe1, 0xa5, 0x75, 0x6e, 0x07, 0xe7, 0x38, 0xd4, 0xb2, 0xb9, 0x10, 0x5e, - 0xee, 0xd9, 0xc1, 0x39, 0x5b, 0x83, 0x05, 0xea, 0x25, 0x0e, 0x28, 0x67, 0xca, 0x14, 0x7b, 0x0f, - 0x96, 0xdc, 0xe9, 0xd8, 0x4a, 0x36, 0x25, 0x86, 0x55, 0x30, 0x1b, 0xee, 0x74, 0xbc, 0xad, 0xc3, - 0xc5, 0xe0, 0x4f, 0x46, 0xde, 0xe0, 0x19, 0x35, 0x40, 0xc3, 0x2b, 0x23, 0x04, 0xdb, 0x78, 0x03, - 0xaa, 0x32, 0x9b, 0x3b, 0x67, 0xe7, 0x34, 0xc6, 0x82, 0x59, 0x21, 0x04, 0x04, 0x89, 0x1a, 0x42, - 0x67, 0xcc, 0xad, 0x20, 0xb4, 0xc7, 0x13, 0x39, 0xa4, 0xb2, 0x80, 0xf4, 0x04, 0x00, 0xb3, 0xbd, - 0xd0, 0x1e, 0x59, 0xa7, 0x9c, 0x07, 0xcd, 0xa2, 0xcc, 0x16, 0x90, 0x5d, 0xce, 0x03, 0xf6, 0x35, - 0xa8, 0x0f, 0x79, 0x10, 0x5a, 0x72, 0x31, 0x78, 0xd0, 0x2c, 0xdd, 0xcd, 0xdd, 0x2b, 0x9b, 0x35, - 0x01, 0x6d, 0x29, 0x20, 0x7b, 0x0d, 0xc0, 0xb7, 0x9f, 0x5b, 0x62, 0x22, 0xf8, 0x65, 0xb3, 0x4c, - 0xab, 0xe0, 0xdb, 0xcf, 0xfb, 0x97, 0x7b, 0xfc, 0xd2, 0xf8, 0x01, 0xac, 0x7d, 0xc2, 0x43, 0x6d, - 0xd2, 0x02, 0x93, 0x7f, 0x31, 0xe5, 0x41, 0x28, 0xfa, 0x1f, 0x84, 0xb6, 0x1f, 0xaa, 0xfe, 0x67, - 0xa8, 0xff, 0x08, 0x8b, 0xfb, 0xcf, 0xdd, 0xa1, 0x42, 0xc8, 0x22, 0x42, 0x99, 0xbb, 0x43, 0xca, - 0x36, 0xf6, 0x81, 0x69, 0x15, 0xef, 0xf0, 0xd0, 0x76, 0x46, 0x01, 0xfb, 0x10, 0xaa, 0xa1, 0xd6, - 0x5c, 0x33, 0x73, 0x37, 0x77, 0xaf, 0x12, 0x11, 0xa1, 0x56, 0xc0, 0x4c, 0xe0, 0x19, 0xe7, 0x50, - 0xda, 0xe5, 0x7c, 0xdf, 0x19, 0x3b, 0x21, 0x5b, 0x83, 0xc2, 0xa9, 0x73, 0xc9, 0x87, 0xd8, 0xa9, - 0xdc, 0xde, 0x0d, 0x93, 0x92, 0xec, 0x0e, 0x00, 0xfe, 0xb0, 0xc6, 0x11, 0x3d, 0xee, 0xdd, 0x30, - 0xcb, 0x08, 0x3b, 0x08, 0xec, 0x90, 0x6d, 0x40, 0x71, 0xc2, 0xfd, 0x01, 0x57, 0x2b, 0xbf, 0x77, - 0xc3, 0x54, 0x80, 0xad, 0x22, 0x14, 0x46, 0xa2, 0x76, 0xe3, 0x8f, 0x0b, 0x50, 0xe9, 0x71, 0x77, - 0xa8, 0x66, 0x82, 0x41, 0x5e, 0x4c, 0x29, 0x36, 0x56, 0x35, 0xf1, 0x37, 0x7b, 0x13, 0x2a, 0x38, - 0xf9, 0x41, 0xe8, 0x3b, 0xee, 0x19, 0xed, 0x8b, 0xad, 0x6c, 0x33, 0x63, 0x82, 0x00, 0xf7, 0x10, - 0xca, 0x1a, 0x90, 0xb3, 0xc7, 0x6a, 0x5f, 0x88, 0x9f, 0xec, 0x26, 0x94, 0xec, 0x71, 0x48, 0xdd, - 0xab, 0x22, 0xb8, 0x68, 0x8f, 0x43, 0xec, 0xda, 0x1b, 0x50, 0x9d, 0xd8, 0x57, 0x63, 0xee, 0x86, - 0x31, 0x41, 0x55, 0xcd, 0x8a, 0x84, 0x21, 0x49, 0x3d, 0x82, 0x65, 0x1d, 0x45, 0x35, 0x5e, 0x88, - 0x1a, 0x5f, 0xd2, 0xb0, 0x65, 0x1f, 0xde, 0x81, 0x45, 0x55, 0xc6, 0xa7, 0xf1, 0x20, 0xa1, 0x95, - 0xcd, 0xba, 0x04, 0xab, 0x51, 0xde, 0x83, 0xc6, 0xa9, 0xe3, 0xda, 0x23, 0x6b, 0x30, 0x0a, 0x2f, - 0xac, 0x21, 0x1f, 0x85, 0x36, 0xd2, 0x5c, 0xc1, 0xac, 0x23, 0x7c, 0x7b, 0x14, 0x5e, 0xec, 0x08, - 0x28, 0x7b, 0x1f, 0xca, 0xa7, 0x9c, 0x5b, 0x38, 0x59, 0xcd, 0x52, 0x62, 0xeb, 0xaa, 0x15, 0x32, - 0x4b, 0xa7, 0x6a, 0xad, 0xde, 0x87, 0x86, 0x37, 0x0d, 0xcf, 0x3c, 0xc7, 0x3d, 0xb3, 0x06, 0xe7, - 0xb6, 0x6b, 0x39, 0x43, 0xa4, 0xc2, 0xfc, 0x56, 0xf6, 0x61, 0xc6, 0xac, 0xab, 0xbc, 0xed, 0x73, - 0xdb, 0xed, 0x0c, 0xd9, 0xdb, 0xb0, 0x38, 0xb2, 0x83, 0xd0, 0x3a, 0xf7, 0x26, 0xd6, 0x64, 0x7a, - 0xf2, 0x8c, 0x5f, 0x35, 0x6b, 0x38, 0x11, 0x35, 0x01, 0xde, 0xf3, 0x26, 0x47, 0x08, 0x14, 0xa4, - 0x87, 0xfd, 0xa4, 0x4e, 0xc0, 0xdd, 0xcc, 0xbd, 0x9a, 0x59, 0x16, 0x10, 0x6a, 0xf4, 0x29, 0x2c, - 0xe3, 0xf2, 0x0c, 0xa6, 0x41, 0xe8, 0x8d, 0x2d, 0x9f, 0x0f, 0x3c, 0x7f, 0x18, 0x34, 0x2b, 0x48, - 0x6b, 0xef, 0xca, 0xce, 0x6a, 0x6b, 0xbc, 0xb9, 0xc3, 0x83, 0x70, 0x1b, 0x91, 0x4d, 0xc2, 0x6d, - 0xbb, 0xa1, 0x7f, 0x65, 0x2e, 0x0d, 0x67, 0xe1, 0xec, 0x7d, 0x60, 0xf6, 0x68, 0xe4, 0x3d, 0xb7, - 0x02, 0x3e, 0x3a, 0xb5, 0xe4, 0x24, 0x36, 0xeb, 0x77, 0x33, 0xf7, 0x4a, 0x66, 0x03, 0x73, 0x7a, - 0x7c, 0x74, 0x7a, 0x44, 0x70, 0xf6, 0x21, 0xe0, 0x76, 0xb4, 0x4e, 0xb9, 0x1d, 0x4e, 0x7d, 0x1e, - 0x34, 0x17, 0xef, 0xe6, 0xee, 0xd5, 0x1f, 0x2d, 0x45, 0xf3, 0x85, 0xe0, 0x2d, 0x27, 0x34, 0xab, - 0x02, 0x4f, 0xa6, 0x83, 0x8d, 0x1d, 0x58, 0x4b, 0xef, 0x92, 0x20, 0x2a, 0x31, 0x2b, 0x82, 0x18, - 0xf3, 0xa6, 0xf8, 0xc9, 0x56, 0xa0, 0x70, 0x61, 0x8f, 0xa6, 0x1c, 0xa9, 0xb0, 0x6a, 0x52, 0xe2, - 0x3b, 0xd9, 0x6f, 0x65, 0x8c, 0x3f, 0xca, 0x40, 0x95, 0x46, 0x19, 0x4c, 0x3c, 0x37, 0xe0, 0xec, - 0x4d, 0xa8, 0x29, 0x6a, 0xe0, 0xbe, 0xef, 0xf9, 0x92, 0x2f, 0x2a, 0xca, 0x6b, 0x0b, 0x18, 0x7b, - 0x17, 0x1a, 0x0a, 0x69, 0xe2, 0x73, 0x67, 0x6c, 0x9f, 0xa9, 0xaa, 0x15, 0x29, 0x1d, 0x49, 0x30, - 0xfb, 0x20, 0xae, 0xcf, 0xf7, 0xa6, 0x21, 0x47, 0x5a, 0xaf, 0x3c, 0xaa, 0xca, 0xe1, 0x99, 0x02, - 0x16, 0xd5, 0x8e, 0xa9, 0x57, 0xa0, 0x73, 0xe3, 0xb7, 0x32, 0xc0, 0x44, 0xb7, 0xfb, 0x1e, 0x55, - 0x10, 0x73, 0xa4, 0x44, 0xc9, 0xcc, 0x2b, 0xef, 0x90, 0xec, 0x8b, 0x76, 0x88, 0x01, 0x05, 0xea, - 0x7b, 0x3e, 0xa5, 0xef, 0x94, 0xf5, 0xfd, 0x7c, 0x29, 0xd7, 0xc8, 0x1b, 0xff, 0x35, 0x07, 0x2b, - 0x82, 0x4e, 0x5d, 0x3e, 0x6a, 0x0d, 0x06, 0x7c, 0x12, 0xed, 0x9d, 0x3b, 0x50, 0x71, 0xbd, 0x21, - 0x57, 0x14, 0x4b, 0x1d, 0x03, 0x01, 0xd2, 0xc8, 0xf5, 0xdc, 0x76, 0x5c, 0xea, 0x38, 0x4d, 0x66, - 0x19, 0x21, 0xd8, 0xed, 0xb7, 0x61, 0x71, 0xc2, 0xdd, 0xa1, 0xbe, 0x45, 0x72, 0x44, 0xf5, 0x12, - 0x2c, 0x77, 0xc7, 0x1d, 0xa8, 0x9c, 0x4e, 0x09, 0x4f, 0x30, 0x96, 0x3c, 0xd2, 0x00, 0x48, 0x50, - 0x8b, 0xf8, 0xcb, 0x64, 0x1a, 0x9c, 0x63, 0x6e, 0x01, 0x73, 0x8b, 0x22, 0x2d, 0xb2, 0x6e, 0x03, - 0x0c, 0xa7, 0x41, 0x28, 0x77, 0xcc, 0x02, 0x66, 0x96, 0x05, 0x84, 0x76, 0xcc, 0xd7, 0x61, 0x79, - 0x6c, 0x5f, 0x5a, 0x48, 0x3b, 0x96, 0xe3, 0x5a, 0xa7, 0x23, 0x64, 0xea, 0x45, 0xc4, 0x6b, 0x8c, - 0xed, 0xcb, 0xcf, 0x44, 0x4e, 0xc7, 0xdd, 0x45, 0xb8, 0x60, 0x2b, 0x03, 0x9a, 0x09, 0xcb, 0xe7, - 0x01, 0xf7, 0x2f, 0x38, 0x72, 0x82, 0xbc, 0x59, 0x97, 0x60, 0x93, 0xa0, 0xa2, 0x47, 0x63, 0x31, - 0xee, 0x70, 0x34, 0xa0, 0x6d, 0x6f, 0x16, 0xc7, 0x8e, 0xbb, 0x17, 0x8e, 0x06, 0xe2, 0x64, 0x12, - 0x7c, 0x64, 0xc2, 0x7d, 0xeb, 0xd9, 0x73, 0xdc, 0xc3, 0x79, 0xe4, 0x1b, 0x47, 0xdc, 0x7f, 0xf2, - 0x5c, 0x08, 0x0f, 0x83, 0x00, 0x19, 0x91, 0x7d, 0xd5, 0xac, 0xe0, 0x06, 0x2f, 0x0d, 0x02, 0xc1, - 0x82, 0xec, 0x2b, 0xb1, 0x09, 0x45, 0x6f, 0x6d, 0x5c, 0x05, 0x3e, 0xc4, 0xea, 0x03, 0xe4, 0xa8, - 0x35, 0xec, 0x6c, 0x4b, 0x66, 0x88, 0x76, 0x02, 0x41, 0xf5, 0xaa, 0xb3, 0xa7, 0x23, 0xfb, 0x2c, - 0x40, 0x96, 0x52, 0x33, 0xab, 0x12, 0xb8, 0x2b, 0x60, 0xc6, 0xe7, 0xb0, 0x3a, 0xb3, 0xb6, 0x72, - 0xcf, 0x08, 0x61, 0x01, 0x21, 0xb8, 0xae, 0x25, 0x53, 0xa6, 0xd2, 0x16, 0x2d, 0x9b, 0xb2, 0x68, - 0xc6, 0xef, 0x66, 0xa0, 0x2a, 0x6b, 0x46, 0xb1, 0x86, 0x6d, 0x02, 0x53, 0xab, 0x18, 0x5e, 0x3a, - 0x43, 0xeb, 0xe4, 0x2a, 0xe4, 0x01, 0x11, 0xcd, 0xde, 0x0d, 0xb3, 0x21, 0xf3, 0xfa, 0x97, 0xce, - 0x70, 0x4b, 0xe4, 0xb0, 0xfb, 0xd0, 0x48, 0xe0, 0x07, 0xa1, 0x4f, 0x14, 0xbd, 0x77, 0xc3, 0xac, - 0x6b, 0xd8, 0xbd, 0xd0, 0x17, 0x7b, 0x44, 0x08, 0x4d, 0xd3, 0xd0, 0x72, 0xdc, 0x21, 0xbf, 0x44, - 0x32, 0xaa, 0x99, 0x15, 0x82, 0x75, 0x04, 0x68, 0xab, 0x0e, 0x55, 0xbd, 0x3a, 0xe3, 0x0c, 0x4a, - 0x4a, 0xe2, 0x42, 0x91, 0x63, 0xa6, 0x4b, 0x66, 0x39, 0x8c, 0x7a, 0x72, 0x13, 0x4a, 0xc9, 0x1e, - 0x98, 0xc5, 0xf0, 0x95, 0x1b, 0x36, 0xbe, 0x0b, 0x8d, 0x7d, 0x41, 0x3c, 0xae, 0x20, 0x56, 0x29, - 0x41, 0xae, 0xc1, 0x82, 0xb6, 0x69, 0xca, 0xa6, 0x4c, 0x89, 0x33, 0xf7, 0xdc, 0x0b, 0x42, 0xd9, - 0x0a, 0xfe, 0x36, 0xfe, 0x38, 0x03, 0xac, 0x1d, 0x84, 0xce, 0xd8, 0x0e, 0xf9, 0x2e, 0x8f, 0xd8, - 0xc2, 0x21, 0x54, 0x45, 0x6d, 0x7d, 0xaf, 0x45, 0x22, 0x1d, 0x09, 0x14, 0xef, 0xc9, 0x6d, 0x3c, - 0x5f, 0x60, 0x53, 0xc7, 0x26, 0x36, 0x9f, 0xa8, 0x40, 0xec, 0xb2, 0xd0, 0xf6, 0xcf, 0x78, 0x88, - 0x82, 0xa0, 0x94, 0x6b, 0x80, 0x40, 0x42, 0x04, 0xdc, 0xf8, 0x45, 0x58, 0x9a, 0xab, 0x43, 0xe7, - 0xcb, 0xe5, 0x14, 0xbe, 0x9c, 0xd3, 0xf9, 0xb2, 0x05, 0xcb, 0x89, 0x7e, 0x49, 0x4a, 0x5b, 0x87, - 0xa2, 0xd8, 0x10, 0x42, 0x38, 0xc8, 0x90, 0x5c, 0x7a, 0xca, 0xb9, 0x10, 0xa4, 0x1f, 0xc0, 0xca, - 0x29, 0xe7, 0xbe, 0x1d, 0x62, 0x26, 0xee, 0x18, 0xb1, 0x42, 0xb2, 0xe2, 0x25, 0x99, 0xd7, 0xb3, - 0xc3, 0x23, 0xee, 0x8b, 0x95, 0x32, 0xfe, 0x7b, 0x06, 0x16, 0x05, 0x07, 0x3d, 0xb0, 0xdd, 0x2b, - 0x35, 0x4f, 0xfb, 0xa9, 0xf3, 0x74, 0x4f, 0x3b, 0x0c, 0x35, 0xec, 0xaf, 0x3a, 0x49, 0xb9, 0xd9, - 0x49, 0x62, 0x77, 0xa1, 0x9a, 0xe8, 0x6b, 0x01, 0xfb, 0x0a, 0x41, 0xd4, 0xc9, 0x9f, 0x7e, 0x1a, - 0xdf, 0x86, 0x46, 0xdc, 0x6d, 0x39, 0x87, 0x0c, 0xf2, 0x82, 0x24, 0x65, 0x05, 0xf8, 0xdb, 0xf8, - 0x9d, 0x0c, 0x21, 0x6e, 0x7b, 0x4e, 0x2c, 0xdf, 0x32, 0xc8, 0x0b, 0xc9, 0x59, 0x21, 0x8a, 0xdf, - 0xd7, 0xea, 0x05, 0x3f, 0xfd, 0x60, 0xc5, 0xd6, 0x09, 0x84, 0xb0, 0x6c, 0x8f, 0x46, 0xc8, 0x7c, - 0x4b, 0x66, 0x51, 0xa4, 0x5b, 0xa3, 0x91, 0xf1, 0x0e, 0x2c, 0x69, 0xbd, 0x7b, 0xc1, 0x38, 0xba, - 0xc0, 0xf6, 0x9d, 0x20, 0x3c, 0x76, 0x83, 0x89, 0x26, 0xb8, 0xdd, 0x82, 0xb2, 0xe0, 0xb0, 0xa2, - 0x67, 0x81, 0x94, 0xd2, 0x05, 0xcb, 0x15, 0xfd, 0x0a, 0x30, 0xd3, 0xbe, 0x94, 0x99, 0x59, 0x99, - 0x69, 0x5f, 0x62, 0xa6, 0xf1, 0x2d, 0x58, 0x4e, 0xd4, 0x27, 0x9b, 0x7e, 0x03, 0x0a, 0xd3, 0xf0, - 0xd2, 0x53, 0xa2, 0x79, 0x45, 0x52, 0x88, 0x50, 0x21, 0x4d, 0xca, 0x31, 0x3e, 0x86, 0xa5, 0x2e, - 0x7f, 0x2e, 0x37, 0xb1, 0xea, 0xc8, 0xdb, 0x90, 0x7f, 0x89, 0x5a, 0x89, 0xf9, 0xc6, 0x26, 0x30, - 0xbd, 0xb0, 0x6c, 0x55, 0xd3, 0x32, 0x33, 0x09, 0x2d, 0xd3, 0x78, 0x1b, 0x58, 0xcf, 0x39, 0x73, - 0x0f, 0x78, 0x10, 0xd8, 0x67, 0xd1, 0xb6, 0x6f, 0x40, 0x6e, 0x1c, 0x9c, 0x49, 0x1e, 0x25, 0x7e, - 0x1a, 0xdf, 0x80, 0xe5, 0x04, 0x9e, 0xac, 0xf8, 0x35, 0x28, 0x07, 0xce, 0x99, 0x8b, 0x82, 0x95, - 0xac, 0x3a, 0x06, 0x18, 0xbb, 0xb0, 0xf2, 0x19, 0xf7, 0x9d, 0xd3, 0xab, 0x97, 0x55, 0x9f, 0xac, - 0x27, 0x3b, 0x5b, 0x4f, 0x1b, 0x56, 0x67, 0xea, 0x91, 0xcd, 0x13, 0xf9, 0xca, 0x95, 0x2c, 0x99, - 0x94, 0xd0, 0xf8, 0x5e, 0x56, 0xe7, 0x7b, 0xc6, 0x31, 0xb0, 0x6d, 0xcf, 0x75, 0xf9, 0x20, 0x3c, - 0xe2, 0xdc, 0x57, 0x9d, 0x79, 0x4f, 0xa3, 0xd5, 0xca, 0xa3, 0x75, 0x39, 0xb3, 0xb3, 0xcc, 0x54, - 0x12, 0x31, 0x83, 0xfc, 0x84, 0xfb, 0x63, 0xac, 0xb8, 0x64, 0xe2, 0x6f, 0x63, 0x15, 0x96, 0x13, - 0xd5, 0x52, 0xdf, 0x8c, 0x87, 0xb0, 0xba, 0xe3, 0x04, 0x83, 0xf9, 0x06, 0xd7, 0xa1, 0x38, 0x99, - 0x9e, 0x58, 0x49, 0xbe, 0xfc, 0x84, 0x5f, 0x19, 0x4d, 0x58, 0x9b, 0x2d, 0x21, 0xeb, 0xfa, 0xab, - 0x19, 0xc8, 0xef, 0xf5, 0xf7, 0xb7, 0xd9, 0x06, 0x94, 0x1c, 0x77, 0xe0, 0x8d, 0x85, 0xe0, 0x45, - 0x63, 0x8e, 0xd2, 0xd7, 0x6e, 0xb0, 0x5b, 0x50, 0x46, 0x79, 0x4d, 0x28, 0xc7, 0x52, 0xf4, 0x29, - 0x09, 0xc0, 0xbe, 0x37, 0x78, 0x26, 0xb4, 0x72, 0x7e, 0x39, 0x71, 0x7c, 0xd4, 0xbb, 0x95, 0xb6, - 0x99, 0xa7, 0xb3, 0x3e, 0xce, 0x90, 0x4a, 0xe7, 0xbf, 0x2d, 0x41, 0x51, 0x9e, 0xb6, 0x74, 0x72, - 0x87, 0xce, 0x05, 0x8f, 0x4f, 0x6e, 0x91, 0x12, 0xf2, 0x80, 0xcf, 0xc7, 0x5e, 0x18, 0x09, 0x6c, - 0xb4, 0x06, 0x55, 0x02, 0x4a, 0x91, 0x4d, 0x13, 0x1a, 0xc8, 0x48, 0x91, 0x23, 0xa4, 0x81, 0x7e, - 0x94, 0xdf, 0x82, 0xa2, 0x3a, 0xfb, 0xf3, 0x91, 0x4e, 0xb3, 0x30, 0x20, 0x69, 0x6d, 0x03, 0x4a, - 0x03, 0x7b, 0x62, 0x0f, 0x9c, 0xf0, 0x4a, 0x32, 0x84, 0x28, 0x2d, 0x6a, 0x1f, 0x79, 0x03, 0x7b, - 0x64, 0x9d, 0xd8, 0x23, 0xdb, 0x1d, 0x70, 0xa9, 0xfd, 0x57, 0x11, 0xb8, 0x45, 0x30, 0xa1, 0xe1, - 0xcb, 0x7e, 0x2a, 0x2c, 0x32, 0x02, 0xc8, 0xde, 0x2b, 0x34, 0x21, 0x5c, 0x7a, 0xe3, 0xb1, 0x23, - 0xb4, 0x0c, 0x12, 0xc3, 0x72, 0x66, 0x99, 0x20, 0xbb, 0x1c, 0x47, 0x2b, 0xb3, 0x9f, 0xd3, 0xd4, - 0x95, 0xa9, 0x29, 0x02, 0x7e, 0x4e, 0xaa, 0xfc, 0xbc, 0x2c, 0x96, 0xd3, 0x64, 0xb1, 0xf7, 0x60, - 0x69, 0xea, 0x06, 0x3c, 0x0c, 0x47, 0x7c, 0x18, 0xf5, 0xa5, 0x82, 0x48, 0x8d, 0x28, 0x43, 0x75, - 0x67, 0x13, 0x96, 0xc9, 0x6c, 0x11, 0xd8, 0xa1, 0x17, 0x9c, 0x3b, 0x81, 0x15, 0x08, 0x0d, 0x89, - 0xd4, 0xdd, 0x25, 0xcc, 0xea, 0xc9, 0x9c, 0x1e, 0xa9, 0x48, 0xeb, 0x33, 0xf8, 0x3e, 0x1f, 0x70, - 0xe7, 0x82, 0x0f, 0x51, 0x4e, 0xcb, 0x99, 0xab, 0x89, 0x32, 0xa6, 0xcc, 0x44, 0xa1, 0x7b, 0x3a, - 0xb6, 0xa6, 0x93, 0xa1, 0x2d, 0x84, 0x95, 0x3a, 0x09, 0xc3, 0xee, 0x74, 0x7c, 0x4c, 0x10, 0xf6, - 0x10, 0x94, 0x24, 0x26, 0xe5, 0xc3, 0xc5, 0x04, 0x3f, 0x13, 0xc4, 0x6a, 0x56, 0x25, 0x06, 0x09, - 0x8a, 0x09, 0x99, 0xb3, 0x31, 0x23, 0x73, 0x36, 0xa1, 0x38, 0xf1, 0x9d, 0x0b, 0x3b, 0xe4, 0xcd, - 0x25, 0x62, 0xe0, 0x32, 0x29, 0x38, 0x83, 0xe3, 0x3a, 0xa1, 0x63, 0x87, 0x9e, 0xdf, 0x64, 0x98, - 0x17, 0x03, 0xd8, 0x7d, 0x58, 0x42, 0x1a, 0x09, 0x42, 0x3b, 0x9c, 0x06, 0x52, 0x02, 0x5d, 0x46, - 0x62, 0x42, 0x19, 0xba, 0x87, 0x70, 0x14, 0x42, 0xd9, 0x37, 0x60, 0x8d, 0xc8, 0x02, 0x4b, 0x48, - 0xc9, 0x1a, 0x05, 0x82, 0x15, 0x9c, 0x8a, 0x65, 0xcc, 0x15, 0xf4, 0x2d, 0xe5, 0x6b, 0x21, 0x1d, - 0x3c, 0x86, 0x75, 0x49, 0x26, 0x73, 0xa5, 0x56, 0xb1, 0xd4, 0x0a, 0x65, 0xcf, 0x14, 0xdb, 0x84, - 0x25, 0xd1, 0x25, 0x67, 0x60, 0xc9, 0xd2, 0x62, 0x27, 0xac, 0x89, 0xde, 0xa3, 0xa6, 0xb4, 0x48, - 0x99, 0x26, 0xe6, 0x3d, 0xe1, 0x57, 0xec, 0xbb, 0xb0, 0x48, 0x24, 0x83, 0xea, 0x15, 0x72, 0xfa, - 0x0d, 0xe4, 0xf4, 0xab, 0x72, 0x42, 0xb7, 0xa3, 0x5c, 0x64, 0xf6, 0xf5, 0x41, 0x22, 0x2d, 0xb6, - 0xc3, 0xc8, 0x39, 0xe5, 0xa1, 0x33, 0xe6, 0xcd, 0x75, 0x22, 0x30, 0x95, 0x16, 0x3b, 0x75, 0x3a, - 0xc1, 0x9c, 0x26, 0xf1, 0x05, 0x4a, 0x21, 0xed, 0x8e, 0xbc, 0x80, 0x2b, 0x23, 0x57, 0xf3, 0xa6, - 0xdc, 0x84, 0x02, 0xa8, 0x64, 0x48, 0x21, 0x88, 0x93, 0xd2, 0x13, 0x99, 0x22, 0x6f, 0x21, 0x31, - 0xd4, 0x48, 0xf7, 0x51, 0xe6, 0x48, 0x71, 0x8a, 0x9f, 0xdb, 0xcf, 0x15, 0x07, 0x79, 0x0d, 0xd7, - 0x17, 0x04, 0x48, 0xf2, 0x8e, 0x3f, 0xcc, 0xd0, 0x81, 0x28, 0xf9, 0x47, 0xa0, 0xa9, 0x77, 0xc4, - 0x39, 0x2c, 0xcf, 0x1d, 0x5d, 0x49, 0x66, 0x02, 0x04, 0x3a, 0x74, 0x47, 0xb8, 0x9b, 0x1d, 0x57, - 0x47, 0x21, 0xde, 0x5b, 0x55, 0x40, 0x44, 0xba, 0x03, 0x95, 0xc9, 0xf4, 0x64, 0xe4, 0x0c, 0x08, - 0x25, 0x47, 0xb5, 0x10, 0x08, 0x11, 0x84, 0x7e, 0x4b, 0x14, 0x45, 0x18, 0x79, 0xc4, 0xa8, 0x48, - 0x18, 0xa2, 0x20, 0x6f, 0xe7, 0x3e, 0xb2, 0x93, 0xaa, 0x89, 0xbf, 0x8d, 0x2d, 0x58, 0x49, 0x76, - 0x5a, 0x1e, 0x3c, 0xf7, 0xa1, 0x24, 0x79, 0x95, 0x32, 0x7c, 0xd4, 0xd5, 0x42, 0x49, 0x15, 0x2d, - 0xca, 0x37, 0x7e, 0xaf, 0x00, 0xcb, 0x12, 0xba, 0x2d, 0xa6, 0xb6, 0x37, 0x1d, 0x8f, 0x6d, 0x3f, - 0x85, 0x09, 0x66, 0x5e, 0xcc, 0x04, 0xb3, 0x73, 0x4c, 0x30, 0xa9, 0xf9, 0x12, 0x0f, 0x4d, 0x6a, - 0xbe, 0x62, 0x2d, 0x49, 0x19, 0xd1, 0x2d, 0xa9, 0x35, 0x09, 0xee, 0x93, 0xc5, 0x76, 0x8e, 0x65, - 0x17, 0x52, 0x58, 0xb6, 0xce, 0x70, 0x17, 0x66, 0x18, 0xee, 0x1b, 0x40, 0x44, 0xa3, 0x56, 0xbf, - 0x48, 0xfa, 0x09, 0xc2, 0xa4, 0x39, 0xf3, 0x1d, 0x58, 0x9c, 0xe5, 0x71, 0xc4, 0x4c, 0xeb, 0x29, - 0x1c, 0xce, 0x19, 0x73, 0x3c, 0xad, 0x34, 0xe4, 0xb2, 0xe4, 0x70, 0xce, 0x98, 0xef, 0x63, 0x8e, - 0xc2, 0x6f, 0x03, 0x50, 0xdb, 0xb8, 0x69, 0x00, 0x37, 0xcd, 0xdb, 0xc9, 0xb5, 0xd0, 0x67, 0x7d, - 0x53, 0x24, 0xa6, 0x3e, 0xc7, 0x5d, 0x54, 0xc6, 0x92, 0xb8, 0x81, 0x3e, 0x82, 0xba, 0x37, 0xe1, - 0xae, 0x15, 0xf3, 0x9a, 0x0a, 0x56, 0xd5, 0x90, 0x55, 0x75, 0x14, 0xdc, 0xac, 0x09, 0xbc, 0x28, - 0xc9, 0xbe, 0x4d, 0x93, 0xcc, 0xb5, 0x92, 0xd5, 0x6b, 0x4a, 0xd6, 0x11, 0x31, 0x4a, 0x1b, 0xbf, - 0x99, 0x81, 0x8a, 0xd6, 0x1d, 0xb6, 0x0a, 0x4b, 0xdb, 0x87, 0x87, 0x47, 0x6d, 0xb3, 0xd5, 0xef, - 0x7c, 0xd6, 0xb6, 0xb6, 0xf7, 0x0f, 0x7b, 0xed, 0xc6, 0x0d, 0x01, 0xde, 0x3f, 0xdc, 0x6e, 0xed, - 0x5b, 0xbb, 0x87, 0xe6, 0xb6, 0x02, 0x67, 0xd8, 0x1a, 0x30, 0xb3, 0x7d, 0x70, 0xd8, 0x6f, 0x27, - 0xe0, 0x59, 0xd6, 0x80, 0xea, 0x96, 0xd9, 0x6e, 0x6d, 0xef, 0x49, 0x48, 0x8e, 0xad, 0x40, 0x63, - 0xf7, 0xb8, 0xbb, 0xd3, 0xe9, 0x7e, 0x62, 0x6d, 0xb7, 0xba, 0xdb, 0xed, 0xfd, 0xf6, 0x4e, 0x23, - 0xcf, 0x6a, 0x50, 0x6e, 0x6d, 0xb5, 0xba, 0x3b, 0x87, 0xdd, 0xf6, 0x4e, 0xa3, 0x60, 0xfc, 0x59, - 0x06, 0x56, 0x71, 0xa2, 0x86, 0xb3, 0x3b, 0xf4, 0x2e, 0x54, 0x06, 0x9e, 0x37, 0x11, 0x6a, 0x50, - 0x7c, 0xdc, 0xeb, 0x20, 0xb1, 0xfb, 0x88, 0xb3, 0x9e, 0x7a, 0xfe, 0x80, 0xcb, 0x0d, 0x0a, 0x08, - 0xda, 0x15, 0x10, 0x41, 0x20, 0x92, 0xc2, 0x08, 0x83, 0xf6, 0x67, 0x85, 0x60, 0x84, 0xb2, 0x06, - 0x0b, 0x27, 0x3e, 0xb7, 0x07, 0xe7, 0x72, 0x6b, 0xca, 0x14, 0x7b, 0x37, 0x56, 0xd0, 0x07, 0x62, - 0xc1, 0x47, 0x7c, 0x88, 0xf4, 0x59, 0x32, 0x17, 0x25, 0x7c, 0x5b, 0x82, 0xc5, 0x51, 0x61, 0x9f, - 0xd8, 0xee, 0xd0, 0x73, 0xf9, 0x50, 0xea, 0x01, 0x31, 0xc0, 0x38, 0x82, 0xb5, 0xd9, 0xf1, 0xc9, - 0xcd, 0xfc, 0xa1, 0xb6, 0x99, 0x49, 0x2c, 0xdf, 0xb8, 0x9e, 0x80, 0xb4, 0x8d, 0xfd, 0xb7, 0xf3, - 0x90, 0x17, 0x62, 0xda, 0xb5, 0x12, 0x9d, 0x2e, 0x77, 0xe7, 0xe6, 0xbc, 0x3b, 0x68, 0x07, 0xa0, - 0xf3, 0x9b, 0x8c, 0x4d, 0x65, 0x84, 0xe0, 0xb9, 0x1d, 0x65, 0xfb, 0x7c, 0x70, 0x21, 0xad, 0x4d, - 0x94, 0x6d, 0xf2, 0xc1, 0x05, 0x2a, 0x3c, 0x76, 0x48, 0x65, 0x69, 0x33, 0x16, 0x03, 0x3b, 0xc4, - 0x92, 0x32, 0x0b, 0xcb, 0x15, 0xa3, 0x2c, 0x2c, 0xd5, 0x84, 0xa2, 0xe3, 0x9e, 0x78, 0x53, 0x77, - 0x88, 0x7b, 0xaf, 0x64, 0xaa, 0x24, 0x3a, 0x93, 0x90, 0x4d, 0x88, 0x53, 0x82, 0xb6, 0x5a, 0x49, - 0x00, 0xfa, 0xe2, 0x9c, 0xf8, 0x00, 0xca, 0xc1, 0x95, 0x3b, 0xd0, 0x37, 0xd8, 0x8a, 0x9c, 0x1f, - 0x31, 0xfa, 0xcd, 0xde, 0x95, 0x3b, 0xc0, 0xed, 0x54, 0x0a, 0xe4, 0x2f, 0xf6, 0x18, 0x4a, 0x91, - 0x51, 0x96, 0xd8, 0xe3, 0x4d, 0xbd, 0x84, 0xb2, 0xc4, 0x92, 0xee, 0x1b, 0xa1, 0xb2, 0x07, 0xb0, - 0x80, 0x96, 0xd3, 0xa0, 0x59, 0xc5, 0x42, 0x4a, 0x18, 0x17, 0xdd, 0x40, 0x3f, 0x0e, 0x1f, 0xa2, - 0x15, 0xd5, 0x94, 0x68, 0x1b, 0x4f, 0xa0, 0x96, 0xa8, 0x4b, 0xd7, 0x70, 0x6b, 0xa4, 0xe1, 0xbe, - 0xa5, 0x6b, 0xb8, 0x31, 0x9b, 0x96, 0xc5, 0x74, 0x8d, 0xf7, 0x17, 0xa1, 0xa4, 0x86, 0x22, 0x36, - 0xd1, 0x71, 0xf7, 0x49, 0xf7, 0xf0, 0xf3, 0xae, 0xd5, 0x7b, 0xda, 0xdd, 0x6e, 0xdc, 0x60, 0x8b, - 0x50, 0x69, 0x6d, 0xe3, 0xbe, 0x44, 0x40, 0x46, 0xa0, 0x1c, 0xb5, 0x7a, 0xbd, 0x08, 0x92, 0x35, - 0x76, 0xa1, 0x31, 0xdb, 0x53, 0x41, 0x93, 0xa1, 0x82, 0x49, 0xbb, 0x72, 0x0c, 0x10, 0xfa, 0x0b, - 0x99, 0x8a, 0x49, 0x48, 0xa6, 0x84, 0xf1, 0x18, 0x1a, 0xe2, 0xd0, 0x11, 0x53, 0xa5, 0x7b, 0x8c, - 0x46, 0x42, 0xf0, 0xd2, 0x6d, 0xcb, 0x25, 0xb3, 0x42, 0x30, 0x6c, 0xca, 0xf8, 0x10, 0x96, 0xb4, - 0x62, 0xb1, 0xbe, 0x29, 0x0e, 0xb2, 0x59, 0x7d, 0x13, 0xb5, 0x0b, 0xca, 0x31, 0xd6, 0x61, 0x55, - 0x24, 0xdb, 0x17, 0xdc, 0x0d, 0x7b, 0xd3, 0x13, 0x72, 0x29, 0x3a, 0x9e, 0x2b, 0xb4, 0x8e, 0x72, - 0x94, 0x73, 0x3d, 0x91, 0x6f, 0x4a, 0xd5, 0x34, 0x8b, 0xa4, 0xb1, 0xa1, 0xb5, 0x80, 0x05, 0x37, - 0xf1, 0x6f, 0x42, 0x45, 0x2d, 0x47, 0x20, 0x31, 0xad, 0x47, 0xed, 0xb6, 0x69, 0x1d, 0x76, 0xf7, - 0x3b, 0x5d, 0xc1, 0xed, 0xc4, 0xb4, 0x22, 0x60, 0x77, 0x17, 0x21, 0x19, 0xa3, 0x01, 0xf5, 0x4f, - 0x78, 0xd8, 0x71, 0x4f, 0x3d, 0x39, 0x19, 0xc6, 0xdf, 0x58, 0x80, 0xc5, 0x08, 0x14, 0xab, 0xb8, - 0x17, 0xdc, 0x0f, 0x1c, 0xcf, 0x45, 0x69, 0xb5, 0x6c, 0xaa, 0xa4, 0xe0, 0x4e, 0x52, 0x46, 0xc7, - 0x23, 0x70, 0x05, 0x73, 0xa5, 0x54, 0x8f, 0xe7, 0xdf, 0x3b, 0xb0, 0xe8, 0x0c, 0xb9, 0x1b, 0x3a, - 0xe1, 0x95, 0x95, 0x30, 0x98, 0xd5, 0x15, 0x58, 0x9e, 0x81, 0x2b, 0x50, 0xb0, 0x47, 0x8e, 0xad, - 0x5c, 0xb5, 0x94, 0x10, 0xd0, 0x81, 0x37, 0xf2, 0x7c, 0x94, 0x5c, 0xcb, 0x26, 0x25, 0xd8, 0x43, - 0x58, 0x11, 0x12, 0xb4, 0x6e, 0xc5, 0x44, 0x06, 0x43, 0xb6, 0x3b, 0xe6, 0x4e, 0xc7, 0x47, 0xb1, - 0x25, 0x53, 0xe4, 0x88, 0x93, 0x4f, 0x94, 0x90, 0xa2, 0x4e, 0x54, 0x80, 0x94, 0xb1, 0x25, 0x77, - 0x3a, 0x6e, 0x61, 0x4e, 0x84, 0xff, 0x08, 0x56, 0x05, 0x7e, 0x24, 0x1c, 0x45, 0x25, 0x16, 0xb1, - 0x84, 0xa8, 0xac, 0x23, 0xf3, 0xa2, 0x32, 0xb7, 0xa0, 0x4c, 0xbd, 0x12, 0x24, 0x51, 0x20, 0x21, - 0x1c, 0xbb, 0xc2, 0xfd, 0x60, 0xce, 0xab, 0xba, 0x40, 0xc7, 0xf8, 0x8c, 0x57, 0x55, 0xf3, 0xcb, - 0x96, 0x66, 0xfd, 0xb2, 0x8f, 0x60, 0xf5, 0x44, 0xd0, 0xe8, 0x39, 0xb7, 0x87, 0xdc, 0xb7, 0x62, - 0xca, 0x27, 0x65, 0x63, 0x59, 0x64, 0xee, 0x61, 0x5e, 0xb4, 0x51, 0x84, 0x94, 0x22, 0xf8, 0x06, - 0x1f, 0x5a, 0xa1, 0x67, 0xa1, 0xf0, 0x82, 0x1c, 0xa8, 0x64, 0xd6, 0x08, 0xdc, 0xf7, 0xb6, 0x05, - 0x30, 0x89, 0x77, 0xe6, 0xdb, 0x93, 0x73, 0xa9, 0x0e, 0x44, 0x78, 0x9f, 0x08, 0x20, 0x7b, 0x0d, - 0x8a, 0x62, 0x4f, 0xb8, 0x9c, 0x5c, 0x57, 0x24, 0x70, 0x2b, 0x10, 0x7b, 0x0b, 0x16, 0xb0, 0x8d, - 0xa0, 0xd9, 0xc0, 0x0d, 0x51, 0x8d, 0x39, 0xbd, 0xe3, 0x9a, 0x32, 0x4f, 0x88, 0x82, 0x53, 0xdf, - 0x21, 0x36, 0x54, 0x36, 0xf1, 0x37, 0xfb, 0x9e, 0xc6, 0xd3, 0x96, 0xb1, 0xec, 0x5b, 0xb2, 0xec, - 0x0c, 0x29, 0x5e, 0xc7, 0xde, 0x7e, 0xa6, 0xdc, 0xea, 0xfb, 0xf9, 0x52, 0xa5, 0x51, 0x35, 0x3e, - 0x82, 0x02, 0xcd, 0x8e, 0x20, 0x42, 0x9c, 0xbb, 0x8c, 0x24, 0x42, 0x84, 0x36, 0xa1, 0xe8, 0xf2, - 0xf0, 0xb9, 0xe7, 0x3f, 0x53, 0x26, 0x65, 0x99, 0x34, 0x7e, 0x88, 0xb6, 0x90, 0xc8, 0xe3, 0x4e, - 0x6a, 0x9d, 0x20, 0x0f, 0x5a, 0xde, 0xe0, 0xdc, 0x96, 0xe6, 0x99, 0x12, 0x02, 0x7a, 0xe7, 0xf6, - 0x1c, 0x79, 0x64, 0xe7, 0x9d, 0xee, 0x6f, 0x41, 0x5d, 0xf9, 0xf8, 0x03, 0x6b, 0xc4, 0x4f, 0x43, - 0x49, 0xee, 0x55, 0xe9, 0xe0, 0x0f, 0xf6, 0xf9, 0x69, 0x68, 0x1c, 0xc0, 0x92, 0x24, 0xc8, 0xc3, - 0x09, 0x57, 0x4d, 0x7f, 0x2b, 0x4d, 0x1a, 0xae, 0x3c, 0x5a, 0x4e, 0x9e, 0xc4, 0x14, 0xbb, 0x90, - 0x10, 0x91, 0x8d, 0x4f, 0x81, 0xe9, 0xe7, 0xb4, 0xac, 0x4f, 0xca, 0xa4, 0xca, 0x12, 0xaf, 0x1c, - 0x5a, 0x91, 0xe4, 0xeb, 0x0c, 0xc5, 0xec, 0x04, 0xd3, 0xc1, 0x40, 0xc5, 0x5e, 0x94, 0x4c, 0x95, - 0x34, 0x7e, 0x9c, 0x81, 0x65, 0xac, 0x4c, 0x49, 0xf3, 0x92, 0x0b, 0xff, 0xc4, 0x9d, 0x14, 0xeb, - 0xa3, 0x0b, 0x47, 0x94, 0xf8, 0xea, 0xb6, 0xcf, 0xfc, 0x9c, 0xed, 0xf3, 0x5d, 0x68, 0x0c, 0xf9, - 0xc8, 0xb9, 0xe0, 0xfe, 0x55, 0xa4, 0xc8, 0x91, 0xfc, 0xbe, 0xa8, 0xe0, 0x52, 0x97, 0x33, 0xfe, - 0x41, 0x06, 0x96, 0x48, 0x94, 0x41, 0xad, 0x58, 0x4e, 0xd4, 0xc7, 0x4a, 0x0d, 0x94, 0xac, 0x4a, - 0x8e, 0x29, 0x3e, 0xe2, 0x11, 0x4a, 0xc8, 0x7b, 0x37, 0xa4, 0x7a, 0x28, 0xa1, 0xec, 0x3b, 0xa8, - 0x81, 0xb8, 0x16, 0x02, 0xa5, 0x83, 0xf2, 0x66, 0x8a, 0xf0, 0x14, 0x15, 0x17, 0xea, 0x89, 0x8b, - 0xa0, 0xad, 0x92, 0xd0, 0x4b, 0x05, 0xd8, 0xd8, 0x85, 0x5a, 0xa2, 0x99, 0x84, 0x81, 0xb6, 0x4a, - 0x06, 0xda, 0x39, 0x27, 0x48, 0x76, 0xde, 0x09, 0x72, 0x05, 0xcb, 0x26, 0xb7, 0x87, 0x57, 0xbb, - 0x9e, 0x7f, 0x14, 0x9c, 0x84, 0xbb, 0x24, 0x1f, 0x0a, 0xfe, 0x1e, 0x79, 0xf6, 0x12, 0x56, 0x50, - 0xe5, 0xe0, 0x51, 0xca, 0xee, 0xd7, 0xa0, 0x1e, 0xbb, 0x00, 0x35, 0x4b, 0x5a, 0x2d, 0xf2, 0x02, - 0xa2, 0x41, 0x4d, 0x28, 0x8a, 0xc1, 0x49, 0x28, 0x6d, 0x69, 0xf8, 0xdb, 0xf8, 0x6b, 0x79, 0x60, - 0x82, 0x9a, 0x67, 0x08, 0x66, 0xc6, 0x79, 0x99, 0x9d, 0x73, 0x5e, 0x3e, 0x04, 0xa6, 0x21, 0x28, - 0x9f, 0x6a, 0x2e, 0xf2, 0xa9, 0x36, 0x62, 0x5c, 0xe9, 0x52, 0x7d, 0x08, 0x2b, 0x52, 0xd8, 0x4e, - 0x76, 0x95, 0x48, 0x83, 0x91, 0xd4, 0x9d, 0xe8, 0xaf, 0x72, 0x5c, 0x0a, 0xe5, 0x9d, 0x6c, 0x65, - 0xe8, 0xb8, 0x54, 0x6a, 0xbb, 0x46, 0x80, 0x0b, 0x2f, 0x25, 0xc0, 0xe2, 0x1c, 0x01, 0x6a, 0xa6, - 0x9b, 0x52, 0xd2, 0x74, 0x63, 0x40, 0x4d, 0xb9, 0x27, 0x29, 0x2a, 0x83, 0x24, 0xcb, 0x8a, 0xf4, - 0x51, 0x62, 0x64, 0xc6, 0x3d, 0x68, 0x28, 0xfb, 0x4a, 0x64, 0x1c, 0xa2, 0x88, 0x03, 0x69, 0x9e, - 0xdb, 0x56, 0x26, 0xa2, 0x84, 0x29, 0xbe, 0x32, 0x63, 0x8a, 0x7f, 0x0f, 0x96, 0x02, 0x41, 0xbf, - 0xd6, 0xd4, 0x95, 0x01, 0x46, 0x7c, 0x88, 0x7a, 0x58, 0xc9, 0x6c, 0x60, 0xc6, 0x71, 0x0c, 0x9f, - 0x37, 0x7c, 0xd4, 0x52, 0x0c, 0x1f, 0x8f, 0x63, 0x4f, 0x5e, 0x70, 0xee, 0x8c, 0x51, 0xa8, 0x88, - 0x43, 0x69, 0xe4, 0x04, 0xf7, 0xce, 0x9d, 0xb1, 0xa9, 0xdc, 0xc6, 0x22, 0x61, 0xfc, 0x9f, 0x0c, - 0x34, 0x04, 0x1d, 0x24, 0xb6, 0xd8, 0xb7, 0x01, 0x99, 0xc1, 0x2b, 0xee, 0xb0, 0x8a, 0xc0, 0x55, - 0x1b, 0xec, 0x23, 0xc0, 0x1d, 0x63, 0x09, 0xa5, 0x53, 0xee, 0xaf, 0x66, 0x72, 0x7f, 0xc5, 0x3c, - 0x74, 0xef, 0x06, 0x29, 0x27, 0x02, 0xc2, 0xbe, 0x0d, 0x65, 0x41, 0x98, 0x48, 0x25, 0x32, 0x06, - 0x4c, 0x89, 0x66, 0x29, 0x7b, 0x44, 0x14, 0x9d, 0xc8, 0x64, 0x9a, 0xf3, 0x35, 0x9f, 0xe2, 0x7c, - 0xd5, 0x36, 0xf0, 0x1e, 0xc0, 0x13, 0x7e, 0xb5, 0xef, 0x0d, 0x50, 0x25, 0xbe, 0x0d, 0x20, 0x68, - 0xf9, 0xd4, 0x1e, 0x3b, 0xd2, 0xa2, 0x53, 0x30, 0xcb, 0xcf, 0xf8, 0xd5, 0x2e, 0x02, 0xc4, 0x42, - 0x8a, 0xec, 0x78, 0x17, 0x17, 0xcc, 0xd2, 0x33, 0x7e, 0x45, 0x5b, 0xd8, 0x82, 0xda, 0x13, 0x7e, - 0xb5, 0xc3, 0x49, 0x0a, 0xf5, 0x7c, 0x41, 0x44, 0xbe, 0xfd, 0x5c, 0x88, 0x9d, 0x09, 0xc7, 0x69, - 0xc5, 0xb7, 0x9f, 0x3f, 0xe1, 0x57, 0xca, 0x89, 0x5b, 0x14, 0xf9, 0x23, 0x6f, 0x20, 0xcf, 0x4d, - 0x15, 0x02, 0x12, 0x77, 0xca, 0x5c, 0x78, 0x86, 0xbf, 0x8d, 0xbf, 0xc8, 0x40, 0x4d, 0xf4, 0x1f, - 0xd9, 0xb2, 0x58, 0x32, 0x15, 0x49, 0x94, 0x89, 0x23, 0x89, 0x1e, 0x49, 0xae, 0x46, 0x3c, 0x3e, - 0x7b, 0x3d, 0x8f, 0xc7, 0xb5, 0x21, 0x06, 0xff, 0x01, 0x94, 0x69, 0x5b, 0x8a, 0x7d, 0x9e, 0x4b, - 0x2c, 0x70, 0x62, 0x40, 0x66, 0x09, 0xd1, 0x9e, 0x50, 0xe0, 0x82, 0x66, 0x1d, 0xa4, 0x29, 0x2e, - 0xfb, 0x91, 0x4d, 0x30, 0x65, 0x19, 0x0a, 0xd7, 0x04, 0x2e, 0xe8, 0xa6, 0xb7, 0x85, 0x39, 0xd3, - 0xdb, 0x21, 0x94, 0xc4, 0x52, 0xe3, 0x60, 0x53, 0x2a, 0xcd, 0xa4, 0x55, 0x2a, 0x24, 0x01, 0x5b, - 0x1c, 0x0a, 0x82, 0xd1, 0x65, 0xa5, 0x24, 0x60, 0x07, 0xfc, 0x08, 0x99, 0x5d, 0x06, 0x2a, 0xda, - 0x0e, 0x40, 0xeb, 0x65, 0x34, 0x5f, 0xb4, 0x5d, 0x92, 0x24, 0x9e, 0x98, 0xf0, 0xbd, 0x1b, 0x66, - 0x6d, 0x90, 0x58, 0x81, 0x4d, 0x49, 0xab, 0x58, 0x32, 0x9b, 0x08, 0x7a, 0x52, 0x1d, 0x57, 0x04, - 0x2a, 0x7e, 0x6f, 0x2d, 0x40, 0x5e, 0xa0, 0x1a, 0x1f, 0xc3, 0x92, 0xd6, 0x0d, 0xb2, 0x03, 0xbc, - 0xea, 0x08, 0x8d, 0x5f, 0x89, 0x0a, 0x8b, 0x36, 0xc8, 0xbf, 0xa4, 0x82, 0x40, 0xf8, 0x90, 0x06, - 0x2e, 0x83, 0x4d, 0x08, 0x24, 0xd0, 0x5e, 0x39, 0x30, 0xe1, 0xd7, 0x60, 0x59, 0xab, 0x7d, 0xd7, - 0x71, 0xed, 0x91, 0xf3, 0x43, 0x3c, 0xf0, 0x03, 0xe7, 0xcc, 0x9d, 0xa9, 0x9f, 0x40, 0x5f, 0xa9, - 0xfe, 0x7f, 0x98, 0x85, 0x15, 0xd9, 0x00, 0x86, 0xf5, 0x39, 0x42, 0x8a, 0x3b, 0x08, 0xce, 0xd8, - 0xb7, 0xa1, 0x26, 0xe6, 0xc6, 0xf2, 0xf9, 0x99, 0x13, 0x84, 0x5c, 0xf9, 0xb5, 0x52, 0x18, 0x97, - 0x38, 0xcc, 0x05, 0xaa, 0x29, 0x31, 0xd9, 0xc7, 0x50, 0xc1, 0xa2, 0x64, 0x67, 0x91, 0x0b, 0xd1, - 0x9c, 0x2f, 0x48, 0x13, 0xbd, 0x77, 0xc3, 0x84, 0x20, 0x9e, 0xf6, 0x8f, 0xa1, 0x82, 0x6b, 0x78, - 0x81, 0x13, 0x39, 0xc3, 0xaa, 0xe6, 0x26, 0x5a, 0x14, 0x9e, 0xc4, 0xd3, 0xde, 0x82, 0x1a, 0x31, - 0x2b, 0x39, 0x4f, 0x32, 0x5c, 0x68, 0x63, 0xbe, 0xb8, 0x9a, 0x49, 0xd1, 0xf9, 0x89, 0x96, 0xde, - 0x2a, 0x43, 0x31, 0xf4, 0x9d, 0xb3, 0x33, 0xee, 0x1b, 0x6b, 0xd1, 0xd4, 0x08, 0x2e, 0xcc, 0x7b, - 0x21, 0x9f, 0x08, 0xd9, 0xdc, 0xf8, 0xf7, 0x19, 0xa8, 0x48, 0xbe, 0xfa, 0x13, 0x3b, 0xd3, 0x36, - 0xb4, 0xc8, 0x5a, 0x32, 0xe9, 0xc4, 0x81, 0xb4, 0xef, 0xc0, 0xe2, 0x58, 0xc8, 0xe9, 0x42, 0x8f, - 0x4c, 0x78, 0xd2, 0xea, 0x0a, 0x2c, 0xc5, 0xe4, 0x4d, 0x58, 0x46, 0xa9, 0x39, 0xb0, 0x42, 0x67, - 0x64, 0xa9, 0x4c, 0x19, 0xc5, 0xba, 0x44, 0x59, 0x7d, 0x67, 0x74, 0x20, 0x33, 0x84, 0xf0, 0x18, - 0x84, 0xf6, 0x19, 0x97, 0x7b, 0x9b, 0x12, 0x46, 0x13, 0xd6, 0x66, 0x54, 0x48, 0xa5, 0x1f, 0xff, - 0xdf, 0x25, 0x58, 0x9f, 0xcb, 0x92, 0x7a, 0x72, 0xe4, 0x41, 0x1a, 0x39, 0xe3, 0x13, 0x2f, 0xb2, - 0xaf, 0x66, 0x34, 0x0f, 0xd2, 0xbe, 0xc8, 0x51, 0xf6, 0x55, 0x0e, 0xab, 0x8a, 0x20, 0xd1, 0x40, - 0x1a, 0x69, 0x99, 0x59, 0xd4, 0x81, 0x3e, 0x48, 0x1e, 0x62, 0xb3, 0xcd, 0x29, 0xb8, 0x2e, 0x1a, - 0x2d, 0x4f, 0xe6, 0x60, 0x01, 0xfb, 0x0d, 0x68, 0x46, 0x74, 0x2f, 0xc5, 0x76, 0x4d, 0x65, 0x16, - 0x2d, 0xbd, 0xff, 0x92, 0x96, 0x12, 0xc6, 0x3d, 0x94, 0x9d, 0xd6, 0xd4, 0x96, 0xa1, 0x0a, 0xa3, - 0xb6, 0x2e, 0xe0, 0x75, 0xd5, 0x16, 0x8a, 0xe1, 0xf3, 0x2d, 0xe6, 0x5f, 0x69, 0x6c, 0x68, 0xb8, - 0x4c, 0x34, 0x6b, 0xde, 0x92, 0x15, 0x47, 0x59, 0x7a, 0xbb, 0xe7, 0xb0, 0xf6, 0xdc, 0x76, 0x42, - 0x35, 0x46, 0x4d, 0x63, 0x2f, 0x60, 0x7b, 0x8f, 0x5e, 0xd2, 0xde, 0xe7, 0x54, 0x38, 0xa1, 0x98, - 0xac, 0x3c, 0x9f, 0x07, 0x06, 0x1b, 0xff, 0x34, 0x07, 0xf5, 0x64, 0x2d, 0x82, 0xb1, 0xc8, 0xc3, - 0x46, 0xc9, 0x9b, 0x52, 0x08, 0x96, 0xb6, 0xff, 0x2e, 0xc9, 0x99, 0xf3, 0x5e, 0x89, 0x6c, 0x8a, - 0x57, 0x42, 0x77, 0x06, 0xe4, 0x5e, 0xe6, 0x7d, 0xcd, 0xbf, 0x92, 0xf7, 0xb5, 0x90, 0xe6, 0x7d, - 0xbd, 0xde, 0x65, 0xb7, 0xf0, 0x13, 0xb9, 0xec, 0x8a, 0x2f, 0x74, 0xd9, 0x69, 0x8e, 0xc6, 0xd2, - 0x35, 0x26, 0x7c, 0xcd, 0xf5, 0x98, 0xe2, 0xb2, 0x2b, 0x7f, 0x05, 0x97, 0xdd, 0xc6, 0x5f, 0x64, - 0x80, 0xcd, 0xef, 0x0e, 0xf6, 0x09, 0x39, 0x7c, 0x5c, 0x3e, 0x92, 0x9c, 0xfb, 0xeb, 0xaf, 0xb6, - 0xc3, 0x14, 0x41, 0xa8, 0xd2, 0xec, 0x01, 0x2c, 0xeb, 0xb1, 0xf6, 0xba, 0xd6, 0x5e, 0x33, 0x99, - 0x9e, 0x15, 0xdb, 0x76, 0x34, 0x57, 0x77, 0xfe, 0xa5, 0xae, 0xee, 0xc2, 0x4b, 0x5d, 0xdd, 0x0b, - 0x49, 0x57, 0xf7, 0xc6, 0x7f, 0xca, 0xc0, 0x72, 0x0a, 0x11, 0xff, 0xec, 0xc6, 0x2c, 0x68, 0x2f, - 0xc1, 0xd6, 0xb2, 0x92, 0xf6, 0x74, 0x8e, 0xb6, 0xaf, 0xec, 0x81, 0x62, 0x29, 0x02, 0x79, 0x52, - 0xdd, 0x7f, 0x19, 0x77, 0x89, 0x4b, 0x98, 0x7a, 0xf1, 0x8d, 0xdf, 0xcb, 0x42, 0x45, 0xcb, 0x14, - 0xb3, 0x48, 0x24, 0xab, 0x45, 0x18, 0x91, 0x64, 0x88, 0x36, 0x87, 0x3b, 0x20, 0xbd, 0x1e, 0x94, - 0x4f, 0x9b, 0x4b, 0x8a, 0x81, 0x88, 0xb0, 0x09, 0xcb, 0xca, 0x19, 0xc7, 0xe3, 0x40, 0x42, 0x79, - 0xd6, 0x2c, 0x49, 0x97, 0x1c, 0x8f, 0xe2, 0x12, 0xd9, 0x03, 0xa5, 0x0e, 0xc6, 0x6b, 0x87, 0xa4, - 0x4e, 0x2e, 0x85, 0x25, 0xda, 0x20, 0x6a, 0x11, 0x05, 0x9d, 0x7f, 0x00, 0xab, 0x6a, 0x7b, 0x24, - 0x4b, 0x90, 0x97, 0x81, 0xc9, 0xcd, 0xa1, 0x17, 0xf9, 0x1e, 0xdc, 0x9e, 0xe9, 0xd3, 0x4c, 0x51, - 0x8a, 0x78, 0xbd, 0x99, 0xe8, 0x9d, 0x5e, 0xc3, 0xc6, 0x8f, 0xa0, 0x96, 0x60, 0x94, 0x3f, 0xbb, - 0x25, 0x9f, 0xb5, 0xf3, 0xd0, 0x8c, 0xea, 0x76, 0x9e, 0x8d, 0xff, 0x9d, 0x03, 0x36, 0xcf, 0xab, - 0x7f, 0x9e, 0x5d, 0x98, 0x27, 0xcc, 0x5c, 0x0a, 0x61, 0xfe, 0x7f, 0x93, 0x1f, 0xde, 0x83, 0x25, - 0x9f, 0x0f, 0xbc, 0x0b, 0xee, 0x6b, 0x1e, 0x55, 0xda, 0x9c, 0x8d, 0x28, 0x43, 0xf5, 0xe2, 0xa3, - 0xd9, 0xc8, 0x8e, 0x52, 0xe2, 0x12, 0x89, 0x26, 0x40, 0xcd, 0x04, 0x78, 0x1c, 0xc3, 0x82, 0xed, - 0x0e, 0xce, 0x3d, 0x5f, 0xf2, 0xc1, 0x5f, 0xf8, 0xca, 0xc7, 0xe7, 0x66, 0x0b, 0xcb, 0xa3, 0xd4, - 0x66, 0xca, 0xca, 0x8c, 0x0f, 0xa0, 0xa2, 0x81, 0x59, 0x19, 0x0a, 0xfb, 0x9d, 0x83, 0xad, 0xc3, - 0xc6, 0x0d, 0x56, 0x83, 0xb2, 0xd9, 0xde, 0x3e, 0xfc, 0xac, 0x6d, 0xb6, 0x77, 0x1a, 0x19, 0x56, - 0x82, 0xfc, 0xfe, 0x61, 0xaf, 0xdf, 0xc8, 0x1a, 0x1b, 0xd0, 0x94, 0x35, 0xce, 0x3b, 0x35, 0x7e, - 0x2b, 0x1f, 0x99, 0x0b, 0x31, 0x53, 0xaa, 0xe8, 0xdf, 0x80, 0xaa, 0x2e, 0xde, 0x48, 0x8a, 0x98, - 0x71, 0xea, 0x0b, 0xe5, 0xdc, 0xd3, 0x78, 0xf5, 0x36, 0x90, 0x4b, 0x77, 0x18, 0x15, 0xcb, 0x26, - 0xe4, 0xd6, 0x14, 0xf7, 0x21, 0x2a, 0x3f, 0x09, 0x32, 0xfc, 0x4b, 0x50, 0x4f, 0x1a, 0xf0, 0x25, - 0x47, 0x4a, 0x53, 0x38, 0x45, 0xe9, 0x84, 0x45, 0x9f, 0x7d, 0x0f, 0x1a, 0xb3, 0x0e, 0x00, 0x29, - 0x3c, 0x5f, 0x53, 0x7e, 0xd1, 0x49, 0xfa, 0x04, 0xd8, 0x1e, 0xac, 0xa4, 0x09, 0x78, 0x48, 0x1f, - 0xd7, 0x1b, 0x29, 0xd8, 0xbc, 0x10, 0xc7, 0xbe, 0x25, 0x1d, 0x41, 0x05, 0x5c, 0xfe, 0xb7, 0x92, - 0xed, 0x6b, 0x93, 0xbd, 0x49, 0xff, 0x34, 0x97, 0xd0, 0x05, 0x40, 0x0c, 0x63, 0x0d, 0xa8, 0x1e, - 0x1e, 0xb5, 0xbb, 0xd6, 0xf6, 0x5e, 0xab, 0xdb, 0x6d, 0xef, 0x37, 0x6e, 0x30, 0x06, 0x75, 0x74, - 0x66, 0xef, 0x44, 0xb0, 0x8c, 0x80, 0x49, 0x87, 0x9c, 0x82, 0x65, 0xd9, 0x0a, 0x34, 0x3a, 0xdd, - 0x19, 0x68, 0x8e, 0x35, 0x61, 0xe5, 0xa8, 0x4d, 0xfe, 0xef, 0x44, 0xbd, 0x79, 0xa1, 0x34, 0xc8, - 0xe1, 0x0a, 0xa5, 0xe1, 0x73, 0x7b, 0x34, 0xe2, 0xa1, 0xdc, 0x07, 0x4a, 0x96, 0xfe, 0xed, 0x0c, - 0xac, 0xce, 0x64, 0xc4, 0xf7, 0x3d, 0x48, 0x92, 0x4e, 0xca, 0xd0, 0x55, 0x04, 0xaa, 0xdd, 0xf4, - 0x1e, 0x2c, 0x45, 0x86, 0xa7, 0x99, 0x53, 0xa9, 0x11, 0x65, 0x28, 0xe4, 0x07, 0xb0, 0xac, 0xd9, - 0xaf, 0x66, 0x78, 0x05, 0xd3, 0xb2, 0x64, 0x01, 0x63, 0x3d, 0x8a, 0xab, 0x9f, 0xe9, 0xf5, 0x10, - 0xd6, 0x66, 0x33, 0x62, 0x3f, 0x59, 0xb2, 0xbf, 0x2a, 0xc9, 0x1e, 0xce, 0x10, 0x42, 0xb2, 0xb7, - 0xfa, 0x82, 0xab, 0xe6, 0x7f, 0x7f, 0x01, 0xd8, 0xa7, 0x53, 0xee, 0x5f, 0xe1, 0x7d, 0x8e, 0xe0, - 0x65, 0x01, 0x8e, 0xca, 0xd2, 0x92, 0x7d, 0xa5, 0x3b, 0x5b, 0x69, 0x77, 0xa6, 0xf2, 0x2f, 0xbf, - 0x33, 0x55, 0x78, 0xd9, 0x9d, 0xa9, 0x37, 0xa1, 0xe6, 0x9c, 0xb9, 0x9e, 0x60, 0x85, 0x42, 0x12, - 0x0e, 0x9a, 0x0b, 0x77, 0x73, 0xf7, 0xaa, 0x66, 0x55, 0x02, 0x85, 0x1c, 0x1c, 0xb0, 0x8f, 0x63, - 0x24, 0x3e, 0x3c, 0xc3, 0x1b, 0x82, 0x3a, 0x13, 0x6c, 0x0f, 0xcf, 0xb8, 0x34, 0x2c, 0xa1, 0xa6, - 0xa1, 0x0a, 0x0b, 0x78, 0xc0, 0xde, 0x82, 0x7a, 0xe0, 0x4d, 0x85, 0x62, 0xa1, 0xa6, 0x81, 0x1c, - 0x65, 0x55, 0x82, 0x1e, 0x29, 0xb7, 0xe9, 0xf2, 0x34, 0xe0, 0xd6, 0xd8, 0x09, 0x02, 0x21, 0x9e, - 0x0d, 0x3c, 0x37, 0xf4, 0xbd, 0x91, 0xf4, 0x7d, 0x2d, 0x4d, 0x03, 0x7e, 0x40, 0x39, 0xdb, 0x94, - 0xc1, 0xbe, 0x19, 0x77, 0x69, 0x62, 0x3b, 0x7e, 0xd0, 0x04, 0xec, 0x92, 0x1a, 0x29, 0xca, 0xef, - 0xb6, 0xe3, 0x47, 0x7d, 0x11, 0x89, 0x60, 0xe6, 0x2e, 0x57, 0x65, 0xf6, 0x2e, 0xd7, 0xaf, 0xa7, - 0xdf, 0xe5, 0xaa, 0x61, 0xd5, 0x0f, 0x65, 0xd5, 0xf3, 0x4b, 0xfc, 0x95, 0xae, 0x74, 0xcd, 0x5f, - 0x51, 0xab, 0x7f, 0x95, 0x2b, 0x6a, 0x8b, 0x69, 0x57, 0xd4, 0x3e, 0x80, 0x0a, 0x5e, 0x1e, 0xb2, - 0xce, 0x1d, 0x21, 0xc3, 0x91, 0x2f, 0xaf, 0xa1, 0xdf, 0x2e, 0xda, 0x73, 0xdc, 0xd0, 0x04, 0x5f, - 0xfd, 0x0c, 0xe6, 0x6f, 0x8b, 0x2d, 0xfd, 0x1c, 0x6f, 0x8b, 0xc9, 0x4b, 0x4e, 0x9b, 0x50, 0x52, - 0xeb, 0xc4, 0x18, 0xe4, 0x4f, 0x7d, 0x6f, 0xac, 0x7c, 0x1c, 0xe2, 0x37, 0xab, 0x43, 0x36, 0xf4, - 0x64, 0xe1, 0x6c, 0xe8, 0x19, 0xbf, 0x0a, 0x15, 0x8d, 0xd4, 0xd8, 0x1b, 0x64, 0x97, 0x14, 0xba, - 0x99, 0x94, 0x2d, 0x69, 0x16, 0xcb, 0x12, 0xda, 0x19, 0x0a, 0x7e, 0x33, 0x74, 0x7c, 0x8e, 0xf7, - 0x3a, 0x2d, 0x9f, 0x5f, 0x70, 0x3f, 0x50, 0x3e, 0xa7, 0x46, 0x94, 0x61, 0x12, 0xdc, 0xf8, 0x35, - 0x58, 0x4e, 0xac, 0xad, 0x64, 0x11, 0x6f, 0xc1, 0x02, 0xce, 0x9b, 0x0a, 0x1a, 0x48, 0xde, 0xda, - 0x92, 0x79, 0x78, 0x87, 0x95, 0xdc, 0x65, 0xd6, 0xc4, 0xf7, 0x4e, 0xb0, 0x91, 0x8c, 0x59, 0x91, - 0xb0, 0x23, 0xdf, 0x3b, 0x31, 0xfe, 0x34, 0x07, 0xb9, 0x3d, 0x6f, 0xa2, 0x07, 0xb1, 0x65, 0xe6, - 0x82, 0xd8, 0xa4, 0xc2, 0x69, 0x45, 0x0a, 0xa5, 0x94, 0xd9, 0xd1, 0x51, 0xa4, 0x94, 0xca, 0x7b, - 0x50, 0x17, 0x7c, 0x22, 0xf4, 0x84, 0xc6, 0xfe, 0xdc, 0xf6, 0x49, 0x20, 0xce, 0xd1, 0xe6, 0xb3, - 0xc7, 0x61, 0xdf, 0xdb, 0x25, 0x38, 0x5b, 0x81, 0x5c, 0xa4, 0xbe, 0x60, 0xb6, 0x48, 0xb2, 0x35, - 0x58, 0xc0, 0x68, 0xe6, 0x2b, 0xe9, 0xf4, 0x96, 0x29, 0xf6, 0x75, 0x58, 0x4e, 0xd6, 0x4b, 0xac, - 0x48, 0xca, 0x46, 0x7a, 0xc5, 0xc8, 0x93, 0x6e, 0x82, 0xe0, 0x23, 0x84, 0x23, 0x83, 0x6b, 0x4e, - 0x39, 0xc7, 0x2c, 0x8d, 0xe9, 0x95, 0x12, 0x4c, 0xef, 0x0e, 0x54, 0xc2, 0xd1, 0x85, 0x35, 0xb1, - 0xaf, 0x46, 0x9e, 0x3d, 0x94, 0xfb, 0x1b, 0xc2, 0xd1, 0xc5, 0x11, 0x41, 0xd8, 0x03, 0x80, 0xf1, - 0x64, 0x22, 0xf7, 0x1e, 0x3a, 0x3f, 0x62, 0x52, 0x3e, 0x38, 0x3a, 0x22, 0x92, 0x33, 0xcb, 0xe3, - 0xc9, 0x84, 0x7e, 0xb2, 0x1d, 0xa8, 0xa7, 0xde, 0xbd, 0xbc, 0xad, 0x82, 0x6f, 0xbd, 0xc9, 0x66, - 0xca, 0xe6, 0xac, 0x0d, 0x74, 0xd8, 0xc6, 0xf7, 0x80, 0xfd, 0x94, 0x37, 0x20, 0xfb, 0x50, 0x8e, - 0xfa, 0xa7, 0x5f, 0x20, 0xc4, 0x70, 0xfa, 0x4a, 0xe2, 0x02, 0x61, 0x6b, 0x38, 0xf4, 0x05, 0x5f, - 0xa4, 0x03, 0x33, 0x62, 0xf9, 0xa0, 0x9d, 0x98, 0x2d, 0xe2, 0xfb, 0xc6, 0x7f, 0xcb, 0x40, 0x81, - 0x6e, 0x33, 0xbe, 0x0d, 0x8b, 0x84, 0x1f, 0x05, 0x04, 0x4a, 0x57, 0x39, 0x9d, 0xbb, 0x7d, 0x19, - 0x0b, 0x28, 0xb6, 0x85, 0x76, 0x97, 0x3b, 0x1b, 0xad, 0xbc, 0x76, 0x9f, 0xfb, 0x0e, 0x94, 0xa3, - 0xa6, 0x35, 0xd2, 0x29, 0xa9, 0x96, 0xd9, 0xeb, 0x90, 0x3f, 0xf7, 0x26, 0xca, 0xf2, 0x03, 0xf1, - 0x4c, 0x9a, 0x08, 0x8f, 0xfb, 0x22, 0xda, 0xa0, 0xce, 0x4b, 0x8b, 0x45, 0xd4, 0x08, 0x92, 0xc1, - 0xfc, 0x18, 0x17, 0x52, 0xc6, 0x78, 0x0c, 0x8b, 0x82, 0x0f, 0x68, 0x31, 0x2d, 0xd7, 0x1f, 0x9a, - 0xef, 0x0a, 0x09, 0x6f, 0x30, 0x9a, 0x0e, 0xb9, 0x6e, 0x7b, 0xc3, 0x00, 0x38, 0x09, 0x57, 0x92, - 0xb5, 0xf1, 0xfb, 0x19, 0xe2, 0x2f, 0xa2, 0x5e, 0x76, 0x0f, 0xf2, 0xe2, 0x7c, 0x9b, 0xb1, 0xc4, - 0x47, 0xf7, 0x1a, 0x04, 0x9e, 0x89, 0x18, 0x62, 0xe9, 0xd0, 0x6b, 0xaf, 0xd7, 0x5e, 0x33, 0x2b, - 0xee, 0x74, 0x1c, 0x99, 0xae, 0xbe, 0xa6, 0x86, 0x35, 0x63, 0xf6, 0xa1, 0xd1, 0x47, 0xdb, 0x74, - 0x53, 0x8b, 0xa4, 0xcb, 0x27, 0x4e, 0x4c, 0x25, 0x05, 0x0e, 0xcf, 0xb8, 0x16, 0x41, 0xf7, 0x47, - 0x59, 0xa8, 0x25, 0x7a, 0x84, 0xa1, 0x84, 0xe2, 0x00, 0x20, 0xc7, 0x92, 0x5c, 0x6f, 0x10, 0x20, - 0x29, 0xa8, 0x6b, 0xf3, 0x94, 0x4d, 0xcc, 0x53, 0x14, 0x9c, 0x93, 0xd3, 0x83, 0x73, 0x1e, 0x42, - 0x39, 0xbe, 0xc3, 0x9f, 0xec, 0x92, 0x68, 0x4f, 0xdd, 0xee, 0x88, 0x91, 0xe2, 0x70, 0x9e, 0x82, - 0x1e, 0xce, 0xf3, 0x5d, 0x2d, 0xfa, 0x63, 0x01, 0xab, 0x31, 0xd2, 0x66, 0xf4, 0xe7, 0x12, 0xfb, - 0x61, 0x7c, 0x0c, 0x15, 0xad, 0xf3, 0x7a, 0x94, 0x47, 0x26, 0x11, 0xe5, 0x11, 0xdd, 0xc3, 0xca, - 0xc6, 0xf7, 0xb0, 0x8c, 0xbf, 0x9e, 0x85, 0x9a, 0xd8, 0x5f, 0x8e, 0x7b, 0x76, 0xe4, 0x8d, 0x9c, - 0x01, 0x3a, 0x9a, 0xa2, 0x1d, 0x26, 0x05, 0x2d, 0xb5, 0xcf, 0xe4, 0x16, 0x23, 0x39, 0x4b, 0xbf, - 0x6e, 0x4a, 0x4c, 0x3a, 0xba, 0x6e, 0x6a, 0x40, 0x4d, 0x30, 0x46, 0x74, 0x19, 0xc5, 0xef, 0x03, - 0x98, 0x95, 0x53, 0xce, 0xb7, 0xec, 0x80, 0x38, 0xe4, 0xd7, 0x61, 0x59, 0xe0, 0xe0, 0x4d, 0xbb, - 0xb1, 0x33, 0x1a, 0x39, 0x84, 0x49, 0x86, 0xa6, 0xc6, 0x29, 0xe7, 0xa6, 0x1d, 0xf2, 0x03, 0x91, - 0x21, 0x9f, 0x13, 0x28, 0x0d, 0x9d, 0xc0, 0x3e, 0x89, 0x03, 0x3e, 0xa3, 0x34, 0x7a, 0x96, 0xed, - 0x4b, 0xcd, 0xb3, 0x4c, 0x06, 0x88, 0xca, 0xd8, 0xbe, 0x8c, 0x3c, 0xcb, 0x33, 0x94, 0x54, 0x9c, - 0xa5, 0x24, 0xe3, 0xdf, 0x65, 0xa1, 0xa2, 0x91, 0xe5, 0xab, 0x9c, 0xae, 0xb7, 0xe7, 0x1c, 0x83, - 0x65, 0xdd, 0x07, 0xf8, 0x66, 0xb2, 0x49, 0x8c, 0x7d, 0xa1, 0x87, 0x0b, 0x34, 0x02, 0xbe, 0x05, - 0x65, 0xb1, 0xeb, 0x3e, 0x40, 0x13, 0xac, 0x7c, 0xb8, 0x03, 0x01, 0x47, 0xd3, 0x13, 0x95, 0xf9, - 0x08, 0x33, 0x0b, 0x71, 0xe6, 0x23, 0x91, 0xf9, 0xa2, 0x10, 0xec, 0x8f, 0xa0, 0x2a, 0x6b, 0xc5, - 0x35, 0xc5, 0xe1, 0xc6, 0xbb, 0x3e, 0xb1, 0xde, 0x66, 0x85, 0x9a, 0xa3, 0xc5, 0x97, 0x05, 0x1f, - 0xa9, 0x82, 0xa5, 0x97, 0x15, 0x7c, 0x44, 0x09, 0x63, 0x37, 0x8a, 0x6a, 0xc7, 0xb8, 0x2b, 0xc5, - 0xc7, 0x1e, 0xc0, 0xb2, 0x62, 0x57, 0x53, 0xd7, 0x76, 0x5d, 0x6f, 0xea, 0x0e, 0xb8, 0xba, 0xa0, - 0xc5, 0x64, 0xd6, 0x71, 0x9c, 0x63, 0x0c, 0xa3, 0x1b, 0xbc, 0x14, 0xbf, 0x75, 0x1f, 0x0a, 0x24, - 0x97, 0x93, 0xf0, 0x91, 0xce, 0xb8, 0x08, 0x85, 0xdd, 0x83, 0x02, 0x89, 0xe7, 0xd9, 0x6b, 0x99, - 0x0d, 0x21, 0x18, 0x2d, 0x60, 0xa2, 0xe0, 0x01, 0x0f, 0x7d, 0x67, 0x10, 0xc4, 0x77, 0xbf, 0x0a, - 0x42, 0xff, 0xa4, 0xb6, 0x62, 0xcb, 0x6d, 0x8c, 0x89, 0x3a, 0x2a, 0xe1, 0x88, 0x83, 0x69, 0x39, - 0x51, 0x87, 0x14, 0x97, 0x46, 0xb0, 0x76, 0xc2, 0xc3, 0xe7, 0x9c, 0xbb, 0xae, 0x10, 0x86, 0x06, - 0xdc, 0x0d, 0x7d, 0x7b, 0x24, 0x16, 0x89, 0x46, 0xf0, 0x78, 0xae, 0xd6, 0xd8, 0x06, 0xb2, 0x15, - 0x17, 0xdc, 0x8e, 0xca, 0x11, 0xef, 0x58, 0x3d, 0x49, 0xcb, 0xdb, 0xf8, 0x15, 0xd8, 0xb8, 0xbe, - 0x50, 0xca, 0x0d, 0xcf, 0x7b, 0x49, 0xae, 0x12, 0xf9, 0x01, 0x47, 0x9e, 0x1d, 0x52, 0x6f, 0x74, - 0xce, 0xd2, 0x85, 0x8a, 0x96, 0x13, 0x9f, 0xfd, 0x19, 0x14, 0xee, 0x28, 0x21, 0x4e, 0x24, 0xd7, - 0xf3, 0xc7, 0xe8, 0x77, 0x1b, 0x5a, 0x71, 0xed, 0x19, 0x73, 0x31, 0x86, 0xe3, 0x95, 0x76, 0x63, - 0x13, 0x16, 0x51, 0xb2, 0xd7, 0x0e, 0xba, 0x17, 0x09, 0x83, 0xc6, 0x0a, 0xb0, 0x2e, 0xf1, 0x2e, - 0x3d, 0xde, 0xf3, 0x3f, 0xe7, 0xa0, 0xa2, 0x81, 0xc5, 0x69, 0x84, 0x01, 0x80, 0xd6, 0xd0, 0xb1, - 0xc7, 0x5c, 0x39, 0x39, 0x6b, 0x66, 0x0d, 0xa1, 0x3b, 0x12, 0x28, 0xce, 0x62, 0xfb, 0xe2, 0xcc, - 0xf2, 0xa6, 0xa1, 0x35, 0xe4, 0x67, 0x3e, 0x57, 0xbd, 0xac, 0xda, 0x17, 0x67, 0x87, 0xd3, 0x70, - 0x07, 0x61, 0x02, 0x4b, 0xf0, 0x12, 0x0d, 0x4b, 0xc6, 0xac, 0x8d, 0xed, 0xcb, 0x18, 0x4b, 0x06, - 0x4e, 0x12, 0x65, 0xe6, 0xa3, 0xc0, 0x49, 0xd2, 0x16, 0x67, 0x0f, 0xd0, 0xc2, 0xfc, 0x01, 0xfa, - 0x4d, 0x58, 0xa3, 0x03, 0x54, 0xb2, 0x66, 0x6b, 0x66, 0x27, 0xaf, 0x60, 0xae, 0x1c, 0xa4, 0x26, - 0xf6, 0x36, 0xc4, 0x08, 0x14, 0x5b, 0x0a, 0x9c, 0x1f, 0x12, 0x23, 0xcb, 0x98, 0x62, 0x64, 0xb2, - 0xf2, 0x9e, 0xf3, 0x43, 0x2e, 0x30, 0x31, 0x3a, 0x46, 0xc7, 0x94, 0x17, 0x2c, 0xc6, 0x8e, 0x3b, - 0x8b, 0x69, 0x5f, 0x26, 0x31, 0xcb, 0x12, 0xd3, 0xbe, 0xd4, 0x31, 0x1f, 0xc3, 0xfa, 0x98, 0x0f, - 0x1d, 0x3b, 0x59, 0xad, 0x15, 0x0b, 0x6e, 0x2b, 0x94, 0xad, 0x95, 0xe9, 0x91, 0xe2, 0x2e, 0x66, - 0xe3, 0x87, 0xde, 0xf8, 0xc4, 0x21, 0x99, 0x85, 0xe2, 0x75, 0xf2, 0x66, 0xdd, 0x9d, 0x8e, 0x7f, - 0x80, 0x60, 0x51, 0x24, 0x30, 0x6a, 0x50, 0xe9, 0x85, 0xde, 0x44, 0x2d, 0x73, 0x1d, 0xaa, 0x94, - 0x94, 0xb7, 0x1e, 0x6f, 0xc1, 0x4d, 0x64, 0x09, 0x7d, 0x6f, 0xe2, 0x8d, 0xbc, 0xb3, 0xab, 0x84, - 0x1d, 0xef, 0x3f, 0x64, 0x60, 0x39, 0x91, 0x2b, 0xd9, 0xeb, 0x37, 0x89, 0x9f, 0x45, 0x57, 0xd7, - 0x68, 0x0f, 0x2e, 0x69, 0x7b, 0x90, 0x10, 0x89, 0x99, 0xa9, 0xeb, 0x6c, 0xad, 0xf8, 0xc9, 0x05, - 0x55, 0x90, 0x58, 0x4a, 0x73, 0x9e, 0xa5, 0xc8, 0xf2, 0xea, 0x31, 0x06, 0x55, 0xc5, 0x2f, 0xc8, - 0x4b, 0x30, 0x43, 0x39, 0xe4, 0x5c, 0xf2, 0x26, 0x81, 0x6e, 0xf3, 0x53, 0x3d, 0x88, 0x0d, 0x81, - 0x81, 0xf1, 0xcf, 0x32, 0x00, 0x71, 0xef, 0xf0, 0x2e, 0x43, 0x24, 0xb7, 0x64, 0x30, 0x0c, 0x55, - 0x93, 0x51, 0xde, 0x80, 0x6a, 0x14, 0xb1, 0x1c, 0x4b, 0x42, 0x15, 0x05, 0x13, 0xe2, 0xd0, 0x3b, - 0xb0, 0x78, 0x36, 0xf2, 0x4e, 0x50, 0x62, 0x95, 0x72, 0x0b, 0xc5, 0xab, 0xd5, 0x09, 0xac, 0xa4, - 0x91, 0x58, 0x6e, 0xca, 0xa7, 0x06, 0x35, 0xeb, 0x52, 0x90, 0xf1, 0x77, 0xb3, 0x51, 0xe8, 0x66, - 0x3c, 0x13, 0x2f, 0x56, 0xef, 0x7e, 0x92, 0x58, 0x9a, 0x17, 0xb9, 0x17, 0x3f, 0x86, 0xba, 0x4f, - 0x87, 0x92, 0x3a, 0xb1, 0xf2, 0x2f, 0x38, 0xb1, 0x6a, 0x7e, 0x42, 0xd2, 0x79, 0x17, 0x1a, 0xf6, - 0xf0, 0x82, 0xfb, 0xa1, 0x83, 0xd6, 0x7a, 0x94, 0x8f, 0x65, 0xb0, 0xa4, 0x06, 0x47, 0x41, 0xf4, - 0x1d, 0x58, 0x94, 0x37, 0x71, 0x23, 0x4c, 0xf9, 0xb6, 0x4f, 0x0c, 0x16, 0x88, 0xc6, 0xbf, 0x54, - 0xb1, 0xa2, 0xc9, 0xd5, 0x7d, 0xf1, 0xac, 0xe8, 0x23, 0xcc, 0xce, 0x3b, 0x50, 0x25, 0x21, 0x49, - 0x27, 0x80, 0xe4, 0x47, 0x04, 0x94, 0x2e, 0x80, 0xe4, 0xb4, 0xe6, 0x5f, 0x65, 0x5a, 0x8d, 0xff, - 0x98, 0x81, 0xe2, 0x9e, 0x37, 0xd9, 0x73, 0x28, 0x9a, 0x1f, 0xb7, 0x49, 0xe4, 0xa3, 0x5a, 0x10, - 0x49, 0x0c, 0xfc, 0x79, 0xc1, 0x85, 0xb3, 0x54, 0x31, 0xaf, 0x96, 0x14, 0xf3, 0xbe, 0x0b, 0xb7, - 0xd0, 0x05, 0xe8, 0x7b, 0x13, 0xcf, 0x17, 0x5b, 0xd5, 0x1e, 0x91, 0xb8, 0xe7, 0xb9, 0xe1, 0xb9, - 0xe2, 0x9d, 0x37, 0x4f, 0x39, 0x3f, 0xd2, 0x30, 0x0e, 0x22, 0x04, 0xbc, 0xd2, 0x39, 0x0a, 0x2f, - 0x2c, 0xd2, 0xd0, 0xa5, 0x3c, 0x4a, 0x1c, 0x75, 0x51, 0x64, 0xb4, 0x11, 0x8e, 0x12, 0xa9, 0xf1, - 0x2d, 0x28, 0x47, 0xc6, 0x1e, 0xf6, 0x1e, 0x94, 0xcf, 0xbd, 0x89, 0xb4, 0x08, 0x65, 0x12, 0x97, - 0xf2, 0xe4, 0xa8, 0xcd, 0xd2, 0x39, 0xfd, 0x08, 0x8c, 0x3f, 0x2d, 0x42, 0xb1, 0xe3, 0x5e, 0x78, - 0xce, 0x00, 0xa3, 0x4d, 0xc7, 0x7c, 0xec, 0xa9, 0xe7, 0x00, 0xc4, 0x6f, 0x8c, 0xcd, 0x8a, 0x5f, - 0xe8, 0xc9, 0xc9, 0xd8, 0xac, 0xe8, 0x6d, 0x9e, 0x55, 0x58, 0xf0, 0xf5, 0x27, 0x76, 0x0a, 0x3e, - 0xc6, 0xbf, 0x47, 0xe7, 0x65, 0x41, 0x7b, 0x4e, 0x41, 0xd4, 0x45, 0x4f, 0xbf, 0xe0, 0x94, 0xd1, - 0xf5, 0xcc, 0x32, 0x42, 0x70, 0xc2, 0x5e, 0x83, 0xa2, 0xbc, 0x03, 0x47, 0x97, 0x96, 0x28, 0x60, - 0x5d, 0x82, 0x90, 0x1a, 0x7c, 0x4e, 0x2e, 0xdc, 0x48, 0x90, 0xcd, 0x99, 0x55, 0x05, 0xdc, 0x11, - 0xb4, 0x76, 0x07, 0x2a, 0x84, 0x4f, 0x28, 0x25, 0x19, 0xa4, 0x89, 0x20, 0x44, 0x48, 0x79, 0xa9, - 0xaa, 0x9c, 0xfa, 0x52, 0x15, 0x86, 0x13, 0x47, 0x5c, 0x96, 0x86, 0x08, 0xf4, 0x3e, 0x91, 0x06, - 0x57, 0x0f, 0xbd, 0x49, 0x9b, 0x0a, 0xdd, 0x56, 0x56, 0x36, 0x95, 0x37, 0xa1, 0x76, 0x6a, 0x8f, - 0x46, 0x27, 0xf6, 0xe0, 0x19, 0x99, 0x02, 0xaa, 0x64, 0xfd, 0x54, 0x40, 0xb4, 0x05, 0xdc, 0x81, - 0x8a, 0xb6, 0xca, 0x18, 0x81, 0x99, 0x37, 0x21, 0x5e, 0xdf, 0x59, 0x0b, 0x5f, 0xfd, 0x15, 0x2c, - 0x7c, 0x5a, 0x24, 0xea, 0x62, 0x32, 0x12, 0xf5, 0x16, 0x72, 0x53, 0x19, 0x72, 0xd8, 0xa0, 0xc7, - 0x70, 0xec, 0xe1, 0x10, 0x43, 0x0e, 0xd1, 0x90, 0x45, 0x93, 0x47, 0xf9, 0x4b, 0xa4, 0x4b, 0x10, - 0x8c, 0x50, 0x6e, 0x93, 0x99, 0x7a, 0x62, 0x3b, 0x43, 0xbc, 0x74, 0x40, 0xd6, 0x83, 0xa2, 0x3d, - 0x0e, 0x8f, 0x6c, 0x67, 0xc8, 0xee, 0x42, 0x55, 0x65, 0xe3, 0xe9, 0xb8, 0x4c, 0xf3, 0x2f, 0xb3, - 0xc5, 0x99, 0x68, 0x40, 0x2d, 0xc2, 0x18, 0xc7, 0x57, 0x8e, 0x2b, 0x12, 0x05, 0xe9, 0xe0, 0x03, - 0x8c, 0xf2, 0x09, 0x39, 0x5e, 0x2c, 0xae, 0x3f, 0xba, 0x15, 0x05, 0x1f, 0x20, 0x95, 0xaa, 0xff, - 0xe4, 0x1c, 0x23, 0x4c, 0x21, 0xdc, 0x91, 0x8f, 0x6e, 0x2d, 0x21, 0xff, 0x4a, 0x54, 0xf4, 0xd1, - 0x11, 0x02, 0xfb, 0x96, 0xa6, 0xbf, 0x36, 0x11, 0xf9, 0xb5, 0x99, 0xfa, 0xaf, 0xbb, 0x94, 0x75, - 0x1b, 0xc0, 0x09, 0xc4, 0x29, 0x13, 0x70, 0x77, 0x88, 0x77, 0x84, 0x4b, 0x66, 0xd9, 0x09, 0x9e, - 0x10, 0xe0, 0x67, 0xab, 0xd8, 0xb6, 0xa0, 0xaa, 0x0f, 0x93, 0x95, 0x20, 0x7f, 0x78, 0xd4, 0xee, - 0x36, 0x6e, 0xb0, 0x0a, 0x14, 0x7b, 0xed, 0x7e, 0x7f, 0x1f, 0x3d, 0x7d, 0x55, 0x28, 0x45, 0x17, - 0x19, 0xb3, 0x22, 0xd5, 0xda, 0xde, 0x6e, 0x1f, 0xf5, 0xdb, 0x3b, 0x8d, 0xdc, 0xf7, 0xf3, 0xa5, - 0x6c, 0x23, 0x67, 0xfc, 0x59, 0x0e, 0x2a, 0xda, 0x2c, 0xbc, 0x98, 0x19, 0xdf, 0x06, 0x40, 0x4d, - 0x32, 0x8e, 0x48, 0xcd, 0x9b, 0x65, 0x01, 0xa1, 0xc5, 0xd7, 0x7d, 0x14, 0x39, 0x7a, 0x65, 0x49, - 0xf9, 0x28, 0xde, 0x84, 0x1a, 0x3d, 0x58, 0xa4, 0xfb, 0x6b, 0x0b, 0x66, 0x95, 0x80, 0x92, 0x55, - 0xe3, 0x0d, 0x67, 0x44, 0xc2, 0xeb, 0x75, 0xf2, 0xf9, 0x12, 0x02, 0xe1, 0x05, 0x3b, 0xbc, 0x1d, - 0x19, 0x78, 0xa3, 0x0b, 0x4e, 0x18, 0x24, 0x11, 0x56, 0x24, 0xac, 0x2f, 0xef, 0x6a, 0x4b, 0x7e, - 0xa8, 0x5d, 0xb1, 0x2d, 0x98, 0x55, 0x02, 0xca, 0x86, 0xbe, 0xae, 0x08, 0x88, 0xa2, 0x57, 0xd6, - 0xe7, 0xa9, 0x21, 0x41, 0x3c, 0xfb, 0x73, 0x66, 0xc4, 0x32, 0x12, 0xc6, 0xd7, 0xe6, 0xcb, 0xbd, - 0xdc, 0x9c, 0xc8, 0xde, 0x03, 0x36, 0x9e, 0x4c, 0xac, 0x14, 0x03, 0x5f, 0xde, 0x5c, 0x1c, 0x4f, - 0x26, 0x7d, 0xcd, 0xfe, 0xf5, 0x33, 0xb0, 0x3d, 0x7e, 0x01, 0xac, 0x25, 0x36, 0x30, 0x76, 0x31, - 0x52, 0xc5, 0x62, 0xb6, 0x9c, 0xd1, 0xd9, 0x72, 0x0a, 0xf7, 0xcb, 0xa6, 0x72, 0xbf, 0x17, 0xf1, - 0x09, 0x63, 0x17, 0x2a, 0x47, 0xda, 0x73, 0x68, 0x77, 0xc5, 0x09, 0xa1, 0x1e, 0x42, 0xa3, 0xb3, - 0x83, 0x6c, 0x8a, 0xbe, 0x7c, 0xff, 0x4c, 0xeb, 0x4d, 0x56, 0xeb, 0x8d, 0xf1, 0x4f, 0x32, 0xf4, - 0xd4, 0x4c, 0xd4, 0xf9, 0xf8, 0x05, 0x36, 0xe5, 0x7e, 0x8b, 0x6f, 0xc2, 0x57, 0x94, 0xdb, 0x4d, - 0x5e, 0x62, 0xc7, 0xae, 0x59, 0xde, 0xe9, 0x69, 0xc0, 0x55, 0x8c, 0x47, 0x05, 0x61, 0x87, 0x08, - 0x52, 0xc2, 0xb7, 0x90, 0xf0, 0x1d, 0xaa, 0x3f, 0x90, 0x81, 0x1d, 0x42, 0xf8, 0x3e, 0xb0, 0x2f, - 0x65, 0xab, 0x81, 0x10, 0x41, 0xa4, 0x7f, 0x40, 0x5d, 0x96, 0x8d, 0xd2, 0xc6, 0x3f, 0x92, 0x97, - 0xf5, 0x67, 0xe7, 0xf7, 0x3e, 0x94, 0xa2, 0x5a, 0x93, 0x27, 0xac, 0xc2, 0x8c, 0xf2, 0xc5, 0x39, - 0x8e, 0xc6, 0x90, 0x44, 0x8f, 0x69, 0x73, 0xa1, 0x8f, 0xa7, 0xa3, 0xf5, 0xfa, 0x7d, 0x60, 0xa7, - 0x8e, 0x3f, 0x8b, 0x4c, 0x9b, 0xad, 0x81, 0x39, 0x1a, 0xb6, 0x71, 0x0c, 0xcb, 0x8a, 0x4b, 0x68, - 0x1a, 0x41, 0x72, 0xf1, 0x32, 0x2f, 0x61, 0xf2, 0xd9, 0x39, 0x26, 0x6f, 0xfc, 0x66, 0x01, 0x8a, - 0xea, 0x69, 0xc1, 0xb4, 0xe7, 0xf0, 0xca, 0xc9, 0xe7, 0xf0, 0x9a, 0x89, 0xa7, 0x93, 0x70, 0xe9, - 0xe5, 0x79, 0xff, 0xce, 0xec, 0x91, 0xad, 0xf9, 0x2a, 0x12, 0xc7, 0xb6, 0xf4, 0x55, 0x14, 0x92, - 0xbe, 0x8a, 0xb4, 0x27, 0x02, 0x49, 0xf4, 0x9c, 0x7b, 0x22, 0xf0, 0x16, 0x90, 0x1c, 0xa1, 0x05, - 0xb7, 0x95, 0x10, 0x20, 0xce, 0x9c, 0xa4, 0xd8, 0x51, 0x9a, 0x15, 0x3b, 0x5e, 0x59, 0x24, 0xf8, - 0x26, 0x2c, 0xd0, 0xf3, 0x1a, 0xf2, 0xf2, 0xaf, 0x3a, 0x38, 0xe4, 0x5c, 0xa9, 0xff, 0x74, 0xe3, - 0xc1, 0x94, 0xb8, 0xfa, 0x7b, 0x5b, 0x95, 0xc4, 0x7b, 0x5b, 0xba, 0x0f, 0xa5, 0x9a, 0xf4, 0xa1, - 0xdc, 0x83, 0x46, 0x34, 0x71, 0x68, 0x91, 0x74, 0x03, 0x79, 0x73, 0xb0, 0xae, 0xe0, 0x82, 0x1b, - 0x76, 0x83, 0xf8, 0xe0, 0xab, 0x27, 0x0e, 0x3e, 0xc1, 0xab, 0x5a, 0x61, 0xc8, 0xc7, 0x93, 0x50, - 0x1d, 0x7c, 0xda, 0xab, 0x8c, 0xb4, 0xf2, 0x8b, 0xb8, 0xf2, 0x6a, 0x79, 0x89, 0x3a, 0xb6, 0xa0, - 0x7e, 0x6a, 0x3b, 0xa3, 0xa9, 0xcf, 0x2d, 0x9f, 0xdb, 0x81, 0xe7, 0xe2, 0xe6, 0x8f, 0xcf, 0x60, - 0x39, 0xc4, 0x5d, 0xc2, 0x31, 0x11, 0xc5, 0xac, 0x9d, 0xea, 0x49, 0xbc, 0xc4, 0xa4, 0xcf, 0x84, - 0x38, 0xb2, 0xe4, 0x1d, 0x62, 0x8a, 0x55, 0xe9, 0x74, 0xad, 0xdd, 0xfd, 0xce, 0x27, 0x7b, 0xfd, - 0x46, 0x46, 0x24, 0x7b, 0xc7, 0xdb, 0xdb, 0xed, 0xf6, 0x0e, 0x1e, 0x61, 0x00, 0x0b, 0xbb, 0xad, - 0xce, 0xbe, 0x3c, 0xc0, 0xf2, 0x8d, 0x82, 0xf1, 0x6f, 0xb2, 0x50, 0xd1, 0x46, 0xc3, 0x1e, 0x47, - 0x8b, 0x40, 0x2f, 0x40, 0xdd, 0x9e, 0x1f, 0xf1, 0xa6, 0xe2, 0xf0, 0xda, 0x2a, 0x44, 0xef, 0x2f, - 0x66, 0xaf, 0x7d, 0x7f, 0x91, 0xbd, 0x0d, 0x8b, 0x36, 0xd5, 0x10, 0x4d, 0xba, 0x34, 0xee, 0x4b, - 0xb0, 0x9c, 0x73, 0x8c, 0x20, 0x8d, 0x8f, 0x29, 0x81, 0x97, 0x57, 0x41, 0x9b, 0xd1, 0x49, 0x85, - 0x6b, 0x53, 0x94, 0x33, 0x23, 0x9d, 0xf1, 0xd1, 0x81, 0x2f, 0xe7, 0x4b, 0x65, 0x0b, 0x16, 0x94, - 0xa0, 0xf0, 0xaa, 0x19, 0xa5, 0x8d, 0x0f, 0x01, 0xe2, 0xf1, 0x24, 0xa7, 0xef, 0x46, 0x72, 0xfa, - 0x32, 0xda, 0xf4, 0x65, 0x8d, 0x7f, 0x21, 0x59, 0x97, 0x5c, 0x8b, 0xc8, 0xd4, 0xf7, 0x75, 0x50, - 0xc6, 0x47, 0x0b, 0x83, 0xbc, 0x27, 0x23, 0x1e, 0xaa, 0xc7, 0x0c, 0x96, 0x64, 0x4e, 0x27, 0xca, - 0x98, 0x63, 0xb5, 0xd9, 0x79, 0x56, 0xfb, 0x06, 0x54, 0x05, 0x9b, 0x95, 0x84, 0x14, 0x48, 0x76, - 0x55, 0x19, 0xdb, 0x97, 0xaa, 0xed, 0x04, 0x8f, 0xcd, 0xcf, 0xf0, 0xd8, 0xdf, 0xc9, 0xd0, 0xdb, - 0x22, 0x71, 0x47, 0x63, 0x26, 0x1b, 0xd5, 0x99, 0x64, 0xb2, 0x12, 0xd5, 0x8c, 0xf2, 0xaf, 0x61, - 0x9c, 0xd9, 0x74, 0xc6, 0x99, 0xce, 0x92, 0x73, 0xa9, 0x2c, 0xd9, 0xd8, 0x80, 0xe6, 0x0e, 0x17, - 0x53, 0xd1, 0x1a, 0x8d, 0x66, 0xe6, 0xd2, 0xb8, 0x05, 0x37, 0x53, 0xf2, 0xa4, 0xd5, 0xe6, 0x53, - 0x58, 0x6d, 0xd1, 0xa3, 0x0b, 0x3f, 0xab, 0xcb, 0x93, 0x46, 0x13, 0xd6, 0x66, 0xab, 0x94, 0x8d, - 0xed, 0xc2, 0xd2, 0x0e, 0x3f, 0x99, 0x9e, 0xed, 0xf3, 0x8b, 0xb8, 0x21, 0x06, 0xf9, 0xe0, 0xdc, - 0x7b, 0x2e, 0x17, 0x17, 0x7f, 0x63, 0x58, 0xa6, 0xc0, 0xb1, 0x82, 0x09, 0x1f, 0x28, 0xcb, 0x3d, - 0x42, 0x7a, 0x13, 0x3e, 0x30, 0x1e, 0x03, 0xd3, 0xeb, 0x91, 0x2b, 0x21, 0xd4, 0xaa, 0xe9, 0x89, - 0x15, 0x5c, 0x05, 0x21, 0x1f, 0xab, 0x4b, 0x83, 0x10, 0x4c, 0x4f, 0x7a, 0x04, 0x31, 0xde, 0x81, - 0xea, 0x91, 0x7d, 0x65, 0xf2, 0x2f, 0xe4, 0xdd, 0xbc, 0x75, 0x28, 0x4e, 0xec, 0x2b, 0xc1, 0x4f, - 0x23, 0x27, 0x1e, 0x66, 0x1b, 0x7f, 0x90, 0x87, 0x05, 0xc2, 0x64, 0x77, 0xe9, 0x75, 0x63, 0xc7, - 0x45, 0x7e, 0xa6, 0x4e, 0x16, 0x0d, 0x34, 0x77, 0xf8, 0x64, 0xe7, 0x0f, 0x1f, 0x69, 0x71, 0x54, - 0xaf, 0x3a, 0x29, 0x77, 0x8b, 0x3b, 0x1d, 0xab, 0xa7, 0x9c, 0x92, 0x2f, 0x0f, 0xe4, 0xe3, 0xf7, - 0xaf, 0xe9, 0xd6, 0x75, 0xd2, 0x21, 0x1e, 0x2b, 0x6f, 0xd4, 0x3b, 0x75, 0xa6, 0xca, 0x73, 0x47, - 0x07, 0xa5, 0x6a, 0x88, 0x45, 0x75, 0xe1, 0x34, 0xa9, 0x21, 0xce, 0x69, 0x82, 0xa5, 0x97, 0x6b, - 0x82, 0x64, 0x8a, 0x7c, 0x81, 0x26, 0x08, 0xaf, 0xa0, 0x09, 0xbe, 0x82, 0x33, 0xfa, 0x26, 0x94, - 0x50, 0x50, 0xd2, 0x8e, 0x21, 0x21, 0x20, 0x89, 0x63, 0xe8, 0x23, 0x4d, 0x57, 0xa2, 0x48, 0x18, - 0xed, 0x1c, 0x30, 0xf9, 0x17, 0x3f, 0x1f, 0x27, 0xdf, 0x53, 0x28, 0x4a, 0xa8, 0x20, 0x68, 0xd7, - 0x1e, 0xab, 0x87, 0xf1, 0xf0, 0xb7, 0x98, 0x36, 0x7c, 0xcd, 0xeb, 0x8b, 0xa9, 0xe3, 0xf3, 0xa1, - 0x7a, 0xf1, 0xc8, 0xc1, 0x3d, 0x2a, 0x20, 0x62, 0x80, 0x42, 0x6f, 0x73, 0xbd, 0xe7, 0xae, 0xe4, - 0x3d, 0x45, 0x27, 0x78, 0x22, 0x92, 0x06, 0x83, 0x06, 0x3e, 0x8d, 0x39, 0xf1, 0x7c, 0x75, 0xca, - 0x1b, 0x7f, 0x98, 0x81, 0x86, 0xdc, 0x5d, 0x51, 0x9e, 0xae, 0x36, 0x15, 0xae, 0x0b, 0xdc, 0x78, - 0xf1, 0xfb, 0x45, 0x06, 0xd4, 0xd0, 0x5a, 0x14, 0x1d, 0xf9, 0x64, 0xed, 0xaa, 0x08, 0xe0, 0xae, - 0x3c, 0xf6, 0x5f, 0x87, 0x8a, 0x0a, 0x1a, 0x1f, 0x3b, 0x23, 0xf5, 0xd4, 0x3d, 0x45, 0x8d, 0x1f, - 0x38, 0x23, 0x25, 0x31, 0xf8, 0xb6, 0xbc, 0x00, 0x9d, 0x41, 0x89, 0xc1, 0xb4, 0x43, 0x6e, 0xfc, - 0xeb, 0x0c, 0x2c, 0x69, 0x43, 0x91, 0xfb, 0xf6, 0x3b, 0x50, 0x8d, 0xde, 0xa4, 0xe5, 0x91, 0xa8, - 0xba, 0x9e, 0x64, 0x34, 0x71, 0xb1, 0xca, 0x20, 0x82, 0x04, 0xa2, 0x33, 0x43, 0xfb, 0x8a, 0x22, - 0x9b, 0xa7, 0x63, 0xa5, 0x0d, 0x0e, 0xed, 0xab, 0x5d, 0xce, 0x7b, 0xd3, 0xb1, 0xd0, 0xf5, 0x9f, - 0x73, 0xfe, 0x2c, 0x42, 0x20, 0xf6, 0x09, 0x02, 0x26, 0x31, 0x0c, 0xa8, 0x8d, 0x3d, 0x37, 0x3c, - 0x8f, 0x50, 0xa4, 0x98, 0x8e, 0x40, 0xc2, 0x31, 0xfe, 0x24, 0x0b, 0xcb, 0x64, 0x93, 0x94, 0xb6, - 0x60, 0xc9, 0xba, 0x9a, 0xb0, 0x40, 0xe6, 0x59, 0x62, 0x5e, 0x7b, 0x37, 0x4c, 0x99, 0x66, 0xdf, - 0x7c, 0x45, 0x3b, 0xaa, 0xba, 0x63, 0x7d, 0xcd, 0xf4, 0xe7, 0xe6, 0xa7, 0xff, 0xfa, 0xe9, 0x4d, - 0xf3, 0x0c, 0x17, 0xd2, 0x3c, 0xc3, 0xaf, 0xe2, 0x8f, 0x9d, 0xbb, 0x0d, 0x5c, 0x94, 0x38, 0xda, - 0x6d, 0xe0, 0xc7, 0xb0, 0x9e, 0xc0, 0x41, 0x6e, 0xed, 0x9c, 0x3a, 0x5c, 0xbd, 0x58, 0xb3, 0xa2, - 0x61, 0xf7, 0x54, 0xde, 0x56, 0x11, 0x0a, 0xc1, 0xc0, 0x9b, 0x70, 0x63, 0x0d, 0x56, 0x92, 0xb3, - 0x2a, 0x8f, 0x89, 0xdf, 0xcd, 0x40, 0x53, 0xc6, 0xf1, 0x38, 0xee, 0xd9, 0x9e, 0x13, 0x84, 0x9e, - 0x1f, 0xbd, 0xdd, 0x7a, 0x1b, 0x80, 0x1e, 0xe3, 0x47, 0xe5, 0x5b, 0xbe, 0xd1, 0x82, 0x10, 0x54, - 0xbd, 0x6f, 0x42, 0x89, 0xbb, 0x43, 0xca, 0x24, 0x6a, 0x28, 0x72, 0x77, 0xa8, 0x14, 0xf7, 0xb9, - 0xa3, 0xb4, 0x96, 0x14, 0x12, 0xe4, 0x8b, 0x08, 0x62, 0x76, 0xf8, 0x05, 0x1e, 0xe9, 0xf9, 0xe8, - 0x45, 0x84, 0x03, 0xfb, 0x12, 0xa3, 0x62, 0x03, 0xe3, 0xef, 0x67, 0x61, 0x31, 0xee, 0x1f, 0xbd, - 0xb7, 0xf2, 0xe2, 0x97, 0x63, 0xee, 0x4a, 0x72, 0x70, 0x84, 0xc2, 0xa3, 0x59, 0x6a, 0x4b, 0xb4, - 0x39, 0x3b, 0x2e, 0x33, 0xa0, 0xa2, 0x30, 0xbc, 0x69, 0xa8, 0x3d, 0xa1, 0x58, 0x26, 0x94, 0xc3, - 0x69, 0x28, 0x34, 0x54, 0xa1, 0xaa, 0x3b, 0xae, 0xd4, 0x11, 0x0b, 0xf6, 0x38, 0xec, 0xe0, 0xb7, - 0x1d, 0x04, 0x58, 0x14, 0xa3, 0x85, 0x14, 0x58, 0x02, 0xbf, 0x41, 0x0a, 0x0b, 0xad, 0x1c, 0x2a, - 0x2b, 0xba, 0x34, 0x4f, 0x8f, 0x54, 0x47, 0xd2, 0xfc, 0xeb, 0x50, 0xa1, 0xca, 0xe3, 0xcb, 0xdf, - 0x79, 0xb3, 0x8c, 0x2d, 0x60, 0xbe, 0xb4, 0x9a, 0x79, 0xd3, 0x84, 0xad, 0x00, 0xa8, 0x29, 0x0c, - 0x93, 0xf9, 0x5b, 0x19, 0xb8, 0x99, 0xb2, 0x6c, 0x72, 0x97, 0x6f, 0xc3, 0xd2, 0x69, 0x94, 0xa9, - 0x66, 0x97, 0xb6, 0xfa, 0x9a, 0x62, 0xab, 0xc9, 0x39, 0x35, 0x1b, 0xa7, 0x49, 0x40, 0xac, 0xa5, - 0xd2, 0x0a, 0x26, 0x9e, 0x16, 0x40, 0x91, 0x88, 0x96, 0x91, 0x14, 0xc4, 0x23, 0xd8, 0x68, 0x5f, - 0x0a, 0x8e, 0x11, 0x85, 0xd6, 0x0e, 0x9e, 0x4d, 0x95, 0xf7, 0x6a, 0xc6, 0x22, 0x9f, 0x79, 0x25, - 0x8b, 0xfc, 0x90, 0xee, 0x22, 0x47, 0x75, 0xfd, 0x24, 0x95, 0xe0, 0x01, 0x2a, 0xca, 0x9c, 0x60, - 0x15, 0xea, 0x8d, 0x01, 0x01, 0xa2, 0x4a, 0x8d, 0x00, 0x16, 0x0f, 0xa6, 0xa3, 0xd0, 0xd9, 0x8e, - 0x40, 0xec, 0x9b, 0xb2, 0x0c, 0xb6, 0xa3, 0x66, 0x2d, 0xb5, 0x21, 0x88, 0x1a, 0xc2, 0xc9, 0x1a, - 0x8b, 0x8a, 0xac, 0xf9, 0xf6, 0x16, 0xc7, 0xc9, 0x16, 0x8c, 0x9b, 0xb0, 0x1e, 0xa7, 0x68, 0xda, - 0xd4, 0x51, 0xf3, 0x8f, 0x33, 0x14, 0x82, 0x4f, 0x79, 0x3d, 0xd7, 0x9e, 0x04, 0xe7, 0x5e, 0xc8, - 0xda, 0xb0, 0x1c, 0x38, 0xee, 0xd9, 0x88, 0xeb, 0xd5, 0x07, 0x72, 0x12, 0x56, 0x93, 0x7d, 0xa3, - 0xa2, 0x81, 0xb9, 0x44, 0x25, 0xe2, 0xda, 0x02, 0xb6, 0x75, 0x5d, 0x27, 0x63, 0xb2, 0x98, 0x99, - 0x8d, 0xf9, 0xce, 0x77, 0xa0, 0x9e, 0x6c, 0x88, 0x7d, 0x24, 0xaf, 0xf0, 0xc7, 0xbd, 0xca, 0xcd, - 0xdc, 0x6f, 0x8e, 0x09, 0xa2, 0x12, 0xcf, 0x7d, 0x60, 0xfc, 0x9d, 0x0c, 0x34, 0x4d, 0x2e, 0x28, - 0x57, 0xeb, 0xa5, 0xa2, 0x99, 0xef, 0xcc, 0xd5, 0x7a, 0xfd, 0x58, 0xd5, 0xcb, 0x00, 0xaa, 0x47, - 0xef, 0x5f, 0xbb, 0x18, 0x7b, 0x37, 0xe6, 0x46, 0xb4, 0x55, 0x82, 0x05, 0x42, 0x31, 0xd6, 0x61, - 0x55, 0xf6, 0x47, 0xf5, 0x25, 0x76, 0xb7, 0x26, 0x5a, 0x4c, 0xb8, 0x5b, 0x37, 0xa0, 0x49, 0x77, - 0x75, 0xf5, 0x41, 0xc8, 0x82, 0x3b, 0xc0, 0x0e, 0xec, 0x81, 0xed, 0x7b, 0x9e, 0x7b, 0xc4, 0x7d, - 0x19, 0xd0, 0x8c, 0x12, 0x26, 0x7a, 0x23, 0x95, 0x28, 0x4c, 0x29, 0xf5, 0x70, 0xac, 0xe7, 0xaa, - 0xf8, 0x2d, 0x4a, 0x19, 0x26, 0x2c, 0x6f, 0xd9, 0xcf, 0xb8, 0xaa, 0x49, 0x4d, 0xd1, 0xc7, 0x50, - 0x99, 0x44, 0x95, 0xaa, 0x79, 0x57, 0x4f, 0x8c, 0xcc, 0x37, 0x6b, 0xea, 0xd8, 0xc6, 0x23, 0x58, - 0x49, 0xd6, 0x29, 0x59, 0xc7, 0x06, 0x94, 0xc6, 0x12, 0x26, 0x7b, 0x17, 0xa5, 0x8d, 0xdf, 0x2a, - 0x41, 0x51, 0x6a, 0xaa, 0x6c, 0x13, 0xf2, 0x03, 0x15, 0x43, 0x17, 0x3f, 0x6d, 0x25, 0x73, 0xd5, - 0xff, 0x6d, 0x8c, 0xa4, 0x13, 0x78, 0xec, 0x63, 0xa8, 0x27, 0xdd, 0xc8, 0x33, 0x2f, 0x01, 0x24, - 0xfd, 0xbf, 0xb5, 0xc1, 0x8c, 0xc3, 0xb0, 0x1c, 0x1f, 0x8e, 0x24, 0x33, 0x94, 0xce, 0xb5, 0xd3, - 0xd3, 0x73, 0x85, 0xbc, 0x1d, 0x9c, 0xdb, 0xd6, 0xa3, 0xc7, 0x1f, 0xca, 0xa7, 0x00, 0x2a, 0x08, - 0xec, 0x9d, 0xdb, 0x8f, 0x1e, 0x7f, 0x38, 0x2b, 0x49, 0xcb, 0x87, 0x00, 0x34, 0x49, 0x7a, 0x05, - 0x0a, 0xf4, 0x42, 0x2a, 0x05, 0x43, 0x51, 0x82, 0x3d, 0x84, 0x15, 0x65, 0xfc, 0x90, 0x61, 0xeb, - 0xc4, 0x05, 0x4b, 0x74, 0x53, 0x50, 0xe6, 0xf5, 0x30, 0x8b, 0xcc, 0x25, 0x6b, 0xb0, 0x70, 0x1e, - 0x3f, 0x77, 0x5b, 0x33, 0x65, 0xca, 0xf8, 0x93, 0x02, 0x54, 0xb4, 0x49, 0x61, 0x55, 0x28, 0x99, - 0xed, 0x5e, 0xdb, 0xfc, 0xac, 0xbd, 0xd3, 0xb8, 0xc1, 0xee, 0xc1, 0x5b, 0x9d, 0xee, 0xf6, 0xa1, - 0x69, 0xb6, 0xb7, 0xfb, 0xd6, 0xa1, 0x69, 0xa9, 0x07, 0xd6, 0x8e, 0x5a, 0x4f, 0x0f, 0xda, 0xdd, - 0xbe, 0xb5, 0xd3, 0xee, 0xb7, 0x3a, 0xfb, 0xbd, 0x46, 0x86, 0xbd, 0x06, 0xcd, 0x18, 0x53, 0x65, - 0xb7, 0x0e, 0x0e, 0x8f, 0xbb, 0xfd, 0x46, 0x96, 0xdd, 0x81, 0x5b, 0xbb, 0x9d, 0x6e, 0x6b, 0xdf, - 0x8a, 0x71, 0xb6, 0xf7, 0xfb, 0x9f, 0x59, 0xed, 0x5f, 0x3a, 0xea, 0x98, 0x4f, 0x1b, 0xb9, 0x34, - 0x84, 0xbd, 0xfe, 0xfe, 0xb6, 0xaa, 0x21, 0xcf, 0x6e, 0xc2, 0x2a, 0x21, 0x50, 0x11, 0xab, 0x7f, - 0x78, 0x68, 0xf5, 0x0e, 0x0f, 0xbb, 0x8d, 0x02, 0x5b, 0x82, 0x5a, 0xa7, 0xfb, 0x59, 0x6b, 0xbf, - 0xb3, 0x63, 0x99, 0xed, 0xd6, 0xfe, 0x41, 0x63, 0x81, 0x2d, 0xc3, 0xe2, 0x2c, 0x5e, 0x51, 0x54, - 0xa1, 0xf0, 0x0e, 0xbb, 0x9d, 0xc3, 0xae, 0xf5, 0x59, 0xdb, 0xec, 0x75, 0x0e, 0xbb, 0x8d, 0x12, - 0x5b, 0x03, 0x96, 0xcc, 0xda, 0x3b, 0x68, 0x6d, 0x37, 0xca, 0x6c, 0x15, 0x96, 0x92, 0xf0, 0x27, - 0xed, 0xa7, 0x0d, 0x60, 0x4d, 0x58, 0xa1, 0x8e, 0x59, 0x5b, 0xed, 0xfd, 0xc3, 0xcf, 0xad, 0x83, - 0x4e, 0xb7, 0x73, 0x70, 0x7c, 0xd0, 0xa8, 0xe0, 0xbb, 0x8d, 0xed, 0xb6, 0xd5, 0xe9, 0xf6, 0x8e, - 0x77, 0x77, 0x3b, 0xdb, 0x9d, 0x76, 0xb7, 0xdf, 0xa8, 0x52, 0xcb, 0x69, 0x03, 0xaf, 0x89, 0x02, - 0xf2, 0x6e, 0x8b, 0xb5, 0xd3, 0xe9, 0xb5, 0xb6, 0xf6, 0xdb, 0x3b, 0x8d, 0x3a, 0xbb, 0x0d, 0x37, - 0xfb, 0xed, 0x83, 0xa3, 0x43, 0xb3, 0x65, 0x3e, 0x55, 0x77, 0x5f, 0xac, 0xdd, 0x56, 0x67, 0xff, - 0xd8, 0x6c, 0x37, 0x16, 0xd9, 0x1b, 0x70, 0xdb, 0x6c, 0x7f, 0x7a, 0xdc, 0x31, 0xdb, 0x3b, 0x56, - 0xf7, 0x70, 0xa7, 0x6d, 0xed, 0xb6, 0x5b, 0xfd, 0x63, 0xb3, 0x6d, 0x1d, 0x74, 0x7a, 0xbd, 0x4e, - 0xf7, 0x93, 0x46, 0x83, 0xbd, 0x05, 0x77, 0x23, 0x94, 0xa8, 0x82, 0x19, 0xac, 0x25, 0x31, 0x3e, - 0xb5, 0xa4, 0xdd, 0xf6, 0x2f, 0xf5, 0xad, 0xa3, 0x76, 0xdb, 0x6c, 0x30, 0xb6, 0x01, 0x6b, 0x71, - 0xf3, 0xd4, 0x80, 0x6c, 0x7b, 0x59, 0xe4, 0x1d, 0xb5, 0xcd, 0x83, 0x56, 0x57, 0x2c, 0x70, 0x22, - 0x6f, 0x45, 0x74, 0x3b, 0xce, 0x9b, 0xed, 0xf6, 0x2a, 0x63, 0x50, 0xd7, 0x56, 0x65, 0xb7, 0x65, - 0x36, 0xd6, 0xd8, 0x22, 0x54, 0x0e, 0x8e, 0x8e, 0xac, 0x7e, 0xe7, 0xa0, 0x7d, 0x78, 0xdc, 0x6f, - 0xac, 0xb3, 0x55, 0x68, 0x74, 0xba, 0xfd, 0xb6, 0x29, 0xd6, 0x5a, 0x15, 0xfd, 0x9f, 0x45, 0xb6, - 0x02, 0x8b, 0xaa, 0xa7, 0x0a, 0xfa, 0xe7, 0x45, 0xb6, 0x0e, 0xec, 0xb8, 0x6b, 0xb6, 0x5b, 0x3b, - 0x62, 0xe2, 0xa2, 0x8c, 0xff, 0x55, 0x94, 0x2e, 0xa5, 0x3f, 0xcc, 0x45, 0x87, 0x75, 0x1c, 0xa3, - 0x91, 0x7c, 0xfc, 0xbc, 0xaa, 0x3d, 0x5a, 0xfe, 0xb2, 0xcf, 0x92, 0x68, 0xaa, 0x55, 0x6e, 0x4e, - 0xb5, 0x9a, 0xd3, 0xdd, 0x6b, 0xba, 0xec, 0xf7, 0x26, 0xd4, 0xc6, 0xf4, 0x10, 0xba, 0x7c, 0xf0, - 0x18, 0x64, 0xc0, 0x12, 0x01, 0xe9, 0xb5, 0xe3, 0xb9, 0xef, 0x72, 0x14, 0xe6, 0xbf, 0xcb, 0x91, - 0x26, 0xdf, 0x2f, 0xa4, 0xc9, 0xf7, 0xf7, 0x61, 0x89, 0x58, 0x93, 0xe3, 0x3a, 0x63, 0xa5, 0x35, - 0x93, 0x14, 0xb8, 0x88, 0x2c, 0x8a, 0xe0, 0x4a, 0x9d, 0x50, 0x2a, 0x87, 0x64, 0x21, 0x45, 0xa9, - 0x6d, 0x24, 0x34, 0x0d, 0xe2, 0x1c, 0x91, 0xa6, 0x11, 0xb5, 0x60, 0x5f, 0xc6, 0x2d, 0x54, 0xb4, - 0x16, 0x08, 0x8e, 0x2d, 0xdc, 0x87, 0x25, 0x7e, 0x19, 0xfa, 0xb6, 0xe5, 0x4d, 0xec, 0x2f, 0xa6, - 0xe8, 0xf3, 0xb6, 0x51, 0x87, 0xaf, 0x9a, 0x8b, 0x98, 0x71, 0x88, 0xf0, 0x1d, 0x3b, 0xb4, 0xef, - 0x7f, 0x09, 0x15, 0xed, 0x91, 0x7c, 0xb6, 0x0e, 0xcb, 0x9f, 0x77, 0xfa, 0xdd, 0x76, 0xaf, 0x67, - 0x1d, 0x1d, 0x6f, 0x3d, 0x69, 0x3f, 0xb5, 0xf6, 0x5a, 0xbd, 0xbd, 0xc6, 0x0d, 0xb1, 0x69, 0xbb, - 0xed, 0x5e, 0xbf, 0xbd, 0x93, 0x80, 0x67, 0xd8, 0xeb, 0xb0, 0x71, 0xdc, 0x3d, 0xee, 0xb5, 0x77, - 0xac, 0xb4, 0x72, 0x59, 0x41, 0xa5, 0x32, 0x3f, 0xa5, 0x78, 0xee, 0xfe, 0xaf, 0x41, 0x3d, 0x79, - 0x0d, 0x9c, 0x01, 0x2c, 0xec, 0xb7, 0x3f, 0x69, 0x6d, 0x3f, 0xa5, 0x97, 0x5d, 0x7b, 0xfd, 0x56, - 0xbf, 0xb3, 0x6d, 0xc9, 0x97, 0x5c, 0x05, 0x47, 0xc8, 0xb0, 0x0a, 0x14, 0x5b, 0xdd, 0xed, 0xbd, - 0x43, 0xb3, 0xd7, 0xc8, 0xb2, 0xd7, 0x60, 0x5d, 0xd1, 0xea, 0xf6, 0xe1, 0xc1, 0x41, 0xa7, 0x8f, - 0xcc, 0xb0, 0xff, 0xf4, 0x48, 0x90, 0xe6, 0x7d, 0x1b, 0xca, 0xf1, 0x53, 0xb4, 0xc8, 0x60, 0x3a, - 0xfd, 0x4e, 0xab, 0x1f, 0x73, 0xd7, 0xc6, 0x0d, 0xc1, 0xbf, 0x62, 0x30, 0xbe, 0x24, 0xdb, 0xc8, - 0xd0, 0x4d, 0x39, 0x05, 0xa4, 0xd6, 0x1b, 0x59, 0xb1, 0xa9, 0x62, 0xe8, 0xd6, 0x61, 0x5f, 0x0c, - 0xe1, 0xdb, 0x50, 0x4f, 0xc6, 0x43, 0x26, 0x0d, 0xdb, 0x1b, 0xb0, 0xb6, 0xd5, 0xee, 0x7f, 0xde, - 0x6e, 0x77, 0x71, 0x76, 0xb6, 0xdb, 0xdd, 0xbe, 0xd9, 0xda, 0xef, 0xf4, 0x9f, 0x36, 0x32, 0xf7, - 0x3f, 0x86, 0xc6, 0xac, 0xf3, 0x31, 0xe1, 0xad, 0x7d, 0x91, 0x5b, 0xf7, 0xfe, 0x7f, 0xc9, 0xc0, - 0x4a, 0x9a, 0xdd, 0x5d, 0xac, 0xa1, 0xdc, 0x9c, 0x82, 0x45, 0xf7, 0x0e, 0xbb, 0x56, 0xf7, 0x10, - 0x9f, 0x8e, 0xdc, 0x80, 0xb5, 0x99, 0x0c, 0xc5, 0x09, 0x32, 0xec, 0x16, 0xac, 0xcf, 0x15, 0xb2, - 0xcc, 0xc3, 0x63, 0x1c, 0x76, 0x13, 0x56, 0x66, 0x32, 0xdb, 0xa6, 0x79, 0x68, 0x36, 0x72, 0xec, - 0x7d, 0xb8, 0x37, 0x93, 0x33, 0x7f, 0x30, 0xa9, 0x73, 0x2b, 0xcf, 0xde, 0x81, 0x37, 0xe7, 0xb0, - 0x63, 0xde, 0x6d, 0x6d, 0xb5, 0xf6, 0xc5, 0xf0, 0x1a, 0x85, 0xfb, 0xff, 0x3c, 0x07, 0x10, 0x5f, - 0x38, 0x12, 0xed, 0xef, 0xb4, 0xfa, 0xad, 0xfd, 0x43, 0x41, 0x5e, 0xe6, 0x61, 0x5f, 0xd4, 0x6e, - 0xb6, 0x3f, 0x6d, 0xdc, 0x48, 0xcd, 0x39, 0x3c, 0x12, 0x03, 0x5a, 0x87, 0x65, 0x5a, 0xaa, 0x7d, - 0x31, 0x8c, 0x4e, 0xf7, 0x13, 0x7a, 0x85, 0x14, 0x4f, 0xbf, 0xe3, 0xa3, 0x5d, 0xf3, 0xb0, 0xdb, - 0xb7, 0x7a, 0x7b, 0xc7, 0xfd, 0x1d, 0x7c, 0xc3, 0x74, 0xdb, 0xec, 0x1c, 0x51, 0x9d, 0xf9, 0x17, - 0x21, 0x88, 0xaa, 0x0b, 0x62, 0x2f, 0x7c, 0x72, 0xd8, 0xeb, 0x75, 0x8e, 0xac, 0x4f, 0x8f, 0xdb, - 0x66, 0xa7, 0xdd, 0xc3, 0x82, 0x0b, 0x29, 0x70, 0x81, 0x5f, 0x14, 0x67, 0x66, 0x7f, 0xff, 0x33, - 0x79, 0xa8, 0x09, 0xd4, 0x52, 0x12, 0x24, 0xb0, 0xca, 0x62, 0x75, 0xc4, 0xa9, 0x90, 0x52, 0x33, - 0x5c, 0x93, 0x27, 0xca, 0x55, 0xc4, 0x79, 0x37, 0xb7, 0x49, 0xb0, 0x58, 0x35, 0x3d, 0x4b, 0x94, - 0xc2, 0xa3, 0x30, 0x12, 0x1c, 0x76, 0x76, 0x4c, 0x2c, 0x50, 0x9f, 0x83, 0x0a, 0xdc, 0x45, 0x41, - 0x84, 0xe2, 0xd8, 0x10, 0x28, 0x0d, 0x95, 0x10, 0x39, 0x4b, 0x8f, 0x7e, 0xfc, 0x2e, 0x94, 0xa3, - 0xc0, 0x63, 0xf6, 0x1b, 0x50, 0x4b, 0xdc, 0x04, 0x65, 0xca, 0x2c, 0x98, 0x76, 0x71, 0x74, 0xe3, - 0xb5, 0xf4, 0x4c, 0x29, 0x33, 0xbf, 0xfe, 0x57, 0x7e, 0xfc, 0x3f, 0xfe, 0x5e, 0xb6, 0xc9, 0xd6, - 0x1e, 0x5c, 0x7c, 0xf0, 0x40, 0xde, 0xb4, 0x7c, 0x80, 0x37, 0xb7, 0xe9, 0xe5, 0xc6, 0x67, 0x9a, - 0x06, 0x42, 0x8d, 0xbd, 0x36, 0xab, 0x15, 0x24, 0x5a, 0xbb, 0x7d, 0x4d, 0xae, 0x6c, 0xee, 0x35, - 0x6c, 0x6e, 0x8d, 0xad, 0xe8, 0xcd, 0xa9, 0x78, 0x55, 0xc6, 0xf1, 0x39, 0x55, 0xfd, 0x43, 0x85, - 0xec, 0x76, 0xfc, 0xb6, 0x65, 0xca, 0x07, 0x0c, 0x37, 0x6e, 0xce, 0x7f, 0x52, 0x50, 0x7e, 0x83, - 0xd0, 0x68, 0x62, 0x53, 0x8c, 0x35, 0x44, 0x53, 0xfa, 0x57, 0x06, 0xd9, 0x09, 0x54, 0xb4, 0x2f, - 0xf3, 0xb0, 0x9b, 0xd7, 0x7e, 0x45, 0x68, 0x63, 0x23, 0x2d, 0x2b, 0x6d, 0x28, 0x7a, 0xfd, 0x0f, - 0x4e, 0x39, 0x67, 0xbf, 0x0c, 0xe5, 0xe8, 0x7b, 0x2f, 0x6c, 0x5d, 0xfb, 0xfe, 0x8e, 0xfe, 0x7d, - 0x9a, 0x8d, 0xe6, 0x7c, 0x86, 0x52, 0x82, 0xb0, 0xf6, 0x55, 0x63, 0xae, 0xf7, 0xdf, 0xc9, 0xdc, - 0x67, 0x9f, 0x43, 0x45, 0xfb, 0xa6, 0x4b, 0x34, 0x80, 0xf9, 0xef, 0xc6, 0x44, 0x03, 0x48, 0xf9, - 0x04, 0x8c, 0xb1, 0x84, 0x4d, 0x54, 0x58, 0x59, 0x34, 0x81, 0x9f, 0x7c, 0x61, 0xfb, 0xb0, 0x2a, - 0xb5, 0xad, 0x13, 0xfe, 0x55, 0x96, 0x21, 0xe5, 0xcb, 0x8e, 0x0f, 0x33, 0xec, 0x63, 0x28, 0xa9, - 0x4f, 0xf7, 0xb0, 0xb5, 0xf4, 0x4f, 0x10, 0x6d, 0xac, 0xcf, 0xc1, 0xa5, 0x6a, 0xf4, 0x14, 0x20, - 0xfe, 0x80, 0x0c, 0x53, 0x13, 0x35, 0xf7, 0x41, 0x9a, 0x88, 0x02, 0xe6, 0xbf, 0x36, 0x63, 0xac, - 0xe1, 0x00, 0x1b, 0xac, 0x2e, 0x06, 0xe8, 0xf2, 0xe7, 0xea, 0xcd, 0xeb, 0x5f, 0x87, 0x8a, 0xf6, - 0x0d, 0x99, 0x68, 0xfa, 0xe6, 0xbf, 0x3f, 0x13, 0x4d, 0x5f, 0xca, 0x27, 0x67, 0x8c, 0x0d, 0xac, - 0x7d, 0xc5, 0x58, 0x14, 0xb5, 0x0b, 0x71, 0x4b, 0x8a, 0x3d, 0x62, 0x81, 0xce, 0xa1, 0x96, 0xf8, - 0x50, 0x4c, 0xb4, 0x43, 0xd3, 0x3e, 0x43, 0x13, 0xed, 0xd0, 0xd4, 0x6f, 0xcb, 0x28, 0x3a, 0x33, - 0x96, 0x44, 0x3b, 0xf4, 0xaa, 0x95, 0xd6, 0xd2, 0x0f, 0xa0, 0xa2, 0x7d, 0xf4, 0x25, 0x1a, 0xcb, - 0xfc, 0xf7, 0x65, 0xa2, 0xb1, 0xa4, 0x7d, 0x23, 0x66, 0x05, 0xdb, 0xa8, 0x1b, 0x48, 0x0a, 0xf8, - 0x28, 0xaf, 0xa8, 0xfb, 0x37, 0xa0, 0x9e, 0xfc, 0x0e, 0x4c, 0xb4, 0xf7, 0x53, 0x3f, 0x28, 0x13, - 0xed, 0xfd, 0x6b, 0x3e, 0x1e, 0x23, 0x49, 0xfa, 0xfe, 0x72, 0xd4, 0xc8, 0x83, 0x1f, 0xc9, 0x2b, - 0x54, 0x5f, 0xb2, 0x4f, 0x05, 0x83, 0x93, 0x8f, 0x46, 0xb3, 0x75, 0x8d, 0x6a, 0xf5, 0xd7, 0xa7, - 0xa3, 0xfd, 0x32, 0xf7, 0xbe, 0x74, 0x92, 0x98, 0xb1, 0x72, 0xf6, 0x09, 0x2c, 0x47, 0xc4, 0x1c, - 0xbd, 0x02, 0x1d, 0x44, 0x63, 0x48, 0x7d, 0x6b, 0x7a, 0xa3, 0x31, 0x9b, 0xfb, 0x30, 0xc3, 0x0e, - 0xa0, 0x28, 0x9f, 0xd6, 0x65, 0xab, 0xb3, 0x4f, 0xed, 0x52, 0xbf, 0xd6, 0xd2, 0x5f, 0xe0, 0x35, - 0x96, 0xb1, 0x57, 0x35, 0x56, 0x11, 0xbd, 0x3a, 0xe3, 0xa1, 0x23, 0xea, 0x70, 0x61, 0x71, 0xf6, - 0xc9, 0xe5, 0xdb, 0xd7, 0x3d, 0x51, 0x41, 0xd5, 0xbf, 0xfe, 0xe2, 0x17, 0x2c, 0x92, 0xac, 0x48, - 0x71, 0xd3, 0x07, 0x32, 0x62, 0x87, 0xfd, 0x2a, 0x54, 0xf5, 0x6f, 0x47, 0x30, 0x9d, 0x27, 0xcc, - 0xb6, 0x74, 0x2b, 0x35, 0x2f, 0x49, 0x25, 0xac, 0xaa, 0x37, 0xc3, 0x3e, 0x83, 0xb5, 0x68, 0x9a, - 0xf5, 0x37, 0x16, 0x02, 0x76, 0x27, 0xe5, 0xe5, 0x85, 0xc4, 0x64, 0xdf, 0xbc, 0xf6, 0x69, 0x86, - 0x87, 0x19, 0x41, 0x7d, 0xc9, 0x77, 0xf2, 0xe3, 0x93, 0x27, 0xed, 0xf3, 0x00, 0xf1, 0xc9, 0x93, - 0xfa, 0xb8, 0xbe, 0xa2, 0x3e, 0xb6, 0x9c, 0x98, 0x23, 0x8a, 0x65, 0x66, 0x3f, 0x80, 0x45, 0xed, - 0x01, 0x89, 0xde, 0x95, 0x3b, 0x88, 0x76, 0xd2, 0xfc, 0x63, 0xaa, 0x1b, 0x69, 0xf6, 0x49, 0x63, - 0x1d, 0xeb, 0x5f, 0x32, 0x12, 0x93, 0x23, 0x76, 0xd1, 0x36, 0x54, 0xf4, 0xc7, 0x29, 0x5e, 0x50, - 0xef, 0xba, 0x96, 0xa5, 0xbf, 0xdb, 0xf9, 0x30, 0xc3, 0xf6, 0xa1, 0x31, 0xfb, 0x94, 0x5c, 0xc4, - 0x53, 0xd2, 0x9e, 0xdf, 0xdb, 0x98, 0xc9, 0x4c, 0x3c, 0x40, 0xc7, 0x8e, 0xe8, 0x36, 0x4c, 0xf4, - 0x19, 0x44, 0xcf, 0x9f, 0x3d, 0xd5, 0x93, 0x9f, 0x47, 0x8c, 0x6a, 0x4b, 0xfb, 0x30, 0xe6, 0xbd, - 0xcc, 0xc3, 0x0c, 0xfb, 0xed, 0x0c, 0x54, 0x13, 0x4f, 0x29, 0x25, 0xee, 0x1b, 0xcc, 0x8c, 0xb3, - 0xa9, 0xe7, 0xe9, 0x03, 0x35, 0x4c, 0x9c, 0xc4, 0xfd, 0xfb, 0xdf, 0x4f, 0x2c, 0xd2, 0x8f, 0x12, - 0xee, 0xbd, 0xcd, 0xd9, 0xef, 0x24, 0x7e, 0x39, 0x8b, 0xa0, 0x3f, 0xcf, 0xfb, 0xe5, 0xc3, 0x0c, - 0xfb, 0x57, 0x19, 0xa8, 0x27, 0xfd, 0xf6, 0xd1, 0x70, 0x53, 0x23, 0x04, 0x22, 0x52, 0xba, 0xc6, - 0xd9, 0xff, 0x03, 0xec, 0x65, 0xff, 0xbe, 0x99, 0xe8, 0xa5, 0xfc, 0xc2, 0xc3, 0x4f, 0xd7, 0x5b, - 0xf6, 0x8b, 0xf4, 0x59, 0x62, 0x15, 0xff, 0xc5, 0xe6, 0x3f, 0x63, 0x1b, 0x91, 0x9f, 0xfe, 0xd1, - 0x57, 0x23, 0xf7, 0x37, 0xb3, 0x19, 0x5c, 0x89, 0x5f, 0xa7, 0x8f, 0x02, 0xaa, 0x10, 0x20, 0x41, - 0xca, 0xaf, 0x5c, 0xc9, 0x5b, 0x38, 0xb0, 0xd7, 0x8d, 0x9b, 0x89, 0x81, 0xcd, 0x4a, 0x1f, 0xbb, - 0xd4, 0x45, 0xf9, 0xe1, 0xd6, 0xf8, 0xf8, 0x9c, 0xfb, 0x98, 0xeb, 0x4b, 0x7a, 0x3a, 0xa6, 0x9e, - 0xca, 0x32, 0x89, 0x4d, 0xf7, 0xaa, 0x75, 0xdd, 0xc7, 0x0e, 0xbf, 0x65, 0xdc, 0xb9, 0xb6, 0xc3, - 0x0f, 0xd0, 0x1b, 0x2f, 0xba, 0x7d, 0x04, 0x10, 0x47, 0x6a, 0xb2, 0x99, 0x78, 0xc1, 0x88, 0x15, - 0xcd, 0x07, 0x73, 0x26, 0x77, 0xb6, 0x0a, 0x2b, 0x14, 0x35, 0xfe, 0x32, 0x31, 0xd6, 0x28, 0x92, - 0x51, 0x97, 0xc3, 0x92, 0x41, 0x95, 0x09, 0x39, 0x6c, 0xb6, 0xfe, 0x04, 0x5b, 0x8d, 0xc2, 0x16, - 0x8f, 0xa1, 0xb6, 0xef, 0x79, 0xcf, 0xa6, 0x93, 0xe8, 0x76, 0x40, 0x32, 0xf8, 0x66, 0xcf, 0x0e, - 0xce, 0x37, 0x66, 0x46, 0x61, 0xdc, 0xc5, 0xaa, 0x36, 0x58, 0x53, 0xab, 0xea, 0xc1, 0x8f, 0xe2, - 0xf0, 0xd0, 0x2f, 0x99, 0x0d, 0x4b, 0x11, 0xb7, 0x8e, 0x43, 0x30, 0x93, 0xd5, 0x24, 0x78, 0xf4, - 0x6c, 0x13, 0x09, 0x85, 0x41, 0xf5, 0xf6, 0x41, 0xa0, 0xea, 0x7c, 0x98, 0x61, 0x47, 0x50, 0xdd, - 0xe1, 0x03, 0x7c, 0x5e, 0x02, 0x03, 0x4d, 0x96, 0x13, 0x41, 0x0b, 0x14, 0xa1, 0xb2, 0x51, 0x4b, - 0x00, 0x93, 0x27, 0xd8, 0xc4, 0xbe, 0xf2, 0xf9, 0x17, 0x0f, 0x7e, 0x24, 0x43, 0x58, 0xbe, 0x54, - 0x27, 0x58, 0x1c, 0xce, 0xa4, 0x8b, 0x01, 0xc9, 0x98, 0xa0, 0xc4, 0x09, 0x36, 0x17, 0x13, 0x94, - 0x98, 0xea, 0x28, 0x78, 0x69, 0x04, 0x4b, 0x73, 0x61, 0x44, 0xd1, 0xe1, 0x75, 0x5d, 0xf0, 0xd1, - 0xc6, 0xdd, 0xeb, 0x11, 0x92, 0xad, 0xdd, 0x4f, 0xb6, 0xd6, 0x83, 0x1a, 0xbd, 0xc2, 0x7b, 0xc2, - 0xe9, 0xa2, 0xe9, 0xcc, 0x2b, 0x4d, 0xfa, 0x2d, 0xd6, 0xd9, 0xa3, 0x06, 0xf3, 0x92, 0xb2, 0x0e, - 0x5e, 0x35, 0x64, 0xa7, 0xf8, 0x6d, 0x0a, 0xed, 0x66, 0x67, 0x44, 0x8c, 0xf3, 0xb7, 0x4d, 0x23, - 0x62, 0x4c, 0xb9, 0x08, 0x6a, 0xdc, 0xc6, 0xba, 0xd7, 0xd9, 0x6a, 0x54, 0xf7, 0x03, 0xd7, 0x1b, - 0xf2, 0xb1, 0xac, 0xf5, 0x97, 0xa1, 0xf2, 0x09, 0x0f, 0xd5, 0x55, 0xca, 0x48, 0xaa, 0x9f, 0xb9, - 0x5b, 0xb9, 0x91, 0x72, 0x01, 0x36, 0x49, 0x9b, 0x54, 0x33, 0x1f, 0x9e, 0x71, 0x62, 0x87, 0x96, - 0x33, 0xfc, 0x92, 0xfd, 0x12, 0x56, 0x1e, 0x3d, 0x1c, 0xb0, 0xa6, 0x75, 0x53, 0xaf, 0x7c, 0x71, - 0x06, 0x9e, 0x56, 0xb3, 0xe8, 0xb3, 0x26, 0x5d, 0xba, 0x50, 0xd1, 0x1e, 0x18, 0x89, 0xe6, 0x66, - 0xfe, 0x41, 0x99, 0x68, 0x6e, 0x52, 0xde, 0x23, 0x31, 0xee, 0x61, 0x3b, 0x06, 0xbb, 0x1b, 0xb7, - 0x43, 0x6f, 0x90, 0xc4, 0x2d, 0x3d, 0xf8, 0x91, 0x3d, 0x0e, 0xbf, 0x64, 0x9f, 0xd3, 0x72, 0x68, - 0x57, 0x45, 0x63, 0x35, 0x65, 0xf6, 0x56, 0x69, 0x34, 0x59, 0x5a, 0x56, 0x52, 0x75, 0xa1, 0xa6, - 0x50, 0x76, 0x7c, 0x0c, 0xd0, 0x0b, 0xbd, 0xc9, 0x8e, 0xcd, 0xc7, 0x9e, 0x1b, 0x33, 0xf6, 0xf8, - 0xf2, 0x62, 0xcc, 0x27, 0xb5, 0x1b, 0x8c, 0xec, 0x73, 0x4d, 0xaf, 0x4b, 0x5c, 0x72, 0x56, 0x44, - 0x7c, 0xed, 0xfd, 0xc6, 0x68, 0x42, 0x52, 0xee, 0x38, 0x3e, 0xcc, 0xb0, 0x16, 0x40, 0x1c, 0xaf, - 0x16, 0x69, 0x69, 0x73, 0xa1, 0x70, 0x11, 0x7b, 0x4d, 0x09, 0x6e, 0x3b, 0x82, 0x72, 0x1c, 0xe8, - 0xb3, 0x1e, 0xbf, 0x97, 0x94, 0x08, 0x0b, 0x8a, 0x64, 0x86, 0xb9, 0x20, 0x1b, 0xa3, 0x81, 0x53, - 0x05, 0xac, 0x24, 0xa6, 0xea, 0x94, 0xf3, 0x80, 0x39, 0xb0, 0x4c, 0x1d, 0x8c, 0x04, 0x34, 0xbc, - 0x74, 0x17, 0x7d, 0x11, 0x66, 0x3e, 0xde, 0x25, 0xe2, 0x1a, 0xa9, 0x51, 0x1b, 0x37, 0xb1, 0x85, - 0x65, 0xa3, 0xae, 0x4e, 0x19, 0xba, 0xf0, 0x27, 0x8e, 0x80, 0x31, 0x2c, 0xcd, 0x05, 0x06, 0x44, - 0xac, 0xe3, 0xba, 0x48, 0x8f, 0x88, 0x75, 0x5c, 0x1b, 0x53, 0x60, 0xac, 0x62, 0x93, 0x8b, 0x06, - 0xa0, 0x72, 0xf9, 0xdc, 0x09, 0x07, 0xe7, 0xa2, 0xb9, 0xdf, 0xcb, 0xc0, 0x72, 0x8a, 0xeb, 0x9f, - 0xbd, 0xa1, 0xec, 0x14, 0xd7, 0x86, 0x05, 0x6c, 0xa4, 0xba, 0x88, 0x8d, 0x1e, 0xb6, 0x73, 0xc0, - 0x9e, 0x24, 0x0e, 0x50, 0xf2, 0xd0, 0xca, 0x9d, 0xf9, 0x42, 0x31, 0x26, 0x55, 0x86, 0xf9, 0x02, - 0xd6, 0xa9, 0x23, 0xad, 0xd1, 0x68, 0xc6, 0x7d, 0xfd, 0xba, 0xd6, 0x8b, 0x14, 0x97, 0x7c, 0x42, - 0x23, 0x48, 0xba, 0xe5, 0xaf, 0x11, 0xe0, 0xa9, 0xab, 0x6c, 0x0a, 0x8d, 0x59, 0xb7, 0x30, 0xbb, - 0xbe, 0xae, 0x8d, 0x3b, 0x09, 0x8d, 0x3b, 0xc5, 0x95, 0xfc, 0x35, 0x6c, 0xec, 0x8e, 0xb1, 0x91, - 0x36, 0x2f, 0xa4, 0x84, 0x8b, 0xf5, 0xf8, 0xcb, 0x91, 0x0f, 0x7b, 0x66, 0x9c, 0x77, 0xa2, 0x27, - 0xee, 0xd3, 0x3d, 0xee, 0x91, 0xce, 0x9f, 0xee, 0x02, 0x7f, 0x1b, 0x9b, 0xbf, 0x6b, 0xdc, 0x4a, - 0x6b, 0xde, 0xa7, 0x22, 0xa4, 0xfd, 0xaf, 0xcf, 0xee, 0x6b, 0xd5, 0x83, 0xbb, 0x69, 0xeb, 0x7d, - 0xad, 0xf6, 0x35, 0x33, 0xd7, 0x37, 0x50, 0x90, 0xac, 0xea, 0x3e, 0xeb, 0x68, 0xfb, 0xa4, 0x38, - 0xc7, 0xa3, 0xed, 0x93, 0xe6, 0xe4, 0x4e, 0xca, 0x4f, 0xca, 0xbd, 0xfd, 0x9d, 0xcc, 0xfd, 0xad, - 0x77, 0x7e, 0xf0, 0xb5, 0x33, 0x27, 0x3c, 0x9f, 0x9e, 0x6c, 0x0e, 0xbc, 0xf1, 0x83, 0x91, 0xb2, - 0x6f, 0xca, 0x9b, 0xe9, 0x0f, 0x46, 0xee, 0xf0, 0x01, 0x56, 0x7b, 0xb2, 0x30, 0xf1, 0xbd, 0xd0, - 0xfb, 0xc6, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0x28, 0x9c, 0x70, 0xa8, 0x15, 0x87, 0x00, 0x00, + 0x76, 0x58, 0xf3, 0x25, 0x92, 0x87, 0x0f, 0x51, 0x57, 0x2f, 0xb6, 0x7a, 0x7a, 0xba, 0xa7, 0xe6, + 0xd5, 0xd3, 0x33, 0xab, 0xee, 0xe9, 0xdd, 0x9e, 0xd9, 0xdd, 0x89, 0xd7, 0x4b, 0x49, 0xd4, 0x88, + 0xdb, 0x12, 0xa5, 0x29, 0x52, 0x33, 0x9e, 0xf5, 0xa3, 0x5c, 0x22, 0xaf, 0xa4, 0x72, 0x93, 0x55, + 0x9c, 0xaa, 0xa2, 0x5a, 0xda, 0xc1, 0xe4, 0x23, 0xc8, 0x0b, 0x46, 0x12, 0x20, 0x48, 0x1c, 0x20, + 0x4e, 0x8c, 0x3c, 0x8c, 0x24, 0xc8, 0x8f, 0x11, 0xc4, 0x4e, 0x80, 0x00, 0xf9, 0x8e, 0x7f, 0x12, + 0x04, 0x81, 0x9d, 0x8f, 0x04, 0x86, 0x81, 0x00, 0x89, 0xf3, 0x17, 0x18, 0xc8, 0x57, 0x3e, 0x02, + 0x04, 0xf7, 0x9c, 0x7b, 0xab, 0x6e, 0x91, 0xa5, 0xee, 0x9e, 0xf5, 0x64, 0x7f, 0x24, 0xde, 0x73, + 0xcf, 0x7d, 0x9f, 0x7b, 0xee, 0x79, 0xdd, 0x5b, 0x50, 0xf6, 0x27, 0x83, 0xcd, 0x89, 0xef, 0x85, + 0x1e, 0x2b, 0x8c, 0x5c, 0x7f, 0x32, 0xd8, 0x78, 0xe5, 0xcc, 0xf3, 0xce, 0x46, 0xfc, 0x81, 0x3d, + 0x71, 0x1e, 0xd8, 0xae, 0xeb, 0x85, 0x76, 0xe8, 0x78, 0x6e, 0x40, 0x48, 0xc6, 0x9f, 0x64, 0x20, + 0x7f, 0x1c, 0x5e, 0x7a, 0xec, 0x31, 0x54, 0xed, 0xe1, 0xd0, 0xe7, 0x41, 0x60, 0x85, 0x57, 0x13, + 0xde, 0xcc, 0xdc, 0xcd, 0xdc, 0xab, 0x3f, 0x62, 0x9b, 0x58, 0xc9, 0x66, 0x8b, 0xb2, 0xfa, 0x57, + 0x13, 0x6e, 0x56, 0xec, 0x38, 0xc1, 0x9a, 0x50, 0x94, 0xc9, 0x66, 0xf6, 0x6e, 0xe6, 0x5e, 0xd9, + 0x54, 0x49, 0x76, 0x1b, 0xc0, 0x1e, 0x7b, 0x53, 0x37, 0xb4, 0x02, 0x3b, 0x6c, 0xe6, 0xee, 0x66, + 0xee, 0xe5, 0xcc, 0x32, 0x41, 0x7a, 0x76, 0xc8, 0x6e, 0x41, 0x79, 0xf2, 0xd4, 0x0a, 0x06, 0xbe, + 0x33, 0x09, 0x9b, 0x79, 0x2c, 0x5a, 0x9a, 0x3c, 0xed, 0x61, 0x9a, 0xbd, 0x0b, 0x25, 0x6f, 0x1a, + 0x4e, 0x3c, 0xc7, 0x0d, 0x9b, 0x85, 0xbb, 0x99, 0x7b, 0x95, 0x47, 0x8b, 0xb2, 0x23, 0x87, 0xd3, + 0xf0, 0x48, 0x80, 0xcd, 0x08, 0x81, 0xbd, 0x01, 0xb5, 0x81, 0xe7, 0x9e, 0x3a, 0xfe, 0x98, 0x46, + 0xd6, 0x5c, 0xc0, 0xb6, 0x92, 0x40, 0xe3, 0xdf, 0x65, 0xa1, 0xd2, 0xf7, 0x6d, 0x37, 0xb0, 0x07, + 0x02, 0xc0, 0xd6, 0xa1, 0x18, 0x5e, 0x5a, 0xe7, 0x76, 0x70, 0x8e, 0x43, 0x2d, 0x9b, 0x0b, 0xe1, + 0xe5, 0x9e, 0x1d, 0x9c, 0xb3, 0x35, 0x58, 0xa0, 0x5e, 0xe2, 0x80, 0x72, 0xa6, 0x4c, 0xb1, 0x77, + 0x61, 0xc9, 0x9d, 0x8e, 0xad, 0x64, 0x53, 0x62, 0x58, 0x05, 0xb3, 0xe1, 0x4e, 0xc7, 0xdb, 0x3a, + 0x5c, 0x0c, 0xfe, 0x64, 0xe4, 0x0d, 0x9e, 0x52, 0x03, 0x34, 0xbc, 0x32, 0x42, 0xb0, 0x8d, 0xd7, + 0xa0, 0x2a, 0xb3, 0xb9, 0x73, 0x76, 0x4e, 0x63, 0x2c, 0x98, 0x15, 0x42, 0x40, 0x90, 0xa8, 0x21, + 0x74, 0xc6, 0xdc, 0x0a, 0x42, 0x7b, 0x3c, 0x91, 0x43, 0x2a, 0x0b, 0x48, 0x4f, 0x00, 0x30, 0xdb, + 0x0b, 0xed, 0x91, 0x75, 0xca, 0x79, 0xd0, 0x2c, 0xca, 0x6c, 0x01, 0xd9, 0xe5, 0x3c, 0x60, 0x6f, + 0x42, 0x7d, 0xc8, 0x83, 0xd0, 0x92, 0x8b, 0xc1, 0x83, 0x66, 0xe9, 0x6e, 0xee, 0x5e, 0xd9, 0xac, + 0x09, 0x68, 0x4b, 0x01, 0xd9, 0x2b, 0x00, 0xbe, 0xfd, 0xcc, 0x12, 0x13, 0xc1, 0x2f, 0x9b, 0x65, + 0x5a, 0x05, 0xdf, 0x7e, 0xd6, 0xbf, 0xdc, 0xe3, 0x97, 0x6c, 0x05, 0x0a, 0x23, 0xfb, 0x84, 0x8f, + 0x9a, 0x80, 0x19, 0x94, 0x30, 0x7e, 0x0c, 0x6b, 0x1f, 0xf3, 0x50, 0x9b, 0xca, 0xc0, 0xe4, 0x5f, + 0x4c, 0x79, 0x10, 0x8a, 0x51, 0x05, 0xa1, 0xed, 0x87, 0x6a, 0x54, 0x19, 0x1a, 0x15, 0xc2, 0xe2, + 0x51, 0x71, 0x77, 0xa8, 0x10, 0xb2, 0x88, 0x50, 0xe6, 0xee, 0x90, 0xb2, 0x8d, 0x7d, 0x60, 0x5a, + 0xc5, 0x3b, 0x3c, 0xb4, 0x9d, 0x51, 0xc0, 0x3e, 0x80, 0x6a, 0xa8, 0x35, 0xd7, 0xcc, 0xdc, 0xcd, + 0xdd, 0xab, 0x44, 0xa4, 0xa9, 0x15, 0x30, 0x13, 0x78, 0xc6, 0x39, 0x94, 0x76, 0x39, 0xdf, 0x77, + 0xc6, 0x4e, 0xc8, 0xd6, 0xa0, 0x70, 0xea, 0x5c, 0xf2, 0x21, 0x76, 0x2a, 0xb7, 0x77, 0xc3, 0xa4, + 0x24, 0xbb, 0x03, 0x80, 0x3f, 0xac, 0x71, 0x44, 0xa5, 0x7b, 0x37, 0xcc, 0x32, 0xc2, 0x0e, 0x02, + 0x3b, 0x64, 0x1b, 0x50, 0x9c, 0x70, 0x7f, 0xc0, 0x15, 0x3d, 0xec, 0xdd, 0x30, 0x15, 0x60, 0xab, + 0x08, 0x85, 0x91, 0xa8, 0xdd, 0xf8, 0xfd, 0x02, 0x54, 0x7a, 0xdc, 0x1d, 0xaa, 0x99, 0x60, 0x90, + 0x17, 0x13, 0x8d, 0x8d, 0x55, 0x4d, 0xfc, 0xcd, 0x5e, 0x87, 0x0a, 0x2e, 0x49, 0x10, 0xfa, 0x8e, + 0x7b, 0x46, 0xbb, 0x65, 0x2b, 0xdb, 0xcc, 0x98, 0x20, 0xc0, 0x3d, 0x84, 0xb2, 0x06, 0xe4, 0xec, + 0xb1, 0xda, 0x2d, 0xe2, 0x27, 0xbb, 0x09, 0x25, 0x7b, 0x1c, 0x52, 0xf7, 0xaa, 0x08, 0x2e, 0xda, + 0xe3, 0x10, 0xbb, 0xf6, 0x1a, 0x54, 0x27, 0xf6, 0xd5, 0x98, 0xbb, 0x61, 0x4c, 0x66, 0x55, 0xb3, + 0x22, 0x61, 0x48, 0x68, 0x8f, 0x60, 0x59, 0x47, 0x51, 0x8d, 0x17, 0xa2, 0xc6, 0x97, 0x34, 0x6c, + 0xd9, 0x87, 0xb7, 0x61, 0x51, 0x95, 0xf1, 0x69, 0x3c, 0x48, 0x7e, 0x65, 0xb3, 0x2e, 0xc1, 0x6a, + 0x94, 0xf7, 0xa0, 0x71, 0xea, 0xb8, 0xf6, 0xc8, 0x1a, 0x8c, 0xc2, 0x0b, 0x6b, 0xc8, 0x47, 0xa1, + 0x8d, 0x94, 0x58, 0x30, 0xeb, 0x08, 0xdf, 0x1e, 0x85, 0x17, 0x3b, 0x02, 0xca, 0xde, 0x83, 0xf2, + 0x29, 0xe7, 0x16, 0x4e, 0x56, 0xb3, 0x94, 0xd8, 0xd0, 0x6a, 0x85, 0xcc, 0xd2, 0xa9, 0x5a, 0xab, + 0xf7, 0xa0, 0xe1, 0x4d, 0xc3, 0x33, 0xcf, 0x71, 0xcf, 0xac, 0xc1, 0xb9, 0xed, 0x5a, 0xce, 0x10, + 0x69, 0x33, 0xbf, 0x95, 0x7d, 0x98, 0x31, 0xeb, 0x2a, 0x6f, 0xfb, 0xdc, 0x76, 0x3b, 0x43, 0xf6, + 0x16, 0x2c, 0x8e, 0xec, 0x20, 0xb4, 0xce, 0xbd, 0x89, 0x35, 0x99, 0x9e, 0x3c, 0xe5, 0x57, 0xcd, + 0x1a, 0x4e, 0x44, 0x4d, 0x80, 0xf7, 0xbc, 0xc9, 0x11, 0x02, 0x05, 0xe9, 0x61, 0x3f, 0xa9, 0x13, + 0x82, 0xa4, 0x6b, 0x66, 0x59, 0x40, 0xa8, 0xd1, 0xcf, 0x61, 0x19, 0x97, 0x67, 0x30, 0x0d, 0x42, + 0x6f, 0x6c, 0xf9, 0x7c, 0xe0, 0xf9, 0xc3, 0xa0, 0x59, 0x41, 0x5a, 0x7b, 0x47, 0x76, 0x56, 0x5b, + 0xe3, 0xcd, 0x1d, 0x1e, 0x84, 0xdb, 0x88, 0x6c, 0x12, 0x6e, 0xdb, 0x0d, 0xfd, 0x2b, 0x73, 0x69, + 0x38, 0x0b, 0x67, 0xef, 0x01, 0xb3, 0x47, 0x23, 0xef, 0x99, 0x15, 0xf0, 0xd1, 0xa9, 0x25, 0x27, + 0xb1, 0x59, 0xbf, 0x9b, 0xb9, 0x57, 0x32, 0x1b, 0x98, 0xd3, 0xe3, 0xa3, 0xd3, 0x23, 0x82, 0xb3, + 0x0f, 0x00, 0x37, 0xa9, 0x75, 0xca, 0xed, 0x70, 0xea, 0xf3, 0xa0, 0xb9, 0x78, 0x37, 0x77, 0xaf, + 0xfe, 0x68, 0x29, 0x9a, 0x2f, 0x04, 0x6f, 0x39, 0xa1, 0x59, 0x15, 0x78, 0x32, 0x1d, 0x6c, 0xec, + 0xc0, 0x5a, 0x7a, 0x97, 0x04, 0x51, 0x89, 0x59, 0x11, 0xc4, 0x98, 0x37, 0xc5, 0x4f, 0xb1, 0xb3, + 0x2f, 0xec, 0xd1, 0x94, 0x23, 0x15, 0x56, 0x4d, 0x4a, 0x7c, 0x3f, 0xfb, 0xdd, 0x8c, 0xf1, 0x7b, + 0x19, 0xa8, 0xd2, 0x28, 0x83, 0x89, 0xe7, 0x06, 0x9c, 0xbd, 0x0e, 0x35, 0x45, 0x0d, 0xdc, 0xf7, + 0x3d, 0x5f, 0x72, 0x4b, 0x45, 0x79, 0x6d, 0x01, 0x63, 0xef, 0x40, 0x43, 0x21, 0x4d, 0x7c, 0xee, + 0x8c, 0xed, 0x33, 0x55, 0xb5, 0x22, 0xa5, 0x23, 0x09, 0x66, 0xef, 0xc7, 0xf5, 0xf9, 0xde, 0x34, + 0xe4, 0x48, 0xeb, 0x95, 0x47, 0x55, 0x39, 0x3c, 0x53, 0xc0, 0xa2, 0xda, 0x31, 0xf5, 0x12, 0x74, + 0x6e, 0xfc, 0x46, 0x06, 0x98, 0xe8, 0x76, 0xdf, 0xa3, 0x0a, 0x62, 0x8e, 0x94, 0x28, 0x99, 0x79, + 0xe9, 0x1d, 0x92, 0x7d, 0xde, 0x0e, 0x31, 0xa0, 0x40, 0x7d, 0xcf, 0xa7, 0xf4, 0x9d, 0xb2, 0x7e, + 0x94, 0x2f, 0xe5, 0x1a, 0x79, 0xe3, 0xbf, 0xe6, 0x60, 0x45, 0xd0, 0xa9, 0xcb, 0x47, 0xad, 0xc1, + 0x80, 0x4f, 0xa2, 0xbd, 0x73, 0x07, 0x2a, 0xae, 0x37, 0xe4, 0x8a, 0x62, 0xa9, 0x63, 0x20, 0x40, + 0x1a, 0xb9, 0x9e, 0xdb, 0x8e, 0x4b, 0x1d, 0xa7, 0xc9, 0x2c, 0x23, 0x04, 0xbb, 0xfd, 0x16, 0x2c, + 0x4e, 0xb8, 0x3b, 0xd4, 0xb7, 0x48, 0x8e, 0xa8, 0x5e, 0x82, 0xe5, 0xee, 0xb8, 0x03, 0x95, 0xd3, + 0x29, 0xe1, 0x09, 0xc6, 0x92, 0x47, 0x1a, 0x00, 0x09, 0x6a, 0x11, 0x7f, 0x99, 0x4c, 0x83, 0x73, + 0xcc, 0x2d, 0x60, 0x6e, 0x51, 0xa4, 0x45, 0xd6, 0x6d, 0x80, 0xe1, 0x34, 0x08, 0xe5, 0x8e, 0x59, + 0xc0, 0xcc, 0xb2, 0x80, 0xd0, 0x8e, 0xf9, 0x16, 0x2c, 0x8f, 0xed, 0x4b, 0x0b, 0x69, 0xc7, 0x72, + 0x5c, 0xeb, 0x74, 0x84, 0x4c, 0xbd, 0x88, 0x78, 0x8d, 0xb1, 0x7d, 0xf9, 0xa9, 0xc8, 0xe9, 0xb8, + 0xbb, 0x08, 0x17, 0x6c, 0x65, 0x40, 0x33, 0x61, 0xf9, 0x3c, 0xe0, 0xfe, 0x05, 0x47, 0x4e, 0x90, + 0x37, 0xeb, 0x12, 0x6c, 0x12, 0x54, 0xf4, 0x68, 0x2c, 0xc6, 0x1d, 0x8e, 0x06, 0xb4, 0xed, 0xcd, + 0xe2, 0xd8, 0x71, 0xf7, 0xc2, 0xd1, 0x40, 0x9c, 0x57, 0x82, 0x8f, 0x4c, 0xb8, 0x6f, 0x3d, 0x7d, + 0x86, 0x7b, 0x38, 0x8f, 0x7c, 0xe3, 0x88, 0xfb, 0x4f, 0x9e, 0x09, 0x91, 0x62, 0x10, 0x20, 0x23, + 0xb2, 0xaf, 0x9a, 0x15, 0xdc, 0xe0, 0xa5, 0x41, 0x20, 0x58, 0x90, 0x7d, 0x25, 0x36, 0xa1, 0xe8, + 0xad, 0x8d, 0xab, 0xc0, 0x87, 0x58, 0x7d, 0x80, 0x1c, 0xb5, 0x86, 0x9d, 0x6d, 0xc9, 0x0c, 0xd1, + 0x4e, 0x20, 0xa8, 0x5e, 0x75, 0xf6, 0x74, 0x64, 0x9f, 0x05, 0xc8, 0x52, 0x6a, 0x66, 0x55, 0x02, + 0x77, 0x05, 0xcc, 0xf8, 0x0c, 0x56, 0x67, 0xd6, 0x56, 0xee, 0x19, 0x21, 0x42, 0x20, 0x04, 0xd7, + 0xb5, 0x64, 0xca, 0x54, 0xda, 0xa2, 0x65, 0x53, 0x16, 0xcd, 0xf8, 0xad, 0x0c, 0x54, 0x65, 0xcd, + 0x28, 0xec, 0xb0, 0x4d, 0x60, 0x6a, 0x15, 0xc3, 0x4b, 0x67, 0x68, 0x9d, 0x5c, 0x85, 0x3c, 0x20, + 0xa2, 0xd9, 0xbb, 0x61, 0x36, 0x64, 0x5e, 0xff, 0xd2, 0x19, 0x6e, 0x89, 0x1c, 0x76, 0x1f, 0x1a, + 0x09, 0xfc, 0x20, 0xf4, 0x89, 0xa2, 0xf7, 0x6e, 0x98, 0x75, 0x0d, 0xbb, 0x17, 0xfa, 0x62, 0x8f, + 0x08, 0x51, 0x6a, 0x1a, 0x5a, 0x8e, 0x3b, 0xe4, 0x97, 0x48, 0x46, 0x35, 0xb3, 0x42, 0xb0, 0x8e, + 0x00, 0x6d, 0xd5, 0xa1, 0xaa, 0x57, 0x67, 0x9c, 0x41, 0x49, 0xc9, 0x61, 0x28, 0x88, 0xcc, 0x74, + 0xc9, 0x2c, 0x87, 0x51, 0x4f, 0x6e, 0x42, 0x29, 0xd9, 0x03, 0xb3, 0x18, 0xbe, 0x74, 0xc3, 0xc6, + 0x0f, 0xa0, 0xb1, 0x2f, 0x88, 0xc7, 0x15, 0xc4, 0x2a, 0xe5, 0xca, 0x35, 0x58, 0xd0, 0x36, 0x4d, + 0xd9, 0x94, 0x29, 0x71, 0xe6, 0x9e, 0x7b, 0x41, 0x28, 0x5b, 0xc1, 0xdf, 0xc6, 0xef, 0x67, 0x80, + 0xb5, 0x83, 0xd0, 0x19, 0xdb, 0x21, 0xdf, 0xe5, 0x11, 0x5b, 0x38, 0x84, 0xaa, 0xa8, 0xad, 0xef, + 0xb5, 0x48, 0xd0, 0x23, 0x81, 0xe2, 0x5d, 0xb9, 0x8d, 0xe7, 0x0b, 0x6c, 0xea, 0xd8, 0xc4, 0xe6, + 0x13, 0x15, 0x88, 0x5d, 0x16, 0xda, 0xfe, 0x19, 0x0f, 0x51, 0x3c, 0x94, 0x72, 0x0d, 0x10, 0x48, + 0x08, 0x86, 0x1b, 0x3f, 0x0f, 0x4b, 0x73, 0x75, 0xe8, 0x7c, 0xb9, 0x9c, 0xc2, 0x97, 0x73, 0x3a, + 0x5f, 0xb6, 0x60, 0x39, 0xd1, 0x2f, 0x49, 0x69, 0xeb, 0x50, 0x14, 0x1b, 0x42, 0x08, 0x07, 0x19, + 0x92, 0x56, 0x4f, 0x39, 0x17, 0xe2, 0xf5, 0x03, 0x58, 0x39, 0xe5, 0xdc, 0xb7, 0x43, 0xcc, 0xc4, + 0x1d, 0x23, 0x56, 0x48, 0x56, 0xbc, 0x24, 0xf3, 0x7a, 0x76, 0x78, 0xc4, 0x7d, 0xb1, 0x52, 0xc6, + 0xff, 0xc9, 0xc0, 0xa2, 0xe0, 0xa0, 0x07, 0xb6, 0x7b, 0xa5, 0xe6, 0x69, 0x3f, 0x75, 0x9e, 0xee, + 0x69, 0x87, 0xa1, 0x86, 0xfd, 0x75, 0x27, 0x29, 0x37, 0x3b, 0x49, 0xec, 0x2e, 0x54, 0x13, 0x7d, + 0x2d, 0x60, 0x5f, 0x21, 0x88, 0x3a, 0x19, 0x4b, 0xa4, 0x0b, 0x9a, 0x44, 0xfa, 0x67, 0x9f, 0xdc, + 0xb7, 0xa0, 0x11, 0x0f, 0x46, 0xce, 0x2c, 0x83, 0xbc, 0x20, 0x54, 0x59, 0x01, 0xfe, 0x36, 0xfe, + 0x65, 0x86, 0x10, 0xb7, 0x3d, 0x27, 0x96, 0x7a, 0x19, 0xe4, 0x85, 0x94, 0xad, 0x10, 0xc5, 0xef, + 0x6b, 0x75, 0x88, 0x6f, 0x60, 0x0a, 0x6e, 0x42, 0x29, 0x10, 0x22, 0xb4, 0x3d, 0xa2, 0x59, 0x28, + 0x99, 0x45, 0x91, 0x6e, 0x8d, 0x46, 0xf1, 0xec, 0x14, 0x75, 0x79, 0xfd, 0x6d, 0x58, 0xd2, 0xfa, + 0xfc, 0x9c, 0xd1, 0x75, 0x81, 0xed, 0x3b, 0x41, 0x78, 0xec, 0x06, 0x13, 0x4d, 0xc8, 0xbb, 0x05, + 0x65, 0xc1, 0x8d, 0x45, 0x7f, 0x03, 0x29, 0xd1, 0x0b, 0xf6, 0x2c, 0x7a, 0x1b, 0x60, 0xa6, 0x7d, + 0x29, 0x33, 0xb3, 0x32, 0xd3, 0xbe, 0xc4, 0x4c, 0xe3, 0xbb, 0xb0, 0x9c, 0xa8, 0x4f, 0x36, 0xfd, + 0x1a, 0x14, 0xa6, 0xe1, 0xa5, 0xa7, 0xc4, 0xf8, 0x8a, 0xa4, 0x26, 0xa1, 0x84, 0x9a, 0x94, 0x63, + 0x7c, 0x04, 0x4b, 0x5d, 0xfe, 0x4c, 0x6e, 0x78, 0xd5, 0x91, 0xb7, 0x20, 0xff, 0x02, 0xc5, 0x14, + 0xf3, 0x8d, 0x4d, 0x60, 0x7a, 0x61, 0xd9, 0xaa, 0xa6, 0xa7, 0x66, 0x12, 0x7a, 0xaa, 0xf1, 0x16, + 0xb0, 0x9e, 0x73, 0xe6, 0x1e, 0xf0, 0x20, 0xb0, 0xcf, 0x22, 0x16, 0xd1, 0x80, 0xdc, 0x38, 0x38, + 0x93, 0xfc, 0x4c, 0xfc, 0x34, 0xbe, 0x0d, 0xcb, 0x09, 0x3c, 0x59, 0xf1, 0x2b, 0x50, 0x0e, 0x9c, + 0x33, 0x17, 0x85, 0x30, 0x59, 0x75, 0x0c, 0x30, 0x76, 0x61, 0xe5, 0x53, 0xee, 0x3b, 0xa7, 0x57, + 0x2f, 0xaa, 0x3e, 0x59, 0x4f, 0x76, 0xb6, 0x9e, 0x36, 0xac, 0xce, 0xd4, 0x23, 0x9b, 0x27, 0xa2, + 0x96, 0x2b, 0x59, 0x32, 0x29, 0xa1, 0xf1, 0xc8, 0xac, 0xce, 0x23, 0x8d, 0x63, 0x60, 0xdb, 0x9e, + 0xeb, 0xf2, 0x41, 0x78, 0xc4, 0xb9, 0xaf, 0x3a, 0xf3, 0xae, 0x46, 0xc1, 0x95, 0x47, 0xeb, 0x72, + 0x66, 0x67, 0x19, 0xaf, 0x24, 0x6d, 0x06, 0xf9, 0x09, 0xf7, 0xc7, 0x58, 0x71, 0xc9, 0xc4, 0xdf, + 0xc6, 0x2a, 0x2c, 0x27, 0xaa, 0xa5, 0xbe, 0x19, 0x0f, 0x61, 0x75, 0xc7, 0x09, 0x06, 0xf3, 0x0d, + 0xae, 0x43, 0x71, 0x32, 0x3d, 0xb1, 0x92, 0x3c, 0xfc, 0x09, 0xbf, 0x32, 0x9a, 0xb0, 0x36, 0x5b, + 0x42, 0xd6, 0xf5, 0x17, 0x33, 0x90, 0xdf, 0xeb, 0xef, 0x6f, 0xb3, 0x0d, 0x28, 0x39, 0xee, 0xc0, + 0x1b, 0x0b, 0x21, 0x8d, 0xc6, 0x1c, 0xa5, 0xaf, 0xdd, 0x76, 0xb7, 0xa0, 0x8c, 0xb2, 0x9d, 0x50, + 0xaf, 0xa5, 0x98, 0x54, 0x12, 0x80, 0x7d, 0x6f, 0xf0, 0x54, 0xe8, 0xf5, 0xfc, 0x72, 0xe2, 0xf8, + 0xa8, 0xb9, 0x2b, 0xcd, 0x34, 0x4f, 0x72, 0x41, 0x9c, 0x21, 0x15, 0xd4, 0x7f, 0x53, 0x82, 0xa2, + 0x3c, 0x99, 0xe9, 0x94, 0x0f, 0x9d, 0x0b, 0x1e, 0x9f, 0xf2, 0x22, 0x25, 0x64, 0x07, 0x9f, 0x8f, + 0xbd, 0x30, 0x12, 0xee, 0x68, 0x0d, 0xaa, 0x04, 0x94, 0xe2, 0x9d, 0x26, 0x60, 0x90, 0x99, 0x23, + 0x47, 0x48, 0x03, 0xfd, 0xd8, 0xbf, 0x05, 0x45, 0x25, 0x27, 0xe4, 0x23, 0xfd, 0x67, 0x61, 0x40, + 0x92, 0xdd, 0x06, 0x94, 0x06, 0xf6, 0xc4, 0x1e, 0x38, 0xe1, 0x95, 0x64, 0x13, 0x51, 0x5a, 0xd4, + 0x3e, 0xf2, 0x06, 0xf6, 0xc8, 0x3a, 0xb1, 0x47, 0xb6, 0x3b, 0xe0, 0xd2, 0x7e, 0x50, 0x45, 0xe0, + 0x16, 0xc1, 0xd8, 0x9b, 0x50, 0x97, 0xfd, 0x54, 0x58, 0x64, 0x46, 0x90, 0xbd, 0x57, 0x68, 0x42, + 0x10, 0xf5, 0xc6, 0x63, 0x47, 0x68, 0x24, 0x24, 0xb2, 0xe5, 0xcc, 0x32, 0x41, 0x76, 0x39, 0x8e, + 0x56, 0x66, 0x3f, 0xa3, 0xa9, 0x2b, 0x53, 0x53, 0x04, 0xfc, 0x8c, 0xd4, 0xfe, 0x79, 0xb9, 0x2d, + 0xa7, 0xc9, 0x6d, 0xef, 0xc2, 0xd2, 0xd4, 0x0d, 0x78, 0x18, 0x8e, 0xf8, 0x30, 0xea, 0x4b, 0x05, + 0x91, 0x1a, 0x51, 0x86, 0xea, 0xce, 0x26, 0x2c, 0x93, 0xe1, 0x23, 0xb0, 0x43, 0x2f, 0x38, 0x77, + 0x02, 0x2b, 0x10, 0xda, 0x14, 0xa9, 0xc6, 0x4b, 0x98, 0xd5, 0x93, 0x39, 0x3d, 0x52, 0xa7, 0xd6, + 0x67, 0xf0, 0x7d, 0x3e, 0xe0, 0xce, 0x05, 0x1f, 0xa2, 0x4c, 0x97, 0x33, 0x57, 0x13, 0x65, 0x4c, + 0x99, 0x89, 0x02, 0xfa, 0x74, 0x6c, 0x4d, 0x27, 0x43, 0x5b, 0x08, 0x36, 0x75, 0x12, 0x9c, 0xdd, + 0xe9, 0xf8, 0x98, 0x20, 0xec, 0x21, 0x28, 0xa9, 0x4d, 0xca, 0x92, 0x8b, 0x09, 0x7e, 0x26, 0x88, + 0xd5, 0xac, 0x4a, 0x0c, 0x12, 0x2a, 0x13, 0xf2, 0x69, 0x63, 0x46, 0x3e, 0x6d, 0x42, 0x71, 0xe2, + 0x3b, 0x17, 0x76, 0xc8, 0x9b, 0x4b, 0xc4, 0xd6, 0x65, 0x52, 0x70, 0x06, 0xc7, 0x75, 0x42, 0xc7, + 0x0e, 0x3d, 0xbf, 0xc9, 0x30, 0x2f, 0x06, 0xb0, 0xfb, 0xb0, 0x84, 0x34, 0x12, 0x84, 0x76, 0x38, + 0x0d, 0xa4, 0xb4, 0xba, 0x8c, 0xc4, 0x84, 0xf2, 0x76, 0x0f, 0xe1, 0x28, 0xb0, 0xb2, 0x6f, 0xc3, + 0x1a, 0x91, 0x05, 0x96, 0x90, 0x52, 0x38, 0x0a, 0x0f, 0x2b, 0x38, 0x15, 0xcb, 0x98, 0x2b, 0xe8, + 0x5b, 0xca, 0xe2, 0x42, 0x92, 0x78, 0x0c, 0xeb, 0x92, 0x4c, 0xe6, 0x4a, 0xad, 0x62, 0xa9, 0x15, + 0xca, 0x9e, 0x29, 0xb6, 0x09, 0x4b, 0xa2, 0x4b, 0xce, 0xc0, 0x92, 0xa5, 0xc5, 0x4e, 0x58, 0x13, + 0xbd, 0x47, 0xad, 0x6a, 0x91, 0x32, 0x4d, 0xcc, 0x7b, 0xc2, 0xaf, 0xd8, 0x0f, 0x60, 0x91, 0x48, + 0x06, 0x55, 0x31, 0xe4, 0xf4, 0x1b, 0xc8, 0xe9, 0x57, 0xe5, 0x84, 0x6e, 0x47, 0xb9, 0xc8, 0xec, + 0xeb, 0x83, 0x44, 0x5a, 0x6c, 0x87, 0x91, 0x73, 0xca, 0x43, 0x67, 0xcc, 0x9b, 0xeb, 0x44, 0x60, + 0x2a, 0x2d, 0x76, 0xea, 0x74, 0x82, 0x39, 0x4d, 0xe2, 0x0b, 0x94, 0x42, 0xda, 0x1d, 0x79, 0x01, + 0x57, 0x66, 0xb2, 0xe6, 0x4d, 0xb9, 0x09, 0x05, 0x50, 0xc9, 0x9b, 0x42, 0x68, 0x27, 0x05, 0x29, + 0x32, 0x66, 0xde, 0x42, 0x62, 0xa8, 0x91, 0x9e, 0xa4, 0x0c, 0x9a, 0xe2, 0x6c, 0x3f, 0xb7, 0x9f, + 0x29, 0x0e, 0xf2, 0x0a, 0xae, 0x2f, 0x08, 0x90, 0xe4, 0x1d, 0xbf, 0x9b, 0xa1, 0x03, 0x51, 0xf2, + 0x8f, 0x40, 0x53, 0x05, 0x89, 0x73, 0x58, 0x9e, 0x3b, 0xba, 0x92, 0xcc, 0x04, 0x08, 0x74, 0xe8, + 0x8e, 0x70, 0x37, 0x3b, 0xae, 0x8e, 0x42, 0xbc, 0xb7, 0xaa, 0x80, 0x88, 0x74, 0x07, 0x2a, 0x93, + 0xe9, 0xc9, 0xc8, 0x19, 0x10, 0x4a, 0x8e, 0x6a, 0x21, 0x10, 0x22, 0x08, 0x5d, 0x98, 0x28, 0x8a, + 0x30, 0xf2, 0x88, 0x51, 0x91, 0x30, 0x44, 0x41, 0xde, 0xce, 0x7d, 0x64, 0x27, 0x55, 0x13, 0x7f, + 0x1b, 0x5b, 0xb0, 0x92, 0xec, 0xb4, 0x3c, 0x78, 0xee, 0x43, 0x49, 0xf2, 0x2a, 0x65, 0x24, 0xa9, + 0xab, 0x85, 0x92, 0xea, 0x5c, 0x94, 0x6f, 0xfc, 0x76, 0x01, 0x96, 0x25, 0x74, 0x5b, 0x4c, 0x6d, + 0x6f, 0x3a, 0x1e, 0xdb, 0x7e, 0x0a, 0x13, 0xcc, 0x3c, 0x9f, 0x09, 0x66, 0xe7, 0x98, 0x60, 0x52, + 0x4b, 0x26, 0x1e, 0x9a, 0xd4, 0x92, 0xc5, 0x5a, 0x92, 0xe2, 0xa2, 0xdb, 0x62, 0x6b, 0x12, 0xdc, + 0x27, 0x9b, 0xef, 0x1c, 0xcb, 0x2e, 0xa4, 0xb0, 0x6c, 0x9d, 0xe1, 0x2e, 0xcc, 0x30, 0xdc, 0xd7, + 0x80, 0x88, 0x46, 0xad, 0x7e, 0x91, 0x74, 0x19, 0x84, 0x49, 0xd3, 0xe7, 0xdb, 0xb0, 0x38, 0xcb, + 0xe3, 0x88, 0x99, 0xd6, 0x53, 0x38, 0x9c, 0x33, 0xe6, 0x78, 0x5a, 0x69, 0xc8, 0x65, 0xc9, 0xe1, + 0x9c, 0x31, 0xdf, 0xc7, 0x1c, 0x85, 0xdf, 0x06, 0xa0, 0xb6, 0x71, 0xd3, 0x00, 0x6e, 0x9a, 0xb7, + 0x92, 0x6b, 0xa1, 0xcf, 0xfa, 0xa6, 0x48, 0x4c, 0x7d, 0x8e, 0xbb, 0xa8, 0x8c, 0x25, 0x71, 0x03, + 0x7d, 0x08, 0x75, 0x6f, 0xc2, 0x5d, 0x2b, 0xe6, 0x35, 0x15, 0xac, 0xaa, 0x21, 0xab, 0xea, 0x28, + 0xb8, 0x59, 0x13, 0x78, 0x51, 0x92, 0x7d, 0x8f, 0x26, 0x99, 0x6b, 0x25, 0xab, 0xd7, 0x94, 0xac, + 0x23, 0x62, 0x94, 0x36, 0x7e, 0x3d, 0x03, 0x15, 0xad, 0x3b, 0x6c, 0x15, 0x96, 0xb6, 0x0f, 0x0f, + 0x8f, 0xda, 0x66, 0xab, 0xdf, 0xf9, 0xb4, 0x6d, 0x6d, 0xef, 0x1f, 0xf6, 0xda, 0x8d, 0x1b, 0x02, + 0xbc, 0x7f, 0xb8, 0xdd, 0xda, 0xb7, 0x76, 0x0f, 0xcd, 0x6d, 0x05, 0xce, 0xb0, 0x35, 0x60, 0x66, + 0xfb, 0xe0, 0xb0, 0xdf, 0x4e, 0xc0, 0xb3, 0xac, 0x01, 0xd5, 0x2d, 0xb3, 0xdd, 0xda, 0xde, 0x93, + 0x90, 0x1c, 0x5b, 0x81, 0xc6, 0xee, 0x71, 0x77, 0xa7, 0xd3, 0xfd, 0xd8, 0xda, 0x6e, 0x75, 0xb7, + 0xdb, 0xfb, 0xed, 0x9d, 0x46, 0x9e, 0xd5, 0xa0, 0xdc, 0xda, 0x6a, 0x75, 0x77, 0x0e, 0xbb, 0xed, + 0x9d, 0x46, 0xc1, 0xf8, 0xe3, 0x0c, 0xac, 0xe2, 0x44, 0x0d, 0x67, 0x77, 0xe8, 0x5d, 0xa8, 0x0c, + 0x3c, 0x6f, 0x22, 0x54, 0xa6, 0xf8, 0xb8, 0xd7, 0x41, 0x62, 0xf7, 0x11, 0x67, 0x3d, 0xf5, 0xfc, + 0x01, 0x97, 0x1b, 0x14, 0x10, 0xb4, 0x2b, 0x20, 0x82, 0x40, 0x24, 0x85, 0x11, 0x06, 0xed, 0xcf, + 0x0a, 0xc1, 0x08, 0x65, 0x0d, 0x16, 0x4e, 0x7c, 0x6e, 0x0f, 0xce, 0xe5, 0xd6, 0x94, 0x29, 0xf6, + 0x4e, 0xac, 0xcc, 0x0f, 0xc4, 0x82, 0x8f, 0xf8, 0x10, 0xe9, 0xb3, 0x64, 0x2e, 0x4a, 0xf8, 0xb6, + 0x04, 0x8b, 0xa3, 0xc2, 0x3e, 0xb1, 0xdd, 0xa1, 0xe7, 0xf2, 0xa1, 0xd4, 0x0e, 0x62, 0x80, 0x71, + 0x04, 0x6b, 0xb3, 0xe3, 0x93, 0x9b, 0xf9, 0x03, 0x6d, 0x33, 0x93, 0x58, 0xbe, 0x71, 0x3d, 0x01, + 0x69, 0x1b, 0xfb, 0xaf, 0xe7, 0x21, 0x2f, 0xc4, 0xb4, 0x6b, 0x25, 0x3a, 0x5d, 0xee, 0xce, 0xcd, + 0xf9, 0x87, 0xd0, 0x66, 0x40, 0xe7, 0x37, 0x19, 0xa6, 0xca, 0x08, 0xc1, 0x73, 0x3b, 0xca, 0xf6, + 0xf9, 0xe0, 0x42, 0x5a, 0xa6, 0x28, 0xdb, 0xe4, 0x83, 0x0b, 0x54, 0x83, 0xec, 0x90, 0xca, 0xd2, + 0x66, 0x2c, 0x06, 0x76, 0x88, 0x25, 0x65, 0x16, 0x96, 0x2b, 0x46, 0x59, 0x58, 0xaa, 0x09, 0x45, + 0xc7, 0x3d, 0xf1, 0xa6, 0xee, 0x10, 0xf7, 0x5e, 0xc9, 0x54, 0x49, 0x74, 0x47, 0x21, 0x9b, 0x10, + 0xa7, 0x04, 0x6d, 0xb5, 0x92, 0x00, 0xf4, 0xc5, 0x39, 0xf1, 0x3e, 0x94, 0x83, 0x2b, 0x77, 0xa0, + 0x6f, 0xb0, 0x15, 0x39, 0x3f, 0x62, 0xf4, 0x9b, 0xbd, 0x2b, 0x77, 0x80, 0xdb, 0xa9, 0x14, 0xc8, + 0x5f, 0xec, 0x31, 0x94, 0x22, 0x03, 0x2e, 0xb1, 0xc7, 0x9b, 0x7a, 0x09, 0x65, 0xb5, 0x25, 0x3d, + 0x39, 0x42, 0x65, 0x0f, 0x60, 0x01, 0xad, 0xac, 0x41, 0xb3, 0x8a, 0x85, 0x94, 0x30, 0x2e, 0xba, + 0x81, 0x9e, 0x20, 0x3e, 0x44, 0x8b, 0xab, 0x29, 0xd1, 0x36, 0x9e, 0x40, 0x2d, 0x51, 0x97, 0xae, + 0xf7, 0xd6, 0x48, 0xef, 0x7d, 0x43, 0xd7, 0x7b, 0x63, 0x36, 0x2d, 0x8b, 0xe9, 0x7a, 0xf0, 0xcf, + 0x43, 0x49, 0x0d, 0x45, 0x6c, 0xa2, 0xe3, 0xee, 0x93, 0xee, 0xe1, 0x67, 0x5d, 0xab, 0xf7, 0x79, + 0x77, 0xbb, 0x71, 0x83, 0x2d, 0x42, 0xa5, 0xb5, 0x8d, 0xfb, 0x12, 0x01, 0x19, 0x81, 0x72, 0xd4, + 0xea, 0xf5, 0x22, 0x48, 0xd6, 0xd8, 0x85, 0xc6, 0x6c, 0x4f, 0x05, 0x4d, 0x86, 0x0a, 0x26, 0x6d, + 0xd0, 0x31, 0x40, 0xe8, 0x2f, 0x64, 0x56, 0x26, 0x21, 0x99, 0x12, 0xc6, 0x63, 0x68, 0x88, 0x43, + 0x47, 0x4c, 0x95, 0xee, 0x5d, 0x1a, 0x09, 0xc1, 0x4b, 0xb7, 0x43, 0x97, 0xcc, 0x0a, 0xc1, 0xb0, + 0x29, 0xe3, 0x03, 0x58, 0xd2, 0x8a, 0xc5, 0xfa, 0xa6, 0x38, 0xc8, 0x66, 0xf5, 0x4d, 0xd4, 0x2e, + 0x28, 0xc7, 0x58, 0x87, 0x55, 0x91, 0x6c, 0x5f, 0x70, 0x37, 0xec, 0x4d, 0x4f, 0xc8, 0x29, 0xe9, + 0x78, 0xae, 0xd0, 0x3a, 0xca, 0x51, 0xce, 0xf5, 0x44, 0xbe, 0x29, 0x55, 0xd3, 0x2c, 0x92, 0xc6, + 0x86, 0xd6, 0x02, 0x16, 0xdc, 0xc4, 0xbf, 0x09, 0x15, 0xb5, 0x1c, 0x81, 0xc4, 0xb4, 0x1e, 0xb5, + 0xdb, 0xa6, 0x75, 0xd8, 0xdd, 0xef, 0x74, 0x05, 0xb7, 0x13, 0xd3, 0x8a, 0x80, 0xdd, 0x5d, 0x84, + 0x64, 0x8c, 0x06, 0xd4, 0x3f, 0xe6, 0x61, 0xc7, 0x3d, 0xf5, 0xe4, 0x64, 0x18, 0x7f, 0x65, 0x01, + 0x16, 0x23, 0x50, 0xac, 0xe2, 0x5e, 0x70, 0x3f, 0x70, 0x3c, 0x17, 0xa5, 0xd5, 0xb2, 0xa9, 0x92, + 0x82, 0x3b, 0x49, 0x19, 0x1d, 0x8f, 0xc0, 0x15, 0xcc, 0x95, 0x52, 0x3d, 0x9e, 0x7f, 0x6f, 0xc3, + 0xa2, 0x33, 0xe4, 0x6e, 0xe8, 0x84, 0x57, 0x56, 0xc2, 0xb8, 0x56, 0x57, 0x60, 0x79, 0x06, 0xae, + 0x40, 0xc1, 0x1e, 0x39, 0xb6, 0x72, 0xf6, 0x52, 0x42, 0x40, 0x07, 0xde, 0xc8, 0xf3, 0x51, 0x72, + 0x2d, 0x9b, 0x94, 0x60, 0x0f, 0x61, 0x45, 0x48, 0xd0, 0xba, 0xc5, 0x13, 0x19, 0x0c, 0xd9, 0xf9, + 0x98, 0x3b, 0x1d, 0x1f, 0xc5, 0x56, 0x4f, 0x91, 0x23, 0x4e, 0x3e, 0x51, 0x42, 0x8a, 0x3a, 0x51, + 0x01, 0x52, 0xc6, 0x96, 0xdc, 0xe9, 0xb8, 0x85, 0x39, 0x11, 0xfe, 0x23, 0x58, 0x15, 0xf8, 0x91, + 0x70, 0x14, 0x95, 0x58, 0xc4, 0x12, 0xa2, 0xb2, 0x8e, 0xcc, 0x8b, 0xca, 0xdc, 0x82, 0x32, 0xf5, + 0x4a, 0x90, 0x44, 0x81, 0x84, 0x70, 0xec, 0x0a, 0xf7, 0x83, 0x39, 0xbf, 0xec, 0x02, 0x1d, 0xe3, + 0x33, 0x7e, 0x59, 0xcd, 0xb3, 0x5b, 0x9a, 0xf5, 0xec, 0x3e, 0x82, 0xd5, 0x13, 0x41, 0xa3, 0xe7, + 0xdc, 0x1e, 0x72, 0xdf, 0x8a, 0x29, 0x9f, 0x94, 0x8d, 0x65, 0x91, 0xb9, 0x87, 0x79, 0xd1, 0x46, + 0x11, 0x52, 0x8a, 0xe0, 0x1b, 0x7c, 0x68, 0x85, 0x9e, 0x85, 0xc2, 0x0b, 0x72, 0xa0, 0x92, 0x59, + 0x23, 0x70, 0xdf, 0xdb, 0x16, 0xc0, 0x24, 0xde, 0x99, 0x6f, 0x4f, 0xce, 0xa5, 0x3a, 0x10, 0xe1, + 0x7d, 0x2c, 0x80, 0xec, 0x15, 0x28, 0x8a, 0x3d, 0xe1, 0x72, 0x72, 0x73, 0x91, 0xc0, 0xad, 0x40, + 0xec, 0x0d, 0x58, 0xc0, 0x36, 0x82, 0x66, 0x03, 0x37, 0x44, 0x35, 0xe6, 0xf4, 0x8e, 0x6b, 0xca, + 0x3c, 0x21, 0x0a, 0x4e, 0x7d, 0x87, 0xd8, 0x50, 0xd9, 0xc4, 0xdf, 0xec, 0x87, 0x1a, 0x4f, 0x5b, + 0xc6, 0xb2, 0x6f, 0xc8, 0xb2, 0x33, 0xa4, 0x78, 0x1d, 0x7b, 0xfb, 0x46, 0xb9, 0xd5, 0x8f, 0xf2, + 0xa5, 0x4a, 0xa3, 0x6a, 0x7c, 0x08, 0x05, 0x9a, 0x1d, 0x41, 0x84, 0x38, 0x77, 0x19, 0x49, 0x84, + 0x08, 0x6d, 0x42, 0xd1, 0xe5, 0xe1, 0x33, 0xcf, 0x7f, 0xaa, 0xcc, 0xcf, 0x32, 0x69, 0xfc, 0x04, + 0x6d, 0x21, 0x91, 0xcf, 0x9e, 0xd4, 0x3a, 0x41, 0x1e, 0xb4, 0xbc, 0xc1, 0xb9, 0x2d, 0xcd, 0x33, + 0x25, 0x04, 0xf4, 0xce, 0xed, 0x39, 0xf2, 0xc8, 0xce, 0xbb, 0xed, 0xdf, 0x80, 0xba, 0x8a, 0x12, + 0x08, 0xac, 0x11, 0x3f, 0x0d, 0x25, 0xb9, 0x57, 0x65, 0x88, 0x40, 0xb0, 0xcf, 0x4f, 0x43, 0xe3, + 0x00, 0x96, 0x24, 0x41, 0x1e, 0x4e, 0xb8, 0x6a, 0xfa, 0xbb, 0x69, 0xd2, 0x70, 0xe5, 0xd1, 0x72, + 0xf2, 0x24, 0xa6, 0xe8, 0x87, 0x84, 0x88, 0x6c, 0x7c, 0x02, 0x4c, 0x3f, 0xa7, 0x65, 0x7d, 0x52, + 0x26, 0x55, 0x56, 0x7b, 0xe5, 0xfc, 0x8a, 0x24, 0x5f, 0x67, 0x28, 0x66, 0x27, 0x98, 0x0e, 0x06, + 0x2a, 0x7a, 0xa3, 0x64, 0xaa, 0xa4, 0xf1, 0x07, 0x19, 0x58, 0xc6, 0xca, 0x94, 0x34, 0x2f, 0xb9, + 0xf0, 0x4f, 0xdd, 0x49, 0xb1, 0x3e, 0xba, 0x70, 0x44, 0x89, 0xaf, 0x6f, 0x11, 0xcd, 0xcf, 0x59, + 0x44, 0xdf, 0x81, 0xc6, 0x90, 0x8f, 0x9c, 0x0b, 0xee, 0x5f, 0x45, 0x8a, 0x1c, 0xc9, 0xef, 0x8b, + 0x0a, 0x2e, 0x75, 0x39, 0xe3, 0xef, 0x64, 0x60, 0x89, 0x44, 0x19, 0xd4, 0x8a, 0xe5, 0x44, 0x7d, + 0xa4, 0xd4, 0x40, 0xc9, 0xaa, 0xe4, 0x98, 0xe2, 0x23, 0x1e, 0xa1, 0x84, 0xbc, 0x77, 0x43, 0xaa, + 0x87, 0x12, 0xca, 0xbe, 0x8f, 0x1a, 0x88, 0x6b, 0x21, 0x50, 0x3a, 0x33, 0x6f, 0xa6, 0x08, 0x4f, + 0x51, 0x71, 0xa1, 0x9e, 0xb8, 0x08, 0xda, 0x2a, 0x09, 0xbd, 0x54, 0x80, 0x8d, 0x5d, 0xa8, 0x25, + 0x9a, 0x49, 0x18, 0x68, 0xab, 0x64, 0xa0, 0x9d, 0x73, 0x98, 0x64, 0xe7, 0x1d, 0x26, 0x57, 0xb0, + 0x6c, 0x72, 0x7b, 0x78, 0xb5, 0xeb, 0xf9, 0x47, 0xc1, 0x49, 0xb8, 0x4b, 0xf2, 0xa1, 0xe0, 0xef, + 0x91, 0x17, 0x30, 0x61, 0x05, 0x55, 0xce, 0x20, 0xa5, 0xec, 0xbe, 0x09, 0xf5, 0xd8, 0x5d, 0xa8, + 0x59, 0xd2, 0x6a, 0x91, 0xc7, 0x10, 0x0d, 0x6a, 0x42, 0x51, 0x0c, 0x4e, 0x42, 0x69, 0x4b, 0xc3, + 0xdf, 0xc6, 0x5f, 0xca, 0x03, 0x13, 0xd4, 0x3c, 0x43, 0x30, 0x33, 0x8e, 0xce, 0xec, 0x9c, 0xa3, + 0xf3, 0x21, 0x30, 0x0d, 0x41, 0xf9, 0x5f, 0x73, 0x91, 0xff, 0xb5, 0x11, 0xe3, 0x4a, 0xf7, 0xeb, + 0x43, 0x58, 0x91, 0xc2, 0x76, 0xb2, 0xab, 0x44, 0x1a, 0x8c, 0xa4, 0xee, 0x44, 0x7f, 0x95, 0x93, + 0x53, 0x28, 0xef, 0x64, 0x2b, 0x43, 0x27, 0xa7, 0x52, 0xdb, 0x35, 0x02, 0x5c, 0x78, 0x21, 0x01, + 0x16, 0xe7, 0x08, 0x50, 0x33, 0xdd, 0x94, 0x92, 0xa6, 0x1b, 0x03, 0x6a, 0xca, 0x95, 0x49, 0x11, + 0x1c, 0x24, 0x59, 0x56, 0xa4, 0x3f, 0x13, 0xa3, 0x38, 0xee, 0x41, 0x43, 0xd9, 0x57, 0x22, 0xe3, + 0x10, 0x45, 0x27, 0x48, 0xf3, 0xdc, 0xb6, 0x32, 0x11, 0x25, 0x4c, 0xf1, 0x95, 0x19, 0x53, 0xfc, + 0xbb, 0xb0, 0x14, 0x08, 0xfa, 0xb5, 0xa6, 0xae, 0x0c, 0x51, 0xe2, 0x43, 0xd4, 0xc3, 0x4a, 0x66, + 0x03, 0x33, 0x8e, 0x63, 0xf8, 0xbc, 0xe1, 0xa3, 0x96, 0x62, 0xf8, 0x78, 0x1c, 0x7b, 0xfd, 0x82, + 0x73, 0x67, 0x8c, 0x42, 0x45, 0x1c, 0x76, 0x23, 0x27, 0xb8, 0x77, 0xee, 0x8c, 0x4d, 0xe5, 0x62, + 0x16, 0x09, 0xe3, 0x7f, 0x67, 0xa0, 0x21, 0xe8, 0x20, 0xb1, 0xc5, 0xbe, 0x07, 0xc8, 0x0c, 0x5e, + 0x72, 0x87, 0x55, 0x04, 0xae, 0xda, 0x60, 0x1f, 0x02, 0xee, 0x18, 0x4b, 0x28, 0x9d, 0x72, 0x7f, + 0x35, 0x93, 0xfb, 0x2b, 0xe6, 0xa1, 0x7b, 0x37, 0x48, 0x39, 0x11, 0x10, 0xf6, 0x3d, 0x28, 0x0b, + 0xc2, 0x44, 0x2a, 0x91, 0x51, 0x64, 0x4a, 0x34, 0x4b, 0xd9, 0x23, 0xa2, 0xe8, 0x44, 0x26, 0xd3, + 0x1c, 0xb5, 0xf9, 0x14, 0x47, 0xad, 0xb6, 0x81, 0xf7, 0x00, 0x9e, 0xf0, 0xab, 0x7d, 0x6f, 0x80, + 0x2a, 0xf1, 0x6d, 0x00, 0x41, 0xcb, 0xa7, 0xf6, 0xd8, 0x91, 0x16, 0x9d, 0x82, 0x59, 0x7e, 0xca, + 0xaf, 0x76, 0x11, 0x20, 0x16, 0x52, 0x64, 0xc7, 0xbb, 0xb8, 0x60, 0x96, 0x9e, 0xf2, 0x2b, 0xda, + 0xc2, 0x16, 0xd4, 0x9e, 0xf0, 0xab, 0x1d, 0x4e, 0x52, 0xa8, 0xe7, 0x0b, 0x22, 0xf2, 0xed, 0x67, + 0x42, 0xec, 0x4c, 0x38, 0x59, 0x2b, 0xbe, 0xfd, 0xec, 0x09, 0xbf, 0x52, 0x0e, 0xdf, 0xa2, 0xc8, + 0x1f, 0x79, 0x03, 0x79, 0x6e, 0xaa, 0x70, 0x91, 0xb8, 0x53, 0xe6, 0xc2, 0x53, 0xfc, 0x6d, 0xfc, + 0x69, 0x06, 0x6a, 0xa2, 0xff, 0xc8, 0x96, 0xc5, 0x92, 0xa9, 0xa8, 0xa3, 0x4c, 0x1c, 0x75, 0xf4, + 0x48, 0x72, 0x35, 0xe2, 0xf1, 0xd9, 0xeb, 0x79, 0x3c, 0xae, 0x0d, 0x31, 0xf8, 0xf7, 0xa1, 0x4c, + 0xdb, 0x52, 0xec, 0xf3, 0x5c, 0x62, 0x81, 0x13, 0x03, 0x32, 0x4b, 0x88, 0xf6, 0x84, 0x82, 0x1c, + 0x34, 0xeb, 0x20, 0x4d, 0x71, 0xd9, 0x8f, 0x6c, 0x82, 0x29, 0xcb, 0x50, 0xb8, 0x26, 0xc8, 0x41, + 0x37, 0xbd, 0x2d, 0xcc, 0x99, 0xde, 0x0e, 0xa1, 0x24, 0x96, 0x1a, 0x07, 0x9b, 0x52, 0x69, 0x26, + 0xad, 0x52, 0x21, 0x09, 0xd8, 0xe2, 0x50, 0x10, 0x8c, 0x2e, 0x2b, 0x25, 0x01, 0x3b, 0xe0, 0x47, + 0xc8, 0xec, 0x32, 0x50, 0xd1, 0x76, 0x00, 0x5a, 0x2f, 0xa3, 0xf9, 0xa2, 0xed, 0x92, 0x24, 0xf1, + 0xc4, 0x84, 0xef, 0xdd, 0x30, 0x6b, 0x83, 0xc4, 0x0a, 0x6c, 0x4a, 0x5a, 0xc5, 0x92, 0xd9, 0x44, + 0x80, 0x94, 0xea, 0xb8, 0x22, 0x50, 0xf1, 0x7b, 0x6b, 0x01, 0xf2, 0x02, 0xd5, 0xf8, 0x08, 0x96, + 0xb4, 0x6e, 0x90, 0x1d, 0xe0, 0x65, 0x47, 0x68, 0xfc, 0x52, 0x54, 0x58, 0xb4, 0x41, 0xfe, 0x25, + 0x15, 0x30, 0xc2, 0x87, 0x34, 0x70, 0x19, 0x98, 0x42, 0x20, 0x81, 0xf6, 0xd2, 0x41, 0x0c, 0xbf, + 0x02, 0xcb, 0x5a, 0xed, 0xbb, 0x8e, 0x6b, 0x8f, 0x9c, 0x9f, 0xe0, 0x81, 0x1f, 0x38, 0x67, 0xee, + 0x4c, 0xfd, 0x04, 0xfa, 0x5a, 0xf5, 0xff, 0xdd, 0x2c, 0xac, 0xc8, 0x06, 0x30, 0x04, 0xd0, 0x11, + 0x52, 0xdc, 0x41, 0x70, 0xc6, 0xbe, 0x07, 0x35, 0x31, 0x37, 0x96, 0xcf, 0xcf, 0x9c, 0x20, 0xe4, + 0xca, 0xaf, 0x95, 0xc2, 0xb8, 0xc4, 0x61, 0x2e, 0x50, 0x4d, 0x89, 0xc9, 0x3e, 0x82, 0x0a, 0x16, + 0x25, 0x3b, 0x8b, 0x5c, 0x88, 0xe6, 0x7c, 0x41, 0x9a, 0xe8, 0xbd, 0x1b, 0x26, 0x04, 0xf1, 0xb4, + 0x7f, 0x04, 0x15, 0x5c, 0xc3, 0x0b, 0x9c, 0xc8, 0x19, 0x56, 0x35, 0x37, 0xd1, 0xa2, 0xf0, 0x24, + 0x9e, 0xf6, 0x16, 0xd4, 0x88, 0x59, 0xc9, 0x79, 0x92, 0xa1, 0x45, 0x1b, 0xf3, 0xc5, 0xd5, 0x4c, + 0x8a, 0xce, 0x4f, 0xb4, 0xf4, 0x56, 0x19, 0x8a, 0xa1, 0xef, 0x9c, 0x9d, 0x71, 0xdf, 0x58, 0x8b, + 0xa6, 0x46, 0x70, 0x61, 0xde, 0x0b, 0xf9, 0x44, 0xc8, 0xe6, 0xc6, 0xbf, 0xcf, 0x40, 0x45, 0xf2, + 0xd5, 0x9f, 0xda, 0x99, 0xb6, 0xa1, 0xc5, 0xe6, 0x92, 0x49, 0x27, 0x0e, 0xc5, 0x7d, 0x1b, 0x16, + 0xc7, 0x42, 0x4e, 0x17, 0x7a, 0x64, 0xc2, 0x93, 0x56, 0x57, 0x60, 0x29, 0x26, 0x6f, 0xc2, 0x32, + 0x4a, 0xcd, 0x81, 0x15, 0x3a, 0x23, 0x4b, 0x65, 0xca, 0x38, 0xd8, 0x25, 0xca, 0xea, 0x3b, 0xa3, + 0x03, 0x99, 0x21, 0x84, 0xc7, 0x20, 0xb4, 0xcf, 0xb8, 0xdc, 0xdb, 0x94, 0x30, 0x9a, 0xb0, 0x36, + 0xa3, 0x42, 0x2a, 0xfd, 0xf8, 0xff, 0x2e, 0xc1, 0xfa, 0x5c, 0x96, 0xd4, 0x93, 0x23, 0x0f, 0xd2, + 0xc8, 0x19, 0x9f, 0x78, 0x91, 0x7d, 0x35, 0xa3, 0x79, 0x90, 0xf6, 0x45, 0x8e, 0xb2, 0xaf, 0x72, + 0x58, 0x55, 0x04, 0x89, 0x06, 0xd2, 0x48, 0xcb, 0xcc, 0xa2, 0x0e, 0xf4, 0x7e, 0xf2, 0x10, 0x9b, + 0x6d, 0x4e, 0xc1, 0x75, 0xd1, 0x68, 0x79, 0x32, 0x07, 0x0b, 0xd8, 0xaf, 0x41, 0x33, 0xa2, 0x7b, + 0x29, 0xb6, 0x6b, 0x2a, 0xb3, 0x68, 0xe9, 0xbd, 0x17, 0xb4, 0x94, 0x30, 0xee, 0xa1, 0xec, 0xb4, + 0xa6, 0xb6, 0x0c, 0x55, 0x18, 0xb5, 0x75, 0x01, 0xaf, 0xaa, 0xb6, 0x50, 0x0c, 0x9f, 0x6f, 0x31, + 0xff, 0x52, 0x63, 0x43, 0xc3, 0x65, 0xa2, 0x59, 0xf3, 0x96, 0xac, 0x38, 0xca, 0xd2, 0xdb, 0x3d, + 0x87, 0xb5, 0x67, 0xb6, 0x13, 0xaa, 0x31, 0x6a, 0x1a, 0x7b, 0x01, 0xdb, 0x7b, 0xf4, 0x82, 0xf6, + 0x3e, 0xa3, 0xc2, 0x09, 0xc5, 0x64, 0xe5, 0xd9, 0x3c, 0x30, 0xd8, 0xf8, 0x47, 0x39, 0xa8, 0x27, + 0x6b, 0x11, 0x8c, 0x45, 0x1e, 0x36, 0x4a, 0xde, 0x94, 0x42, 0xb0, 0xb4, 0xfd, 0x77, 0x49, 0xce, + 0x9c, 0xf7, 0x4a, 0x64, 0x53, 0xbc, 0x12, 0xba, 0x33, 0x20, 0xf7, 0x22, 0xef, 0x6b, 0xfe, 0xa5, + 0xbc, 0xaf, 0x85, 0x34, 0xef, 0xeb, 0xf5, 0x2e, 0xbb, 0x85, 0x9f, 0xca, 0x65, 0x57, 0x7c, 0xae, + 0xcb, 0x4e, 0x73, 0x34, 0x96, 0xae, 0x31, 0xe1, 0x6b, 0xae, 0xc7, 0x14, 0x97, 0x5d, 0xf9, 0x6b, + 0xb8, 0xec, 0x36, 0xfe, 0x34, 0x03, 0x6c, 0x7e, 0x77, 0xb0, 0x8f, 0xc9, 0xe1, 0xe3, 0xf2, 0x91, + 0xe4, 0xdc, 0xdf, 0x7a, 0xb9, 0x1d, 0xa6, 0x08, 0x42, 0x95, 0x66, 0x0f, 0x60, 0x59, 0x8f, 0xd6, + 0xd7, 0xb5, 0xf6, 0x9a, 0xc9, 0xf4, 0xac, 0xd8, 0xb6, 0xa3, 0xb9, 0xba, 0xf3, 0x2f, 0x74, 0x75, + 0x17, 0x5e, 0xe8, 0xea, 0x5e, 0x48, 0xba, 0xba, 0x37, 0xfe, 0x53, 0x06, 0x96, 0x53, 0x88, 0xf8, + 0x9b, 0x1b, 0xb3, 0xa0, 0xbd, 0x04, 0x5b, 0xcb, 0x4a, 0xda, 0xd3, 0x39, 0xda, 0xbe, 0xb2, 0x07, + 0x8a, 0xa5, 0x08, 0xe4, 0x49, 0x75, 0xff, 0x45, 0xdc, 0x25, 0x2e, 0x61, 0xea, 0xc5, 0x37, 0x7e, + 0x3b, 0x0b, 0x15, 0x2d, 0x53, 0xcc, 0x22, 0x91, 0xac, 0x16, 0x61, 0x44, 0x92, 0x21, 0xda, 0x1c, + 0xee, 0x80, 0xf4, 0x7a, 0x50, 0x3e, 0x6d, 0x2e, 0x29, 0x06, 0x22, 0xc2, 0x26, 0x2c, 0x2b, 0x67, + 0x1c, 0x8f, 0x83, 0x0e, 0xe5, 0x59, 0xb3, 0x24, 0x5d, 0x72, 0x3c, 0x8a, 0x61, 0x64, 0x0f, 0x94, + 0x3a, 0x18, 0xaf, 0x1d, 0x92, 0x3a, 0xb9, 0x14, 0x96, 0x68, 0x83, 0xa8, 0x45, 0x14, 0x74, 0xfe, + 0x3e, 0xac, 0xaa, 0xed, 0x91, 0x2c, 0x41, 0x5e, 0x06, 0x26, 0x37, 0x87, 0x5e, 0xe4, 0x87, 0x70, + 0x7b, 0xa6, 0x4f, 0x33, 0x45, 0x29, 0x3a, 0xf6, 0x66, 0xa2, 0x77, 0x7a, 0x0d, 0x1b, 0x5f, 0x42, + 0x2d, 0xc1, 0x28, 0xbf, 0xb9, 0x25, 0x9f, 0xb5, 0xf3, 0xd0, 0x8c, 0xea, 0x76, 0x9e, 0x8d, 0xff, + 0x95, 0x03, 0x36, 0xcf, 0xab, 0x7f, 0x96, 0x5d, 0x98, 0x27, 0xcc, 0x5c, 0x0a, 0x61, 0xfe, 0x7f, + 0x93, 0x1f, 0xde, 0x85, 0x25, 0x9f, 0x0f, 0xbc, 0x0b, 0xee, 0x6b, 0x1e, 0x55, 0xda, 0x9c, 0x8d, + 0x28, 0x43, 0xf5, 0xe2, 0xc3, 0xd9, 0xc8, 0x8e, 0x52, 0xe2, 0xc2, 0x89, 0x26, 0x40, 0xcd, 0x04, + 0x78, 0x1c, 0xc3, 0x82, 0xed, 0x0e, 0xce, 0x3d, 0x5f, 0xf2, 0xc1, 0x9f, 0xfb, 0xda, 0xc7, 0xe7, + 0x66, 0x0b, 0xcb, 0xa3, 0xd4, 0x66, 0xca, 0xca, 0x8c, 0xf7, 0xa1, 0xa2, 0x81, 0x59, 0x19, 0x0a, + 0xfb, 0x9d, 0x83, 0xad, 0xc3, 0xc6, 0x0d, 0x56, 0x83, 0xb2, 0xd9, 0xde, 0x3e, 0xfc, 0xb4, 0x6d, + 0xb6, 0x77, 0x1a, 0x19, 0x56, 0x82, 0xfc, 0xfe, 0x61, 0xaf, 0xdf, 0xc8, 0x1a, 0x1b, 0xd0, 0x94, + 0x35, 0xce, 0x3b, 0x35, 0x7e, 0x23, 0x1f, 0x99, 0x0b, 0x31, 0x53, 0xaa, 0xe8, 0xdf, 0x86, 0xaa, + 0x2e, 0xde, 0x48, 0x8a, 0x98, 0x71, 0xea, 0x0b, 0xe5, 0xdc, 0xd3, 0x78, 0xf5, 0x36, 0x90, 0x4b, + 0x77, 0x18, 0x15, 0xcb, 0x26, 0xe4, 0xd6, 0x14, 0xf7, 0x21, 0x2a, 0x3f, 0x09, 0x32, 0xfc, 0x73, + 0x50, 0x4f, 0x1a, 0xf0, 0x25, 0x47, 0x4a, 0x53, 0x38, 0x45, 0xe9, 0x84, 0x45, 0x9f, 0xfd, 0x10, + 0x1a, 0xb3, 0x0e, 0x00, 0x29, 0x3c, 0x5f, 0x53, 0x7e, 0xd1, 0x49, 0xfa, 0x04, 0xd8, 0x1e, 0xac, + 0xa4, 0x09, 0x78, 0x48, 0x1f, 0xd7, 0x1b, 0x29, 0xd8, 0xbc, 0x10, 0xc7, 0xbe, 0x2b, 0x1d, 0x41, + 0x05, 0x5c, 0xfe, 0x37, 0x92, 0xed, 0x6b, 0x93, 0xbd, 0x49, 0xff, 0x34, 0x97, 0xd0, 0x05, 0x40, + 0x0c, 0x63, 0x0d, 0xa8, 0x1e, 0x1e, 0xb5, 0xbb, 0xd6, 0xf6, 0x5e, 0xab, 0xdb, 0x6d, 0xef, 0x37, + 0x6e, 0x30, 0x06, 0x75, 0x74, 0x66, 0xef, 0x44, 0xb0, 0x8c, 0x80, 0x49, 0x87, 0x9c, 0x82, 0x65, + 0xd9, 0x0a, 0x34, 0x3a, 0xdd, 0x19, 0x68, 0x8e, 0x35, 0x61, 0xe5, 0xa8, 0x4d, 0xfe, 0xef, 0x44, + 0xbd, 0x79, 0xa1, 0x34, 0xc8, 0xe1, 0x0a, 0xa5, 0xe1, 0x33, 0x7b, 0x34, 0xe2, 0xa1, 0xdc, 0x07, + 0x4a, 0x96, 0xfe, 0xcd, 0x0c, 0xac, 0xce, 0x64, 0xc4, 0x77, 0x43, 0x48, 0x92, 0x4e, 0xca, 0xd0, + 0x55, 0x04, 0xaa, 0xdd, 0xf4, 0x2e, 0x2c, 0x45, 0x86, 0xa7, 0x99, 0x53, 0xa9, 0x11, 0x65, 0x28, + 0xe4, 0x07, 0xb0, 0xac, 0xd9, 0xaf, 0x66, 0x78, 0x05, 0xd3, 0xb2, 0x64, 0x01, 0x63, 0x3d, 0x8a, + 0xc1, 0x9f, 0xe9, 0xf5, 0x10, 0xd6, 0x66, 0x33, 0x62, 0x3f, 0x59, 0xb2, 0xbf, 0x2a, 0xc9, 0x1e, + 0xce, 0x10, 0x42, 0xb2, 0xb7, 0xfa, 0x82, 0xab, 0xe6, 0x7f, 0x67, 0x01, 0xd8, 0x27, 0x53, 0xee, + 0x5f, 0xe1, 0xdd, 0x8f, 0xe0, 0x45, 0x01, 0x8e, 0xca, 0xd2, 0x92, 0x7d, 0xa9, 0xfb, 0x5d, 0x69, + 0xf7, 0xab, 0xf2, 0x2f, 0xbe, 0x5f, 0x55, 0x78, 0xd1, 0xfd, 0xaa, 0xd7, 0xa1, 0xe6, 0x9c, 0xb9, + 0x9e, 0x60, 0x85, 0x42, 0x12, 0x0e, 0x9a, 0x0b, 0x77, 0x73, 0xf7, 0xaa, 0x66, 0x55, 0x02, 0x85, + 0x1c, 0x1c, 0xb0, 0x8f, 0x62, 0x24, 0x3e, 0x3c, 0xc3, 0x3b, 0x86, 0x3a, 0x13, 0x6c, 0x0f, 0xcf, + 0xb8, 0x34, 0x2c, 0xa1, 0xa6, 0xa1, 0x0a, 0x0b, 0x78, 0xc0, 0xde, 0x80, 0x7a, 0xe0, 0x4d, 0x85, + 0x62, 0xa1, 0xa6, 0x81, 0x1c, 0x65, 0x55, 0x82, 0x1e, 0x29, 0xb7, 0xe9, 0xf2, 0x34, 0xe0, 0xd6, + 0xd8, 0x09, 0x02, 0x21, 0x9e, 0x0d, 0x3c, 0x37, 0xf4, 0xbd, 0x91, 0xf4, 0x7d, 0x2d, 0x4d, 0x03, + 0x7e, 0x40, 0x39, 0xdb, 0x94, 0xc1, 0xbe, 0x13, 0x77, 0x69, 0x62, 0x3b, 0x7e, 0xd0, 0x04, 0xec, + 0x92, 0x1a, 0x29, 0xca, 0xef, 0xb6, 0xe3, 0x47, 0x7d, 0x11, 0x89, 0x60, 0xe6, 0xde, 0x57, 0x65, + 0xf6, 0xde, 0xd7, 0xaf, 0xa6, 0xdf, 0xfb, 0xaa, 0x61, 0xd5, 0x0f, 0x65, 0xd5, 0xf3, 0x4b, 0xfc, + 0xb5, 0xae, 0x7f, 0xcd, 0x5f, 0x67, 0xab, 0x7f, 0x9d, 0xeb, 0x6c, 0x8b, 0x69, 0xd7, 0xd9, 0xde, + 0x87, 0x0a, 0x5e, 0x34, 0xb2, 0xce, 0x1d, 0x21, 0xc3, 0x91, 0x2f, 0xaf, 0xa1, 0xdf, 0x44, 0xda, + 0x73, 0xdc, 0xd0, 0x04, 0x5f, 0xfd, 0x0c, 0xe6, 0x6f, 0x96, 0x2d, 0xfd, 0x0c, 0x6f, 0x96, 0xc9, + 0x0b, 0x51, 0x9b, 0x50, 0x52, 0xeb, 0xc4, 0x18, 0xe4, 0x4f, 0x7d, 0x6f, 0xac, 0x7c, 0x1c, 0xe2, + 0x37, 0xab, 0x43, 0x36, 0xf4, 0x64, 0xe1, 0x6c, 0xe8, 0x19, 0xbf, 0x0c, 0x15, 0x8d, 0xd4, 0xd8, + 0x6b, 0x64, 0x97, 0x14, 0xba, 0x99, 0x94, 0x2d, 0x69, 0x16, 0xcb, 0x12, 0xda, 0x19, 0x0a, 0x7e, + 0x33, 0x74, 0x7c, 0x8e, 0x77, 0x40, 0x2d, 0x9f, 0x5f, 0x70, 0x3f, 0x50, 0x3e, 0xa7, 0x46, 0x94, + 0x61, 0x12, 0xdc, 0xf8, 0x15, 0x58, 0x4e, 0xac, 0xad, 0x64, 0x11, 0x6f, 0xc0, 0x02, 0xce, 0x9b, + 0x0a, 0x1a, 0x48, 0xde, 0xf0, 0x92, 0x79, 0x78, 0xdf, 0x95, 0xdc, 0x65, 0xd6, 0xc4, 0xf7, 0x4e, + 0xb0, 0x91, 0x8c, 0x59, 0x91, 0xb0, 0x23, 0xdf, 0x3b, 0x31, 0xfe, 0x28, 0x07, 0xb9, 0x3d, 0x6f, + 0xa2, 0x07, 0xb1, 0x65, 0xe6, 0x82, 0xd8, 0xa4, 0xc2, 0x69, 0x45, 0x0a, 0xa5, 0x94, 0xd9, 0xd1, + 0x51, 0xa4, 0x94, 0xca, 0x7b, 0x50, 0x17, 0x7c, 0x22, 0xf4, 0x84, 0xc6, 0xfe, 0xcc, 0xf6, 0x49, + 0x20, 0xce, 0xd1, 0xe6, 0xb3, 0xc7, 0x61, 0xdf, 0xdb, 0x25, 0x38, 0x5b, 0x81, 0x5c, 0xa4, 0xbe, + 0x60, 0xb6, 0x48, 0xb2, 0x35, 0x58, 0xc0, 0x68, 0xe6, 0x2b, 0xe9, 0xf4, 0x96, 0x29, 0xf6, 0x2d, + 0x58, 0x4e, 0xd6, 0x4b, 0xac, 0x48, 0xca, 0x46, 0x7a, 0xc5, 0xc8, 0x93, 0x6e, 0x82, 0xe0, 0x23, + 0x84, 0x23, 0x83, 0x6b, 0x4e, 0x39, 0xc7, 0x2c, 0x8d, 0xe9, 0x95, 0x12, 0x4c, 0xef, 0x0e, 0x54, + 0xc2, 0xd1, 0x85, 0x35, 0xb1, 0xaf, 0x46, 0x9e, 0x3d, 0x94, 0xfb, 0x1b, 0xc2, 0xd1, 0xc5, 0x11, + 0x41, 0xd8, 0x03, 0x80, 0xf1, 0x64, 0x22, 0xf7, 0x1e, 0x3a, 0x3f, 0x62, 0x52, 0x3e, 0x38, 0x3a, + 0x22, 0x92, 0x33, 0xcb, 0xe3, 0xc9, 0x84, 0x7e, 0xb2, 0x1d, 0xa8, 0xa7, 0xde, 0xd3, 0xbc, 0xad, + 0x82, 0x6f, 0xbd, 0xc9, 0x66, 0xca, 0xe6, 0xac, 0x0d, 0x74, 0xd8, 0xc6, 0x0f, 0x81, 0xfd, 0x19, + 0x6f, 0x4b, 0xf6, 0xa1, 0x1c, 0xf5, 0x4f, 0xbf, 0x6c, 0x88, 0xe1, 0xf4, 0x95, 0xc4, 0x65, 0xc3, + 0xd6, 0x70, 0xe8, 0x0b, 0xbe, 0x48, 0x07, 0x66, 0xc4, 0xf2, 0x41, 0x3b, 0x31, 0x5b, 0xc4, 0xf7, + 0x8d, 0xff, 0x96, 0x81, 0x02, 0xdd, 0x7c, 0x7c, 0x0b, 0x16, 0x09, 0x3f, 0x0a, 0x08, 0x94, 0xae, + 0x72, 0x3a, 0x77, 0xfb, 0x32, 0x16, 0x50, 0x6c, 0x0b, 0xed, 0x36, 0x78, 0x36, 0x5a, 0x79, 0xed, + 0x46, 0xf8, 0x1d, 0x28, 0x47, 0x4d, 0x6b, 0xa4, 0x53, 0x52, 0x2d, 0xb3, 0x57, 0x21, 0x7f, 0xee, + 0x4d, 0x94, 0xe5, 0x07, 0xe2, 0x99, 0x34, 0x11, 0x1e, 0xf7, 0x45, 0xb4, 0x41, 0x9d, 0x97, 0x16, + 0x8b, 0xa8, 0x11, 0x24, 0x83, 0xf9, 0x31, 0x2e, 0xa4, 0x8c, 0xf1, 0x18, 0x16, 0x05, 0x1f, 0xd0, + 0x62, 0x5a, 0xae, 0x3f, 0x34, 0xdf, 0x11, 0x12, 0xde, 0x60, 0x34, 0x1d, 0x72, 0xdd, 0xf6, 0x86, + 0x01, 0x70, 0x12, 0xae, 0x24, 0x6b, 0xe3, 0x77, 0x32, 0xc4, 0x5f, 0x44, 0xbd, 0xec, 0x1e, 0xe4, + 0xc5, 0xf9, 0x36, 0x63, 0x89, 0x8f, 0xee, 0x35, 0x08, 0x3c, 0x13, 0x31, 0xc4, 0xd2, 0xa1, 0xd7, + 0x5e, 0xaf, 0xbd, 0x66, 0x56, 0xdc, 0xe9, 0x38, 0x32, 0x5d, 0xbd, 0xa9, 0x86, 0x35, 0x63, 0xf6, + 0xa1, 0xd1, 0x47, 0xdb, 0x74, 0x53, 0x8b, 0xa4, 0xcb, 0x27, 0x4e, 0x4c, 0x25, 0x05, 0x0e, 0xcf, + 0xb8, 0x16, 0x41, 0xf7, 0x7b, 0x59, 0xa8, 0x25, 0x7a, 0x84, 0xa1, 0x84, 0xe2, 0x00, 0x20, 0xc7, + 0x92, 0x5c, 0x6f, 0x10, 0x20, 0x29, 0xa8, 0x6b, 0xf3, 0x94, 0x4d, 0xcc, 0x53, 0x14, 0x9c, 0x93, + 0xd3, 0x83, 0x73, 0x1e, 0x42, 0x39, 0x7e, 0x05, 0x20, 0xd9, 0x25, 0xd1, 0x9e, 0xba, 0xdd, 0x11, + 0x23, 0xc5, 0xe1, 0x3c, 0x05, 0x3d, 0x9c, 0xe7, 0x07, 0x5a, 0xf4, 0xc7, 0x02, 0x56, 0x63, 0xa4, + 0xcd, 0xe8, 0xcf, 0x24, 0xf6, 0xc3, 0xf8, 0x08, 0x2a, 0x5a, 0xe7, 0xf5, 0x28, 0x8f, 0x4c, 0x22, + 0xca, 0x23, 0xba, 0x9d, 0x95, 0x8d, 0x6f, 0x67, 0x19, 0x7f, 0x39, 0x0b, 0x35, 0xb1, 0xbf, 0x1c, + 0xf7, 0xec, 0xc8, 0x1b, 0x39, 0x03, 0x74, 0x34, 0x45, 0x3b, 0x4c, 0x0a, 0x5a, 0x6a, 0x9f, 0xc9, + 0x2d, 0x46, 0x72, 0x96, 0x7e, 0x35, 0x95, 0x98, 0x74, 0x74, 0x35, 0xd5, 0x80, 0x9a, 0x60, 0x8c, + 0xe8, 0x32, 0x8a, 0xdf, 0x12, 0x30, 0x2b, 0xa7, 0x9c, 0x6f, 0xd9, 0x01, 0x71, 0xc8, 0x6f, 0xc1, + 0xb2, 0xc0, 0xc1, 0x5b, 0x79, 0x63, 0x67, 0x34, 0x72, 0x08, 0x93, 0x0c, 0x4d, 0x8d, 0x53, 0xce, + 0x4d, 0x3b, 0xe4, 0x07, 0x22, 0x43, 0x3e, 0x3d, 0x50, 0x1a, 0x3a, 0x81, 0x7d, 0x12, 0x07, 0x7c, + 0x46, 0x69, 0xf4, 0x2c, 0xdb, 0x97, 0x9a, 0x67, 0x99, 0x0c, 0x10, 0x95, 0xb1, 0x7d, 0x19, 0x79, + 0x96, 0x67, 0x28, 0xa9, 0x38, 0x4b, 0x49, 0xc6, 0xbf, 0xcd, 0x42, 0x45, 0x23, 0xcb, 0x97, 0x39, + 0x5d, 0x6f, 0xcf, 0x39, 0x06, 0xcb, 0xba, 0x0f, 0xf0, 0xf5, 0x64, 0x93, 0x18, 0xfb, 0x42, 0x8f, + 0x1c, 0x68, 0x04, 0x7c, 0x0b, 0xca, 0x62, 0xd7, 0xbd, 0x8f, 0x26, 0x58, 0xf9, 0xf4, 0x07, 0x02, + 0x8e, 0xa6, 0x27, 0x2a, 0xf3, 0x11, 0x66, 0x16, 0xe2, 0xcc, 0x47, 0x22, 0xf3, 0x79, 0x21, 0xd8, + 0x1f, 0x42, 0x55, 0xd6, 0x8a, 0x6b, 0x8a, 0xc3, 0x8d, 0x77, 0x7d, 0x62, 0xbd, 0xcd, 0x0a, 0x35, + 0x47, 0x8b, 0x2f, 0x0b, 0x3e, 0x52, 0x05, 0x4b, 0x2f, 0x2a, 0xf8, 0x88, 0x12, 0xc6, 0x6e, 0x14, + 0xd5, 0x8e, 0x71, 0x57, 0x8a, 0x8f, 0x3d, 0x80, 0x65, 0xc5, 0xae, 0xa6, 0xae, 0xed, 0xba, 0xde, + 0xd4, 0x1d, 0x70, 0x75, 0x41, 0x8b, 0xc9, 0xac, 0xe3, 0x38, 0xc7, 0x18, 0x46, 0xb7, 0x7d, 0x29, + 0x7e, 0xeb, 0x3e, 0x14, 0x48, 0x2e, 0x27, 0xe1, 0x23, 0x9d, 0x71, 0x11, 0x0a, 0xbb, 0x07, 0x05, + 0x12, 0xcf, 0xb3, 0xd7, 0x32, 0x1b, 0x42, 0x30, 0x5a, 0xc0, 0x44, 0xc1, 0x03, 0x1e, 0xfa, 0xce, + 0x20, 0x88, 0xef, 0x7e, 0x15, 0x84, 0xfe, 0x49, 0x6d, 0xc5, 0x96, 0xdb, 0x18, 0x13, 0x75, 0x54, + 0xc2, 0x11, 0x07, 0xd3, 0x72, 0xa2, 0x0e, 0x29, 0x2e, 0x8d, 0x60, 0xed, 0x84, 0x87, 0xcf, 0x38, + 0x77, 0x5d, 0x21, 0x0c, 0x0d, 0xb8, 0x1b, 0xfa, 0xf6, 0x48, 0x2c, 0x12, 0x8d, 0xe0, 0xf1, 0x5c, + 0xad, 0xb1, 0x0d, 0x64, 0x2b, 0x2e, 0xb8, 0x1d, 0x95, 0x23, 0xde, 0xb1, 0x7a, 0x92, 0x96, 0xb7, + 0xf1, 0x4b, 0xb0, 0x71, 0x7d, 0xa1, 0x94, 0x7b, 0x9f, 0xf7, 0x92, 0x5c, 0x25, 0xf2, 0x03, 0x8e, + 0x3c, 0x3b, 0xa4, 0xde, 0xe8, 0x9c, 0xa5, 0x0b, 0x15, 0x2d, 0x27, 0x3e, 0xfb, 0x33, 0x28, 0xdc, + 0x51, 0x42, 0x9c, 0x48, 0xae, 0xe7, 0x8f, 0xd1, 0xef, 0x36, 0xb4, 0xe2, 0xda, 0x33, 0xe6, 0x62, + 0x0c, 0xc7, 0xeb, 0xef, 0xc6, 0x26, 0x2c, 0xa2, 0x64, 0xaf, 0x1d, 0x74, 0xcf, 0x13, 0x06, 0x8d, + 0x15, 0x60, 0x5d, 0xe2, 0x5d, 0x7a, 0xbc, 0xe7, 0x7f, 0xce, 0x41, 0x45, 0x03, 0x8b, 0xd3, 0x08, + 0x03, 0x00, 0xad, 0xa1, 0x63, 0x8f, 0xb9, 0x72, 0x72, 0xd6, 0xcc, 0x1a, 0x42, 0x77, 0x24, 0x50, + 0x9c, 0xc5, 0xf6, 0xc5, 0x99, 0xe5, 0x4d, 0x43, 0x6b, 0xc8, 0xcf, 0x7c, 0xae, 0x7a, 0x59, 0xb5, + 0x2f, 0xce, 0x0e, 0xa7, 0xe1, 0x0e, 0xc2, 0x04, 0x96, 0xe0, 0x25, 0x1a, 0x96, 0x8c, 0x59, 0x1b, + 0xdb, 0x97, 0x31, 0x96, 0x0c, 0x9c, 0x24, 0xca, 0xcc, 0x47, 0x81, 0x93, 0xa4, 0x2d, 0xce, 0x1e, + 0xa0, 0x85, 0xf9, 0x03, 0xf4, 0x3b, 0xb0, 0x46, 0x07, 0xa8, 0x64, 0xcd, 0xd6, 0xcc, 0x4e, 0x5e, + 0xc1, 0x5c, 0x39, 0x48, 0x4d, 0xec, 0x6d, 0x88, 0x11, 0x28, 0xb6, 0x14, 0x38, 0x3f, 0x21, 0x46, + 0x96, 0x31, 0xc5, 0xc8, 0x64, 0xe5, 0x3d, 0xe7, 0x27, 0x5c, 0x60, 0x62, 0x74, 0x8c, 0x8e, 0x29, + 0x2f, 0x58, 0x8c, 0x1d, 0x77, 0x16, 0xd3, 0xbe, 0x4c, 0x62, 0x96, 0x25, 0xa6, 0x7d, 0xa9, 0x63, + 0x3e, 0x86, 0xf5, 0x31, 0x1f, 0x3a, 0x76, 0xb2, 0x5a, 0x2b, 0x16, 0xdc, 0x56, 0x28, 0x5b, 0x2b, + 0xd3, 0x23, 0xc5, 0x5d, 0xcc, 0xc6, 0x4f, 0xbc, 0xf1, 0x89, 0x43, 0x32, 0x0b, 0xc5, 0xeb, 0xe4, + 0xcd, 0xba, 0x3b, 0x1d, 0xff, 0x18, 0xc1, 0xa2, 0x48, 0x60, 0xd4, 0xa0, 0xd2, 0x0b, 0xbd, 0x89, + 0x5a, 0xe6, 0x3a, 0x54, 0x29, 0x29, 0x6f, 0x3d, 0xde, 0x82, 0x9b, 0xc8, 0x12, 0xfa, 0xde, 0xc4, + 0x1b, 0x79, 0x67, 0x57, 0x09, 0x3b, 0xde, 0x7f, 0xc8, 0xc0, 0x72, 0x22, 0x57, 0xb2, 0xd7, 0xef, + 0x10, 0x3f, 0x8b, 0xae, 0xae, 0xd1, 0x1e, 0x5c, 0xd2, 0xf6, 0x20, 0x21, 0x12, 0x33, 0x53, 0xd7, + 0xd9, 0x5a, 0xf1, 0xf3, 0x0c, 0xaa, 0x20, 0xb1, 0x94, 0xe6, 0x3c, 0x4b, 0x91, 0xe5, 0xd5, 0xc3, + 0x0d, 0xaa, 0x8a, 0x9f, 0x93, 0x97, 0x60, 0x86, 0x72, 0xc8, 0xb9, 0xe4, 0x4d, 0x02, 0xdd, 0xe6, + 0xa7, 0x7a, 0x10, 0x1b, 0x02, 0x03, 0xe3, 0x1f, 0x67, 0x00, 0xe2, 0xde, 0xe1, 0x5d, 0x86, 0x48, + 0x6e, 0xc9, 0x60, 0x18, 0xaa, 0x26, 0xa3, 0xbc, 0x06, 0xd5, 0x28, 0x62, 0x39, 0x96, 0x84, 0x2a, + 0x0a, 0x26, 0xc4, 0xa1, 0xb7, 0x61, 0xf1, 0x6c, 0xe4, 0x9d, 0xa0, 0xc4, 0x2a, 0xe5, 0x16, 0x8a, + 0x57, 0xab, 0x13, 0x58, 0x49, 0x23, 0xb1, 0xdc, 0x94, 0x4f, 0x0d, 0x6a, 0xd6, 0xa5, 0x20, 0xe3, + 0x6f, 0x66, 0xa3, 0xd0, 0xcd, 0x78, 0x26, 0x9e, 0xaf, 0xde, 0xfd, 0x34, 0xb1, 0x34, 0xcf, 0x73, + 0x2f, 0x7e, 0x04, 0x75, 0x9f, 0x0e, 0x25, 0x75, 0x62, 0xe5, 0x9f, 0x73, 0x62, 0xd5, 0xfc, 0x84, + 0xa4, 0xf3, 0x0e, 0x34, 0xec, 0xe1, 0x05, 0xf7, 0x43, 0x07, 0xad, 0xf5, 0x28, 0x1f, 0xcb, 0x60, + 0x49, 0x0d, 0x8e, 0x82, 0xe8, 0xdb, 0xb0, 0x28, 0x6f, 0xe2, 0x46, 0x98, 0xf2, 0x1d, 0xa0, 0x18, + 0x2c, 0x10, 0x8d, 0x7f, 0xa6, 0x62, 0x45, 0x93, 0xab, 0xfb, 0xfc, 0x59, 0xd1, 0x47, 0x98, 0x9d, + 0x77, 0xa0, 0x4a, 0x42, 0x92, 0x4e, 0x00, 0xc9, 0x8f, 0x08, 0x28, 0x5d, 0x00, 0xc9, 0x69, 0xcd, + 0xbf, 0xcc, 0xb4, 0x1a, 0xff, 0x31, 0x03, 0xc5, 0x3d, 0x6f, 0xb2, 0xe7, 0x50, 0x34, 0x3f, 0x6e, + 0x93, 0xc8, 0x47, 0xb5, 0x20, 0x92, 0x18, 0xf8, 0xf3, 0x9c, 0x0b, 0x67, 0xa9, 0x62, 0x5e, 0x2d, + 0x29, 0xe6, 0xfd, 0x00, 0x6e, 0xa1, 0x0b, 0xd0, 0xf7, 0x26, 0x9e, 0x2f, 0xb6, 0xaa, 0x3d, 0x22, + 0x71, 0xcf, 0x73, 0xc3, 0x73, 0xc5, 0x3b, 0x6f, 0x9e, 0x72, 0x7e, 0xa4, 0x61, 0x1c, 0x44, 0x08, + 0x78, 0xa5, 0x73, 0x14, 0x5e, 0x58, 0xa4, 0xa1, 0x4b, 0x79, 0x94, 0x38, 0xea, 0xa2, 0xc8, 0x68, + 0x23, 0x1c, 0x25, 0x52, 0xe3, 0xbb, 0x50, 0x8e, 0x8c, 0x3d, 0xec, 0x5d, 0x28, 0x9f, 0x7b, 0x13, + 0x69, 0x11, 0xca, 0x24, 0x2e, 0xe5, 0xc9, 0x51, 0x9b, 0xa5, 0x73, 0xfa, 0x11, 0x18, 0x7f, 0x54, + 0x84, 0x62, 0xc7, 0xbd, 0xf0, 0x9c, 0x01, 0x46, 0x9b, 0x8e, 0xf9, 0xd8, 0x53, 0xcf, 0x01, 0x88, + 0xdf, 0x18, 0x9b, 0x15, 0xbf, 0xe6, 0x93, 0x93, 0xb1, 0x59, 0xd1, 0x3b, 0x3e, 0xab, 0xb0, 0xe0, + 0xeb, 0xcf, 0xf1, 0x14, 0x7c, 0x8c, 0x7f, 0x8f, 0xce, 0xcb, 0x82, 0xf6, 0xc8, 0x82, 0xa8, 0x8b, + 0x9e, 0x89, 0xc1, 0x29, 0xa3, 0xeb, 0x99, 0x65, 0x84, 0xe0, 0x84, 0xbd, 0x02, 0x45, 0x79, 0x07, + 0x8e, 0x2e, 0x2d, 0x51, 0xc0, 0xba, 0x04, 0x21, 0x35, 0xf8, 0x9c, 0x5c, 0xb8, 0x91, 0x20, 0x9b, + 0x33, 0xab, 0x0a, 0xb8, 0x23, 0x68, 0xed, 0x0e, 0x54, 0x08, 0x9f, 0x50, 0x4a, 0x32, 0x48, 0x13, + 0x41, 0x88, 0x90, 0xf2, 0xaa, 0x55, 0x39, 0xf5, 0x55, 0x2b, 0x0c, 0x27, 0x8e, 0xb8, 0x2c, 0x0d, + 0x11, 0xe8, 0x2d, 0x23, 0x0d, 0xae, 0x9e, 0x8a, 0x93, 0x36, 0x15, 0xba, 0xad, 0xac, 0x6c, 0x2a, + 0xaf, 0x43, 0xed, 0xd4, 0x1e, 0x8d, 0x4e, 0xec, 0xc1, 0x53, 0x32, 0x05, 0x54, 0xc9, 0xfa, 0xa9, + 0x80, 0x68, 0x0b, 0xb8, 0x03, 0x15, 0x6d, 0x95, 0x31, 0x02, 0x33, 0x6f, 0x42, 0xbc, 0xbe, 0xb3, + 0x16, 0xbe, 0xfa, 0x4b, 0x58, 0xf8, 0xb4, 0x48, 0xd4, 0xc5, 0x64, 0x24, 0xea, 0x2d, 0xe4, 0xa6, + 0x32, 0xe4, 0xb0, 0x41, 0x0f, 0xe7, 0xd8, 0xc3, 0x21, 0x86, 0x1c, 0xa2, 0x21, 0x8b, 0x26, 0x8f, + 0xf2, 0x97, 0x48, 0x97, 0x20, 0x18, 0xa1, 0xdc, 0x26, 0x33, 0xf5, 0xc4, 0x76, 0x86, 0x78, 0xe9, + 0x80, 0xac, 0x07, 0x45, 0x7b, 0x1c, 0x1e, 0xd9, 0xce, 0x90, 0xdd, 0x85, 0xaa, 0xca, 0xc6, 0xd3, + 0x71, 0x99, 0xe6, 0x5f, 0x66, 0x8b, 0x33, 0xd1, 0x80, 0x5a, 0x84, 0x31, 0x8e, 0xaf, 0x1c, 0x57, + 0x24, 0x0a, 0xd2, 0xc1, 0xfb, 0x18, 0xe5, 0x13, 0x72, 0xbc, 0x58, 0x5c, 0x7f, 0x74, 0x2b, 0x0a, + 0x3e, 0x40, 0x2a, 0x55, 0xff, 0xc9, 0x39, 0x46, 0x98, 0x42, 0xb8, 0x23, 0x1f, 0xdd, 0x5a, 0x42, + 0xfe, 0x95, 0xa8, 0xe8, 0xa3, 0x23, 0x04, 0xf6, 0x5d, 0x4d, 0x7f, 0x6d, 0x22, 0xf2, 0x2b, 0x33, + 0xf5, 0x5f, 0x77, 0x29, 0xeb, 0x36, 0x80, 0x13, 0x88, 0x53, 0x26, 0xe0, 0xee, 0x10, 0xef, 0x08, + 0x97, 0xcc, 0xb2, 0x13, 0x3c, 0x21, 0xc0, 0x37, 0xab, 0xd8, 0xb6, 0xa0, 0xaa, 0x0f, 0x93, 0x95, + 0x20, 0x7f, 0x78, 0xd4, 0xee, 0x36, 0x6e, 0xb0, 0x0a, 0x14, 0x7b, 0xed, 0x7e, 0x7f, 0x1f, 0x3d, + 0x7d, 0x55, 0x28, 0x45, 0x17, 0x19, 0xb3, 0x22, 0xd5, 0xda, 0xde, 0x6e, 0x1f, 0xf5, 0xdb, 0x3b, + 0x8d, 0xdc, 0x8f, 0xf2, 0xa5, 0x6c, 0x23, 0x67, 0xfc, 0x71, 0x0e, 0x2a, 0xda, 0x2c, 0x3c, 0x9f, + 0x19, 0xdf, 0x06, 0x40, 0x4d, 0x32, 0x8e, 0x48, 0xcd, 0x9b, 0x65, 0x01, 0xa1, 0xc5, 0xd7, 0x7d, + 0x14, 0x39, 0x7a, 0x91, 0x49, 0xf9, 0x28, 0x5e, 0x87, 0x1a, 0x3d, 0x6e, 0xa4, 0xfb, 0x6b, 0x0b, + 0x66, 0x95, 0x80, 0x92, 0x55, 0xe3, 0x0d, 0x67, 0x44, 0xc2, 0xeb, 0x75, 0xf2, 0x51, 0x13, 0x02, + 0xe1, 0x05, 0x3b, 0xbc, 0x1d, 0x19, 0x78, 0xa3, 0x0b, 0x4e, 0x18, 0x24, 0x11, 0x56, 0x24, 0xac, + 0x2f, 0xef, 0x6a, 0x4b, 0x7e, 0xa8, 0x5d, 0xb1, 0x2d, 0x98, 0x55, 0x02, 0xca, 0x86, 0xbe, 0xa5, + 0x08, 0x88, 0xa2, 0x57, 0xd6, 0xe7, 0xa9, 0x21, 0x41, 0x3c, 0xfb, 0x73, 0x66, 0xc4, 0x32, 0x12, + 0xc6, 0x9b, 0xf3, 0xe5, 0x5e, 0x6c, 0x4e, 0x64, 0xef, 0x02, 0x1b, 0x4f, 0x26, 0x56, 0x8a, 0x81, + 0x2f, 0x6f, 0x2e, 0x8e, 0x27, 0x93, 0xbe, 0x66, 0xff, 0xfa, 0x06, 0x6c, 0x8f, 0x5f, 0x00, 0x6b, + 0x89, 0x0d, 0x8c, 0x5d, 0x8c, 0x54, 0xb1, 0x98, 0x2d, 0x67, 0x74, 0xb6, 0x9c, 0xc2, 0xfd, 0xb2, + 0xa9, 0xdc, 0xef, 0x79, 0x7c, 0xc2, 0xd8, 0x85, 0xca, 0x91, 0xf6, 0x74, 0xda, 0x5d, 0x71, 0x42, + 0xa8, 0x47, 0xd3, 0xe8, 0xec, 0x20, 0x9b, 0xa2, 0x2f, 0xdf, 0x4a, 0xd3, 0x7a, 0x93, 0xd5, 0x7a, + 0x63, 0xfc, 0xc3, 0x0c, 0x3d, 0x35, 0x13, 0x75, 0x3e, 0x7e, 0xad, 0x4d, 0xb9, 0xdf, 0xe2, 0x9b, + 0xf0, 0x15, 0xe5, 0x76, 0x93, 0x97, 0xd8, 0xb1, 0x6b, 0x96, 0x77, 0x7a, 0x1a, 0x70, 0x15, 0xe3, + 0x51, 0x41, 0xd8, 0x21, 0x82, 0x94, 0xf0, 0x2d, 0x24, 0x7c, 0x87, 0xea, 0x0f, 0x64, 0x60, 0x87, + 0x10, 0xbe, 0x0f, 0xec, 0x4b, 0xd9, 0x6a, 0x20, 0x44, 0x10, 0xe9, 0x1f, 0x50, 0x97, 0x65, 0xa3, + 0xb4, 0xf1, 0xf7, 0xe4, 0x65, 0xfd, 0xd9, 0xf9, 0xbd, 0x0f, 0xa5, 0xa8, 0xd6, 0xe4, 0x09, 0xab, + 0x30, 0xa3, 0x7c, 0x71, 0x8e, 0xa3, 0x31, 0x24, 0xd1, 0x63, 0xda, 0x5c, 0xe8, 0xe3, 0xe9, 0x68, + 0xbd, 0x7e, 0x0f, 0xd8, 0xa9, 0xe3, 0xcf, 0x22, 0xd3, 0x66, 0x6b, 0x60, 0x8e, 0x86, 0x6d, 0x1c, + 0xc3, 0xb2, 0xe2, 0x12, 0x9a, 0x46, 0x90, 0x5c, 0xbc, 0xcc, 0x0b, 0x98, 0x7c, 0x76, 0x8e, 0xc9, + 0x1b, 0xbf, 0x5e, 0x80, 0xa2, 0x7a, 0x86, 0x30, 0xed, 0xe9, 0xbc, 0x72, 0xf2, 0xe9, 0xbc, 0x66, + 0xe2, 0x41, 0x25, 0x5c, 0x7a, 0x79, 0xde, 0xbf, 0x3d, 0x7b, 0x64, 0x6b, 0xbe, 0x8a, 0xc4, 0xb1, + 0x2d, 0x7d, 0x15, 0x85, 0xa4, 0xaf, 0x22, 0xed, 0x39, 0x41, 0x12, 0x3d, 0xe7, 0x9e, 0x13, 0xbc, + 0x05, 0x24, 0x47, 0x68, 0xc1, 0x6d, 0x25, 0x04, 0x88, 0x33, 0x27, 0x29, 0x76, 0x94, 0x66, 0xc5, + 0x8e, 0x97, 0x16, 0x09, 0xbe, 0x03, 0x0b, 0xf4, 0xbc, 0x86, 0xbc, 0xfc, 0xab, 0x0e, 0x0e, 0x39, + 0x57, 0xea, 0x3f, 0xdd, 0x78, 0x30, 0x25, 0xae, 0xfe, 0x36, 0x57, 0x25, 0xf1, 0x36, 0x97, 0xee, + 0x43, 0xa9, 0x26, 0x7d, 0x28, 0xf7, 0xa0, 0x11, 0x4d, 0x1c, 0x5a, 0x24, 0xdd, 0x40, 0xde, 0x1c, + 0xac, 0x2b, 0xb8, 0xe0, 0x86, 0xdd, 0x20, 0x3e, 0xf8, 0xea, 0x89, 0x83, 0x4f, 0xf0, 0xaa, 0x56, + 0x18, 0xf2, 0xf1, 0x24, 0x54, 0x07, 0x9f, 0xf6, 0x82, 0x23, 0xad, 0xfc, 0x22, 0xae, 0xbc, 0x5a, + 0x5e, 0xa2, 0x8e, 0x2d, 0xa8, 0x9f, 0xda, 0xce, 0x68, 0xea, 0x73, 0xcb, 0xe7, 0x76, 0xe0, 0xb9, + 0xb8, 0xf9, 0xe3, 0x33, 0x58, 0x0e, 0x71, 0x97, 0x70, 0x4c, 0x44, 0x31, 0x6b, 0xa7, 0x7a, 0x12, + 0x2f, 0x31, 0xe9, 0x33, 0x21, 0x8e, 0x2c, 0x79, 0x87, 0x98, 0x62, 0x55, 0x3a, 0x5d, 0x6b, 0x77, + 0xbf, 0xf3, 0xf1, 0x5e, 0xbf, 0x91, 0x11, 0xc9, 0xde, 0xf1, 0xf6, 0x76, 0xbb, 0xbd, 0x83, 0x47, + 0x18, 0xc0, 0xc2, 0x6e, 0xab, 0xb3, 0x2f, 0x0f, 0xb0, 0x7c, 0xa3, 0x60, 0xfc, 0xeb, 0x2c, 0x54, + 0xb4, 0xd1, 0xb0, 0xc7, 0xd1, 0x22, 0xd0, 0x0b, 0x50, 0xb7, 0xe7, 0x47, 0xbc, 0xa9, 0x38, 0xbc, + 0xb6, 0x0a, 0xd1, 0x5b, 0x8d, 0xd9, 0x6b, 0xdf, 0x6a, 0x64, 0x6f, 0xc1, 0xa2, 0x4d, 0x35, 0x44, + 0x93, 0x2e, 0x8d, 0xfb, 0x12, 0x2c, 0xe7, 0x1c, 0x23, 0x48, 0xe3, 0x63, 0x4a, 0xe0, 0xe5, 0x55, + 0xd0, 0x66, 0x74, 0x52, 0xe1, 0xda, 0x14, 0xe5, 0xcc, 0x48, 0x67, 0x7c, 0x74, 0xe0, 0xcb, 0xf9, + 0x52, 0xd9, 0x82, 0x05, 0x25, 0x28, 0xbc, 0x6a, 0x46, 0x69, 0xe3, 0x03, 0x80, 0x78, 0x3c, 0xc9, + 0xe9, 0xbb, 0x91, 0x9c, 0xbe, 0x8c, 0x36, 0x7d, 0x59, 0xe3, 0x9f, 0x4a, 0xd6, 0x25, 0xd7, 0x22, + 0x32, 0xf5, 0x7d, 0x0b, 0x94, 0xf1, 0xd1, 0xc2, 0x20, 0xef, 0xc9, 0x88, 0x87, 0xea, 0x31, 0x83, + 0x25, 0x99, 0xd3, 0x89, 0x32, 0xe6, 0x58, 0x6d, 0x76, 0x9e, 0xd5, 0xbe, 0x06, 0x55, 0xc1, 0x66, + 0x25, 0x21, 0x05, 0x92, 0x5d, 0x55, 0xc6, 0xf6, 0xa5, 0x6a, 0x3b, 0xc1, 0x63, 0xf3, 0x33, 0x3c, + 0xf6, 0xef, 0x67, 0xe8, 0x6d, 0x91, 0xb8, 0xa3, 0x31, 0x93, 0x8d, 0xea, 0x4c, 0x32, 0x59, 0x89, + 0x6a, 0x46, 0xf9, 0xd7, 0x30, 0xce, 0x6c, 0x3a, 0xe3, 0x4c, 0x67, 0xc9, 0xb9, 0x54, 0x96, 0x6c, + 0x6c, 0x40, 0x73, 0x87, 0x8b, 0xa9, 0x68, 0x8d, 0x46, 0x33, 0x73, 0x69, 0xdc, 0x82, 0x9b, 0x29, + 0x79, 0xd2, 0x6a, 0xf3, 0x09, 0xac, 0xb6, 0xe8, 0xd1, 0x85, 0x6f, 0xea, 0xf2, 0xa4, 0xd1, 0x84, + 0xb5, 0xd9, 0x2a, 0x65, 0x63, 0xbb, 0xb0, 0xb4, 0xc3, 0x4f, 0xa6, 0x67, 0xfb, 0xfc, 0x22, 0x6e, + 0x88, 0x41, 0x3e, 0x38, 0xf7, 0x9e, 0xc9, 0xc5, 0xc5, 0xdf, 0x18, 0x96, 0x29, 0x70, 0xac, 0x60, + 0xc2, 0x07, 0xca, 0x72, 0x8f, 0x90, 0xde, 0x84, 0x0f, 0x8c, 0xc7, 0xc0, 0xf4, 0x7a, 0xe4, 0x4a, + 0x08, 0xb5, 0x6a, 0x7a, 0x62, 0x05, 0x57, 0x41, 0xc8, 0xc7, 0xea, 0xd2, 0x20, 0x04, 0xd3, 0x93, + 0x1e, 0x41, 0x8c, 0xb7, 0xa1, 0x7a, 0x64, 0x5f, 0x99, 0xfc, 0x0b, 0x79, 0x37, 0x6f, 0x1d, 0x8a, + 0x13, 0xfb, 0x4a, 0xf0, 0xd3, 0xc8, 0x89, 0x87, 0xd9, 0xc6, 0xbf, 0xc8, 0xc3, 0x02, 0x61, 0xb2, + 0xbb, 0xf4, 0x12, 0xb2, 0xe3, 0x22, 0x3f, 0x53, 0x27, 0x8b, 0x06, 0x9a, 0x3b, 0x7c, 0xb2, 0xf3, + 0x87, 0x8f, 0xb4, 0x38, 0xaa, 0x57, 0x9d, 0x94, 0xbb, 0xc5, 0x9d, 0x8e, 0xd5, 0x53, 0x4e, 0xc9, + 0x97, 0x07, 0xf2, 0xf1, 0x0b, 0xda, 0x74, 0xeb, 0x3a, 0xe9, 0x10, 0x8f, 0x95, 0x37, 0xea, 0x9d, + 0x3a, 0x53, 0xe5, 0xb9, 0xa3, 0x83, 0x52, 0x35, 0xc4, 0xa2, 0xba, 0x70, 0x9a, 0xd4, 0x10, 0xe7, + 0x34, 0xc1, 0xd2, 0x8b, 0x35, 0x41, 0x32, 0x45, 0x3e, 0x47, 0x13, 0x84, 0x97, 0xd0, 0x04, 0x5f, + 0xc2, 0x19, 0x7d, 0x13, 0x4a, 0x28, 0x28, 0x69, 0xc7, 0x90, 0x10, 0x90, 0xc4, 0x31, 0xf4, 0xa1, + 0xa6, 0x2b, 0x51, 0x24, 0x8c, 0x76, 0x0e, 0x98, 0xfc, 0x8b, 0x9f, 0x8d, 0x93, 0xef, 0x73, 0x28, + 0x4a, 0xa8, 0x20, 0x68, 0xd7, 0x1e, 0xab, 0x87, 0xf1, 0xf0, 0xb7, 0x98, 0x36, 0x7c, 0xcd, 0xeb, + 0x8b, 0xa9, 0xe3, 0xf3, 0xa1, 0x7a, 0xf1, 0xc8, 0xc1, 0x3d, 0x2a, 0x20, 0x62, 0x80, 0x42, 0x6f, + 0x73, 0xbd, 0x67, 0xae, 0xe4, 0x3d, 0x45, 0x27, 0x78, 0x22, 0x92, 0x06, 0x83, 0x06, 0x3e, 0xa3, + 0x39, 0xf1, 0x7c, 0x75, 0xca, 0x1b, 0xbf, 0x9b, 0x81, 0x86, 0xdc, 0x5d, 0x51, 0x9e, 0xae, 0x36, + 0x15, 0xae, 0x0b, 0xdc, 0x78, 0xfe, 0xfb, 0x45, 0x06, 0xd4, 0xd0, 0x5a, 0x14, 0x1d, 0xf9, 0x64, + 0xed, 0xaa, 0x08, 0xe0, 0xae, 0x3c, 0xf6, 0x5f, 0x85, 0x8a, 0x0a, 0x1a, 0x1f, 0x3b, 0x23, 0xf5, + 0x58, 0x3e, 0x45, 0x8d, 0x1f, 0x38, 0x23, 0x25, 0x31, 0xf8, 0xb6, 0xbc, 0x00, 0x9d, 0x41, 0x89, + 0xc1, 0xb4, 0x43, 0x6e, 0xfc, 0xab, 0x0c, 0x2c, 0x69, 0x43, 0x91, 0xfb, 0xf6, 0xfb, 0x50, 0x8d, + 0xde, 0xaf, 0xe5, 0x91, 0xa8, 0xba, 0x9e, 0x64, 0x34, 0x71, 0xb1, 0xca, 0x20, 0x82, 0x04, 0xa2, + 0x33, 0x43, 0xfb, 0x8a, 0x22, 0x9b, 0xa7, 0x63, 0xa5, 0x0d, 0x0e, 0xed, 0xab, 0x5d, 0xce, 0x7b, + 0xd3, 0xb1, 0xd0, 0xf5, 0x9f, 0x71, 0xfe, 0x34, 0x42, 0x20, 0xf6, 0x09, 0x02, 0x26, 0x31, 0x0c, + 0xa8, 0x8d, 0x3d, 0x37, 0x3c, 0x8f, 0x50, 0xa4, 0x98, 0x8e, 0x40, 0xc2, 0x31, 0xfe, 0x30, 0x0b, + 0xcb, 0x64, 0x93, 0x94, 0xb6, 0x60, 0xc9, 0xba, 0x9a, 0xb0, 0x40, 0xe6, 0x59, 0x62, 0x5e, 0x7b, + 0x37, 0x4c, 0x99, 0x66, 0xdf, 0x79, 0x49, 0x3b, 0xaa, 0xba, 0x63, 0x7d, 0xcd, 0xf4, 0xe7, 0xe6, + 0xa7, 0xff, 0xfa, 0xe9, 0x4d, 0xf3, 0x0c, 0x17, 0xd2, 0x3c, 0xc3, 0x2f, 0xe3, 0x8f, 0x9d, 0xbb, + 0x0d, 0x5c, 0x94, 0x38, 0xda, 0x6d, 0xe0, 0xc7, 0xb0, 0x9e, 0xc0, 0x41, 0x6e, 0xed, 0x9c, 0x3a, + 0x5c, 0xbd, 0x58, 0xb3, 0xa2, 0x61, 0xf7, 0x54, 0xde, 0x56, 0x11, 0x0a, 0xc1, 0xc0, 0x9b, 0x70, + 0x63, 0x0d, 0x56, 0x92, 0xb3, 0x2a, 0x8f, 0x89, 0xdf, 0xca, 0x40, 0x53, 0xc6, 0xf1, 0x38, 0xee, + 0xd9, 0x9e, 0x13, 0x84, 0x9e, 0x1f, 0xbd, 0xf3, 0x7a, 0x1b, 0x80, 0x1e, 0xee, 0x47, 0xe5, 0x5b, + 0xbe, 0xd1, 0x82, 0x10, 0x54, 0xbd, 0x6f, 0x42, 0x89, 0xbb, 0x43, 0xca, 0x24, 0x6a, 0x28, 0x72, + 0x77, 0xa8, 0x14, 0xf7, 0xb9, 0xa3, 0xb4, 0x96, 0x14, 0x12, 0xe4, 0x8b, 0x08, 0x62, 0x76, 0xf8, + 0x05, 0x1e, 0xe9, 0xf9, 0xe8, 0x45, 0x84, 0x03, 0xfb, 0x12, 0xa3, 0x62, 0x03, 0xe3, 0x6f, 0x67, + 0x61, 0x31, 0xee, 0x1f, 0xbd, 0xb7, 0xf2, 0xfc, 0x97, 0x63, 0xee, 0x4a, 0x72, 0x70, 0x84, 0xc2, + 0xa3, 0x59, 0x6a, 0x4b, 0xb4, 0x39, 0x3b, 0x2e, 0x33, 0xa0, 0xa2, 0x30, 0xbc, 0x69, 0xa8, 0x3d, + 0xa1, 0x58, 0x26, 0x94, 0xc3, 0x69, 0x28, 0x34, 0x54, 0xa1, 0xaa, 0x3b, 0xae, 0xd4, 0x11, 0x0b, + 0xf6, 0x38, 0xec, 0xe0, 0xd7, 0x21, 0x04, 0x58, 0x14, 0xa3, 0x85, 0x14, 0x58, 0x02, 0xbf, 0x41, + 0x0a, 0x0b, 0xad, 0x1c, 0x2a, 0x2b, 0xba, 0x34, 0x4f, 0x0f, 0x5a, 0x47, 0xd2, 0xfc, 0xab, 0x50, + 0xa1, 0xca, 0xe3, 0xcb, 0xdf, 0x79, 0xb3, 0x8c, 0x2d, 0x60, 0xbe, 0xb4, 0x9a, 0x79, 0xd3, 0x84, + 0xad, 0x00, 0xa8, 0x29, 0x0c, 0x93, 0xf9, 0x6b, 0x19, 0xb8, 0x99, 0xb2, 0x6c, 0x72, 0x97, 0x6f, + 0xc3, 0xd2, 0x69, 0x94, 0xa9, 0x66, 0x97, 0xb6, 0xfa, 0x9a, 0x62, 0xab, 0xc9, 0x39, 0x35, 0x1b, + 0xa7, 0x49, 0x40, 0xac, 0xa5, 0xd2, 0x0a, 0x26, 0x9e, 0x16, 0x40, 0x91, 0x88, 0x96, 0x91, 0x14, + 0xc4, 0x23, 0xd8, 0x68, 0x5f, 0x0a, 0x8e, 0x11, 0x85, 0xd6, 0x0e, 0x9e, 0x4e, 0x95, 0xf7, 0x6a, + 0xc6, 0x22, 0x9f, 0x79, 0x29, 0x8b, 0xfc, 0x90, 0xee, 0x22, 0x47, 0x75, 0xfd, 0x34, 0x95, 0xe0, + 0x01, 0x2a, 0xca, 0x9c, 0x60, 0x15, 0xea, 0x8d, 0x01, 0x01, 0xa2, 0x4a, 0x8d, 0x00, 0x16, 0x0f, + 0xa6, 0xa3, 0xd0, 0xd9, 0x8e, 0x40, 0xec, 0x3b, 0xb2, 0x0c, 0xb6, 0xa3, 0x66, 0x2d, 0xb5, 0x21, + 0x88, 0x1a, 0xc2, 0xc9, 0x1a, 0x8b, 0x8a, 0xac, 0xf9, 0xf6, 0x16, 0xc7, 0xc9, 0x16, 0x8c, 0x9b, + 0xb0, 0x1e, 0xa7, 0x68, 0xda, 0xd4, 0x51, 0xf3, 0x0f, 0x32, 0x14, 0x82, 0x4f, 0x79, 0x3d, 0xd7, + 0x9e, 0x04, 0xe7, 0x5e, 0xc8, 0xda, 0xb0, 0x1c, 0x38, 0xee, 0xd9, 0x88, 0xeb, 0xd5, 0x07, 0x72, + 0x12, 0x56, 0x93, 0x7d, 0xa3, 0xa2, 0x81, 0xb9, 0x44, 0x25, 0xe2, 0xda, 0x02, 0xb6, 0x75, 0x5d, + 0x27, 0x63, 0xb2, 0x98, 0x99, 0x8d, 0xf9, 0xce, 0x77, 0xa0, 0x9e, 0x6c, 0x88, 0x7d, 0x28, 0xaf, + 0xf0, 0xc7, 0xbd, 0xca, 0xcd, 0xdc, 0x6f, 0x8e, 0x09, 0xa2, 0x12, 0xcf, 0x7d, 0x60, 0xfc, 0x8d, + 0x0c, 0x34, 0x4d, 0x2e, 0x28, 0x57, 0xeb, 0xa5, 0xa2, 0x99, 0xef, 0xcf, 0xd5, 0x7a, 0xfd, 0x58, + 0xd5, 0xcb, 0x00, 0xaa, 0x47, 0xef, 0x5d, 0xbb, 0x18, 0x7b, 0x37, 0xe6, 0x46, 0xb4, 0x55, 0x82, + 0x05, 0x42, 0x31, 0xd6, 0x61, 0x55, 0xf6, 0x47, 0xf5, 0x25, 0x76, 0xb7, 0x26, 0x5a, 0x4c, 0xb8, + 0x5b, 0x37, 0xa0, 0x49, 0x77, 0x75, 0xf5, 0x41, 0xc8, 0x82, 0x3b, 0xc0, 0x0e, 0xec, 0x81, 0xed, + 0x7b, 0x9e, 0x7b, 0xc4, 0x7d, 0x19, 0xd0, 0x8c, 0x12, 0x26, 0x7a, 0x23, 0x95, 0x28, 0x4c, 0x29, + 0xf5, 0x70, 0xac, 0xe7, 0xaa, 0xf8, 0x2d, 0x4a, 0x19, 0x26, 0x2c, 0x6f, 0xd9, 0x4f, 0xb9, 0xaa, + 0x49, 0x4d, 0xd1, 0x47, 0x50, 0x99, 0x44, 0x95, 0xaa, 0x79, 0x57, 0x4f, 0x8c, 0xcc, 0x37, 0x6b, + 0xea, 0xd8, 0xc6, 0x23, 0x58, 0x49, 0xd6, 0x29, 0x59, 0xc7, 0x06, 0x94, 0xc6, 0x12, 0x26, 0x7b, + 0x17, 0xa5, 0x8d, 0xdf, 0x28, 0x41, 0x51, 0x6a, 0xaa, 0x6c, 0x13, 0xf2, 0x03, 0x15, 0x43, 0x17, + 0x3f, 0x6d, 0x25, 0x73, 0xd5, 0xff, 0x6d, 0x8c, 0xa4, 0x13, 0x78, 0xec, 0x23, 0xa8, 0x27, 0xdd, + 0xc8, 0x33, 0x2f, 0x01, 0x24, 0xfd, 0xbf, 0xb5, 0xc1, 0x8c, 0xc3, 0xb0, 0x1c, 0x1f, 0x8e, 0x24, + 0x33, 0x94, 0xce, 0xb5, 0xd3, 0xd3, 0x73, 0x85, 0xbc, 0x1d, 0x9c, 0xdb, 0xd6, 0xa3, 0xc7, 0x1f, + 0xc8, 0xa7, 0x00, 0x2a, 0x08, 0xec, 0x9d, 0xdb, 0x8f, 0x1e, 0x7f, 0x30, 0x2b, 0x49, 0xcb, 0x87, + 0x00, 0x34, 0x49, 0x7a, 0x05, 0x0a, 0xf4, 0x42, 0x2a, 0x05, 0x43, 0x51, 0x82, 0x3d, 0x84, 0x15, + 0x65, 0xfc, 0x90, 0x61, 0xeb, 0xc4, 0x05, 0x4b, 0x74, 0x53, 0x50, 0xe6, 0xf5, 0x30, 0x8b, 0xcc, + 0x25, 0x6b, 0xb0, 0x70, 0x1e, 0x3f, 0x77, 0x5b, 0x33, 0x65, 0xca, 0xf8, 0xc3, 0x02, 0x54, 0xb4, + 0x49, 0x61, 0x55, 0x28, 0x99, 0xed, 0x5e, 0xdb, 0xfc, 0xb4, 0xbd, 0xd3, 0xb8, 0xc1, 0xee, 0xc1, + 0x1b, 0x9d, 0xee, 0xf6, 0xa1, 0x69, 0xb6, 0xb7, 0xfb, 0xd6, 0xa1, 0x69, 0xa9, 0x07, 0xd6, 0x8e, + 0x5a, 0x9f, 0x1f, 0xb4, 0xbb, 0x7d, 0x6b, 0xa7, 0xdd, 0x6f, 0x75, 0xf6, 0x7b, 0x8d, 0x0c, 0x7b, + 0x05, 0x9a, 0x31, 0xa6, 0xca, 0x6e, 0x1d, 0x1c, 0x1e, 0x77, 0xfb, 0x8d, 0x2c, 0xbb, 0x03, 0xb7, + 0x76, 0x3b, 0xdd, 0xd6, 0xbe, 0x15, 0xe3, 0x6c, 0xef, 0xf7, 0x3f, 0xb5, 0xda, 0xbf, 0x70, 0xd4, + 0x31, 0x3f, 0x6f, 0xe4, 0xd2, 0x10, 0xf6, 0xfa, 0xfb, 0xdb, 0xaa, 0x86, 0x3c, 0xbb, 0x09, 0xab, + 0x84, 0x40, 0x45, 0xac, 0xfe, 0xe1, 0xa1, 0xd5, 0x3b, 0x3c, 0xec, 0x36, 0x0a, 0x6c, 0x09, 0x6a, + 0x9d, 0xee, 0xa7, 0xad, 0xfd, 0xce, 0x8e, 0x65, 0xb6, 0x5b, 0xfb, 0x07, 0x8d, 0x05, 0xb6, 0x0c, + 0x8b, 0xb3, 0x78, 0x45, 0x51, 0x85, 0xc2, 0x3b, 0xec, 0x76, 0x0e, 0xbb, 0xd6, 0xa7, 0x6d, 0xb3, + 0xd7, 0x39, 0xec, 0x36, 0x4a, 0x6c, 0x0d, 0x58, 0x32, 0x6b, 0xef, 0xa0, 0xb5, 0xdd, 0x28, 0xb3, + 0x55, 0x58, 0x4a, 0xc2, 0x9f, 0xb4, 0x3f, 0x6f, 0x00, 0x6b, 0xc2, 0x0a, 0x75, 0xcc, 0xda, 0x6a, + 0xef, 0x1f, 0x7e, 0x66, 0x1d, 0x74, 0xba, 0x9d, 0x83, 0xe3, 0x83, 0x46, 0x05, 0xdf, 0x6d, 0x6c, + 0xb7, 0xad, 0x4e, 0xb7, 0x77, 0xbc, 0xbb, 0xdb, 0xd9, 0xee, 0xb4, 0xbb, 0xfd, 0x46, 0x95, 0x5a, + 0x4e, 0x1b, 0x78, 0x4d, 0x14, 0x90, 0x77, 0x5b, 0xac, 0x9d, 0x4e, 0xaf, 0xb5, 0xb5, 0xdf, 0xde, + 0x69, 0xd4, 0xd9, 0x6d, 0xb8, 0xd9, 0x6f, 0x1f, 0x1c, 0x1d, 0x9a, 0x2d, 0xf3, 0x73, 0x75, 0xf7, + 0xc5, 0xda, 0x6d, 0x75, 0xf6, 0x8f, 0xcd, 0x76, 0x63, 0x91, 0xbd, 0x06, 0xb7, 0xcd, 0xf6, 0x27, + 0xc7, 0x1d, 0xb3, 0xbd, 0x63, 0x75, 0x0f, 0x77, 0xda, 0xd6, 0x6e, 0xbb, 0xd5, 0x3f, 0x36, 0xdb, + 0xd6, 0x41, 0xa7, 0xd7, 0xeb, 0x74, 0x3f, 0x6e, 0x34, 0xd8, 0x1b, 0x70, 0x37, 0x42, 0x89, 0x2a, + 0x98, 0xc1, 0x5a, 0x12, 0xe3, 0x53, 0x4b, 0xda, 0x6d, 0xff, 0x42, 0xdf, 0x3a, 0x6a, 0xb7, 0xcd, + 0x06, 0x63, 0x1b, 0xb0, 0x16, 0x37, 0x4f, 0x0d, 0xc8, 0xb6, 0x97, 0x45, 0xde, 0x51, 0xdb, 0x3c, + 0x68, 0x75, 0xc5, 0x02, 0x27, 0xf2, 0x56, 0x44, 0xb7, 0xe3, 0xbc, 0xd9, 0x6e, 0xaf, 0x32, 0x06, + 0x75, 0x6d, 0x55, 0x76, 0x5b, 0x66, 0x63, 0x8d, 0x2d, 0x42, 0xe5, 0xe0, 0xe8, 0xc8, 0xea, 0x77, + 0x0e, 0xda, 0x87, 0xc7, 0xfd, 0xc6, 0x3a, 0x5b, 0x85, 0x46, 0xa7, 0xdb, 0x6f, 0x9b, 0x62, 0xad, + 0x55, 0xd1, 0xff, 0x51, 0x64, 0x2b, 0xb0, 0xa8, 0x7a, 0xaa, 0xa0, 0x7f, 0x52, 0x64, 0xeb, 0xc0, + 0x8e, 0xbb, 0x66, 0xbb, 0xb5, 0x23, 0x26, 0x2e, 0xca, 0xf8, 0x9f, 0x45, 0xe9, 0x52, 0xfa, 0xdd, + 0x5c, 0x74, 0x58, 0xc7, 0x31, 0x1a, 0xc9, 0xc7, 0xcf, 0xab, 0xda, 0xa3, 0xe5, 0x2f, 0xfa, 0x84, + 0x89, 0xa6, 0x5a, 0xe5, 0xe6, 0x54, 0xab, 0x39, 0xdd, 0xbd, 0xa6, 0xcb, 0x7e, 0xaf, 0x43, 0x6d, + 0x4c, 0x0f, 0xa1, 0xcb, 0x07, 0x8f, 0x41, 0x06, 0x2c, 0x11, 0x90, 0x5e, 0x3b, 0x9e, 0xfb, 0x86, + 0x47, 0x61, 0xfe, 0x1b, 0x1e, 0x69, 0xf2, 0xfd, 0x42, 0x9a, 0x7c, 0x7f, 0x1f, 0x96, 0x88, 0x35, + 0x39, 0xae, 0x33, 0x56, 0x5a, 0x33, 0x49, 0x81, 0x8b, 0xc8, 0xa2, 0x08, 0xae, 0xd4, 0x09, 0xa5, + 0x72, 0x48, 0x16, 0x52, 0x94, 0xda, 0x46, 0x42, 0xd3, 0x20, 0xce, 0x11, 0x69, 0x1a, 0x51, 0x0b, + 0xf6, 0x65, 0xdc, 0x42, 0x45, 0x6b, 0x81, 0xe0, 0xd8, 0xc2, 0x7d, 0x58, 0xe2, 0x97, 0xa1, 0x6f, + 0x5b, 0xde, 0xc4, 0xfe, 0x62, 0x8a, 0x3e, 0x6f, 0x1b, 0x75, 0xf8, 0xaa, 0xb9, 0x88, 0x19, 0x87, + 0x08, 0xdf, 0xb1, 0x43, 0xfb, 0xfe, 0x57, 0x50, 0xd1, 0x1e, 0xc9, 0x67, 0xeb, 0xb0, 0xfc, 0x59, + 0xa7, 0xdf, 0x6d, 0xf7, 0x7a, 0xd6, 0xd1, 0xf1, 0xd6, 0x93, 0xf6, 0xe7, 0xd6, 0x5e, 0xab, 0xb7, + 0xd7, 0xb8, 0x21, 0x36, 0x6d, 0xb7, 0xdd, 0xeb, 0xb7, 0x77, 0x12, 0xf0, 0x0c, 0x7b, 0x15, 0x36, + 0x8e, 0xbb, 0xc7, 0xbd, 0xf6, 0x8e, 0x95, 0x56, 0x2e, 0x2b, 0xa8, 0x54, 0xe6, 0xa7, 0x14, 0xcf, + 0xdd, 0xff, 0x15, 0xa8, 0x27, 0xaf, 0x81, 0x33, 0x80, 0x85, 0xfd, 0xf6, 0xc7, 0xad, 0xed, 0xcf, + 0xe9, 0x65, 0xd7, 0x5e, 0xbf, 0xd5, 0xef, 0x6c, 0x5b, 0xf2, 0x25, 0x57, 0xc1, 0x11, 0x32, 0xac, + 0x02, 0xc5, 0x56, 0x77, 0x7b, 0xef, 0xd0, 0xec, 0x35, 0xb2, 0xec, 0x15, 0x58, 0x57, 0xb4, 0xba, + 0x7d, 0x78, 0x70, 0xd0, 0xe9, 0x23, 0x33, 0xec, 0x7f, 0x7e, 0x24, 0x48, 0xf3, 0xbe, 0x0d, 0xe5, + 0xf8, 0x29, 0x5a, 0x64, 0x30, 0x9d, 0x7e, 0xa7, 0xd5, 0x8f, 0xb9, 0x6b, 0xe3, 0x86, 0xe0, 0x5f, + 0x31, 0x18, 0x5f, 0x92, 0x6d, 0x64, 0xe8, 0xa6, 0x9c, 0x02, 0x52, 0xeb, 0x8d, 0xac, 0xd8, 0x54, + 0x31, 0x74, 0xeb, 0xb0, 0x2f, 0x86, 0xf0, 0x3d, 0xa8, 0x27, 0xe3, 0x21, 0x93, 0x86, 0xed, 0x0d, + 0x58, 0xdb, 0x6a, 0xf7, 0x3f, 0x6b, 0xb7, 0xbb, 0x38, 0x3b, 0xdb, 0xed, 0x6e, 0xdf, 0x6c, 0xed, + 0x77, 0xfa, 0x9f, 0x37, 0x32, 0xf7, 0x3f, 0x82, 0xc6, 0xac, 0xf3, 0x31, 0xe1, 0xad, 0x7d, 0x9e, + 0x5b, 0xf7, 0xfe, 0x7f, 0xc9, 0xc0, 0x4a, 0x9a, 0xdd, 0x5d, 0xac, 0xa1, 0xdc, 0x9c, 0x82, 0x45, + 0xf7, 0x0e, 0xbb, 0x56, 0xf7, 0x10, 0x9f, 0x8e, 0xdc, 0x80, 0xb5, 0x99, 0x0c, 0xc5, 0x09, 0x32, + 0xec, 0x16, 0xac, 0xcf, 0x15, 0xb2, 0xcc, 0xc3, 0x63, 0x1c, 0x76, 0x13, 0x56, 0x66, 0x32, 0xdb, + 0xa6, 0x79, 0x68, 0x36, 0x72, 0xec, 0x3d, 0xb8, 0x37, 0x93, 0x33, 0x7f, 0x30, 0xa9, 0x73, 0x2b, + 0xcf, 0xde, 0x86, 0xd7, 0xe7, 0xb0, 0x63, 0xde, 0x6d, 0x6d, 0xb5, 0xf6, 0xc5, 0xf0, 0x1a, 0x85, + 0xfb, 0xff, 0x24, 0x07, 0x10, 0x5f, 0x38, 0x12, 0xed, 0xef, 0xb4, 0xfa, 0xad, 0xfd, 0x43, 0x41, + 0x5e, 0xe6, 0x61, 0x5f, 0xd4, 0x6e, 0xb6, 0x3f, 0x69, 0xdc, 0x48, 0xcd, 0x39, 0x3c, 0x12, 0x03, + 0x5a, 0x87, 0x65, 0x5a, 0xaa, 0x7d, 0x31, 0x8c, 0x4e, 0xf7, 0x63, 0x7a, 0x85, 0x14, 0x4f, 0xbf, + 0xe3, 0xa3, 0x5d, 0xf3, 0xb0, 0xdb, 0xb7, 0x7a, 0x7b, 0xc7, 0xfd, 0x1d, 0x7c, 0xc3, 0x74, 0xdb, + 0xec, 0x1c, 0x51, 0x9d, 0xf9, 0xe7, 0x21, 0x88, 0xaa, 0x0b, 0x62, 0x2f, 0x7c, 0x7c, 0xd8, 0xeb, + 0x75, 0x8e, 0xac, 0x4f, 0x8e, 0xdb, 0x66, 0xa7, 0xdd, 0xc3, 0x82, 0x0b, 0x29, 0x70, 0x81, 0x5f, + 0x14, 0x67, 0x66, 0x7f, 0xff, 0x53, 0x79, 0xa8, 0x09, 0xd4, 0x52, 0x12, 0x24, 0xb0, 0xca, 0x62, + 0x75, 0xc4, 0xa9, 0x90, 0x52, 0x33, 0x5c, 0x93, 0x27, 0xca, 0x55, 0xc4, 0x79, 0x37, 0xb7, 0x49, + 0xb0, 0x58, 0x35, 0x3d, 0x4b, 0x94, 0xc2, 0xa3, 0x30, 0x12, 0x1c, 0x76, 0x76, 0x4c, 0x2c, 0x50, + 0x9f, 0x83, 0x0a, 0xdc, 0x45, 0x41, 0x84, 0xe2, 0xd8, 0x10, 0x28, 0x0d, 0x95, 0x10, 0x39, 0x4b, + 0x8f, 0xfe, 0xe0, 0x1d, 0x28, 0x47, 0x81, 0xc7, 0xec, 0xd7, 0xa0, 0x96, 0xb8, 0x09, 0xca, 0x94, + 0x59, 0x30, 0xed, 0xe2, 0xe8, 0xc6, 0x2b, 0xe9, 0x99, 0x52, 0x66, 0x7e, 0xf5, 0x2f, 0xfc, 0xc1, + 0x7f, 0xff, 0x5b, 0xd9, 0x26, 0x5b, 0x7b, 0x70, 0xf1, 0xfe, 0x03, 0x79, 0xd3, 0xf2, 0x01, 0xde, + 0xdc, 0xa6, 0x97, 0x1b, 0x9f, 0x6a, 0x1a, 0x08, 0x35, 0xf6, 0xca, 0xac, 0x56, 0x90, 0x68, 0xed, + 0xf6, 0x35, 0xb9, 0xb2, 0xb9, 0x57, 0xb0, 0xb9, 0x35, 0xb6, 0xa2, 0x37, 0xa7, 0xe2, 0x55, 0x19, + 0xc7, 0xe7, 0x54, 0xf5, 0x8f, 0x1a, 0xb2, 0xdb, 0xf1, 0xdb, 0x96, 0x29, 0x1f, 0x3b, 0xdc, 0xb8, + 0x39, 0xff, 0xf9, 0x41, 0xf9, 0xbd, 0x42, 0xa3, 0x89, 0x4d, 0x31, 0xd6, 0x10, 0x4d, 0xe9, 0x5f, + 0x24, 0x64, 0x27, 0x50, 0xd1, 0xbe, 0xe2, 0xc3, 0x6e, 0x5e, 0xfb, 0xc5, 0xa1, 0x8d, 0x8d, 0xb4, + 0xac, 0xb4, 0xa1, 0xe8, 0xf5, 0x3f, 0x38, 0xe5, 0x9c, 0xfd, 0x22, 0x94, 0xa3, 0xef, 0xbd, 0xb0, + 0x75, 0xed, 0x5b, 0x3d, 0xfa, 0x57, 0x6b, 0x36, 0x9a, 0xf3, 0x19, 0x4a, 0x09, 0xc2, 0xda, 0x57, + 0x8d, 0xb9, 0xde, 0x7f, 0x3f, 0x73, 0x9f, 0x7d, 0x06, 0x15, 0xed, 0x9b, 0x2e, 0xd1, 0x00, 0xe6, + 0xbf, 0x1b, 0x13, 0x0d, 0x20, 0xe5, 0x13, 0x30, 0xc6, 0x12, 0x36, 0x51, 0x61, 0x65, 0xd1, 0x04, + 0x7e, 0xf2, 0x85, 0xed, 0xc3, 0xaa, 0xd4, 0xb6, 0x4e, 0xf8, 0xd7, 0x59, 0x86, 0x94, 0xaf, 0x40, + 0x3e, 0xcc, 0xb0, 0x8f, 0xa0, 0xa4, 0x3e, 0xe8, 0xc3, 0xd6, 0xd2, 0x3f, 0x57, 0xb4, 0xb1, 0x3e, + 0x07, 0x97, 0xaa, 0xd1, 0xe7, 0x00, 0xf1, 0x07, 0x64, 0x98, 0x9a, 0xa8, 0xb9, 0x0f, 0xd2, 0x44, + 0x14, 0x30, 0xff, 0xb5, 0x19, 0x63, 0x0d, 0x07, 0xd8, 0x60, 0x75, 0x31, 0x40, 0x97, 0x3f, 0x53, + 0x6f, 0x5e, 0xff, 0x2a, 0x54, 0xb4, 0x6f, 0xc8, 0x44, 0xd3, 0x37, 0xff, 0xfd, 0x99, 0x68, 0xfa, + 0x52, 0x3e, 0x39, 0x63, 0x6c, 0x60, 0xed, 0x2b, 0xc6, 0xa2, 0xa8, 0x5d, 0x88, 0x5b, 0x52, 0xec, + 0x11, 0x0b, 0x74, 0x0e, 0xb5, 0xc4, 0x87, 0x62, 0xa2, 0x1d, 0x9a, 0xf6, 0x19, 0x9a, 0x68, 0x87, + 0xa6, 0x7e, 0x5b, 0x46, 0xd1, 0x99, 0xb1, 0x24, 0xda, 0xa1, 0x57, 0xad, 0xb4, 0x96, 0x7e, 0x0c, + 0x15, 0xed, 0xa3, 0x2f, 0xd1, 0x58, 0xe6, 0xbf, 0x2f, 0x13, 0x8d, 0x25, 0xed, 0x1b, 0x31, 0x2b, + 0xd8, 0x46, 0xdd, 0x40, 0x52, 0xc0, 0x47, 0x79, 0x45, 0xdd, 0xbf, 0x06, 0xf5, 0xe4, 0x77, 0x60, + 0xa2, 0xbd, 0x9f, 0xfa, 0x41, 0x99, 0x68, 0xef, 0x5f, 0xf3, 0xf1, 0x18, 0x49, 0xd2, 0xf7, 0x97, + 0xa3, 0x46, 0x1e, 0x7c, 0x29, 0xaf, 0x50, 0x7d, 0xc5, 0x3e, 0x11, 0x0c, 0x4e, 0x3e, 0x1a, 0xcd, + 0xd6, 0x35, 0xaa, 0xd5, 0x5f, 0x9f, 0x8e, 0xf6, 0xcb, 0xdc, 0xfb, 0xd2, 0x49, 0x62, 0xc6, 0xca, + 0xd9, 0xc7, 0xb0, 0x1c, 0x11, 0x73, 0xf4, 0x0a, 0x74, 0x10, 0x8d, 0x21, 0xf5, 0xad, 0xe9, 0x8d, + 0xc6, 0x6c, 0xee, 0xc3, 0x0c, 0x3b, 0x80, 0xa2, 0x7c, 0x5a, 0x97, 0xad, 0xce, 0x3e, 0xb5, 0x4b, + 0xfd, 0x5a, 0x4b, 0x7f, 0x81, 0xd7, 0x58, 0xc6, 0x5e, 0xd5, 0x58, 0x45, 0xf4, 0xea, 0x8c, 0x87, + 0x8e, 0xa8, 0xc3, 0x85, 0xc5, 0xd9, 0x27, 0x97, 0x6f, 0x5f, 0xf7, 0x44, 0x05, 0x55, 0xff, 0xea, + 0xf3, 0x5f, 0xb0, 0x48, 0xb2, 0x22, 0xc5, 0x4d, 0x1f, 0xc8, 0x88, 0x1d, 0xf6, 0xcb, 0x50, 0xd5, + 0xbf, 0x1d, 0xc1, 0x74, 0x9e, 0x30, 0xdb, 0xd2, 0xad, 0xd4, 0xbc, 0x24, 0x95, 0xb0, 0xaa, 0xde, + 0x0c, 0xfb, 0x14, 0xd6, 0xa2, 0x69, 0xd6, 0xdf, 0x58, 0x08, 0xd8, 0x9d, 0x94, 0x97, 0x17, 0x12, + 0x93, 0x7d, 0xf3, 0xda, 0xa7, 0x19, 0x1e, 0x66, 0x04, 0xf5, 0x25, 0xdf, 0xc9, 0x8f, 0x4f, 0x9e, + 0xb4, 0xcf, 0x03, 0xc4, 0x27, 0x4f, 0xea, 0xe3, 0xfa, 0x8a, 0xfa, 0xd8, 0x72, 0x62, 0x8e, 0x28, + 0x96, 0x99, 0xfd, 0x18, 0x16, 0xb5, 0x07, 0x24, 0x7a, 0x57, 0xee, 0x20, 0xda, 0x49, 0xf3, 0x8f, + 0xa9, 0x6e, 0xa4, 0xd9, 0x27, 0x8d, 0x75, 0xac, 0x7f, 0xc9, 0x48, 0x4c, 0x8e, 0xd8, 0x45, 0xdb, + 0x50, 0xd1, 0x1f, 0xa7, 0x78, 0x4e, 0xbd, 0xeb, 0x5a, 0x96, 0xfe, 0x6e, 0xe7, 0xc3, 0x0c, 0xdb, + 0x87, 0xc6, 0xec, 0x53, 0x72, 0x11, 0x4f, 0x49, 0x7b, 0x7e, 0x6f, 0x63, 0x26, 0x33, 0xf1, 0x00, + 0x1d, 0x3b, 0xa2, 0xdb, 0x30, 0xd1, 0x27, 0x13, 0x3d, 0x7f, 0xf6, 0x54, 0x4f, 0x7e, 0x4a, 0x31, + 0xaa, 0x2d, 0xed, 0x23, 0x9a, 0xf7, 0x32, 0x0f, 0x33, 0xec, 0x37, 0x33, 0x50, 0x4d, 0x3c, 0xa5, + 0x94, 0xb8, 0x6f, 0x30, 0x33, 0xce, 0xa6, 0x9e, 0xa7, 0x0f, 0xd4, 0x30, 0x71, 0x12, 0xf7, 0xef, + 0xff, 0x28, 0xb1, 0x48, 0x5f, 0x26, 0xdc, 0x7b, 0x9b, 0xb3, 0xdf, 0x54, 0xfc, 0x6a, 0x16, 0x41, + 0x7f, 0x9e, 0xf7, 0xab, 0x87, 0x19, 0xf6, 0xcf, 0x33, 0x50, 0x4f, 0xfa, 0xed, 0xa3, 0xe1, 0xa6, + 0x46, 0x08, 0x44, 0xa4, 0x74, 0x8d, 0xb3, 0xff, 0xc7, 0xd8, 0xcb, 0xfe, 0x7d, 0x33, 0xd1, 0x4b, + 0xf9, 0x85, 0x87, 0x3f, 0x5b, 0x6f, 0xd9, 0xcf, 0xd3, 0x27, 0x8c, 0x55, 0xfc, 0x17, 0x9b, 0xff, + 0xe4, 0x6d, 0x44, 0x7e, 0xfa, 0x07, 0x62, 0x8d, 0xdc, 0x5f, 0xcd, 0x66, 0x70, 0x25, 0x7e, 0x95, + 0x3e, 0x20, 0xa8, 0x42, 0x80, 0x04, 0x29, 0xbf, 0x74, 0x25, 0x6f, 0xe0, 0xc0, 0x5e, 0x35, 0x6e, + 0x26, 0x06, 0x36, 0x2b, 0x7d, 0xec, 0x52, 0x17, 0xe5, 0x47, 0x5e, 0xe3, 0xe3, 0x73, 0xee, 0xc3, + 0xaf, 0x2f, 0xe8, 0xe9, 0x98, 0x7a, 0x2a, 0xcb, 0x24, 0x36, 0xdd, 0xcb, 0xd6, 0x75, 0x1f, 0x3b, + 0xfc, 0x86, 0x71, 0xe7, 0xda, 0x0e, 0x3f, 0x40, 0x6f, 0xbc, 0xe8, 0xf6, 0x11, 0x40, 0x1c, 0xa9, + 0xc9, 0x66, 0xe2, 0x05, 0x23, 0x56, 0x34, 0x1f, 0xcc, 0x99, 0xdc, 0xd9, 0x2a, 0xac, 0x50, 0xd4, + 0xf8, 0x8b, 0xc4, 0x58, 0xa3, 0x48, 0x46, 0x5d, 0x0e, 0x4b, 0x06, 0x55, 0x26, 0xe4, 0xb0, 0xd9, + 0xfa, 0x13, 0x6c, 0x35, 0x0a, 0x5b, 0x3c, 0x86, 0xda, 0xbe, 0xe7, 0x3d, 0x9d, 0x4e, 0xa2, 0xdb, + 0x01, 0xc9, 0xe0, 0x9b, 0x3d, 0x3b, 0x38, 0xdf, 0x98, 0x19, 0x85, 0x71, 0x17, 0xab, 0xda, 0x60, + 0x4d, 0xad, 0xaa, 0x07, 0x5f, 0xc6, 0xe1, 0xa1, 0x5f, 0x31, 0x1b, 0x96, 0x22, 0x6e, 0x1d, 0x87, + 0x60, 0x26, 0xab, 0x49, 0xf0, 0xe8, 0xd9, 0x26, 0x12, 0x0a, 0x83, 0xea, 0xed, 0x83, 0x40, 0xd5, + 0xf9, 0x30, 0xc3, 0x8e, 0xa0, 0xba, 0xc3, 0x07, 0xf8, 0xbc, 0x04, 0x06, 0x9a, 0x2c, 0x27, 0x82, + 0x16, 0x28, 0x42, 0x65, 0xa3, 0x96, 0x00, 0x26, 0x4f, 0xb0, 0x89, 0x7d, 0xe5, 0xf3, 0x2f, 0x1e, + 0x7c, 0x29, 0x43, 0x58, 0xbe, 0x52, 0x27, 0x58, 0x1c, 0xce, 0xa4, 0x8b, 0x01, 0xc9, 0x98, 0xa0, + 0xc4, 0x09, 0x36, 0x17, 0x13, 0x94, 0x98, 0xea, 0x28, 0x78, 0x69, 0x04, 0x4b, 0x73, 0x61, 0x44, + 0xd1, 0xe1, 0x75, 0x5d, 0xf0, 0xd1, 0xc6, 0xdd, 0xeb, 0x11, 0x92, 0xad, 0xdd, 0x4f, 0xb6, 0xd6, + 0x83, 0x1a, 0xbd, 0xc2, 0x7b, 0xc2, 0xe9, 0xa2, 0xe9, 0xcc, 0x2b, 0x4d, 0xfa, 0x2d, 0xd6, 0xd9, + 0xa3, 0x06, 0xf3, 0x92, 0xb2, 0x0e, 0x5e, 0x35, 0x64, 0xa7, 0xf8, 0x6d, 0x0a, 0xed, 0x66, 0x67, + 0x44, 0x8c, 0xf3, 0xb7, 0x4d, 0x23, 0x62, 0x4c, 0xb9, 0x08, 0x6a, 0xdc, 0xc6, 0xba, 0xd7, 0xd9, + 0x6a, 0x54, 0xf7, 0x03, 0xd7, 0x1b, 0xf2, 0xb1, 0xac, 0xf5, 0x17, 0xa1, 0xf2, 0x31, 0x0f, 0xd5, + 0x55, 0xca, 0x48, 0xaa, 0x9f, 0xb9, 0x5b, 0xb9, 0x91, 0x72, 0x01, 0x36, 0x49, 0x9b, 0x54, 0x33, + 0x1f, 0x9e, 0x71, 0x62, 0x87, 0x96, 0x33, 0xfc, 0x8a, 0xfd, 0x02, 0x56, 0x1e, 0x3d, 0x1c, 0xb0, + 0xa6, 0x75, 0x53, 0xaf, 0x7c, 0x71, 0x06, 0x9e, 0x56, 0xb3, 0xe8, 0xb3, 0x26, 0x5d, 0xba, 0x50, + 0xd1, 0x1e, 0x18, 0x89, 0xe6, 0x66, 0xfe, 0x41, 0x99, 0x68, 0x6e, 0x52, 0xde, 0x23, 0x31, 0xee, + 0x61, 0x3b, 0x06, 0xbb, 0x1b, 0xb7, 0x43, 0x6f, 0x90, 0xc4, 0x2d, 0x3d, 0xf8, 0xd2, 0x1e, 0x87, + 0x5f, 0xb1, 0xcf, 0x68, 0x39, 0xb4, 0xab, 0xa2, 0xb1, 0x9a, 0x32, 0x7b, 0xab, 0x34, 0x9a, 0x2c, + 0x2d, 0x2b, 0xa9, 0xba, 0x50, 0x53, 0x28, 0x3b, 0x3e, 0x06, 0xe8, 0x85, 0xde, 0x64, 0xc7, 0xe6, + 0x63, 0xcf, 0x8d, 0x19, 0x7b, 0x7c, 0x79, 0x31, 0xe6, 0x93, 0xda, 0x0d, 0x46, 0xf6, 0x99, 0xa6, + 0xd7, 0x25, 0x2e, 0x39, 0x2b, 0x22, 0xbe, 0xf6, 0x7e, 0x63, 0x34, 0x21, 0x29, 0x77, 0x1c, 0x1f, + 0x66, 0x58, 0x0b, 0x20, 0x8e, 0x57, 0x8b, 0xb4, 0xb4, 0xb9, 0x50, 0xb8, 0x88, 0xbd, 0xa6, 0x04, + 0xb7, 0x1d, 0x41, 0x39, 0x0e, 0xf4, 0x59, 0x8f, 0xdf, 0x4b, 0x4a, 0x84, 0x05, 0x45, 0x32, 0xc3, + 0x5c, 0x90, 0x8d, 0xd1, 0xc0, 0xa9, 0x02, 0x56, 0x12, 0x53, 0x75, 0xca, 0x79, 0xc0, 0x1c, 0x58, + 0xa6, 0x0e, 0x46, 0x02, 0x1a, 0x5e, 0xba, 0x8b, 0xbe, 0x08, 0x33, 0x1f, 0xef, 0x12, 0x71, 0x8d, + 0xd4, 0xa8, 0x8d, 0x9b, 0xd8, 0xc2, 0xb2, 0x51, 0x57, 0xa7, 0x0c, 0x5d, 0xf8, 0x13, 0x47, 0xc0, + 0x18, 0x96, 0xe6, 0x02, 0x03, 0x22, 0xd6, 0x71, 0x5d, 0xa4, 0x47, 0xc4, 0x3a, 0xae, 0x8d, 0x29, + 0x30, 0x56, 0xb1, 0xc9, 0x45, 0x03, 0x50, 0xb9, 0x7c, 0xe6, 0x84, 0x83, 0x73, 0xd1, 0xdc, 0x6f, + 0x67, 0x60, 0x39, 0xc5, 0xf5, 0xcf, 0x5e, 0x53, 0x76, 0x8a, 0x6b, 0xc3, 0x02, 0x36, 0x52, 0x5d, + 0xc4, 0x46, 0x0f, 0xdb, 0x39, 0x60, 0x4f, 0x12, 0x07, 0x28, 0x79, 0x68, 0xe5, 0xce, 0x7c, 0xae, + 0x18, 0x93, 0x2a, 0xc3, 0x7c, 0x01, 0xeb, 0xd4, 0x91, 0xd6, 0x68, 0x34, 0xe3, 0xbe, 0x7e, 0x55, + 0xeb, 0x45, 0x8a, 0x4b, 0x3e, 0xa1, 0x11, 0x24, 0xdd, 0xf2, 0xd7, 0x08, 0xf0, 0xd4, 0x55, 0x36, + 0x85, 0xc6, 0xac, 0x5b, 0x98, 0x5d, 0x5f, 0xd7, 0xc6, 0x9d, 0x84, 0xc6, 0x9d, 0xe2, 0x4a, 0x7e, + 0x13, 0x1b, 0xbb, 0x63, 0x6c, 0xa4, 0xcd, 0x0b, 0x29, 0xe1, 0x62, 0x3d, 0xfe, 0x7c, 0xe4, 0xc3, + 0x9e, 0x19, 0xe7, 0x9d, 0xe8, 0x89, 0xfb, 0x74, 0x8f, 0x7b, 0xa4, 0xf3, 0xa7, 0xbb, 0xc0, 0xdf, + 0xc2, 0xe6, 0xef, 0x1a, 0xb7, 0xd2, 0x9a, 0xf7, 0xa9, 0x08, 0x69, 0xff, 0xeb, 0xb3, 0xfb, 0x5a, + 0xf5, 0xe0, 0x6e, 0xda, 0x7a, 0x5f, 0xab, 0x7d, 0xcd, 0xcc, 0xf5, 0x0d, 0x14, 0x24, 0xab, 0xba, + 0xcf, 0x3a, 0xda, 0x3e, 0x29, 0xce, 0xf1, 0x68, 0xfb, 0xa4, 0x39, 0xb9, 0x93, 0xf2, 0x93, 0x72, + 0x6f, 0x7f, 0x3f, 0x73, 0x7f, 0xeb, 0xed, 0x1f, 0xbf, 0x79, 0xe6, 0x84, 0xe7, 0xd3, 0x93, 0xcd, + 0x81, 0x37, 0x7e, 0x30, 0x52, 0xf6, 0x4d, 0x79, 0x33, 0xfd, 0xc1, 0xc8, 0x1d, 0x3e, 0xc0, 0x6a, + 0x4f, 0x16, 0x26, 0xbe, 0x17, 0x7a, 0xdf, 0xfe, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x06, 0xce, + 0x0f, 0x99, 0x57, 0x87, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/lnrpc/rpc.proto b/lnrpc/rpc.proto index d1928beec..ec17c2399 100644 --- a/lnrpc/rpc.proto +++ b/lnrpc/rpc.proto @@ -708,6 +708,9 @@ message Transaction { // The raw transaction hex. string raw_tx_hex = 9; + + // A label that was optionally set on transaction broadcast. + string label = 10; } message GetTransactionsRequest { /* @@ -1002,6 +1005,9 @@ message SendManyRequest { // A manual fee rate set in sat/byte that should be used when crafting the // transaction. int64 sat_per_byte = 5; + + // An optional label for the transaction, limited to 500 characters. + string label = 6; } message SendManyResponse { // The id of the transaction @@ -1029,6 +1035,9 @@ message SendCoinsRequest { address. */ bool send_all = 6; + + // An optional label for the transaction, limited to 500 characters. + string label = 7; } message SendCoinsResponse { // The transaction ID of the transaction diff --git a/lnrpc/rpc.swagger.json b/lnrpc/rpc.swagger.json index ed0e5bc46..b9e421e89 100644 --- a/lnrpc/rpc.swagger.json +++ b/lnrpc/rpc.swagger.json @@ -4230,6 +4230,10 @@ "type": "boolean", "format": "boolean", "description": "If set, then the amount field will be ignored, and lnd will attempt to\nsend all the coins under control of the internal wallet to the specified\naddress." + }, + "label": { + "type": "string", + "description": "An optional label for the transaction, limited to 500 characters." } } }, @@ -4451,6 +4455,10 @@ "raw_tx_hex": { "type": "string", "description": "The raw transaction hex." + }, + "label": { + "type": "string", + "description": "A label that was optionally set on transaction broadcast." } } }, diff --git a/lnrpc/rpc_utils.go b/lnrpc/rpc_utils.go index 764c888bb..33b557dac 100644 --- a/lnrpc/rpc_utils.go +++ b/lnrpc/rpc_utils.go @@ -36,6 +36,7 @@ func RPCTransactionDetails(txns []*lnwallet.TransactionDetail) *TransactionDetai TotalFees: tx.TotalFees, DestAddresses: destAddresses, RawTxHex: hex.EncodeToString(tx.RawTx), + Label: tx.Label, } } diff --git a/lnrpc/walletrpc/walletkit.pb.go b/lnrpc/walletrpc/walletkit.pb.go index 5c145b81d..94487a870 100644 --- a/lnrpc/walletrpc/walletkit.pb.go +++ b/lnrpc/walletrpc/walletkit.pb.go @@ -261,7 +261,10 @@ func (m *AddrResponse) GetAddr() string { type Transaction struct { // //The raw serialized transaction. - TxHex []byte `protobuf:"bytes,1,opt,name=tx_hex,json=txHex,proto3" json:"tx_hex,omitempty"` + TxHex []byte `protobuf:"bytes,1,opt,name=tx_hex,json=txHex,proto3" json:"tx_hex,omitempty"` + // + //An optional label to save with the transaction. Limited to 500 characters. + Label string `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -299,6 +302,13 @@ func (m *Transaction) GetTxHex() []byte { return nil } +func (m *Transaction) GetLabel() string { + if m != nil { + return m.Label + } + return "" +} + type PublishResponse struct { // //If blank, then no error occurred and the transaction was successfully @@ -351,10 +361,12 @@ type SendOutputsRequest struct { SatPerKw int64 `protobuf:"varint,1,opt,name=sat_per_kw,json=satPerKw,proto3" json:"sat_per_kw,omitempty"` // //A slice of the outputs that should be created in the transaction produced. - Outputs []*signrpc.TxOut `protobuf:"bytes,2,rep,name=outputs,proto3" json:"outputs,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Outputs []*signrpc.TxOut `protobuf:"bytes,2,rep,name=outputs,proto3" json:"outputs,omitempty"` + // An optional label for the transaction, limited to 500 characters. + Label string `protobuf:"bytes,3,opt,name=label,proto3" json:"label,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *SendOutputsRequest) Reset() { *m = SendOutputsRequest{} } @@ -396,6 +408,13 @@ func (m *SendOutputsRequest) GetOutputs() []*signrpc.TxOut { return nil } +func (m *SendOutputsRequest) GetLabel() string { + if m != nil { + return m.Label + } + return "" +} + type SendOutputsResponse struct { // //The serialized transaction sent out on the network. @@ -1002,81 +1021,82 @@ func init() { func init() { proto.RegisterFile("walletrpc/walletkit.proto", fileDescriptor_6cc6942ac78249e5) } var fileDescriptor_6cc6942ac78249e5 = []byte{ - // 1178 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x56, 0x6d, 0x6f, 0xe2, 0x46, - 0x10, 0x3e, 0x42, 0x42, 0x60, 0x78, 0x09, 0x59, 0xf2, 0xe2, 0xe3, 0x72, 0x0d, 0x75, 0xdf, 0xa2, - 0xf6, 0x8e, 0xa8, 0x39, 0xb5, 0xea, 0xb5, 0x52, 0xd5, 0x04, 0x1c, 0x11, 0x41, 0x70, 0x6a, 0xfb, - 0x2e, 0xba, 0xaa, 0xd2, 0xca, 0xe0, 0x0d, 0xb1, 0x02, 0xb6, 0x6f, 0xbd, 0x1c, 0xf0, 0xad, 0x5f, - 0xfa, 0x17, 0x2a, 0xdd, 0xbf, 0xad, 0xbc, 0x7e, 0x61, 0x0d, 0xcd, 0x49, 0xfd, 0x14, 0x76, 0x9e, - 0x67, 0x9e, 0x9d, 0x9d, 0x19, 0xcf, 0x04, 0x9e, 0xce, 0xcc, 0xf1, 0x98, 0x30, 0xea, 0x0d, 0x4f, - 0xc3, 0x5f, 0x0f, 0x36, 0x6b, 0x7a, 0xd4, 0x65, 0x2e, 0x2a, 0x24, 0x50, 0xbd, 0x40, 0xbd, 0x61, - 0x68, 0xad, 0xef, 0xf9, 0xf6, 0xc8, 0x09, 0xe8, 0xc1, 0x5f, 0x42, 0x43, 0xab, 0xfc, 0x3b, 0xe4, - 0xba, 0x64, 0xa1, 0x91, 0xf7, 0xe8, 0x04, 0xaa, 0x0f, 0x64, 0x81, 0xef, 0x6c, 0x67, 0x44, 0x28, - 0xf6, 0xa8, 0xed, 0x30, 0x29, 0xd3, 0xc8, 0x9c, 0x6c, 0x69, 0x95, 0x07, 0xb2, 0xb8, 0xe4, 0xe6, - 0x9b, 0xc0, 0x8a, 0x9e, 0x03, 0x70, 0xa6, 0x39, 0xb1, 0xc7, 0x0b, 0x69, 0x83, 0x73, 0x0a, 0x01, - 0x87, 0x1b, 0xe4, 0x32, 0x14, 0xcf, 0x2d, 0x8b, 0x6a, 0xe4, 0xfd, 0x94, 0xf8, 0x4c, 0x96, 0xa1, - 0x14, 0x1e, 0x7d, 0xcf, 0x75, 0x7c, 0x82, 0x10, 0x6c, 0x9a, 0x96, 0x45, 0xb9, 0x76, 0x41, 0xe3, - 0xbf, 0xe5, 0x2f, 0xa1, 0x68, 0x50, 0xd3, 0xf1, 0xcd, 0x21, 0xb3, 0x5d, 0x07, 0xed, 0x43, 0x8e, - 0xcd, 0xf1, 0x3d, 0x99, 0x73, 0x52, 0x49, 0xdb, 0x62, 0xf3, 0x0e, 0x99, 0xcb, 0x3f, 0xc2, 0xce, - 0xcd, 0x74, 0x30, 0xb6, 0xfd, 0xfb, 0x44, 0xec, 0x0b, 0x28, 0x7b, 0xa1, 0x09, 0x13, 0x4a, 0xdd, - 0x58, 0xb5, 0x14, 0x19, 0x95, 0xc0, 0x26, 0xff, 0x09, 0x48, 0x27, 0x8e, 0xa5, 0x4e, 0x99, 0x37, - 0x65, 0x7e, 0x14, 0x17, 0x3a, 0x02, 0xf0, 0x4d, 0x86, 0x3d, 0x42, 0xf1, 0xc3, 0x8c, 0xfb, 0x65, - 0xb5, 0xbc, 0x6f, 0xb2, 0x1b, 0x42, 0xbb, 0x33, 0x74, 0x02, 0xdb, 0x6e, 0xc8, 0x97, 0x36, 0x1a, - 0xd9, 0x93, 0xe2, 0x59, 0xa5, 0x19, 0xe5, 0xaf, 0x69, 0xcc, 0xd5, 0x29, 0xd3, 0x62, 0x58, 0x7e, - 0x01, 0xb5, 0x94, 0x7a, 0x14, 0xd9, 0x3e, 0xe4, 0xa8, 0x39, 0xc3, 0x2c, 0x79, 0x03, 0x35, 0x67, - 0xc6, 0x5c, 0xfe, 0x01, 0x90, 0xe2, 0x33, 0x7b, 0x62, 0x32, 0x72, 0x49, 0x48, 0x1c, 0xcb, 0x31, - 0x14, 0x87, 0xae, 0x73, 0x87, 0x99, 0x49, 0x47, 0x24, 0x4e, 0x3b, 0x04, 0x26, 0x83, 0x5b, 0xe4, - 0x57, 0x50, 0x4b, 0xb9, 0x45, 0x97, 0x7c, 0xf2, 0x0d, 0xf2, 0xc7, 0x2c, 0x94, 0x6e, 0x88, 0x63, - 0xd9, 0xce, 0x48, 0x9f, 0x11, 0xe2, 0xa1, 0xef, 0x20, 0x1f, 0x44, 0xed, 0xc6, 0xa5, 0x2d, 0x9e, - 0xed, 0x34, 0xc7, 0xfc, 0x4d, 0xea, 0x94, 0xdd, 0x04, 0x66, 0x2d, 0x21, 0xa0, 0xd7, 0x50, 0x9a, - 0xd9, 0xcc, 0x21, 0xbe, 0x8f, 0xd9, 0xc2, 0x23, 0xbc, 0xce, 0x95, 0xb3, 0x83, 0x66, 0xd2, 0x5c, - 0xcd, 0xdb, 0x10, 0x36, 0x16, 0x1e, 0xd1, 0x8a, 0xb3, 0xe5, 0x21, 0x68, 0x10, 0x73, 0xe2, 0x4e, - 0x1d, 0x86, 0x7d, 0x93, 0x49, 0xd9, 0x46, 0xe6, 0xa4, 0xac, 0x15, 0x42, 0x8b, 0x6e, 0x32, 0xd4, - 0x80, 0x52, 0x1c, 0xf5, 0x60, 0xc1, 0x88, 0xb4, 0xc9, 0x09, 0x10, 0xc6, 0x7d, 0xb1, 0x60, 0x04, - 0xbd, 0x04, 0x34, 0xa0, 0xae, 0x69, 0x0d, 0x4d, 0x9f, 0x61, 0x93, 0x31, 0x32, 0xf1, 0x98, 0x2f, - 0x6d, 0x71, 0xde, 0x6e, 0x82, 0x9c, 0x47, 0x00, 0x3a, 0x83, 0x7d, 0x87, 0xcc, 0x19, 0x5e, 0xfa, - 0xdc, 0x13, 0x7b, 0x74, 0xcf, 0xa4, 0x1c, 0xf7, 0xa8, 0x05, 0xe0, 0x45, 0x8c, 0x75, 0x38, 0x14, - 0xf8, 0xd0, 0x30, 0xfb, 0xc4, 0xc2, 0x62, 0xf2, 0xf3, 0xa1, 0x4f, 0x02, 0xb6, 0x92, 0x2a, 0xa0, - 0x57, 0x70, 0xb0, 0xf4, 0x49, 0x3d, 0xa1, 0xb0, 0xe2, 0xa4, 0x2f, 0xdf, 0xb2, 0x07, 0x5b, 0x77, - 0x2e, 0x1d, 0x12, 0x69, 0xbb, 0x91, 0x39, 0xc9, 0x6b, 0xe1, 0x41, 0x3e, 0x80, 0x3d, 0xb1, 0x34, - 0x71, 0x57, 0xca, 0xb7, 0xb0, 0xbf, 0x62, 0x8f, 0x4a, 0xfd, 0x2b, 0x54, 0xbc, 0x10, 0xc0, 0x3e, - 0x47, 0xa4, 0x0c, 0xef, 0xcb, 0x43, 0xa1, 0x20, 0xa2, 0xa7, 0x56, 0xf6, 0x44, 0x1d, 0xf9, 0x9f, - 0x0c, 0x54, 0x2e, 0xa6, 0x13, 0x4f, 0xe8, 0xba, 0xff, 0xd5, 0x0e, 0xc7, 0x50, 0x0c, 0x13, 0xc4, - 0x93, 0xc5, 0xbb, 0xa1, 0xac, 0x41, 0x68, 0x0a, 0x52, 0xb4, 0x56, 0xd5, 0xec, 0x5a, 0x55, 0x93, - 0x4c, 0x6c, 0x8a, 0x99, 0xd8, 0x85, 0x9d, 0x24, 0xae, 0xf0, 0xad, 0xf2, 0x4b, 0xd8, 0xed, 0xd9, - 0x3e, 0x4b, 0x65, 0x06, 0x49, 0xb0, 0xfd, 0x81, 0xd0, 0x81, 0xeb, 0x13, 0x1e, 0x6c, 0x5e, 0x8b, - 0x8f, 0xf2, 0x5f, 0x1b, 0x80, 0x44, 0x7e, 0x94, 0xb1, 0x1e, 0xd4, 0xd8, 0x72, 0xa8, 0x60, 0x8b, - 0x30, 0xd3, 0x1e, 0xfb, 0xd1, 0x4b, 0x9f, 0x46, 0x2f, 0x15, 0xc6, 0x4e, 0x3b, 0x24, 0x74, 0x9e, - 0x68, 0x88, 0xad, 0x59, 0xd1, 0x2d, 0xec, 0x88, 0x6a, 0xb6, 0xe5, 0xf3, 0x1c, 0x14, 0xcf, 0x5e, - 0x08, 0x05, 0x58, 0x8f, 0x42, 0xbc, 0xe0, 0xaa, 0x1d, 0x88, 0x57, 0x04, 0x99, 0x2b, 0xcb, 0xaf, - 0xbf, 0x86, 0x4a, 0x9a, 0x83, 0xbe, 0x59, 0xbf, 0x2a, 0xa8, 0x75, 0x61, 0xd5, 0xf5, 0x22, 0x0f, - 0xb9, 0xb0, 0x17, 0xbe, 0xfd, 0x98, 0x85, 0xa2, 0xf0, 0x39, 0xa2, 0x1a, 0xec, 0xbc, 0xe9, 0x77, - 0xfb, 0xea, 0x6d, 0x1f, 0xdf, 0x5e, 0x19, 0x7d, 0x45, 0xd7, 0xab, 0x4f, 0x90, 0x04, 0x7b, 0x2d, - 0xf5, 0xfa, 0xfa, 0xca, 0xb8, 0x56, 0xfa, 0x06, 0x36, 0xae, 0xae, 0x15, 0xdc, 0x53, 0x5b, 0xdd, - 0x6a, 0x06, 0x1d, 0x42, 0x4d, 0x40, 0xfa, 0x2a, 0x6e, 0x2b, 0xbd, 0xf3, 0x77, 0xd5, 0x0d, 0xb4, - 0x0f, 0xbb, 0x02, 0xa0, 0x29, 0x6f, 0xd5, 0xae, 0x52, 0xcd, 0x06, 0xfc, 0x8e, 0xd1, 0x6b, 0x61, - 0xf5, 0xf2, 0x52, 0xd1, 0x94, 0x76, 0x0c, 0x6c, 0x06, 0x57, 0x70, 0xe0, 0xbc, 0xd5, 0x52, 0x6e, - 0x8c, 0x25, 0xb2, 0x85, 0xbe, 0x82, 0xcf, 0x53, 0x2e, 0xc1, 0xf5, 0xea, 0x1b, 0x03, 0xeb, 0x4a, - 0x4b, 0xed, 0xb7, 0x71, 0x4f, 0x79, 0xab, 0xf4, 0xaa, 0x39, 0xf4, 0x35, 0xc8, 0x69, 0x01, 0xfd, - 0x4d, 0xab, 0xa5, 0xe8, 0x7a, 0x9a, 0xb7, 0x8d, 0x8e, 0xe1, 0xd9, 0x4a, 0x04, 0xd7, 0xaa, 0xa1, - 0xc4, 0xaa, 0xd5, 0x3c, 0x6a, 0xc0, 0xd1, 0x6a, 0x24, 0x9c, 0x11, 0xe9, 0x55, 0x0b, 0xe8, 0x08, - 0x24, 0xce, 0x10, 0x95, 0xe3, 0x78, 0x01, 0xed, 0x41, 0x35, 0xca, 0x1c, 0xee, 0x2a, 0xef, 0x70, - 0xe7, 0x5c, 0xef, 0x54, 0x8b, 0xe8, 0x19, 0x1c, 0xf6, 0x15, 0x3d, 0x90, 0x5b, 0x03, 0x4b, 0x2b, - 0xc9, 0x3a, 0xef, 0xb7, 0x3a, 0xaa, 0x56, 0x2d, 0x9f, 0xfd, 0xbd, 0x05, 0x85, 0x5b, 0xde, 0x22, - 0x5d, 0x9b, 0xa1, 0x9f, 0xa1, 0xdc, 0x26, 0xd4, 0xfe, 0x40, 0xfa, 0x64, 0xce, 0xba, 0x64, 0x81, - 0x76, 0x85, 0xfe, 0x09, 0x57, 0x71, 0xfd, 0x20, 0xd9, 0x35, 0x5d, 0xb2, 0x68, 0x13, 0x7f, 0x48, - 0x6d, 0x8f, 0xb9, 0x14, 0xfd, 0x04, 0x85, 0xd0, 0x37, 0xf0, 0xab, 0x89, 0xa4, 0x9e, 0x3b, 0x34, - 0x99, 0x4b, 0x1f, 0xf5, 0xfc, 0x05, 0xf2, 0xc1, 0x7d, 0xc1, 0x22, 0x46, 0xe2, 0x08, 0x17, 0x16, - 0x75, 0xfd, 0x70, 0xcd, 0x1e, 0x7d, 0x48, 0x1d, 0x40, 0xd1, 0xde, 0x15, 0x97, 0xb4, 0x28, 0x23, - 0xd8, 0xeb, 0x75, 0x71, 0x20, 0xad, 0xac, 0xeb, 0x1e, 0x14, 0x85, 0x5d, 0x89, 0x9e, 0x0b, 0xd4, - 0xf5, 0x0d, 0x5d, 0xff, 0xec, 0x31, 0x78, 0xa9, 0x26, 0x2c, 0xc5, 0x94, 0xda, 0xfa, 0x8e, 0x4d, - 0xa9, 0xfd, 0xd7, 0x2e, 0xd5, 0xa0, 0x9c, 0x9a, 0xbc, 0xe8, 0xf8, 0x91, 0xc9, 0x9a, 0xc4, 0xd7, - 0x78, 0x9c, 0x10, 0x69, 0xfe, 0x06, 0xdb, 0xd1, 0x6c, 0x43, 0x4f, 0x05, 0x72, 0x7a, 0x0e, 0xa7, - 0x32, 0xb6, 0x32, 0x0a, 0xd1, 0x15, 0xc0, 0x72, 0xa8, 0xa0, 0xa3, 0x47, 0x66, 0x4d, 0xa8, 0xf3, - 0xfc, 0x93, 0x93, 0xe8, 0xe2, 0xfb, 0x3f, 0x4e, 0x47, 0x36, 0xbb, 0x9f, 0x0e, 0x9a, 0x43, 0x77, - 0x72, 0x3a, 0x0e, 0xb6, 0xa0, 0x63, 0x3b, 0x23, 0x87, 0xb0, 0x99, 0x4b, 0x1f, 0x4e, 0xc7, 0x8e, - 0x75, 0xca, 0x67, 0xe2, 0x69, 0xa2, 0x32, 0xc8, 0xf1, 0x7f, 0x12, 0x5f, 0xfd, 0x1b, 0x00, 0x00, - 0xff, 0xff, 0x88, 0x6c, 0x32, 0x8c, 0x6d, 0x0a, 0x00, 0x00, + // 1190 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x56, 0x6d, 0x6f, 0xda, 0xd6, + 0x17, 0x6f, 0x42, 0x20, 0x70, 0x78, 0x08, 0xb9, 0xe4, 0x81, 0xd2, 0xf4, 0x9f, 0xfc, 0x3d, 0x6d, + 0x8b, 0xb6, 0x96, 0x68, 0xa9, 0x36, 0xad, 0x9d, 0x34, 0x8d, 0x80, 0x23, 0x10, 0x04, 0x33, 0xdb, + 0x2d, 0xea, 0xde, 0x5c, 0x19, 0x7c, 0x4b, 0xac, 0x80, 0xed, 0x5e, 0x5f, 0x0a, 0xbc, 0xdb, 0x9b, + 0x7d, 0x85, 0x49, 0xfd, 0xb6, 0x93, 0xaf, 0x1f, 0xb8, 0x86, 0xa5, 0xd2, 0x5e, 0x85, 0x7b, 0x7e, + 0xbf, 0xf3, 0x7c, 0x7c, 0x4e, 0xe0, 0xe9, 0xc2, 0x98, 0x4e, 0x09, 0xa3, 0xee, 0xf8, 0x2a, 0xf8, + 0xf5, 0x60, 0xb1, 0xba, 0x4b, 0x1d, 0xe6, 0xa0, 0x5c, 0x0c, 0xd5, 0x72, 0xd4, 0x1d, 0x07, 0xd2, + 0xda, 0x91, 0x67, 0x4d, 0x6c, 0x9f, 0xee, 0xff, 0x25, 0x34, 0x90, 0x4a, 0xbf, 0x43, 0xa6, 0x4b, + 0x56, 0x2a, 0xf9, 0x88, 0x2e, 0xa1, 0xfc, 0x40, 0x56, 0xf8, 0x83, 0x65, 0x4f, 0x08, 0xc5, 0x2e, + 0xb5, 0x6c, 0x56, 0xdd, 0xb9, 0xd8, 0xb9, 0x4c, 0xab, 0xa5, 0x07, 0xb2, 0xba, 0xe5, 0xe2, 0x81, + 0x2f, 0x45, 0xcf, 0x01, 0x38, 0xd3, 0x98, 0x59, 0xd3, 0x55, 0x75, 0x97, 0x73, 0x72, 0x3e, 0x87, + 0x0b, 0xa4, 0x22, 0xe4, 0x1b, 0xa6, 0x49, 0x55, 0xf2, 0x71, 0x4e, 0x3c, 0x26, 0x49, 0x50, 0x08, + 0x9e, 0x9e, 0xeb, 0xd8, 0x1e, 0x41, 0x08, 0xf6, 0x0c, 0xd3, 0xa4, 0xdc, 0x76, 0x4e, 0xe5, 0xbf, + 0xa5, 0x37, 0x90, 0xd7, 0xa9, 0x61, 0x7b, 0xc6, 0x98, 0x59, 0x8e, 0x8d, 0x8e, 0x21, 0xc3, 0x96, + 0xf8, 0x9e, 0x2c, 0x39, 0xa9, 0xa0, 0xa6, 0xd9, 0xb2, 0x4d, 0x96, 0xe8, 0x08, 0xd2, 0x53, 0x63, + 0x44, 0xa6, 0xdc, 0x65, 0x4e, 0x0d, 0x1e, 0xd2, 0x4f, 0x70, 0x30, 0x98, 0x8f, 0xa6, 0x96, 0x77, + 0x1f, 0xbb, 0xf8, 0x0a, 0x8a, 0x6e, 0x20, 0xc2, 0x84, 0x52, 0x27, 0xf2, 0x55, 0x08, 0x85, 0xb2, + 0x2f, 0x93, 0x28, 0x20, 0x8d, 0xd8, 0xa6, 0x32, 0x67, 0xee, 0x9c, 0x79, 0x61, 0xb4, 0xe8, 0x0c, + 0xc0, 0x33, 0x18, 0x76, 0x09, 0xc5, 0x0f, 0x0b, 0xae, 0x97, 0x52, 0xb3, 0x9e, 0xc1, 0x06, 0x84, + 0x76, 0x17, 0xe8, 0x12, 0xf6, 0x9d, 0x80, 0x5f, 0xdd, 0xbd, 0x48, 0x5d, 0xe6, 0xaf, 0x4b, 0xf5, + 0xb0, 0xaa, 0x75, 0x7d, 0xa9, 0xcc, 0x99, 0x1a, 0xc1, 0xeb, 0x58, 0x53, 0x62, 0xac, 0x2f, 0xa0, + 0x92, 0xf0, 0x19, 0xc6, 0x7b, 0x0c, 0x19, 0x6a, 0x2c, 0x30, 0x8b, 0xf3, 0xa5, 0xc6, 0x42, 0x5f, + 0x4a, 0x3f, 0x02, 0x92, 0x3d, 0x66, 0xcd, 0x0c, 0x46, 0x6e, 0x09, 0x89, 0x22, 0x3c, 0x87, 0xfc, + 0xd8, 0xb1, 0x3f, 0x60, 0x66, 0xd0, 0x09, 0x89, 0x5a, 0x04, 0xbe, 0x48, 0xe7, 0x12, 0xe9, 0x15, + 0x54, 0x12, 0x6a, 0xa1, 0x93, 0x2f, 0x66, 0x26, 0x7d, 0x4e, 0x41, 0x61, 0x40, 0x6c, 0xd3, 0xb2, + 0x27, 0xda, 0x82, 0x10, 0x17, 0x7d, 0x0f, 0x59, 0x3f, 0x17, 0x27, 0x1a, 0x83, 0xfc, 0xf5, 0x41, + 0x7d, 0xca, 0x33, 0x55, 0xe6, 0x6c, 0xe0, 0x8b, 0xd5, 0x98, 0x80, 0x5e, 0x43, 0x61, 0x61, 0x31, + 0x9b, 0x78, 0x1e, 0x66, 0x2b, 0x97, 0xf0, 0x06, 0x95, 0xae, 0x4f, 0xea, 0xf1, 0x20, 0xd6, 0x87, + 0x01, 0xac, 0xaf, 0x5c, 0xa2, 0xe6, 0x17, 0xeb, 0x87, 0x3f, 0x4c, 0xc6, 0xcc, 0x99, 0xdb, 0x0c, + 0x7b, 0x06, 0xe3, 0xd5, 0x2a, 0xaa, 0xb9, 0x40, 0xa2, 0x19, 0x0c, 0x5d, 0x40, 0x21, 0x8a, 0x7a, + 0xb4, 0x62, 0xa4, 0xba, 0xc7, 0x09, 0x10, 0xc4, 0x7d, 0xb3, 0x62, 0x04, 0xbd, 0x04, 0x34, 0xa2, + 0x8e, 0x61, 0x8e, 0x0d, 0x8f, 0x61, 0x83, 0x31, 0x32, 0x73, 0x99, 0x57, 0x4d, 0x73, 0xde, 0x61, + 0x8c, 0x34, 0x42, 0x00, 0x5d, 0xc3, 0xb1, 0x4d, 0x96, 0x0c, 0xaf, 0x75, 0xee, 0x89, 0x35, 0xb9, + 0x67, 0xd5, 0x0c, 0xd7, 0xa8, 0xf8, 0xe0, 0x4d, 0x84, 0xb5, 0x39, 0xe4, 0xeb, 0xd0, 0xa0, 0xfa, + 0xc4, 0xc4, 0x62, 0xf1, 0xb3, 0x81, 0x4e, 0x0c, 0x36, 0xe3, 0x2e, 0xa0, 0x57, 0x70, 0xb2, 0xd6, + 0x49, 0xa4, 0x90, 0xdb, 0x50, 0xd2, 0xd6, 0xb9, 0x1c, 0x41, 0xfa, 0x83, 0x43, 0xc7, 0xa4, 0xba, + 0x7f, 0xb1, 0x73, 0x99, 0x55, 0x83, 0x87, 0x74, 0x02, 0x47, 0x62, 0x6b, 0xa2, 0x59, 0x95, 0x86, + 0x70, 0xbc, 0x21, 0x0f, 0x5b, 0xfd, 0x2b, 0x94, 0xdc, 0x00, 0xc0, 0x1e, 0x47, 0xaa, 0x3b, 0x7c, + 0x5a, 0x4f, 0x85, 0x86, 0x88, 0x9a, 0x6a, 0xd1, 0x15, 0xed, 0x48, 0x7f, 0xef, 0x40, 0xe9, 0x66, + 0x3e, 0x73, 0x85, 0xa9, 0xfb, 0x4f, 0xe3, 0x70, 0x0e, 0xf9, 0xa0, 0x40, 0xbc, 0x58, 0x7c, 0x1a, + 0x8a, 0x2a, 0x04, 0x22, 0xbf, 0x44, 0x5b, 0x5d, 0x4d, 0x6d, 0x75, 0x35, 0xae, 0xc4, 0x9e, 0x58, + 0x89, 0x43, 0x38, 0x88, 0xe3, 0x0a, 0x72, 0x95, 0x5e, 0xc2, 0x61, 0xcf, 0xf2, 0x58, 0xa2, 0x32, + 0xa8, 0x0a, 0xfb, 0x9f, 0x08, 0x1d, 0x39, 0x1e, 0xe1, 0xc1, 0x66, 0xd5, 0xe8, 0x29, 0xfd, 0xb9, + 0x0b, 0x48, 0xe4, 0x87, 0x15, 0xeb, 0x41, 0x85, 0xad, 0x17, 0x10, 0x36, 0x09, 0x33, 0xac, 0xa9, + 0x17, 0x66, 0xfa, 0x34, 0xcc, 0x54, 0x58, 0x51, 0xad, 0x80, 0xd0, 0x7e, 0xa2, 0x22, 0xb6, 0x25, + 0x45, 0x43, 0x38, 0x10, 0xad, 0x59, 0xa6, 0xc7, 0x6b, 0x90, 0xbf, 0x7e, 0x21, 0x34, 0x60, 0x3b, + 0x0a, 0xd1, 0x41, 0xa7, 0xe5, 0x1b, 0x2f, 0x09, 0x66, 0x3a, 0xa6, 0x57, 0x7b, 0x0d, 0xa5, 0x24, + 0x07, 0x7d, 0xbb, 0xed, 0xca, 0xef, 0x75, 0x6e, 0x53, 0xf5, 0x26, 0x0b, 0x99, 0x60, 0x16, 0xbe, + 0xfb, 0x9c, 0x82, 0xbc, 0xf0, 0x39, 0xa2, 0x0a, 0x1c, 0xbc, 0xed, 0x77, 0xfb, 0xca, 0xb0, 0x8f, + 0x87, 0x1d, 0xbd, 0x2f, 0x6b, 0x5a, 0xf9, 0x09, 0xaa, 0xc2, 0x51, 0x53, 0xb9, 0xbb, 0xeb, 0xe8, + 0x77, 0x72, 0x5f, 0xc7, 0x7a, 0xe7, 0x4e, 0xc6, 0x3d, 0xa5, 0xd9, 0x2d, 0xef, 0xa0, 0x53, 0xa8, + 0x08, 0x48, 0x5f, 0xc1, 0x2d, 0xb9, 0xd7, 0x78, 0x5f, 0xde, 0x45, 0xc7, 0x70, 0x28, 0x00, 0xaa, + 0xfc, 0x4e, 0xe9, 0xca, 0xe5, 0x94, 0xcf, 0x6f, 0xeb, 0xbd, 0x26, 0x56, 0x6e, 0x6f, 0x65, 0x55, + 0x6e, 0x45, 0xc0, 0x9e, 0xef, 0x82, 0x03, 0x8d, 0x66, 0x53, 0x1e, 0xe8, 0x6b, 0x24, 0x8d, 0xbe, + 0x86, 0xff, 0x27, 0x54, 0x7c, 0xf7, 0xca, 0x5b, 0x1d, 0x6b, 0x72, 0x53, 0xe9, 0xb7, 0x70, 0x4f, + 0x7e, 0x27, 0xf7, 0xca, 0x19, 0xf4, 0x0d, 0x48, 0x49, 0x03, 0xda, 0xdb, 0x66, 0x53, 0xd6, 0xb4, + 0x24, 0x6f, 0x1f, 0x9d, 0xc3, 0xb3, 0x8d, 0x08, 0xee, 0x14, 0x5d, 0x8e, 0xac, 0x96, 0xb3, 0xe8, + 0x02, 0xce, 0x36, 0x23, 0xe1, 0x8c, 0xd0, 0x5e, 0x39, 0x87, 0xce, 0xa0, 0xca, 0x19, 0xa2, 0xe5, + 0x28, 0x5e, 0x40, 0x47, 0x50, 0x0e, 0x2b, 0x87, 0xbb, 0xf2, 0x7b, 0xdc, 0x6e, 0x68, 0xed, 0x72, + 0x1e, 0x3d, 0x83, 0xd3, 0xbe, 0xac, 0xf9, 0xe6, 0xb6, 0xc0, 0xc2, 0x46, 0xb1, 0x1a, 0xfd, 0x66, + 0x5b, 0x51, 0xcb, 0xc5, 0xeb, 0xbf, 0xd2, 0x90, 0x1b, 0xf2, 0x11, 0xe9, 0x5a, 0x0c, 0xbd, 0x81, + 0x62, 0x8b, 0x50, 0xeb, 0x13, 0xe9, 0x93, 0x25, 0xeb, 0x92, 0x15, 0x3a, 0x14, 0xe6, 0x27, 0x38, + 0xdb, 0xb5, 0x93, 0xf8, 0x02, 0x75, 0xc9, 0xaa, 0x45, 0xbc, 0x31, 0xb5, 0x5c, 0xe6, 0x50, 0xf4, + 0x33, 0xe4, 0x02, 0x5d, 0x5f, 0xaf, 0x22, 0x92, 0x7a, 0xce, 0xd8, 0x60, 0x0e, 0x7d, 0x54, 0xf3, + 0x17, 0xc8, 0xfa, 0xfe, 0xfc, 0xa3, 0x8d, 0xc4, 0x15, 0x2e, 0x1c, 0xf5, 0xda, 0xe9, 0x96, 0x3c, + 0xfc, 0x90, 0xda, 0x80, 0xc2, 0x6b, 0x2c, 0x1e, 0x74, 0xd1, 0x8c, 0x20, 0xaf, 0xd5, 0xc4, 0x85, + 0xb4, 0x71, 0xc4, 0x7b, 0x90, 0x17, 0x6e, 0x25, 0x7a, 0x2e, 0x50, 0xb7, 0xef, 0x76, 0xed, 0x7f, + 0x8f, 0xc1, 0x6b, 0x6b, 0xc2, 0x51, 0x4c, 0x58, 0xdb, 0xbe, 0xb1, 0x09, 0x6b, 0xff, 0x76, 0x4b, + 0x55, 0x28, 0x26, 0x36, 0x2f, 0x3a, 0x7f, 0x64, 0xb3, 0xc6, 0xf1, 0x5d, 0x3c, 0x4e, 0x08, 0x6d, + 0xfe, 0x06, 0xfb, 0xe1, 0x6e, 0x43, 0x4f, 0x05, 0x72, 0x72, 0x0f, 0x27, 0x2a, 0xb6, 0xb1, 0x0a, + 0x51, 0x07, 0x60, 0xbd, 0x54, 0xd0, 0xd9, 0x23, 0xbb, 0x26, 0xb0, 0xf3, 0xfc, 0x8b, 0x9b, 0xe8, + 0xe6, 0x87, 0x3f, 0xae, 0x26, 0x16, 0xbb, 0x9f, 0x8f, 0xea, 0x63, 0x67, 0x76, 0x35, 0xf5, 0xaf, + 0xa0, 0x6d, 0xd9, 0x13, 0x9b, 0xb0, 0x85, 0x43, 0x1f, 0xae, 0xa6, 0xb6, 0x79, 0xc5, 0x77, 0xe2, + 0x55, 0x6c, 0x65, 0x94, 0xe1, 0xff, 0x50, 0xbe, 0xfa, 0x27, 0x00, 0x00, 0xff, 0xff, 0xde, 0x94, + 0x5b, 0x29, 0x99, 0x0a, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/lnrpc/walletrpc/walletkit.proto b/lnrpc/walletrpc/walletkit.proto index d6dacec19..5cafbc54b 100644 --- a/lnrpc/walletrpc/walletkit.proto +++ b/lnrpc/walletrpc/walletkit.proto @@ -129,6 +129,11 @@ message Transaction { The raw serialized transaction. */ bytes tx_hex = 1; + + /* + An optional label to save with the transaction. Limited to 500 characters. + */ + string label = 2; } message PublishResponse { /* @@ -152,6 +157,9 @@ message SendOutputsRequest { A slice of the outputs that should be created in the transaction produced. */ repeated signrpc.TxOut outputs = 2; + + // An optional label for the transaction, limited to 500 characters. + string label = 3; } message SendOutputsResponse { /* diff --git a/lnrpc/walletrpc/walletkit.swagger.json b/lnrpc/walletrpc/walletkit.swagger.json index 4f41135d8..50cca8272 100644 --- a/lnrpc/walletrpc/walletkit.swagger.json +++ b/lnrpc/walletrpc/walletkit.swagger.json @@ -93,6 +93,10 @@ "raw_tx_hex": { "type": "string", "description": "The raw transaction hex." + }, + "label": { + "type": "string", + "description": "A label that was optionally set on transaction broadcast." } } }, diff --git a/lnrpc/walletrpc/walletkit_server.go b/lnrpc/walletrpc/walletkit_server.go index 12634f032..bb021b856 100644 --- a/lnrpc/walletrpc/walletkit_server.go +++ b/lnrpc/walletrpc/walletkit_server.go @@ -16,6 +16,7 @@ import ( "github.com/btcsuite/btcd/wire" "github.com/lightningnetwork/lnd/input" "github.com/lightningnetwork/lnd/keychain" + "github.com/lightningnetwork/lnd/labels" "github.com/lightningnetwork/lnd/lnrpc" "github.com/lightningnetwork/lnd/lnrpc/signrpc" "github.com/lightningnetwork/lnd/lnwallet" @@ -273,7 +274,12 @@ func (w *WalletKit) PublishTransaction(ctx context.Context, return nil, err } - err := w.cfg.Wallet.PublishTransaction(tx) + label, err := labels.ValidateAPI(req.Label) + if err != nil { + return nil, err + } + + err = w.cfg.Wallet.PublishTransaction(tx, label) if err != nil { return nil, err } @@ -306,10 +312,15 @@ func (w *WalletKit) SendOutputs(ctx context.Context, }) } + label, err := labels.ValidateAPI(req.Label) + if err != nil { + return nil, err + } + // Now that we have the outputs mapped, we can request that the wallet // attempt to create this transaction. tx, err := w.cfg.Wallet.SendOutputs( - outputsToCreate, chainfee.SatPerKWeight(req.SatPerKw), + outputsToCreate, chainfee.SatPerKWeight(req.SatPerKw), label, ) if err != nil { return nil, err diff --git a/lntest/itest/lnd_test.go b/lntest/itest/lnd_test.go index ef7d0a328..6b7d401b0 100644 --- a/lntest/itest/lnd_test.go +++ b/lntest/itest/lnd_test.go @@ -12486,9 +12486,13 @@ func testSweepAllCoins(net *lntest.NetworkHarness, t *harnessTest) { t.Fatalf("unable to get node info: %v", err) } + // Create a label that we will used to label the transaction with. + sendCoinsLabel := "send all coins" + sweepReq := &lnrpc.SendCoinsRequest{ Addr: info.IdentityPubkey, SendAll: true, + Label: sendCoinsLabel, } _, err = ainz.SendCoins(ctxt, sweepReq) if err == nil { @@ -12504,6 +12508,7 @@ func testSweepAllCoins(net *lntest.NetworkHarness, t *harnessTest) { sweepReq = &lnrpc.SendCoinsRequest{ Addr: info.IdentityPubkey, SendAll: true, + Label: sendCoinsLabel, } _, err = ainz.SendCoins(ctxt, sweepReq) if err == nil { @@ -12522,6 +12527,7 @@ func testSweepAllCoins(net *lntest.NetworkHarness, t *harnessTest) { sweepReq = &lnrpc.SendCoinsRequest{ Addr: "tb1qfc8fusa98jx8uvnhzavxccqlzvg749tvjw82tg", SendAll: true, + Label: sendCoinsLabel, } _, err = ainz.SendCoins(ctxt, sweepReq) if err == nil { @@ -12533,6 +12539,7 @@ func testSweepAllCoins(net *lntest.NetworkHarness, t *harnessTest) { sweepReq = &lnrpc.SendCoinsRequest{ Addr: "1MPaXKp5HhsLNjVSqaL7fChE3TVyrTMRT3", SendAll: true, + Label: sendCoinsLabel, } _, err = ainz.SendCoins(ctxt, sweepReq) if err == nil { @@ -12548,6 +12555,7 @@ func testSweepAllCoins(net *lntest.NetworkHarness, t *harnessTest) { sweepReq = &lnrpc.SendCoinsRequest{ Addr: minerAddr.String(), SendAll: true, + Label: sendCoinsLabel, } ctxt, _ = context.WithTimeout(ctxb, defaultTimeout) _, err = ainz.SendCoins(ctxt, sweepReq) @@ -12566,6 +12574,24 @@ func testSweepAllCoins(net *lntest.NetworkHarness, t *harnessTest) { t.Fatalf("expected 2 inputs instead have %v", len(sweepTx.TxIn)) } + // List all transactions relevant to our wallet, and find the sweep tx + // so that we can check the correct label has been set. + ctxt, _ = context.WithTimeout(ctxb, defaultTimeout) + txResp, err := ainz.GetTransactions(ctxt, &lnrpc.GetTransactionsRequest{}) + if err != nil { + t.Fatalf("could not get transactions: %v", err) + } + + sweepTxStr := sweepTx.TxHash().String() + for _, txn := range txResp.Transactions { + if txn.TxHash == sweepTxStr { + if txn.Label != sendCoinsLabel { + t.Fatalf("expected label: %v, got: %v", + sendCoinsLabel, txn.Label) + } + } + } + // Finally, Ainz should now have no coins at all within his wallet. balReq := &lnrpc.WalletBalanceRequest{} resp, err := ainz.WalletBalance(ctxt, balReq) diff --git a/lnwallet/btcwallet/btcwallet.go b/lnwallet/btcwallet/btcwallet.go index 2dda3157e..f3b96d5ed 100644 --- a/lnwallet/btcwallet/btcwallet.go +++ b/lnwallet/btcwallet/btcwallet.go @@ -294,7 +294,7 @@ func (b *BtcWallet) IsOurAddress(a btcutil.Address) bool { // // This is a part of the WalletController interface. func (b *BtcWallet) SendOutputs(outputs []*wire.TxOut, - feeRate chainfee.SatPerKWeight) (*wire.MsgTx, error) { + feeRate chainfee.SatPerKWeight, label string) (*wire.MsgTx, error) { // Convert our fee rate from sat/kw to sat/kb since it's required by // SendOutputs. @@ -304,7 +304,10 @@ func (b *BtcWallet) SendOutputs(outputs []*wire.TxOut, if len(outputs) < 1 { return nil, lnwallet.ErrNoOutputs } - return b.wallet.SendOutputs(outputs, defaultAccount, 1, feeSatPerKB, "") + + return b.wallet.SendOutputs( + outputs, defaultAccount, 1, feeSatPerKB, label, + ) } // CreateSimpleTx creates a Bitcoin transaction paying to the specified @@ -433,8 +436,8 @@ func (b *BtcWallet) ListUnspentWitness(minConfs, maxConfs int32) ( // publishing the transaction fails, an error describing the reason is returned // (currently ErrDoubleSpend). If the transaction is already published to the // network (either in the mempool or chain) no error will be returned. -func (b *BtcWallet) PublishTransaction(tx *wire.MsgTx) error { - if err := b.wallet.PublishTransaction(tx, ""); err != nil { +func (b *BtcWallet) PublishTransaction(tx *wire.MsgTx, label string) error { + if err := b.wallet.PublishTransaction(tx, label); err != nil { // If we failed to publish the transaction, check whether we // got an error of known type. @@ -516,6 +519,7 @@ func minedTransactionsToDetails( TotalFees: int64(tx.Fee), DestAddresses: destAddresses, RawTx: tx.Transaction, + Label: tx.Label, } balanceDelta, err := extractBalanceDelta(tx, wireTx) @@ -561,6 +565,7 @@ func unminedTransactionsToDetail( Timestamp: summary.Timestamp, DestAddresses: destAddresses, RawTx: summary.Transaction, + Label: summary.Label, } balanceDelta, err := extractBalanceDelta(summary, wireTx) diff --git a/lnwallet/interface.go b/lnwallet/interface.go index 11ed6dc2c..836f044d5 100644 --- a/lnwallet/interface.go +++ b/lnwallet/interface.go @@ -103,6 +103,9 @@ type TransactionDetail struct { // RawTx returns the raw serialized transaction. RawTx []byte + + // Label is an optional transaction label. + Label string } // TransactionSubscription is an interface which describes an object capable of @@ -174,7 +177,7 @@ type WalletController interface { // This method also takes the target fee expressed in sat/kw that should // be used when crafting the transaction. SendOutputs(outputs []*wire.TxOut, - feeRate chainfee.SatPerKWeight) (*wire.MsgTx, error) + feeRate chainfee.SatPerKWeight, label string) (*wire.MsgTx, error) // CreateSimpleTx creates a Bitcoin transaction paying to the specified // outputs. The transaction is not broadcasted to the network. In the @@ -224,8 +227,9 @@ type WalletController interface { // already known transaction, ErrDoubleSpend is returned. If the // transaction is already known (published already), no error will be // returned. Other error returned depends on the currently active chain - // backend. - PublishTransaction(tx *wire.MsgTx) error + // backend. It takes an optional label which will save a label with the + // published transaction. + PublishTransaction(tx *wire.MsgTx, label string) error // SubscribeTransactions returns a TransactionSubscription client which // is capable of receiving async notifications as new transactions diff --git a/lnwallet/interface_test.go b/lnwallet/interface_test.go index 20ff52821..d496b5006 100644 --- a/lnwallet/interface_test.go +++ b/lnwallet/interface_test.go @@ -38,6 +38,7 @@ import ( "github.com/lightningnetwork/lnd/channeldb/kvdb" "github.com/lightningnetwork/lnd/input" "github.com/lightningnetwork/lnd/keychain" + "github.com/lightningnetwork/lnd/labels" "github.com/lightningnetwork/lnd/lntest/wait" "github.com/lightningnetwork/lnd/lnwallet" "github.com/lightningnetwork/lnd/lnwallet/btcwallet" @@ -173,7 +174,9 @@ func sendCoins(t *testing.T, miner *rpctest.Harness, t.Helper() - tx, err := sender.SendOutputs([]*wire.TxOut{output}, 2500) + tx, err := sender.SendOutputs( + []*wire.TxOut{output}, 2500, labels.External, + ) if err != nil { t.Fatalf("unable to send transaction: %v", err) } @@ -529,7 +532,8 @@ func testDualFundingReservationWorkflow(miner *rpctest.Harness, } // Let Alice publish the funding transaction. - if err := alice.PublishTransaction(fundingTx); err != nil { + err = alice.PublishTransaction(fundingTx, "") + if err != nil { t.Fatalf("unable to publish funding tx: %v", err) } @@ -1024,7 +1028,8 @@ func testSingleFunderReservationWorkflow(miner *rpctest.Harness, } // Let Alice publish the funding transaction. - if err := alice.PublishTransaction(fundingTx); err != nil { + err = alice.PublishTransaction(fundingTx, "") + if err != nil { t.Fatalf("unable to publish funding tx: %v", err) } @@ -1217,7 +1222,9 @@ func testListTransactionDetails(miner *rpctest.Harness, t.Fatalf("unable to make output script: %v", err) } burnOutput := wire.NewTxOut(outputAmt, outputScript) - burnTX, err := alice.SendOutputs([]*wire.TxOut{burnOutput}, 2500) + burnTX, err := alice.SendOutputs( + []*wire.TxOut{burnOutput}, 2500, labels.External, + ) if err != nil { t.Fatalf("unable to create burn tx: %v", err) } @@ -1490,7 +1497,9 @@ func testTransactionSubscriptions(miner *rpctest.Harness, t.Fatalf("unable to make output script: %v", err) } burnOutput := wire.NewTxOut(outputAmt, outputScript) - tx, err := alice.SendOutputs([]*wire.TxOut{burnOutput}, 2500) + tx, err := alice.SendOutputs( + []*wire.TxOut{burnOutput}, 2500, labels.External, + ) if err != nil { t.Fatalf("unable to create burn tx: %v", err) } @@ -1681,7 +1690,9 @@ func newTx(t *testing.T, r *rpctest.Harness, pubKey *btcec.PublicKey, Value: btcutil.SatoshiPerBitcoin, PkScript: keyScript, } - tx, err := alice.SendOutputs([]*wire.TxOut{newOutput}, 2500) + tx, err := alice.SendOutputs( + []*wire.TxOut{newOutput}, 2500, labels.External, + ) if err != nil { t.Fatalf("unable to create output: %v", err) } @@ -1721,7 +1732,8 @@ func testPublishTransaction(r *rpctest.Harness, tx1 := newTx(t, r, keyDesc.PubKey, alice, false) // Publish the transaction. - if err := alice.PublishTransaction(tx1); err != nil { + err = alice.PublishTransaction(tx1, labels.External) + if err != nil { t.Fatalf("unable to publish: %v", err) } @@ -1733,7 +1745,8 @@ func testPublishTransaction(r *rpctest.Harness, // Publish the exact same transaction again. This should not return an // error, even though the transaction is already in the mempool. - if err := alice.PublishTransaction(tx1); err != nil { + err = alice.PublishTransaction(tx1, labels.External) + if err != nil { t.Fatalf("unable to publish: %v", err) } @@ -1752,7 +1765,8 @@ func testPublishTransaction(r *rpctest.Harness, tx2 := newTx(t, r, keyDesc.PubKey, alice, false) // Publish this tx. - if err := alice.PublishTransaction(tx2); err != nil { + err = alice.PublishTransaction(tx2, labels.External) + if err != nil { t.Fatalf("unable to publish: %v", err) } @@ -1763,7 +1777,8 @@ func testPublishTransaction(r *rpctest.Harness, // Publish the transaction again. It is already mined, and we don't // expect this to return an error. - if err := alice.PublishTransaction(tx2); err != nil { + err = alice.PublishTransaction(tx2, labels.External) + if err != nil { t.Fatalf("unable to publish: %v", err) } @@ -1779,7 +1794,8 @@ func testPublishTransaction(r *rpctest.Harness, // transaction. Create a new tx and publish it. This is the // output we'll try to double spend. tx3 = newTx(t, r, keyDesc.PubKey, alice, false) - if err := alice.PublishTransaction(tx3); err != nil { + err := alice.PublishTransaction(tx3, labels.External) + if err != nil { t.Fatalf("unable to publish: %v", err) } @@ -1799,7 +1815,8 @@ func testPublishTransaction(r *rpctest.Harness, } // This should be accepted into the mempool. - if err := alice.PublishTransaction(tx4); err != nil { + err = alice.PublishTransaction(tx4, labels.External) + if err != nil { t.Fatalf("unable to publish: %v", err) } @@ -1833,7 +1850,7 @@ func testPublishTransaction(r *rpctest.Harness, t.Fatal(err) } - err = alice.PublishTransaction(tx5) + err = alice.PublishTransaction(tx5, labels.External) if err != lnwallet.ErrDoubleSpend { t.Fatalf("expected ErrDoubleSpend, got: %v", err) } @@ -1861,7 +1878,7 @@ func testPublishTransaction(r *rpctest.Harness, expErr = nil tx3Spend = tx6 } - err = alice.PublishTransaction(tx6) + err = alice.PublishTransaction(tx6, labels.External) if err != expErr { t.Fatalf("expected ErrDoubleSpend, got: %v", err) } @@ -1896,7 +1913,7 @@ func testPublishTransaction(r *rpctest.Harness, } // Expect rejection. - err = alice.PublishTransaction(tx7) + err = alice.PublishTransaction(tx7, labels.External) if err != lnwallet.ErrDoubleSpend { t.Fatalf("expected ErrDoubleSpend, got: %v", err) } @@ -1964,7 +1981,9 @@ func testSignOutputUsingTweaks(r *rpctest.Harness, Value: btcutil.SatoshiPerBitcoin, PkScript: keyScript, } - tx, err := alice.SendOutputs([]*wire.TxOut{newOutput}, 2500) + tx, err := alice.SendOutputs( + []*wire.TxOut{newOutput}, 2500, labels.External, + ) if err != nil { t.Fatalf("unable to create output: %v", err) } @@ -2086,7 +2105,9 @@ func testReorgWalletBalance(r *rpctest.Harness, w *lnwallet.LightningWallet, Value: 1e8, PkScript: script, } - tx, err := w.SendOutputs([]*wire.TxOut{output}, 2500) + tx, err := w.SendOutputs( + []*wire.TxOut{output}, 2500, labels.External, + ) if err != nil { t.Fatalf("unable to send outputs: %v", err) } @@ -2467,7 +2488,7 @@ func testCreateSimpleTx(r *rpctest.Harness, w *lnwallet.LightningWallet, // _very_ similar to the one we just created being sent. The // only difference is that the dry run tx is not signed, and // that the change output position might be different. - tx, sendErr := w.SendOutputs(outputs, feeRate) + tx, sendErr := w.SendOutputs(outputs, feeRate, labels.External) switch { case test.valid && sendErr != nil: t.Fatalf("got unexpected error when sending tx: %v", diff --git a/mock.go b/mock.go index 50b9d98e9..2b13e75f5 100644 --- a/mock.go +++ b/mock.go @@ -281,7 +281,7 @@ func (*mockWalletController) IsOurAddress(a btcutil.Address) bool { } func (*mockWalletController) SendOutputs(outputs []*wire.TxOut, - _ chainfee.SatPerKWeight) (*wire.MsgTx, error) { + _ chainfee.SatPerKWeight, _ string) (*wire.MsgTx, error) { return nil, nil } @@ -322,7 +322,7 @@ func (*mockWalletController) ListTransactionDetails(_, _ int32) ([]*lnwallet.Tra } func (*mockWalletController) LockOutpoint(o wire.OutPoint) {} func (*mockWalletController) UnlockOutpoint(o wire.OutPoint) {} -func (m *mockWalletController) PublishTransaction(tx *wire.MsgTx) error { +func (m *mockWalletController) PublishTransaction(tx *wire.MsgTx, _ string) error { m.publishedTransactions <- tx return nil } diff --git a/rpcserver.go b/rpcserver.go index a0d89ac32..e5ade52c7 100644 --- a/rpcserver.go +++ b/rpcserver.go @@ -44,6 +44,7 @@ import ( "github.com/lightningnetwork/lnd/input" "github.com/lightningnetwork/lnd/invoices" "github.com/lightningnetwork/lnd/keychain" + "github.com/lightningnetwork/lnd/labels" "github.com/lightningnetwork/lnd/lncfg" "github.com/lightningnetwork/lnd/lnrpc" "github.com/lightningnetwork/lnd/lnrpc/invoicesrpc" @@ -924,14 +925,14 @@ func addrPairsToOutputs(addrPairs map[string]int64) ([]*wire.TxOut, error) { // more addresses specified in the passed payment map. The payment map maps an // address to a specified output value to be sent to that address. func (r *rpcServer) sendCoinsOnChain(paymentMap map[string]int64, - feeRate chainfee.SatPerKWeight) (*chainhash.Hash, error) { + feeRate chainfee.SatPerKWeight, label string) (*chainhash.Hash, error) { outputs, err := addrPairsToOutputs(paymentMap) if err != nil { return nil, err } - tx, err := r.server.cc.wallet.SendOutputs(outputs, feeRate) + tx, err := r.server.cc.wallet.SendOutputs(outputs, feeRate, label) if err != nil { return nil, err } @@ -1147,6 +1148,11 @@ func (r *rpcServer) SendCoins(ctx context.Context, return nil, fmt.Errorf("cannot send coins to pubkeys") } + label, err := labels.ValidateAPI(in.Label) + if err != nil { + return nil, err + } + var txid *chainhash.Hash wallet := r.server.cc.wallet @@ -1187,7 +1193,7 @@ func (r *rpcServer) SendCoins(ctx context.Context, // As our sweep transaction was created, successfully, we'll // now attempt to publish it, cancelling the sweep pkg to // return all outputs if it fails. - err = wallet.PublishTransaction(sweepTxPkg.SweepTx) + err = wallet.PublishTransaction(sweepTxPkg.SweepTx, label) if err != nil { sweepTxPkg.CancelSweepAttempt() @@ -1205,7 +1211,9 @@ func (r *rpcServer) SendCoins(ctx context.Context, // while we instruct the wallet to send this transaction. paymentMap := map[string]int64{targetAddr.String(): in.Amount} err := wallet.WithCoinSelectLock(func() error { - newTXID, err := r.sendCoinsOnChain(paymentMap, feePerKw) + newTXID, err := r.sendCoinsOnChain( + paymentMap, feePerKw, label, + ) if err != nil { return err } @@ -1242,6 +1250,11 @@ func (r *rpcServer) SendMany(ctx context.Context, return nil, err } + label, err := labels.ValidateAPI(in.Label) + if err != nil { + return nil, err + } + rpcsLog.Infof("[sendmany] outputs=%v, sat/kw=%v", spew.Sdump(in.AddrToAmount), int64(feePerKw)) @@ -1253,7 +1266,7 @@ func (r *rpcServer) SendMany(ctx context.Context, wallet := r.server.cc.wallet err = wallet.WithCoinSelectLock(func() error { sendManyTXID, err := r.sendCoinsOnChain( - in.AddrToAmount, feePerKw, + in.AddrToAmount, feePerKw, label, ) if err != nil { return err diff --git a/sweep/backend_mock_test.go b/sweep/backend_mock_test.go index 644ba59cc..dea018e34 100644 --- a/sweep/backend_mock_test.go +++ b/sweep/backend_mock_test.go @@ -75,7 +75,7 @@ func (b *mockBackend) publishTransaction(tx *wire.MsgTx) error { return nil } -func (b *mockBackend) PublishTransaction(tx *wire.MsgTx) error { +func (b *mockBackend) PublishTransaction(tx *wire.MsgTx, _ string) error { log.Tracef("Publishing tx %v", tx.TxHash()) err := b.publishTransaction(tx) select { diff --git a/sweep/interface.go b/sweep/interface.go index a9ff82cc6..bbba1e86e 100644 --- a/sweep/interface.go +++ b/sweep/interface.go @@ -9,7 +9,7 @@ import ( type Wallet interface { // PublishTransaction performs cursory validation (dust checks, etc) and // broadcasts the passed transaction to the Bitcoin network. - PublishTransaction(tx *wire.MsgTx) error + PublishTransaction(tx *wire.MsgTx, label string) error // ListUnspentWitness returns all unspent outputs which are version 0 // witness programs. The 'minconfirms' and 'maxconfirms' parameters diff --git a/sweep/sweeper.go b/sweep/sweeper.go index 9ff9b92b9..43f2a0d8c 100644 --- a/sweep/sweeper.go +++ b/sweep/sweeper.go @@ -355,7 +355,7 @@ func (s *UtxoSweeper) Start() error { // Error can be ignored. Because we are starting up, there are // no pending inputs to update based on the publish result. - err := s.cfg.Wallet.PublishTransaction(lastTx) + err := s.cfg.Wallet.PublishTransaction(lastTx, "") if err != nil && err != lnwallet.ErrDoubleSpend { log.Errorf("last tx publish: %v", err) } @@ -988,7 +988,7 @@ func (s *UtxoSweeper) sweep(inputs inputSet, feeRate chainfee.SatPerKWeight, }), ) - err = s.cfg.Wallet.PublishTransaction(tx) + err = s.cfg.Wallet.PublishTransaction(tx, "") // In case of an unexpected error, don't try to recover. if err != nil && err != lnwallet.ErrDoubleSpend { diff --git a/utxonursery.go b/utxonursery.go index abff35478..a1a207944 100644 --- a/utxonursery.go +++ b/utxonursery.go @@ -194,7 +194,7 @@ type NurseryConfig struct { // PublishTransaction facilitates the process of broadcasting a signed // transaction to the appropriate network. - PublishTransaction func(*wire.MsgTx) error + PublishTransaction func(*wire.MsgTx, string) error // Store provides access to and modification of the persistent state // maintained about the utxo nursery's incubating outputs. @@ -867,7 +867,7 @@ func (u *utxoNursery) sweepCribOutput(classHeight uint32, baby *babyOutput) erro // We'll now broadcast the HTLC transaction, then wait for it to be // confirmed before transitioning it to kindergarten. - err := u.cfg.PublishTransaction(baby.timeoutTx) + err := u.cfg.PublishTransaction(baby.timeoutTx, "") if err != nil && err != lnwallet.ErrDoubleSpend { utxnLog.Errorf("Unable to broadcast baby tx: "+ "%v, %v", err, spew.Sdump(baby.timeoutTx)) diff --git a/utxonursery_test.go b/utxonursery_test.go index 5b4424c5a..1a9323db5 100644 --- a/utxonursery_test.go +++ b/utxonursery_test.go @@ -467,7 +467,7 @@ func createNurseryTestContext(t *testing.T, Store: storeIntercepter, ChainIO: chainIO, SweepInput: sweeper.sweepInput, - PublishTransaction: func(tx *wire.MsgTx) error { + PublishTransaction: func(tx *wire.MsgTx, _ string) error { return publishFunc(tx, "nursery") }, } diff --git a/watchtower/config.go b/watchtower/config.go index a71bd0433..7ef8a6174 100644 --- a/watchtower/config.go +++ b/watchtower/config.go @@ -72,7 +72,7 @@ type Config struct { // // TODO(conner): replace with lnwallet.WalletController interface to // have stronger guarantees wrt. returned error types. - PublishTx func(*wire.MsgTx) error + PublishTx func(*wire.MsgTx, string) error // ListenAddrs specifies the listening addresses of the tower. ListenAddrs []net.Addr diff --git a/watchtower/lookout/justice_descriptor_test.go b/watchtower/lookout/justice_descriptor_test.go index afc4dacd6..d1d1dbad4 100644 --- a/watchtower/lookout/justice_descriptor_test.go +++ b/watchtower/lookout/justice_descriptor_test.go @@ -293,7 +293,7 @@ func testJusticeDescriptor(t *testing.T, blobType blob.Type) { // over the buffered channel. publications := make(chan *wire.MsgTx, 1) punisher := lookout.NewBreachPunisher(&lookout.PunisherConfig{ - PublishTx: func(tx *wire.MsgTx) error { + PublishTx: func(tx *wire.MsgTx, _ string) error { publications <- tx return nil }, diff --git a/watchtower/lookout/punisher.go b/watchtower/lookout/punisher.go index eb9c058cd..98d2b6c62 100644 --- a/watchtower/lookout/punisher.go +++ b/watchtower/lookout/punisher.go @@ -8,7 +8,7 @@ import ( type PunisherConfig struct { // PublishTx provides the ability to send a signed transaction to the // network. - PublishTx func(*wire.MsgTx) error + PublishTx func(*wire.MsgTx, string) error // TODO(conner) add DB tracking and spend ntfn registration to see if // ours confirmed or not @@ -42,7 +42,7 @@ func (p *BreachPunisher) Punish(desc *JusticeDescriptor, quit <-chan struct{}) e log.Infof("Publishing justice transaction for client=%s with txid=%s", desc.SessionInfo.ID, justiceTxn.TxHash()) - err = p.cfg.PublishTx(justiceTxn) + err = p.cfg.PublishTx(justiceTxn, "") if err != nil { log.Errorf("Unable to publish justice txn for client=%s"+ "with breach-txid=%s: %v",