From 702fe303ad3bd03df84634bdfb80cb6ec2624890 Mon Sep 17 00:00:00 2001 From: zakir <80246097+zakir-code@users.noreply.github.com> Date: Fri, 11 Oct 2024 10:09:40 +0800 Subject: [PATCH] refactor: remove batch bridge fee logic --- Makefile | 2 +- app/app_test.go | 3 + app/encoding_test.go | 2 +- app/interface_registry.json | 3 - contract/ICrossChain.go | 346 +--- docs/statik/statik.go | 2 +- docs/swagger-ui/swagger.yaml | 1043 +++--------- docs/swagger_test.go | 2 +- proto/fx/gravity/crosschain/v1/legacy.proto | 9 +- proto/fx/gravity/crosschain/v1/query.proto | 19 +- proto/fx/gravity/crosschain/v1/tx.proto | 26 +- solidity/contracts/bridge/ICrossChain.sol | 30 - solidity/contracts/test/CrossChainTest.sol | 26 - tests/contract/CrossChainTest.go | 46 +- tests/crosschain_suite.go | 79 - tests/crosschain_test.go | 8 - tests/integration_test.go | 2 - tests/precompile_suite.go | 137 -- tests/precompile_test.go | 83 +- x/crosschain/client/cli/query.go | 57 +- x/crosschain/client/cli/tx.go | 103 +- x/crosschain/keeper/abci.go | 2 +- x/crosschain/keeper/batch_fee.go | 155 -- x/crosschain/keeper/batch_test.go | 163 -- x/crosschain/keeper/bridge_call_out.go | 20 - x/crosschain/keeper/bridge_call_out_test.go | 95 -- x/crosschain/keeper/bridge_token.go | 27 - x/crosschain/keeper/genesis.go | 12 - x/crosschain/keeper/genesis_test.go | 132 -- x/crosschain/keeper/grpc_query.go | 53 +- x/crosschain/keeper/grpc_query_router.go | 20 +- x/crosschain/keeper/grpc_query_v1_test.go | 210 +-- x/crosschain/keeper/msg_server.go | 85 +- x/crosschain/keeper/msg_server_router.go | 24 - x/crosschain/keeper/msg_server_test.go | 72 - x/crosschain/keeper/outgoing_pool.go | 254 --- x/crosschain/keeper/outgoing_pool_test.go | 29 - .../keeper/{batch.go => outgoing_tx.go} | 106 +- .../precompile/cancel_send_to_external.go | 105 -- .../cancel_send_to_external_test.go | 458 ----- x/crosschain/precompile/contract.go | 2 - x/crosschain/precompile/crosschain_test.go | 1476 ----------------- x/crosschain/precompile/expected_keepers.go | 9 +- .../precompile/increase_bridge_fee.go | 130 -- .../precompile/increase_bridgefee_test.go | 758 --------- x/crosschain/precompile/keeper.go | 4 +- x/crosschain/types/events.go | 3 - x/crosschain/types/key.go | 2 +- x/crosschain/types/legacy.pb.go | 400 +---- x/crosschain/types/msgs.go | 67 - x/crosschain/types/msgs_test.go | 282 ---- x/crosschain/types/params.go | 1 - x/crosschain/types/query.pb.go | 516 +++--- x/crosschain/types/query.pb.gw.go | 202 +-- x/crosschain/types/tx.pb.go | 456 ++--- x/crosschain/types/types.go | 11 - x/tron/keeper/grpc_query_test.go | 20 +- 57 files changed, 836 insertions(+), 7553 deletions(-) delete mode 100644 x/crosschain/keeper/batch_fee.go delete mode 100644 x/crosschain/keeper/batch_test.go delete mode 100644 x/crosschain/keeper/genesis_test.go delete mode 100644 x/crosschain/keeper/outgoing_pool.go delete mode 100644 x/crosschain/keeper/outgoing_pool_test.go rename x/crosschain/keeper/{batch.go => outgoing_tx.go} (67%) delete mode 100644 x/crosschain/precompile/cancel_send_to_external.go delete mode 100644 x/crosschain/precompile/cancel_send_to_external_test.go delete mode 100644 x/crosschain/precompile/increase_bridge_fee.go delete mode 100644 x/crosschain/precompile/increase_bridgefee_test.go diff --git a/Makefile b/Makefile index b12a6b0e..150a24b1 100644 --- a/Makefile +++ b/Makefile @@ -142,7 +142,7 @@ lint-install: fi check-no-lint: - @if [ $$(find . -name '*.go' -type f | xargs grep 'nolint\|#nosec' | wc -l) -ne 31 ]; then \ + @if [ $$(find . -name '*.go' -type f | xargs grep 'nolint\|#nosec' | wc -l) -ne 29 ]; then \ echo "\033[91m--> increase or decrease nolint, please recheck them\033[0m"; \ echo "\033[91m--> list nolint: \`find . -name '*.go' -type f | xargs grep 'nolint\|#nosec'\`\033[0m"; \ exit 1;\ diff --git a/app/app_test.go b/app/app_test.go index 9bef81e6..d76f8903 100644 --- a/app/app_test.go +++ b/app/app_test.go @@ -21,6 +21,9 @@ func Test_MsgServiceRouter(t *testing.T) { sdk.MsgTypeURL(&legacy.MsgUpdateParams{}): {}, sdk.MsgTypeURL(&legacy.MsgUpdateFXParams{}): {}, sdk.MsgTypeURL(&legacy.MsgUpdateEGFParams{}): {}, + sdk.MsgTypeURL(&crosschaintypes.MsgCancelSendToExternal{}): {}, + sdk.MsgTypeURL(&crosschaintypes.MsgIncreaseBridgeFee{}): {}, + sdk.MsgTypeURL(&crosschaintypes.MsgRequestBatch{}): {}, } for _, msg := range myApp.InterfaceRegistry().ListImplementations(sdk.MsgInterfaceProtoName) { if _, ok := deprecated[msg]; ok { diff --git a/app/encoding_test.go b/app/encoding_test.go index 20bcdd5c..078a319b 100644 --- a/app/encoding_test.go +++ b/app/encoding_test.go @@ -43,7 +43,7 @@ func TestRegisterInterfaces(t *testing.T) { for implInterfaces.Next() { count2++ } - assert.Equal(t, 303, count2) + assert.Equal(t, 300, count2) typeURLMap := interfaceRegistry.FieldByName("typeURLMap").MapRange() for typeURLMap.Next() { diff --git a/app/interface_registry.json b/app/interface_registry.json index 3638e511..4a4253e7 100644 --- a/app/interface_registry.json +++ b/app/interface_registry.json @@ -219,7 +219,6 @@ "/fx.gravity.crosschain.v1.MsgBridgeCallResultClaim", "/fx.gravity.crosschain.v1.MsgBridgeTokenClaim", "/fx.gravity.crosschain.v1.MsgCancelSendToExternal", - "/fx.gravity.crosschain.v1.MsgCancelSendToExternalResponse", "/fx.gravity.crosschain.v1.MsgClaim", "/fx.gravity.crosschain.v1.MsgClaimResponse", "/fx.gravity.crosschain.v1.MsgConfirm", @@ -229,14 +228,12 @@ "/fx.gravity.crosschain.v1.MsgEditBridger", "/fx.gravity.crosschain.v1.MsgEditBridgerResponse", "/fx.gravity.crosschain.v1.MsgIncreaseBridgeFee", - "/fx.gravity.crosschain.v1.MsgIncreaseBridgeFeeResponse", "/fx.gravity.crosschain.v1.MsgOracleSetConfirm", "/fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse", "/fx.gravity.crosschain.v1.MsgOracleSetUpdatedClaim", "/fx.gravity.crosschain.v1.MsgReDelegate", "/fx.gravity.crosschain.v1.MsgReDelegateResponse", "/fx.gravity.crosschain.v1.MsgRequestBatch", - "/fx.gravity.crosschain.v1.MsgRequestBatchResponse", "/fx.gravity.crosschain.v1.MsgSendToExternal", "/fx.gravity.crosschain.v1.MsgSendToExternalClaim", "/fx.gravity.crosschain.v1.MsgSendToExternalResponse", diff --git a/contract/ICrossChain.go b/contract/ICrossChain.go index 726708b1..fb569392 100644 --- a/contract/ICrossChain.go +++ b/contract/ICrossChain.go @@ -31,7 +31,7 @@ var ( // ICrossChainMetaData contains all meta data concerning the ICrossChain contract. var ICrossChainMetaData = &bind.MetaData{ - ABI: "[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_receiver\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_txOrigin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_eventNonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_dstChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"_tokens\",\"type\":\"address[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"_amounts\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_memo\",\"type\":\"bytes\"}],\"name\":\"BridgeCallEvent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"chain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"txID\",\"type\":\"uint256\"}],\"name\":\"CancelSendToExternal\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"denom\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"receipt\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"target\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"memo\",\"type\":\"string\"}],\"name\":\"CrossChain\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_eventNonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_chain\",\"type\":\"string\"}],\"name\":\"ExecuteClaimEvent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"chain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"txID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"IncreaseBridgeFee\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_dstChain\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"_refund\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"_tokens\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"_amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_memo\",\"type\":\"bytes\"}],\"name\":\"bridgeCall\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_eventNonce\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"_target\",\"type\":\"bytes32\"}],\"name\":\"bridgeCoinAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_chain\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_txID\",\"type\":\"uint256\"}],\"name\":\"cancelSendToExternal\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_result\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_receipt\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_fee\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_target\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"_memo\",\"type\":\"string\"}],\"name\":\"crossChain\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_result\",\"type\":\"bool\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_chain\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_eventNonce\",\"type\":\"uint256\"}],\"name\":\"executeClaim\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_result\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_chain\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"_externalAddress\",\"type\":\"address\"}],\"name\":\"hasOracle\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_result\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_chain\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_txID\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_fee\",\"type\":\"uint256\"}],\"name\":\"increaseBridgeFee\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_result\",\"type\":\"bool\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_chain\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"_externalAddress\",\"type\":\"address\"}],\"name\":\"isOracleOnline\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_result\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", + ABI: "[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_receiver\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_txOrigin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_eventNonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_dstChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"_tokens\",\"type\":\"address[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"_amounts\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_memo\",\"type\":\"bytes\"}],\"name\":\"BridgeCallEvent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"denom\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"receipt\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"target\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"memo\",\"type\":\"string\"}],\"name\":\"CrossChain\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_eventNonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_chain\",\"type\":\"string\"}],\"name\":\"ExecuteClaimEvent\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_dstChain\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"_refund\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"_tokens\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"_amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_memo\",\"type\":\"bytes\"}],\"name\":\"bridgeCall\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_eventNonce\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"_target\",\"type\":\"bytes32\"}],\"name\":\"bridgeCoinAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_receipt\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_fee\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_target\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"_memo\",\"type\":\"string\"}],\"name\":\"crossChain\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_result\",\"type\":\"bool\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_chain\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_eventNonce\",\"type\":\"uint256\"}],\"name\":\"executeClaim\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_result\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_chain\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"_externalAddress\",\"type\":\"address\"}],\"name\":\"hasOracle\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_result\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_chain\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"_externalAddress\",\"type\":\"address\"}],\"name\":\"isOracleOnline\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_result\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", } // ICrossChainABI is the input ABI used to generate the binding from. @@ -294,27 +294,6 @@ func (_ICrossChain *ICrossChainTransactorSession) BridgeCall(_dstChain string, _ return _ICrossChain.Contract.BridgeCall(&_ICrossChain.TransactOpts, _dstChain, _refund, _tokens, _amounts, _to, _data, _value, _memo) } -// CancelSendToExternal is a paid mutator transaction binding the contract method 0x0b56c190. -// -// Solidity: function cancelSendToExternal(string _chain, uint256 _txID) returns(bool _result) -func (_ICrossChain *ICrossChainTransactor) CancelSendToExternal(opts *bind.TransactOpts, _chain string, _txID *big.Int) (*types.Transaction, error) { - return _ICrossChain.contract.Transact(opts, "cancelSendToExternal", _chain, _txID) -} - -// CancelSendToExternal is a paid mutator transaction binding the contract method 0x0b56c190. -// -// Solidity: function cancelSendToExternal(string _chain, uint256 _txID) returns(bool _result) -func (_ICrossChain *ICrossChainSession) CancelSendToExternal(_chain string, _txID *big.Int) (*types.Transaction, error) { - return _ICrossChain.Contract.CancelSendToExternal(&_ICrossChain.TransactOpts, _chain, _txID) -} - -// CancelSendToExternal is a paid mutator transaction binding the contract method 0x0b56c190. -// -// Solidity: function cancelSendToExternal(string _chain, uint256 _txID) returns(bool _result) -func (_ICrossChain *ICrossChainTransactorSession) CancelSendToExternal(_chain string, _txID *big.Int) (*types.Transaction, error) { - return _ICrossChain.Contract.CancelSendToExternal(&_ICrossChain.TransactOpts, _chain, _txID) -} - // CrossChain is a paid mutator transaction binding the contract method 0x160d7c73. // // Solidity: function crossChain(address _token, string _receipt, uint256 _amount, uint256 _fee, bytes32 _target, string _memo) payable returns(bool _result) @@ -357,27 +336,6 @@ func (_ICrossChain *ICrossChainTransactorSession) ExecuteClaim(_chain string, _e return _ICrossChain.Contract.ExecuteClaim(&_ICrossChain.TransactOpts, _chain, _eventNonce) } -// IncreaseBridgeFee is a paid mutator transaction binding the contract method 0xc79a6b7b. -// -// Solidity: function increaseBridgeFee(string _chain, uint256 _txID, address _token, uint256 _fee) payable returns(bool _result) -func (_ICrossChain *ICrossChainTransactor) IncreaseBridgeFee(opts *bind.TransactOpts, _chain string, _txID *big.Int, _token common.Address, _fee *big.Int) (*types.Transaction, error) { - return _ICrossChain.contract.Transact(opts, "increaseBridgeFee", _chain, _txID, _token, _fee) -} - -// IncreaseBridgeFee is a paid mutator transaction binding the contract method 0xc79a6b7b. -// -// Solidity: function increaseBridgeFee(string _chain, uint256 _txID, address _token, uint256 _fee) payable returns(bool _result) -func (_ICrossChain *ICrossChainSession) IncreaseBridgeFee(_chain string, _txID *big.Int, _token common.Address, _fee *big.Int) (*types.Transaction, error) { - return _ICrossChain.Contract.IncreaseBridgeFee(&_ICrossChain.TransactOpts, _chain, _txID, _token, _fee) -} - -// IncreaseBridgeFee is a paid mutator transaction binding the contract method 0xc79a6b7b. -// -// Solidity: function increaseBridgeFee(string _chain, uint256 _txID, address _token, uint256 _fee) payable returns(bool _result) -func (_ICrossChain *ICrossChainTransactorSession) IncreaseBridgeFee(_chain string, _txID *big.Int, _token common.Address, _fee *big.Int) (*types.Transaction, error) { - return _ICrossChain.Contract.IncreaseBridgeFee(&_ICrossChain.TransactOpts, _chain, _txID, _token, _fee) -} - // ICrossChainBridgeCallEventIterator is returned from FilterBridgeCallEvent and is used to iterate over the raw logs and unpacked data for BridgeCallEvent events raised by the ICrossChain contract. type ICrossChainBridgeCallEventIterator struct { Event *ICrossChainBridgeCallEvent // Event containing the contract specifics and raw log @@ -548,152 +506,6 @@ func (_ICrossChain *ICrossChainFilterer) ParseBridgeCallEvent(log types.Log) (*I return event, nil } -// ICrossChainCancelSendToExternalIterator is returned from FilterCancelSendToExternal and is used to iterate over the raw logs and unpacked data for CancelSendToExternal events raised by the ICrossChain contract. -type ICrossChainCancelSendToExternalIterator struct { - Event *ICrossChainCancelSendToExternal // Event containing the contract specifics and raw log - - contract *bind.BoundContract // Generic contract to use for unpacking event data - event string // Event name to use for unpacking event data - - logs chan types.Log // Log channel receiving the found contract events - sub ethereum.Subscription // Subscription for errors, completion and termination - done bool // Whether the subscription completed delivering logs - fail error // Occurred error to stop iteration -} - -// Next advances the iterator to the subsequent event, returning whether there -// are any more events found. In case of a retrieval or parsing error, false is -// returned and Error() can be queried for the exact failure. -func (it *ICrossChainCancelSendToExternalIterator) Next() bool { - // If the iterator failed, stop iterating - if it.fail != nil { - return false - } - // If the iterator completed, deliver directly whatever's available - if it.done { - select { - case log := <-it.logs: - it.Event = new(ICrossChainCancelSendToExternal) - if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { - it.fail = err - return false - } - it.Event.Raw = log - return true - - default: - return false - } - } - // Iterator still in progress, wait for either a data or an error event - select { - case log := <-it.logs: - it.Event = new(ICrossChainCancelSendToExternal) - if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { - it.fail = err - return false - } - it.Event.Raw = log - return true - - case err := <-it.sub.Err(): - it.done = true - it.fail = err - return it.Next() - } -} - -// Error returns any retrieval or parsing error occurred during filtering. -func (it *ICrossChainCancelSendToExternalIterator) Error() error { - return it.fail -} - -// Close terminates the iteration process, releasing any pending underlying -// resources. -func (it *ICrossChainCancelSendToExternalIterator) Close() error { - it.sub.Unsubscribe() - return nil -} - -// ICrossChainCancelSendToExternal represents a CancelSendToExternal event raised by the ICrossChain contract. -type ICrossChainCancelSendToExternal struct { - Sender common.Address - Chain string - TxID *big.Int - Raw types.Log // Blockchain specific contextual infos -} - -// FilterCancelSendToExternal is a free log retrieval operation binding the contract event 0xe2ae965fb5b8e4c7da962424292951c18e0e9c1905b87c78cf0186fa70382535. -// -// Solidity: event CancelSendToExternal(address indexed sender, string chain, uint256 txID) -func (_ICrossChain *ICrossChainFilterer) FilterCancelSendToExternal(opts *bind.FilterOpts, sender []common.Address) (*ICrossChainCancelSendToExternalIterator, error) { - - var senderRule []interface{} - for _, senderItem := range sender { - senderRule = append(senderRule, senderItem) - } - - logs, sub, err := _ICrossChain.contract.FilterLogs(opts, "CancelSendToExternal", senderRule) - if err != nil { - return nil, err - } - return &ICrossChainCancelSendToExternalIterator{contract: _ICrossChain.contract, event: "CancelSendToExternal", logs: logs, sub: sub}, nil -} - -// WatchCancelSendToExternal is a free log subscription operation binding the contract event 0xe2ae965fb5b8e4c7da962424292951c18e0e9c1905b87c78cf0186fa70382535. -// -// Solidity: event CancelSendToExternal(address indexed sender, string chain, uint256 txID) -func (_ICrossChain *ICrossChainFilterer) WatchCancelSendToExternal(opts *bind.WatchOpts, sink chan<- *ICrossChainCancelSendToExternal, sender []common.Address) (event.Subscription, error) { - - var senderRule []interface{} - for _, senderItem := range sender { - senderRule = append(senderRule, senderItem) - } - - logs, sub, err := _ICrossChain.contract.WatchLogs(opts, "CancelSendToExternal", senderRule) - if err != nil { - return nil, err - } - return event.NewSubscription(func(quit <-chan struct{}) error { - defer sub.Unsubscribe() - for { - select { - case log := <-logs: - // New log arrived, parse the event and forward to the user - event := new(ICrossChainCancelSendToExternal) - if err := _ICrossChain.contract.UnpackLog(event, "CancelSendToExternal", log); err != nil { - return err - } - event.Raw = log - - select { - case sink <- event: - case err := <-sub.Err(): - return err - case <-quit: - return nil - } - case err := <-sub.Err(): - return err - case <-quit: - return nil - } - } - }), nil -} - -// ParseCancelSendToExternal is a log parse operation binding the contract event 0xe2ae965fb5b8e4c7da962424292951c18e0e9c1905b87c78cf0186fa70382535. -// -// Solidity: event CancelSendToExternal(address indexed sender, string chain, uint256 txID) -func (_ICrossChain *ICrossChainFilterer) ParseCancelSendToExternal(log types.Log) (*ICrossChainCancelSendToExternal, error) { - event := new(ICrossChainCancelSendToExternal) - if err := _ICrossChain.contract.UnpackLog(event, "CancelSendToExternal", log); err != nil { - return nil, err - } - event.Raw = log - return event, nil -} - // ICrossChainCrossChainIterator is returned from FilterCrossChain and is used to iterate over the raw logs and unpacked data for CrossChain events raised by the ICrossChain contract. type ICrossChainCrossChainIterator struct { Event *ICrossChainCrossChain // Event containing the contract specifics and raw log @@ -998,159 +810,3 @@ func (_ICrossChain *ICrossChainFilterer) ParseExecuteClaimEvent(log types.Log) ( event.Raw = log return event, nil } - -// ICrossChainIncreaseBridgeFeeIterator is returned from FilterIncreaseBridgeFee and is used to iterate over the raw logs and unpacked data for IncreaseBridgeFee events raised by the ICrossChain contract. -type ICrossChainIncreaseBridgeFeeIterator struct { - Event *ICrossChainIncreaseBridgeFee // Event containing the contract specifics and raw log - - contract *bind.BoundContract // Generic contract to use for unpacking event data - event string // Event name to use for unpacking event data - - logs chan types.Log // Log channel receiving the found contract events - sub ethereum.Subscription // Subscription for errors, completion and termination - done bool // Whether the subscription completed delivering logs - fail error // Occurred error to stop iteration -} - -// Next advances the iterator to the subsequent event, returning whether there -// are any more events found. In case of a retrieval or parsing error, false is -// returned and Error() can be queried for the exact failure. -func (it *ICrossChainIncreaseBridgeFeeIterator) Next() bool { - // If the iterator failed, stop iterating - if it.fail != nil { - return false - } - // If the iterator completed, deliver directly whatever's available - if it.done { - select { - case log := <-it.logs: - it.Event = new(ICrossChainIncreaseBridgeFee) - if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { - it.fail = err - return false - } - it.Event.Raw = log - return true - - default: - return false - } - } - // Iterator still in progress, wait for either a data or an error event - select { - case log := <-it.logs: - it.Event = new(ICrossChainIncreaseBridgeFee) - if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { - it.fail = err - return false - } - it.Event.Raw = log - return true - - case err := <-it.sub.Err(): - it.done = true - it.fail = err - return it.Next() - } -} - -// Error returns any retrieval or parsing error occurred during filtering. -func (it *ICrossChainIncreaseBridgeFeeIterator) Error() error { - return it.fail -} - -// Close terminates the iteration process, releasing any pending underlying -// resources. -func (it *ICrossChainIncreaseBridgeFeeIterator) Close() error { - it.sub.Unsubscribe() - return nil -} - -// ICrossChainIncreaseBridgeFee represents a IncreaseBridgeFee event raised by the ICrossChain contract. -type ICrossChainIncreaseBridgeFee struct { - Sender common.Address - Token common.Address - Chain string - TxID *big.Int - Fee *big.Int - Raw types.Log // Blockchain specific contextual infos -} - -// FilterIncreaseBridgeFee is a free log retrieval operation binding the contract event 0x4b4d0e64eb77c0f61892107908295f09b3e381c50c655f4a73a4ad61c07350a0. -// -// Solidity: event IncreaseBridgeFee(address indexed sender, address indexed token, string chain, uint256 txID, uint256 fee) -func (_ICrossChain *ICrossChainFilterer) FilterIncreaseBridgeFee(opts *bind.FilterOpts, sender []common.Address, token []common.Address) (*ICrossChainIncreaseBridgeFeeIterator, error) { - - var senderRule []interface{} - for _, senderItem := range sender { - senderRule = append(senderRule, senderItem) - } - var tokenRule []interface{} - for _, tokenItem := range token { - tokenRule = append(tokenRule, tokenItem) - } - - logs, sub, err := _ICrossChain.contract.FilterLogs(opts, "IncreaseBridgeFee", senderRule, tokenRule) - if err != nil { - return nil, err - } - return &ICrossChainIncreaseBridgeFeeIterator{contract: _ICrossChain.contract, event: "IncreaseBridgeFee", logs: logs, sub: sub}, nil -} - -// WatchIncreaseBridgeFee is a free log subscription operation binding the contract event 0x4b4d0e64eb77c0f61892107908295f09b3e381c50c655f4a73a4ad61c07350a0. -// -// Solidity: event IncreaseBridgeFee(address indexed sender, address indexed token, string chain, uint256 txID, uint256 fee) -func (_ICrossChain *ICrossChainFilterer) WatchIncreaseBridgeFee(opts *bind.WatchOpts, sink chan<- *ICrossChainIncreaseBridgeFee, sender []common.Address, token []common.Address) (event.Subscription, error) { - - var senderRule []interface{} - for _, senderItem := range sender { - senderRule = append(senderRule, senderItem) - } - var tokenRule []interface{} - for _, tokenItem := range token { - tokenRule = append(tokenRule, tokenItem) - } - - logs, sub, err := _ICrossChain.contract.WatchLogs(opts, "IncreaseBridgeFee", senderRule, tokenRule) - if err != nil { - return nil, err - } - return event.NewSubscription(func(quit <-chan struct{}) error { - defer sub.Unsubscribe() - for { - select { - case log := <-logs: - // New log arrived, parse the event and forward to the user - event := new(ICrossChainIncreaseBridgeFee) - if err := _ICrossChain.contract.UnpackLog(event, "IncreaseBridgeFee", log); err != nil { - return err - } - event.Raw = log - - select { - case sink <- event: - case err := <-sub.Err(): - return err - case <-quit: - return nil - } - case err := <-sub.Err(): - return err - case <-quit: - return nil - } - } - }), nil -} - -// ParseIncreaseBridgeFee is a log parse operation binding the contract event 0x4b4d0e64eb77c0f61892107908295f09b3e381c50c655f4a73a4ad61c07350a0. -// -// Solidity: event IncreaseBridgeFee(address indexed sender, address indexed token, string chain, uint256 txID, uint256 fee) -func (_ICrossChain *ICrossChainFilterer) ParseIncreaseBridgeFee(log types.Log) (*ICrossChainIncreaseBridgeFee, error) { - event := new(ICrossChainIncreaseBridgeFee) - if err := _ICrossChain.contract.UnpackLog(event, "IncreaseBridgeFee", log); err != nil { - return nil, err - } - event.Raw = log - return event, nil -} diff --git a/docs/statik/statik.go b/docs/statik/statik.go index 132c98f4..1da8bb75 100644 --- a/docs/statik/statik.go +++ b/docs/statik/statik.go @@ -8,7 +8,7 @@ import ( func init() { - data := "PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x00 \x00favicon-16x16.pngUT\x05\x00\x01\x80Cm8\x00\xbd\x01B\xfe\x89PNG\x0d\n\x1a\n\x00\x00\x00\x0dIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\x00\x00\x00\x1f\xf3\xffa\x00\x00\x01\x84IDATx\x01\x95S\x03Luq\x1c\xfd\x8c\xf1\xc3\xec0\xa7)\xcda\xb6k6\xb2\x9b\xf9\xb2k\xc85/\xdb\x8dqx\xc6\x94m\xcc{\xef\x7fO\xff\xf3l\xdc\xed\xf2\xe0\xfe\xf8\xc9\xffP\x14\x11/\x14[\xa3P\xc4\xa1\xbc?\xf1t>7\x12s\x13\x03\x85\xca7IR a\xb5j\x8f\xa71\xbe]\x88\xf6\xb9L\xf0\x1c\x93\xcf\xda\xe3)\x10\x93f\x8d\xe4\x06\x13\xcf\xde<\x9b\xd14\x95\x8a\x92\x81OA\xcfF\x89\xdd<\x9b M\xe6}L\xe4\x07\x15\xc5\xf5\xe3\xffI\x0c{\xd6\x8d\xffs\x994\xbasfh\xae?\xafk\x1aprw\x10 <\xb9\xdb\xc7\x86\xa6\xd1\x19I\n\xa8\xb1\xd7\x84y3g\x171T$\xb5c\x7fq\xfbbq\xbfk\x8e'\x1dQ\xb0\xc2,\x92\x0bx|;F\xe5\xf0\xef\x00\x83\xf2\xa1\x1fx|?q\xbd\xcb\xc2\x16\x80ZF\xf0\xc4J\xf3\xe3\xe4n1\xcc\x17k`:}\xcby\xe8\x98\xcbB\xc7|6z\x97r\xd14\x9d\x06\xd3\xf9\x8a\xe4\x94\x90\x8b\xb6\xd9\x0cP\xebc@\xd0|\xbe*\xc94\xc8\xa7\x98'\xcdh\x00\xe3\xd92\xa6vK}\x0cB\xa4\xf0+D\n\xc7\x81)\xb0\x10\x9a\xe3\xa9\xd8\x8bx\xe4(\xa2\xbb\x8dl\x0d\x01\xb6\x8a-\xf378\xbe\xdd\xc7\xa6\xb6\xc9\xd9\xc6d\xd8\\m\xf4\x0c\x92 uQ\x0e\xd2\xf5\xb3\xd1\xf1w\xdfQ\x16\xb34a$\xa1\xc4\xc4(V\xbcF\xd9\xdf\xa4\x91\xe9\xb0&,\x12+\xcd\x93\xcf\x1c\x1cb\xdc\xca\x00qt\xeb\xcc-\x14\x89\xfe\xfc\x0fm2j\x88\xec\xccs\x18\x00\x00\x00\x00IEND\xaeB`\x82\x01\x00\x00\xff\xffPK\x07\x08\xd4`4t\xc7\x01\x00\x00\xbd\x01\x00\x00PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x00 \x00favicon-32x32.pngUT\x05\x00\x01\x80Cm8\x00u\x04\x8a\xfb\x89PNG\x0d\n\x1a\n\x00\x00\x00\x0dIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\x00\x00szz\xf4\x00\x00\x04|ID\xc4\xcf\xd0@\x04&%\xad\x1e\x16\x0f\xf7\x8d\x97AR\xfa\xca\xe7l\x87\x05\xf8\xd2\xfb\x0c\x84\x1d\x0dLVY\xdc/ju\x13\x1a\x88\xd2\xa0\xaaa\x82|nzp_\xf4\x03\xc8 \xd4;^\x8a9}\xeeu\x9a\x91 `\x04\x14s\xec\xe1\x0c\xc6]\xa3\x05``\xd1w\x12*~ \x00\xf3\xae\xd3\xa0\x9cb\x82\xa2bx(\xb3n\x1fqx\xd2\xf2\xda4\x1d\x8a}\x1ck\xd4>\x9cI+\xeb\xb3\xf4k\xc8u`L\x93\xf3]4\xb5\xd0\xc3\xe33\xd9\xee\xd7\xf2\xd9\x19\xea\x18\xc9\xc1Y:\x18\xfb(-\xadN\x82\x06e\xd5\x1f0\xa2\x1dV\xf8\xbe0\xc1\x985\x01\xf8\xd2~\\\xa6\xa5\xb5)&\xf6\x98V\x80l\xe4\x03\xf8\x03\x04\x00s\x9a^\xec\x85\x00\xf4+\x0b\x00\xe1:G\xf2p\x96\x0e\xc4,\xe46\x1e5\xbbP\xdd\x15J\x80}\xce\xa4\xe2\xc8{m\xa4\xe2\xc3\xc2\x01\x07\xc0\xdb\xa4\x18-\xa1\x931\xba\x10S\xfa%\xb6P`\x10\x19v\x99#|Gg\x9b \x10W\xf6\x8dI1\xba\x92\xd66\x17E\x12\xfa\xd9\xa8\xf3UTe\n\x1b\x95\x9d\x81f\xe5\x18\xa5umc\x81\x86\xa6\xeb\xec \x804\xcbg\x17\xa19\xfa\xc6\xf7<\xa3\xbd\xf2\x0e\x7f\x02\x80\x97Y\xc7\xac\x184$h\xa3v\xba! \xcc{\xcd\xb4!\xb1\xd8\x92%h\xe3\x93\xdc\xd3_\xda1\xe6\xaei\xcf\x83\xa6p\xbc$\xf0\xb2\xda\x94\xa2q\x14B@\x13\xdb\xff\xf3\xd7\x0d\xfaA\xb9\xc5n{\x8e\xd6Y\x08\x01u\xc1'~\x16\x8e\xe9\x04\xa2\xfbA+\xc74\x0c\x98\xab\xd7:\xfc0\xd1v\xaf$\xa2#\xb7\xf1\x08\xfdm!OXh8\x10j|g\xd1\xe0a\xb2\x99\x04\x9a[y\x9a\xbdk\xf24C$\xa0\x9e#\x9f\xa3\xa8\x001\xc6\x1a\"\xc0\xe4i\xa6\xcc0\xf3\xf7\xb7\xf5XE\xb8\xe0\xa1\xc9\xc2\x0c\x90\x83\x80$\x838\xdf\xd6\xe3\xd4\x82FNG\x0f\x876\x8a\xbf1\xa8d(\xa7@\x8cQX\x90\xdb\x19\x9f\xc5YG\xe9\x9e\x00\xa5y3]\x9aJ\xe1\"\x00\x00\x00\x00IEND\xaeB`\x82\x01\x00\x00\xff\xffPK\x07\x086B\xc8\xd7\x7f\x04\x00\x00u\x04\x00\x00PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\n\x00 \x00index.htmlUT\x05\x00\x01\x80Cm8\xacTmk\xdbH\x10\xfe\xee_1\xd9|Hrd\xa5\xbc\xdc\x85C'\x99#\x97+\x0d\xa44\x90\xf8C)\xa5\xac\xb4#y\xea\xd5\xae\xd8]\xf9%!\xff\xbd\xe8\xcdJ\xeb\xd0\x96P\x0c\xd6\xe8y\xc6\xcf\xcc>;\xe3x\x8fsx{\xff\xee\x06rc\xc1y\xe1)\x03I\xce[JkOFCZk\xa9\x10\xd2\x9a\x94\x04\xce\xa7\x93x\xef\xea\xfd\x7f\xf7\x1fn\xff\x87\xb9/\xd5t\x127\x0fPB\x17 C\xcd\xa6\x13\x80x\x8eB6\x01@\\\xa2\x17\x90\xcd\x85u\xe8\x136\xbb\x7f\xc3\xfff=\xe5\xc9+\x9c\xde\xadDQ\xa0\x85\xd9u\x1cvH\xc7*\xd2\x0b\xb0\xa8\x12\xe6\xfcF\xa1\x9b#z\x06s\x8by\xc2\xe6\xdeW.\n\xc3ZW\x8b\"\xc8L\x19\xbaN\x85\xd7\xc4\x9b\xf6\xff\xfd3\xf8+8y\x86\x06\x99s\x0c\xc2\x1dm\xca\x8cf\xe07\x15&\x8cJQ`X\xe9b(\x93\x8be\xc3\xf3\xf3\xb3\xf5\xf9Y\xd0\x12\x8e\x1e\xd0%\xacE^\xadwz\xb1>\xbd\xf8F\xafEF\xbd\xf6\xc4]\x0c\xad\xcd}\xf8\xd8?\x01R\xb3\xe6\x8e\x1eH\x17\x11\xa4\xc6J\xb4<5\xeb\x7f\xb6\xbcY\xa2\xcd\x95YE\xc0K\xf3\xc0]f\x8dR\xa9\xb0\x8e/\xd1z\xca\x84\xda\xcd\xe5\x9b\x08\xba\xc4\x81{\x9a\xf4\xc1\x1f\xc7C\x10\xa5\x98\x1b\x8b\xe3\xbb\xc8=\xda\x1f\xf6Gz\x8e\x96\xfc\x8ehj\xe4f\xe7\x87\xa5\xb0\x05\xe9\xe8dl/\x15\xd9\xa2\xb0\xa6\xd62\x82\xfd\\4\x9fQ\xaa\xf9\x8e\xc3\xad_q\xd8\x8d^\x136\xf2\xbd\x9f\x92\x96@2a\xe3<\xb0i\x1cJZ\x0e~g\x96*\x0f\xcef\xaf\x99-\xde\xedH\xf0\xc51\xc8\xacq\xceX*HO\xe3\xb0\xd3\xfd=E\x9c\x17Z\ne4\xf2\xca\xa2C\xffk\xf5\xba\x97\x15iiV\x81\xd1\xca\x08 \xe4\xb5\xce\x9a\xf5><\x82\xc7\xe1:\xc2\x10.\xdb-\x17\xe06\xcec\xd9\xe3\x99\xd1\xceCM\x90@\xbf\xab\xb3\xeb\xcb\xf6\xc4\x87\xe3\xb5\xd5VE\xc0\x82\xa1\xe1`#J\xc5\x8e\xb7\xb44\xe5g\x92\x11\x1c\xec\x8f':xF#V7\xa4\x17\xed\xb8x[\xe3Hugu\x11|\xdcB\xf0}\x1fA\x9f\x14\x88\x8a\xdc\xf1Kyw[\xf3n\xdb\xd4m\xce\xa7g\x95T]\x90\xfeY\xa5.)\xb82\xab\xd6\xcb\x99U/i)\xb11\xb5\x8f\x80\x8d\x85oZ\x88\x0d\x93{4\xd8\xde_M\xeboM-\xf8\xd4N\xf2x\x7fq\xd8\xcdr\x1cv\x7f\xb9_\x03\x00\x00\xff\xffPK\x07\x08R\xb2\xb0\x8fo\x02\x00\x00\xb6\x05\x00\x00PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x00 \x00swagger.yamlUT\x05\x00\x01\x80Cm8\xec\xbd\xfb\x93\xdc6\x96\xef\xf9\xbb\xfe\nlG\xec\x95_\x1c\x8a\x1b\xba\xdd\xb2\xf2\x15y\xfa\xc5\xd9\xcb\xa7O\xb2b\xc3_=!Df2g\xaf\xc8\xe6\xf6\x82\x97\x8c|x\xfb\xe3GB\x8b\x94l?\xbc\xbf \xdfQ\xc9n\xe8\x1dIy\"\x9e\x10\x922\x91\x94\xd9Af\xbcxE^\x9b}\xb3B\xb2rC\x13F6\xbc$BR\xc9\xc8/\x15+3&\x9e\x93\x9cmirGdI\x0bA\x13u\x9c*\xe6\x9a\x95B\x17\xf1\xf2\xec\xab\xb3\x97Ov\\Hu\xfe\x17%\x13\xf2lS\x15z\xc7\xdb\xb3\x8c?\x11\xc9\x8e\xed\x99P\xd5|AvR\x1e\xc4\x93\x03\x95;\xfd\xc39\x93;V\xee\xb3B\x9eo\x18\xdb\xd3\xf2\x8a\xc9\xf3\xeb\xcf\xcf\xd7T\xb0\xd5\x861\xb5\x0f![&\xcd\x1f\x84\x88j\xbf\xa7\xe5\xdd+\xf2\x86\n\xf6-k\xaaI\xe4\x8e\x11u\x14\xd90F\xf8F\xff\xfb@KVH\xb2\xceyrU\xff\x96Te\xfb\xe3\x99-\x95\x1fXIU\x85/\xd3\xa6d\xbb\xa9d\xe2\xc0\x0ba\xeao\xec\xe9\x17/_>m\xffy\xe4RQ% \x13bS\xe5\xcd\xd1g\x9d\xbd\xb5?h\xf7xB\xe4\xdd\x81\xbd\"|\xfd7\x96\xc8\xde\x86C\xa9\xea&\xb3\xee\xf9\x8d\xf5]\xd45S\x98\x90eVl\x8f7\x9a\x9eR\x1fM2\xe3\xba\xb7\x97\xef?\xff\xfa\xeb\xff\xd9\xb8\xb0w\\\xaf}\xffO\xc5\xca;\xeb\xa3\x0f\xb6y\xa4d\xb2*\x0bwQm\xdbS\xb6\xa1U.\xfd\xae+HU\xb0\xdb\x03K$K +K^\xde\xa7\x07\xf5 &\xb9/\xe1\xa9\xd7\xdf\xea\x1e\xda\xb2\xf2h\xeb\x86\x97{*\xf5\xf6/\xbf\x18l\xdd3!\xe8v\xda%L\x99\xa4Y~\xd4\x98\xfa\x18Z\x96\xf4\xeeh[&\xd9\xdeqH\xc0m\xc6\xfc\xcek\x0f_Ue\xee\xde:\xd2\x15\x95]\xd3\xbcr\xb4\xdf\xd8\xe8\xd1\xadw\xd7w\xb2\xee\xb3\x92n;\xb5}a:lh\xacQ#\xc1jKE`\xb0Q\xbb|GEo\xb4\xd9RA*\xc1RB%\xa1d\x9b]\xb3\xc2\x0e5;\x96mw\xb5;\xfbc\x8b-\xc8n{\xb4\x83K\xe3\x8d\xae\x05/G\xa7\x9b\xff\xf1\xab\xe3C\xcd\xa8\xa3\\f\x07\x1c3b\xb0\xd4\xbal\xdb\xf8\xc4\x98c\xc8\xb1\xae;\x1as\x9a\x02\xcc\xd5PO\xb0\xfar\x98\x0b\x81\x01\x08\x03\xd0c\x1e\x80\x0e\xb4\xa4\xfb\xc0\xe8\xf3^o\xef\x8d=\xfa\x10&Y)\xd4\xbc\xe6\xb6-\x8f\xecyZ\xe5\xcc9\xb1\xf9\xb6\xde\xc9\x14hwy\xb4cP\xd7-]\xebU\xc6\xec\xa4n\xec\xac`\xda5\xeczo\x9d\xd0\xf1\xd2\x99\xa7\xb3z\xfa]\xb8\xd7\x15|\xe5\x9f|\x91\xa6\xec5\xe79\xa3\x85{\x0f3\x1e\xfe\xdb\x0bO\xaf\xea\x9cB\xf5\xb0\x845S\xab\x17\xbd\xb9\x15\x91\x9c\xbc$\xcf\n\xc6R3\xf4y\xca{I\x0ee\x960\x92\xd0<\x17\x9f9v\xaa\xcf\xb6Jv\xb4\xd8\xb2U\xca\n\xbe\xcf\n*]\x03\x14\x19\x1ds\xc8\xe8\x13\x81\x0c\xaf\xa4\xd7\x17\x81\xaa\x915\xaf\x8a\xd4\xf8\x86\xeeyU\xc8\xde{\x80\xa7\xc0\x84\x16\xc4\x94\xf5\xc4wJ&oX\xfd8wt\x1eBXN\x85\xcc\x92L\xde\xad\xf6U.\xb3C\x9e\xb1O\xee)g\xa5\xba>\xda\xd3\xdbl_\xed\xf5\xc32\xcf\xf6\x99$\x9e\xfeI:]M?^\xf7\xf4\xce\xe7\xac\x1d\xbdfN\x17\x15t\x9d\xb3\x95y\x06\x87\\\x13\x18_\x17\xf3L\xb7.v\xb4\x10j\xe2v\xb3\xcb\x92]o\xda\x16\xd7\x83\xf2\xa4\xca\xf5\xc0\xaa\xe63\xa6\xf4\xd4\xe5\x84\x98\x81\"\xd0\xfe^\xeb\xba#\xc2\xe0\xfa8\xfb\xe8>+\xd4\xb4v\xa5o\xfd\x99\x15\x18\x1b\xa8z\xe7h\x1c\xab\xfbZV4}\xcdl\xd5\x8f\xda\xc0 \x95p\xb1\xe7B\x07.\x98\xdc\x0d\x03\x0eC\xab\xcf\x1cw\xfb-\xd0D\xcf-\xd5i\xa6\x9e\x7fJN\xd6\xde~\xb3\xa3\xe5\x96\xa5\xbe;Ir\"X\x91\xaa\xa7\xba\xba\xd6)\xe1E{\xab\x1e\x1dc\xeb\xfd\xbe\xfb\x04\xb4\x8f\x89\xbf~\x7f\xfc\x08\xec\x1d\x1f\xbek\xf4\x84\xc5\x94\xdb\xcc\xb6\xbb\xe5\xd7\x0f}\xed[\xdd\x1b\xd5\xdc\xe4.+\xb6\xe4\xf6\x9c]\xef\x07\xc5\xb9\x1e\xc3\x98\x89\x0f\xb6b&\xfeif\xe2\xecz\xaf\xe6\xe04I\xd4\xf4\xe1\xfcW\x9a\xa6%\x13\xe2\x9f\xfe\xe9\xf8k\xb3k3\x1f\xa7\x05y\xab\x8ac\xd5\x9e\xd8b\x9c\xd3\xef\xb7rg\x0f\xb5[\x1f\xed\xcc{MsZ\xb8\x1e\x19\xc1\xab0xV\xe9\"\xea\xb7\xfd\xfa\x9f6\x08\xab\x06\xa8f\x1a\x97\xf1b\xf8\xf4R7\xd7jG\xc5\xee\x94*4\x85\xd4\x95\xd8\xb1\xdb\x17\xa6\x93\xa81Em\xd6}E\x90M\xc9\xf7\xa6^\xef^\x0f\xabR\xf0\xe9\x9e\xa8{b\xe5\x9e\xb6\xf4j\xa9\xcb\xafkh\xbb\xcfSA\x04\xfb\xa5bjKQ\xed\xd7\xac\xec\xd7*b\xf4\xb6=\xad\x19\xbe3\xdf\xc8\xad~\xd5G\x9c\xf7;gm\x1f\xde_\x90=\x93;\x9eb\xf0\xc6\xe0\x1d\x18~\xe3&\xe2\x84\xbc&?}\xf8\xcby\xc9\x04\xafJ\xd5\xbf\xe9^\xbd\xb7SI\xaa\"\xfb\xa5b\xf9\x1d\xc9RV\xc8lS\xc7:tW\xe5\x1bo\x81j\x1f\xc1\xca\x8c\xe6\xd9\xdf\xfds+\xed\x03\xc9\x13\x9e\x93u\xb5\xd9\xb0\xb2\xbehg\xe4\xe3.\x13\xb6md_ I\x12^H\x9a\x15\x84\xba\\i,gTH\xff\xb9x\xc1\xc8\x1f\xce\xff\xa0'|4\x91\xacTgaD\xbd\x9f\x11\xc1\xb6{V\xc8z,\xfc\xe9\xc3_\x9e\nr\xa0r\xe7-MW\xaad\x87\x92 V\x04\xce\xaa\x8a\xdbTy~G~\xa9h\xae<\x98\x1a\xff\xdaSiO>\xa3\x82d\x85\xbf\x90\x9fUU\xce\xb7\x9cosv\xa6}\xb6\xae6g\xdfT\xe6A\xf6\xf3g\xa6%\xbaX\xb1\xe3U\x9e\x925S\x05\xfa\xca\xa3\xea}\x9b\x17YBs}\x0f\xf9\xcf\xfc\x8c\x9dm\xcf\x9e+\xd7\xa6\xeaR\xfc\xe1\xec\x0fj\xd8*\xb8T\xe3\";H\x96~v\xf6\xc4\x7f\xf8eA\x0e\xca\xd9Y\xc2\x9e\x13\xc9\xd4\xa4\xb8\x12\x15U\xee8\x94,\xe1\xfbC\x96\xab\x9aJn\x1eIYA\xcb\xe3;\xac6\x9a\xe7\xda_\xc2tN\xb9c\xde\x17`B\xccXG2\xa9\xa6\xf0\x95\x1an\x0b\x03\x1by!\xd9\xad\xbe\xd4\xaf\x8b\xbb3\xf2g~\xc3\xaeY\xf9<\xf0\x12DT\x87\x10\xf6\xbdT\x15%w\xde0\x85\x1dA\x19\xf9y'\xe5\xe1\xe7\xe7\xe6\xff\xe2\xe7\xe7\x84\x97\xa4\xe0v\xebs\xdd\x1b\x13Z\x10\xae\xefN\xe5\x11\x7f\x81L\x92\xea@\xa8n{\xe0\xbc\xac\xbcf\xa5q\xcd\x9e\x1e\x84\xe9Z\xba\xe6\x92\xd7w\x96yg\xc8\xf4\x0b\x1c\xa1\xaew8c\x1b\x9e\xe7\xfcF\xbc\n\\\xdb\x7f!\x97\x9b\xb6E\xaa[\x1cJ~\x9d\xa5,m\x1a\xad~\xa4BT{\xf5\"\x1e(\xe8uA\xfe\xfc\xf1\xe3{\xf2\xdd\xdb\x8f\xea\xfd\xca\xde\x82\xe6\x1e\xbb\xcbX\x9e\x12\xea=\xfa?\x86\xb7\xc5\xc7\xbb\x03\xfb\xcf\xff\xf8O\xef\x01vV\xab\xfa\x83\xe9o\xf61\xa2\xaf\xd0\xa1\xe4i\x9505\x81\xd4\x8f0\xd7;\xbc\xb1\x7f!\xaf\x0f\x87\xfb\xcc\xdf\xa3~\xe0\x92\xbd\"R=Cj\xd9\x03\xd5\xed\xb0c\x97\x15\x1c\xe4w\x84^\xd3,\xa7\xeb<8\\\xaa\xfe\xc87\x9b,\xc9h>\xf2,[W\x1bR2\xf5$b\xcfu\xd4$\x93\xf5I\x1b\x12\xd6\xdc\x97\xde\xa2\xd6l\x9b\x15\x85j\xecM&w\x81\x87\xcb\xdd\x81\x9d\x99\xfeO\x0f\x998K\xf8>4\x1a\xffhT\x1f\x84\xabW#5P\x14\xc3Q\x8a<\xb3\xd3O\xb6?\xc8;{k\xbbb\xd3\xc6\xf6:8\xb7\x0e\x0cJ\xba\xd1\xaa\x11$\xdb\x1fr\xa6\x1e\xb2&D'\x0e,\xc96YB\x04\xdb\xd3Bf\x893\\v/o\xa0C\x8b\x9d%}\xaf\x86\xa35#TU*K;\x13\x9c\xa3y\x8c}\xb8\xd35\xbf\xf6\xf7i\xeb\x02{+\xb8\x9a\x1fS\xb3\x9f_\x17w?\xd7\xd3#\xfd\xe6K\xcbu&Ku\x13\xfbk\xe8,\xaa~F\xd0\x9c\xdb\xaeG\xa8\xfb\xd2\xaa\xd1Y?hL\x0d\xd7\xfdi\xe1`\xfa\xd7\xcc\xea<]\xf3}}\xe3\xe4\xd9ZW\xdb>G\x04\x11\xd5\xe1\xc0K\xfd\x04?\xd0\xe4\xea\xbc*\xd4\xff\xd4s\xdb\xf4\x0b\xf7\x1dd\x1f\xf4\xfe\x89\x0d\xdf\x90J\x9a\x81\xad\x1e\x1e\x84\x1aXi\x9aff\xac [V\xb0\x92J]y\xf5\xa2%l\xb3\x9c\xe5\xa9\xfa\x98K\xe8>\xdf\xdb[\xaa:?\xf9\xfc\x15y\xaf\xea\xaf\xc6\x05\xdb\x14\xda8=+\xc8\xc5\x7f\xff\xef\x81\xc7\xe4\xb7\x9c\x93\x0d\xe7\xe4O\xe4\xec\xec\xec\xff\xf2\xee\xa6*C\x8b;\xff\x0e\xb4\xb8;S\xd5\xf8\xb6\xe4\xfbg\x1b\xce?\xf3\xefzv\xe6\x7f\xfee\x1b\xf2L\x15\xf5\x93n\xc8G\xfe\xec\xbf\xa9\xb2>#\xbf\x06\xc6\xf0Py\xff\x0c\xfb\xee\x8b\x11\xdf\xfdozM\x17s\x1e\xf9\x93\x9e\x1b\xaa\xb3,\xe0\xa1L<\xfb\x96\xf3\xb3$\xa7B\x8c8\xc8TQ\x1dd\xda\xd89\xd0_\x87\x7fz\xb7\x9c\x9f\xabn\x1dW\xc7\x1f\xe9\x9e\xa9\xa9\xd3kS\xdb-\x93\xdf\x98\x90\xc2e!$-\x12\xf6\xec\xb39\x95w\x96\x13jK\xb0\x17|9\xd2\x0b\xde\xdf\xc9\x1d/\x02\xfd\xc0\xd4\xf1[\xce\x9f\x9d\x9d\x9d\xf9\x1flM\x1fx\x16\xdcG\xdfG\xba\x87\xcc\xed \xaa\x90K\xe3\xf1o\xde\xfex\xf1\xe1\xf2\xfd\xc7w\x1f>\xf3=\xef\x88=\xad\xb9\xe7\xc2'6\xa7\x0ez\xf3\xab\x11o~\xc7\xfd\x8e\xd4\x9e|\xf5'\xf2\xdf\x0e\xeb\xb3o9\xff\xf5\xec\xec\xcc\xdf\x0fU\xa5\x9f\xab \xb5:\x82\x16w\x87\xf5\xd9\x0f\xecf\xa4\xfe\xd9F\x1f\xf1\x7f\xfc\x89\x14Y\x1e\xecxA'\x07n\x8f\xf0q\x83\x06\x06\x8a\xb155m;\xfb\xa9\xd8\xd3R\xech\xfe\x91\x9b\xc1c\xa9f8\xb7}\xd4\xca\x93\xe4\xaayN\xd5/ad}\xd7NI\xeb'\xebM\x96\xe7d\xed~#\xb0\x11D5es\x9f\xea\xa9c\xbay\xbe\xa9\xf2\xfcLoPS\xf9\xa7\x84vf\x02j\x96\xa0\xfa\x96\xef\xb9i\xfa\x9c\xfbd\xcdc\xb7\xc8\xef\xeaw\xee\xa3@J\xf3\nA\xe8F\xea)\xad\xfbD:\xc6\xf3\xf4\xfc\xa9\xfbTv\xbePWYG\x02\x08\xb3\xf7\xc8\x1f6\x9c\x9f\xadi\xa9\x1b{{~w\xf6\xf7?\x18/\xea\xf7Rgy\xfe\xd7t]\xd5?\xa82|S\x85\xff\xfd\xe3\xbb\x1f<\x9b\xd4\x95V\x9b\xdb\xa8\x93\x99Is5\x8a\xd8i\xa0y\xb3\xadD\x03\x05\xb7UNKwy\xc7\xc5\xa8CR\xd6N\xdc\x9e\x13\xb6_\xb34m\xa7p\xcf\xcd\x0b\x89\xab8\xea\x89_u&U\x1b\xfd*\xff\xf3\xff\xad\x1c\xf4\xb3\x0d\xa74\x13\xd7\xee%p\xdf\x06v\xd8z\x15x\x05\xa3\xc9\x95\x1a\xbb\xda\x90\xc0&\xcb\x99\xffiS\x8fu\xefY)x\x11\xbc9m,r\x93\x95B\xae\xf4u\xfc\x13\xf9\xdc_rs\x80\xeaz\xf5\xfe_L~\xee)\x0b\xd5\xea\x0f\xda\x97\x7fxE\xfe\xe0\xba7\xfbn83\xad\xfc\xc3\xf3Py\xba}?\xd0\xbd*\xf3\x7f\x99&\xfc[\xf0\x00\xd5\xbe\xc1\xfeS\x1by\xb9\xb1\xaf\x9c\xfd\xbefzC&\xc8\x0d\xcb\xf3\x17W\x05\xbf)\xf4h\xb2\xa3\x82P\x92TB\xf2!\xd56f\xee!\xd7\x96~\x97\x7fn^a\x06\xf7\x81\x19\";\xd5Q\x1d\xd8\xf3zIM\x97v\x9f\xecg}3\xd6\xfd|\xc7s\xabN057\xb7rV4\xf7\x0711PwQ\xe6\x96q\x9fGW\xe1\xacy\xa8?S\xa3W\xed\xc2\xa3\xe0X\x1d3\xfe\xcf\xff\xf8\xcf\xcf\x027\xd2\x12}\xae\x7f\xc2p\xb7\xd3\xaeRE~~\xf6\xc5\xe7_\x88?\x04\xba\x90\xf9\x7f\xab_\xe8\xb2du\x9f\xbd\"\x16\x17w\xca\xe8\xbdG\xdb\xcd5~c5'\xde\xb1\xdbf\x9b\xe4F>A:\x04P=\x16\xba\x03S\xa6\xa5\x8e\xbd\xd1\xb0d\xbfTY\xc9\xd2WD\x96U\xf7R:\x02\x15\xf1\x1c\xdc\x82Z\x11\x03\xc2\xff\xd1\x06 \xdeX\xbe\xdb_\x8d\xd30_J\\\xd4\xd7J\xb5EVl\xf3\xb6\x01-&\xf7Qt{2\xbb\x15\x14\xddM\xd1# \xb1u\xe4\x14H\xdc\xf7}m\x80\xc4\xd6\x00\x89\x01\x89[\x03$\x06$n\x0d\x90X\x02\x12\xbb\x0d\x90\xb86@b@b@\xe2\xc8Y\x12 qc\x80\xc4]\x03$\x06$v\x18 1 \xf1\x98\xf3\x01\x89\xbd\xc7\x00\x12\xf7\x0c\x90\x18\x90\x18\x90\x18\x90\xb8g\xb1\xc0\x0e\x90X\x1b 1 \xf1tH\\s\xc0O\x07\x89\xc7\xb23\xfe[\x17\x0d/\x90\xa8\xf1y\xdb32\xbd<6\xdbg9-\x95[\x86\xa9\x8f\x9e\n\xfb\xa8~N\xd6\x95$4\x17\x9c$;\x96\\ \x92\xf3\"\xe5mTmG\xcbt\xc3\xcb+\x9d\xf0\xb2\x12~\xdc\x8c|\x90\xc8\x07 DL\x80\x88\xb5\x01\x11K b b b b b \xe2\xda\x80\x88\x1b\x03\"\x06\"\x06\"&\x93)'\x10q\xcf\xa69\x0f\x88\x18\x88\x18\x88\x18\x88\x18\x88\xb8k@\xc4@\xc4@\xc4@\xc4\xbd\x03\x80\x88\x81\x88?\x01\"\x8e\x07\xac O\xe3\x96\xe0^\xf0\xd4\xbf\xe86\xcfI\xc2\xd50\xd5]g\x1bLQ\xad\x8a\xb3\xbf?Z\xce\x19bn#\xf9\x98\x9d\xf1\x94\xa3\x9c\xd1\xed\xcde\xfb\xfe Q4-ZDo\xafP\x7f\xec\xef\x95\xf8\x0f\xe7\xca[\xe5\xe8)\xcbn\xf5u\xfe\xf0\xfebP\x16\xd6\xdc\x02\xa8\x8eF\x13c\x02r\x04@\x15@\xd5\xbb'\x80\xaa6\x00\xd5c\x03P\x05P\xf5\x19\x80*\x80\xaa6\x00U\x00U\x00U\x00Uc\x00\xaas\x98$\x80*\x80jk\x00\xaa\xc7\x06\xa0\n\xa0\n\xa0\n\xa0\n\xa0\n\xa0\n\xa0\xfa{\x00\xaa\x0f\xb9\xe6VS\xc0O\xb5\xe0\xd6|\x19}5\xe1#\xc5\x17\xfa\x88\x88O\x15?\x15v_\xf2\xba\xcf2\x07`\xb8S\xdc\x93\xba\xa9\x8f\x96\x10\x1bo\x99\xf6Lb\x7fG8\xb8[R\xddY\xea\xef\xd4\xdb_\xeb0O\x9f\xab\xd7V\x7f\xc8wb5\xa6|B\xb8\xf9V\xf0\xb4\xaf\x08\x93z\xc7\x95\xd9\xbal\x0d\xed\xba\xe2\xfe)\x065\xb4\xd5\xea\x1d\x1b\x91\xb6\xba\xd7\x19\xa3(\xba\xab\x94\xf3~\x9f\x1e\xec\x82\x8c\xd6\xd6@\xd7A\xd7[\x03]\x07]o\x0dt]\x82\xae\xbb\x0dt\xbd6\xd0u\xd0u\xd0\xf5\xc8Y\x12\xe8zc\xa0\xeb]\x03]\x07]w\x18\xe8:\xe8\xfa\x98\xf3A\xd7\xbd\xc7\x80\xae\xf7\x0ct\x1dt\x1dt\x1dt\xbdg\xb1\xa4\x13t]\x1b\xe8:\xe8\xfat\xba\xfe\xa9?{\xcc\x84\xcc\xf6T\xb2\xd5\x96\n?T\x7fk\xf7\xfa\x8e\x8a6\xd6b\x9a\xf83\x93\xbb\x15k\xb7\xffL\xcaCB\xe8!\xb3e\xf4\x93J\xb7\xfb=\xa9[\xf5HYz\xe3\x8f\xae\x05cBq\\xKE/It\xed\xbaTm\x19\x1cT29\xb3\x0e\xce\x88\x94\xad\x813\xd6S2\xd9\x82dU;\x96\x92\x94JjV~\xb3\xeb}\x13\xcd \xcfL\xc8Y\xbd\xfd\xa9=\x1c\x85\x89\xeap\xc8\xb3:8W\xb2kV:)\x16?$<=\n\x01^\xefW\xd3 o\xd3\xba\xfa\xe8\xe6\x16\xb44\xda\xb6i}G\xae\xf7\x84\xdd\xb2\xa4R\x8dy\xe2(\xa1\xd3I\x1b\xc6\xae\xc9\x06\x13\xbd\x1b\xa1\xee|M\x19\xc0\xe4\x83\xad\xc0\xe4qaV\x02L\x0eL\xee\xdd\x13\x98\\\x1b0\xf9\xb1\x01\x93\x03\x93\xfb\x0c\x98\x1c\x98\\\x1b0909090\xb91`\xf29\xa4\x19\x98\x1c\x98\xbc5`\xf2c\x03&\x07&\x07&\x07&\x07&\x07&\x07&\xff\xddc\xf2r\xebg\xe4\xe5V\xb4\xe3\xa3P\xf7\xe5\xdf\xd4\xado\xc2\x04\xf5\xd3K\xffdQ\xf2\x90\x8c\xffbqvm-\x1a\xdf\xd0\\\x8c\xb0q\xe2\x8bH\xd4u\xdfR\xb1J\xe8\xc1W}\xbb\xb9A\x82f\xc46\xcf\xed-\x15Dm3Q\xbaJ\xb0\xf4\xde\xaa>\xa0\xccu\xe5\x0f%?p\xc1\xca\xd5\x88Pa\xb8_\xfd\xecQ\xf5aB\xbdt\x9boRg\x85\xd6.\x98\xb3\xde[c\x9c\xd7!\xd9\xd1\xacXe\xa9\xaf \x83`L\xbd{\x03~\xb3\xc3\xe7_\x7fm~&Y\xaa\xba\xab\x8e\xfe\x95|\xefji\xaf\xac\x1d\xa3);\x12d,\xd6\\\xf7\xa5\xe3\xd7\xac,\xb3\x94y\xaf\x99\x90T\xb2v7\xc2\x8a\x84\xeb\xd1Q\xe8\xbb\xe5\xde\xaa\xdb\xb9:\x13\x84%r\xb7Jh\x9e\x07D%rwA\xf3\xdc)(QG\x86\x95$\xe6\xe0'u\xd3\x1e\xa9\x8adG\xc5n\x12\xfe\x0e\xab4Tq\xf5\x9d\xdah\x8bdI\x0bA\x8d6\xa3\x7f\xbb\x1a\x84\xab\x0er\x94\x95f\x9b\x0d+EsC\xb8\x9eD\x1fY\x91\x9a\xcbJ\xc4\x8e~\xf1\xf5\x1f{5\xe8\x9eX\x7f&\xe0\x8c\xfc\xc8\x9c\xe5\xe8\xc8\xf6\xab\xf3\xf3m&w\xd5Z?\xa4dSt\xf7\xcfL\x88\x8a\x89\xf3?~\xfd\xe5\xff\xf4\xc0\xc0\x92mX\xc9\x8ad\xf8\x94\xce\xf9\xf6\x91\x88\x06\xbc\xe97\x8cE\x04\xcc\xeb\x14\x12\xfd\xa1YM\xd3K\x9aH3ej\xa3\xa3\xba3\\\xb3\xc2M\xe5%?d\xc9He\xdc\xfe1\xe6\xf5\x92\xb1\x88\xd6\xf4nyV\xa4\xec\xf6\x84\xb3Oqy}:\xd7\xf0j\xe3#\xc73\x95\xda\xccEY\xc6W\xa3\xd7\xbe\xfb\x10\xb8\xaf+\xff\x90\x9e\xef\xb9=\xe7\xdbqw\x97l\xcf\xafY\x1a\xae\xdf\x9a\xf3\x9cQ\x1f\xd3\x8e\x01\x8b\xa4=\x95\xee\xb9e\xc5H\xb61T]\xd5\xf3F\xcb\x10\xafY\xa9\x9e\x03i\xc5\xb4\xe6\xc0Ly\xfd/\x96%\xe3\xe5\x96\x16\x99\xd0\x93\xa93\xf2\xff\xf1\xca\xc8<\x0e\xf4\x8eP)Y\xd1\xbe\x0bg\xc2F\x8c2\xbf\xd0\xec\x8eW\xa4d \xcb\xae\xb5\xf3\x84\xff\xccrW\xf2j\xbb\xd3\xef\xec\xb9d\xa5\x99\xa2\xce\xa5\xae\x7f\xe1\xdb\xee\x17\x8bh\xd1\xc6Zk\xe5D\xce\xda\xb4_jw\xf5\xe4t\x96U\xbf\xcc\xd1f\xd4v\xb7B9]?k\xb5^C\xd8\x07\xaf\x91\x9e\xb4Od\xfb\x00\xf8\xcb\xbb\xef\xac\xc4\x95\xd0\xc2\xdd\xcb\x85\xe4%K\xcfu\x07\xd4\x07\xbaO\xabJ+x\xea\xa5\x9b?\xbc\xfb\xf8\xb6\x99/<\xaf\x1f\xa8\xb4\xb0\x1a^U\xbbD\xcdp\x0bQ\xd9\x0b*t\x03<}[4*<\xb3\xaf'\xaaX\xaa\x17\xdf2\xbbf\xe9s\x92\x9d\xb13uU\x8d\x0c\xa6\xf6\x80\xaa\xb3xN\xd6\x95\xd4\xf2\x0b\xc1\x92\xaa4\xcdt\x15\xd8T\xf1\xb8G\x8c\xf7\x07\xd5\xf3\x06\x91\xcc\xc1\x18_\xc7\xc1M7y\xd1\xf6\x11Gi\xf5\xe4\xda\xd5ru\xa6a\x0d\xa1\xd4\xee[\xcc\x1b\xce Jm-\xcf_U\xc25\x02Gy=\xac\xd1w\xfa\xbd>c\xa3\x19\x11d\xc7o\xc8\xbeJv:\xee\xa3\xc6b\xd5\x83\xab}3\x028J\xe9t\xca\xc1\xd6\xd0\x13<\xaaM\xa1\x9ed\x1f\xb5\x9d'\xb6\xbe#6\xbc\xd4\xa1\x83\x17\xeaM\xdbh4{%\xf4n\xbb\xef\xc5\xb6\x1eL?\xde\x1e)\xe3U\xc9\xdf\x8b\xedy\xbbK?#]{\xc7@&?\xd8\n\x99|\xcc\x00o\x0c2y\xc8\xe4\xdd\x06\x99\xbc6\xc8\xe4\x8f\x0d2y\xc8\xe4}\x06\x99p\x9cT\xcd&^|\xfd\xf9\x97_\xce\xbf\xab\xe7\xba`\xcf\xca-[\x15L\x8aC\x9e\xc9\x07s\x82\xf3\xb4\xe4\xafY)+\xb3\\\xe0\xca\xd2\xf6\x8f;F\xbeW;\x13\xc9\x03\xe5UB=\xd4\x08%\x05\x937\xfa\x05P\x95+=\x1aDB\x84\x9a\xcb\xeeh\xb6\x92\xd9\xde\xab\xfc\\\xb0\xbd\xf5\xf9\xeak\xaaN\x1b\xbcp\xde\xc8E\xb74\xef\x1c\x8c\x16IU\xe2\xbc\x7f\xe9j\xfb\xf0\xfebx\xef\x98\xf9\nx,x,x\xac5\xf0X\xf0\xd8\xd6\xc0c%x\xac\xdb\xc0ck\x03\x8f\x05\x8f\x05\x8f\x8d\x9c%\x81\xc76\x06\x1e\xdb5\xf0X\xf0X\x87\x81\xc7\x82\xc7\x8e9\x1f<\xd6{\x0cxl\xcf\xc0c\xc1c\xc1c\xc1c{\x16\xcb\xc6\xc0c\xb5\x81\xc7\xfeW\xe1\xb1\xc1\xdc\xbc\xe1\xcc\xb0uB\xd8:\x8dj\xbd\x80v\xc7n\x9bm\x92\x9b\x15\x91\xe4\x98\x1fn\xf8Q\xde\xd4\x01(h\xf3\x90\xca\xb2\x1aMCZ\xd7\xfa\x8a\xdd\xf9j|\xc5\xeez@S\xfd\xbb~\xcb\xee\xd6m\xb9j\xc5\xe3nY\xd2\xa4\x97\xe6\xc7\x85\xb8;\xa1\x8b\x8fj\x7f\x93\xc4i\x90\xe0\xeb\xe7\x94\xad\xab\xedJ6;\xbc\xb9\xfbA\x7f\xaa\xfe\xe7\xdeG\x98\x1d\xbb\xfd\x99\x8a\xdd\xcfu.e\xbbc\x0f\x88\xb7'\xb5[\x1f-\x13O\xa9\xa4\x93\x90e\xdcWd\xf5g\x86\x87\xf8\xb9\x13\xa1\xd1\x1f~\x96\x83x\x8a=V_\xfb\xd6\x83G\x0b\x8a;W\xb4.\xba)\x06Tz\xb0\x15T:.\xaaI@\xa5A\xa5\xbd{\x82Jk\x03\x95>6PiPi\x9f\x81J\x83Jk\x03\x95\x06\x95\x06\x95\x06\x956\x06*=\x07\xec\x82J\x83J\xb7\x06*}l\xa0\xd2\xa0\xd2\xa0\xd2\xa0\xd2\xa0\xd2\xa0\xd2\xa0\xd2\xbfw*m@\xa9\xf98\xd9\x99\xfeG\xf7u\xb7\xf7Nm\xb6\xea0e}]\xfeF\xaf\xa9\xd9\xc3n\x1d2\xe8\x13?\x86\xe9\xaee\xb6g\xbc\x92\xbej\x0e^\xfd\xed\xde\x9d\xefw\xca\xce\x97c\x9b\xad\x1b\xf25\x11,\xd1\x9f\xee\x1a\x06\xb7\xd5\xeb\xd2\x8f\xfa\x04/tTRWGU\xb3\xb7WB\xf3\\n\x9f&\xcd\xc5U\xf7\xb4\x1a\x8c%'\xdb~r\xfb5M\xae\x16n\xe0\xe8\x87u{-O3\xa1\xbf\x84($\xed}{\xa0\xe7\x80\xdeN6O\xba\xf9`brE\x12z\x90U\xc9Nm\xc50?\xf8Hm\x87\x8b\xa7=\xf5\xb5\x9a\x89\xb6\xc6\xe6\x87\x07\xad3[W[oM\xd5\xc6:\xabx\xfd\xc9\xd0C\x99\x15\x92\xf0J\x1e*I\xd2J?\xc7m\x8d +N\xfe\x10sT\xad\xf3l\x9f\xc5\x8e\x07z\xdf\xde\xfd\xb0\xa7\xb7\xd9\xbe\xda\x93\x9c\x15[\xb9S\xf7\x85i\xcds\xb2\xae$\xf9;+9\xd93Z\xf4\xe3gU\xa1\x0b:\xfdK\xd3\xc7\xb8\xde\x0d\xea\x9d\x0do\x06\xb5\xb3\xc1g\x16}\xce\x98\xfa5\xc6\xce7\x17Omh\xcc\xd0\xd6\xb6\xa7\xffe\xc5\xc8k;\xebs\x8c\xfdO4\xf5\xca\xd3\xdf\xd3\xfbD\xed\xb6\xe1\xdc\xa9-\x9f\xf4i\xc6\xee\x07\x18{\xc5\xf5\xfct\xaa\x03\xa2n\xe1\xd6\x03\xdd\xaf.F\xb6~\x81\x0f5\xce\xf94c\xff\x03\x8c\xbd\xe2\xea\x8f1\x9e\xea\xbbi\x9d\xa7\xf3\xd5\xc5i\x9e\x9b\xf2\x9d\xc6\xe1\xd7\x18{\xe5\xb9\xbe\xcc\xf8 |\xf0u\xb8\xfbD|\xc2\xf1\xec\xe9\xc3\xd7\xfa_cj\xed\xfb\xd6\xe3\x03Wx\xf0A\xc7\xc8\xee6\xeb3\x90\xa1\xef\xd9\xb4\x1f~|\xd8^\xe6\xfa\xb0c\xa4\x0f\xe6}\x13\xd2\xff\xa9\xb5\xe3\x8fj=\xac+\x86_z\x8ct\xc3\x02\x1f\x88\x1c|\x12\xf2a\x9b\xdd\xff\xf0cd\xa3g}-\xd2\xdf\xfb\x9b\xefC>l\xd3\x8f\xbf\x00\x19\xd9\xfcy\x9f\x8e\x0c|\x14\xd6\xfdQ\xb9\x87\xf5F\xf7\xa3\x90\x91~\x98\xf5\x1dI\xef\x10h\xbe\x1c\xf9\xb0\x8d\xee~!2\xb2\xd1\xb3>*\xe9k\xb4\xfd\x8c\xe4\xc36\xda\xf1\x9d\xc8\xc8\xb6O\xfe\xc2\xe4\xd0#\xbd\xd2B\x1fT|X\x8f\x1c\x7f52\xd2!\xf3>7\xf9\xe8\xfd\xe1\xfa\x80d\xa4Gf}{\xb2\xf9\xc2d\xaf\xa8\xe1\xd7&\x1f\xd6\x07\xbd\x8fX\xfa\x1a?\xe3\xcb\x93\xed\xf7%\x1f\xb6=\x9d\xcfV\xfaZ3\xf9[\x93\xf5\x17%\x1f\xb6%\x9d\x0fU\xfaZ2\xf9\xeb\x92\xf57$\x1f\xa2%\xac\xd0\x81\xd2=\xdb\xf3^\xd9\xbd\x16\xf4vj\x83\xa9\xf6\xdf\x0f\x19K\xb55)\x99\xac\xcab\x95RIG\xea\xdc\xd9\xb3\xad\xb8\xa6`6\x9e\xca7\xc4\xec\xa3WN=H#\x0c\x17X\xfdM\xf0\xc2\xfe\xe4k\xc4\xf1\x9e\xc4\xfc\xaf*Y\x8f1\x98\xaf|R\x03\xf5\xccu?\xb5)1\xbdG\xafE\\5w\x83\xaf\x19C|\xc4\xf6\x07n\xf4\xa1\xe6\xb3\x99<\xcd6\x8d\x90]r\xf2\x1d\x93;\x92\x15\x84\x97)+\xd5\x0f\"\xdbW\xb9\xdau\x18Tc\x9b\x0dK\xa4\x16G2\xb9[%4\xcf\x17n\xb7G\xc1\xebt\x87~\xc0\x8c\xbb\xc3\xc1\x8al,\xe7\xc7r~ms:\x0f\x96\xf3c9\xbf\xb6\xfb\xaf0\x96\xf3c9?\x96\xf3c9\xff\xa4\xe6c9\xbf1,\xe7\xc7r~,\xe7\xc7r~\xd21,\xe7\x1f[8\x8e\xe5\xfc'\xb6\x04\xcb\xf9\x1f4\x96\x8a\xe5\xfc\xe6\x7fX\xceo\x0c\xcb\xf9\xad-\xdb*\xd3\x90i\xcb\xf9\xcb\x06\xc0\xca\x92\x16\x82ji\xf4\xbdU{\x815\xfd\x0fT\xe7~\xdd\xe2\x97\xf4?D\xddb\xd6\xf5\x9f\xb8\x16^\xfe\xd7]\x0f/oGV\xc3\x7f\xbc\x0d\xad\x85\xff\xd8^\xd6\xf1%\xf1\x1fo\x9f\xd4-\xc5\x82\xf8\xe9\x0b\xe2?\xde\xba\x97\xc3\x7f\xbc\xc5\x87\xc9\xb5a5\xbc\xaf\x93\x1a\x0b\x0dy]\xc3jx\xac\x86w\x1bV\xc3k\xc3j\xf8c\xc3jx\xac\x86\xf7\x19V\xc3c5\xbc6\xac\x86\xf7\xf7i\xac\x867\x86\xd5\xf0X\x0d?\xba\x0e\x1a\xab\xe1\x03\x9e\xf3m\xc1j\xf8\xa1a53\x02\xbe\x80^\xe8\xe8y\xa8\xef\x8e\xceQ\xa1\x87\xe1\xcc`w\x1b\xd4>v\xfb\xb2\xad\x1b\x11\x03\xaaF\x8b\xec\xef\xde\xe6\xaam\xcd\x97O\xacj\xb1I\xbc\xa0\xb6\xb5\xdf\xa7\xa9\xf5N\xe4\xd97o\xdf\x7fx{\xf1\xfa\xe3\xdboN\x969\x1f\xc9\x14\x1bM\x1b\xaf\xd6\xb9\xbb=\xa9zx'T\xb24\xa8\x16\xacu\x82\xc3\xea\xdfgr\x19O57eo\x8e\xbe\xf0\x89\x06\xa5\x87\xba\xb3V\xed\xd9\xcb\xad\x95WV|\xab\x97u\x13\x91m\x0bV\xd6\x1f\xf3\xb1\xf3\xb1:U\x8f}\xa6\xf4YC\xb2c\xc9\xd5p~G\xb7\xeaMV\x9a\xbb\xc1\x1e\x9d\xb22\xbb\xee\xca\x06\xd5\xb9\xa8\x16q?\xfb\xebs\xf2\xe19\xf9\xf13+\x84>\x9e\x03\xb0\xe4\xf0\xc5\xd7\x7f\xbc\xfa\x9c\xb0]\x9b\xbb\xd8'0>9f\x00][hAP\xd7\x96\\\x1c\xd4\xb5\x85\x16\numl\xd1P\xd7\xe6- \n\x8e\xe1H\xdd\xe50\xa4\xee\x8aX\xcd\xe4\x1f\xb0\x91\xbaK\x1bRw!u\xd7h\xd2&\xa4\xee\nx\xce\xb7\x05\xa9\xbb\x86\x86\xd4]H\xdd\xd5\x1aRwu\x0c\xa9\xbb\x90\xba\x0b\xa9\xbb|fc\x91H\xdd58\x00\xa9\xbb\x90\xba\xeb\x91\xa5\xee\xea\xc2\xeeNA}5bg\x9f\x9a\xc85\xf0Zom\xe0\xaa\xe4\x06\xe8\x93.\x13\xdc\xf0#\xea?\xc0\x05-\xf4\x97e5\xc2\xfc\xbdl\x7fs{\xce\xca\xe4\x8b\x97\xe7\xd7\x9f\x9f\xd3<\xa3\xe2+h\x1d\xc4]3\xb2\xa7\x87\x83\xeeIn7\xe8\x07k\x1a\xaeE\xe8a\xdeTC\xec\xf8\x8d\xb0\x1dV\x9dS=:\xedc[H*+\xb7>\xa6v\xd3\x8a\xdf\x14\xae\x05\x15\xc6\xec)\x02z(\xe3t]Hs-\xde\xfe\xf0\xd3\xf7\xe4\xd9K\x92\x15:\x9a\xfa\x9c|^?tM\xe0\xf49q-J1\xc6n%+\x0b\x9a\xd7\x85\xf9\xd8p\xc4ebE\xe5\xbd\xcaj\xc8x\xf7\xef?\xbc\xfd\xb0\xfa\xe9\x87\x1f\xdf\xbf\xbd\xb8\xfc\xf6\xf2\xed7\xa3\xfb~\xff\xee\x9b\x9f\xfe\xf2vt\xb7\xb7\xff\xef\xc7\xb7\x1f~x\xfd\x17\xcf\x8e\xf5\x032\xba\x02\xe1\xe7yk\xef\xf4UP\xcd\xd6\xb2%\xf3L\xd7\x97F\xec\xb2\x83f\x84\x83\x9b$ \x92p9\xc8Q\xe5fbB\x8b\xfaz\x9fW\x85\xf915'\x0f\xf0\xec\xbec_\xf5\xfee\xa79\x99\xd0\xa5h\x94}4\xf9\xb1\x91\xf8\x883\xd4\xd7\xe4\x15\xa9\xffr\x94O\x8bN\xff\xf3\x17\x1d3\x8fn\x9e\x10}\x07\x19\xf5K\xcd\x9c\x12^\xa6B?e|\xbd8\xe1\x85\xc8\x84\xb4\xef\x13\xe1i\xb4\x1a}\xae\x99\x99K\xd3\"\x1dL\xce}\x13\xdc\x03\xdd\xdaq\xeb\xf8^\xe9/\x05mv\xecMF;?[\x86\xeez\x9a\x19;\xe1\xed\xae`\xb7ru\xc5\xeefN\xc0G\x15\xa0q\xf7X]\x8bz\xc2\xac\xfe\xb4\x82h*l\x9e\xd7\xf7t\xcb>\x98\xe5\xa2gf\xbb\xa7\xb0\x16(\xa9b\x95#\x19\xd9s! \xd32c\xadM>#\x97\xb2C#\x0f\xf2\x8ed\xbe\x157\xfaMFk\xd0\x0bN\xf6\xbcd\xb5\xe6\xdc\xd5\x87%\x97\xd43\xa1\x8bv\xa6g=\x1d\x89xp\xe8\xd3k/\xea?\xba\x0b\xce\x8dL\xbe\xa3\xc9\xf6\xb5\xb7\xebh\xb3tO\x17\xe6\x1b\xd2n\xa8P\xef\\\xcfI&\xdbT\xec\xa43V)\xff\xddd\xa2\xdf?\"\x02\xa8\xedd0\xea}\xcaU\xc4y[\x06\x82\xa7x\xc5ro\x7f\xe8W\xacP\xf0\xb4\x1d\xf5\xd5\x18\xe7\xeb\x87\x83q\xd4\x0e\x9c\xd4\xde}&C\x8b^\xb5b\xefe\xdbC\x9bQV\x0f\xad\xdb\xc1\xa2\x0c=l\xd6\xf1\xa1\xd0\xc8\xf9\xae\xc8\xef\xf4\x12+\xbe!|\xb3\x11L\x12^\x92~uIg\xad\x9c`K\x7f\xcbb$oA\xc7\x89\xa6~>?\x0e\xc6\x1d\xdb\x18\xedJ=\xd9\xcb\x92\xfa7=\xb1\xe8&\x1e\xbf\xd9\xb1\xa2v|U4\xa3\xea`\xe2w\xa9K\xcb\xd5\xe4\xbdq\xa1Y\x1bbr\xd0\\\xb1\x89\xfe\xec\x17\x7f\xcf\xce\xf5d\xc4\xef\xb8wz\xde\xf3:7\x84\xe7\xf1d\x1e\xfa\xdd\x1el\xc7\xfb*\x1f\x8c\x9af\xcdC\xf7\xa7\xcb\x0d\xc9\xd9F\xd6\x8fs\xfb|o>\xb4\xc0\x9b\x1b\xc4\x9cD\xf9y}G\x18Mv\x84\x1e\x0e\x9f\xd0\x8b\xdd\x87l{|0\xd5F{\x84\xf2\xa8\xee\xa1\\katX8+\xd2,1\x19\x80\xccRN\xebA\xbd\xa3\xedH\xdd\xe2\xb2\"\xc9\xabt\x10\xd9\xa5\xe6,\xcdZ\xda\xc1\x15\xd3#vg:\xa1\x9e\xc2\xbd9k\xaf\xb0\x9f.\xc5\xe0j\x0d\x9a\xa0\xa5\xa8\xeaYj\x9e\xad\xfa\xf6j\xefGu\xcb\x9d\xd9\xbb)\xdb\x16\xbc\x1c,\x90\xab\xef\xc6\xfe)\x8cgN\xbd\xb0\xbe,U\x9d\x0bX\xb2kV\no\xaa\x9a\xc1\xc5\xb3{\x0f/\\\xd6\x99\xa4\x95\xcc}'\xf4\xcaQ\xe7`\x85^:\xacs?\x1d}&++\x92&\x9c\xf2B\xa4W\xe4\xe5\xd9W_.\xea\x8d\xa9\xd1\xc2\xf3_\xf5?\x02YR\xda\xa8!u\xc7\x0d\xed\x01\xee\xb0\xe1\x93\xba\x11\x8f>j\xe8\x9b\x1e\xcdz\x89\x8b\x88\xfd\x8dNUf\xc7\xfd\x02Q\xbf\xd8\x93\x9e\x10\xf1\x0b\xc6\xfb\xc6\xa3}'\xc4\xfab\"}c\xafk\xcbF\xf9\xe2b|\xa3\x17%\x14\xdf\x8b\x8f\xeeE\xc5\xf6\xa2\"{\x13\xe3zq\x11\x87%cz\xf7\x1f\xd1\xbb\xefx\xde\xf2\xd1\xbc\xf1X\xde\xf4H^'j\xe7(o$\x8e7'\x8a7%H\xb1@\x8c\x02!\n\x84(\xdc\xdb\x1fS\x88b8\x0f\x08\xdd$\xe6\xdej\xf2\x1b\x95\xf5+4\xcb\x9ao\x02\xed\xd8m;\xc7\x18\xe4\\\xd37h\xaf@{\x1b\xf5~\xbb\xf0\xcc\x1e:;\xdd\xe3\x12\x82}\xb6U\x0f\x105\xd1\xd5\x9f\x9c<\xb7C\xe2\xd1\x14\xb77c\xfd\xde\x1cu\xa1\x8ex4\xd9\xf80\xb6\x0c\xb6bly\xe0\xb1%\xf4\xbdX{\xa3\xd9l\x98\xc7\x8f\xeb9o\xb3\x83\xba\xb7C\xdcX%$\xbf\x97*D\x0e4f^t\xfe\xebx\xd2Q-\x1f\xffX\xd2\x84\xb59F\x07\xafXzcV\x98+\xd5\xc9\x9a\xeb\x1a\xaf>\xe8\x13?\xa9[\xf6\xc9F*\x12\xec\xfb\x1b^\x15\x8e7\xc2\xf0\xdb`\xaf\xa6;*\xdaK]V\xec\xc5\xbf\xd5\xffL\x9f\x9b\xeb\xf8\xe2\xdft\xde\xa1\xfa\xd7\xe1\x04x\xdf\xf5\xd7qU\\}\xca\xec\xdbc\xc0\xea\xbf\xba\x1a\xe6\x9a/\xca~\xd5\x9d\xe4\x1f7\x02w\xb6\xe4\xb3\x0e\xdb\xb1l\xbb\x9b+\xf5t\xe7\xb2\xc6#k\xd8\xf1\xf0\xc8z\xd8G\xd6\xf1Z\xd8{\x9cl&%\x17B'\xd3V\x8f\x815\x95\xc9\xee\\\xa7\xd3/\x8f\x97\xad\xf6\xc6\xef7j\xd7\x0b\xb3\xe7\x93\xbaN\x8ft\xf8\xee5\xa8k'\x0cu\x05w&`&1]bT\x96a\xa2\xba\xf5K\xcc\xac\xb3\xac\xcb,\xdd\xb6\xe9\xe0g\x95Q\x07eN*\xa4\xf9\xf8\xfd\xac\xa3M\nx}c\xc4\x1f\x8e1|\xb0\x15c\xf8X\xe8\xad5dWFve\xb7!\xbb\xb26dW>6dWFve\x9f!\xbb2\xb2+kCve\x7f\x9fFvec\xc8\xae\x8c\xec\xca\xa3yu\x91]9\xe09\xdf\x16dW\x1e\x1a\xb2+#\xbbrk\xc8\xae\xdc1dWFvedW\xf6\x99\x8dE\"\xbb\xf2\xe0\x00dWFv\xe5\xc7\x96]\xb9\xe1g\x9dbNV\x15\x0d\xb4\x9b\x0d\xa9\xbc\x9fs\x0cP\xe6\xfd\x9cD\xf3\xdce\x8b\xf6\x80\xde\x998^\xc4\xf3\xf8G\x9f\xeb\xa8\xdf\xa4\xae\xc9O\x00\x17\x03(\x7fRX-\x94e!\x02\xe8G\x9c+\n\xeaG\x94\x13\x07\xf6#\n\x1a\x81\xfb\x11%\x8c\x01~ \xfe\xd6\x80\xf8\x81\xf8[\x03\xe2\x07\xe2o\x0d\x88_\x02\xf1\xbb\x0d\x88\xbf6 ~ ~ \xfe\xc8Y\x12\x10\x7fc@\xfc]\x03\xe2\x07\xe2w\x18\x10?\x10\xff\x98\xf3\x81\xf8\xbd\xc7\x00\xf1\xf7\x0c\x88\x1f\x88\x1f\x88\x1f\x88\xbfg\xb1\xb8\x15\x88_\x1b\x10?\x10\x7f\xe7\xb7\x89\xf8\xfa!\x11\xff\xe3\xa5\xef\xea\x86\x0f\x93\xf7\xbfP!\xdf\x9b\xb4\xa9\x1a\xc2\xdbL\xf7o\xee^\xa7\xe9\xa3\xcf\x1f\xaa\x1b\xe9\x03\x80\xb3\x16\xc6\xeb\x12W\xf7\xba<\xde\x9c\xe2\xb4\x0f\xbd\x8d\x9eD\x7f\xe1\x8e\x9ahI\xe8\x1cnJJB\xa4\x94\x8cy\xd8\xd8\x181U\x96y?LDb\xbc`l\xd4\x17\xc6\x04+R\xff\x17\x88H\xec\xf9R&\xe4\x98\xf0\x80\xc4\x16\xa6\x07\xa7\xf1R\x82~&\x91\xbe&\x9d\x1c\xad\xe1\xbd\"+\xaf\x8c\xee\xdb\xdcn~\x8b,.&\x80Z\x9bN\x85\xa73EZ\xec\xdd\xcd\xaa\xa7\x1e\xaa\xb4h\xbf\xb9x\x9c7oh\xfaB\xf8\xdf\xe76\xcc\x1b\xd5&\xb8J~{\xc8\xab4\x96[\x98\x90w\x95\xdc\xf2\xac\xd8~\xb4_\xff\xfcx\xdbN'm\xb6\xd54\xbb\xce\xd2\x8a\xe6z\xb4\x18\xa6_\xeb\xdb\xb6\xa4\xd7\x99\xd4\xf0\xee\xed\xc7?;v\x8bQM\x8d\xf8|\x9d\xf3$\xf8\x19\xd6S\x1e\x11\x1b\xc6>\xb0\x84e\xd7s\x9et!o7~\xbe\xd53\x8a\x9e\x93\xcd\xd3O\xbf\xbfv\x9ePD\xef\xef\xf3\xb7\xc7\xd3\x10Q\x0d\xb6BD\x15?:AD\x05\x11\x95\xdb \xa2\xd2\x06\x11\xd5\xb1AD\x05\x11\x95\xcf \xa2\x82\x88J\x1bDT\x10QAD\x05\x11\x951\x88\xa8\xe6\xe8\x90 \xa2\x82\x88\xaa5\x88\xa8\x8e\x0d\"*\x88\xa8 \xa2\x82\x88\n\"*\x88\xa8 \xa2\x82\x88\xea~ET\xf7\x98\xc3d\xaa\xa2\x89[\xb8\xb8\x92\xb7\xe60\x9f\xb0i@!\xd9\xa3O+\xb26\xd5|\x1c(nT\x075)\x14\x15\x90\xe6D\xa8\xa1\x96:\xd5\xb8&j\\\x155\xa2\x8b\x1a\xf5\xbb\xb11\xef\x1b\x0b\xab\xa3\xa2\xbcb,\xc27\xc6\xc65R\xd1g\x8d\xd5IE\x178\xaa\x95\x8a\xf4=\x89\xf6?\x99\xa0\xc5\x89n\x06\x89\xd6\xe3L(2&j\xda\xda\xc2\xaa\x9cQ\xf5\xd4\xa8~\nW\xee\x91^\xb9qM\xd5\xd2\xaa\xaa\x08]U\x9c\xb2*\xe2\x1a\x04\xd4U\x11GG\x0d\xabc\x1a\xab\xd1\xf3\x84\xaf\xc0\\\xa5\x95\xbb\xae%\xdfCk\xd51h\xad\xa0\xb5j\x0dZ+h\xadZ\x83\xd6JBk\xe56h\xadj\x83\xd6\nZ+h\xad\"gI\xd0Z5\x06\xadU\xd7\xa0\xb5\x82\xd6\xcaa\xd0ZAk5\xe6|h\xad\xbc\xc7@k\xd53h\xad\xa0\xb5\x82\xd6\nZ\xab\x9e\xc5\xea^\xa0\xb5\xd2\x06\xad\x15\xb4V\x9d\xdf\xeeU\x06U\x9a4M\xe6\x90\xe0W\x95\x9a\x84N?t\xb2T=n\x11\x94\x8f\x90!\xa3\x132:ul\\\xad\x14u\xbeX\xa5RTa\xa3*\xa5\x08?\x93H_\x93 *\x97\xa8\xca\x93h\x85Kdq1\x11\xc6\xda\x16\xd6\xb6 \xa3Stq\x8f\xf5*\x8d\xab\x8f\x96\xd5\x1e\x8d*\x8fbtG#>GF'\x82\x8cN=\x83\xca\x08*\xa3\xd6\xa02\x82\xca\xa85\xa8\x8c$TFn\x83\xca\xa86\xa8\x8c\xa02\x82\xca(r\x96\x04\x95QcP\x19u\x0d*#\xa8\x8c\x1c\x06\x95\x11TFc\xce\x87\xca\xc8{\x0cTF=\x83\xca\x08*#\xa8\x8c\xa02\xeaY\xac\xe2\x03*#mP\x19Ae\xd4\xf9m\x92\xca\x08\x9f\xc53R\x9d\x0d\xab\x81UP:\xf5-\xfb\x8dd\x8d\xea4\xa8k\xf2S\x10\xbf\x08F\x1e\x11\xf4\x92\\\xd2\xdc\xd3,\xbbG\\\x11\xf2v~ \x11\xc8\xbd>MX\x90\xe1<\x13h\xf7`+hw\\\xb4\x94\x80v\x83v{\xf7\x04\xed\xd6\x06\xda}l\xa0\xdd\xa0\xdd>\x03\xed\x06\xed\xd6\x06\xda\x0d\xda\x0d\xda\x0d\xdam\x0c\xb4{\x0e0\x06\xed\x06\xedn\x0d\xb4\xfb\xd8@\xbbA\xbbA\xbbA\xbbA\xbbA\xbbA\xbbA\xbb\xef\x83vO\xa0\xc2\xfa\xfbF\xab\x84\xe6\xf9j}\xd7M\x16\xe1\xe5\xc3\xfa\x88\x0b\x9a\xe7\xbf\x95\xc4\x1am\x13}\xb0lVz\x8dP\x12\x86\x91`O\xc96U\xe1\xc9\x171r\xa8\xa6\xcc\x8f8\x0d\xc6\x18\xff&\xe3M46\xbe\xd0?\xa2\x98\x98\xa0\x14Yvq\xbfwa\xbf\xe4\xb3.xJ%\x9du\xe0\x9e\xed\xe7\x9d\xf1^3\xc6\xdcs\xae\x18\x9de`\xb5c\xd9vwo\xe7`\xd7\xac\x90\xf7\x91W\x07\xba\x88\xc1V\xe8\"\xe2\x870\xe8\"\xa0\x8bp\x1bt\x11\xda\xa0\x8b86\xe8\"\xa0\x8b\xf0\x19t\x11\xd0Eh\x83.\x02\xba\x08\xe8\"\xa0\x8b0\x06]\xc4\x1ci\x01t\x11\xd0E\xb4\x06]\xc4\xb1A\x17\x01]\x04t\x11\xd0E@\x17\x01]\x04t\x11\xd0E\xdc\x87.\xe2\x91\xaf\xd0\xefk1\xba\xfa\x82\x181\xc6\x8fz\xff'u\xdd\x1f\xbf\x1a\xe3\x910\xba\xf0\xc74F\xc3S!-G\xc4\xe1!=\xc7\xb8\xa2cD\xd31\xea\x1bcc\x1e2\x16\xa3\xec\x88h\xb0\xb1quGdQ1\xe15c\x0bj<\x82\x9fo\xf0\xe9<\"\x1a\xe4\xd7zD\x1c\xec\xd7{D\x1c\x1cP3D\x1c\x1d!\x9a\x18Q~,u\x92q\xfd\xc7Rg\x1aU\x81\x9cr\"(A\x06[\xa1\x04\x89\x1f\xea\xa0\x04\x81\x12\xc4mP\x82h\x83\x12\xe4\xd8\xa0\x04\x81\x12\xc4gP\x82@ \xa2\x0dJ\x10(A\xa0\x04\x81\x12\xc4\x18\x94 s\xc4\x14P\x82@ \xd2\x1a\x94 \xc7\x06%\x08\x94 P\x82@ \x02%\x08\x94 P\x82@ r\xbfJ\x10\x83\xffW4MK&\xc4\x92\xe7\x98\xa7\xfcHx\xb1\xc9\xca\xfd\xe4l\x1c\x17\xe6\xb8\xdfHR\x0e\xdb\xcaG\x02\xe7\xda>6;6e.a\xd3\x8ff\x97\xc3n%+\x0b\x9a\x9f\\\xd0=\x91\xe9\xae\x89l[PY\x95sN\xc3\n^mw\xab\x03\xbfqio\xcc\x81k\xcesF\xdbH.\xa8\xf8`+\xa8x\\T\x95\x80\x8a\x83\x8a{\xf7\x04\x15\xd7\x06*~l\xa0\xe2\xa0\xe2>\x03\x15\x07\x15\xd7\x06*\x0e*\x0e*\x0e*n\x0cT|\x0eX\x06\x15\x07\x15o\x0dT\xfc\xd8@\xc5A\xc5A\xc5A\xc5A\xc5A\xc5A\xc5A\xc5\xef\x97\x8awV\xb7.{\x82%\xb3$\x88X6^\xbfC?Z\x1c\x8e\xac\x08\x83\x1d\x90\x15\xc1gQE\xc5\x04\xd5\x8c!+\xc2\xa7\xd5P +\x82\xc3\x82':\xd0mV\xe8A\xde7R\xce\xfa\x9cO\xc1n\xe5\xea\x8a\xdd\xf9\x85\n\xc1J\x8f\xc6\xe0{\xb7\xe4?|\xb7d]\x0b5'T\x13)\xf5\xa7ERT\x08\xc3\xdd\xde\xd3-\xfb\xc0~\xa9\x98\x90gf\xbb\xa70\xfd\xa8\xd6\xc5\xa8b\x95\xe3\x18\xd9s! \xd3\xa0G\xd3\xa13r);\xf3\xc1\x83\xbc#\x99O\xf3\xa0\x87\x01M\x01\x0bN\xf6\xbcd5\xf5s\xdd\xf2\x92K\xea\xd1uD;3x\xdf\xc8\x9c\x05\xc66}z\xedE\xfdGQ\xed\xd7\x86Y\xd4\xa0\xb2C\xc5|\xed\xed::Q#\xf3J\x17\xe6\x9bR\xdePA\x04\x93\xcfI&E\xcd_\x05\xa9\n\x8d\xa3Yj\x90\xd4M&\x8e\xfb\xc7\xf8pm\xaab\xe6\x1f\xa6U\xbd\xf9{V\x90\xed\x87\xf7\x17\xcd\x14\xa5\x9e\x1c\x0br\xa3\xae\x99\xeb\xf2\xb8\xf1~\xc2KS\x86\x96B\x94\xa6\xf1\xcdT[\xbd\x96h\xda\xd5\xf5\x8c\xd3\x1d\xf5\x11?\xf2}[\xef``\xa8d\x07\xa6a\xc4\x1bZ6\x17i\xe4\xfd\xb3\xef\x16\xdd\xbf}o\xa0mh\x0b*\xb2\xc1V\xa8\xc8b\xee@cP\x91AE\xe66\xa8\xc8\xb4AEvlP\x91AE\xe63\xa8\xc8\xa0\"\xd3\x06\x15\x19TdP\x91AEf\x0c*\xb29B,\xa8\xc8\xa0\"k\x0d*\xb2c\x83\x8a\x0c*2\xa8\xc8\xa0\"\x83\x8a\x0c*2\xa8\xc8\xa0\"\xbb_\x15Y\x8b\xea\xcf\xaeX\xb7\xbc\x10\x0c\xb7\xf4\x9b\xda!\xbad\xb2*\x0b\xc38\xbb\xb8\xef\xacA\xe5:\xd8\xb6\x1dD\xa5t\x0b\xd4\xb02\x86\xbf\xdf\xa9\xc7&/\xf4\xdb8\xdfl\x04\x93\xeaM\xa0_]\xd2\x81\x05\x82\xc9\xb3e\xbd\xe5 \xbd8\x9ch\xea\xe7\xf3\xe3 \xeca\x1b\xa3]YT{VfI\xfd\x9b\xbe\x9b\x13Z\xa8\xf6\x98\xb8\xd3\x8e\x15\xb5\xe3\xab\xa2 \xf5\x0df\xc5\x97\xba\xb4\x9c \xd1\xba\xd0\x04\xc7*\xa1\\}\xc5&\xfa\xb3_\xfc=;w &p\xb87\xcf\xf6Y\xacw\xf5\xbe\xb5J\xc3\xa710a\xe0n\x0f6s\x0d\xb5\xb5W\xda\xc1\x04}\xba?]nH\xce6\xb2\xd6dX\x91F=\xf5\xd4\x11ls\x83\x98\x93(?\xaf\xef\x08\xa3\xc9\x8e\xd0\xc3\xe1\x13z\xb1\xab\x94h\x8f\x0f\xf9\xb2s\x84\xf2\xa8\xee\xa1\x9c\xc8\xb2bD\xfd\x91\x15i\x96P\xc9\x1a\x96e=\xa8w\xb4\x1d\xa9[\\V$y\x95\x0e&\x96\xd4\x9c\xa5\x81\x89\x83+\xa6\xd1t'\xc6\xad\x1e\x0dm\x9b\x86!\xef\x9f.\xc5\xe0j\x0d\x9a\xa0\xe7\xe2%\x13VD\xa0o\xaf\xf6~T\xb7\xdc\x99\xbd\x9b\xb2m\xc1\xcb\x01!\xa8\xef\xc6\xfe)\x8cgN\xbd\xb0\xc3\x9c:\x8e\x0bX\xb2kV\xf6\x0e\x0d]<\xbb\xf7\xf0\xc2e\x1d\xa5M\xc9\xdcwB\xaf\x1cu\x0efd'\xbcLY9\x9c\xf7\xff\x98\x15\x89zdq\xb1\xe7\xe2\x85H\xaf\xc8\xcb\xb3\xaf\xbe\\\xd4\x1b\xd3E\xc8\xfa\xf9\x99g\xc2\xaaIF\x94\xc8j\xef\xbfd\xa2\xbe\xf5\x1f\xad\x1a\xb9\x9d\x16,+\xf0\x18\x0c*\x10\xe2\x0c\xb6B\x88\x13\x07r\x08\x848\x10\xe2x\xf7\x84\x10G\x1b\x848\xc7\x06!\x0e\x848>\x83\x10\x07B\x1cm\x10\xe2@\x88\x03!\x0e\x848\xc6 \xc4\x99\xa3e\x81\x10\x07B\x9c\xd6 \xc496\x08q \xc4\x81\x10\x07B\x1c\x08q \xc4\x81\x10\xe7\xf7 \xc4\x99N\x17yV\xac\xd6w\xab\x94\x15|\x1f\x05\x18yV\xbc\xb9\xfbF\xednwz\xbc\x88\x91g\xcb\xa6\xef\xe88ih#!\x97P\xd2\x9d\xe0\xa1\xe3\xa1\x0euAL\xf8\x9a\xa9\x01@\xa7\xc7\xb1A\nS\xe1Z_\xa0\x06 Z\xd8\xaa\xb8\x1f\xb4?\xbc\xfb\xf8\xf6\x95~\xa2\x9a\xbd\xec\xa3)\xd3\xf1\x93\xcbB\xda\x9b\xb6\x89Yu\xef\\Gqf\xb2\xe2:Q\xf3U\x1f\xd1\xe0s51\xdb\xf2-\xd7\xb7H\xdb\x1b\x00p\x07[\x01pc\xee\nc\x00\xb8\x00\xb8n\x03\xc0\xd5\x06\x80{l\x00\xb8\x00\xb8>\x03\xc0\x05\xc0\xd5\x06\x80\x0b\x80\x0b\x80\x0b\x80k\x0c\x00w\x0e\x03\x05\xc0\x05\xc0m\x0d\x00\xf7\xd8\x00p\x01p\x01p\x01p\x01p\x01p\x01p\x7f\x0f\x00\xf7SfRH;Pw\x91\xa2'\xd3\xe8\xee'Y\xc2\x18Z\x7fM\xe4\xb7\xf2\xc9\x1d\xdf\x97f\xe4\xa7\xa0o\xaa.\xb3\xe3N\x01\x02\x1eqt\xb2\xa3E\xc1\xf2U\xb6Nf\x97\xd1|\x95\xe1\xe97j|K\xa8T\x9d\xd1L\x93\xaa\xc3\xb6\xa4)#\xd7_>u9\xce\x1c\xd7\xe9?\xcdN\x80\xcc\x83\xad\x80\xccqAJ\x02\xc8\x0c\xc8\xec\xdd\x13\x90Y\x1b \xf3\xb1\x012\x032\xfb\x0c\x90\x19\x90Y\x1b 3 3 3 \xb31@\xe69\x9c\x16\x90\x19\x90\xb95@\xe6c\x03d\x06d\x06d\x06d\x06d\x06d\x06d\x06d\xbe\x0f\xc8\x1cO\x82#\x16\"kv\xf7\x91\xff&\xd6 {\x80\xa93\xf6\x02\n9\xd8\n\n\x19\x17\xc5\"\xa0\x90\xa0\x90\xde=A!\xb5\x81B\x1e\x1b($(\xa4\xcf@!A!\xb5\x81B\x82B\x82B\x82B\x1a\x03\x85\x9c\x03\xf2@!A![\x03\x85<6PHPHPHPHPHPHPHP\xc8\xfb\xa0\x90m\xf9\xb2\xb7\xfco\x81\xa2\xe3\x01\xa7\x1eM\x0e\xe6+\xb4\xab:\x0b3\xcd\xf3\xd5\xfanE\xd3\xb4\x0c\xb3\xcf\xbfP!\xdf\x9b\x83m>f\x9a\xe7o\xee^\xa7i\x1d\x0fx\xb4(\xb4\xd3\xd6G\x82\xe7\x04+R\xe6@\x9c\xc6F#S%\xdbTE:\xfbp\xdf\xaa`\xbb5\xe0\x0fc^\xaf\x18\x1b\xf1\x8d\xb11\x0f\x19S\x0f\xf8\x92&\x9e\xfc\xd5\xb5\x8d6\xd8X(\x15vmQE\xc5D\xd6\x8c\xbd\xfdp\xf1\xc5K\xad\x1a\xb04\xb4e\xa1\xa5\x9e)\xd2\x82\xbc\x95;V\xb2jov\x0e\x14\xa6/\x9b{v#\xf9\xec\xce\x90RIg\x1f\xbcg\xfb\xf9g.x\x91,\x11\x9d\x1d|\xb4\xbdk2\xdb3^y\xaf\xf92'Y\xe7<\xb9Z\xedX\xb6\xdd\xdd\xf3\x99\xd85+\xe4\xea\x9e\xfc\x06\x11\xc8`+D \xf1C\x1dD \x10\x81\xb8\x0d\"\x10m\x10\x81\x1c\x1bD \x10\x81\xf8\x0c\"\x10\x88@\xb4A\x04\x02\x11\x08D \x10\x81\x18\x83\x08d\x8e\x8e\x02\"\x10\x88@Z\x83\x08\xe4\xd8 \x02\x81\x08\x04\"\x10\x88@ \x02\x81\x08\x04\"\x10\x88@\xeeW\x04b\x04 \xa5V]0!\x96\x08\xe7\xe1ia\x9af\xbde\xaf\x98\x9f\xb7\x05\x82I\x83\xab>\xab\x8c&\x95\xf0)\x85\xa4,g[*\xd9*\xf4E\xe2\x912\x84\xa4\xa5\x0c~tv4\xb4\xd6a\xaf\xde\xcf\xe7\xca\\\x97AKi\xaf\x00\xd9uS>w\x8d\x17yVx\x02}\xa6.k\xcesF]Q\xda\xc6#:.G\xa5\x8b<\x93\xf16\x89\x9c\x8a\xddJf\xfb\x10\x91\x9d\xe1\x13\xa0\xf9\xc1V\xa0\xf9\xb8\xd0.\x01\x9a\x07\x9a\xf7\xee 4\xaf\x0dh\xfe\xd8\x80\xe6\x81\xe6}\x064\x0f4\xaf\x0dh\x1eh\x1eh\x1eh\xde\x18\xd0\xfc\x1c\xba\x0d4\x0f4\xdf\x1a\xd0\xfc\xb1\x01\xcd\x03\xcd\x03\xcd\x03\xcd\x03\xcd\x03\xcd\x03\xcd\x03\xcd\xdf/\x9a\xefs\xde%\xcf1\x87\xccw\x91q4\xa1\x7fc\x0e\x02\xa8\x9f\xcb\xc7\x01\xea\xfb\x06P\x7fl\x00\xf5\x8d\x01\xd4\x03\xd4\xb7\x06P\x0fP\xdf\x1a@\xbd\x04\xa8w\x1b@}m\x00\xf5\x00\xf5\x00\xf5\x91\xb3$\x80\xfa\xc6\x00\xea\xbb\x06P\x0fP\xef0\x80z\x80\xfa1\xe7\x03\xd4{\x8f\x01\xa8\xef\x19@=@=@=@}\xcfb\xa1)@\xbd6\x80z\x80\xfa\xceo\x93 \xfa\xa3]C\xdf\xe3\xbd\xd1\xa8\xfe\xad=\n\xac~.\"\x07\xab\xef\x1bX\xfd\xb1\x81\xd57\x06V\x0fV\xdf\x1aX=X}k`\xf5\x12\xac\xdem`\xf5\xb5\x81\xd5\x83\xd5\x83\xd5G\xce\x92\xc0\xea\x1b\x03\xab\xef\x1aX=X\xbd\xc3\xc0\xea\xc1\xea\xc7\x9c\x0fV\xef=\x06\xac\xbeg`\xf5`\xf5`\xf5`\xf5=\x8b\xe5\xa6`\xf5\xda\xc0\xea\xc1\xea;\xbfM\xc2\xe8m\xf9C\xc0\xba\xe4Y&\xc3z\xc1\xe4y\xc2\x8bMV\xee\xc3\x9c\xde@\xfa\x1f\x99\xbc0{?\xa9k\xf7H\x01}\xafQ]\xf3\x96EF\xa1\x9a\xe7\xfb\xe2$&\x94\xe4\xf9\xcexk\x8f\x86\xdd\x8bl[PY\x95\xf3Z\xda\xde=\x13\x0e\x07}\x1el\x05}\x8e\x8b^\x12\xd0g\xd0g\xef\x9e\xa0\xcf\xda@\x9f\x8f\x0d\xf4\x19\xf4\xd9g\xa0\xcf\xa0\xcf\xda@\x9fA\x9fA\x9fA\x9f\x8d\x81>\xcf\x01\xb8\xa0\xcf\xa0\xcf\xad\x81>\x1f\x1b\xe83\xe83\xe83\xe83\xe83\xe83\xe83\xe8\xf3\xfd\xd2\xe7{\\)\xde\x9eD\x83\xd2e\x8b\xf6\x10\xd4S\x80\xb7\x98F\xbc\xc5\x9b\xbb\x1f:\xedz\xec\xe4\xfb\x91\x80\xc0\x003\x9f\x14\x02\xf3r\xf3Hr\x1eq\xb28z\x1eQ\xd0\x08A\x8f(a\x8c\xa2\x83\xa3\xb7\x06\x8e\x0e\x8e\xde\x1a8:8zk\xe0\xe8\x12\x1c\xddm\xe0\xe8\xb5\x81\xa3\x83\xa3\x83\xa3G\xce\x92\xc0\xd1\x1b\x03G\xef\x1a8:8\xba\xc3\xc0\xd1\xc1\xd1\xc7\x9c\x0f\x8e\xee=\x06\x1c\xbdg\xe0\xe8\xe0\xe8\xe0\xe8\xe0\xe8=\x8be\x9a\xe0\xe8\xda\xc0\xd1\xc1\xd1;\xbfM\xe4\xd0\xbf\x15\xc4m\x82[a\xc2}avj@\xf7\x93\xba\xda\x8f\x94l\xb7\xed\xf3\xc1\xb9\xc7\xb7\xac{\xaf\x86\x902\xb8\x12\xdbM\x14I\x88*\x92\xb1\x16\x1b\x1b\xa3\x8bz\x1f~\xc3<\xb9\xc8\x8d\x8d\xfa\xc0\xd8\xa8'\x8c\xc5Bv\x12wf\x9b\xbf=\x10\xb0{\xa3\xd5\x01\x7f\xad\xb3\xae\xb7#\xbd\xa8cx\xea\xe7\xa7\xa2\xa9\x99\xb7$[c\x1b\xd1\x15\xc6s\x8e\xbd\x17IY\xefqc\xa8\xbd\xcd}\xac\x9e\x97\xfaaj[D.\xd4\x08a=A\xbe\xafr)\xb2-\xf9\x91\xc9\xe7\x84\xd1\xc45\x93\xdb\x96\xf4:\x93w\xad\x7f\\O \x9a\x0bN\xf64k\x83\x8e\xcd \xaf\x98\xa6\x0f\"\xdb\x16\xf5cH\xa8'-\x13\x8c\xd0\xd2\xf5|\xd31b\xc9I\xb2c\xee\xb7\x81FT\xa1^\x07\xda3\xadYB\xd5\x9bA\x1dp\xcc\xb6E\xb6\xc9\x12ZH\xb2\xa5\x82\x08z\x9d\x15\xdb6D\x08\x85\xc4`+\x14\x12q\x11v\x02\x85\x04\x14\x12\xde=\xa1\x90\xd0\x06\x85\xc4\xb1A!\x01\x85\x84\xcf\xa0\x90\x80BB\x1b\x14\x12PH@!\x01\x85\x841($\xe6\x88\x0c\xa0\x90\x80B\xa25($\x8e\x0d\n ($\xa0\x90\x80B\x02\n ($\xa0\x90\x80B\xe2>\x14\x12\xb3\xd4\n\xea\xee\x08K\x15\xfeB\x85|\xcf\n\xd5\xc5\x1a\xcc\xf9\x81\xfdR1!\xdf\xdc\xfdv>\x18\xafZ\xfbH\xb8\xd9\x03,\xcc\x0fj\x1f\xc6\xd5\x0f#\xfa\x87Q\x0f\x18\x1b\xf3\x83\xddkL\x05\x11\xe5\x13c\x11\x9e16E\x0b\x11y\xfeq=\xc4\x92\x8a\x88xMDX\x15\x11\xd5\xb8Q\xb7\x86\xdb\xbe\xa0:\"R\x1f\xb1\xb0B\"B#1S%\xe1. \xca ('\xc6\xee\xc9\x98\xc8;\x81r\x02\xca \xef\x9ePNh\x83r\xe2\xd8\xa0\x9c\x80r\xc2gPN@9\xa1\x0d\xca ('\xa0\x9c\x80r\xc2\x18\x94\x13s\xc4\x07PN@9\xd1\x1a\x94\x13\xc7\x06\xe5\x04\x94\x13PN@9\x01\xe5\x04\x94\x13PN@9q\x1f\xca\x89\x07\xf9F\xc3,yFi\x84\x16a\x85\xc6P\x96\xf1\xa4\xae\xdd\xa3\x17d\xf8h\x1c\x92I\xf4l\x0c'\x92\x18\x19\xc5\xa8\x0f\x8c\x8dz\xc2\xd8\x14\x01E\xc4\x99\xc7\xc5\x13\xcbI'b\x85\x13H&1C*1*\x94\x98%\x93\x80$\x82@\x121:\x88\xc4\x84\xd4 $\x11\x90Dx\xf7\x84$B\x1b$\x11\xc7\x06I\x04$\x11>\x83$\x02\x92\x08m\x90D@\x12\x01I\x04$\x11\xc6 \x89\x98\xa3*\x80$\x02\x92\x88\xd6 \x8986H\" \x89\x80$\x02\x92\x08H\" \x89\x80$\x02\x92\x88\xfb\x95D<\xf2\xcfmX\x85\x84\x08K$\xfeB\x85\x1c\xca$\xea\xd7\xe9\xdf\x80N\xe2\x910:$\xae\xe8\xed5\xa6\xb8\x88\xf2\x89\xb1\x08\xcf\x18\x9b\xa2\xbb\x88<\xff\xb8\xf6bI\xf5E\xbc\xfe\x02\x89+NVcD\xe81f*2\xdc%A\xa5\x01\x95\xc6\xd8=\x19\x13\xe5'Pi@\xa5\xe1\xdd\x13*\x0dmPi\x1c\x1bT\x1aPi\xf8\x0c*\x0d\xa84\xb4A\xa5\x01\x95\x06T\x1aPi\x18\x83Jc\x8e\xd0\x01*\x0d\xa84Z\x83J\xe3\xd8\xa0\xd2\x80J\x03*\x0d\xa84\xa0\xd2\x80J\x03*\x0d\xa84\xeeC\xa51U1q\xac\x92\x10\xd5~O\xcb\xbbW\xa4a\xbbBW)cB\x87\xb6\xcdqu\x00W&;\xdd]\xb6\xd95+\x88\x90TVM\x88\xc4\x91\x92\xe27\xa2\xb0x$l\xcd\xca=F\xc0\xfehxi\x90\xc2dv9\xb1J\x83\xd1\x82R\x96\xb3-\x95lE\xf7\xbc*\xe6\xe3|!i)W\x8bi\x02BJ\x0b+\x0b\xd0g\xaco\x01sb\xf7\x95+\xf2\xac\x18 \x08\xae9\xcf\x19u\xc7s\x1b\x0f5\xda\x80\xd9\xed\x139\x15\xbb\x95\xcc\xf6~\xed\xcah\x19c>\xea\xdd\xaa\xf6\x16\xea\x04\xfb\xf2\\\x8f\x11f\x14I\xeb\x1d\xda\xbb\x17\xaa\x80\xc1V\xa8\x02\xe2\xa2\xca\x04\xaa\x00\xa8\x02\xbc{B\x15\xa0\x0d\xaa\x80c\x83*\x00\xaa\x00\x9fA\x15\x00U\x806\xa8\x02\xa0\n\x80*\x00\xaa\x00cP\x05\xcc\x01\xebP\x05@\x15\xd0\x1aT\x01\xc7\x06U\x00T\x01P\x05@\x15\x00U\x00T\x01P\x05@\x15\xf0iU\x01\xban\x01Q\xc07\xec\x90\xf3\xbb\xbd^\xe7]\xab\x02\xd2\xf67\xbb{\x8f\xfc_4'x\xaf\x0b\x7fR7\xe0\x91J\x00\xba.\xe8Z\x10\x89\x85\x81\x98]\xe9\xbd\xcaR?.\x0b\xc4\x82\xe85+\xe9\x96\xad\xd69O\xae4\xca\x9dUL\xc4\xea\xf7\x06\xf1\xaf\xa9L\x0c5\xe6\xd5=}\xf1\xa0mW{\xd6{o\xa0\xc8\xb6\x05KW7Y\x91\xf2\x9b{;\x89F\xee\x1b\x0d\x8fxq\xe2Y<\xc1\xbf6\x15\xc8\xaa:\xa4T\xb2\x95\xce\x9a\xb02\x11\xe6\xd5\x81\x95 \xf3I+N=w\xb6NV\xb2\xa4\x85\xd8\xb0\xb2\xee#A\x19F\xf4 \xbd.\xf5\xear\xc8\x08\xe1&c\x19@F\xebf\xa5\x1fO\xbfQ\xcf\xda\x84J5\xe6\x9a)\xbb\xee\xae\xe4\xeb\xff\xf1\xf9\x97/_\xbe|\xea8\xb8\x91q\xc8]\xc9\x84z\x8c\x86\x1a\x10\xc8A2\xc6\xdb\xd5\xa9\n\xbe\xf7\xbf{\x8f\xb6\x92\x90\xb0\x18'\xa2\x88\x98\x88/!\x17<+\x0c\xc9cj.$\xf9\x15+l\xbc\xd64\"+\xccdF\xcd\x97ha\xab\xe5G\x03?\xbc\xfb\xf8\xf6\x95~\xc10{\xda\x99z\xa6\xc3\xc9\x97\x85\xb4s\x98&\x84/\x02\xa4\xcaNo\xcc\xfb\x9b\xef\x84\x9d\xec\x18\xf5CX\xbd\xafn\xf9\x96\xeb\x99\x83;\x18n;\xc2\xbe\xcae\xa6_\x04\\E\x8f\xbaxL\xaad\xa4^\xab\x84\xe6\xf9}\x0f\xde\xddS\xed\xe9\xedjK\xc5*\xcf\xf6\xd9\xbd\x9d\x90\x15t\xadG\xbc\"]I\xde>4\x0e\xacP\x93\xdc\xd0iCR+\xd7\xed\x9d\xf2\x9az\xb9\xeej[\x91\xae\x03\x1e\xb8\x0e\xe3w\xda\xe5\xc6d\xd1\xb1\xc4\x91\xac\x99\xbca\xachs\xcdh(paXb\x9b\xd5\x86\x16\xae\xb0@N%\x13\x8d\xecM0\xa7d\xc4\xa6\xddR7\xde\xbf\x91\xcf_\xfe\x9fG\xbb\xd8F\xc6=\xb8\x9a\xa3\xa1\x0d\x1bl\x856,\xa6\xff\x1b\x836\x0c\xda0\xb7A\x1b\xa6\x0d\xda\xb0c\x836\x0c\xda0\x9fA\x1b\x06m\x986h\xc3\xa0\x0d\x836\x0c\xda0c\xd0\x86\xcd\x91WA\x1b\x06mXk\xd0\x86\x1d\x1b\xb4a\xd0\x86A\x1b\x06m\x18\xb4a\xd0\x86A\x1b\x06m\xd8'\xd6\x86\x19\xc8\xb9b\xb7,\xa9$[%9\xcd\xac\xe4\xc0\xf7\x95\x9d\xf7\xe6\x90\xb7\xe6\x88\x0bu\xc0\x93\xba\x8e\x8fT\xfe\xa5[\x05T\x06T\x06Tf\x0c\xa8L\x1bP\xd9\xb1\x01\x95\x01\x95\xf9\x0c\xa8\x0c\xa8L\x1bP\x19P\x19P\x19P\x991\xa0\xb29\xb4 \xa8\x0c\xa8\xac5\xa0\xb2c\x03*\x03*\x03*\x03*\x03*\x03*\x03*\xfb=\xa0\xb2\xda\x0etk\x97\x8c\xfa\xa0\xcd\xac5\xfb\x05\xbb\x95\xab+vw\xe2rFo\xd0\xa1\xf7b\xff\x0f_\xc8\xa1\xaeE\xfd\xbdy\xfb\xc5\xf7\xb5z\xe2\x0b\xfb%\xf7\xf7t\xcb>\x98\xd5wgf\xbb\xa70\xcd u1\xaaX\xe58F\xf6\\H\xc2tdK\x87\xc3\xce\xc8\xa5\xec\xdc\x00\x07yG2\x1f\xe4\x91;V\xea\x0f\xcd\x93\x82\x93=/Y\x1d\xe6t\x0d\xde\x92K\xea\x01Y\xd1\xce\xf4\xae\x0d\x1d\xfbn\xbf=\xbd\xf6\xa2\xfe\xa3\xa8\xf6k\x13\xa4\xa9#\xb3\x9d0\xa0\xaf\xbd]G'\xbc*\xe4J\x17\xe6\xbb\x87n\xa8 \x82\xc9\xe7$\x93\xa2\x0e8\x0bR\x15f\xf1sjbp7\x998\xee\x1f\xe3A\x1fS\x15\x03AM\xabz\x03VV\x90\xed\x87\xf7\x17\x0d'\xadG\x03An\xd45s]\x1e7\xcfHxi\xca\xd0\xec\xa7^\xe3Y\x8f-j\x1c\xd6\xe1\xbd\xaeg\x9c\xee\xa8\x8f\xf8\x91\xef\xdbz\x07g\xc2%;0\x1d}yC\xcb\xe6\"\x8d\xdd\x9f.7$g\x1bYk2\xacH\xa3\x9ez\xea\x08\xb6\xb9A\xccI\x94\x9f\xd7w\x84\xd1dG\xe8\xe1\xf0 \xbd\xd8UJ\xb4\xc7\x87|\xd99ByT\xf7PNdY1\xa2\xfe\xc8\x8a4K\xa8d\x0d\xcb\xb2\x1e\xd4;\xda\x8e\xd4-.+\x92\xbcJ\x07\x13Kj\xce\xd2\xc0\xc4\xc1\x15\xd3h\xba\x13\xe3V\x8f\x86\xb6M\xc3\x90\xf7O\x97bp\xb5\x06M\xd0s\xf1\x92 +\"\xd0\xb7W{?\xaa[\xee\xcc\xdeM\xd9\xb6\xe0\xe5\x80\x10\xd4wc\xff\x14\xc63\xa7^\xd8aZr\xc7\x05,\xd95+{\x87\x86.\x9e\xdd{x\xe1\xb2\x8e\xd2\xa6d\xee;\xa1W\x8e:\x87\xc9\x1e@x\x99\xb2r8\xef\xff1+\x12\xf5\xc8\xe2b\xcf\xc5\x0b\x91^\x91\x97g_}\xb9\xa87\xa6\xa7F\x18&\xa7\x0fgG\xf8\x8eI\x9b \xe1GV\xa4\x1f\xf9[{\xd4\x93\xba\xb2\x8f4EB\xfd\xed\x0f\xb1\xca\n\xf3\xa5\x18\x97\x12C~\x02\xe5\x87\xef\x03;\x93\x80G@e\xa6\xae/s\xa8s\x8c\x8d\x9e#eB\xaeh\x9a\x96L\x9c\xf0=\x12~\xc5<\x1f\x95\x19\xf5\x1f\x89\xf0!\xd1\xc3W!K\x9a\x04\xbe\x06\x12QQ\x12\xf1Q\x91\xa8bb`\x8e\xb2\xb7\x1f.\xbex\xf9Q\x7fP\xc4\xc8oZ\xf1M\xa9GpZ\x90\xb7Z\xb4X\xed\xcd\xce\xde\xa2\xb4\x93\xdd/\xd3\x1b6B\xd5\xe0\xfd{\xf3~X\xe5\xf9\xae\x92[\x9e\x15\xdb\x8fv|\xfax\xdb\xbe\xa2j\xbe\xa7f\x0e\xd7YZ\xd1\\\xdf\xc9dSz^\x84\xed\x07\xbb\xd4c\xea\xed\xc7?\x0fv\xa9\n3\xe6\xa5\xcdG\x900\xfa\xc5\x9c\x03\xa3\xdf\xb1E\x14\xf3\x98\xee?\x8c~\xee\xbd\x1e\xc6\xfb\x9fx\xf4\x83Pz\xb0\x15B\xe9\xf8\xfb\x03Bi\x08\xa5\xdd\x06\xa1\xb46\x08\xa5\x8f\x0dBi\x08\xa5}\x06\xa14\x84\xd2\xda \x94\x86P\x1aBi\x08\xa5\x8dA(=Gk\x0c\xa14\x84\xd2\xadA(}l\x10JC(\x0d\xa14\x84\xd2\x10JC(\x0d\xa14\x84\xd2\xf7+\x946\xa4\xbd\x86\xe5K\x9ec\x82\xa6\xad\xe4\x7f\xd3(\xcfH\xbcV2\xdb3^Y\xfc\xe7\xfd\xe0O}\xd0\x1bu\xccGs\xc8\x9fY\xb6\xdd\xd5P\xe5\xf1\xaa\xdaLeW;]\xdbIP\xcf\xab\x9e\x002\x1dl\x052\x8d\x0b\xb9\x11 S S\xef\x9e@\xa6\xda\x80L\x8f\x0d\xc8\x14\xc8\xd4g@\xa6@\xa6\xda\x80L\x81L\x81L\x81L\x8d\x01\x99\xce\xa1\x8e@\xa6@\xa6\xad\x01\x99\x1e\x1b\x90)\x90)\x90)\x90)\x90)\x90)\x90)\x90\xe9} \xd3x\x9c\xd9Y8\xec\x83\x97\xdf\xb0\x82\xef?r\xbd\x8a\xf3I]\x99\xc7J+\xdd\xeb\xa0\x9d\xb1\x17P\xc8\xc1VP\xc8\xb8(\x16\x01\x85\x04\x85\xf4\xee \n\xa9\x0d\x14\xf2\xd8@!A!}\x06\n \n\xa9\x0d\x14\x12\x14\x12\x14\x12\x14\xd2\x18(\xe4\x1c\x90\x07\n \n\xd9\x1a(\xe4\xb1\x81B\x82B\x82B\x82B\x82B\x82B\x82B\x82B\xde\x07\x85l\xcbOY\xd1\xeby'\x17\x1d\x02\x9c\xb4\x92\xbb\xf3\xeb\xcf\xcf\xd7,\xd9}\xf9\xc5\xf9\xafv\xb9\xe8?\xc3\x94\xf3\x82\x17\xd7\xac\x94\xaf{kK\x1f-\xe7\xf4\xe6\x8bv^\x06\x90\xce\xc1V\x90\xce{\x08\x12\x86\x06\x18\xf7\x92\xed\x01.lG\x00YV\xd1c\xcb\xa1d\x9b\xecvP\xf2\xbd\x0d.[~\xad\xc6\x16\xf3DZ\xe9&\x8b\xf3_\xf7b\xab\xae\xc6\xd8\x10\xa3\x0fz\xaf\x8fyR\xd7\xeb\x91\x0e0\xa6e\xbe\xce\xee\xe9\xb7\xe1^\x9b\xb2\x03\x17\x99\\i\x87\xf8\xbbu8\xcf}0\xd77!\xdf\xf2\x92\xbc\xfd\xee\xdbN_|Nn\xd4\x94\xe5\xc0\xcaDMX\xb6:\xdaj\xab\xa2\xa6Ju\xcf\xf0\xdd\n\x9c\xb0\xc2\xff\xa2t\xcdeVlW\x07Vf\xdc\xf3\x99\x81\xd16\xf5\xaeo\xfd\xf0\xaf_.\xcc \x889\x81k\x92\xffK\xc5\xcbj\xbf\xc4\xa9\xbdN\xfd>+\xb2}\xb5\x1f\xf8\xd0|\xc5IHz\xc54\xec2\x14\xef\x9aK\xf3Y(\x1f~\xb4\x1f\xa5\xd2`\xcc7\x9bJx!\xb2\x94\x95,5\xdc\xa0\xdf\xeep\xa5\xf5\xcd\xda\xbd\xd3\xea/\xe1\xd5_!\xabo\x1a3Y\xdep\xd7\xa5\xd5\x85\x9cwK!\x1f\xde_\x0c\xabk^\xb8\xdb\xca\xe11{\xe4 {\xab\x0f\xb11\x0e\xfb\x9dIsw\x99\xc2\xea\xf743\x83Sc\xa0\xcc\x92*\xa7%\xd1\xa2\x02Z\xb4\xd3d[3\xd2\xce\xcezC}\xefLv\x87G;\xd6\xbb<\xd9\xb5\xe05\xb7\xaf$]'&\xe6#\xaa\xc7/\xbdq#`\xd7u\xe1Q\xd0\xa9\xb0\xe8_\xe4\x0f\xef/0\xe6\x11\x8cy\xa3\xa3V\xdc\xbb \x94\xefP\xbe\xfb\xf6\x84\xf2]\x1b\x94\xef\xc7\x06\xe5;\x94\xef>\x83\xf2\x1d\xcawmP\xbeC\xf9\x0e\xe5;\x94\xef\xc6\xa0|\x9f#\x1e\x87\xf2\x1d\xca\xf7\xd6\xa0|?6(\xdf\xa1|\x87\xf2\x1d\xcaw(\xdf\xa1|\x87\xf2\x1d\xca\xf7\x1a\xb0v\x8a\xe9\xbdJ\x1b\xac\xd1\xe1\x9d\x16nt_\x8bOT\xd9t\xc4\xac\x06\xee\x8e\xd4E\xbf\xe7\xdeGE\xa6aj\xad\xea_\xed\xa8\xd81q\xfe\xab,i\xc2\x8e\x15\xb0\x0d\x86\xd6i\xc4\xfeL\xc5N\x8bs3\xa6nL]BV\x98\x9bI\x15D\xb2\xc2\x04a2537%\x1c'#S\xa5<\xa9[\xf7H\x99\xb2j\xcd$\x9e8\xa8\xa7\xf6\xc6\xb3\xac ;vk\x03S\x9f\xb5\xcf\xdd\x8e\xdb\xb4\xdf]~s\x14\xea\x06\xce\x8dO\xe7Kn\xda\x8b\x0b\xc9\x0d\xf0\xb3s;\xf0s\xc7\x80\x9f\x81\x9f[\x03~\x96\xc0\xcfn\x03~\xae\x0d\xf8\x19\xf8\x19\xf89r\x96\x04\xfc\xdc\x18\xf0s\xd7\x80\x9f\x81\x9f\x1d\x06\xfc\x0c\xfc<\xe6|\xe0g\xef1\xc0\xcf=\x03~\x06~\x06~\x06~\xeeY,\n\x04~\xd6\x06\xfc\xfc{\xc0\xcf\x1a\xdeuJ\xe8\xbdE\x7ft\xa3\xbeg\xffa)\xf1\x7f\x9e\xffG\x8b\xaf\xff\xf3\xb3\xff~\xfe\x1fz\xefn8\xf1\x13\xf0`]\xc9\xc0rd\xf39)\xbdSK\x82\xf3\xdc\xd1R\xe1'\xc0\xe6\xf8'u\x8b\x1e)\x03>vH\xd7\xe4'\x00u\xaa/\x9c\x10\xa1\x8a \xf2\x10{\x1a\x13\xbe\xb7Ow\x9d`P=\xb7U\xd7=?\xd6R\x08\x1d}\xf3\x96\xa7C\x91%M\xd4S*\x0c4\x0c\x15\xb4\x13\x84MUl\xb3u\xce\xccg\xc1\xdcO\xea5\x15l\xa5/\xd4R~Q%\xf6{\xb3\xadN\xc9rz\xc7\xd2\x88j\xc5\xf8\xb9\xbd\x0f\xfa\x13\x93\xe3\xd3+\xef]^\xfc\xf8\xc5\xcb\xe6\xcc\xce\x02umD3\x0bv\xeec\xfd[_\x8b\x8e\xea@_\xf3\xe3\xb6\xf4Z\xd2\xbd\x1f\x9a\xec\x03\xc3{_\x8c)\x1aT\xf7\xda\xda\x9d\x8f\xafY\xef\x84\xed\x8e\xbd\xde\xd8\xf9\xd9N\xa8]\x83\x80\xb1\xe0\x0d\x17\xbe\xdd\nv+WW\xec\xce\xcf\xcc\x83\xddj4\x1c\xdck\xea?|wc]\x8bZ\xd4\xa1\xfe\xb4t\x84\na\x10\xd0{\xbae\x1f\xd8/\x15\x13\xf2\xccl\xf7\x14\xa6\xf3\xea\xe9bT\xb1\xca\x91\x8c\xec\xb9\x90\x84i\xe6\xa0A\xc5\x19\xb9\x94\x9d\xa9\xc9A\xde\x91\xcc\x87\xdf\xe5\x8e\x95L\x03\xa9\x82\x93=/Y\x0d\xa0\\w\x85\xce8v\xa23\xab\xac\x90\x7f\xfc\xca]\xc6Hn9\x93\xf0LyQ\xffQT\xfb\xb5 \x9f\xd7\xcc\xac\x03h|\xed\xed:Z'\x89X\xe9\xc2|\x03\xda\x0d\x15D0\xf9\x9cdR\xd4(P\x90\xaa0\x9d95t\xe4&\x13\xfd\xfe\x11!\xf9\xb9\xe0E\xc1L4\xf9D\xd1\x8f}\x92C\xf6\x03\xd9\x8fs\xfb\x94''d?\x90\xfdX\x83\xec\x07\xb2\x1f\xc8~ \xfb\x81\xec\x07\xb2\x1f\xc8~bgI\x90\xfd4\x06\xd9O\xd7 \xfb\x81\xec\xc7a\x90\xfd@\xf63\xe6|\xc8~\xbc\xc7@\xf6\xd33\xc8~ \xfb\x81\xec\x07\xb2\x9f\x9e\xc5J0 \xfb\xd1\x06\xd9\xcf\xefA\xf6\xd3\x02\xe8\xb3+\xd6}\xd6\x85\x90\xaee\xb8\xd4\x0e\xa1\x86\x9f\xeb\xb0\x9a\xc5\x8a\x16\x955\xc0W\x07\xc3\xb6\x83\xa8\x91&\xb8VG\x11\x84\xb8\xef\xd4c\x8d\x17\xfam\x99o6\x82I5S\xefW\x97t\x82\xf9\x82\xc9\xee\xa0x\xf2W\xd8\x88/4\xe2p\xa2\xa9\x9f\xcf\x8f\x83\xb0\x84m\x8cveQ\xedY\x99%\xf5o\xfanKh\xa1\xdac\xe2B;V\xd4\x8e\xaf\x8a&\x147\x98\xb5^\xea\xd2r&D\xebB\x13\xbc\xaa\x84r\xf5\x15\x9b\xe8\xcf~\xf1\xf7\xec\xdc\x01\x12w\xb87\xcf\xf6Y\xacw\xf5\xbe5K\xf6\x91r\x13\xa6\xed\xf6`K\x9e\xab|\x80oMP\xa6\xfb\xd3\xe5\x86\xe4l#ke\x81\x95\x1a\xd4SC\x1da67\x889\x89\xf2\xf3\xfa\x8e0\x9a\xec\x08=\x1c>\xa1\x17\xbb\xbc\xbf=>\xe4\xcb\xce\x11\xca\xa3\xba\x87r-\xdb\xd3\x1f\xa6\xcb\x8a4K\xa8d\x0dk\xaa?\xae\xa6v\xb4\x1d\xa9[\\V$y\x95\x0e&~\xd4\x9c\xa5\x81}\x83+\xa6\xd1q'\x06\xad\x86\xee\x9e|\xa6W\xd8O\x97bp\xb5\x06M\xd0s\xe5\x92 \x0b\xf9\xf5\xed\xd5\xde\x8f\xea\x96;\xb3wS\xb6-\xf8\xf0\xb3|\xf5\xdd\xd8?\x85\xf1\xcc\xa9\x17v\xcdy\xceh\x11\xba\x80%\xbbf\xa5\xf0\xca5\x07\x17\xcf\xee=\xbcpYG/R2\xf7\x9d\xd0+G\x9d\x83\x15\x9am\xf22e\xe5p^\xfecV$\xec\x15I\xb8\xd8s\xf1B\xa4W\xe4\xe5\xd9W_.\xea\x8d\xf92\xd0\xf3_wT\xec\xc6\xb2\x02\x19\x15\x9b'-\x90W\x0d\xe6Q\x85>\xa9[\xf8\xf8E\xa1>\x15\xc7,\xb5\x99_\xda9\xca b\x82\xf8K\x8b:#%\x9dS\x05\x9dcr\xcei\xbe8Y\xca9\xee\xd9\x85e\x9c\xe3\"\xceI\x12\xce\x08)Y\xdb\x80%\x94d\x10\x92AH\xe6\xde\x0e!Y\xc7 $\x83\x90\xac5\x08\xc9$\x84dn\x83\x90\xac6\x08\xc9 $\x83\x90,r\x96\x04!Yc\x10\x92u\x0dB2\x08\xc9\x1c\x06!\x19\x84dc\xce\x87\x90\xcc{\x0c\x84d=\x83\x90\x0cB2\x08\xc9 $\xebY\xac\xa8\x07B2m\x10\x92\xfd\x1e\x84d\xbb\xf6K8d\xe4%\xda\xfdA\x99\xd20F\xf2L=o\xec\xdf&\x86\xb1N\xc8\xa1d\x9b\xec\xf63\xd7\xfb`\x1c\xa2'\x9f$\x05\x958\xffU\xff\xff\x9f\xe7Zw\xb2RN\xe17~\x0dB\xc7Q\x1f\xd5\x01o\xf5\xfe\xdf\xf2Rc\xc9&QM+\x8f\xa1\xfbF2cpkV\x10s\x92A\xdc\xd3\x06xum\x9c\xb2\x05\xc7\xf9\xecn\x8fV\xbf`\x1a\xbf\xa8ta>\xaf\xf7Uf\xf4\xd0\xf1p\xd3\x05\xcf\xda\xacA\xd4\\i\x1b(\xea\xf7~5P\xd3\xc2V\xc5=\xd9\xf9\xe1\xdd\xc7\xb7&\x9f\x9b\xed:fz\x90\xe9\x18\xd6e!\xed\xc0\xd9\xc4\x0d\xbb\xa3\xa7\xa383at\x9dHd\xdb\x82\xca\xaa\xd4\xf9\x95\xccM\xa6&\xc7[\xbe\xe5z\x98\x9aL\xf7\x1d\x1dt\x14\xf3\x0f\xcaq\xddS\x1f\xde_\x00\xeb\x13`\xfd\xd1\x98\xf6\xf8}j\x0cX\x1fX\xdfm\xc0\xfa\xda\x80\xf5\x8f\x0dX\x1fX\xdfg\xc0\xfa\xc0\xfa\xda\x80\xf5\x81\xf5\x81\xf5\x81\xf5\x8d\x01\xeb\xcf!\xe3\xc0\xfa\xc0\xfa\xad\x01\xeb\x1f\x1b\xb0>\xb0>\xb0>\xb0>\xb0>\xb0>\xb0\xfe\xef\x1d\xeb\xa7\x1d\x10L\x1e\x9a\xa1\xeb\x8a\x05>\xe0\xf4^o\xef}\xbb\xa9mK=\x08g\xeb\xe4E](\xd9\xf3\xb4\xca\x99\x13\x80_\xbe\xb9\xf8hw3\xe5>\xa9\x9b\xf7H\xf1w\xd7;]\xebU\xc6\xec4\xf8\xe6\xcc\xd0E}\xaf\xb4\x16\x84na\xe4&X\x91\xaeXA\xd79KCP|\x98\xec\xa2k1\x11\x9b\xfe\x99\x88\xf9\xbf\x0e@\xa4\x990\x7f\xabn\x91\x94\\\x88\x17&M\x80\xe6\xe7\x9e\xc2\xea\x8e\"\xc8\xa6\xe4{\x1d\xf5\xf4\xdd\xd8\xba0\xd7\xc3\xb5d \xcb\xae\xd9\xc3\xb4~p\xb2\x05\x1d\xa0\x87\xd0I\xcd\x8f\x80\xf8\xe6\xce\x1a\xe5\xf6\xfaW\xb3 \xdf\xde\xe3\x1f\xde_\x0c\xca\x03\xb4\x07\xb4\x1f\x8dX\xc7\xddD\x80\xf6\x80\xf6\xbe=\x01\xed\xb5\x01\xda\x1f\x1b\xa0=\xa0\xbd\xcf\x00\xed\x01\xed\xb5\x01\xda\x03\xda\x03\xda\x03\xda\x1b\x03\xb4\x9f\xc3\xbd\x01\xed\x01\xed[\x03\xb4?6@{@{@{@{@{@{@\xfb\xdf\x03\xb4\xf7\x92t\x93~\xff\x9cVrw~\xfd\xf9\x9aI\xfa\xf99M\xcc\xd7\x0f\xb2b\xc3\xcf\x7f\xa5iZ2!\x02\xb9\xf0_\x9b\xfd/\x8b\x0do\xe9\xba\xf9M/\xae\xafW \x0b\x92\xf0\xfd\xde\\:\x9a\xe7\xcd>&\xdeeK\xed\xbd\xc3?u~$\xe0\x7f<\xb5\xfb\xf6\x88|\xa7\x16v\xf3\xa3e\xf1\xca)#$^\xfb\xcd\x02O\xb7/\x9b\xfb\xd0\xcc]\xdeP\xc1\xac\x0b\x16E\xf3\xf6\xf2\x87\xb8\xb47\xa0t\xa8\xd6\xab+v\x17:\xd6\x8b\xfb\xc6\xeaE\"\x90\xdfh\x05\x8d\xc5\x84\x8d\x8c\xcd\x02\x7f\x81\xf2\x8eb?\x81\x17\x88e\xe1\xdf(\xfe[\x1a\x00\xc6#\xc0\x85 \xe0<\x0c\x18(N94\x1a\x04\x9e\x8c\x02\x97\x86\x81\x13q\xe0\xc2@p\x1a\x12\x9c\x08\x05C}\xb8\xc1\x85\xb1Xpa0\x18\x85\x06\x17\x84\x83\xa7\xe2\xc1Y\x80p!D8\x07\x12\x06\n\xd3\xf8p\x1c\x13\xde\x0b(\xbc?Tx/\xb0p\x1a.\\\x1c\x18\xc6\"\xc3E\xa1a<6\x9c\x0c\x0e\xa7\xa3\xc3\xd1\xa1\xf0\xb3\x08x\xb8\x00>\x1c\x01\x88\x91\x13\xaa\x08\x888e\xd65\x19$\x86\x1e\x82k~\xcd\"Pbl\xfd\x16\xc4\x89S\x80\xe2\xc2Hq\x1eT\x0c\xf5 1\x8e\x15g\x83EOi\xealchq)\xb8\x18M\xc8\"\x00\xe3$\xc48\x12\xf5\x9e\x85\x19\xc7\xca\xf4\x06\xdb\x16\x82\x8d\xd3\x9d\x19\x0f\x1c\xc7\xda6\x03:\xce\xc4\x8eA\xb2\x12\x81\x1e\x97\x85\x8f\xcb\xe0\xc7\x88\xbeq2\x82\x8c\x86\x90q\x182\x16DFt\x9c\xe90r\n\x8e\x0c\x00\xc9\x85\x90\xe4D(9\x0fKN\x02\x93cN\x0f\xdeBc\xc7\xc6\x03\xca\xe5\x10\xe5h\xa5\xbc\xf7\xcfr\xa02\x02U\xce\x87\x95\x9e\xe2\xd4n!\\\xb90\xb0\x1cC\x963\xa1\xa5\xa7,\xf3\x0e\x1d\n#\x8c\x83\xcb \xba\\\x1e^.\x8e/\xfd\x00sI\x84\x19\x031\xa7c\xccI s\x06\xca\x9c\n3\x8383\x0c\x97\xe2\xf1R,\xd2\x9c\x015'b\xcd@s\xe7\xa0MOQ\x1dl\x18wK\xc4\xe1\xcd@\x97/\xb6a\xc0\xb9(\xe2\x1c\x81\x9c\xf7\x839\x97\xea\x8b\x13P\xe7\x14\xd8\xe9\x9e\x1e\xd44\xd3|\x1b~\x16\xc7j#\x1a\x83\xaf\xe5\xb7&\xd8/\x15+\\\x9f\xc6&'\x96\xdf\x8bC\xfc\xc3\xb9N\xb2\x83>\x87\x8b%\xcd\xb2\xc8.\xa1\xed-\x9f<\x9a`\xba\x81\xeb\x93\xb62X6\xd93,\x9b\x8c\x8d\x94\xcd\xa4\xa7X6\x19\xc3L\x17!\xa6sx)\x96M.HI\xa70\xd2I\x84\x14\xcb&O\xe5\xa23\xa8\xe8\"Lt:\x11\xc5\xb2\xc9SH\xe8\x14\x0e\xba0\x05\x8dc\xa0\x0b\x12\xd0X\xfe\xe9\x98\xccc\xd9d\xdf\"\x88g\xec,i2\xed\xc4\xb2\xc9(\xc69\x87pb\xd9\xa4o\xb7Q\xaa9\x81i\xc6,\xb8\x9b\xc23\xb1lr\xce\xca\xc31~\x89e\x93\xf1\xcc2\x92X\xc6\xf0\xca8Z\x89e\x93d&\x9f\x9c@'\xb1lr\x01\x1a9\xca\"\xe7\x92H\xefs\x13\xcb&\x8f\x0c\xcb&\xb1lr`K,a\x8be\x8c\x93 \xe3$\xbe\x88e\x933\x99\"\x96M\xd6\x16\x93\xeb\xd8.\x8c\xeb\x94\xd1{\x8f\xb6\x9b\x87k\xf8\xea\x9fM'\xee\x8e@\xf7\x95+9\xb0\xc23\x90,\xd9\x12C\xd1|EXG\xc5\xd5\xfds\x9b \xa9Y\xb7\xdd\xc3\xb9p\xb3\x13E\xf8\xf7\x1d+HB\xf3\x9c\xa5&M.-Ld\xc8\xe4\x11~n\x02h\xbf\xa8\xea\xdaHO\xc2\x0bQ\xa9\xa7-\xd9e\xdb\x9d\xfd\xf4lS\x1e\xdf\xb4\x1djK\x85\x9a\x16I=;\xd9\xd6\x1f\xb6m>R\x9b\x15 /K\x96H\xb3\xfc\xa7\xfb4tr\xce/\xedf\xd7\xba\xd2G\x9f\xe0\xb9\x7fM\xbb&\x81\x15\x81\x15{\x06\xac\x08\xac\xe86`E`E`E`E`E`E`E`E`\xc5\xc6\x80\x15\xe7\x909`E`\xc5\xd6\x80\x15\x8f\x0dX\x11X\x11X\x11X\x11X\x11X\x11X\xf1\xf7\x80\x15[\x93\x99\xcc\xd9\xab\x86\xdd\xe8@\x9c\x93\xb2\x0d\x8eli\xd7\xf1lk\xf0E\xcf\x06\x8b\xf5\xbf\xea\xd9\xfcl\x1f .2e,H\x82\xc2\x1c\xa8`\xb7r,\x03h\xc4\xaaHo\xf8#\xbc6\xb2\xb6\xba\x165\x8bU\x7f\xdah \x15\xc2\x84<\xdf\xd3-\xfb\xc0~\xa9\x98\x90gf\xbb\xa70\x03*U1\xaaX\xe5HF\xf6\\H\xc2t\x8cM\x07\xe6\xce\xc8\xa5\xec\xdc\x8a\x07yG\xb2@\xd6\xa2\x92\xe9\xeb^p\xb2\xe7%\xab\x03\xae\xae\xc7\x88\xe4\x92z\x90Z\xb43\xbdKX\x9b\xde\xe8\x8d\"\xe9\xd3k/\xea?\xcc\x8aZ\xf5\xec\xadc\xc4\x9d\x80\xa4\xaf\xbd]G\x9b\x85\xb9\xba0\xdf\xdd|C\x05\x11L>'\x99\x14u\xe8[\x90\xaa0\x9d95\xd1\xc0\x9bL\xf4\xfbG\xc4\xb7Ek\xac;\xe5\xeb\xa2\xaf\xdd7\xe3\x87\xf7\x17\xcd\xf7E\x87\xed\x08rf\xac\xa7\xc5zZ\x87\xc5\x04N \xc07\xc0\xb7wO\x80om\x00\xdf\xc7\x06\xf0\x0d\xf0\xed3\x80o\x80om\x00\xdf\x00\xdf\x00\xdf\x00\xdf\xc6\x00\xbe\xe7\xb0c\x80o\x80\xef\xd6\x00\xbe\x8f\x0d\xe0\x1b\xe0\x1b\xe0\x1b\xe0\x1b\xe0\x1b\xe0\x1b\xe0\xfb\xf7\x00\xbeC\xebi[$}v\xc5\xba\xcf\xba\x10\xe4\xb5T\x97\xda!\xd4,V\xd5a5\x0b\x1a-*k\x10\xb0\x0e\x86m\x07Q#\xcdt\xd5m?\x86u\xdf\xa9\xc7\x1a/\xf4\xdb2\xdfl\x04\x93j\xa6\xde\xaf.\xe9\x04\xf3\xf5\xa2\xd3vCV\xbc2\xe7\xea\xfc\xd6\xae\xf1\xdd\xd0\\\x8c,\xf2%\xbe\xd0\x88\xc3\x89\xa6~>?\x0e\xc2\x12\xb61\xda\x95E\xb5ge\x96\xd4\xbf\xe9\xbb-\xa1\x85j\x8f\x89\x0b\xedXQ;\xbe*\x9aP\xdc`\xd6z\xa9K\xcb\x99\x10\xad\x0bM\xf0\xaa\x12\xca\xd5Wl\xa2?\xfb\xc5\xdf\xb3s\x07\x90\xdc\xe1\xde<\xdbg\xb1\xde\xd5\xfb\xd6\x80\xd9\xc7\xceM\x98\xb6\xdb\x83-\x8e\xae\xf2\x01\xbe5A\x99\xeeO\x97\x1b\x92\xb3\x8d\xac\xb5\x06V|PO\x0du\x84\xd9\xdc \xe6$\xca\xcf\xeb;\xc2h\xb2#\xf4p\xf8\x84^\xec*\x00\xda\xe3C\xbe\xec\x1c\xa1<\xaa{(\xd7\xeb\xe3\x89\xfa#+\xd2,\xa1\x925\xac\xc9zP\xefh;R\xb7\xb8\xacH\xf2*\x1dL\xfc\xa89K\x03\xfb\x06WL\xa3\xe3N\x0cZ\x0d\xdd=AM\xaf\xb0\x9f.\xc5\xe0j\x0d\x9a\xa0\xe7\xca%\x13\x16\xf2\xeb\xdb\xab\xbd\x1f\xd5-wf\xef\xa6l[\xf0r\x10\xc1\xaf\xef\xc6\xfe)\x8cgN\xbd\xb0k\xces\xd6\xf9\xbe\xa6\xe3\x02\x96\xec\x9a\x95\xbdCC\x17\xcf\xee=\xbcpYGAR2\xf7\x9d\xd0+G\x9d\x83\x15\x9am\xf22e\xe5p^>\xa2\xbaX\xc2\x1b\xb3\xf2-L\xf8\x9av\x9bx\xc1\xfe\xdb\xaa\x1c\xda\xcfZ\xda\xa2\xea\x8b\xecJZ\xf0\xa4n\xd9\xe3\xceY\xe0Sn\xcc\xd2\x9c\xc9\xa0\x00c\x94=\xc4\x04\xef\x17\x97^\xc4 /\xe6\xc8.\xc2\xf2\x8aY\xe2\n}\nO\x81\xa3\xd2\x8a\x05\x84\x153e\x15\xfe/\x85D\x89*N\x92T\xcc\x12T\x10\xea\xfd\x02\x91\x8c\x93S\xcc\x11S\x84\x10g\x94\x94ba!E\x94\x8cbA\x11\xc5\xa8\x84b!\x01\xc5)\xf2\x89\xc9\xe2\x89\x05\xa4\x13\x0b\x0b'Fd\x13\x8b\x8b&\xeeG2\xb1\xb8`\"^.1O,\x11p\xfa\x98Tb1\xa1D\x9cL\xc2\x11\xa5\xf0\x8f\xaf\x0bK$\xc6\x04\x12'\xca#\x02\xe2\x88\xd1\xe9\xc9\xa80\"n\xfe\xb2\xac(bL\x121^\xa7yr\x88zdw\x148&\x86XP\nq\x82\x10\xc2-_\n\xc9 \x96\x15A\x84%\x10K\x08 \xa2\x08\xfe\x88\xf8!Z\xfa\xe0'q\xd3e\x0f\xfe\xb2\x9c\xf1\xf0E\x04\x0fS\x9c\x15+v\x18\xf7I\xb4\xd0a\x86\xcc\xc1\x87_\xc7$\x0e\xcb \x1cN\x977\x04\xaf\xf7\x89\xd2\x86(a\xc3\xb8\xac!F\xd4\x10t\xf6TAC\xac\x9c\xc1#fX@\xca0A\xc80]\xc6\x10-b\x08\xb0\x7fou\x02\xc7\xc4\x8a\x17\x96\x91.\x04+\xef\xd82K\xb4PG\xa1\x1d\xe5y$\x0b\x0b\x0b\x16\xfcr\x85\xb9b\x05\x1d\x1fqU\xdc-UXV\xa8\xe0{\x0d\x1e\x13)x%\n\xcb\n\x14\xe6\xcb\x13\xac\x0d|\xf8\xd8\xc0\x87\xc1\x87}\x06>\x0c>\xac\x0d|\x18|\x18|\x18|\xd8\x18\xf8\xf0\x1c\xc4\n>\x0c>\xdc\x1a\xf8\xf0\xb1\x81\x0f\x83\x0f\x83\x0f\x83\x0f\x83\x0f\x83\x0f\x83\x0f\xff\xde\xf9p\xd6\x1d\x96C\x19\x9c\xbfQW>Qoy\xcf\xf5#\xa6\xc6\x86YJ\xb2BHF\x07WV\xfdnyr\x8f\xb16\xaf\xfb-e^3\x0d\x9a3\x96Z\x96\xb19z\\\xd8H\xbd\x8e\xe6\xad\x19S\x9d\xdbf\xad%\xcf\xf2\xecJ\x87\x13\x07'\x12\x9f\x99\xa0\x92\xed\xa3\xbd\xe2\xaaC\xaa\xdfW%\xafKQ\x9d\x8bl*Y\x95M\xd8\xad\xa9i%w\x86\x84/H\xc1I\x9f\xc89\xb2\xef\xb6\x0e\x8e\xbcB\xdd+2\xdd\xf3\xfd\xab\xe7\x84\xb9\xffc\xd0\xfc\xa9\x89Y\xe3\xf2\x0fO\xd2\x07\xacY\xb2\xfb\xf2\x0b\xbf&\xe0\x8d\xde\xfe\xbed\x9b\xec\xd66U\x90u\xe7G{@\x0c\xcav\xf2\xfe7\xc7e=Z\xd2o\xda\xbd:\xe8\xcaN`\xbd\xe1\xc8Z\xd7\x03\xa3\xb8\xbe\x7fA\xcaC2(l\xd2\xe7\x99\xff\xd8\xec\x04\xa0\x7f\xe4G\x00\xfd\x98\x800\x01\xd0\x07\xd0\xf7\xee \xa0\xaf\x0d@\xff\xd8\x00\xf4\x01\xf4}\x06\xa0\x0f\xa0\xaf\x0d@\x1f@\x1f@\x1f@\xdf\x18\x80\xfe\x1c&\x0e\xa0\x0f\xa0\xdf\x1a\x80\xfe\xb1\x01\xe8\x03\xe8\x03\xe8\x03\xe8\x03\xe8\x03\xe8\x03\xe8\xff\x1e\x80\xfe\x0cD\xda|\xd1r\xb5\xbe\x93,\xf8]\xcbz\xed\xacd\xe2#\xff\xd1\xdc\xc8 /\xaeY)E\xf3\xd5\xcb\xd7\xf5Jj\xb5\x9b\xbaz\xbd8\xc4l\x9c\xea:\xb9\xdd\xef\xd1b\xd5\xda\xb1\xc6\x03\x13\x90[8\xc0\xe1r\xc5(_u\x97a/b\xbb\x12\x1a\x80\xb5{\x00\x00\xabg;\x00k\xc7\x00X\x01X[\x03`\x95\x00\xacn\x03`\xad\x0d\x80\x15\x80\x15\x805r\x96\x04\xc0\xda\x18\x00k\xd7\x00X\x01X\x1d\x06\xc0\n\xc0:\xe6|\x00V\xef1\x00\xac=\x03`\x05`\x05`\x05`\xedY,\xec\x02`\xd5\x06\xc0\xfa_\x05\xb0Fd\xd46\x1c\xb5S\xd2\x82\x0b\x82;\xd1\x84\x93P\xaf9\xc18\xeb5|\xf0#\xd7\xac\xb1\xc3z-\xe3\xb5c\x8d\xe4\xa4\xdb\xe6S\x19o\xef\xa4v\xbfG\xcfx\xb5\x03&A\xbf@\x8c(\x8a\xff\xf6\xdc4\xca\x7f{\xd4xP \xf0\xaf\xfb\x00\xe0_\xcfv\xe0\xdf\x8e\x01\xff\x02\xff\xb6\x06\xfc+\x81\x7f\xdd\x06\xfc[\x1b\xf0/\xf0/\xf0o\xe4, \xf8\xb71\xe0\xdf\xae\x01\xff\x02\xff:\x0c\xf8\x17\xf8w\xcc\xf9\xc0\xbf\xdec\x80\x7f{\x06\xfc\x0b\xfc\x0b\xfc\x0b\xfc\xdb\xb3X\x14\x07\xfc\xab\x0d\xf8\xf7\xf7\x84\x7f\x8f\xe2\x02'\xf2\xdfI\xa0w\xcf\xd3*g+\x9b\xdfY\xf8\x01\xef\xf7zG\xbbhW\xb4\xdfC\xcessW\xdcfBj\n\xa2\xf7\xab\x13F7\xd1\x92\xd9\x8c\xb7\x7f\xde'\xb5;\x1e+\xdd\xed\xf9\xb1k\x12h\x0eh\xaeg@s@sn\x03\x9a\x03\x9a\x03\x9a\x03\x9a\x03\x9a\x03\x9a\x03\x9a\x03\x9a\x03\x9ak\x0chn\x0e\xdd\x02\x9a\x03\x9ak\x0dh\xee\xd8\x80\xe6\x80\xe6\x80\xe6\x80\xe6\x80\xe6\x80\xe6\x80\xe6~\x0fh\xceX\xf8\xfdX\xa3\xb3>\x81\x1a_8w| t1\xe7\x03\x82\xf6\xe1\xfd\x05\x16\xd19\x0e\xc0\":\xcfv\x90\xba\x8e\x81\xd4\x81\xd4\xb5\x06R'A\xea\xdc\x06RW\x1bH\x1dH\x1dH]\xe4, \xa4\xae1\x90\xba\xae\x81\xd4\x81\xd49\x0c\xa4\x0e\xa4n\xcc\xf9 u\xdec@\xeaz\x06R\x07R\x07R\x07R\xd7\xb3Xj\x02R\xa7\x0d\xa4\xee\xbf\n\xa9;eA\xdb\xf9\xaf\xea~\x0c$.\xedQ\xb97w\xaa{7\x8b\xdb\xd4\x15\xec\xafg#Y\xb1\xe1\xeaik\x7fV\x85\xdb\x12\xfd\xab\xd6L\xa9v\xb7\xc7\xbet\xcd\xc7\xc3/\xc6A\xaa9\x88*\x148\x8e\x02T\x0b\xe3\xa9(8\xb5 \x9a\x1a\x05S\x0ba\xa9S\xa0\xd4d$\xb5\x00\x90Z\x18G\x8d\xc0\xa8\xc5Q\xd4\xfd\x80\xa8\xc51T<\x84\x9a\x87\xa0\x02N\x1f\x03P\x8b\xe1\xa78\xf84 =-\x0c\x9e\xc6\xb0\xd3\x89\xd0)\x80\x9cF\xa7'\xa3\xb8)n\xfe\xb2,j\x1a\x03M\xe3u\x9a\x07\x99\xea\x91\xddQ\xe0\x18bZ\x100\x9d\x80\x97\xdcP8\x04\x97\x96EKa\xb0\xb4\x04V\x8a\xe2\"#H)\x1a(\xf9\xe3\x9b\xd3a\x92\xbf,g\x94a\x11\x8c4\xc5Y\xb1\x08i\xdc'\xd1\xf8h\x06<\xf2\x05\xb5\xc7\xc0\xd1r\xd8\xe8th\x14\xbc\xde'\x02\xa3(\\4\x0e\x8bbPQ\xd0\xd9S1Q,$\xf2 \xa2\x05\x00\xd1\x04<4\x1d\x0eE\xa3\xa1\x00Q\xf1V'pL,\x12Z\x06\x08\x05+\xef\xd82\x0b\x05\xd5\xd8\xc7Q\x9e\x07\x04-\x8c\x81\xfc\x10h.\x02\xd2\xf1\x11W\xc5\xdd\x00hY\xfc\xe3{\x0d\x1eC?^\xf0\xb3,\xf6\x99\x0f}<\x80g\x16\xde\x19E9\xd3@N4\xc6\x99\x08q\xa6 \x1c/\xc0\xf1\xd7&6\x90\x1e\x07o&\xa2\x9b \xe0\xc6\xd9\xb4e\xa1\x8d\x0f\xd9\x9c\x00l\x9c\xd1\x19/\xae\x99\x07kB`fy,szO\x8aF2\xb1@\xe6\xb4\x85S\x06\x82,\xb4z\xcar\x9a\xee\x12\xaa\xb6^X\x1b\xd53\xac\x8d\x1a\xeb\xac\xad-\x8c\x92ba\xd2<\x9c\xe4-\x0ck\xa3\xb06\xaa\xb59\xe0\xc9[\x18\xd6F\x1d\xdbB\x10\xea4\x0c5\x03D-\x82\xa2\x16\x87Q\xa38\xea\x1e\x80\xd4}!\xa9{\x80RS\xb0\xd4\\0\x15\x1c\xc3\xc7\xd0\xd4\x82p*\x16OM\x04T\x8b#\xaaqHu2\xa6\xc2\xda\xa8\xd1\x9a\xcd\xc3V\xce\xa2\xb06j\x0e\xc0\x1aCX\xcb@\xacH23\n\xb2&\xa0\xac\xd1\x85\x1d\x13q\x16\xd6Fam\x14\xd6Ful\x06\xf4\x8a\xc7^X\x1be\x0dk\xa3\xb06\nk\xa3\x8em>&s\x16\x87\xb5Q\xce\x03\xa2\xc0\x1a\xd6F-\x87\xd9\xb06\xead\x08\xb7L\x9f\x8b\x06q\xf1(.\xee\x03c\x9d\xc5I\x84<\xecg\xc5t\xb5\x02_\x13{\xaf\xb7\x93_*Vf\xcc|E\xacmI=\xea\xf5VT\xbd\xae\xe4\xce\x1c\xf5\xa4\xae\xfb#]H\xd5m{\xd7z\x951;\x99(\xb4}H\xb5\x0e\xa8\x9fAf\x91\xd9\xf1C \x08\xd4\xc28mOoW{\xb6\xe7\xab\x86\xfe\x04\xa8[\x94\xfa\xb9\xca\n\xf9\xc7\xaf\x1c\xbb\xc8\xdb\x95\xc8\xb6\xab<\xdbg\x8eUed\xb9s\xfc\x9d\xad\x12.\xe4\xea\xc0\xca\xd5\xfaN\x9e*\xe7\xf6\x9eL\xb5\xe6\x9a\x95\xd9\xe6\xce\x9c\x8f\xa5_|\xfd\xf5\xe7\xff\xf3\xa1N'Xr\xf8\xe2\xeb?^}\xbe\xfc #`\xbe\xb9\xf7\xa2\xf8\xbd%\xf6\xf6\x1e\xff\xf0\xfebP\x1e\x90=\x90\xfdh\xbc:&\xe4K\x80\xec\x81\xec\xbd{\x02\xd9k\x03\xb2?6 { {\x9f\x01\xd9\x03\xd9k\x03\xb2\x07\xb2\x07\xb2\x07\xb27\x06d?\x87z\x03\xd9\x03\xd9\xb7\x06d\x7fl@\xf6@\xf6@\xf6@\xf6@\xf6@\xf6@\xf6\xbf\x07d\x1f\x03\xd2\xff\xde\x90\xf4mI\x0b\x19 \xe9\x1fl\xae\xd2<\x13:0\xfc\xf3\xebJ\xeex\x99\xfd\xdd\xc4\xd7\x9f\x13]\x80\x89\xec\xa9Kh\xfe\xc9\xd4#\xb6\xfdg\xe9D\xee\xdf\xe9S\xdb-\x8f\x16\xb7w\x1d\xd4\xb5O\xc1\xbdh\xd7\xf7\xe1\xc8\x8f\xf7\x1c$\xe2<$\x82\xb1\x91\xb8 \x13\x89\x8c\xd5\xd46\x95\xb7\x05\x0bs\x07]\x023\xf7\xa5\xb9\x1b\x19god\x06\x7f\x0b7\xa0\xce\xdb\x1a\xc3\xe0\xc8R\x1c\x8e\xccdq\xc1\x02\x95s\xa3y\x1c9\x9d\xc9\x91\xc9\\.XT\x9b\xdb5\x9e\xcd\x91\xa5\xf9\x1c\x99\xc8\xe8\xc8TN\x17\xee\xd9\x0d\xc3\x8beudi^G\xe2\x98\x1dY\x92\xdb\x91\x93\xd9\x1d\x99\xc7\xef\xc8R\x0c\x8f\xcc\xe2x\xe1\xdb\x81\n\x96\x8e\xb3\x1c\xe6\x18\xe7\x9d$\xcc<\xc9,\xee\xe9-*\xc8C\xc9\\&\xea--\x90\x05\xd8\xd8rl\x94D\xf1Q2\x83\x91\x92i\x9c\x94\xcca\xa5d2/%\xe1Q\x84\x8c0,2\x81c\xc5\xb2S2\x87\x9f\x92\xa9\x0c\x95\x84\x1b>\x87\xa5z\x0b\xeb\x90\xca\xd8[&\x8e\xa9\x06o\x88b\x1b\xe6\xaadY\xb6J\xc6\xf8* 3V\xef1s\xd9+Y\xb0\xefN`\xb0d\x12\x87%\xde \n\xbb=de\x04\xbb\x8bRm\xa7T\xb2\x172\xdb\xfb\xbc,3\x99\xb3`\x08D\x1dLnv\xachI\xad\xe9\x8e\xba\x9eL\xdf\x05u\xf7<\x94U\xc1\xd23r\xe9\x7fu/\xaa7\xb1\xfa\xfd\xc8\xb0\xfa\x1d\xab\xdf\x07\xb6\xc4J\xe4X\x05\xc7d\xf5\xc6$\xe5\x06V\xbf\xcfTh`\xf5{m1 \xeb-\xc6\xee\x94\x91\x15\xaf\x0cK\xed\xfc\xd6&\xad\xdf\xd0\xbc\x87\xf4\x9cQ\x85~\xe1\xec~\n\xdf\x8b\xed\xaa\xc6>\x9dcBa\x80w6~\xfc\xbcw\xf0s#\xf8\xd00SwhC\x92\xf5\xc3\xd4\xaa\x02\xf6T&\xbba\xc7\xdef\xd7\xacP%\x1d\x85$\x16le+\x088\xbbbw\xbev\x0e\x08\xbbE\xea\xd4>\xe2J\x9d\xaf@\x87=-\xe5\xb5(\xb3\xe1\xef:X\xb9\x1dD\xf5t\x0b\xd4\xb0<\xc6\xd4\xdf)O\xf1BG3\xf8f#\x98ToR\xfd\xea\x92\x0el\x11L.\xec-O\xe8\xca\xe1DS\xbf\xc8\xfeb\x1b\xa3]YT{VfI\xfd\x9b\x1e\x0d\x13Z\xa8\xf6\x98\xb8\x9d\xeaC\xd6\xf1U\xd1\x84J\x07o\x15\x97\xba\xb4\x9c \xd1\xba\xd0\x04\x17+\xa1\\}\xc5&\xfa\xb3_\xfc=;w\xa0Pp\xb8W\x7fy \xd2\xbbz\xdf\x9a\xef\xfb\x84\x0b&\x8c\xde\xed\xc1V\x0dP\xe5\x03\xbcn\x82f\xdd\x9f.7$g\x1bY\x0b=\xac\xf2\xa3\x9e\xbak\x02`n\x10s\x12\xe5\xe7\xf5\x1da4\xd9\x11z8|B/v\xe5\x17\xed\xf1!_v\x8eP\x1e\xd5=\x94\xeb/\x8c\x10#\xebJ\xb3\xc4\x88\xba\x0c\x0b\xb4\x1e\xd4;\xda\x8e\xd4-.+\x92\xbcJ\x07\x13sj\xce\xd2\xc0\xd8\xc1\x15\xd3h\xbf\xc3\x08\xd4\xa3\xb5#g\x1a\x0c.?]\x8a\xc1\xd5\x1a4A\x0f\xbf%\x13V\x84\xa1o\xaf\xf6~T\xb7\xdc\x99\xbd\x9b\xb2m\xc1\xcb\x01a\xa9\xef\xc6\xfe)\x8cgN\xbd\xb0k\xces\xd6Y\xe3\xef\xb8\x80%\xbbfe\xef\xd0\xd0\xc5\xb3{\x0f/\\\xd6\x91\xef\x94\xcc}'\xf4\xcaQ\xe7`\x85f\xcf\xbcLY9|o\xfa1+\x12\xf6\x8a\x98\x9c7/DzE^\x9e}\xf5\xe5\xa2\xde\x98\x93h\xe7\xdcN\x13\xce\x7f\xb5\x7f\xfc\xd3\x94\xe0J\xbd\xf3\x9d\xd9\xc3h\x84\xac3\xba*\xbe\x9f\xf5\x96~>\x1euS\xdb\x92\xebK\xdf\xbb\x1aO\x9d~\xf9\xe3S\xbb\xefq~\x9e\xfa\xfcOj\x0f!M\xcf\xa8@\xc7\xce3g\xc3){\x01g\x1f\x8f4AH\x13\x844A\x01;Q\xbcD&\x0b\x98\x82E!M\x10\xd2\x04\xcd\x159\x91yB'\xb2\x94\xd8\x89\xcc\x12<\x85o\x07\xa4 \x9a&\x80\"\x13EPd\x9e\x10jl\x08\x8e\x13C\x91e\x05Qd\x82(\x8aL\x17F\x91\x19\xe2\xa8\x88!\x13i\x82\x8cM\x16N\x05KC\x9a \xa4 \x1a\xd82\x02+\x12\xaf\x13\"1B+2MlE\xc6\x14\x003EW$\xa2\xdc\x88\xa4/'\n\xb0\xc8,\xe7\xc6\x0b\xb1HD+g\x08\xb2\xc8\\Q\x16\x19\xcd_2.\xce\"\x0b\x0b\xb4\xc8B\"-\x12\xd7cN\x16k\x91x\xc1\x16\x89\x14m\x91h\xe1\x16\x89\xebP\xd3\x05\\d\x92\x88\x8b M\xd0x.\x9d\xe0\xe6\xd1\xe3\xe3\x85^dA\xb1\x17\x89\xa9\x1a\xd2\x04-+\x04#\xa3b02W\x10\xe6-\x0di\x82\x90&\xc8c\x93Eed\xb2\xb0\x8c M\x90\xd3\xe6\x88\xce\xbc\x85!MPmH\x13\xe4\xb0O\x9c&(\x9ci\xe3\x98.\x13v+Y\x91\nB\x9blArG\xd6\\\xeet\xd7\xa1iZ2!<\x8b\xaf\xec\x93\xa0\xce3\xa3\xee\x9d&\xad\x8c\xf3\x80\xcbF\xfc\xa0:\xe2\x96\x15Ld\xc2\\\x12}\xb4\x86\xf7\xe6\xdfG\xc7\xf7\xc2;V\xd7\x16\xca\x80\xd3\xffx\xcd\xf0\x01\x81<7\xda\x90\xe7\xa6\xdd\x14\xebL\xe4\xb9i\xf3\xdc\xd4R\x92\xf9\xe9n\xfa\x8a\x18d\xbb\xb1\x86l7\xc8v\xd3\x1a\xb2\xdd \xdbMk\x8b\x8aD\xa6\x08D&\x89C\x90\xed\xe6T!\xc8\x0c\x11\xc8\"\x02\x90\xe9\xe2\x0fd\xbb9E\xec1E\xe81C\xe4\x81l7\xc8v\x83l7\xb1\"\x8dE\x05\x1as\xc4\x19\xc8v\xe3\xdbmT\x841A\x80\x11\x93'e\x8a\xf0\x02\xd9n\xe6$\x8c\x19\x13V \xdbM\xbc\x80\"R<\x11#\x9c\x88\x13M \xdb\x0d\x99)\x8c\x98 \x8a@\xb6\x9b\x05D\x0f\xa3\x82\x87\xb9b\x07\xefs\x13\xd9n\x8e\x0c\xd9n\x90\xedf`Kd\x1e\x89\x15\"L\x16!L\x12 \xdb\xcdL\xa1\x01\xb2\xdd\xd4\x16\x9f\xed\xa6\xeb\xc9L#\xea\xde\xc0\xd5\xaex\x97e5\x9a\xd7\x01\x89Z\xe6e\xc1@\xa2\x96{t\xeex\x8a\x11$jY\xc2\x8bH\xd4\x82D-\xbf\xbbD-e\x9d\xa8\xa5\x1cM\xd4R\x0e\x12\xb5\x84\xd2\xb4^\xaaD\x16\x94+\x91\x98\xaa!_\xcb\xb2R&2*g\"s%M\xde\xd2\x90\xaf\x05\xf9Z<6Y\x16E&K\xa3\x08\xf2\xb58m\x8el\xca[\x18\xf2\xb5\xd4\x86|-\x0eC\xbe\x96G\x92\xafe}\xd7\xa9\xdcQ\xb8\x1b\xf9Z\xb4!_K\xbb)\xd6\x99\xc8\xd7\xd2\xc9\xd7R.\x93\xaf\xa5D\xbe\x96\xbe!_\x0b\xf2\xb5\xb4\x86|-\xc8\xd7\xd2\xda\xa2\"\x91)\x02\x91I\xe2\x10\xe4k9U\x082C\x04\xb2\x88\x00d\xba\xf8\x03\xf9ZN\x11{L\x11z\xcc\x10y _\x0b\xf2\xb5 _K\xacHcQ\x81\xc6\x1cq\x06\xf2\xb5\xf8v\x1b\x15aL\x10`\xc4d\xfa\x98\"\xbc@\xbe\x969)O\xc6\x84\x15\xc8\xd7\x12/\xa0\x88\x14O\xc4\x08'\xe2D\x13\xc8\xd7Bf\n#&\x88\"\x90\xafe\x01\xd1\xc3\xa8\xe0a\xae\xd8\xc1\xfb\xdcD\xbe\x96#C\xbe\x16\xe4k\x19\xd8\x12\xb93b\x85\x08\x93E\x08\x93\x04\x08\xc8\xd72Sh\x80|-\xb5\xc5\xe7k\xe9\xbe\xe2\"_\x0b\xf2\xb5 _\x0b\xf2\xb5\xcc\xf3\"\xf2\xb5 _\xcb\x7f\xcd|-kZ\\5\xe9Z\xd64\xa7E\xc2\xc4\xf9\xafV\xcf\x16H\xd4\xf2:\xcf\xdf\xd8\xddu\x15k]\x80-C\xbf\x93\xe49I\xb8\x9a\xd9\xab\xaeG\x89\x1aPsFh\xa2{V}\xd5}\x17\xe2\xdfU\x8fIh\x9e\xb3\x94lJ\xbe'\xb40\xd4b\xcf\xd3*g\xcf\x0d\xdc1*)C!\x12^\x88J\xbd \x92]\xb6\xdd\x11\xbaW\xa7i\xca\xe3\x9b\xd6\xf9[*\xd4\xd5\x94\xfa\xcd\xb9U\xa8\xe9\x97\x13\xd5\x81\x8b\x84\x97%K\xa4Y\x93_\xd7\xb4\x97!\xa6\xd3~\xbb\xf9\xd1\xe6\x87\xa9/\xeb\xe3\x10\xb5\xa4\xac\xe0\xfb\xd98\xc7\\\xd4\x99\x87\xc7\xc0\x94\x0b\x9eu\x14\x8cD\xf2+VX\x10b\xaa^\xf7\x16\xf5\"B\x0b[!\xdf\xcb\xfc\x0f\xef>\xbe}\xa5\xdf\xdb\xcd~m\x1f\xa3\x05\xb9,\xa4}5h\xc8X\xf7\xfd\xc0Y\xa0 \x8a\xb8O&\xb2mAeU2\xd1\x0c\x12:'\x12\xdfr=\x19?~\xa7\xfe\xff\xd9{\xf3\xee8n$_\xf4\x7f\x7f\x8a\x18\xbes\x9a\x94\x9b*Z\xea\xed]\xcdxN\xcbZlv\xcb\x12G\xa2z\xee=>~$*\x0bU\x95\x97Y\x89r.\xa4\xca\x1e\x7f\xf7w\xb0\xe5V\xd83\xb9\xc8F\xfc\xd1-\xb32#\x81\x00\x10\x08D\xfc\"\xd0\x13\x88\x9c&\xd2\x02h\xfe[,e\x0e\x9dH\xf3\xbd0\xdd\x18\x8c\xe8` \xb6\xe6D\xc4\x88F\x8c\xe8\xef\x06#\xda\xd9L\xc2\x11\xa2\xdd\x1d\xf9\xfd\xd9\x8ba'\"\\4\xc2E-\xab\xf2\x16\x90\x16&/\x8d02u\x13P\xfc,\x17\x82\xfc\xcf\x8a\x08\xb5\xd7\xecO\xcb>H+\xbaz\xa2\xab'\xbaz\xa2\xab'L\x8a\xd1\xd5\x13]=\x9f\xa7\xab\xa7\x95F\x81K\x92]\xe3\x0bv^u\x16D\xe7\x1d\xa9\x19\x96\x19Z\xd1\xce\x8b\x1fEx\x98=\xc0\xb1\xc6\xebz\x83\xf2\xc7\x05F\x8b\xbd2it\xc9q\xc7\x0d}k\x83+\xb4@\x15r\x91\xcb_\xbe\x9aT.#]`'\xf3\xddE\xc7g\xa1\xf2\x85 \xb3[\xeb\x07\x93\x9e/zz6\xfa\xc2z\x1e&\xc1\xf5\x0b\xd9\xe7\x87\xed]\xd2\x99\xc0AGu\x83\x8f\xc8b\x86\x9a\xfcC\xc6W\xed\xbe\xa1)=C\x13\xfb\x85\xf4^!?\x9f\x90\xc3QU\xccJ\xa7c\xaa8\x98\xf6'\xb2\xa4\x98\xc2((\x9eI\xe3\x99\xd4j\xc2\xca\xf6\x19\xb7\xf4\xde\xde\x9dpuE\xff\xe2\xd4<\xdfM\xb6\xd7@\xaf=\x965\xea\x82\xdc\xe4\xb8(O~a\xffe\x084u\xd4\xd0K\xfa\xe8;\xf6^\xb3\xd7\xb2\xed4\xcb\xe4N\xdaVb\xe0\xf66\x83\x0c\xd1\x11\xaf\xd2\x84\x01\xe1\x9aNP\xf5\xddj\xcc\xae\x02\xff\x9c\"S\xed\x9b\xea\xdb\x0d\xc4\xcf=\xc3\xa2#F\xf1\xf3\x835.\xbaS\xe5a(41\xbfFh$\xbb\xa5\xc1I*\x97n\xa8\xa4Q8bn\x97\xea\xc9=$\xd5\xec\xee\x93\xd6\x8a\xe3d\x11\x1a8\x08\x0el\xb1?p\x13\x9f-\x06\x08nl\\GaJ\xab\x8fS\x90\xed\xa7\xe5&\xb0\x84\xa6\xb8 x\xdb\x81\x9c\\D\xd4\xea\x92FHeU\xd4 \xfdT\x8b\xabde\x99\xf2FG\xd3\xd9\xab\xe4\xc6f4)\x04TR\x93y\xd6\xce\xf7v\x00X\xdc\xec\n\xe7\xcc/\xd1\x03\x14\x8bo\x9a\xd62\x1f:\xf1\x9ciu\xb4\x08\xe9\xe1g5\xc3m\xd4\xc9\x92b\xf8\x94Q\x0c\x9f\xb6?\xb9\n3\x86O\x99\xa1\xd91h\x9asiw\x85\xd0\xa3fs@e\x0e\x99}\x13H\x12}\x96\x97\xd7\xda[\xd3\x96\xd5\x1c\x0f\xaf\x83_\xe3\xe1\xf5\x8e\x0f\xaf>\xfe^~2\xec\xae\x92\xf6\xc0(\xb7\x93\xe6\xdc\xd8=`\xd1\xbdy\xb8ln\xeb\xb4\x1b#\xb0\xf6\xa37\xc4\x08\xac\xa0[\x16\xae=v\x18#\xb0SH1F`c\x04\xf6\xf3\x8c\xc0\xfa{A\xcb\x0b\x19\x18\xd5;@\xffg\xe0\x00-\xbf\x17\xaf\xf4\xe2\x8dI\xc6\xb4\xa9d\xd7\xf8E\x0b\xbcJ\xcb\n\xd3\xf3>\xdd\xe0\x1bV\xdd\x8d\xbeT\xc6\x1f\xfb\x1f\x13O\xe0`\xffq\xe7g\x9d\xa7\xaa\xcb]9\x99\xba\xc6I\xdbAN\x0e\x8e={g9Y\x9d{\x0e]\x96\xe4\xe2z\xea>Mm\xd9\xc6\xdb\xc4\x17\x04\xffJ\xaf\xd2\xe2*\xbd\xc6\xe6\xcb\x18%/*tV\xf9\x10jT\x91\xcd#\xb5\xd3\x94\x13\xfe\xb4%96;$m\xc7\xa8.u\x8eT\x9a\xb3\xbd$?)\xc9vv\x05\xb5%7|\xffz\xf2U\xfb;w.\xe7z\x9f#\xa7Mm\xbb\xb4\x15\xa0@\xa9(\xdc0G\xa5\x04\x97\xb0-\x99+i\xfao\xfcS\x8d2\xa3\x8f\x93\x13\x1b=\xae\x95>\xe6iuX\x8a\xf3\x8e\xe5\xb5'bH\xbf\x86'_\xfd\x7fM\x1f\xdb\xe6\xd8\xdeg\xf5/\xa5\xc7\xb7\xd3\x0b\xb2\xe4s\xa3-\xe4\x98\x14\x98Z\x19\xe6\x1b+\xa1\xed\x01eqHY\x1c:\xdc\xde\xd7\x19\xbf\xaf\xe1\xaf\xc7P\xad\xeb\xf2\x19<\x01\xfa>\xef\xdb_\x1d\xe6*\xcaRT\x9a\x97\xb1\x8bR\xe1dQ-\x9c\x9c\x97\xbc\xcda%It\x01z5\xcd\xc5b\x97\xbfI\xfc\x81\xf3\x82\xd7>\xe3\xe6\x95\x84\xde\xb0v\xd6\x17\x12\xde\xf0a\xa94dmZ\xef ^\x8b\xd9\"\x16R\x9aH\xb7\xb3\xfa]\xbb(;[\xcbPoJ\x91v\x17\x1a3&\xb4\xcc\xf8\xc2\xecY\x17]\xa2k&x\x0ftWr\xf43\xc3\xbe\xb0\xbf\xf1\xe5z\xd4\x9e\xc0\xe9/M\xef\xb4\xfc\xd8\x8a\xef\xac\xb9\xaf4\x0bk\x91\x96\xdb\x0ci\xdc\xe2\xfe=4\xcc1\xf1\xa5\xe6<#\xf6\xb9z\xb5\xc2%=%\x08\xedJg\x9a\xfd\xf2h\xc1\x8c\xdb\xd2\xdcx\xd4\xd4_d\xf6\xfdD\xbdS\xdf\xc1\xff\xa7C\xf3D>d\x9bx\xd7W\xd5\xab\x9f\xccBrGx\xf5\x0c^0\xb6\xf0\x9c\xaaA5\xcfr\xb7\x99\x93p\x87\x9e\xfbt\xe4\x1fj\x0f\xf8\xb4\x8d\xe2o\xb2\xfeq\xb9&79\xb0\xbb%DES-7\xd6\xbb\xe7\xe7\xef\xbe\x7f$\nc'\xa6\x9b\x81\xc4\x1c/YY$\xde\x001\xdc\xc6\xda\xa0\xb6\x03RKu\x91\xde\x81\x08?\xbe?\xe5~\x8a\x05IjV\x9c\xfb\x88P\xbb\x81\x9e\x84\x1f'k\x94\xe6\x8f\x84'J\x04\xfc\xb4\x9c:\x15\x88\xd2\x9c\xdbW\xf4\xa0\n\xef\xb6\xfc\xaf\xdeb\x19\xc6\xf08\xd5Ez\xb1F\xe5\xfand\xf3\x1d*\xd7|\x17,\xd7\xe8\xe9_\xfe\n\xf4\xd3<\xbc\xd1\x08lKRy\xc9\xc7\xc7\xf7\xa7z\xcb\xe0\x94j\xf9Z\xc4\xcf\xaeq\x91.w\xb9\x99/\x00\x1fp\xbex\xc5? \x1b\xb4-\x07+\x17\xf5d\x0fe\x85\xaa\xda\x90Vz\xb3\xc6\xacr5j\xb4\x81\xde\xe7A\x19S\xae\xbaK~\x1a\\\xa3k\x0c\xe5\x16'\xe92M\xba\xdfj\x98\x95\xb8\xaa\xd2|\xd5\xcd\xc2x\x9e\xef\xfa~T~\xb0$\xb8\x84\x9c\x08\x9e\xa8\xe5*8\xf0\xac\x1a\xa1\xc8\x87\xeb\xb5e\xce\xf7\x88\x99J\x1bqU\xcc\xd8\xd0\xeft\xb3\x1c\xe6\xbb\xce\xcd\x0c\xd6\xab\x13\xfe&~\xeeY\x89\xfb\x9d\x7f\xb0f\xa2YE\xdf\xc7\"5\xda[\xd65f\xb1\xb3l6\x96\x8by2\x99m\xe5lWim*\xe7D\x7feW\xfc\xb3\xff\xb9>`\x06\x92\x82\x9f\xb0-T}\xd8\x12f\xf2P\xdb\xadS\x1c\xbf\xec\xd9Z\xd25B\xf9\xb0\xfc\xb9I\x0f\x1b\xb1\xd8@,60\xa0\x87Rl\xa0\xa3P\x1c\x0b\xd3\xb7o\x0c\xf8\xf9\xd4\xa4\xff[\xf3P\xb4t\x07\xbfFK\xf7\x16,]\xab\x0bR{\x9f\xda`\xd9\x88\xbdC\xa8\xd0\xc68\x14\x7f\xde\x91\x1anP^\xb1C7\xd4\xdb\x19\xbc\xc1\xd4\x8c\xe4\xca\xaf\"\xd4d\xee\xb1CY64\x87!\xd0w9\x1cd\xc5\xf0jd\x97\x90,\xc3 \xed\xeek!\xb9M\x9dU\xe9\x9e\xa0bq\x06\xbb\xd3\x18bq\x06A\xb7,\\{Y\x81X\x9ca\n)\xc6\xe2\x0c\xb18\xc3\xef\xa08C\xb9\x15\xe7\xdc\x8b\xfd\xfb\xb5\xf5\xde\xae\x8e\xf0>H\x06\xdf\xc8\x1bL\xbb\xb1\xbe\x86}\xef\xd6\xed,c\xe7\xf7a\xf5Z~\xf3v+\xaf\xc1\x15\xdc\xba\xe1\xfb\xdc/\xfd\xdc\x93\xa0x\xe8\xc1\xfa\xaf\xe4Ly\x18f\xf78\xdf\x95\xf9\xc6J\xcb\xebvw\xcf\xd4\xb7T\x06\xddP\xa9\xbf\x9d\xdct?y\xc8\xcd\x94=\x814W\x1a\xa7\x1a]PJe a\x0e\xb1\xa8f\xf4sA\xf4sM\xea\xe7\x1an.Jo\xd7\xaa\xe7\xeej\xae\x89\x1d0\xec\x86t\x87\x1di\xef\x90=,\x15+\xdd\xd1=\x16\xafl\x8c\xee\xb1\x87\xe2\x1e\x13V\xb0n\x02\xca\x1b\x8a\x85\xb2m\xae\xff\x96\x10=\xc5n7mjk\xf4O\x85\x1e\xfe\xa3\x7f\xea\x16\x85k\xf7\xacD\xff\xd4\x14R\x8c\xfe\xa9\xe8\x9f\xfa\x9d\xfb\xa7N\xe6\xbb\x8b\xce\xe9\xdf\xd3Q\xf5\x0dO0qpW \xc7\xd4\x00\xb3\xbf$E\xc7U%\x9f\xf9\xed\xf9\xac\xd4h+\xb50\xc5\xa3\x0f\xdds\xa53\x88\x83\x0e\xff\x06\xff\x93\xc5(5\xf9\x9e\x8c\xaf\xda\xfdNSz\x9d&\xf69\xe9=N~\xfe\xa6\x80\xc3\xaf\x98\xa5\xf6#\xf0\x80Ys \xee/zN\x8d l>\x02\x8b\x8c\xf1~\xe4\xdc\xf1X\x1cQ#\xf1X\xfc\x1b9\x16\xdf\xfaax\\b\x9d\xa9y\xbeVO\xaf\x81~FO\xbd\xddf;\xbdUsN\x0d\xe0\x0f\xec\xa1\x9e\xf9\xc2\x0dc\xfev/\xd0\xf69\x99#\x82C\xd7\xda\xe8\xf4W\xfc\xfc`-\x8c\xee\xd0u\xe9>TK\x8c\x8c\x85[)SG\xc6D\xccA\xacM\x19\x11kVj\x13\x01\x1b\xbc\xe8\x1c\x00SF\x85\x02\xa2b\n.\xd6#!\xa7\x11&t\x8c\x9f\xc5\xf8\xd9\x80\xee$~\xa6\xeb\x08\xdb\x9c;\x9b\x8e\xb5\x00\xc6\x9e\x9bE\xd6r\xed\xee\xd4\xda\xf2\x17\xcd\x1f\xa3u\xbf'\x9fh\xdd\xdf\xa9u\x1fCIvS\x1eb(I\xd0-\x0b\xd7\x1e\x04\x89\xa1\xa4)\xa4\x18CI1\x94\xf4{\x08%13\xcc!h\xc4\xed\xb5w\xcb~h\xa8\xf5\xaa\xc8X\x0f=\xb0}\xe6\x9e\x15\xd9U\xf1\xdb\x83u\xab\xe8\x9c\x11#\x0e\x9d1n\xe3\xe7\x11\xb9\xcb\xb8\x8d\x98\x95N\xe7.q\xd2\x1a\xccdI\xef\xcf^\xc4\xfb2 \x1e\xb3\x1e\xd61\xeb\xb3\x0dR\x94\xf8\xa4\xc2\xf9\x02\x17\x9b4\xaf\x9a\x9d\x15\xcd\x93\x94_\x95\xa1\xdfT;+\xfd\xf97/N\x19\xeb\x8e\xa6\xe3=[\xa3|\x91\xe1BTq\xae\xb7[RT%{\xbe\xd9\x8b\x17\xa9\xd8\xd2:\xae7j\x994\xff\x81\xb6\xdb\x8cZ\x9f)\xc9\x8fa\xbe\xdb\xa2\x92\x1du\xce\x9bf\xb3\xe2Z\x19\xae0=LR\xf5\xd8\xf0\xdf\xf1\xea\xfc\x92\x93(\xbc\xdbEy\\\xa3,]0\xe5+Z\x87\x17,lu,lX\x16\x07\xden\x8f\x85\x1a=\x86\xedSQ\x82\xac\xacH\x81\x95\xd6\x82\xba:\xf4_e-\xe7\xde~\xdd\x88N\xfc\xf8`7\xec\x91*j\xcf\xf3\x98\x11E\xb1h\xc3\xc2L\xf3%\xf1|a\x81?y\xbdan\xb0\xd2\x9d\xed\xc4M\xe1\xc6\xd6\xa8\xa7Pv\xdb\x82\x90\xe5\x05\xd9j\xb5w\x90A\xa5\xe4\x07\x96\x1d\x01L\xbb\x02\xd8\x1a\xc4\xc9\xb6;\x80d\xa3\xfd\xd5I\xc7k\xc6\xb4%'\x1e\x0e\xe1\nJ\xea\x8bsZ\x9a\xee[v\xa3\x94\xd3\x19\x9d4\xef\xb6\xad\xce\xce[\xd5\xc4}R\xd4 KP\x96\xb0B\x8b\xf9\n\xbe\xc7\xc5\xd5^\xb5\x94\x96\nB*\xae\x80Y\x19\xdbd\xdf\xbf\xd4\xa59\x06T\xcc\xd3\xaa@\xc5Nt\xebX\x14QeW\xd4`\xaa\xd4\xe8o\xb2&\xae\x96\x13\xfe\x84\xa8\xfe\x87\x1c\xa7\xab\xf5\x9c\xd4\x05{\x9f\x0c\xfd\x0f]Z\xa3r\xad/\xfc\x08\xf0\x96T\xf8\x19/\xd4\xc4LS\xe6\xc2[\xd4|#j\x8a\xf6K 2\xa3\x98=\xa8\x1f~\x11\xb7H\xf3\xce\xc6\xb5\x1f\xea\xb1\x8f\x9d\xf8&\x03d\xf0\xf1\xe0\xab\xbf\xf9\xc2\x9cG\xa9\xe4\x1d\x17\xf2y\xcd\x91\xc2\xa7\x9f\xa5\xb9\xa3N]\\\xd31\xd2\x9e\xfb\x02\xd42\xdd\x97\xca-\xd2c\x00\x15<\xcdRn\xb6dsQ\xcc\x1e\x86\x8c\xfd4\xdc\xcb%1$\x1a3G\xf6\x07\xc1m\x00dK\xb8\x91\xa5\x1d\x85v\x04\x86\x9fQ\x0dH<5\x0d~\x8d\xa7&\xdb\xd2h\xe99||\xff\xe6\xa4\xc0%\xa9\x8bD\\e\xc2\x8c\xfc:O\x7f\xaaq\xb6\x83\x94\xdd\x00\xb0l\xa0Ltv\x13]t\x98\xdf1P\xe2\"EY\xfa36l\x1bl\xf2'$\x83y\xbd\\\xe2B\x0e\x9a\xa8\xaa\xc7\xfb\xc6\xac~i\xed\x03\xd2\x99\x19\x00\x19F\xa6\xcb\xbbH\x8e\xe1\xe0\xe4\x00\x925*PR\xe1\x82\xefn\x19*+(\xf1\x8a\xdd-!V\xe8\xc7\xf7o\x0e\xcb!\xe0\xadO\xacQ\xcd=\x10\xfa\xafRv\xcb:cP0\x94Q .\xfaW\xc5PI\x1e\xa1R\xb1\xcc[\xba\xa4M9Y\x11\xb2\xca\xf0\x8c\xc9l^/g/k\xbe\xbd_>\xe2=al\xdb\xc0\x9a\xf2~#N\x08\x12\x94\x93\x9c\xdd\xe8@\xd7\x90\xfe\xcb\xec\xc2\xb0c*Z\xb6\x8f\x1f\xcc\x0e\xa8R\xcbI\x05(I\xf0\xb6\xc2\x8bG\xa6\x9d\xf74\x87-\x15v\x9a\xe0c\xa80\xda\x94\xcd\x953\xdb\x02\xd3\x93^\x9a\xd1\x96R\x0d\xb8\xc60Os\xb4\xa7p[b\xc9\xe8\xbb-.\x9b\xc8\x85\xb2\xb2\"'\xae\xeb e.\xf4\xba\xc42ZD'\x12\xfe\xc4\x86\xfay\xbe\x9b\xc1w\xe4\x06_\xe3\xe2\xd8h\x94||\xff\xa6\x14\x0e9YcU\xfb,\xd3\xa0\x18.\xd7U\xb5\xbd<\xe6\xff_^\x1e\x03) '\xe2\xd7\xf6\x9e5\xc2V'\x95\x88\x9e!\xae\xa0\xde\x02\xe2\x9b\x84\xe1\xb1\xe2Z\x1e\xceY\x11N6\xb5X\xcb+\"W\x16\xdfU\xd8\x8d4% }\x81\xf3%\xc92rS>3\x8c\xed\x97p\xbal{D\xa7\x85(\x9a\xbfh:\xcd6\xc0\xb2\xac7\x86J\xe4\x94\xd1\xf3\x1c\xbe;??\x83o_\x9d\x03\xc9\xe5\x12\xe4kl\xc7\xdc\xa2\xfa{\xe8~\x18.\x8b\xf3\xdd\x16\xff\xf8\xc3\x8f\xda\x17@\"Pr1\xdf\x1a{\x95\x14\xb4\x0b\x8b:\xc1\xd4|f[\x98\n\xbf\xc3\xe9Kx\xde\xba2xP\x06Q\x99q$R\x82\x12\xaa[X\x91\xf3&p3G%VU \xe5DL\xe5\xd5\x81OB\xd6FV\x02\xb8Z\xe3Mg\x0d-\xf8\"B\xb2K\xf4\xdf\xd7\x849C\xf4\x13\x0bD\x03\x99\xfa(\xf0\x92\x14\xf8X2\xe8\x978\xcf1^\xc8\xf0+Sy\xc5\xb5\xa1'\xac/\xf2\x1e)a\xdc\x9438\xfaXb\xb8\xc6E\x99\x12j\xd7\xb0\xe9Iu\x16\x9f\x9f(G+S\xef\xe7\x05FWT\x07 \xc6\xb3G6\x83\x9f\xc5n\x96u\x9e\xf0\x15F\xfb!tWR\x17\x05\x83+t\xb1NzuI\xe7#a\x01z=\xc4I\xece\xf3z \x05\xa6;\x11\xe6\x8e%\x1e\xd4\xa6\x1fm\x0ea\xcd\xba\xd4\xb2b\xf0\x8b\x9c\x97u6\xdd\xa6H9\xcd\xf8\xfcG\xdb\xb4\x9c%\xaa\x9c\x85\x96>\xb0\x95Zr\xb8\x15\x07\x1a\x0c\xb4\x14\x1c \xeb\x97G\xc9\xf9\xd2~\xa4\xdf\x04YHlnPJ\x1c\x0d\x91V\x9d@\x06?\x92v\nXoP^\xa5\x89\x12*w+\xae\xdf!\xb9ZI\xdfSuD\x0f\xba\xc2\xcf\xd8\x1a8{v\x8c\xd8\xdc\xd1\x9c\\\xeb\xe7\xb4\x10\x81X\n\xaa\xee\xbb\xb4\xec\xf2y\xbe\xbbln!cQ\xa7\xe6 \xaeo\xa1\x92\x95\xdc#PF\xc4\xd4\x03\xa4\x1eZ\xaa\x9d\x07wCv\xcc\xc2\x81\xf9\xd7Xu\x9a\xa9y&\x17N\x96\xceY\xb3\x9b\xcbW\x84\x17\x97\xea\x87-J\xaeN\xea\x9c\xfe\x1f+\x91\xce\xe6\x85z\x05\x89\x8d^o\xd8\x90%\xd4\x15WlR=\x94T\xb1v\xeej[\xe1\x1c\x17\xac:3\x0fO\xc9\x9b_\x94\xfch{\xf8\x10\xaa\xbf\xf7J\xb84\x9e<\x833\xda~\xaa\x17DWP#\xf44\x87\x17\x7f\xfc\xa3a\x9b|M\x08, \x81\xafa6\x9b\xfd\xbb\xf61\xda\x18\x94\xef\xf4\x0f\xa0|7\xa3\xcdx]\x90\xcd\xd1\x92\x90G\xfaGg3\xfd\xfe\x97.\xe1\x88\xb2\xfa\xc8:rN\x8e\xfe@y=\x82_\x0c:\xdc\xc4\xefW\xb3\xec\x9eZd\xf7\x0ft\x8d&\x13\x1e|\xcdlC\xfa\x95 $\x94\x96G\xaf \x99%\x19*K\x8b\x80x\x13\xe9K\xbc\x8f\x9d\x17\xf5m\xf8U\xfb\xcb\xc9 \x9d\xd6nm\xfc\x806\x98\x9aN\xcfykW\xb8z\xc9]\n\xa7yY\xa1<\xc1G\x8fB\x1a\xaf\xe4c\xea\x8bq\x16\xfc\xc92\x0b\xcev\xd5\x9a\xe4\x86y\xc0\xdb\xf8\x9a\x90\xa3\xd9l\xa6\xdf\xd8\x9a9pd|\x86\xad#6CB'\x08er\xca%\xfe\xf2\xd5\x87\x17\xefO\xcf\xce\xdf\xbd\x7fdr-\xb7k\xce\xfca\xfei\xa34\xffl\x91\xe6\xb7D/H&\xc9g_\xc3\x1f\xb6\xf3\xd9kB~\x99\xcdf\xfayH\x1b}L\x0dj\xfa\x06\xcaw\xdb\xf9\xec-\xbe\xb1\xb4?]\xb27\xfe\xedk\xc8\xd3\xcc8\xf1\x8cB6,\x0f\xf3{\x83\x0e\x1a\xd8\x88\x96\xf2\xbe\xcd>\xe6\x1bT\x94k\x94\x9d\x13\xae<\xa6\xea\x86\xf2\xb7s\x06/J\xae\x9a}J\x1e\xc2`\xbekMR\xb9\xb3\xf2t\x06\xf5\x89@B!\xebRc\xcf\x1d*\xcc\xcd\x93e\x9de3\xf6\x035\xe5\x0f\xe5E\xaf\xd2\xc6esK\xb7o\xf29\xa7\xfeX\xb3\xed\xe6\xd9\xae\xb9\xa0j\xe8Hi\x8e\x10\x80\x96\x15V\xe1\xfc91\x1f\xcf\xe1\xc9\xa1\xfaS\xc2^\x90Mf\x9e\x80&\x0cq\xb0$d6G\x05\xeb\xec\xa7\x93\xdd\xec\xe7\x03.\xc5\x9d\xe6\xca\x070\x1c\xd3YS\x0f(\x0f\x9d\xa9\xf0\x8f\x0f\xef\xdej~\xa2#M\x7fn\xbdN\xdc\x92&T\x8b\x083\x90\x9fl\xeb\xb2qo\xaf\xea\x0c\xed\xe5Ds\xdagS\xb1[(Z\xc3\xed\x18\xf0f\x8e\xd9u`B+\x1c\xf3\x03\x89\x8a\x9d\xee\x1e\xe0\x8eQ\xc5\x11N\x97\x7f\xa7\x02\xba\x14\xee\x94\xc6p\xed\x0e\x81z\x19\x08\xb5\xf5\xccp\x04C\xc9\x15\xd5]\xadK`\x99fX\xbf\xdbH]w\x86\x8b\x92\xe4\xc6\xc5)|\x91\xcb\xb4(\xab\x0b6\x8e_\xc3\x13=\xe7\xe6\x05:\xf5\xe4\xf3O\xbd\xf7=J\xa6V\x1d0Y\x1e<\x83\x03\xd5\xda\xec\x8ba\xc6{ypl\xe2\xc7\xfa\xf7\x16m(\xcf\xff\xe0]\xf8O\xe3\x0b\xb4\x7f\x83\xe7};y\xba\x14G\xce\xfe\\kB(78\xcb\x1e_\xe5\xe4\x86\xe3\xea\xd6\xa8\x04dJ\x0d\xe4kH\xf5K\x7f\xca\x1f\xf3#\xcc`\x1d\xb4\x19_\xa29t\x02\xeb\x920\xc5\xc5/\xca\x1f/\xd9b\x94\xf3|M\xb2E\x17\xc2\xc7\x97r\x9a7\xeb\x03\xb8\x0fT\xcd\x8a/\x19\xf5wX\x13f\xcd\xa6~D\xb5\x97\x14\xe1\x9esL\xfa\x8c\x7f\xfc\xe1\xc7G\x86\x854\xc5\x9c\xeb\x7f\xd0<\xed\x98\xa8(\xcb'\xb3\xa7O\x9e\x96\x07\x86)\xc4\xff\xdf\x08\xdfBU\xd7]8\x1aw\x05\xf6\x8c\x92\x9eN\x9c\xe0\x83\x923\x0f\xb0N\xcb[\x17\x81mzS\xf4\x9d\x16!\x9f4\xe3\xc0?\xe0\xe2:M\xb0\x03tm\x9e\x91\xe4\xaa<\xc9P\x85K\x11\xdbT\xa1\xd7\xbe\xc5\xd5\x1b\xf6\xc87\xf4\xf9\xe6J6\x169g\x7f\x07\xc6H\x89\xb1\xee\xbf\xfb\x85\xec\xdf\x03\x05n\xb1~\\\xa4\xda\x8b\xc9\x82\xa0A#.\x8f\xb7\xb8\xd7\xb6\xa8\xa8.J\\]\xac1Z`E@\x18l-\x07k\xeb)\x19Rj\xc1\x1aE\x96d\x02&H\xd2\x8b\n\\\xc4\x05v\x915y\xafg\xa8\xa8J\\}\xc7$\xb7?\xdc\xfc!6iO_\xaaf\x89b\x8a\xf0w\x0e\xbbw\xc9n\x99\xaf\x9aY\xd8\x97\xe5\xe2\xea\x82\xbdz i^V\x18-\x0e'\x9df\xb7;\x07Dd\xc10:\xbc\xfb\xfc\x16~\xd6O\x86C\xb4\x8c\xa6\x11\xdb\xe6\xd2.\xd0\x0fH\x97\x9c\xe6\x0e\xb8\xa5\x80sB\xdb\xed\xdd~\xd2\xc5]\xcd\xe9\x05U\x8fyY\x97\x90\xa0-\xcfM\x10\xb1Y\xf1\xe7\xa2\xce\xc4\x15\x9d\xdb\x82P\xbdjn\"j\xc6\x93\xc7\x91\xe9\x7f$k\x94\xe6\xc7\x06\x0fF\x17\x14Lm\xbe\xe6%\x0eRk A\xa5<\xc4\xf2V\x19\x18J\xb7\x7f\x1b\x18<4\xdc\x0b\x0d\xec&D\x0cU\x81\xf2\x92\xdb\x80\x1b\x94\xac\xd3\\\x19\x0b\xa0\xc4Z\xa7\xd4\xfe\x92\x1c\x86T\x07\xda\x92\xe4\xc0\xc2MWV\xe9\xc6\x00\xea\xf4\xfa\xcc\x02U\xf81\xe5\xa7y\x92\x9d\xb2\xf4{\xa3\xa4 W\xb4y#\x00\xd7\x0e\x82\xcb\x86\xc0\xc9i/\x95\xe4\xd4Sp\xee-\xd8\xf7\xd8\xe61\xa7\xbdV\x92\xcb<\x92d\x179\xf8\x88\x1d\xdcE\xef\xb8'\x0f\x1eV\xef\xcd\x92\xd8\x94M\xc8f\x93V\x17waU@\xdb0\xfa9~\xbd\x03\xd7\x9a\x83\x03S\x97\xe8Ow\xd4<\x16TE\x15)\xca;\xfa\xe0P\x1e,\x01T\xe8o u\xb5\xad\xab\xf6o\xdb\x02_sqi\xb8\xb1\xf2 w\xde\x87f\xc7\xbc\xa3\xef\xa1\xed\xf6\x8e\xbe\xc4\xd6\x87@\xce\xdc\xd1'\xf1u\xba\xc0y\x82\xef\xe8s\xcd\xfck\xcd\x1e\x83=J\x155)qq!\x8a\xf6\xddv\xfbz\xc6\x1cWx=\xe8t\x8b\x98fI\xd7\\\x93\xf0\xadI e\xd0fLX\xb7*\xfb\x16U}\xb2\x8aC\x9f\xdf\x02\xb6\x1c\x17p\x95\xa9\x83T\xc1\xcbL>\xff$\xa0\x8e\xd2)\xc9,K\x1e\xdb\xe1\xb6\xe3\xdf\x85g\xe3;f\xd4\xfd\xf1\x89!\xf4)S\x8e\x19x3\xcb\xa8\xd0\xa0)[\xc5\x14\xd7\x0c\xe0\xbf\xf1a\x81\xe1\xff\xd6e\x05hU`l\xee\xae\xc0\xea\xb1\xfa\x02\xdc5n\xfc>\x03\xf5n0\x92\xf7\xe3\xf3\xa6?\xdfn\xbfC\xe5\xba\xbd\xe2^\xd4\x9b\xa0\xac\xf7j\xbdv\xa9\xfa\xa4\xc1\x0c\xd9*`\xbd\xe4 -\x9d\xc0\x03\xab\xaa\xb2\xe4\x968\x12\x80\x10\xd1\x0ceq\x85\x96t[\x82\xd4%\xb76\xe7\xcd\x1f\x80i'\xbe\xd5\x90\xb4\xb7\x97S\x93\x0cqqM*|a\xef\x04'\xc7V\x80GK(\xb16\x18\x13\xb9$y4\x00<\x1b\x01\x92\xbd\xd3\x93\xce\xaa\xa8K8\xaf\xb5\x95&\xf7\xe91|8\xfd\xf6\xed\xab\x97\x17\xdf\x7f\xf8\xf6\xe2\xfc\xff\x9c\xbd\xba\xf8\xf8\xf6\x9fo\xdf\xfd\xf7\xdb\x11\x1c\xce\xde\xbf\xfa\xd7\xbb\xf3W\xe38\xbcx\xf7\xfd\xf7\xa7\xe7\xa3x\xbc;{\xf7\xe1\xf9\x1bG\x162\xa7f\xa4<\xdc\xf5}\x9f>\xa4\xab\x1c/\xbe/W\xe7M.Q%\x00v%\xfb\xc9\x99S\x07\xd3\xd1s\xb3\x18\xb5\xf5\x80\xb4c\xfa\x0c\xfeE*\xa3[d@\xfaqy\x06g\xcc\xcaA\x99\x1b;\x9b+\xa3O\x01\x0b\xc7\xe7x\xca\xa9 un\xf0@\xf4\xc9\xef\xac\xcc\xc9\x94\xf3\xa4&\xbb_\xa4O\x9e\xba\x0e\x02\xf4\x1d8\x1f\xe7[\n\x18>p5\xc9\x86\xe4\xe5k\xe9S\x80\xf4 P\x82\x94\x1c\xbd2}\n\x99w\x92\xfc\x97\x84$\xdf\x01\x87\xf0A\x87\xd0\x81\xf7\xf4\xf4\xf4\xc9\xc9\xef\xd3\xa7*\xdd\xe0\xb2B\x1b\x8b\xa7\xbe\xa5\x00\x81\xb8:Q\xfb\xd4\xb82\xec\x07\xce>\x8dh\xa1\xf3P\xb5\x8d\xd3\x14\x86PS\xc8\xbc\xf7\xd7\xb7M\xc1%\xbff\xdd\xae\xc4\xc2\xcd\x10\xba\xbb\xb7}\x92\x19\xe9\xcd\x08\x88\x1ag\xa6,\xa3>Q\xdd\x9a&\xe9\x96\xa1\xeb\xd3\xbc\xe3\xfd\x90\xa5z\x9dY\xa1\xb2$I\xca\x18\xf5\x02\xfcf\xc2\x9f*\x9c\x9bC\x85}\xfa\x0c\xc6\xa7\xe9S\x0f\xffi\xce'\xebS'h%\x8a\x8e\xf2,\x17\x1e\x83\xc3\xdcS\xed>4\xc2\xe4\xd4\x9c\xd0\x87\xd44\xff\xe2\xb7\xb8x\xda\xc1\x19.#g>{\xcbm\xb8\x8c\xdcGfo\xbd)\x96\x9133\xddD\xf1\x1a\xff\x10\xe12\xc16\xd0=z6\xda\x16\x98\x9e\xe7\xa1\xd7\x0c\xfa\x17'~\xcc\xd1\xdf\xba\xefAq\x95\x90\x9a:\x87)\xdb\xa3\xcc\xdd0w\x99\xd8\x9eF\xa4\xaf\xf1\x18\xdd\x0d\x03\x8a\xee\x86\xe8n\xb0St7\xd8\x9e\x86\xe8n\xf0\xb7-\xa2\xbb\xc1@\xfeKB\x92\xef\x80C\xf8\xa0C\xe8\xc0Gw\x83\xa4\xe8n\xe0\xe4\xafo\x7f\x8b'\xa6\xe8nx\xd8\xe3\x13\xdd\x0d\x9f\xc5\xe0Dw\x83\x8aB\x84\xfb9\xba\x1b\x98\xadvqM\xaa4_]l\xc9\x8d\x9ba\xe99\xc1\xfd\xec\xb3v#}\x18\xed\xf1\xb2\x87\x02[\xe2j\x07\xf9N\xcb\x97\x12JC\xe7\xe6+\x01\xa4iaM\x12Z\xc3\xe0yVf\xed\x82\xe7g}\xa8n\x08\xe5\xb5\xcc\xd2\x84U\x0b\xa63\xdb2\xe72z:\xbeH\xb2\x14\xe7\xd5\x05\xaa*\x94\\\xdd7\xc0\xa7\xd3\x83\x0b\x87\x1c\x1cN\x1em\x01\xcf\xf6\x80\xb0\xd7\xf0\xc2\xf3\xa8\xe7\xd9&\x08h\x17XR\xb4\xd4\x14\xd00\x08l\x1c\xb8$y\xa9\xc97\xf5KM\x81}\x85\x11\xfd\x05\xb7\xe415y*\xac!I\x05fM4S\x935\xfdLM\xf7\xd9h_\x15<$\xb7\xb46o\xb6\xfd4\xb8A\xb2\x9b77\xc7\xe485\xb9\xa6\xccy3\xee\xa5\xd8y'\xd2\xa9\xc97\xbdNM\xf6\xa4;5\x05Od?7\xb3\xa4\xe0\xcf\xf9\xdaL]2\xa7\xf8\xa9i\x82\x86\xba\x9aT}rL\x12T\xd3=\xe9\xfe\x10'&\x8c\x132\x84\x1dY[\x1a\xe1\xcd\x964B\xda0R\xe2\x10\xea\xe5\x96\x14\xe2\xf5\x1bR\xf8\x8a\x94\x14:q`\xfc\xe4\x81\xb1\x13h\x94W\\R\x80w\\\x92{j\xa6\x9aF\xc8o\x84\xdc\xfc\x93;\xd5\xe4\x90\xf2\xa9\xa6\xfb\xe8\xb6s\xc2\xa5\x9a\xee\xa3\xc9\xf6\xfc$=\xb9f\xaaz36e\xb6\xaa\xc9/\xdfUM\xf7!~\xd7\x8cY5\xddG\x8b\xed9\xb7j\xba\x8f\xb6zd\xed\xaa\xe9>\x1a\xed\x98\xf7\xab\xa6\xfbh\xb0_\xe6\xb0\x9a\xdc\xf3\x89\xd5t\xf7\xfd\x1es:wL`\xf6\xe2\xa9OvV\x13\xb7(|\xe4\x1ch\x06\x87\x9a\xbf\x9f\xd1\xc1\xd3\x0b\xf7$i\x8ce\xee\x1f\x97\x97\x14O\x9c.\x14\xa8\x138\xc5\x13g\xf0\xbc\x96\x14\xbe\x14%\x85N\x1c\x18?y`\xec\x04\xba\xef\x13g{G\xbb\xaf\x04\xb9\xe4\xccI\xfej\xb2\xa6\xfe\xabi\xd4B\x19\xb7L\xa4&\xbdXfHq\xdf\xb0\x0b\x8d\x9eh~\xd8\xf6>=\x86o\xde\xbc{\xf1\xcf\x8b\xd3\x97\x17\xaf\xdf<\xff\xd6\x13\xd7=\xa4!\xb7\xe7\xdf|x\xf5\xd6\x1d\xae\xde\xa7!3O\xec{\x9f\x86\xcc\xde\x9e\xbaB\xe0\xfb\xd4\x00\xe2\xa7\x13[\xf8\xd1\x9b\x13_\xdc\x8b\xd7\x19ZA\x9a/X\xfc]\xde\x0c'\x16~PP\x86S\x8b\xd7I9$\xc4\xf6\xc2>\x05\xe3(\xfb4z\x9d\x8cV\xc7\x1e\xc0\x8c}\x9a\xac\xf9a\x91\x06N\xde\xd8\xb2>M\xd6\x87\xa0!\x18s\xd8\xe2\xf4\x82\x1dw>\xa4+\x9eKBm4\x19\xd7ch*Y_'\x80u\x9a\x03\x12\xfc\xdd\x8f_\xe3\xfa\xc4\xbf\xd6\xaf\x1a\xd4@lX5#?/+w\xce\xde\xa0R\x1c\x0b+\x0e\xa1D\xa2\x14\x91\x17\xaf\xd6\x0b\xe7&\x8dVG\x94\xd8\xf9\xb8\x17\xb0\xef\x87\xec\xf6m_\xdc\xdf \xb5\x82\x02,\xa0\x00)p\n\x91\x05\xa7`=>J\x81\x8cP\x1e\xdbz~a\xb9\x8b_M\xc1\xc2\x85Q\x02\xa6\x84\x17O\xff\xf2\x97'\xff+\xe4\xd5\x91\x82\x86q\xc2\x06v\xf3k\xb2}\xfa\x97\xbf^=\xf9\x1c\x9b?\xc6\";\xab\xe7Y\x9a\xfc\x13\xefz\x8e\xbd+\xbc+;\x17{\x86\xd9Qu\x89\xf9\x0d\x88\xffj\x14\x92'\x17_\xe0m\x9fF\x0d\xca\x98\xc3|\xe3\x17\xde\x16))\xd2*x\x1d\xdfi\xdbe\xab}\x1a\x1b\xa8nB\x15M\xa0\x1e\x1f!\xcc\xe0u\x19\xa8\xc1\x03\x05\n#\x84\n\xe3t\xf7\x08\xe1\xc2\x18\x01\xc3X\xad}\x7f\x0d\x0f\xd7\xd7\xb7\xa6\xad\xc7\xea\xea1\x9az\xc4@\x84i:\x98BG\xdfy\xab\xc3rQ$\x056\xd7\xaf\xa9\xf4\x1cF\xf2\x0b\xf7 \x98g\xab\xfcZ3\xdf\xfd\x8c\xf2*\xcd\xf1\x85\xdf\x89\xc8\xef$\xe4q\x02\xf2V\xee\xfe*\xdd{\x87\xf4\x1c\x01N\x01\xba\xcf{?\xf4\x16\x16\x04 \x0cBw\xbf \xc1A\x98\xf0 |\xaf\xbb\xdbf\x86\xecl\xb7\xb0\xa7\x85\xeffa\xea5H\xc8~\xca\x8c\xd3\x88]\xeb\x0e\xda\x18\xb6Cy6\xcc\xb3I>N\xf0\xc0\x96\xb8:\xb8}}\xa7o\xe8.\xfa\x82\xe5\x02>g\xa9\x80c3\x14E\x89\xf6N\xce,\xaa*\xbc\xd9\xb2\xec\xc4\x8a\xc0&-3\x8c\x16\x80x\x1e\xa2\x95\x1f\xcfST9L;\xf0_\xb5\xe0\xad\xda\xdd\xae\xc9mV\x86\xd3h\xba\xcc&\x0bP\x86\x7f\xc7\x06\x1dp\x01\xbf\xd8a.V\xb1\x81\x93\xe8\xc0 k\xe0$@p\xdf*\xbc &N=\x05\xe7\xde\x028\x03D\xdc\xc6S\x92\xcb\x04\x92d\x179\xf8\x88\x1d\xdcE\xef \xcep\x82a\xb8\x00.\\Li\xab\x01\xed8\x15\\'\x82\x17\x04\xc2c0\xdc`\x0d\xa1\x00\x86@\xa8B (\xc1\x1f~0\nh\xe0n6N\x05\x1e\xf0\x82 x\x03\x02\xeef\xc18\x07\xe3\x03Z`\xe9\xbe\x8f\xe9\xe4\x1a4g!p\x07N\xea\x80\xb0[\x8b\x1cB\xde\x9a0\xb6\x86!\xda7\xe2\x86\xedk\xae\xa0\xdd\x1f&y{\xed\x874O\x18\xf4\xbd\xdc\x90\xf2q\xb9\xb8\x82\xaff\x7f\xfe[\xbc\xa9\xd6\xb6\xc9\xd8\xdb\x05n\xc5\x06\x9cW\x88\\\x1f\xd6\\|k\xa9\x80\xa9?\xe9\xb6\x00\xc09\xa5\x1f\xe2M\xb5}\xb2'\xcd;\x0c\xe9\x9d\x1d\x92\xe2M\xb5\xf6\x0e\x82\xfb\x86\x17\xcfJV\x91\x83\x8f\xd8\xc1]\xf4\xb7qVrO\x87v\xea\x91SO\xfc\x93\x99\x1d\xd2\x96\xa7j\x9es\xd6\xebT\x1f\x1c\xca\xc3\x9a\xff\x1bo\xaau\xc8\x9a\x9d\xeaK\x1e9\xafS}\xd21cu\xaa\xcf\xf9\xe5\x9b\xbag\x96:\xb5\xcf\xddV\x1b~\x98\x9e\xa1\xf8\xfd\xa4\xe9*\xcd\x910\x9c\x9a\xc7\x0c\x9c\x04\x83c!\x1cz\xaaA\xf4<\xf6\x0dN\xd6\x7fz*Zl\xac[y\x9a\xc39\xce\x17\xb8\xd8\xa4yu\x0c\xd5\x9a\xb6E\x14\xd6\xbf\xa4\xa2./\x8fa^W\xd2\x10\xfc\xf0\xf2\x9f\xc7\x06v7\xcc\xe4\xbc\xc6E\x05i\x05\x15\x19\xb6\xc5\xd4\x14j\x9b\xceqU\xe1\x02>\xfeo\x87\x03\xa1=W\xb6\xedY\xbc\xf7\x97\x91\xd3\x1ar\x9f\xc8\xf1\xde_\x93\x8d\x13\xef\xfd\x8d\xf7\xfe\xee\x93kK \xde\xfb\xab\xa1x\x11\x8f\xa0x\x11O\x87\xe2Ey\xc7\x8b%\x8dh\xa1\xf3P\xc5\x8bx|%\x16n\x86\xc4\x8bx>\x83\xf1\x89\x17\xf1|\x16\x83\x13/\xe2QQ\x88p?\xc7\x8bx\xe2\xbd\xbf*\x8a\xee\x06A\xd1\xdd\xd0\xa1\xe8npz'\xba\x1bl\xcfJ\xf2=}\x06\x0c\x1f\x84\xd9\x16\xd1\xdd` \xff%!\xc9w\xc0!|\xd0!t\xe0\xa3\xbbARt7p\xf2\xd7\xb7\xbf\xc5\x13St7<\xec\xf1\x89\xee\x86\xcfbp\xa2\xbbAE!\xc2\xfd\x1c\xdd\x0d\x0f0\x93=\xde\xfb\xab'\xdfi\x19\xef\xfd\xb51\x8d\xf7\xfe\xfa\xb4\x0b\xe2\xbd\xbf\x16\n\xec+\x8c\xe8/\xb8\xa5\xe2\xa9\xc9Sa\x0dI*0k\xda\x9e\x9a\xac\xc9|j\xba\xcfF\xfb\xaa\xe0!\xb9% z\xb3\x8d\xf7\xfe\xda\xd2\x12\xd5\xe4\x9b\xac\xa8&{\n\xa3\x9a\x82'\xb2\x9f\x9bYR\xf0\xe7|m\xa6.\xc5{\x7f\x1dh\x8c\xee\x0fqb\xc28!C\xd8\x91\xb5\xa5\x11\xdelI#\xa4\x0d#%\x0e\xa1^nI!^\xbf!\x85\xafHI\xa1\x13\x07\xc6O\x1e\x18;\x81Fy\xc5%\x05x\xc7%\xb9'\xba\xaai\x84\xfcF\xc8\xcd?UVM\x0e \xb4j\xba\x8fn;\xa7\xaf\xaa\xe9>\x9al\xcfO\xd2\x93k\xde\xaf7cS\x9e\xb0\x9a\xfc\xb2\x87\xd5t\x1f\xe2w\xcd?V\xd3}\xb4\xd8\x9e\xc1\xac\xa6\xfbh\xabG\x0e\xb4\x9a\xee\xa3\xd1\x8eY\xd4j\xba\x8f\x06\xfb\xe5a\xab\xc9=;[Mw\xdf\xef1\xa7s{.\xb3\xbf\x06\x8c\xf7\xfe2\x9a`\"\xf8\x9b\xb9^\xb8'Ic,s\xff\xb8\xbc\xa4x\xe2t\xa1@\x9d\xc0)\x9e8\x83\xe7\xb5\xa4\xf0\xa5()t\xe2\xc0\xf8\xc9\x03c'\xd0}\x9f8]\xca\xd0\xaa\x89K\xce\xf5\x9e\x87.YS\xff\xd54j\xa1\x8c[&R\x93:\x15\xbdU\xd3\xe8\x89\xe6\x87m\xefSh\xd9\\5\x05\x16\xd3US`\x89]5\xf9\x17\xdeU\xd3\xa8r\xbcj\n?zs\x9a\xaat\xaf\x9a\xbc\n\xfa\xaa)\x18G\xd9\xa7\xd1\xebd\xb4:\xf6\x00f\xec\xd3d\xcd\x0f\x8b4p\xf2\xc6\x96\xf5i\xb2>\x04\x0d\xc1\x98\xc3\x16'\xd7\x12\xc6\x01\xac\xe3\xbd\xbf=\x8a\xf7\xfe\x86YA\x01\x16P\x80\x148\x85\xc8\x82S\xb0\x1e\x1f\xa5@F(\x0f\xef[\xb2$\x05\x0b\x17F \x18Bo\xcf\x924J\xd00N\xd8\x10~\xab\x96\xa4\xfbm\xfe\x18\x8b\xec\x16n\xdd\x92\x14~\xfb\x96$_\xe0m\x9fF\x0d\xca\x98\xc3\xfc6\xfcv.I\xf7\xd0\xf6m\xbc\xf7w\x9f\x82\xd7e\xa0\x06\x0f\x14(\x8c\x10*\x8c\xd3\xdd#\x84\x0bc\x04\x0cc\xb5\xf6\xfd5<\\_\xdf\x9a\xb6\x1e\xab\xab\xc7h\xea\x11\x03\x11\xa6\xe9`\n\x1d}\xe7\xad\x0e\xcbE\x91\x14\xd8\\\xbf\xa6\xc6{\x7f\x8d\xe4\xad\xdc\xfdU\xba\xf7\x0e\xe99\x02\x9c\x02t\x9f\xf7~\xe8-,\x08\x12\x18\x84\xee~A\x82\x830\xe1A\xf8^w\xb7\xcd\x0c\xd9\xd9naO\x0b\xdf\xcd\xc2\xd4k\x90\x90\xfd\x94\x19\xa7\x11\xbb\xd6\x1d\xb41l\x87\xf2l\x98g\x93|\x9c\xe0\x81-qup\xfb\xfaN\xe3\xbd\xbfFMn\xb32\x9cF\xd3e6\xc5{\x7f-\xcb\xc1q\xab\xf0\x82\x988\xf5\x14\x9c{\x0b\xe0\x0c\x10q\x1bOI.\x13H\x92]\xe4\xe0#vp\x17\xbd'8\xc3 \x86\xe1\x02\xb8p1\xa5\xad\x06\xb4\xe3Tp\x9d\x08^\x10\x08\x8f\xc1p\x835\x84\x02\x18\x02\xa1\n\x81\xa0\x04\x7f\xf8\xc1(\xa0\x81\xbb\xd98\x15x\xc0\x0b&\xe0\x0d\x08\xf0\x985\x1e\x0b\xd8\xd1\x92 \xf8\xb8\x9b\x05\xe3\x1c\x8c\x0fh\x81\xa5\xfb>\xa6\x93k\xd0\xfc\xb7z\xef\xafK\xdb\xbe\xe1\xd9\xcf%T\xb8\xb9~\x8a\x8e\x1a\xff\xe1\x98\x1f\x9ehc\x05\xe8{\xab\xbf\xe7K, Uj\xf12\xc5\xd9B^\xb6\x85\x17\xd4\xc4\x9c\xf7o\xfd\xea>mn\xf5\xb7\xb8zC\xd7z\xc5Z\xf8\x1e\x97[\x92\x97X^KV\xc8\xfff\x9d\x90U\xa9\xfa\x1c\xfe\xab\xc6\xc5\xee\xa4\xcf\x07\xde\x9f\xbd\x80\x0d\xae\xd6d\xd16F\xaa\xb2\xce\xfb\xbd\xb6=\xcf\xa1\xce\xf1\xa7-Nh\xa7pQ\x90\xa2i@\xb7Ke\xb2\xc6\x9b\xc1\xd58\xda\xbdL\xbf{\xb1\x0f\xec/9\xc3\"K\xc8B\xb1F\xcdv\x8d\xc9>\x15\x95\x81\xbc\xda\xb0\xc0\x15J3\x85\xa64\x99\x04ZS\xc0b\x02\xd8\xb6~\xfa\xfaE]h\x8d?\x07\x85e_S\x9c\x9e\xc3\xc7\xf7oN\n\\\x92\xbaH0\xe4h#\x16z\x9d\xa7?\xd58\xdb\x01]\xfdU\xbaL\x85\xa3\xa3\xe2\x05b\xb5\x0c\xf9\xddZE\x8a\xb2\xf4g\xbc\xd0g\xf0o\x0bR\x91\x84d0\xaf\x97K\\\xc8A\x9b\xf1+\xc3x\xdf`S\x97\x8d6\x02\xa4\xb7\xa62\x8cJC\xe90\x92c889\x80d\x8d\n\x94T\xb8\xa0_\xc1\xec\xd4\x07%^mp\xde\xa8\xdc\x8f\xef\xdf\x1c\x96\xb0E\xd5Z\xcb\x8d5\xaa)\x0c\xa5\xff*e\xb7\xac\xb3l\x07?\xd5(\xa3\x12\\p\xf9\x8aO1I\x1e\xa1\xd2X[\xeb\x926\xe5dE\xc8*\xc33&\xb3y\xbd\x9c\xbd\xac\x0bV\"\xe1\xf2\x11\xef c[\xaeI\x9d-`N\xb7\x0c-?\x04 \xcaI\x9e&(ckH\xff\xe5#<[\xcd\x8e\xa9hY\xf1\x87\x83\xd9\x01\xd5^\xec*\xb9$\xc1\xdb\n/\x1e\xcd\xbe\xd0\xbf~\x9a\xc3\x96\n;M\xf01T\x18mJ\xa8\xcb\x1aQq\xf0\xe2Y\xdb4\xa3-\xad\x08\x13\xc6<\xcdQ\xa17\xba\xd9\xedu\xbb-\x16\xd7\xc8\xb1r\x80\xda\x87\xb9\xae\x13\xb7%\xd6e\xb7*q\x85?\xb1\xa1~\x9e\xeff\xf0\x1d\xb9\xc1\xd7\xb886\x1aT\x1f\xdf\xbf\x91\x06\x1bee\xac\x1e\xc84(\x86\xcbuUm/\x8f\xf9\xff\x97\x97\xc7@\n\xc8\x89\xf8\xf5\x98\xcd\xc6\x04\xe5@\xd8\xea\xa4\x12\xd13\xc4\x15\xd4[Q\x96\xd9\xf0]\\\\\xe3\x82\x8bf\x83\xb6\xe2\xbaI\xd6\xf2\x8a4\xb5\x99\x99\xbb2\xe57\xdd!\xbd\x83qI\xb2\x8c\xdc\x94\xcf\x0cc\xfb%\x9c.\xdb\x1e\xd1i!k\x026\x9df\xc6LY\xd6\x1b\xbc0\x14{\xfb\x92nN\xdf\x9d\x9f\x9f\xc1\xb7\xaf\xce\xe5\xdd\x82\x1f\xdf\xbf\xe1kl\xc7\xf6c\xbd\xcd\xf3\xc3pY\x9c\xef\xb6\xf8\xc7\x1f~\xd4\xbe\xc0L\xe3\x9a\xcd\x07>\xdf\xc46r\xccK\xba\x91E\x9d`@9\xdf\xc2\xf4\xc0\xba/\xe1y[\xa5\xa4d\x97)\"*3n2$(\xa1\xba\x85\x90\xabz\x0b\"/\x12\xe6\xa84\xc0\x1e\x89\xad\xac\xcb\xc7\xf7oX\x1b\xd7\xe8\x9aM\xc1Mg\x0d-\xf8\"B\xb2K\xf4\xdf\xd7$]\x00\xcaM\xf1 \xde@\xa6>\n\xbc$\x05>\x96\x0c(_T\xa5\xf34K\xab\x1d\xe4\x18/Jn\n\x01Sy\xc5\xb5\x11\xc0Ir\xaaf\xf3\x15f/\xb15;\x83\xa3\x8f%\x96\x85\x9c\xa8\x94\xe8\xf4\xa4:\x8b\xcfO\x94\xa3\x95\xa9\xf7\xf3\x02\xa3+\xaa\x83\x04\xe3\xd9#\xfd\x8czK*\xfc\x8c\xdf\xb9\xba\xac\xf3\x84\xaf0\xda\x0f\xa1\xbb\x92\xba(p^e\xbb\x8e\xb3\xde\xa0.\xd9]\x97\xcbe\x9a\xa4(\xb3\xece\xf3z \x05\xa6;\x11>f\xb5m\xd2J~\xb4.1\xaf^\xd8\xacK-\xab9^\xa5yN;KmZ\xc3\xe6\xb2\xdb\xe2\x19\x9f\xffh\x9b\x96\xb3\x84lL\xda\xf8\x03[\xa9%\x90j\xcd\x15E>\xd4Rp$j5\xe2\xcd\xb6\xda\x89\xa5\xfdH\xbf \xa6\xabu\x05s\x83Rb\x9df\x86y\xba\xd9f\x98n\xb2l\xc1@\xb9\xc5I\xbaL\x13(\xf1\x06\xe5U\x9ah0\xacl\xad\x8e0\x81\x1c\xcej\xaeV\xd2\xf7T\x1d\xcd1 Q\x89\xb25p\xf6\xec\x18Y\xc7hN\xae\xf5sZ\x88@,\x05\xe5\xe5\xb9\x0e-\xbb|\x9e\xef.\xdb\xc3\x1a\xca\x01\x15\xf3\xb4*\xe8\"\xd6\xb7P\xc9J\xee\x11(#b\xea\x01R\x0f-\xd5\xcel\xa3\xe1-\x9c\xf7\xcd\xc2\x81\xf9\xd7Xu\x9a\xa9y&\x17N\x96\xceY\xb3\xc5>RBYo\xb7\xa4`;\xf8\x16%W'uN\xff\x8f\xee\xdb|^\xa8W\x90\xd8\xe8\xf5\x86\x0dYB]q\xc5&\xd5CI\x15+Z,R\xae+`\x85s\\\xb0R\xa5\xfc\xa0%KS)\xf9\xd1\xf6\xf0!T\x7f\xef\xd5'D'?\xa6\x065}\x03\xe5\xbb\xed|\xf6\x16\xdfX\xda\x9f.\xd9\x1b\xff\xf65\xe4if\x9cxF!\x1b\x96\x87\xf9\xbdA\x07\x0dlDKy\xdff\x1f\xf3\x0d*\xca5\xca\xce W\x1eSuC\xf9\x1b=\xf8\xb3\x91\x93\xfbT\xb70\xfbv\xb8\xb3\xf2\xfb\xe4\xd5'\x02\xe1A\xa4&\x9b\xfaS\x87\ns\xf3dYg\xd9\x8c\xfd@M\xf9C@\x1dK\x80Z \xa2\xbe\xa3\x92!\x9fs\xea\x8f5\xdbn\x9e\xed\xe4\x99{\xcf\x91\xd2\x1c!\x00-+\xac\xf2\x9frb>\x9e\xc3\x93C\xf5\xa7\x84\xbd \x9b\xcc<\x01\x80\xc5\x1a9X\x122\x9b\xa3\x82u\xf6\xd3\xc9n\xf6\xf3\x01\x97\";\x97*\xf9\xe9\x8f\xe9\xac\xa9\x07\x94\x87\xceT\xf8\xc7\x87wo5?\xd1\x91\xa6?\xb7^'nI\x13\xaaE\x84\x19\xc8O\xb6u\x89\xa5\x87yUgHSa|\x9f\x0d}e\x81[\xc3\xed\x18\xf0f\x8e\x17\x8b\xd6\x84\xe3Nv%;\xa4\xf1_u\x8c*\xeeZ\xbf\xfc;\x15\xd0\xa5p\xa7\xf4\xa2\x0cr\x08\xd4\xcb@\xa8\xadg\x86#\x18J\xae\xa8\xeej]\x02\xcb4\xc3\xfa\xddF\xea\xba3\\\x94$7.N\xe1\x8b\\\xa6EY]\xb0q\xfc\x1a\x9e\xe897/0P\x89x\xfe\xa9\xf7\xbeG\xc9\xd4\xaa\x03&\xcb\x83gp\xa0Z\x9b}1\xccx/\x0f\x8eM\xfcX\xff\xde\xa2\x0d\xe5\xf9\x1f\xbc\x0b\xffi|\x81\xf6o\xf0\xbco'O\x97\xe2\xc8\xd9\x9fk|6\xa4%\xdc\xe0,{|\x95\x93\x9b\x9ci\x935*\x01AR\x97\x15\xd9\x18\xd6\x90\xea\x97\xfe\x94?\xe6G\x98\xc1:\xe0*\xb2\xd3\x1c:\x815\xc7K\xc4\xa7\xb4\xfac\x97l1\xcay\xbe&\xd9BT\x05f-\xe7K9\xcd\x9b\xf5\x01\xdc\x07\xaaf\xc5\x97\x8c\xfa;\xac \xb3fS?\xa2\xdaK\x8ap\xcf9&}\xc6?\xfe\xf0\xe3#\xc3B\x9ab\xce\xf5?h\x9evLT\x94\xe5\x93\xd9\xd3'O\xcb\x03\xc3\x14\xe2\xff_\xa1U'l\xf2\x18>\xe0\xe2:M\xa8\xf4N\x12RnHy2G%>i#\x85'\xd7O\xe6\xb8BONX\xe4\xb2<\xf9\x85#\xb1~\xe5LVm>lYo6\xa8\xd8=\x83o1\x0f\xb7}\xb3\xfb\x8e=\n?\xd5\xb8Hq)b\x9fT\xcc\xab\xf4\x1a\xe7\x02\xd3%u\x16\xd9b\xde\xe3\xd3\xc5>\x0f\xf1\x8c\x0c\xbcu\xbap\xf8\xf4\xab\xaf\x0e\xf5\xd1;(\xeb$\xc1e\xb9\xac\xb3\xdb\x0c\xdb\xe9\xc1\\\xc6`\x969\x94\xa5G\x10Y\xfd7\x16\xef\x8d\x138\xcb\xd8r\xb0\xb6\x1e\xec \xac\xca |\xe5\x02\xba2\x83\xad\xac\xe2\x02\xbb\xc8\x1cAUF0\x95\xa60\xbdx\xe7\xf0%U\xa8 \xaa\xf0\xe2\x19l\x99+\x94\x19p\x97\xe5\xe2\x8a\x97a\xbe\x844/+\x8c\x16\x87\x93N\xb3\xdb\x9d\x03\xd6\x1b\x08|\xef\x1a\xb0\xb6 \x9c\xda\x05n7\x058\xcd\x1d\xe8\xcc\x1fk!}k\x9d\xff\xa9?\xe9\xe2\x0d\xe5\xe4V\x8f\x1f\xfa\xf5\xf5M]\xedU\xdew\xad\xa4\xefZ3\xbf_\x03\xdf\xc0\xd0\xb7:\xbeo\x1d|{\xc5{\x87!\xbd3\x84\xb3\xb9\x06\xbd\xd7glP2\xc7\n\xf2\x13\xaeh;\xea\xd6\xa9\x83\xe0\xb2!pr\xdaK%9\xf5\x14\x9c{\x0b\xf6=\xb6y\xcci\xaf\x95\xe42\x8f$\xd9E\x0e>b\x07w\xd1;\xee\xc9\x83\x87\xcd@g\xf7Z\xe6N=r\xea\x89\x7f%r\x87\x9a\xe3S5\xcf\xb9d\xf5T\x1f\x1c\xca\xc3Z\xbc\xdbX\x8a\xd6\xaf\xec\xf6T}p-\x9a=\xd5\xf7\xec%\xaf\xa7\xfa\x92G\xc1\xea\xa9>\xe9Xnz\xaa\xcf\xf9\x15\x8bv/\x0b=M\xfbz\xc6\x9cc\x95fC\xe5e\xaaHn\xcd\xf4\xaf>Y\xc51I\xb6\x88uW\xb1J\x15\xbc\xcc\xe4\xf3O\x02I'}^\xcc\xb2\xe4\xa1\x03n;\xfe]\xdc\xd4\xc9\xbd\x17\x7f|b\xbc\xb2\xf3-\xbb\xa5\x9fa\x03\xb3\x8c\n\x0d\xd6\xb8\xc0\x0c\x19\xc5\x14\xd7\x0c\xe0\xbf\xf1a\x81\xe1\xff\xd6e\x05hU`l\xee\xae\x80\x82\x91\x82N\x0e\xe6\x994~\x9faF7\x18\xe5\xa2W\xbc\xe9\xcf\xb7\xdb\xefP\xb9\x86\x05\xc1\x1c\x87#\xa0\xf4\x94ui\xda\x95\xabO\x1aH\x8a-\xf1\xe3%5\xef{~m\x01\x7fg\x968\x12x\x83.\xa2_\x8f\xfb\xd2m \xe6\xfb\x15'\x98\xf3\xf6\x0b\x1c'\x9c\xf8VC\xd2\xde^N\x0by7\xe6\xc55\xa9\xf0}\xdfB\xc9\xda\xa0QK}\xf2h\x00x6\x02${\xa7'\x9dUQ\x97\xdc\x92\xc8$=\x86\x0f\xa7\xdf\xbe}\xf5\xf2\xe2\xfb\x0f\xdf^\x9c\xff\x9f\xb3W\x8e\xf9V-\xeds8{\xff\xea_\xef\xce_\x8d\xe3\xe0\x98f&I\xc5\xe3\xdd\xd9\xbb\x0f\xcfmYg\x92\x9a\xec\xb3q\xf2p\xd7\xf7}\xfa\xc0\xee#\xfd\xbe\\\x9d\x8b8\x0b\x07\x18SE\xc5\xaf*u\xe6\xd4\x81\x0c\xf4\xdc,\x1e\x17<\xeb\xc7\xf4\x19K\x80r-\x85`\x1c\x97gp\xc6\xac\x1c\x94\xb9\xb1\xb3\xb92\xfa\x14\xb0p|\x8e\xa7\x9c\xbc\xee?\xf0;+s2\xa5\xd4\xa8\xc9\xee\x17\xe9\x93\xa7\xae\x83\x00}\x07\xce\xc7\xf9\x96\x02\x86\x0f\\M\xb2!y\xf9Z\xfa\x14 =\x08\x94 %G\xafL\x9fB\xe6\x9d$\xff%!\xc9w\xc0!|\xd0!t\xe0===}r\xf2\xfb\xf4\xc99\xffVR\x80@\\\x9d\xa8}\xf2NO\x964\xa2\x85\xceC\xd56.\xcd\x17\xf8\x93_\xd3\xfc\xe6\xbd\xbf\xbeu\xceh\x96t\x17\x12\x0b7CXzs\x9b\xd9>\xdf1\x1b\xa2\xbd\x97>eA\x0f\x97\xa2f\x9c\xa8nM\x93t\xcb\xc0\xdbi\xde\xf1~\xc8\x0c[gV\xa8,I\x922F\xfc,\xe9\xf4&\xfeT\xe1\xdc\xe7\xb2\xf2\xcf`|\x9a>\xf5\xe0\x85.5\x0b$u\x82V3x\x97g;\x91D\xc1cp\x98{\xaa\xdd\x87F\x98\x9c\x8e\x85\xcf\x9b\xe6_\xfc\x16\x17O;8\xc3e\xe4\xccgo\xb9\x0d\x97\x91\xfb\xc8\xec\xad7\xc52rf\xa6\x9b(^\xe3\x1f\"\\&\xd8\x06\x19\xc6J2\x14\x98\x9e\xe7\xa1\xd7\x0c\xfa\x17'~\xcc\xd1\xdf\xa9a\xb5$\x1aT\xe6\x90:\x87)\xdb\xa3\xcc\xdd0w\x99\xd8\x9eF\xa4\xaf\xf1\x18\xdd\x0d\x03\x8a\xee\x86\xe8n\xb0St7\xd8\x9e\x86\xe8n\xf0\xb7-\xa2\xbb\xc1@\xfeKB\x92\xef\x80C\xf8\xa0C\xe8\xc0Gw\x83\xa4\xe8n\xe0\xe4\xafo\x7f\x8b'\xa6\xe8nx\xd8\xe3\x13\xdd\x0d\x9f\xc5\xe0Dw\x83\x8aB\x84\xfb9\xba\x1b\x1e`\xe1\xf4v#}\x18\xed\xf1\xb2\x87\x02[\xe2j\x07\xf9N\xcb\x97\x12JC\xe7\xe6\xd8\"\xee\xed\x82\xe7g}\xa8n\x08\xe5\xb5\xcc\xd2\x84\x15r\xa73\xdb2\xe7Xy\xf7\x0b^\xbe\xfd\x02\xb1\xda\xf2\xf7\x0d\xf0\xe9\xf4\xe0\xc2!\x07\x87\x93G[\xc0\xb3= \xec5\xbc\xf0<\xeay\xb6 \x02\xda\x05\x96\x14-5\x054\x0c\x02\x1b\x07.I^j\xf2M\xfdRS`_aD\x7f\xc1-yLM\x9e\nkHR\x81Y\x13\xcd\xd4dM?S\xd3}6\xdaW\x05\x0f\xc9-\xad\xcd\x9bm?\x0dn\x90\xec\xe6\xcd\xcd19NM\xae)s\xde\x8c{)v\xde\x89tj\xf2M\xafS\x93=\xe9NM\xc1\x13\xd9\xcf\xcd,)\xf8s\xbe6S\x97\xcc)~j\x9a\xa0\xa1\xae&U\x9f\x1c\x93\x04\xd5tO\xba?\xc4\x89 \xe3\x84\x0caG\xd6\x96Fx\xb3%\x8d\x906\x8c\x948\x84z\xb9%\x85x\xfd\x86\x14\xbe\"%\x85N\x1c\x18?y`\xec\x04\x1a\xe5\x15\x97\x14\xe0\x1d\x97\xe4\x9e\x9a\xa9\xa6\x11\xf2\x1b!7\xff\xe4N59\xa4|\xaa\xe9>\xba\xed\x9cp\xa9\xa6\xfbh\xb2=?IO\xae\x99\xaa\xde\x8cM\x99\xadj\xf2\xcbwU\xd3}\x88\xdf5cVM\xf7\xd1b{\xce\xad\x9a\xee\xa3\xad\x1eY\xbbj\xba\x8fF;\xe6\xfd\xaa\xe9>\x1a\xec\x979\xac&\xf7|b5\xdd}\xbf\xc7\x9c\xce\x1d\x13\x98\xbdx\xea\x93\x9d\xd5d\xba\xb9RM\x81fp\xa8\xf9\xfb\x19\x1d<\xbdpO\x92\xc6X\xe6\xfeqyI\xf1\xc4\xe9B\x81:\x81Sq\xba\xdcz\xaa&.9s\x92\xbf\x9a\xac\xa9\xffj\x1a\xb5P\xc6-\x13\xa9I\x9d\xeeXU\xd3\xe8\x89\xe6\x87m\xefS\xe8-\xadj\n\xbc\xbbUM\x817\xba\xaa\xc9\xff\x9eW5\x8d\xba\xfdUM\xe1GoNS\xdd\x14\xab&\xaf\xfbc\xd5\x14\x8c\xa3\xec\xd3\xe8u2Z\x1d{\x003\xf6i\xb2\xe6\x87E\x1a8yc\xcb\xfa4Y\x1f\x82\x86`\xcca\x8b\x93\xeb\x8d\xb9\x01\xac\xd3\x1c\x90\xf1\x1e]5\x8d\xe9\x93\xc3\x9d\xbb^\xfc\xb8svx?os\x13\xaf\x17/\xd3\xad\xbd*juD\x89\x9d\x8f{\x01\xfb~\xc8n\xdf\xf6\xc5\xfd\x9dP+(\xc0\x02\n\x90\x02\xa7\x10Yp\n\xd6\xe3\xa3\x14\xc8\x08\xe5\xb1\xad\xe7\x17Wx\x17\xda\xe0\x00\xe1\xc2(\x01S\xc2\x8b\xa7\x7f\xf9\xcb\x93\xff\x15\xf2\xeaHA\xc38a\x03\xbbX4\xd9>\xfd\xcb_\xaf\x9e|\x8e\xcd\x1fc\x91\x9d\xd5\xf3,M\xfe\x89w=\xc7\xde\x15\xde\x95\x9d{#\xc3\xec\xa8\xba\xc4\xfc\x82\xbd\x7f5\n\xc9\x93\x8b/\xf0\xb6O\xa3\x06e\xcca\xbe\xf1\x0bo\x8b\x94\x14i\x15\xbc\x8e\xef\xb4\xed\xb2\xd5>\x8d\x0dT7\xa1\x8a&P\x8f\x8f\x10f\xf0\xba\x0c\xd4\xe0\x81\x02\x85\x11B\x85q\xba{\x84pa\x8c\x80a\xac\xd6\xbe\xbf\x86\x87\xeb\xeb[\xd3\xd6cu\xf5\x18M=b \xc24\x1dL\xa1\xa3\xef\xbc\xd5a\xb9(\x92\x02\x9b\xeb\xd7Tz\x0e#\xf9\x85{\x10\xcc\xb3U~\xad\x99\xef~Fy\x95\xe6\xf8\xc2\xefD\xe4w\x12\xf28\x01y+w\x7f\x95\xee\xbdCz\x8e\x00\xa7\x00\xdd\xe7\xbd\x1fz\x0b\x0b\x82\x04\x06\xa1\xbb_\x90\xe0 Lx\x10\xbe\xd7\xddm3Cv\xb6[\xd8\xd3\xc2w\xb30\xf5\x1a$d?e\xc6i\xc4\xaeu\x07m\x0c\xdb\xa1<\x1b\xe6\xd9$\x1f'x`K\\\x1d\xdc\xbe\xbe\xd37t\x17}\xc1r\x01\x9f\xb3T\xc0\xb1\x19\x8a\xa2D{'g\x16U\x15\xdelYvbE`\x93\x96\x19F\x0b@<\x0f\xd1\xca\x8f\xe7)\xaa\x1c\xa6\x1d\xf8\xafZ\xf0V\xedn\xd7\xe46+\xc3i4]f\x93\x05(\xc3\xbfc\x83\x0e\xb8\x80_\xec0\x17\xab\xd8\xc0It\xe0\x845p\x12 \xb8o\x15^\x10\x13\xa7\x9e\x82so\x01\x9c\x01\"n\xe3)\xc9e\x02I\xb2\x8b\x1c|\xc4\x0e\xee\xa2\xf7\x04g8\xc10\\\x00\x17.\xa6\xb4\xd5\x80v\x9c\n\xae\x13\xc1\x0b\x02\xe11\x18n\xb0\x86P\x00C T!\x10\x94\xe0\x0f?\x18\x054p7\x1b\xa7\x02\x0fx\xc1\x04\xbc\x01\x01\x1e\xb3\xc6c\x01;Z2\x01\x1fw\xb3`\x9c\x83\xf1\x01-\xb0t\xdf\xc7tr\x0d\x9a\xb3\x10\xb8\x03'u@\xd8\xadE\x0e!oM\x18[\xc3\x10\xed\x1bq\xc3\xf65W\xd0\xee\x0f\x93\xbc\xbd\xf6C\x9a'\x0c\xfa^nH\xf9\xb8\\\\\xc1W\xb3?\xff-\xdeTk\xdbd\xec\xed\x02\xb7b\x03\xce+D\xae\x0fk.\xbe\xb5T\xc0\xd4\x9ft[\x00\xe0\x9c\xd2\x0f\xf1\xa6\xda>\xd9\x93\xe6\x1d\x86\xf4\xce\x0eI\xf1\xa6Z{\x07\xc1}\xc3\x8bg%\xab\xc8\xc1G\xec\xe0.\xfa\xdb8+\xb9\xa7C;\xf5\xc8\xa9'\xfe\xc9\xcc\x0ei\xcbS5\xcf9\xebu\xaa\x0f\x0e\xe5a\xcd\xff\x8d7\xd5:d\xcdN\xf5%\x8f\x9c\xd7\xa9>\xe9\x98\xb1:\xd5\xe7\xfc\xf2M\xdd3K\x9d\xda\xe7n\xab\x0d?L\xcfP\xfc~\xd2t\x95\xe6H\x18N\xcdc\x06N\x82\xc1\xb1\x10\x0e=\xd5 z\x1e\xfb\x06'\xeb?=\x15-6\xd6\xad<\xcd\xe1\x1c\xe7\x0b\\l\xd2\xbc:\x86jM\xdb\"\n\xeb_RQ\x97\x97\xc70\xaf+i\x08~x\xf9\xcfc\x03\xbb\x1bfr^\xe3\xa2\x82\xb4\x82\x8a\x0c\xdbbj\n\xb5M\xe7\xb8\xaap\x01\x1f\xff\xb7\xc3\x81\xd0\x9e+\xdb\xf6,\xde\xfb\xcb\xc8i\x0d\xb9O\xe4x\xef\xaf\xc9\xc6\x89\xf7\xfe\xc6{\x7f\xf7\xc9\xb5%\x10\xef\xfd\xd5P\xbc\x88GP\xbc\x88\xa7C\xf1\"\x1e\xa7w\xbc\nR\xf8y\x1e8\xb9\xc4\xe0\xfbd\xf72\xf5\xc9S\xd7A\x80\xbe\x03g\xe7HK\x01\xc3\x07\xae&\xd9\x90\xbc\xe8\x10:\xf0\x9e~\xb3>9y\xd1\xfa\xe4\x1c\x10\x95\x14 \x10W\x97t\x9f\xbc\xe3\xc5\x92F\xb4\xd0y\xa8\xe2E<\xbe\x12\x0b7C\xe2E<\x9f\xc1\xf8\xc4\x8bx>\x8b\xc1\x89\x17\xf1\xa8(D\xb8\x9f\xe3E<\xf1\xde_\x15Ew\x83\xa0\xe8n\xe8Pt78\xbd\x13\xdd\x0d\xb6g%\xf9\x9e>\x03\x86\x0f\xc2l\x8b\xe8n0\x90\xff\x92\x90\xe4;\xe0\x10>\xe8\x10:\xf0\xd1\xdd )\xba\x1b8\xf9\xeb\xdb\xdf\xe2\x89)\xba\x1b\x1e\xf6\xf8Dw\xc3g18\xd1\xdd\xa0\xa2\x10\xe1~\x8e\xee\x86\x07\x98\xc9\x1e\xef\xfd\xd5\x93\xef\xb4\x8c\xf7\xfe\xda\x98\xc6{\x7f}\xda\x05\xf1\xde_\x0b\x05\xf6\x15F\xf4\x17\xdcR\xf1\xd4\xe4\xa9\xb0\x86$\x15\x985mOM\xd6d>5\xddg\xa3}U\xf0\x90\xdc\x92\x04\xbd\xd9\xc6{\x7fmi\x89j\xf2MVT\x93=\x85QM\xc1\x13\xd9\xcf\xcd,)\xf8s\xbe6S\x97\xe2\xbd\xbf\x0e4F\xf7\x8781a\x9c\x90!\xec\xc8\xda\xd2\x08o\xb6\xa4\x11\xd2\x86\x91\x12\x87P/\xb7\xa4\x10\xaf\xdf\x90\xc2W\xa4\xa4\xd0\x89\x03\xe3'\x0f\x8c\x9d@\xa3\xbc\xe2\x92\x02\xbc\xe3\x92\xdc\x13]\xd54B~#\xe4\xe6\x9f*\xab&\x87\x04Z5\xddG\xb7\x9d\xd3W\xd5t\x1fM\xb6\xe7'\xe9\xc95\xef\xd7\x9b\xb1)OXM~\xd9\xc3j\xba\x0f\xf1\xbb\xe6\x1f\xab\xe9>Zl\xcf`V\xd3}\xb4\xd5#\x07ZM\xf7\xd1h\xc7,j5\xddG\x83\xfd\xf2\xb0\xd5\xe4\x9e\x9d\xad\xa6\xbb\xef\xf7\x98\xd3\xb9=\x97\xd9_\x03\xc6{\x7f\x19M0\x11\xfc\xcd\\/\xdc\x93\xa41\x96\xb9\x7f\\^RN\xf0\xc0\x96\xb8:\xb8}}\xa7\xf1\xde_\xa3&\xb7Y\x19N\xa3\xe92\x9b\xe2\xbd\xbf\x96\xe5\xe0\xb8UxAL\x9cz\n\xce\xbd\x05p\x06\x88\xb8\x8d\xa7$\x97 $\xc9.r\xf0\x11;\xb8\x8b\xde\x13\x9c\xe1\x04\xc3p\x01\\\xb8\x98\xd2V\x03\xdaq*\xb8N\x04/\x08\x84\xc7`\xb8\xc1\x1aB\x01\x0c\x81P\x85@P\x82?\xfc`\x14\xd0\xc0\xddl\x9c\n<\xe0\x05\x13\xf0\x06\x04x\xcc\x1a\x8f\x05\xech\xc9\x04|\xdc\xcd\x82q\x0e\xc6\x07\xb4\xc0\xd2}\x1f\xd3\xc95h\xfe[\xbd\xf7\xd7\xa5m\xdf\xf0\xec\xe7\x12*\xdc\\?EG\x8d\xffp\xcc\x0fO\xb4\xb1\x02\xf4\xbd\xd5\xdf\xf3%\x96\x84*\xb5x\x99\xe2l!/\xdb\xc2\x0bjb\xce\xfb\xb7~u\x9f6\xb7\xfa[\\\xb1\xb6}\xb3\xe3\xf74\xbd\xc7\xe5\x96\xe4%\x96\x17\x93\x15\xf2\xbfY7d]\xaa>\x8f\xff\xaaq\xb1;\x19r\x82\xf7g/`\x83\xab5Y\xb4\x0d\x92\xea\xac\xc3\xa1\xd7\xbe\xe79\xd49\xfe\xb4\xc5 \xed\x18.\nR4M\xe8v\xabL\xd6x3\xb8\x1eG\xbb\x9f\xe9w0\xf6\x81\xfdegXh Y(\xd6\xa9\xd9\xb61\xd9\xa8\xa2:\x90W\x1b\x16\xb8Bi\xa6\xd0\x96&\xb3@k\x0eX\xcc\x00\xdb\xf6O_\xbf\xa8\x0b\xad\x01\xe8\xa0\xb4\xec\xeb\x8a\xd3s\xf8\xf8\xfe\xcdI\x81KR\x17 \x86\x1cm\xc4b\xaf\xf3\xf4\xa7\x1ag;\xa0\x1a\xa0J\x97\xa9pvT\xbcH\xac\x96!\xbf_\xabHQ\x96\xfe\x8c\x17\xfa,\xfemA*\x92\x90\x0c\xe6\xf5r\x89\x0b9h3~m\x18\xef\x1bl\xea\xb2\xd1H\x80\xf4\x16U\x86Qi(\x1fFr\x0c\x07'\x07\x90\xacQ\x81\x92\n\x17\xf4+\x98\x9d\xfc\xa0\xc4\xab\x0d\xce\x1b\xb5\xfb\xf1\xfd\x9b\xc3\x12\xb6\xa8Zk\xb9\xb1F5\xc5\xa1\xf4_\xa5\xec\x96u\x96\xed\xe0\xa7\x1aeT\x82\x0b._\xf1)&\xc9#T\x1a\xebk]\xd2\xa6\x9c\xac\x08Yex\xc6d6\xaf\x97\xb3\x97u\xc1\xca$\\>\xe2=al\xcb5\xa9\xb3\x05\xcc\xe9\xb6\xa1\xe5\x87 A9\xc9\xd3\x04el\x0d\xe9\xbf|\x84g\xab\xd91\x15-+\x00q0;\xa0\xfa\x8b]'\x97$x[\xe1\xc5\xa3\xd9\x17\xfa\xd7Os\xd8Ra\xa7 >\x86\n\xa3M uY#*\x0e^@k\x9bf\xb4\xa5\x15a\xc2\x98\xa79*\xf4\x867\xbb\xc1n\xb7\xc5\xe2*9V\x12P\xfb0\xd7u\xe2\xc6\xc4\xba\xecV&\xae\xf0'6\xd4\xcf\xf3\xdd\x0c\xbe#7\xf8\x1a\x17\xc7F\xa3\xea\xe3\xfb7\xd2h\xa3\xac\x8c\x15\x04\x99\x06\xc5p\xb9\xae\xaa\xed\xe51\xff\xff\xf2\xf2\x18H\x019\x11\xbf\x1e\xb3\xd9\x98\xa0\x1c\x08[\x9dT\"z\x86\xb8\x82z+J3\x1b\xbe\x8b\x8bk\\p\xd1l\xd0V\\9\xc9Z^\x91\xa6>3sY\xa6\xfc\xb6;\xa4w2.I\x96\x91\x9b\xf2\x99al\xbf\x84\xd3e\xdb#:-d]\xc0\xa6\xd3\xcc\xa0)\xcbz\x83\x17\x86\x82o_\xd2\xcd\xe9\xbb\xf3\xf33\xf8\xf6\xd5\xb9\xbc_\xf0\xe3\xfb7|\x8d\xed\xd8\x9e\xac\xb7{~\x18.\x8b\xf3\xdd\x16\xff\xf8\xc3\x8f\xda\x17\x98y\\\xb3\xf9\xc0\xe7\x9b\xd8F\x8eyY7\xb2\xa8\x13\x0c(\xe7[\x98\x1e\\\xf7%z\x14\xd2x%\x1fS_\x8c\xb3\xe0O\x96Yp\xb6\xab\xd6$7\xcc\x03\xde\xc6\xd7\x84\x1c\xcdf3\xfd\xc6\xd6\xcc\x81#\xe33l\x1d\xb1\x19\x12:A(\x93S.\xf1\x97\xaf>\xbcx\x7fzv\xfe\xee\xfd#\x93\xbf\xb2]s\xe6\x0f\xf3O\x1b\xa5\xf9g\x8b4\xbf%\x86\xfa{T\x92\xcf\xbe\x86?l\xe7\xb3\xd7\x84\xfc2\x9b\xcd\xf4\xf3\x906\xfa\x98\x1a\xd4\xf4\x0d\x94\xef\xb6\xf3\xd9[|ci\x7f\xbado\xfc\xdb\xd7\x90\xa7\x99q\xe2\x19\x85lX\x1e\xe6\xf7\x06\x1d4\xb0\x11-\xe5}\x9b}\xcc7\xa8(\xd7(;'\\yL\xd5\x0d\xe5o\xf4\xe0\xcfFN\xeeS\xdd\xe2\xec\xdb\xe1\xce\xca\xef\x94W\x9f\x08\x84\x07\x91\x9al\xeaO\x1d*\xcc\xcd\x93e\x9de3\xf6\x035\xe5\x0f\x01u,\x01j%\x88\x1a\x8fJ\x86|\xce\xa9?\xd6l\xbby\xb6\x93g\xee=GJs\x84\x00\xb4\xac\xb0\xca\x83\xca\x89\xf9x\x0eO\x0e\xd5\x9f\x12\xf6\x82l2\xf3\x04\x00\x16k\xe4`I\xc8l\x8e\n\xd6\xd9O'\xbb\xd9\xcf\x07\\\x8a\xec\\\xaa\xe4\xa7?\xa6\xb3\xa6\x1eP\x1e:S\xe1\x1f\x1f\xde\xbd\xd5\xfcDG\x9a\xfe\xdcz\x9d\xb8%M\xa8\x16\x11f ?\xd9\xd6%\x96>\xe6U\x9d!M\x95\xf1}6\xf4\x95\x05n\x0d\xb7c\xc0\x9b9^,Z\x13\x8e;\xda\x95\xec\x90\xc6\x7f\xd51\xaa\xb8{\xfd\xf2\xefT@\x97\xc2\x9d\xd2\x8b4\xc8!P/\x03\xa1\xb6\x9e\x19\x8e`(\xb9\xa2\xba\xabu ,\xd3\x0c\xebw\x1b\xa9\xeb\xcepQ\x92\xdc\xb88\x85/r\x99\x16eu\xc1\xc6\xf1kx\xa2\xe7\xdc\xbc\xc0\x80%\xe2\xf9\xa7\xde\xfb\x1e%S\xab\x0e\x98,\x0f\x9e\xc1\x81jm\xf6\xc50\xe3\xbd<86\xf1c\xfd{\x8b6\x94\xe7\x7f\xf0.\xfc\xa7\xf1\x05\xda\xbf\xc1\xf3\xbe\x9d<]\x8a#g\x7f\xae\xf1\xd9\x90\x96p\x83\xb3\xec\xf1UNnr\xa6M\xd6\xa8\x04\x04I]VdcXC\xaa_\xfaS\xfe\x98\x1fa\x06\xeb\x80\xab\xc8Ns\xe8\x04\xd6\x1c/\x11\x9f\xd2\xea\x8f]\xb2\xc5(\xe7\xf9\x9ad\x0bQ\x19\x98\xb5\x9c/\xe54o\xd6\x07p\x1f\xa8\x9a\x15_2\xea\xef\xb0&\xcc\x9aM\xfd\x88j/)\xc2=\xe7\x98\xf4\x19\xff\xf8\xc3\x8f\x8f\x0c\x0bi\x8a9\xd7\xff\xa0y\xda1QQ\x96OfO\x9f<-\x0f\x0cS\x88\xff\xff\x16\x15h\x83+\xdc\x05H?f\xfa\xf5\x99\xc0YuX\xa4\xf9\xb3\xa13\xbf\xc0?\xd5i\x81\x17\xcf\xa0*\xea\xae\xd05.\x05\x15j\xa6B\xab\xde\xd7?\xe0\xe2:M(\xb3\x93\x84\x94\x1bR\x9e\xccQ\x89O\xda\x88\xe5\xc9\xf5\x939\xae\xd0\x93\x93\x9c,\xf0E\x9a/ \x7f}\xd5f\xe4\x96\xf5f\x83\x8a\xdd3\xf8\x16Wo\xc9\x02\x9f\xe6K\x02?\xd5\xb8\x90\x91\x17\xe1\xba\x02\xca\x82\x15\x00\x93\xba\x92l1\x97\xf4\xe9\xa2\xf7\xf6\x17\xb2\xc3<\xd6\xd7i\xf1\xe1\xd3\xaf\xbe:\xd4\x07\x0c\xa1\xac\x93\x04\x97\xe5\xb2\xcen3R(\xcc\x8e\x8b\x81L\xbad\x0c\xa4\x99\xc3h\xd2\xedqa,\"o\xfc\x00X?\xc2\x9exj\xc098\xf8\xa9\xda)f\xacbn\xa9\x0b?\xdd\x87\x8c\x95\xdc\xa7\xf9L\x7f\xe45 B\xcb\xa7\xb2\xb4\xacp\xce`.A\xef\xe7\xb8\xba!\x85F\xa2\x96w\x1d\xa6\x94\xf6\xddd\x8d\xf2\x1c\xabB\xcd\x0e/[\xbd\x9a\x1b\x92\xa7W:\xc0\xa2\x859s\x0e\xdf\xda2\xa9>\xd9\xaeS\xb3\xf6\x1d\xa0\xd8&v`\x93\x81O\xa7\xc4\xbc^/\x8cP:l\x1b\n\x91=\xdan/\x82_\x1e3\x1dW\xa9\x0b\xfaY\xfb\xfa\xbcN\xb3\xc5E\x7f?\xf4x}E\\\xd4\xb3\xe5\xeb\x0b\xbc5~]\x8f\xe94\xe29\xads\xde6\x19\xc43\xa82\"i\x1df={\x8c\xe3\x0e7dQg\xd8\x0cPp\xb85%\xe8\xa3\x82\xaf\xf6\xf9\xd2\x0c*\xf5\xfbf\xb2\xc6\xc9UY\xab\xed\xfc\xe6\xa9\xefy\xcb\xd2\xce!\x92\x1a\xc1\xff\xe2-=UWI\xe5&\xdaE\xb9\xb8\x1a5\xf9\x9aF\x1c~H\xf3\x84\x95g\xa5|\x1f\x97\x8b+\xf8j\xf6\xe7?\x1d\xee\xbd\xd3\xb3\xb2:m\xdck?\xfd\x8f\x8e!\xd7\x00\xc8\x9ap\x8a\x96\xab\n\x8c\xb6\xc7\xc6\x84Ck\x91g\x033RR\x84\xa0 \x8a\x10\xb4\x08Ak)B\xd0\"\x04\xad\xa5\x08A\xab\"\x04MM\x11\x82&)B\xd0\"\x04-B\xd0\x1c\xad\xa4\x08Ak(B\xd0\xba\x14!h\x11\x82\xa6\xa0\x08A\x8b\x104\x9b\xf0#\x04M\xfbN\x84\xa0\xf5(B\xd0\"\x04-B\xd0\"\x04\xadG\xaep\xa0\x08Ac\x14!h\xbf\x15\x08Z8\xfc\xab\xdc\xe5I\x9a\x8bR>\x1a\xf0\xd7\x07\xfeL\x83\xfdbx/\xf1\xa2\x0e\xf2%\xde\x11\xbf>X\xc4W\xaf\xfb]\xe2\xbc\xe6\x84d\x18\xf5]a\xd6\xe8\xa6\xe8\xbagp\xb3/0I1\xb6)(\xc66cl\xb3\xa5\x18\xdb\x8c\xb1\xcd\x96bl\xb3\x8a\xb1M5\xc5\xd8\xa6\xa4\x18\xdb\x8c\xb1\xcd\x18\xdbt\xb4\x92bl\xb3\xa1\x18\xdb\xecR\x8cm\xc6\xd8\xa6\x82bl3\xc66m\xc2\x8f\xb1M\xed;1\xb6\xd9\xa3\x18\xdb\x8c\xb1\xcd\x18\xdb\x8c\xb1\xcd\x1e\xb9\xc6\x99bl\x93Q\x8cm\xc6\xd8f[\xe6\x1fW\xe5I\x86*\\V\xc6@\xe7\x1b\xf6Hs\xef\xd9\x07\\51O\xfev{s\xc0\xe3\x12W\xba\xd8\xe7>\x1b\xf1\xe0\x83\x0d\x83\xf2k]t\x97B\x19}/\xa6;|LWGV\xf7\x10g\xb3$\xea[}L\x96{\x18-\xad\x03\x87\x16\x82C4\x10\\\x9a\xca\xc9\xc5\xab$\xc972hd\xa6v\x0f\x19\xce\x18SG\x08\xc1\x1e%\x84\x80H\xa1\xb9\x03\xa8Z;G\x0ba\xaa\x88!\x04F\x0d\x8d\x0c\xa9p\x9d#\x870>z\x08\xde\x11D#+\x11\xd9\xf0\x8a\"\xc2\xd4\x91D\xf0\x8c&\x82oD\xd1<\xb3\x9bh\xa3kT\x11\xa6\x8e,\x82[t\x11\xa6\x8c0\xc2\xe8(#\x84E\x1aa\xaah#\x04E\x1c\xcd\xcb\x01\x95xa\x8f:\xc2\xedD\x1e\xe1\x16\xa3\x8fp;\x11H\xf0\x8cBBX$\xd2\xa6\x82\xdd\xa2\x910mD\x12<\xa2\x92\xe0\x1f\x99\x84\x80\xe8\xa4\x83\xca|\xe4\x10\xa1\x84)\xa2\x94`\x8bT\x82\xbby\xe6\x10\xb1\x04O+\xce;ri\xe4\xc6\xa2\x9a\x0e\xd1K\xf0h\xe5\x84QL\xf0\x8ad\xc2\xd4\xd1L\x08\x8ch\x9a\xe7Ui\x8fjBxdS\xcb\x8f~\xd1\x16\xdd\x84\xc9\"\x9c\xe0\x1e\xa8\x03\x97H'\xf8E;\xc1\xe6\x82\x0f\x8cz\x82\x03_\x83\xffo\xa2\x08(\x04 \xd7=\x12\n\x0e\xbd\x0c\x88\x88BhT\x14\xcc\xa1\x1f\xa7\xe8(L\x1c!\x85\x89\xa2\xa4\xe06cFGK\xc1=b\n\x8eQSp\x8e\x9c\x82\xdb\x84\xf2\x8f\xa0\x82W\x14\x15L\x91T\x98*\x9a\n\xbe\x11U\x08\x8c\xaa\x82_d\x15\x1c\x06\xc1\xb2\xcc\xec\xef\xbbGZa\xc2h+\xb84\xcd\xb0\xca\xa6\x8b\xbc\x82K\xf4\x15FD`\xb5\x0c\xe9\x83\xa6(,L\x1d\x89\x05k4\x16B#\xb2Zn\xfclovs\xd8#\xb3`\x8e\xceBP\x84V\xcb\xca\x18\xb9\x85\xd0\xe8\xad\x96\x1b\xb7\x90\x0d\xfe\xc4\xe9\xa2\xb8\xe0\x14\xc9\x85\x80h.\xf8Et!$\xaa\x0b\xde\x91]0k\x11\xb0D\xdb\xc0#\xe2\xe6\x1a\xe5\x85\x90H/\xf8F{\xc1\xdc\xf1\x90\xa8\xaf\x96Y'\xa6\xea\xbad\xdc\xa2\xbf\xc6\x05\x91\xaf\xcc\x11`\x986\n\x0c\xb6H0\x98\xa3\xc1\xdawB\xa3\xc40\xe1\xdc\xf5\x88\x16\x83W\xc4\x18\xb4\x06\xca5\xa9\xd2|u\xb1%7\xbaz\xe2N>\x1bS\xac\x93\x93\xbc\xeb\xfdb[\xa4\xa4H+K\xacp\xd4\xd7\xfa\xc5{e\xa8UY\xbaW\x19\xb6\x96\xb4E\xab4gc\xb1\xdf\xd8\xde7\xda\x07y\x04\x003\xefM\xe7\xaf\xf2s\xaaH5\xa7\xca\x14\"\xb5T2\xc7\x9f*}\xf4\xd5*O\xab\xaf\xad\xd7\xd5\xff\xd1\xf9\xafd+\xa4\x98\xe9?\x85\xbb\x1a\x95%\xf7\xcf\x9f\xa1\x15~\x8f\x7f\xaaqY\xcd\xf8\xef\x1af?\xd5\xb8\xd816\x94-\x95$\x86\x0d)+\xc0\xcc\xe9\xcb\xbc\xc538\xad:\xbaj[\xed \xd5yq\xaa5.0\x8b\x16\xe4\x046\xa4\xc02:\xa0\xda\x9f+R!M\x8c\xd9Y\x98\x86k\x1bD)j\xad#\x90}\x9eI\x91\xfd#\xaf7s\xee\x93\x94)T\x9d|\x1d]\x7f\xbb\x82NH\x9dW\x17\x8c\x99N\x8d\xdd\xa0\x12J\\\x1dCZ\x952VSB\x9d\xf3\xc9\xbc\xe0\xee\xe8\x9b\xb4\xec\xcf\x0fk\xbe\xf7>\xdc\xc3)\xf5{\xc0\xa8I\x04\xef2\xfaf\xf7\x1d\xc3d\xc4\x16\xa1\x11\x80\xce\x98\x04\x99\xe1\x8f\xca\x88y\xe0cP\x18>\x08\x8c\x00\xf4E\xcc\x03\x8fy\xe01\x0f\xdc\x15=1)r\"\x045\x11\xf3\xc0u\x8fY\xd1\x11\x1e\xc8\x08\x97\x0cb\x1fDD\xcc\x03\x0fI\xa5\xb6!\x1eb\x1e\xb8;\xb2\xc1\x11\xd5\xe0\x82hpC3\xc4\xa0)rr]\x11\x02\xde\xe8\x00/d@\xcc\x03\x0fD\x00\xc4\xcd\x9f\xf1ou\xfeV\xe0\x9f\xea\xb4\xc0\x8bg\xb0DY/l\xa9q\x93(]#\n!\xf2\xf6\xe9\xe48pK\x88\xce0Q\xe6\xf5\x06\x17i\"\xff\xc6V[\x82r\xda\x1f\xee\x17Z\xe3\\\n\xbe\xce\x1bW\xdc\xc0j=e\xdc2\\\x96\xad\x08\xb9\xf3\xaa.\xa9\xa8\xaf\xb0\xa7<\xfb\xecoY\xb8\x83\xa0\xb8B\xbcY\xbaI]\xa5\xcb\x9em@\x1d\x9aX9w\xd3vg\xb0\x08;\xd7\xd9 |\xcb\x9d2\xdd?\x9d.!\xc3\xcbJb\x0b\x04\xd8@\x9a\x86\xcc\xc3\xcc\x17\x08\xff\x08\x95\xf3|\x07\x18%k@\xdb\xed=J\xb1\x1b\xf1o\xdf7\xc9\xb2\xf3\x06\x95(\x9b\xa1\x04\xaa\xa2\xc6@\xff\x91\xe6\x8b4A\x15nbMB\x82\xecA1\x91\xba\xec\xd2<\xc9\xea\xc5\xc0\xf0C\xfc+M\xb0o0b,t\xdc\xf1AS\xd5\xddA\xd0\x0c\x94\xcb\xc7\xd3r0Z\x83.0[\xb9\xc0\xa5\x08\xf2\xb3\xe5\xd5\xaeG\xba\xe4fb5\xa5\xab\x9c\x14\x03\x0f\xbe\\\x8d\xfdOp\xc9\x8c\x1d\xd8a\xe9|\xc5\x00\x16\xf8\x1a\x17\xbdWM\x83'\x9e\x1e\x0e\\\xdaA\x8c\x14X\xbd\x12z|\xe87p\xceb\x9b\xa4X\xe0bh\x97\xab\xefN\x9fT\x1aS\x954\xf9\x85W\xec\xf8\x95\xf3\xd2\x145Q\xe2IdY\x93\x1e0\x0cP\x05\x08V\xe95\xce\x81s\x96\x93`X\xe1D\xc5\xf3\x0b)\x89X\xe3DRu\x0f\x18\x92X\xe3\xc4@\xbe\xa8\x17#3u\xe8\xc3\xe0?\x9b\x1a\xfd\x02v\x04\x0c\x04\xa0`\xcc\x1d\x885NB\x911\xe0\x8d\x8e1\xb2\x8a5Nb\x8d\x93P\x04\x0d\x84\xa1h`*$\x0d\x04\xa1i\xcc\xcb!\xd68\xf1C\xd7\x80'\xc2\x06\xc2P66\x15\xec\x86\xb4\x81i\xd16\xe0\x81\xb8\x01\x7f\xd4\x0d\x04 o\x1cTf\xacq\xc2\xc9\x1b\x95c\xe4\x16k\x9c\xc4\x1a'\x03\x9a\x06\xbd\x03\xee \x14pA\xf1\x80\x1f\x92\x07l\xe1\xe5@D\x0f8\xf0u\xa8X1\x12\xdd\x03A\xc2uG\xf9\x80C/\x03\xd0>\x10\x8a\xf8\x01k\xf1\x05;\xf2\x07&F\xff\xc0D\x08 p\x9b1\xa3\x91@\xe0\x8e\x06\x02GD\x108\xa3\x82\xc0mB\xf9\xa3\x83\xc0\x0b!\x04\xb1\xc6\x89\xbd\x10\x88\xf1g\xeb\xfb\xee(\"\x98\x10I\x04.M\x8b5N\xa6E\x19\x81\x15i\x04\xa1h#-\xb7X\xe3$\xd68\xd1\x907b \xbcQK\x10k\x9c()\x04\xd1\xa4e\x16k\x9cH\x8a5N\x14\x14k\x9c\xc4\x1a'\xca\x07\xac\xbe\xb6X\xe3\xa4\xfd\xc9U\x98\xb1\xc6\x89\x06\xf0\x11\xab\x9c\xb4d\x98M\xb1\xca\x89\xe2\xf5X\xe5\xc4\x03\xe7\x11\xab\x9c\xc4*'-M\x8a\xdf\xf0\xc1nx\xe16b\x95\x93\xb1\x18\x8d\x00|\xc6$\xd8\x0c\x7f\\F\xacr2\x06\x87\xe1\x83\xc1\x08\xc0_\xc4*'\xb1\xcaI\xacr\xe2\x8a\x9f\x98\x14;\x11\x82\x9b\x88UNt\x8fY\xf1\x11\x1e\xd8\x08\x97\xfa\x18>\x98\x88X\xe5$\xa4P\x88\x0d\xf3\x10\xab\x9c\xb8c\x1b\x1cq\x0d.\x98\x067p\xe6\xb7\x89\xe8UQ{\x94[\xb0V[\x88uU\xc0.\xc5XW\xe5\x16\x85k\xaf\x08\x12\xeb\xaaL!\xc5XW%\xd6U\xf9M\xd7U\xc9\xc9\x027\x15U\x12\x92/\xd3\x15\x7fKUA\xe5\x05\xfb\xbd)\x98\"\xe1_\xbc\"\n)\x80\xbf/\x8c\x019\xb8\xbdz)\x9c\xc3\x17\xb2C\x0f\xb4<\xca&\xcd\xd3M\xbd\xb9X\xa1\xf2b[\xa4\x89\x1f\xc0d[\xd4y\x9a\xaf.\xae0\xde^\x148\xc1\xb9o\x8d\x15\x81\xa5\x12\x8c\xe8T\xac\xd2|5t\x84\xcb\xef\xa4y\x85\x8bk\x15\xb6K\xfb\x11s\xcc\x81\x0fR\x03i\x92\xd8\xbf\x1e\xae\xa9\xac\x8a:\xa9\xea\xa2\xc5\x1c\x8a\xc9\xb1z\x7f\xf6b\xc0\x8fM\xe4\x88b\x8a(&m\x08\xef\x16\x02\x80!\xfa\xaf\xacPU\x97z\xfd\xf7\x81\xfd\xbe\xa7\xff(\x0f\xe0\xef*\x95\x1e\x7fM\xfc\xf2`\x95\x1eFE\x96\xe2\xb2\xba(+R\xe0q\xc5\xa1\x948\xd1\xe99V\xe9\x06\x97\x15\xdal\x03\x99.P\x85\x1fS&\x83'\xd0v{\xb1F\xe5:\x90\xad\"\x0c\xdd\x00\xb2'\xe5kV\xe3t\xdaa_-\xce\xa71\xf37\x0e\xd8\xd1Y\x1e\x95xT\xe2\x0fK\x89/R\xcas^\xd3Y\xd7\xb1c7\x9b:O\xab\xdd\xc5\x96\x90L\xaf\xcf_\xc8\xe7\xce\x08\xc9\x1a\xb5\xce\x01\x84\xe2\x17\xa0\x1c !i\xae\xd6\xed=\x16\xe2\x81\x07\xab\xe2[it\xe9>&\xdb\x02\xe7d\x13fo{D\x18[\xb6\x96w\xcb\xfc\xba\xbao\x9c\xb4=\xe4d\xe9''[o9\x19\xcd\x00N\xd6\xder2\x9b\x04\x9c\x9cX\xb9\x98\x07\x9c\xbc\x8d\x04\xa3 \x98\xf9`1\x158\x05\x19\x0c\x06~\"Vm2\x1b8\xf9\x1b\x0f\xe6\xe0\xa8\xa4Vy\xbc\x94\xca\x8e+\x906l\xcf5U;\xa9\x94|\xe8\xa1\x15\x1a}yX\xca\x7f\xd3\x01\xe0k\xc2b\xdeH\x1d\xd8\x8ch\x96 +dO7v>4d\xaaI\xb4\xbd\x0f\x9d\x12\xcd\xec\x86\x82V\xcd=\x99\xd9|G\xeezl\xcaz\xc3\xa6w\x7fB\x1al\xed\xbd\xa5\xc6\x0c\x0f\xf56\x1dntk\xac\x8bhn\x0b\x8a\xe6\xf6\x1d\x9b\xdb&\xc8\xd0\x9e%\xad\x9b\x8a{\x0f\xf6\x96b\xf3\xab\xbc^\x00*\"*;,\xfb\x9b\xc1HH\xd2-\x1e\x1dN~\xd9\xb36\x0d\x17g\xb4\xab\xdc\xeb\xf8\x80:\xfb\xaf\xe5\xd0\x10\xcf\x0b\xfb?\xdb\x96_\xdc\xdb\x1b\xfa\x9c\xf6\xf6\xa1\x8di\xb3/;\x8bG\xc1\xcd\xb6\xcdO\xb8\xc3\xc7\xcd}@qs\x8f\x9b{\xf0\xe6\xde\xb6|o'\xd6\xb5|\xef\xc1^\xcb\x9b_o\xbb\xe5\xb7a\x96\x0c/\x8e2X!\xa4h\xca%\xf5\xed\x90\x96\xc7\xc0\x11`\xb2=\xba\xdc\xbe\x90\xb2x\xa0\xd6\xc7-\xdd\xae\xa5Y\x85\xf6=\xbe#p\xe5D,\xbb\x83@w\x1e\xb9\xa3)\xd7\xfcr\xe8Hq\xdf\xe7\xba\x838z\xa7\xeb\xcd\xaf\xb8\xd7 \x8a{]\xdc\xeb\x1e\xd4\x8eA\x8f\x11\x8b\x02\xdd\xf4\x83%\xc6}\xe3\xbf\xc5+\xcfEo\xe5\xe6!Y5b\xf0\xd9>\x06L\xbf\x90\xd2y\xa0{\x88Zl]r\xdf\x14\x86\xbc\x02'\x97\x9f\xa6\x1f\xc8{\x02u?\x9c\x16Q\xe7\x0b\x8a:?\xea\xfc\xbb\xd5\xf9L\x00\x06U~\xc6~o\x147\x7f\xbcIj\xefp\x84\x0dY\xd4\x19V\xab\xee\xces\x9c\xe1\x17\xb2{\x0fTiw\xc5\xd2\xa5>4\x8b\x0b\xa3;\xd8\xed|\x922\xea\x8b\xa5%\xe3b2/\xa5\x16kY\xa1O\xfa\xb5fX\x0dsT\xe2\x8b\xad,\xa4m\x02/X\x97\x95\xfd\xd0\x02\xcc5\xb9-p\x82*:\x93\xcf\xd7X\xd9\x80\xd6\x85\xb8h\x9e\xd6\xb0c\x15\xe0J\xc8 d$_\xe1\x82\xa5\xc4\xe9\xe2\xe8\"m\xf2\xd3\x89b\xba\x1e\x96\xc2\x13\x08\x1b\x9c\xacQ\x9e\x96\x1bUH}N\xf2\xba\xbc_\x81\xa9Z\xf0\x80%\xd6\xb3T.p\x8e\xe6\x196Jl\x98X\x08VQ1\xfd\xc6\xd5\x89\x93M\"\xac\x10\xa1\xd1\xf6s\xa6\xa2\x05\x12-\x90\xbb\xb7@\x82v\xed\xd6\xe1\xe3\x17V\xec\xac\xa1\xc6\xe5\xd2\xdd\x9cO\xf3%\xd9\xbf\x9c\x9fm8iY\x8a\xb8Q\xc3\xa2\xc4\xd9\xf2\xf1\x1e\xe0\x87'i5/\x8b\xa7{\xf6\x80\xf6\xdb\xe2\xe1\x07k\x16\x10\x91v;\xc5Yn\xc8K\xe3Z\x96\x8fI\xebq\xa8l\xe9 \\\xccI\xbe\xb8\x88\xa1RN.\x1bl\x0c\x956\xd4\x13\xd7\xdel\xeaC\xa2p\xb6\xec\x04IK5(\n:\xfa\"N\xc68\x19\x83'cg\xdb\xe9\xce\xc2\xce\x9f\xfb\xaa\xb2\xc0 N\xaf\xf1\xc2\xe0\xeaR\x1b\x91\xda\xfd\xc8jW\x0e\xb8\xb5V\xa6~{\x8d\xce.A\xd1\xd4\xbccS\xd3\xe4\xec\xfa]\x84\xc4\xcdf\xf3\xc9p\xdbRY\xd0\xcd\xba~\xd1j!i0\xa3$\xa97u\xc6\xca[w\x94\x145\x87\x91%\x99G\xc1\xf6\x0b)\x94\x07j\x0b\x9b6\xf9[P\xe3`[\x93v\x9f\x99\xae\xb5`\xd1\x11`K\xd0\xb1\xe8\n\xb0\xb6\x8e\x9355\xc7a\xd9\xdb\xcc\x15pc\xe3b\xb6@\x88\xe9b\xe8\xbck:N\x90 \xa3\xe5\xe6\x98\x8a\xe3g\xca\x88jB\xea\xc0\x9ab\xad[\xed\x0cmLM\xa5\x8fZ\x0b\xa3y%\x1a\x18\x83_\xa3\x81\x11\x0d\x8c\xf6\x87;20H]\x95\x15bE\xea.\xac\x19\xc5\xcd\xca~\xd7\xbe5L\x06\x90\x87t\x06\x9f\xd8\x13\x8d\xd9\xd2\xd8g\xfb\x85\x94\xd2\x03\xb58,\x0e\xae \xbb@\xcb\x13\xa2Q0\xa4h\x14\x0c\xc8\xcf(\x00'\x11\x9a\x96}'7\xb7\xa3J\x14L\x8e\xea\xfc\xb1\x8c\xc0\xe5\x8f\xe4$Wudp8\x81\x94Y\x01y\x99^c^\x8b\x13%W\xc7\xfc\x06\xb6\x12J&>(Q\x9eV\xaa\x15\x91\xacqr\xe5_\x8e\xc4\xd0e\xaba4\xe0\xa7\xb8Ap`')\xc4\x1a=2\x82\xa2\xc1\x14\x0d\xa6\x07e0\x95\x19*\xd7\xd8\xc5H\xfa\xc0\x9fl,#\xf6&\xe0k\xae,\x97\xee\x0e\x18\xc1\xe8\x0b)\x80\x07j\x0b\xf5$\xd3\xa5\xfbXZ\xed\xc8mq\x91\x12K\x1d\x14\xa7Eb\xb8\xf6|\xc9n\xbe\xd59r\xac_\xb1o\xc10\x98\x0d\xaf\xe8,\xean\xbe\xdd\x0d\xb33\xd14\xd7B\x89\xdb\xc5\xd3\x92Y\x1fi\xc2j\xb1Wk\x01\xb2a\xa5?Y\xe9{\xf5\xdb\xec\xc6\xe6\xb4dW\x85\xca;P\xb3\x84y\x19\x01m\xe9\xc8\x14)\xfb\xf7F\xd6'/+v\xa1\xa7\x92\x1b3\xc4\x94\x86\x007\x05\xba\xc1=n1\xa1\x027`\x9e\\\xdc\x07\x84D\xaf\xd7\x9a\x9bnI\xc2n\x02\xb5\xd5\xfe\x10s\xb8\x1fb\x14\x7fss \xb6U\xc7\xf7'\xc3\x00\xaa\xd7\xd4b\xef\xc3\xf5:%\xda{\x06\xc6\xa4\xceGy\xd5\x84\xe9\x94aX\x15\x86\"\xa7\x9cz]\xd5T|i[!m\xa9\xe6\xee\x0b\xd8\xa2\xb2\xe4s\xab{\xdd?\xff]\xc3\x8c\xef \x95\xe5r\x8c\xd3\xaas\xef\x0b\xbb\x87@w\xb7y\xb5\xc6\x05f\x93-'\xb0\xa1KB\x94\x7fW\x81\xcb4\xe5^\xc0G\x98\x06\x05#\xbcw\xda\x13NS\xa6_woC\xe7\xf6[]\x7f\xbb\x82\xee\xdex\xa0y\xfc\x06\xb1\xf2\xf8\xc7\x90V%\x88{\x96K\xa8s>\x99\x17\xfc\xea\xd9\x9b\xb44\x14\xab\xb58#\xc5\xbeg5\xb8\xed\x9eH\xb9\x15G\xb3ZP4\xab\xa3Y\x1dlV\xb7-/+TTi\xbe\xba\xd8\xbb\x88\xc9d\xd2\x0c\xde\xeauB^\x92\xdf<$\n\x86\xb7}\x19.v\xb1=\x0f\xfb\xe7{o\xc6\xde\x80j\xb4\xb2\xec:\xbf\xd8\xe3\x16:.n\x0cy\xa0\xdd\x8e\xf7_\xf9\x891\xde\x7fu\x8b\xc2\xb5\xcf\xd1x\xff\xd5\x14R\x8c\xf7_\xc5\xfb\xaf~\x1b\xf7_\x0d=\x80 \xddw\xf2\xb2.O\xae\xbd\x13\x0f\xab\xbd\xe4\xbaO-?S\xee\xe1\x0b\xf9\xd0o(\xf1Py2\x15\xd9\x88l\xb6\xd0\x15\x8a\xf3\x05.6i^A+'\xf1\x0c\xf39)g\x11\xa7}\xc1*\x1e:\xcb0*\xe9q]j\x96K\xce}F\xe7sJ\xf2K\x9eoV\xc1\x96l\x05(\x8e}0U\xf9\x8c\xa4D\xe9\x01\x17R\xa5\x83\x8a\x85\xa2\xf0\x02JL\xbfS\xe1l\xd7\xe6\xa9\xd5\xdbU\x81\x16\xb7\x92l9\xcfHre\xf25\x18\"\xbc\xb6\xb3\x13\xc0\x06}\xba\xa0V\x8b!\x00\xecp\x04\xea\x1d15N\x0d\x00=,\xa9K\xdf\xa3O\xbc\xcfP\xa6?\xd3\xf1\xc8\x99Y\xa5\xf4\xc3HzK*\xfc\x0c6uYQ-\xb5*0\xe2\xb7\x86\xa3\x1c\xbe2t|\x85\x1eV\xb7W\xa8\x84-.x\xf7\xfd\xfbK\n\xc0?\xd5(\xa3\xca\xfa\xf1\x13\xe5\xeb\xbdU\xfc\x0d\xfd\x8cPs\xcdu\xdd\xcc.\xa2\x1b \x9b\xd9\xed@\xa8\x9a\x83\xaf\xd3\x05\xceUW\xe5\xc1t\xb3\x13\xad\xf0E^o.XS\xeef\xbc\xec\xbaN\x12\x1d5z,!\xcbF\x18|\xc6\xb2\xc6\x9akz\x8b4\xe44a\xad\xaa3\xc4\x8c\x16\xe9\\\xe7G\x1f\xe6z\xd7\xf7\x995\xe0\xf9\n\xcb\xcb\x98\xe1\x04~A\xd7\xb8\xa0MbM0}\xbfJ7\xf8W\xdd,\x93\x92_\x08\xce#\xe5>^\xa2\xb4\xb5fy\x9eJc\x12\x12Rp}\xbe\x10\x90\x8f\x9c\x9a\xd4\x87%\x1c\xd4\xf9\x9cp\x1b\x85\x07\x8a\xf4\x17R\x03]N\xcc\xab e\xbaI\xb5\xb7\xedsjR\x91\xd9\x18\xaeQ\xbe\xc8\xe8G~xK\xaau\x9a\xaf\x1e?\xaf\x1e\x7f\xa8\xd0\xd5\x1e6\xa0K\xa8\xaaPrU\xfex\xb4\xae\xaam\xf9\xec\xe4d\x95V\xebz\xcen\xdf\xc6\xcc=]oNn\xd2\xab\x94\xff\xcfYA\xc8\xf21Yr\xc6\x8f_?\xff\xaf\xff\xe7f\x8d\xaa\xc7i\xf9\xb8Z\xe3\xc7\xb9\xf82\xaa\x1e\x97\xec\x81mA\xe6\x19\xde\xaa/\xa9\xc5\xf3\xdd\xf9\xf9\x19|\xfb\xea\\\x1a\xfa\x1f\xdf\xbf\xe1kl\xc7\xf2\xdf\xf4\xa9u?\x0c\x97\xc5\xf9n\x8b\x7f\xfc\xe1G\xed\x0b q\xa7\xb9\x98ob\xf7d#\xb4-\xc8\xa2N0\xa0\x9c\xdbE\xfa\xe8\xc9\x97]\xe3\x93\x87+Yv\x99\xc4\xb6'T\xb7\x10rUo\x9b\x00\xf8\x1c\x95\x86\x93#\xd1E1%}|\xff\x86\xb5q\x8d\xae\xd9\x14\xdct\xd6\xd0\x82/\"$\xbbD\xff}M\xd2\x05\xa0\\?\xb1@4\x90\xa9\x8f\x02/I\x81\x8f%\x03\xca\x17U\xe9\xc3\xd6\x11\x9b!\xa1\x13\x8429\xe5\x12\x7f\xf9\xea\xc3\x8b\xf7\xa7g\xe7\xef\xde?2E\x11\xdb5g\xfe0\xff\xb4Q\x9a\x7f\xb6H\xf3[b\xf00SI>\xfb\x1a\xfe\xb0\x9d\xcf^\x13\xf2\xcbl6\xd3\xcfC\xda\xe8cjP\xd37P\xbe\xdb\xcego\xf1\x8d\xa5\xfd\xe9\x92\xbd\xf1o_C\x9ef\xc6\x89g\x14\xb2ay\x98\xdf\x1bt\xd0\xc0F\xb4\x94\xf7m\xf61\xdf\xa0\xa2\\\xa3\xec\x9cp\xe51U7\x94\xbf\x9d3\xd4'\x02 )\xafK\x8d=w\xa807O\x96u\x96\xcd\xd8\x0f\xd4\x94?\x04\xd4\xb1\x04\xa8\x95@\xe7\x96n\xdf\xe4sN\xfd\xb1f\xdb\xcd\xb3\x9d\xff\xd4{\xdf\xa3dj\xd5\x01\x93\xe5\xc138P\xad\xcd\xbe\x18f\xbc\x97\x07\xc7&~\xac\x7fo\xd1\x86\xf2\xfc\x0f\xde\x85\xff4\xbe@\xfb7x\xde\xb7\x93\xa7Kq\xe4\xec\xcf5>\x1b\xd2\x12np\x96=\xbe\xca\xc9\x0d\x0f}\xaeQ \xc8T\xc9\x99\xaf!\xd5/\xfd)\x7f\xcc\x8f0\x83u\xd0\xe6y\x8b\xe6\xd0 \xac9^\">\xa5\xd5\x1f\xbbd\x8bQ\xce\xf35\xc9\x16\xdd\x1a\xd4|)\xa7y\xb3>L\x81N\xb1d\xd4\xdfaM\x985\x9b\xfa\x11\xd5^R\x84{\xce1\xe93\xfe\xf1\x87\x1f\x1f\x19\x16\xd2\x14s\xae\xffA\xf3\xb4c\xa2\xa2,\x9f\xcc\x9e>yZ\xea\xe1\x94\xfb\xbbp\xef\x8c\xdc \xcex\x86I?<\xb5\xe7a\x88U\x17\x18\xc5\xaa\x0b\xedO\xae\xc2\xfc\xddU]P\xc3%:\xc1\xdd\xf0\x82\x0b\xdd\xb0\xf2\xfb\xb3\x17\xc3N\xc4\xd2\x0b\x11>au\xf3\xbaxJ!F\xbac\xa4[\xfbd\x8ct3\x8a\x91\xee}\x8a\x91\xee\x18\xe9\xd6Q\x8ct\xc7H7\xa3\x18\xe9\x8e\x91\xee\x18\xe9\x8e\x91nN1\xd2\x1d\x12,\x8e\x91\xee\x18\xe9n)F\xba\xf7)F\xbac\xa4;F\xbac\xa4;F\xbac\xa4;F\xba\x7f\x0f\x91nS\x0d\xe8XW\xd7\xafhi\xac\xab{\x8b\xc2\xb5W\x84\x8duu\xa7\x90b\xac\xab\x1b\xeb\xea\xfe6\xeb\xeajK\x12\x9c\xfc\xb2F\xe5\xfaW}e\x82\xbd\xb2\x04\x0d\x10\x8cE\xa2\x80\xe4\xed_(+9\xca\xbdJ\x05\xbf\x952\x05A \xb3\xca\x88\xc1\xb0\x86\x1f\\\xfc\xf7\x93\xa3/\xdc\xb0\x17!\xc8\x0b3\xc2\"\x08_\xc1>\xa1ahEWL\x80\xad\x08DVh\xe3\xd1n\xb8\x8aQ\xa8\x8a L\x05\xab\xb7\xa5\xe6W\xb9!*B\xf0\x14\xa6(\xa7\x13\x9abb,\x85\x13\x92bB\x1c\x85\x15E1\x11\x86b\x0c\x82\xc2\x1b?1\x01zbb\xec\x84\x05919n\xe2vP\x13\x93c&\xdc\x11\x13ax \x83\xd0mh\x89\xc9\xb0\x12nH \x85\xa3B\xaf_'FI\xd80\x12#\x11\x12\x06|\x84\xd5<\xb1b#\xdc\xec\x97iq\x116T\x84\xbdMa\x88\x08\xa9\xd9\x15\x0cmx\x88 \xd1\x10#\xb0\x10j\x04\x93 1-\x0e\xc2\x8c\x82\x98\x02\x03\xe1\x14\xc4\xb7\xe0\x1f\x9c\xd1\x0f\xfa`\x9c?\xf2A\xcfK\xe9\x12\x9f\x04\xf3\xe0#,W\xbc\x83]&\xceX\x87\x00\xa4\x83.\x02kC9L\x87q\x18\x8fp0\x8e\xf7Ht\x83\x13\xb6\xc1\x8elp\xc15\x18\x85\xed\x8bipE4h\xf0\x0c\x13\xa0\x19<\xb0\x0c\xfeH\x06g\x1c\x83!\xfc\xafm\x8e\xe1\x1dW\xfc\xc24\xe8\x05c\xe3\x15\xbf\x04\xe1\x16\xa4#Z\xc1O\x83Z\x98\x18\xb3\xa0G,\x84\xe2\x15\x98\x7fD\xd5p5ZaZ\xac\x82\xee\x18l\xc3)hQ\n\xd3b\x14\xc2\x11\n\x1a4B\x10\x16\xc1\x8a;\xf0C\x1d8c\x0e<\x11\x07>x\x03-\xda@\xdf\x1a\xd7\xa8\xaf\x1b\xd2\xc0\x13g\xe0\x812PvmZ\x84\x81\x0e_0\x02]\xa0\xf4\xceh\xb1\x05a\xc8\x02\x13\x8a`z\x0c\xc1\xf8\x99\xe4\x8c\x1fpE\x0f\xf4w@\x87<^\xaf$^\x91\xb6;\x08\x97H\x8a\xb7\xa5\x0b\x8a)\xbb1e\xb7\xa5\x98\xb2\x1bSv[\n 1i\x99\xc5\x94\xdd}\x9a(\xdc4.\xe0\x14\x10r\x9a$\xe84y\xd8\xc9\x1ax\xba\x85\xd0\xd3m\x05\x9fn!\xfc\xe4\x13\x80\n\x0dA\x19u\xb8-\x085a\x18\xca5\x10\xe5\x19\x8a\x9a<\x18e\x0fG\x8d\x0eH\xc5\x94]k\xcb\xc2\x02TJV1e7$Te\x0bVM\x13\xaer\x8c\xc1XCV\x1eA+k\xbe\xa1g\xe0*\xa6\xec\xc6\x94\xdd\x98\xb2\xdb\xa1\x80\xf0\x96{\x80+\xa6\xec\n\x8a)\xbb1e7\xa6\xec\xeeSx@L\xc9.\xa6\xec*_p\n\xa1\xc5\x94\xdd\xe9\x02j1ewt\xb8m\x9a9\xe7\x1crs\x0f\xba\xb9\xa5\xec\xaeQ\xd9UQ\xa6D]\xfah\xaf\xdet/\x85I\xea\xc4\x82\x97\x01\xc6\x8b\xce5\xac=6\xca\xc4\xae\xbfu\x1eIY\x85\xeb\x9e\xe6l\xf3\xba\xaa\xa2\xb6f/\xca\xbe\xc9\x06\\xt\xb2\xf7N\xaf\xb7\xb6Nv\xb9\xbc\xa4\xcb$\xa1G\xe2g\xf0\xb1\xe4\xef\x1e\x03\x82\xef^\xfdo\xc0yB\xe8R\xe1\x8d>\x864/+\x8c\x16c\x13\xfd\\\x92\x8cm oK\x8cW\x05\xca\xab&\xe1\x8d9i\x11\xcbxc?\xe0\xe2W\xf9/lH\x7f{._k\xea\x9e\xf3w\x16\x80\xb2\x8c\xff \x82\x18\x82\x97\xb8\xf4\\\xfcg\xa1L\x87k\x98~!\x05\xf2@\xf3\xe1\x1a\xa1\xed\x9fLz\xedi\x9e\xe39\xdb\xed\x7fJaQ\xe5\xd4\x11\xd0@8-i\xdb\x08\xd6\xc8\xa9\xe0\x19\x08cwq\xb95\xdf\x901|\xb4X\x14\xb8\x94>\"j\x7f\x89^24F\xde\xcaA\xc3\x8e\xbf\x97\x16\xb0\xac\xf3\x85\xd2\x11*dv\x07\x9d\xc2\xa6N\xcd1\xedQ3\xf3u.\xf3v\xdc\x99q\xca\xfd\xcd\x94\xc1a\xa9\xef\xa2a\x8e\x81s\x1f\xda/\x8b\xda\x00\xf4$O\x960Ge\x9a\x1c\xc3\x16\x17)Y\xd0\x7f\xc9X\xcd\x12\xeb\x06\xa5a\xa5\xb6F\x8d3\x14\xac\xb3\x14\x1c\"\xfc\x0e#\x0b\xce\x92\x81\xd08\xbf\x81\xdf\x9e\xab\xd7\xe0/\x986\xd6o\x8d\xf6O\x1d\xefw\x8f\xf8O\x14\xf3\x0f\x8b\xfa\x1b\xd8Q\x81:\xc7\xfdGG\xfe\xa7\x8e\xfd{F\xff'\x8e\xff\xfb!\x00<1\x00\xa69\xdc\xa0\x03\\Q\x00\x13\xe3\x00\x9c\x90\x00\x13b\x01\xc6\xa2\x01\x82\xf0\x00\x13!\x02B0\x01\x06fMY\x053*\xe0Vp\x01\xb7\x87\x0c\xb8\x15l\x80\x1f:`r|\x80+B`R\x8c\x80;J\xc0\x1b'\xe0\x8f\x14\xb0\xaa\xc2G\x0eX\x81 \xd0\x02\x16\xbc\x80\xa3A\xe5\x80\x19\xf0\xb1\xba\xbcq\x03\xa6MpN\xae\xb1\x159`\xba\x1f\xe9[j\xbc\xb3R7\x15)\xda\x8aN\xff\xfc\xd7\x07\xfa\xdft\xb9Q\xe5Q,\x00q;\x9f\x8f\x075g\x14\xcc\xc4f\xda\xfb\xc5\x01\x0b\xdd\x9c{\x9d\xc0\xd0*\x0e'\xedy<\xa2\xa1\x05E4tDC\xb7\x14\xd1\xd0\x11\x0d\xdd\xd2\xa4\xa7!\x9f\xb3\x90\xd7I(\xa2\xa1\xc7\x9e\x7f\x02N?\x93\x9c}\xfcO>\x11\x0d=\xe6\xc4\xe3s\xde\x99\xf8\xb4\xe3v\xd6\x99\xf0\xa4\xe3z\xce\xf1<\xe5\xf8\x9eq\"\x1a\xbaG\xde\xa7\x9a\x88\x86\x8ehh\x88h\xe8\x96\"\x1a:\x04P\x1c\xd1\xd0\x11\x0d\xddRDC\xefSDCG4tDCG4tDCG4tDC\xff\xde\xd1\xd0\x02\xaa\xd8\xe1a:G\x87\x02\x1b\x1b\x08c\x8f\xdb\x1e\xd6o2\x1c\xb4\xc0*z\xf5\xca\x0b\xd9\xd8\xebZ\x8f\x99\x0d\xcf8\xb2\x8f\xe1\x80\xe6\xd2\x0b\xc7\\6@f\x16H\x90H\xe5\xb2)A\xb5J\xafq\xde\x88N\xc8\xcc\x0cc\x96\x1e\x88\x87\x8fc~ QM#V\xd9\xc9\xa3\xe7\xe2\x14\x83\x11\x0b[\xcb\xd0\x8eY\xb6\xa0\x96o\xa1{^+\\\xcb+\x08\xbdl\xc5/\xbb\xf7eB\x0c\xb3\x15\xc5l\x9d\xc1\xe00\x8b\xc1!>\x0fn\xe3\x0d\x1er\x82\x80X\xbd\x91\x99\xdaak8\xf5O\x1d\xb3\x07{\xdc\x1e\x02b\xf7\xe6\x0e\xc8\x8bs\\\xe2\xf70U\x0c\x1f\x02\xe3\xf8F\x86\x9e\x08\xe7\xd1\xf1|\xf0\x8e\xe9\x1bY\xb5\x97\xeb\xb8\xc7\xf5a\xea\xd8>x\xc6\xf7\xc17\xc6o\x9e\xd9\x01x\xe7\x89c\xfd\xe0\x16\xef\x87)c\xfe0:\xee\x0fa\xb1\x7f\x98*\xfe\x0fA\x18\x00\xf3rp\xc5?\xdf\n\x16\x00n\x11\x0f\x00\xb7\x83 \x00O\\\x00\x84a\x03l*\xd8\x0d\x1f\x00\xd3b\x04\xc0\x03'\x00\xfeX\x01\x08\xc0\x0b8\xa8L7T\xf4\x04\xb8\x01\xb0a\x07\xc0\xdd)\n\xe5\x049\neLR\x90\x14\x93\x14\xa6qx\xf9:>\xa4sC\xcb\xd0\xd5\xe91\xa9\xc3#&)\xc4$\x85\x96&ud\xf881\xbc\x1c\x181Ia\xac\xb3\"\xc0Q1\x89\x93\xc2\xdfA\x11\x93\x14\xc68$|\x9c\x11\x01\x8e\x88\x98\xa4\x10\x93\x14b\x92BLR\xa8b\x92BK.\xf0\xf6\x98\xa4\xa0\xfb-&)\xc4$\x05\x9b\xf0c\x92\x82\xf6\x9d\x98\xa4\xd0\xa3\x98\xa4\x10\x93\x14b\x92BLR\xe8\x91+`<&)0\x8aI\n\xbf\x9f$\x85\xae$G\xa2\xe8[\xd6m,{v\x85\xbb\xdb\xa8)8,\xa2\xc1Hhg\x8e\x94\xe7 \x00\x1e\xa0\x14Q\xb8&t\xcc\xfcl\xab\x81C\x8a\xc5\x82\xa9F\xb1\x85\x83\xdf\xd1\x1d\x93\xe4\xec N\x96\xcb\x12W\xf4\x10\xd0o.t\xe2\x04%\xae\x86\x19\x07\xb7Q[])D\xde>\x9d\x1c\x07\x1e\x0f\xd1\x19&\xca\xbc\xde\xe0\"M\xe4\xdf\xd8B\x16\x00g\xeerZ\xe3\\\n\xbe\xce\x1b/\xdf\xc0 >e\xdc2\\\x96\xad\x08\xb9_\xac.\xa9\xa8\xaf\xb0\xa7<\xfb\xecoY\xb8\x83\xe0\xbaB\xbcY\xbaI]\xa5\xcb\x9e\x95ai]\xcc\x9d{\x80\xbb3X\x04\xb1\xebl\x10\x19\xe6\xfe\x9e\xee\x9fN\x97\x90\xe1e%1\n\x02\xb4 \xadN\xe6\xbc\xe6\x0b\x84\x7f\x84\xcay\xbe\x03\x8c\x925\xa0\xed\xf6\x1e\xa5\xd8E\x0e\xb4\xef\x9bd\xd9y\x83\x81~0\xeb\x1fU4@\xff\x91\xe6\x8b4A\x15n\xc2XB\x82\xecA1\x91\xba\xec\xd2<\xc9\xea\xc5\xc0\xa6D\xfc+M\x1cq0b,*\xddqo\xd3]\xa1\x83\xc4\x19(\x97\x8f\xa7\xe5`\xb4\x06]`fx\x81K\x81\x1f`\xcb\xab]\x8ft\xc9\xcd\xc4jJW9)\x06\xc1\x01\xb9\x1a\xfb\x9f\xe0\x92\x19;\xb0sB2\xdcA\x02+\x06\xb0\xc0\xd7\xb8(]\xf3\xbb\xc4\xd3\xc3\x81K;\xc8\x93\x02\xabWB\x8f\x0f\xfd\x06\xceY\xd8\x94\x14\x0b\\\x0cM~\xe5=\x1f\x7f\x9aT\x1a\xde\xe9_iY\xd6x\xd1^f\xc1_6\xa7~}\xb3\xfbV\xa4\x03ir\xc0x\xee\xd7|\xc7|\xd3<\x97Fp\xeb\x0d\xc3\xa1R \x7f=\x14\xcfj\x92\xc4\x9a\xaf\x7f!\x05\x14\xb3\xc5\x18\xd9\xe0%1[l\xd2\xee\xc5l1=\xb3\x98-f\x89\xec\xc7l1;\x90\n\xa6\x02SA \xa0\xca\xc80f\x8b\x8d\x07Y\x81'\xd0\n|\xc1V\xe6\x99\x1d\xb3\xc5\xc2\x00X\x10\x06\xc2\x82\xa9\x80X\x10\x04\xc62/\x87\x98-\xe6\x07\xce\x02O\x80\x16\x84\x81\xb4l*\xd8\x0d\xa8\x05\xd3\x82\xb5\xc0\x03\xb0\x05\xfe\xa0-\x08\x00n9\xa8\xcc\x98-\xc6\xc9\x1b\xd4e\xe4\xf6\x9b\xc8\x16c\x9b\x19\xd3gs\x8cs\xe0>\x01\xcd\x0d\x94\x92b\x8e\x18\xa3\x98#\xd6\xfe\xe4*\xcc\x98#6\xc8\x11k\\ZS$\x8b\xb5\xde\xb9n\xd6\xd8\xb0wj\xd7[\xf3PL.\x1b\xfc\x1a\x93\xcbls\xba%_?\x89\xf4\x85h\x19\xba\xfaH&\xf5\x8f\xc4\xe4\xb2\x98\\\xd6\xd2\xa4~\x0f\x1f\x9f\x87\x97\xbf#&\x97\x8d\xf5m\x04\xf85&\xf1i\xf8\xfb3br\xd9\x18\xff\x85\x8f\xef\"\xc0o\x11\x93\xcbbrYL.\x8b\xc9eUL.k\xc9%-)&\x97\xe9~\x8b\xc9e1\xb9\xcc&\xfc\x98\\\xa6}'&\x97\xf5(&\x97\xc5\xe4\xb2\x98\\\x16\x93\xcbz\xe4\x9a\xe8\x13\x93\xcb\x18\xc5\xe4\xb2\xdfOrY\xf7\x88\x1b\x93\xcbbrYL.\x8b\xc9eaR\x8c\xc9e1\xb9\xec\xb7\x99\\\xb6\"\xd7'\xd7ON\x12\x92\x97UZ\xd5U\x83\x0dS\xa5\x93\xbd\xe8<\xc5\xda%\xc1\x00\xc9\x1a\xa5\xf9a ]6rT{)a]\x0e_\xc8\xfe<\xd0\\\xb0}\x99tI\x1bx\xd0\xc1\xa1\x98\xe4\xbb\xfd\x0f\x07\x0e\xf5\xc6\xa1E\x0c5\xcfF$\xd0\xe0\xd7\x88\x04r\x8b$AD\x02E$\x90\xf6\xc9\x88\x04b\x14\x91@\xfb\x14\x91@\x11 \xa4\xa3\x88\x04\x8aH F\x11 \x14\x91@\x11 \x14\x91@\x9c\"\x12(\x04L\x13\x91@\x11 \xd4RD\x02\xedSD\x02E$PD\x02E$PD\x02E$PD\x02\xfd\x1e\x90@\x8e1N\x06\x18*O~\xe1\xff\x7fA\x1bl(\x9dy\xc6\x9ej\xa2\x9c(\xcb:\x88#\xa9 W\xe4\x1a6dQgX\x19\xed\xfc\x96\\s6\xe2\xc7\x07\x1b\xea\xbc&U\x9a\xaf.\xb8d\xf6\x0dN{\xc1\x8c\x97t\xdd$\xf4\x8c\xfc\x0c\xce\n\xbc\xa4\xfb/\xf7\xb4_r\xa6\x97\x90\xe6e\x85\xd1B\xa5\xce{\x9fo*\x8eT\xcc\x9aiD^\xe0\x8c\x9d\xc1+\"\x9e\xdf\xe7d\x0c\xb2\x99Cl\xb2 \xacv\xa2>\x06gt0\xf5\xc4$\xe7\xba\x9c*\xfc\x03\xa28\xe3\xb0\xe9\x0b\xbc%eZ\xdd\xdb\x00\xf4\xbf\xef0\x02\xe2\x85I\x87`\x93\xe6\x17\x82\xafi\x00\xd4\x81W0\x05_\xc1\xd60N\xb6 ,0I\xe5dc:\x92Yg %\xb4!u\xae\xe9%'\x076.\x0eAJ/H\xda)\xe3\x03\x15\xb9\xc2\xb9p\xe8\xf1\xeeHD\x10\xddPQ.\x1ag\xf2\x1d\xbf}w\xfe\xea\x19\xb3A\xf9\xb3\xc2\x98K\x99\xc7\xf14\xaf\xc46\xd7xy\xcd\x955\xc5\x1e(0\x0c\xda\xc7\xcat\x95\xa3\xaa.p\xd9@`\xd8u\xf8dE\xd8\x06\xa3\xb6\x13{B\xfa>\xcd\xd3M\xbd\x91\xb3\x97\xd9\xf6\x88\x0d;)QF\xe75fEX\x8ck\x95\xd2\x06}\xbah\xd6\xccd*C;\x86\xdf\xa3O\xac\xdd\xfcS\xac\xd9\xcf\xa9\xc8\xa8\x1dA\x17f\xbb \x81\x0ec\xd3#\xdd \xf24O\xab\x14e\xc2\x9f\x0eOuB\xdf\x90\xbcZ\xef\xf9\xe2+\x94e\xbb{SU\xdd\xaf;(*\xf6\xf8\xa4j\xea\xa7\x9a\x14\xb5F\x05L5\xdeb\x9enq\x91P[t\xc5\x1d\xe9\x0c\x89WV\xe8\n\xb3\x18\\\xb3\x17r\xb0\x90.**\x80\x85,^\xa7\x1b\xe8\x84\xe4e\xba\xc0tI\xb1p\x86R\xf0\xeb\x02\x97t\xc6\xddM\xd7\xe9\x14.\xe4\x06\xfa\x7fp\xc9:Zr\x10cg\xc1nQ\xa9-i'|\x8dr\x9a\x7f5\xfb\x8b\xd2\xf8\xc0\x15\xb9\xb8\xdb\xce\xf1\x939Y\xc2\xbf\xb0\x18A\xb6\x86\xcf\xd9\x00\xf3\xffd\xc6\x83\x01\x86\xd0\x95\x81~\\i\xdf\xf0b6\x94\xc4\x93\x93?\x0d%\x11\xbe\x9c\x07KQ\x96\x95g\x7fF\xd2X\xfet\xd25\x95\x15\\\x94P\xc8\xbfM\xb9n\xa3y\xd1!\x076nS:\x9a\x17\xd1\xbc\x18\xd28\xf3\x02\xee\xfd4\x06\x9f\xfb.\xaf~$\xee\xf2w\xdb\xb9\xe9wy\xf5C\x1e\xbb<\x88}0\xe5+\xb4Q2\xac\x1d\xb7*\x14\xaa\xcdyo\x1b\x17\xab\xccd\xebO\x02\x1ew\xe0\xda\x86uD\xc3\x90C\x1b\x05\ng\x8b\xd2\x05\xa0\xaa\x95WY\xcf7iYv\xd2\x10\xba$\x1f\xbbHP\x9e\xe0\xec\x8e\xba\xcf?&\xa4\xc0\xb70\xe6_\xceI\xd5K$\x99\xa3\xe4\xca\xe4\x00n\xdc5\xa4(y^Mg\x93IK\xf1\x9d\x0c+*\x88JRY[\x7f\xf9\xcaAR\x0b\\\x1a\xad\xa7I\x04%/g\xe9\xc8\xa8\xc0 N\xaf1\x1c)\x87\x0e\xbe4\x0b\xeaQ+\x1f\xf1\x97a\xaeSK\xa7K\x8ew;f3Q\xf7\xbd}\xce\xe6\x16\x94M(a\xce\x06y\x82\xa1\xc1\x9f\xb6x\x91Vxq1\xf9n\xa9\xad\x89l\xdcFE\xf0\xb1iW\xc7N\x98\xae\xafw\xab\xc2oe\x7f\xfa\xeb\xdf&\x1d\xfdx\xae\xe9\x90\x03\x1b\xb7\x19\x10\xcf5\x0eB\xfa\xff\xd9\xfb\xbb&\xb9q#\xf1\x1b\xbd\x9fO\x91\xb1{\"4\x8e\x90\xbagl\x8f\xbd;O\xec\x89\xd0H\xb2\xb7\xcf\xda#\x1dIc\xc7\xff\xaa\x82]\x85\xee\xe6\xaa\x8a,\x93\xa8~\xf9\xcf\xfa\xbb?A$@\x82,\xbc$Ph\xa9g'\xf3\xc2\x1eu\x91I \x82 \xf2\x97\x99\xe61\x99\x1ey\xda\xa7\x8fo yW\xe3\xc3\xa49Lsb\x15_\x97/\xa3AgG`l\xde\xa0n\x9a\x99\xeb+\xbb\xa9\x9bV \xa2\xbd\x13B\xea\xcf\x00_\x8b\xc6\x97\xc3\xf8\xb1\xd6\x89\xa1\x95\xa5\x9b7\xae\x92f\x0dt|L\x06M7,\x13K\xb7\x0c\xed\x83\x8f\x85\xfaF\x91\x8a\xc2i\xd5\xc5\x86\x91\xbd\x13\xaei\xc3\x9a\xb3>\xd3\xe2\xab\xe8\xdas\xa7\xc7\xfdl\x0d\xba\x13\x12Wc;\x0cM\xa8&'\x99G\xcd\xd1\x9b\xe1\x9bo\xcf\xe0\xaf\xa2j\xb0u\x95y\x8cTt\xadA\xb0\xdd\xaa,\x83\x0e\x1d\xf9\xf6\x9bo\xd4\x17\xe4\xf3\xa9\x15\xea\xcf\xf8Yygjey\x94\x99y\xe2\xa4\xd7T\xf8\xd6(\x17=\xfa\xc6Ia\xb0:\xf0U;\xe5\xdf\xbf{\xb5\xd0gR\xe6OW\xe7\x08\xd8\x99p\x04llHN\xc2\x11\xb0\x1c\x01\xeb\x16\x8e\x80U\xc2\x11\xb0\xc7\xc2\x11\xb0\x1c\x01\xeb\x13\x8e\x80\xe5\x08X%\x1c\x01\xcb\x11\xb0\x1c\x01\xcb\x11\xb0(\x1c\x01\x9b\x13D\xca\x11\xb0\x1c\x01; G\xc0\x1e\x0bG\xc0r\x04,G\xc0r\x04,G\xc0r\x04,G\xc0\xfe\x1a\"`C\xb9\xf0\xadpWKO\xe8[\xda:c\x04 \xf0\xb6Y16\xb2\xd5E\xcd\xaf\xda\xee\xb9I\xbc\x8e9\xd2g\xca\xfe\x05\x1d\xd4\xff\xf2|n\xde\x7fQ\x819\xc3\x0f\xc3\x9a\xfc_\xb4\x93\xf2_\xec\xa9\xee\xc4\x94\xfd\xd4\xa8`\xedW\xd7\xc7:C\x81\xcd!\xf3h\xe0\xf1\xafj#\x13\xda\x06\xae\xeb[\xd1@/+y\x18\xf7of\x01\xc1\xa3\xa6\xafL\x7f\x9eh@\xf0\xc2*\xb6\xc8/\xe0\xfc\xab=\xb8W\xd2\x9eW\xa0\x84\xfd\xc2\xca\xf5f\x16Y\x86n\xbf\xe1\xaf\xed\x9c\xc5p\xbf\x98\xf5l\x13A\xaa\xfc`\x94\x14O0\n\xd9\x1f\x1c{\x94,o1\xd1+\x8cR\xd07\x8cB\xf5\x10\xa38>\xd4\xe2\xef\x85ToqlZC_2\xc1g\x8cr\xb2\xe7\x18%\xe8?F!/\xf6\x08\xbed\x94\xb4Ua\xb2_96J/\xdb[A\xf0.\xa3\xd0\xdbZ\xd0\xd3\x8cB\xf77\xa3\x14\xf5:\xa3\xe4\xf8\x9ec\xa3\xad\x8f{\xa0Qr\xfc\xd0au\xc3Uc\xdeh\x942>i\x14\xa2s\x15%\xea\x9fFI\xf0R\xa3\x04\x9d'Jr<\xd6(q\xdd\x81\xfd\xdbb>l\x94\x1cc\xd3\xfd\xd9(\xf1\xfef\xf8\xb6Q\xb2<\xdc(\x01\x0f\x9c\x92\xb8\xb7\x1b\xa5\xa4\xcf\x1b\xa5\x84\xe7\x1b\x854\x8eN\xf6\x82\xa3\x10}\xe1(\x14\x8f\xf8x$\xc1/\x8eB\xbaY\xe9>r\x14\xba\xa7\x1c\xc5\xeb/G)\xe25GI\xf2\x9d\xa3\xe4x\xd0Q\x12\xfc\xe8(\xf1\x9b\x12}\x14):\xe8\xfeu\x94R^v\x14B\x03\x83\xcfb9\xbf;J\xd4\xfb\x8e\x92\xe3\x83\x0f\xa8\xd3\xde\xf9\xa0'\x1e%\xc7\x1f\x1fP'\xcd\xce\x9f\xd7+\x8f\x92\xe5\x9b\x0f\xe8\xc3=\x87\xd86L\xdcO\x8f\x12\xf0\xd6\xa3\xa4\xfb\xec\x03\xca\x82\xde|sH\x86O?\xa0\x0f\xd7\xe4\xc1\xdd\xd0r\xfe}\x94\xb8\x97\x1f%\xd5\xd7\x8f\x92\xe0\xf1GI\xf6\xfb\xcfN#z\xffQ\x82\xf3\x0dD\xbc\xb2(T\xdf,\x95\x07\xd0ZS\xa9\x00}Z\n\x1b\x80\x124A\x0e'\x10Pg\xf9\xe1\xe9\x8f\x14\x8d\x19\x88<.*V6@\x0e\xa0\x14\xe4\x07\xb4\xc2\x10E\x80\x12` \x02g\xe5R\x06(\xe5Fu\x02q\xa0\x15\x93\xb9\x03\x14\xdf\x1a\x85\xba\x87b\x1c\xa5XM\xf9FX\x1b(\xe3O\xb8\xcd*\xee\xc5\xfa0|\xf6\xd7\xe1 \xcb1H~_\xf5\xbd\xf0\xec\x84\xa1\x7f\xde\xb7`\x9e5\x1e\x0f\x9d\xa7\x19\x1dS\x0c\xcd\xdc\xfcK!\xec\xa2\x89\xc6\x97\xc8\x00\x14\xb0\xf0\xee\xfd\xdbwo?\xbc\xfc\xcb\xea\xc3\xc7\x97\x1f\x7f\xfa\xb0\xfa\xe9\xc7\x0f\xef\xde\xbc\xba\xf8\xd3\xc5\x9b\xd7 g\xbd~\xf3\xee\xed\x87\x8b\x8f\xabwo\xde_\xbcM9\xf1oo?^\xfc\xf8\xe7\xf4\xf3\xde\xbd\xfc\xf0!\xa9\x85\xef\xdf\xfc\xff\xde\xbc\xfa\x98t\xca\x9f^^\xfc\xc5{\x82\x89\xfdN6\xe0U\xddT\xdb\x15&\x98E\xc7\x05i\x90\x04F\xf8\xb1F\x13\xe5\xae~\xc1\xec\xb4&w[d7s\x84\x0e\xe0\xef7\"\xb0\x06QT\x0eN\xaa\xe3X\xbd\xad+\xb8~\xff\xee\xd5s\xbd\xebo\xf2\x8e4m\x00 h\xf7\x07L\xa3{hd\xbd\x0d\xfb\x0b\xcd\x95\x9e\xf5\x8b\x9c@\xc3kG4\x1b\xe1L\xeb\x014\x98\x81\x822<\x88~\xb5.\x90\x1d\x06\x96wwTl\xee\xdcT`\xffa\xcc\x07DJ\x8b\x08P]\xf6\xc3\xea\xefq\x1a\x1a\xd9X\x9f]\xfb\xb8/\xfag\xab?Am\xf1\xbe6\xed\xe3t\xd3\xe8=\xeeB\xd3\xa6\xdd\x8d\xa6]\x0d\x0bz\x95\xaa\xe4q\xda\x1a\xb9%\xc7\x0dpv\n\x93\xab\x08\xd9\x06\x95\x91\xbb\xaeR\xe3\xc9\x95\xacw%\x02 7\x95\x14/\x06]\x94\x99\xd2\xba\xb4\xe9\xa9\xfa\xef\xf6\xcaz\xad\x063\xf7\x8d \xd5V\xa2\xd9|\x91>,\xafo:\"\x9a\x0dvfX$\xea\x83\xbc\x9dPI>\xc3Y\xbb\x9e\x16'\x16\xcd\xdfE28\x90rx\x11U\xd1\x9f\xb4\xc4L^\xd1\xc6\x87wA\xcaf\xf9\"\xe7\xf9\xca\xcd\xf4\xb50\xe4ld\x8e\x0f\xa9JYj\xe5\x00\x96Q\x08R\xe7$\xece\xd5}\x99\xb9&0\"\x8e\xdaf\xfa\xa9\xfe\xa2\x92/\x0d\x7f\x94:\xedn\xf0eH\xb2\xc2\x97\x9a\xab\x16\x97?\x9a\xaa\xda+\xb3Z#\xbc7vBV\x9bJV'tBg\x11\x0b~\x12\xe2E\xf0qy\x98}\x11\xea_*)\xab\xf5\x8d\xae\xee@Y/\xfb\x9f\x19\xa9\x82\x82\xd6\xedn\xa7\x96\xa8\xda\xc8f\x9f\xd0n\x0b~\x86^\xb5\x87\xc6\xbf\x9bq#\xba\xd0>\x9d\x82D\xbe??\xdf\xb4\xeb\xe1K\xbd\xdf\xb5\xfdY#\xe4]\xdb}:\xbf\xfd\xe6\xec\xf7\x7f<\xc7\xf4\xf8\x8aL\xffW\xd3\xfa\x17\xbfs*DK\xe6\xdf\x89\xd90y\xe6N\xbe\xff,|\x17\xd5\xffM\xaf\xf1\xe1\x1f\x0b<\xday\xbe\xa1\xea\xbfh\xdbu#\xd4(\x83\xfe\xa6\xed\xe4\xf8'J\x1f\xf0G\xe1\xc8\xe8\x85\xf2y:aZa\xee\x81I\x9b\xbb\xe8\xc1\xd0\xb3\xcbZ\xfa\x1c\x10c\xee\xc6pgB\xc9\x01)\xbd\xf9\xee\x9bHo\xec\x1c\x92\xf8\xa6^&>\xac\xfb\xe9 \xa7\xae\xab\xaa\xde\x8a\xcd\xaa\x13U\xdf6\x8fzo\xa2\xbd\x995e\xb6\x7f\xa4\xfftw\xf30\xef\x1d\x9e\xe1\xd0Jy\xab\xbd\x1b\x93CZWZ\xb7\x9d\xd0\x8b\x8f\x9d\x18\xbe'\xd4\xd0\xa8\xe0\xba\xbd\x15]S5k\xf7\xdc\xe9\x7f\x0b\xccZ2\x85\xbf,+\x7f\x0c\x8b\x0f\xd1\x0fwr\xba\xd2t\xf8R\xed\xbe\xba\xd6\xcb\xaf\xe3;6\xbf\xe0x\xe0\xa2\xec\xcf\xf8g\xed\x1ds\x85\xc5\xa0\x04\x17\xc4\xe1\x85p#\xee\xe5\xea\x93\xf0\xcc[\xd1A\x15e\xe5f]\xf5\xe6_6\xad0\x8f\xfc\xf0\x9f\x1aD\xad\xfa\x1e\xdf\x89\xef\xaak\xf1\x1eo\xc1\x19\xfe\xeeQ\x86\xe1[\xeasS\xdc\xcb\xc1\x90\x02vm/A(\x8cS\x11\xa0gp!\xad\xfd\xfc\xbd|\xf0o\xc1\xca\xe1\x05\xa8\xf6r\x9b\x16v\xc3\xe0\xd3\xf4\xafk=\xa1\x96\x94'\x1a3\x10\xd0\x13[i\xe0\x8aV\xbd\xd8\x87\xff\x98\xbe\xb7Mr*\x8bm\xf5\xf5\xd76\xb4\xfaz_)e\xbe\x15\xc0]\xd5C/\xe4s\xa8eoh\xec\x1e\x0e\x0d\x0e\xe6\x0d\x82\xa5wu?\x1f\x1f\xe1\xa7\x1f\xd3h\x9aG\x8b\x94I\xd3\xa5\xe1|\x8ap{\xff\xee\xd5\xb2\x03\x9c[\x93sk\xa6\xbd39\xb7fZl\x17\xe7\xd6<=z+-n\x8bsk\xba\x15\xd2\"\xb3\x92c\xb28\xb7\xe6)QW\xe9\xf1V\x9c[\xf3\x94\xb8\xaa\x94\x88*r,\x15\xe7\xd6\xe4\xdc\x9a\xe4URr\x0c\x14\xe7\xd6$E9\xe5\xc47qnM\xdfa\xd1\xd8\xa5\x84\xa8%JV\xc6\x94H%\xce\xad\x99\x93\x9e2\x16y\xc4\xb95\xe9QE\xc4x\"J$\x11-\x86\x88skBfdPBL\x10\xe7\xd6,\x10\xe3\x13\x8d\xee\xc9\x89\xeb\xe1\xdc\x9a\xb6\xc4cv8\xb7&\xe7\xd6\\H\x89<\x87\xd4X\x9a\xe4(\x9a\xa4\xf8\x19\xce\xad)\xf3bc8\xb7\xa6\x11RnM\xed7[a0\x88\xa5+\xe4\xcf]\x9c5sg\xeb?-\x18\x8e\xa3r\xc5\xc1\xe8\x90`\xe4\xc3\xecj\xe6E\x1c\x0ej\x89\x05\x95\x1c_o\xfe\xbb\xc5^..\x04\x9bCgJ1j\xbcpn)WE\xd0H\xa8\xcaqkf?\xd3\x1a\xe3\xa8SJl\x0b\x86\xbf\x1c7\x02\xff\x1e\xb8z;+C\xaa\xe6\x8b\x9b\xc5\xb69:\xf9\xa3M0\x015\xc7\x8d0\xbf\x9c\xd6\x8cK!\x1a\xe8\xc4\x7f+\x07o\xb45\x18\xabs\xdc\x16\xfc\xfbi-Ah\xc6nB\xdd|\x8f`\x83\xf5\xb7)k\xecU\xb5\xed#ic\xc1\x19\x99E\x8f\xc6\x8a=,\x91\x83\xfdQW\xa4H+bt\x15!\xa2*)\x8a\xca\xcc\x87\xb7\xed\x1c3[\xd2\xa8\xa2\x9bM?\xf8\x17\xc3\xad\x99R\x9fNT\xa8\xc0}5\x8d\x1c\xab\xe7\xfb\x1a:\x1e\xb0\x98+\x11\x7f\xd6\xcd\x15=\\u\xed\xee\xb3\xb4xb\x9c\xce>\x89\x07_\xb3\x17o\x19\x8d Uz\xa5\xde \xa9*\xcf\xab\xbd\x0bE\xaeh\"cd\x8a\x94\xcf\xe5z\xe1\x9c\x18\xa3\xc9d\x84\x13z;|=a\xfegh\xaf\xaez!\xa1\xed`\xde\\\xb0|\xc6\xbd\x90\x85\xad\xe5\xd9\x81w\x18\x11\xdb\xe7\xb3\xe3b\xf7[wF\x99\xb29\xecDW\xaf\xcd\xdf\xd4\x9c\xa4S_\xa3\xfb\xe1F4\xc6\xf0\x87f\xf4\xf8,\xde\xde\x17J\xdbv\x18\xf3\xa3 \xd1Gr\xe8\x07S\x7f\x12\x89\xf6\x9c\xab\x7fd\xe3.\xa8+\x87y\xb7\xf5\xae\xa6ZW\x1d;\x8f38\x86\xb1\xd0\x1bh\x8f`\xfc\xe4\x1c~\x9di\xdb\xe3\xde\xbf\xfd\xa7\x8b+\xd8\x8a+i\xe05M\xb3\x99\x85\x8frd\xe2\x03\x82\x17\x19\xec|\xf9\x00\xa2Z\xdf@\xb5\xdf\x7fA+\xdaH\xd9t~\xc8\x96\xd6\x19\x83E\xd5\x08mU\xa6t\x18\xfe\xa3n6\xf5\xba\x92bD\x1aL\xe0\xe9p\xa0#-o\xdd\xac\xb7\x87\xcdb\x7f\xa1\xc2\xab\x8cL\xc9\xe2\x8e)B\xc9ru\x0es\xfa\x8c\xd0\x9c)\xfb\xe9b\xb9\xb0]tAm\xc9t\xa2\xd7,\x99z\xbc\xa6\xe7qx\xe4\xce\xf4\xd3T_7m\xb7p\x14\x9b\xa7q~ \xb4\xcc\xa97v\xc9C;n`'nE7;5t\xf3\xf4\xd1\xcb\x1bW[Hb'\xdcO\xc2L\xcfp\x0d\xd1(\x84\xa6\xed6\xa2[n\xff8Q\xf3\xdf\x15\xb5Fj\xe6\xfd\xf3\x9f\xc7/\xa2z\xf3O<3\x94\x87\x7fL\xc3\xbf\x9f\xb0gE\xd3M\x89d\xcd\xa1\x17\xaf\xcd\x8dv\xe6\xe1\xff\xcat\xef\x89\xa7\xe1\xf7a\x82Y(\xb3/\x99~\xd4\xc5M\xe0ngV:%\x8d~8\x89\xbe\x0c@\x92\x10\x0b\x8c\x0c\x9a\x0e%\x06L\x02\x01\x9a\x04\x8aIQ(\xcew#\xa9\x00eP\x99\xdb\x8b\x1ep\xc5\x94\x06)!\x0eSB\x06P\x19\xee@j\xaa|\x97? \x19\xac\x84L\xb82\xa809I\xfe\x89\x90%$\x83\x96AU\xb9\xe9\xf1\x8b\x02\x97\x90\x08]B*x\x19\x1e\xd9#\x94I\x85/\xa14\x80 4\x08\x13J\x82\x98p2\x8c y@&\x94\x822!\x0b\xcc\x0c?\x0e\xf44\xf8\x8f\x00h\xc2#B\x9a\xf08\xa0&$\xc2\x9a\x90\x07l\xc6\xa6`I\x826\xa1,\xb8 \xf0&\xa4\x03\x9c\x90\x01q\x12\xa6Lj\xc2\xfb\x93aN\x88\x01\x9d@_\x9e\x11\xc0NH\\\xc5%\x03\x9eAm))\xee\xa9\xad,\x08{B\x12\xf0 \xa5\xa1O\xc8\x04?\xc3\xe3\x8a\x98\xd6>\x13\x00\xf5\xea\x93\xc4\x94\xf6e@P\xa0\xf3\x8c@\x01B!\x0d\n\x85\x18\xa9\x94 \x87\x02Ao\x00\x93(\x04\x8aB\x96q\xe9\xc0(\x10z\x99\x01\x8eB.<\n\xd1L\xd9q\x88\x14\n\x83\xa4P\x08&\x05\xda\x889\x19*\x05:X\nD\xb8\x14\xc8\x80)\xd0\x06T:h\nI\xb0)\xc4\x92\xd3\x17\x81N!\x15<\x85L\xf8\x14\xd2\x00T \xdc\x84XB\xfa\xe8\xf9t \x15\nB\xa9@iZ\xe0)+\x07\xa8\x02\x05R\x85\x13@U\xafBIH?_\x14X\x85(\xb4\n\xb9\xe0\xaaW\x1b%\xed|\x1c`\x85x\xca\xf9t\x90\xd5\xab*\x9an>\x0br\xf5j\x8b\xa6\x9a/\x07\xbb\x02 x\x85\x0c\xe8\x15\xd2\xc0W\xc8\x81_!\x19\x80\x85Xf\xf5x\x12n*\x98H\x85a!\x07\x88\x85T(\x16\xc2\x1d\xcf\x81c\xbd\xcaH\xe9\xe4s \xd9\xe0\x03AI%_\x10\x96\x85\x180\x0b\x99I\xe4saZ(8v\x13\xa0ZH\x02k\xc1\xbb@\xa1\xedMd\xa5\x8d\x0f\xdc\xc3\xd1\x8b\xecO\x1a\x1fJ\x19?ktn\xc2\xf8\xe8NT(Y<\x1dN\x0c\x9dCJ\x14\x9f\x02,\x86\xce\n&\x89'B\x8c\xa1\x13\x02 \xe2\x93\xc0\xc6I\xa8\xc9\xe1ic\xb8\\b\xf8\xd1\x89\x1eL\x0b\x9f\x98\x14~J\xfe\xee\xd1\x17M o\xae\x92\x9a\x10>\xea\x9c\x8f\xbb\xe6 \xa9\xe0\xa3\x8f\x1b,\xefd\xb94\xf0\xc4$\xf0\xe9M\x0cn9\x97L\xff\x1e\xeba<\xf5{z\xe7J\xa5}OI\xfa\x9e\xde\xca\xe0-HM\xf7\x8e\xdd\n(\x8cv8\x9a\xea=\xdaCZ\xda\xe1\xf9+\xf0\xe4$\xef\xb4\x14\xef\x8f\xd1\xf6\x02\xc9\xdd \xa9\xdd\xe5\x13\xa0\x97\xa2 \xdd\xa3\xe6\x05R2w\x82\x1a\xea\x13\x94\x98\xc6\x9d\x90\xac\xbdl\xaavb\xa2\xf6\xbc4\xed3#\x95I\xd2NL\xd1\x1e\xbd\x83\x19\xcf\x99\xf7.\x97K\xcdN\xe8\xf9\xe7\x9f_\n&d\x0f\xa7c\x8f6>\x96 \xb5X\"\xf6\xa9\x0f\xbe \xad`\x12\xf6`\n\xf6\x82 \xd8\x03\xe9\xd7\xa3\x96\x9f\x0d\x88\xa4\xcc\xdf\xa7$^\x0f\xa6]\x7f\xfc6\x9f\x94p\x1d\x7f\xf2\xa5[\x7f\xfc\xc6\x9b\xeb\xc3 \x89\xd6#i\xd6\xa53\xa8\xc0\x96x/|I\xc9K%X'\xa4W/p/\"\xbd(\x96X=\xfe>*\x97T\xdd=\x8f\x87[0K\xedL\xca\xec\xbc\xc8\xe5\xbc\xd0\xf7\xfe\xdd+\xce\xe4\x0c\x9c\xc9\xb9\xd8r<5\x10\x01\xc7*gr&\x04\x1d\xc8\x12\x01\x079\xc1\x06\x9c\xc9\xb9``AJPAR@\x01gr>5x #p\xa0H\xd0@z\xc0\x00gr>%@ %8 #0\x8039s&\xe7\xc8*)\x19\xf4\xe7L\xce$\xa8?\x07\xe8\xe7L\xce\xbe\xc3\xa2\xe0~\x02\xb4O\xc9\x01\x9c\x02\xebs&\xe7\x9cd\xc81\x18\x9f39\xd3\xa1{\"pO\x81\xedi\xa0=gr\x86L\x98>\x01\xa4\xe7L\xce\x05@\xf9($\x9f\x0b\xc8{\xdf\x9b\x9c\xc9\xf9H8\x933gr^H\x89\xac\xbaTx=\x19\\O\x82\xd69\x93\xb3\xcc\x83\xd39\x93\xb3\x91\xa4L\xce\xb5=?\xcf\xbe\xa5\xadC\xd2\xf3Z\xd5\xaa\x82\xf1l\x1a\x9c\x92\xaa\xc9\xeep\x9cS\xedh\x87\xc2\x99~\xeb\xb4\\k\xe7\x1a\x17\xd2*\\I\xd7^\xeb#\xc6\xa4k\xd5v\xa4\x8c\xb4\xef\xb3\xaf\x9b\xeb\xedq\xb7g\x19\xd7\x8c\x9a\xafL\xdf\x9fh\xc6\xb5\xb9Al\x91_\xc0\x9dg\xdd\xab\x02\xdbY\x81\xbcm%\x87\xba\xadS'\xd2=\xa1\xf1\x94\xed,\xb0\xafEL\xda\xebU4>*\xee>\x85\x91\xc7\xd0 A \xc2\x9d\xd1\x01\x83\x12\x1b6(Q\xc4\x93d\x7f\x88\xf6\x19\x85\xa4\x8az3\x93a\xcfh\xe3\xc3\xb9n\xca\x82\xa0d\x144\x17\x06]\x18R\xb7\x19=-z\xc4\xa3\x9e\xf1\xa1\xc8\xdd(\xd6\xd3\xf6t'\x0cV;\xbf\xce\xf0\xe75\"\xed\x06\x8e\xf2\x94\x9dWG\xca\xfa\xd6\xf3\xb1\xe3\x9fO\\\x9cv\xbf\x00\x80T-v\x058\xe1\xcfK-Sr\xd6\xe3\xb1<\x9f\xff\xa6\x94\xb5\xb3P.;\x93-\xd8 \xceq{\x83\x0fr\xf8\x016\x19\xb9\xfd\x88\x07\x89K\xf5z/f]\xfd\x1f\xdfS8\xe6\x05\xd7\xcc\xd1\x98\"\\\x97!\x18\xfea\x97\xc0\xc7\xdf=\xcaT\xfc\x91R\x13\xca!~!\xad\x95\xb4J\xd7\xec\xa3E\xe4\x8d\xe8\x84\xf2\x9f6-\xec\xda\xce\xe42vN\xda\x8a\x8c>\xd1\x98\x81wg\x0c\xa5\x1d\xb3\x19\xfb\xd2[[\xfeD_\x7fmC\xdb\x89\xa1=\x87\xdfU*\x8b\xf0s\x18\x9e\x11\xed\xb9\xee\xe1\xd0\xe0`\xde\xa03\xef\xae\xee\xe7\xe3\x83\x00\xa4\x99e\\\n\x90\xb6X\xfa\x19a M\x0b\x03ieV\x80\x0c\xa41\x90\xe6\x16\x06\xd2\x940\x90v,\x0c\xa41\x90\xe6\x13\x06\xd2\x18HS\xc2@\x1a\x03i\x0c\xa41\x90\x86\xc2@Z\x0e\xd3\xc5@\x1a\x03i\x930\x90v,\x0c\xa41\x90\xc6@\x1a\x03i\x0c\xa41\x90\xc6@\x1a\x03i\xbfL \x8d\xabV\xe7\x96\x04\xe6\xaa\xd5\x8fh\xdc\xf8\x18\xe5\xaa\xd5%\xac\xc8U\xab\xb9j\xf5\xaf\xb1j\xf5HR\x9f\xff\x1d\x7f\x8e\x9b\xb90\xfa\x1c\x04\x9f\xdd\xb3\x00\x9d\xc7\xcc\xc01\x17\xda\x98\xc6\xd4\xc24f\x99\xf9\x89iL\xa61\xdd\xc24\xa6\x12\xa61\x8f\x85iL\xa61}\xc24&\xd3\x98J\x98\xc6d\x1a\x93iL\xa61Q\x98\xc6\xcc\x01\x1a\x99\xc6d\x1as\x12\xa61\x8f\x85iL\xa61\x99\xc6d\x1a\x93iL\xa61\x99\xc6d\x1a\xf3\x97Nc\x8e\xbeP_\xfbS9\x00\xb7\xc7\xff\xc4\x8e\x9c\x08\xe1\xa8\xb2\xe9~\xea\xe6\xe3\xf0\xf3{\xc4\xc7\x0cn\xa3\xde\x11\xca{\xa0r\x19\x1au\xaa\xbe\xa8\x93\xa3\xb1\x94|e:\xf8DY\x1a\xcb\x1c\xb6\xcc\xda\x82}w\xe7\xd1R\xbf\x1d\xbf8\xbd-\x81\xa8\x0b2R\x9b=\xba\xf96kz\x99\x9a\xec\x84z\xeci\xcd\xf2n\xf7\x95\xaa\xc1\x1e\xeaM\xb8\xf6zZGJ\xd4\\\xa7\xd6[Ok\x99\xd7\xc4y5\xd6\xa1\xf5m\xd4\xfb:G@3\xacy\"\x05\xcf\xf8\xe8\xf0\xdb1\x9c\xa1\x85\xe1\x0c\x863&a8\x83\xe1\x8cI\x18\xce\x90\x0cg\xb8\x85\xe1\x0c#\x0cg0\x9c\xc1p\x06q\x95\xc4p\xc6(\x0cg\xd8\xc2p\x06\xc3\x19\x0ea8\x83\xe1\x8c\x98\xf1\x19\xce\xf0\x9e\xc3p\xc6L\x18\xce`8\x83\xe1\x0c\x863fBu\x943\x9c\xa1\x84\xe1\x0c\x863\x9e.\x9cq\"\xec\xa0\\\x97~\xd8\xe1o\xca\xb3i0\x07\xed\xe7\xbc\x82\n\xae\xeb[\xd1\x1cut\xc68\xa8s\xbf2]}\xa2t\x83\xd5\x7f[\xe4\x17p\xddE\x13\x8c$m]}\xf6:\x8d\x83%\x8b\xd5hT\xca\x8c\xa7\x1b\xffa\x12#\x90\x1a\x83\x0e\x92H\xc6\x8f\xa7Qa\x11\x9b\x1a:\x82\xb6\xa57 j\x9c\xddK\xdc{\x1c\x0ciL\xf3\x1cj\x89\xbe\x92\xa6\xf5w\x01\xc5\xb8Q7\x07\xf4]\x88\x99\xa6\xc0\xe7\x07\xed\xce\xa3\x88\xe6\x10)49Lo\x7f{\xfb\xf1\xcd\xea\xed\xbb\x8f\x17o\x7f\\\xfd\xf4\xe3\x87wo^]\xfc\xe9\xe2\xcd\xeb\xa4\xf3\xfe\xcf\x9b\x0fI\xc7\xbf\xfc\xe1\xc3\xc7\x97\x17?&\x9d\xf3\xe3\xdb\xc4\xc3W\x7f\xbf\xf8\xf8\x9f\xab\xbf\xbd\xf9\x18>\xd1\x10\x1b\x19\x86\xb8\x13\xf5\xf5M\x89\x02\x9c\x90<\"\xf1\xd2\xf6\xf3l\xfeT\xf5}\xbb\xae\xd5\x9e\xa9\xda:6\xbf\x93\x86\xb8\x7f\xe4\xd1\x9b\xf7w\xd5\x0e\xb1\x19\xdeVo\xe7\x0fN5L\x81\xca\xe7\xabZ<,\x91\"M\xeb\xf7\xdbZ\xfaZ5k\x93~v\x8cI\xeet+\x08\x0f\xd6N\xc8jS\xc9\xea\x84\xa96Vlp\xba\x08&\xeey\xb0\xbc\x03\xe3/\x95\x94\xd5\xfa\x06\x1d\x97\xe6\xae\x05\xf6\xd0\xf0\xcbr\xdd\xeev\xa2\xd9\xa0OkW\x8d\xec\x84}=t\x18^\xb5\x87\xc6\xef,\xbc\x11\x9d\xd7\xbf\x03\xa0\xdcR\xdf\x9f\x9fo\xda\xf5\xb0\xbe\x1c\xd6Ag\x8d\x90wm\xf7\xe9\xfc\xf6\x9b\xb3\xdf\xff\xf1|\xd7n\x0e[\xa1VG\xff:4\xfc\xc5w\x0ee\x94A4\x0c\x1bk\xc0\xe0\xedk\x86\x05R{+\xba\xa6j\xd6\xf6\xab\xca\xa9\xe2%*Y\xb7M_\xf7\xa6\x1c\xf6\x88\x90^\xbc~>\xbd\x04\x9f\x9b\x9d\x11\xff@\xf4=\x19G\xaf\xd7y\xddS\\\xe2\xe1\xf8\xe3\x92\xa7n\xd3\xce\xba\xca%OI\xc6\xe4\x92\xa7\xea\x83L}\x0b\xa5\x10\x9c\xf8\xe1\xf5\xfe\xdd\xab\x856&8\x99\xe0\x8c\xbe\xdf)/.`\x82\x93 N\xef\x91Lp*a\x82\xf3X\x98\xe0d\x82\xd3'Lp2\xc1\xa9\x84 N&8\x99\xe0d\x82\x13\x85 \xce\x1c\x08\x92 N&8'a\x82\xf3X\x98\xe0d\x82\x93 N&8\x99\xe0d\x82\x93 N&8\x7f\x99\x04'\x17;\xcd\xad$\xc9\xc5N\x1f\xd1\xb8\xf11\xca\xc5NKX\x91\x8b\x9dr\xb1\xd3_e\xb1S\x85\x9a\x9d\xff\xac\xc0\xb6@\x95S\x05\xc7\xd9\x11\x08\x9bh9S\x84\xe5\xbcEL\xff6\xb1sO:.\xc1\xc7\xa3d\xc1q\xd1\xe8\x82\xa8S\x85\x80t\x95[l\x19 D\x15D\x1b\\0\xa2 \x18O #\xd1\x04\x9f\xa3\xf8h<\x8a\x80\xe2T2R8\x82 ?~ z\x8fQ\xe2\xb1\x03y\x91\x03iq\x03\xe9Q\x03I1\x03Y\x11\x03\xd9\xf1\x02\xf1h\x01\xe2\xbdI\x19w\x85\xe3\x04\xc2Q\x02\xd4\x86\x15\x8c\x10\x08\xc4\x07\x14\x89\x0e\x08\xc7\x06DoX\x8c\xc8-\x1d\x15 \x0b\xc6\x04\xa8\x88\x802\xe4\x7f|`\x9cL\xfd\x97d\xfe]\xa3\x9c\x88$\xa7\x12\xc9\x0c$3\x90\xec\xfc\x9d\x81dK\x18Hf y\x12\x06\x92%\x03\xc9na \xd9\x08\x03\xc9\x0c$3\x90L\\%1\x90<\n\x03\xc9\xb60\x90\xcc@\xb2C\x18Hf 9f|\x06\x92\xbd\xe70\x90<\x13\x06\x92\x19Hf \x99\x81\xe4\x99P\xe1P\x06\x92\x950\x90\xcc@\xf2\xe9\x8c\xcc\xe3\x03\xc9\xca\x01\xe9k;B43Fd\x86\xd5\x18\xf7\xe1\xc8\x7f\x15l{\x0c=\xdb\xd5\x8d<\xbf\xfd\xf6R\xc8\xea\xdb\xf3\xaai\x0e\xd5v\xa5\x16$\xfd\x84\xf1\xb8`\xb3\x97\xea\xd0w\xe3\x91f\x87\x0e\x06\x85\xc34\x8a\xba`\xd2\x85\xaf:'g\xb6T\xf6\x95\xe9\xe7\x13e\xce\xd9\xfd\x90\x8e\x8a\x02\x13\xe4\xa8I\xff\xf8dg\xc6\x85Ul)4#N\xe6\xf2Lz\x1e{:T\xb9q\x9f\xd1\xd6\xf9s\xdat\xe3\xdf\xbf{\xb5\\\xb3\xf1\xdc\xc6s\xdb\x13\x9f\xdb\xd4Z=\xb0\xf8{\xa7~\x9f\xcdj\x18\xa1\xa2\x82\xb2\xae\xc6GqZ\xf3;g\xb5\xbf\xd6\x8dDU\xfa\xd7';\xad\xd9\x06\xb1e\xfe\x89\x82V\x99\xe7\xf35\x06\x18YMEU\x1eo\x97\x04\x87\\x\xc0\x0d\xd6^mD\xd3z\xc8\xee\xe8\x80\xd14\xab\xd4\xbe\xc0u[\xabo\xdbA\xaf\xe3\xf8q~]u\x95\x14+t\xee\x9fv\xe5]u_\xef\x0e;\xb3^E\x95\xc3\xa7\xf64\x97\x0f\xd7\n6fW\xdd\x97iD\xca5kO \x01\xf9\x9auC\xbb\xe6u[mW\x97m\xb3\x11\xb9A)\xfa\x8a\x83\xa2\xe1&\xefE\xb7\x1e\xde\x9a\xa8\x13*\xd9\xee\\_\x07\x97\xdbv\xfd\xa9_\xedE\xb7z\x10Un| ! F7o|\xcf\xe1\x85\x87f\xc2p\xe1\xd99\x84\x978N+\xa47\xb8~g\xeb9\x8d\xb9]~_\xbb~\x7fj\xefk|\xd9\x90\xdf\xd8\xd6W\xbc\x1e\xe8&P\xb0\x9a\xc0\x9e\xf1m\x85\x94=\xbe\xaa\x9e\xeb\nF\xb5\xec\xa1?\\\xf6\xfbJ\xc1v\xd3F\xdd'\xf1\xe0|\xbb\xff\x82\xde\xec\x94\x17\xbb\xb3\x08\xc0h\xb1\xa2/tc\xe6\xac\xd967\xad\x7f`\x0c{\xcf\xcc\x9a\x88y\x12\x06\x9e\x84\xdd\xa7?\xb5I8\xe4\xb30\x0f\xa9o\x04\x8es\xa5=o\xe0\x94:,\xae\xa7z\x15\xd3\xac{5\xa7\x97s\xe2\xce\x17=4\x8d\x0d$I\xf9$\x1efM\x1c\xfem\\)c\xcb\xb4\xc3\xdd\xf4\xa9h+\x13\xdft\xa6\x0d\x81\x97\x9d5\x13}0G\x8f\xef\xbba\xc2\xa9\xb6\xc3;\xe5\xba\xee\xa5\xe8\xc4f\xecV\xaf\xbc\x95\xc3\x8f\x9f\xc4\x83>r\xd4\xb4\xec\xfb\xcc\x88\xcf\x9cI\x04\xfe\xf0L\x1f;{/\x8eM\xd2?>\xd9W\xe3\xc2\xd2\xb6|\x89 \"\xfcV$<\xe2\xc3M\x0d\x9f|r\x9d;\xef\xd5\xe3N\x9di\xacZ\xf1\x92\xd3\x138N'\x08\xcf\xe8q\xaa\x1fX7U\xab|\xe5\xe2\xbe\xee\xa5\x8a\x94\xf1\x1cc?\xd5\xeec\xdcc{v(a!0\x0e\xfbq-`\xcf:\xb3E\x01>zc\xa2\xa5\xe30\x9fj{D\xf5\x13\x1f\xe7@g#\xdd\xe4\x15\xc7\xe2W^q<\xc2\x8a#\xf62\xec\xb7U\x7fS7\xd7\xe4\x0f\xbf\xc5\xd7\xde\xf1\xa6\xa4\xd1\xa8\xd7&\xfa\xfc\xf9\x1bK\x1f\xf2\x0b\xfa\xa2\xf3\x0e\xb1\xbc\x0f\xb2\xfa\xba\x11\x9b\x95\xde\x0c\xbb\xab\x9bM{\xe7\x1fS\xa4\xad0\xdfN\xd8\xaenV\xfar{\xd1\x95\xb9\x96'\x92f\xd3\xde5\xb2\xde\x89\xd5\x7fW\xf5v\xb5\xd1\xd8O\xd6\xb5\xd4 Z]\xa9\xc0\xd1\xb6Ym\xda\xc3\xe5V\xa8~d\xa9\x8b6\xfd\xe8z\xd8\x93\xc7\xb8X\xfc\xcd=zC4\x95v\xf4\x94\x8dqd\x97\xb8\xe27\x8f\x9c\xeb\xf6;\xdc\x03\xbed\x13\x8f\xb3\xd19\xfe\x91_xG\xf6\xe1\x17\xde\x97\x7f\xe1\x0d\x93J\xdd\\\xaf\xea\xe6\xaa\x0d\xbc\xf7>\xe0a\x17\xc3Q\xe3\xdbO\x9f\xab\xd2\xa2\xa9=\xce\xed\x16#\x03+\xd9v\xe6\xc56\x7f\xf5Yj\xf4\xefO\xf6\xc57\xf4\xeai\x0c4\x0d6f\x8f\x94^V\x9d\\\xdd\x04\x13+E\x95\xc4\xdf\xb5\x10\x98\\'\xf9O\x9dWIj.x\x1c0\xaa\x08\xa6\xc2\xaf1=\xc3f\xf8\xb3\x80\xb7\xef\x87\x1f\xbc\xea\x0e\xcd\x8b\xe1}\xeb \xc6\xae\x9b\x8d\xb8_aF\xc7G\xeey\xfc\xc5\x86r14I\xf7\xbd\xee\xa1n\xd6\x9d\x8a\n\x1e&\xfd[\xb5\x89U\xef\xc6\x10[e\x97:\x10'\x8d\xee\xc6\xba\x81\n]|\xca\x95\xe0=|\xb5\xab\x1eV\x18>\x8f\x8b\"\x95\xfcG\xbcX\xb7\xbb]-1A\x83\xd4\xb9G\x02\xe1\xe0\xeb\xb6\xf9o\x1d6:&\xc5\xf2_\xd4\xb5\xda\x1b}\x00Rt\xbb\xf1\xabU\xdd-W\xceI[v\xb5*f\x8b\xbd\xbd\xac\xe5\xae\xda\xbb\xa3%pX\xac\x0e\x8d\xac\xf3\xa7\xe8\xe9\xde\x0f\x83\xf1\xc5poN\xbc\xff\x1f\xeb\x9d\xe8e\xb5\xdb\x83j\x99\x1e \xd2d\xba\xd3w\\\xb7\x1e6*q\xacW\xd9\xb6\xbe\x15\x8d\xe8\xfbq\xf1\xe96\x85lw\x97\xbdl\x1b\x9f\xb7\xdb\x18b\x99tt.\xd4\x1e\xfe\xfdF\xa8\xf8z\x1cN\xb3\xa1|S\xf5p)Dc\xb5\x08\xbe\xfeTo}\xcf\xef \xed\x01\x13\x9d\x19%\x81\x91&\xe4oL\xbeV\x85\xce4k\xb1\xb0,\x8e\xf4\x1e\xbc\x9d\x04\x10\xff8\xd4\xb7\xedZ\x07\x05u\xb8\xd1\xd1<`\xd2\x00\xff\xc5\xd7msU_\x1f:\xb1\x19\x86\xe8\xa5\xb8\xa9nk_\xfa\x0c\x1c\xc3\xe6\x91P9i}\xc9&\x93\xc6h\x89\xf9\xe9%\xe8\xf6 y\xa4\x1e\xb6\xaf\x0f\x0d>\xc5\xbf\xd1 \x81\xb1\xf2\x01\xebJ{\x95a\n\x8eC\xd3\x88\xe1\x85]u\x81t5\x9d\xa86\xbd\xd9\x19'>\xe4\x94>\xfd\xcd\xdc{k\xeda\xa7P3??[\xacg|\xd9pvmS\xcb\xb6\xd3)\xcbk\xcf\x88\x18\x1f\xcc\xe1\x93\xea\xb6\x96\x0f\x0e\x8f&\xbe*\xd5\xc5\xf4w\x06iAe$T\x1c\xfd\x84\x8fs.f\xce\xc5\xcc\x17\xf2Y\x8a\x99\x03\xe9y\xb6+\x0bL\xf9\x19\xc7P\xb5\xba\x81\xeb\xf7\xef^M\x1f\xec\xfa#\xb3\x87\xbb\xe1\x9e\xb9n\x8f{\xe9\xb2n;\xd4\xa1\xb2~u\xd8\xf91\xaalx\x8d\xa9\xa9\xcf\xb6\x8c\xd3\x1c\xe6\x8c\x0f\xednjw0\x06\xba\x13{\xa1\xf2n\xfcPu\xe3M\x8a\x84Z\xce\xcd\xa2\xc6\xb7/\xd8r\x1e\xc5\x1d\xdc\x0b\xb1?\xd6H;\".%\xe7\xb3/G/\xbf=\xfe\x91\xb7I\x8e\xec\xc3\xdb$\xc5\xb7I\x82\xd1\x93\\\x0c%\n\x19\x80\xefM\xcf\xc5P\xca\x1a7^\xc6\x83\x8b\xa1\x94\xb0\"\x17C\xe1b(\xff;\x8b\xa1\x84w\xfc\xcf\x7f^\xb7M\xbf\xd2;\xcc\x81j(\xf6\xd7\xb3\xed\xfd^~\xb2\"\xdd\xbcV\x19AQ\xa9\xd6\xe4\xf3\x03|e:\xfdD\xdd\x00\xb7\xd5ve\x9b\xac\xe8\xc7vpg?\xb2\xb4\x89\xef\xeaG\xd7F\xf1}\xa3\xd8\xe7e\xd1\xdd\xfc\xd0^~|'\xbf@o\xe3\xdf\x9fPv\x07?i\xff>m\xf7\xde\xde\xa5\xf7(\x8c\xed\xdd\x17\xdd\xb9'n\xe9\xc5w\xed\xc9\xf79\xbccO\xbb\xd7\x05w\xebI{\xf5\xb1\x9d\xfa\xf8>=\xad_y{\xf4\xd0\x1e\\_\x80\x80)E\xa3;\xf4I\xfb\xf3\xb3}x\xdfE\x89\xbb\xf3\xf4\xbd\xf9\x84\x9dy\xf28\x0ee\xf3\xd5\x10\nu\xfb\xad\xc8\xee\x1bo\xbe\xf1\xe6\x9b\xf3\xf7\xa7\xb4\xf9f\x7f\x8d\xf8F\xa1}\x8cy\"\xcc?\xc7P\xa0\xc53j\xe9z\xe4\x0c`\xbdTY\xfa\xc7\xcf\xad\x8d\xd8\x8ak\xf5\x12\xeb\xcf\x7f\xd6\xffh;\xd5\xfe\xc0\xe7\x965%\xbc6\xe7\xbc\x9e4M\xe1\xa6j{e\xfa\xbb\x8a4\xc5o\xb0\xf1Z\xa3&m$g\xc8\x8du\xc1\xbf\x0f_\xf2\xebJ\xbd\xf0\xaf\xbav\x07U\x83 \xf3M\x04\xab\xaa+\x80f\xc6\x04\xf8\xc3\x1d9\xa85\xefM}}\x03\xd5nx_\x8d\xfa\xda\xabi\xda\xb9\xae\xfa\xe1+\x1b\x89\xceq\xa7\x02\xf3b\xe2Z\xba\xed:\xb1\x96\xdb\x07{\xdf`\xf6\xed\xe8\xb2\x87>\xee\xc9~DN\xb7h\xe5h\xa3\x91/1AL-\x0b?\xe4\xde\x0b\x00\xe1\"0]H\x0f\xfd\x00\xce\x06\xb4\x89\x05Hk\x0e\xfb\xd8\xc5\xf5\xcd\xd4!\x9a\xe1\xad\xb1YT\xe5\xa4\xe9r\xe3\x1d\x80\xf3&\xaef\xbePw\x8f\xae\x7fBwG]\xfe\xee\xf67U\x17\xba\xfby}D\xadz\x8d\xa8Z?\x0dW\xf3c'\xd6\xa2\xbe\x15\x1b_\xdb\xa8F\x9bf\x93%z>|\xa4\xebo\xe5\xf6\x93hz\xb8\x19f\xab\xcb\x87\x10DT\xad\xd5\x9a]\xaf\xca\xfd\xd4K{\xd7`\xa6\xea\xb6\x11\xd3\xb0\xd2\x95SzW\xf5I\xff\x88k1IP{\x87_\nm\x13\x80\xf2\"\xb7\xf4\xb2\xdaVM,6\xb0\xc0\x94\xe0M\xb2\x83B\x1a3\xf8\xb69Q\x0du\x94\xbcjk\xbb\n\xa7\x1a\x10\xbaP\x08v\xc7\xbc\xd2T\xac\\\xa3\x1b\x17\xaaI\xf3\xe3\xdb\x8fo\xbeW\xb9\xad\xf1\xd8\xe9eX5p\xd1\x98\x8d\xb5\xb1zL\x1f\x1c\x04:\xb7\xae^\xd7\xfb\x1f\xd7\xfa\xba\xa9\xe4\x01\x9f\x1f\\\xfb\x0c\x83\xf0\xba\xbdnU\xe2\xda\\\xd8jz\x88\xecO\x16\xf5%_m\x95\xe3\xad\xb5\x1f4q\xbf\x16{\xf4\xec9\xd5\xd5\xd2\xaa\xeb\xe2\xee\x8d\x1e\xa9\xcbD\xc2zr\x187\xe9\x14\xa5\xd3\x1fji\x1c%Ne\xeb\xad\xf2\x0e\x8e\xaf\xe8\x9c\xaf\\\xd7\xab~\x1a1:\xc8\xd4Z\xb2=\x9bh/\xbf\xb6\xe3\xe74D\x7f\xcd\x1ai-\xb3\xe6\xa9\xb4,?\xd1\xec\xa3\xd2\xf1\x8d\x9c\xbf\xc1\xcd4\x19\xd3d\x0b\xf9,4Yx\\\xa8o6\xd7wD4\xb1\x8aK\xd1\xb9\xf3\x0b\x8d\xf3\xeej\xe1\xfd\x952K\x0f\xaeQ\xcb5j\xdd\xc25j\x95p\x8d\xdac\xe1\x1a\xb5\\\xa3\xd6'\\\xa3\x96k\xd4*\xe1\x1a\xb5\xfe1\xcd5jQ\xb8F-\xd7\xa8\x8dV'\xe5\x1a\xb5\x01\xcb\xf9~\xe1\x1a\xb5K\xe1\x1a\xb5\\\xa3v\x12\xaeQk \xd7\xa8\xe5\x1a\xb5\\\xa3\xd6'z/\x92k\xd4.N\xe0\x1a\xb5\\\xa3\xf6\x89\xd5\xa8\x9d\xe3X\x96\xaa\xd9\xe7\xf4\xfc\xa8\x99\x03{\xfc\xe9\x98\xfdt$~?\x01\xf8\xe4\xc8\xf0\xdc\xb0[\x8e\x0c\x7fD\xe3\xc6c\x9a92\xbc\x84\x1592\x9c#\xc3\xff\x97F\x86\xbb#\x15\xda\xee8P\xe1\xbc\x13\x16\xb2\x86J]a\x0b\xef\xed\xc3\xc6 \x85\xd9\xc9S\x90\xf8\xff\x8ep\x84Y\x97\xf5\x01O6\x0e\xc1\xbe\x13O-\x12\xc1n\xdb\xa3\x83\xc7O4\x16\xe1R\xaco~\xf7\xdb\x17\xc7\x8c~P\xddl9L I\xe8\xbb\xf5\x17\xea\xb9\xb3\x0d\xa6\xf7S\x18\xb0=\x16\x82\xfa4\x0c\x85O\xe4\xf4-@1\xc2\xa6\x97_\xdc\x08V\x1bN0\xc2F\xf4\xd2\xcc]tK\x88Fv\xc1\xa7$<\x0dL\x12)\xe5\x03\xb4\xe7\x16\x85\xf2\xf4\xa2\xac;\x81\xd3X8\xaf\xf5$\xc4\x1b\x89\x12\x8f\xdd\xb6%\xe5\xe6\xa3,Z\x0f\xb3O[\xfd\xb71\xd7\x00A\x9f=V@\xb6\xed'\xd8o\x17\x95\xc5\\\xb2nw\xfb\xadP\x0d\xf1\x17|\xb0%\xcb\x88\xb1\xd4\xc9\x93d\x18r\xde\x83\x99\x1d\x0fM}\x8f\xc98B\xd8\xd8$3#N\x8acFT\xa8V\xb5]E\x82f&I2b\xbaI\x16\xed\x99\x99D\xfff\xc2&\x08\xda\xd4\xea}f\x19\x95x\xc6\x1fpe\x04C0\x86)\xee\x8b[dj\x8a\x99eu\xacM\xe4\xc5\x8abM\xaf/\xa6\xd9YG\x98\xa8\x07Y9r\x08\x9al3\xc6\xccwh.1\xfb\xe8\xaa\xf6f\xed\x9e$\xc9\x80\x84@\x00[bA\x01\xb6\\\x98d8*\xf6z\x13\x02\x94\x03i\xed'\x19^R1\xcbN\x96\x1a\xe6\xd3v\xbbYu\xe2\nsw<\x92\xe1\xca\xdb\xed\x83\xecj\xf5\x99\xb1o\xfbZ\xd6\xb7\x02?K\xea\x1e-\xf0\xac\x9fzI\xd06\xa6p\xe9e\xbb\xdf\xa3\x9bQ\xdcK\xd15\xd5V\x7f6\x85\x8d\x9f\xf6\x88\xd9\x9f@o\x86\xe6Z\x11r\xb3\x99\x83\xb0\x00\xd0Y\x89:\xb1\x15\xb7U#a'd\xb5\xa9d\x15z\\f\xad\xd5\xcb\x1a\xfcLW\x9b+V\x03\xf4\x8f>e\xd4n\xbf\x9f\xbf(,\xe7\xd8\xb6\xee%\x06\xe1\xef\xabN\xd6k\xe5\xd9\xf3\xa9\x19\xd7\xec\xcf\xeco\xe4\xe6ZE\x9c\x06\x82F\xf1+\xd8\xba\x82Y\x06O\xb3\x93\xdaP#5aZ:FbB#\xeb\xc5\xf8Z\x91T\xf212Dh\xeb\xc3\xd9g\xaez\x80xyJ\x18\xd6\x93\xf0\xf2\xd4)\x19\x86\xe4\xe5\xe9Rxy\xba\x14^\x9e\xce\x84\x97\xa7\x93d\x19\xae\xbc\xddxy:J\xfa\xf2\x944\xf1\x92n4\xbd\xdfG}\xf6\xe7c\xf0Gm\xb9Lg\xa5l\x80:\x10R V\xb4CJ\x92\x86\x80B;}\x83N\xd5\x10\xba~ \x8b\x03\xcd\x92v\xe7\x03\xe6\x9b\x7f\x0d\xa0}\x9c\xfa\xb4\xcdz\xb3\x92v7~\x8c\xa1=\xd9jd{y-\xc5I&\x94\x84\xf0\x9eI8\xc9\x04\xd0^\xde\xb1\x17\xcf/3\xc9\xc4Qw\x94\xbb}\xe6\x1d\xce\xcb.1\xf7\xa9{\x93xN7\x92\xb3L\x1c\x19\x88\xb3LP^x\xc0Y&8\xcb\x84\xf7H\xce2\xa1\x84\xb3L\x1c\x0bg\x99\xe0,\x13>\xe1,\x13\x9ceB g\x99\xe0,\x13\x9ce\x82\xb3L\xa0p\x96\x89\x9cD\x0d\x9ce\x82\xb3LL\xc2Y&\x8e\x85\xb3Lp\x96 \xce2\xc1Y&8\xcb\x04g\x99\xe0,\x13\x9ce\xc2\x0e\xb4\xb3T\xcd>\xa7\xe7G}\xe9,\x13}\xb7^\xcd\xab\xf7\xf8\xda}|\xe4\xac\xed\x13\x0cf\xb5}\x04^\x84\xc2\x88\x97=H\x8d8\xf6\xf4a\xd3Kb\x1f\x8e\x8fL\xea\xc3\xbcTI\xc1\x1ep\xae\x0f\x8a\xb58\xd7\x07\xca#\x1b7\x9e\xa5\x82s}\x94\xb0\"\xe7\xfa\xe0\\\x1f\x9c\xebc\x02\x96-\xf0\x08\x95SK\x95\xfedT\xf8j\x96\x8e\xd78\xaa^:*SIB&C\x1e\xad\xc4\xccp\xf2\xdd\xe1'\x9e7$h+}\xc2\x93\xcd#2\x0d\x91'\x96Dd>\x96\x03\xa9\x1d\x08\xfeB\x8a\xcb\x0d\\\xd7\x84\xbcR\x9b\xa3\x1e\xaf\xfb\x93VQ\xb4`\xd7JU\x11\xfd\xdf\x13Z\x98\x14\xd7G\xb8\x13(\xf4\xc8\x0d\xea\x9dCY\xc6\xf1\xd5\xee\x08>r\xf4\x06-t/)l/\xd9F\xb4p\xbdD;-\xc2\xf4jG\x84\x1e\xd9H\xb4\xd0\xbc\xa4\xb0<\xb2\x91\xd2\xba\x1d\n\xc5\xd3\xb5n\xf5!\x01&\x0dex\xb1\x0c\xaf\xd5\x0d~\xa0\xab\x9a\xbc0|\xaa\x91\x8c\xf1%\x8d\x10\xe8\xfc\xac+E\xee:=l\x8e\xdc[\x02qo$F\xde\x1b)\x19&\x17\x0b\x91\xcb\x0e\x8fK6P9\xfb$\x84\xc3\xc1M\x00\xadD\xc9\x0e\x85\xa3\x8fs\xc7\x1as\x11 \xd7XM\x8e\xc6\xc1\xa5\xc5\xc0\xcd\x9a\xb9L\xcf\xe0\xfa\x10\x08\xa5i\xa0\xf4\xd9\xd1\xdb\xc1\xbe\x9d\xfe\xf6P\xe9\x19\xfa\xba\xb9\xde\n;\x05\x83S\xd5\xd4\xbc@N\x86\xe1\xe50j\x9cv,\xebf0\xeb\xf0\xfax\xa1>\x0b\xc5F\xa5\x87X\xf6\x8a\x83\xac\x94p\x90\xd5\xf4\x13\xd5\x98\x1cd\xa5\xf69\x96\xcf;\xbd\xa4\xefB\x9b\x03\xe6\xc7\x18\xac\xe0\x15\xb8\xd4\xaf\x11\x0e\xc2*\xf3\xd9\xcdAX\x1c\x84\xe5\x16\x0e\xc2R\xc2AX\xc7\xc2AX\x1c\x84\xe5\x13\x0e\xc2\xe2 ,%\x1c\x84\xc5AX\x1c\x84\xc5AX(\x1c\x84\x95\x13\xc7\xc4AX\x1c\x845 \x07a\x1d\x0b\x07aq\x10\x16\x07aq\x10\x16\x07aq\x10\x16\x07aq\x10\xd6//\x08\x8b\xc3\x7f\xd2b+8\xfc\xe7\x11\x8d\x1b\x0f\\\xe1\xf0\x9f\x12V\xe4\xf0\x1f\x0e\xff\xe1\xf0\x9f\x11`\x0b\xc4\xfc\xfc\x8f#\xe6\xe7o\xe3y\xb3H\x9fI\x1d\xd4\xcdU\xab\xc6'\xd6\xff\x1d/<\xea\xfa\xdf\x11\xd9\xf3\x01\x8d\xed0\x8c>\xfa\xc9\x86\xf5,o\xbd-\xf2\x0b 7\xa6\x98\xe9g\x8cxY^r\xb6\x10\x9dG\xbbL\xe6\xf2\xc0\xa3\xb6\xbe\xffG\xd5\xf6\x1d\xe3f\xeaF}p\xb8?\xac\x87\xd1*\x9a\xfe\xd0\xaf\xf6\x87K/r\x19\xb5.\x10,\x0c\x04\xb0 h\x16\x86\x04+C\x06\xe4\x14T\xe6\xf6t\x05\xb6KK\xc3N\x10\x07\x9e \x03z\nw\xa0\x927d\xf0 J\xc1O\x90 @\x05\x15\xaa\x82\x17T\x08\nN\x07\xa1 \x19\x86\n\xaa\xd2\x90F\x12\x10\x05\xa5\xa1(H\x04\xa3 \x15\x8e\n\x8f\xec\x11\x9c\xa2\x02RP\x1a\x92\x02\x1a(\x05%a)8\x19\x98\x82\x1d\x1a\x83\x82\xe0\x18P\x9a\x16x\xca\xcaAd@\x01\xc9\xe0\x04\x98\xcc\xabP\xaa\xe0~?P\x06\xa5\xa12\x88\x82e\x90\x0b\x97y\xb5\xe1\xb7}x\x9b#\x0e\x99A\x184\x83,\xd8\xcc\xab*\x08\xa1A.\x88\xe6\xd5\x86+\xe4\xc0~b9 \x0dHP\x1ad\x80i\x90\x06\xa7A\x0e\xa0\x06\xc9\x90\x1a\x84g\x11\x88\x80C\x90\x00\x0fQ\x815\xc8\x81\xd6 \x15\\\x83p\xc7s\x006\xaf2\x0b\x0f\xa3>24\x90-\xf8@4\xd7a\x98\x0d\xca\x02m\x10\x83\xda \x0c\xb6y\xcf\xc9\x05\xde\xa0\xe0\xd8M\x00\xdf ~\x03\xef\x02\xe5\xbf\xabz+\xbc \x9e\xa4\x93g\x98\x0buw\x03\xaf\x04&\x87\xc6\xdd\x8d\xd0{\\v&\x9a\xb1\xe0>\x1e\xed\xbf\xc3]\xbbS\x89n\xc4\x06zY\xc9C\x8f\x8e\x80\xa3\x9c5(x\x88\xaf\x97\xd4\x1e\xe8\x0b\xd5\xcb\x84\xdf\xf8w\xefi_c;\xa7l\xa5\xfa\xbf\x94\xe3\xc7}\na\x97L4\x87\x9d\x7f\x81\xff\x02~x\xfb\xe3\xeb\xd5\x87\x8f/?\xfe\xf4a\xf5\xd3\x8f\x1f\xde\xbdyu\xf1\xa7\x8b7\xaf\xc9g\x0c\xffJ<\xfc\xe2\xc7?\x13\x8f\x0f*7 I\x92\xba\x80y\xd0>\x83\xdb]'\\\xc3a\x0c\x16\xf4\xa9<\x10\xea\xb7\xaf\xebf\xbd\xf5\xbf\xf8{\xb1\xbdz1\xe5\x90\xf2\x0c\x82 v\xc12\xfa\x9f\xa1k\xcbKND\x81b\xae\xf4\x1f\xeb\xbe?\xa0\xb7\xc5\xff*\xb2x\x83I\xabg\xdb\xd8n\xdd\xc9\x1d\x18\x8f[`\xb9\xd3\xdf\xa5\xe8v=\xb8\xcb\x98O\x12I\x03Z\x8ch\xd8\xb5M\xfdI8\xf2\xddLB\xb8\xc1\x90`#\x98\xae:\xe5T\x83\x9b\xc3\xaej^t\xa2\xda(4O\xad\xe8b6\x02\x8a\x9d@\xb3\x11\xd2\xcb\x86\xc0\xe3\xf4\xd1\\\xd6N\x1cg<\xbf\xd3\x8f}}\xddT\xf2\xd0 \xf8Z\xdc\x87?\x83\x7fz\xd7v\x8a\xb3\xfd/\xf1pY\xf5\xc2;y\x03\xdc\x89\xcb\xbe\x96%\xfc \xb3\x1ek\xb5\xce\x1e\x99\xdf\xb6u\xf3)4\xf5\xac\x0f]-\x1fV\xea[e\x1d\xcc[\x98\xd3\xc2\xc8=Y^\xde\xd9\x13\xb1\xab\xeam\x14\x1f0\xaa@\xab\xf2\xf7\xd9\x9b\x9ai\x92\x9c\xaej\xb5\xe6E\x80\x0e\xbb\xb1\x13\xfaWw\xab\xa6D\x92\xe1\xd4\xbc\x84fQ2FR\xef\xd0\xb2Y\xe6\xee<\x87\xfaj\xfa\xf1\xb9\x9aQ\xf5\x11\x01\xcc\xc8\xa4\xec\xad\xfb\xa3\xe5\xdd\xf5\xc1\xca\xe1\x183Q(/o\x82\x81b\xb9x\xd3\x8d\xa4\xb2\xed\x06L\xb4\xab\x9b1#\xafW\xdd|!)[\x93\x9cU\xc4\x0c\xb4nw\xbb\xba\xef\xa9/\xcd\xe9\xf0\xd9\x8b\xd1\xfa\xf3\x14\x17\xf3\xc8\xaf\xbc\xe9\x9a\xab\xae\x92\xe1\x1c\xd6\xd4\xbb\x02\x0e\xbd\xb3\x8e\xea\xe4\xc0\xd6AA]\xa8\x00a\x8b\x11\x10\xc0\x14\xd5\xea{\x97\xf0\xda#\xd9\x0b\x886\x03\xdd\xa6\xd8\x8e>\xe1\x810\x92bZ\xd0\x977\x9f>\xd6\xb0Q\x7f^\xdfT\xdd\xb5Z\x13F\xd5L\xab\xc1\xe7\xa0\xc2\xf1\xae\x14\xd8\x16\xceE\x0c\xb0\xab\xeeW_\xd8\x00\xa6 \xb3q\xb5\xab\xee\xeb\xdda\xb7\xb4HT\x19\xce\x8e\xd3\x93\xbf\xae\x1a\x10\xb7\xa2\xd3\xa6L\xb6\x0d\x928O\xc1DVK\x9c\x96\xdaTu4E\xb7\x8a/\xe9D\xd5\x8b#\x80\xd9\xb24\x1a)\xaa*n\xc4\xc3~x;D3\xc0\x13\x0dG}\xe3@\xa2\x81\xadV\x9a\xe7P9\x11\xd4\x1f\\O\xe5]\x04@\xc4;\xb5q\xdbeW7\xab\xe1C\xd5\xaa\xacr\xc2[\x98\xdaO\xc7U\x8f\xb6[\x9e\xf5\xea\x0b\x1a6b\xbd\xad\x96a=\x0bej\xc4\xe9\xa3\x8d\xc2`\x9e+W\x00\xcc\x1f\x9c\x87gd\x03'\x18\x8a\xb2\x9e\x8b%\xcc\xc5\xcdyw\xd6o\xdb\x8a\xb3\xcc\xdfj\xd7-\xa00-\xe7\xb7\x9d<\xfe\xb1\x8beD\x1eHB\x06b\x8aI\xb7u\xaf \xe7\xc9h\xf5\xa6\x7f\x8e\xb1\x80Ga\x00\xc3\x1a\xc1oL+}\xf9\xf2\xae8\xce\xa1<:c\xdc\x8e\xf5E?\xea|\x0e\xb2\xbd\xc6\xbdV\xe5\xe1\x92&4\xcf\xa9\n\x03\x8e\x0c\x01\x17\xbe\xda\xb3^m\xc1\x9a\x8d!\x9d\xb0\xa3\xee@\xdc\xe3\xdc\x82\xf3\x90Z\xd5\xd6\x8dg]\xf9a[\xf57\x831L(\x9b\x8f\xe8\xaf\x86'\x1e_\n\xda5:\xbb\xccs\xe4\x80\x15\x96\x8a\x81ON-\xebj\xbb>lG\x7f\xe1\xd5a\xf8\xf8w_\xf0\xd0\xd8\x15\x9f\x06\xdb\xb5\x079\x8c\xc9\x0e\x97\x81\xed\xad\xdaB\x19w\xb7t\xb4\xd7\xd0Uw\x07\xba\xf9^\xa1\xfb\xaa\xf3\x01\xf1|\xf1\xf6\xab\xfba\x19\xba\xa9\xa5a5+kfs\xea\xbb\xbbi{1Ea\xba/j\xdf\xc6\xba\x9fQ\xd1\xd6\x88P]\x9b\xba\xe0\xd4\xb4\xa9G\xf7?zx\x14\xda\xeb\xbe\xea\xec\xfe\x9d\xc1\xdfZe\xd6}{':\x139mn\x97\xd8(\x97\xbew\xd8\x1aW\x80\xea\x82\xfbj\xbb\xc3V\xd6\xfbmm\xa61\xfb\xdaG'\xcc\x9e:+0\xd0Y\xf1\xb3\x7f\x86\x01\x83*]\xbf\xb76\x12g\xcfW2\xeb*g\xcf'\x19\xf3W\x97=\xffh\\\xa80aG\x9cj0g\xbec\xf7\x1a\x93\xe4\xbb\"\x8195\xbe\x16N\x8d_\xe6[&5j\x14\x87-\xa7\xc6'D\x88\xca\x12\xd1\xa19\x91\xa1\x9c\x1a\xbf`\x14hJ\x04hR\xf4'\xa7\xc6?5\xd23#\xca\xb3H\x84gzt'\xa7\xc6?%\x9a3%\x923#\x8a\x93S\xe3sj\xfc\xc8*)9*\x93S\xe3\x93\"0s\xa2/\x81S\xe3{$\x1ae\x99\x10aII\xaa\x9e\x12Y\xc9\xa9\xf1s\xb2\xcb\xc7\"'95>=B\x92\x18\x1dI\x89\x8c\xa4EErj|\xc8\x8c|L\x88z\xe4\xd4\xf8\x05\xa2\x1a\xa3\x11\x8d\xb9\xd1\x8c\xde\xf7&\xa7\xc6?\x12N\x8d\xcf\xa9\xf1\x17R\"M95\xd209\xca0)\xc2\x90S\xe3\xcb\xbcHBN\x8do\x84S\xe3[\xc2\xa9\xf1Q85~Y\xe3\xc6\x93\xbasj\xfc\x12V\xe4\xd4\xf8\x9c\x1a\x9fS\xe3Ol\xda\xf9\xcf\xe3\x7f\xe3ox\x89\xe4\\\xf9c\xaa|\x0bF\xf4d\xc9w\xf0\xac\xfb\xaa\x1e\xdf\xf1\xb3\x14\xf4\xc7\x17\xd2G=\xfd\xd4\xf3>\xa2%\x0b\xbb\xa3%\x90\x8f\xfaf(\xce\x8d\xd2\xa9\xe3\xd3\x13\xc7\xd3\xd2\xc6\x07\xad Q\x8b\x02\x01\xf7!X\x14\xc8V\x85\\\xe8'\xa0/)Q|Q\xf0'\x8a\xfe\x94\x86\x7f\xe8\xf8O!\x00(\x0f\x01\n\xa8KL\x0d\x7f\"\x06T\x1a\x04JD\x81\n\xc3@i8P\"\x10\x14\x1a\xc3#*DE\x82\nCA$,\xa8 \x18t*\x1a\x94\x05\x07\x15\xc2\x83r\x00\xa1\x802r\xf2\xf7G\x80\x84\x1e\x0f\x13z\x14P(\x0d\x15*\x0e\x0bQq\xa1\xa2\xc0\x10\x1d\x19J\x86\x86\xd2\xb1\xa1\xe8THK\xf3~2:\x14M\xf1NZP\x11\x00\xa2\x94UW2D\x14z \x92\x13\xbb\xd3\xdaW\x10%J\x81\x89\n\xe3Dy@Qh\x04\x91\x92\xb9gBE\x1em\x92\x94\xc8\xbd\x0cXD\xa6c\x08pQ\x12^\x14\xcb\xe7\x9b\x83\x18\xc5tz\x1dm\x85@\xa3tc\xd2a\xa3X\xdf2\x80\xa3L\xe4(\x9cC:\x8e\x1d\x95\x05\x8f\xca\xa0G\x84\xb1q2~D\x06\x90h\x08\x12\x15B\"\x0c\x9ct\x10)\x05E\n\xa6d/\x82#%\x02IyHR\x12\x94\x143z8\x0d{\xe4\\:\x9cT\x0eO\x8a6\xca\xfb\xfc\x94\x83\x94\x08\x98R>\xa8\xe4Q'\xa3I\xd7\x8b\xc2J1\\)\x13X\xf2\xe8\x8a'[\x8fCK\x91D\xeb\xa5\xc1\xa5\xe2\xe8\x92\x1f^*\x89/Q\x00\xa6t\x84) b\xca\xc0\x98RA\xa6H\xf2\xf4p\xeb\xa8h \x15g\xca\x00\x9a\x12\x91\xa6@ws\xb0&\x8f*B\xba\xf4\x1c\xb4)0\xe4\xe3\xa9\xd2\x0b\xe2M\xd14\xe9\x8f\x818\x95\x1a\x8b \x98S\n\xe8\xe4^\x1e\x84R\xa0K\xa7\xd7\xda\x16\xda.@N\xf2s\x95\xe4\xdc\xa3\x8f\x9a\xfa<\x94\xf8\x9c\xd6\xf2\xac\xa4\xe7\xc9)\xcf\xa3\xbbF\xa1t\xe7\xa9\xc9\xce\x93R\x9d\xa7%:'\xa79\xcfHr\x1eJq\x1e\xb5\x1f\xedf\x9f\x9a\xdc\x9c\x92\xda\x9c\x96\xd8\xbcP\x87J\xa54\xa7'4\xb7\xdbuR\xc3\xc7\xa3NJe\x1e\xc9T*O\xf7\xb1GS\x98Go%\x90\xad\x02\x05\x93\x97Gs\xb8\xc6\x13\x97\x17\xeeY\xe1\x94\xe5\xe4\x84\xe5\xd1t\xe5\xe9\xfd<5U9=Qyz\xdb\x82\xf7\xa0X\x8arj\x82\xf2hz\xf2\xf4\x0ef\xa7&\xa7%&\x8f6(\x9e\xc4\x92v?J&$?%\x1d9%\x199\xd9(\xe1\xb4\xb0\xa9\x86IIBNyK\x009\x05y,\x01\xf9\xac'\xa7\xa7\x1f/\xf0\xa2\xa2'\x1e\xa7\xdd\x05HO:\x8e\x89\xc5\x03\xfaNJ9\x1e\xb5\x11\x90\xec\x04\xa4d\xe3\xd1\x01o\x84nL \xa7\x19\xb7\xd3\x88G\x14\x92\x13i\xd3R\x8c?R\xb7S\x92\x8b\xe3\\\x16QX\"\xb5xRb\xf1G4\x0c)\xa5\xf8\x982<\xa20\x9aP)\x1a\xb2nV\xb5'X\x14h\xb74\x14[\x014\x15\x14*\x10\xe03\x12\xaaj\xbd\xacn`\xd8:8\x03\xec;q\xfb\x99'\x80\x9b\xaa\xbf)\xfc0\x06\x93\x97\xa9\xb5\x8e\\\xf5B\xaeB\xd3\xae\x11RO\x81\xdc\xdbA\x02\x85\xe7g\x87\x05Q\x9d\xa5P\x86\x9d\x91\xb8\xc9!\xc5\xec@7\xfd8\xd0\xdeU\x9d\xec\x85\xfcOu\x07BCWA\xd1r\x15n2\xa9\xa9\xa4&\xea\xe6\x0d\x97\x13\xcaG\x81\x0f\xc30\xedy\xce\x19~\xfaL\xcd\x9br\x87\x7f\xa6\x0b.\xedq\xd5\xb5;3\x8fC{\x90\xfb\x83\x9c\xfe6\xcd\x1d\x1em\xaa0\xc7g\xef\xc3\x94\xd2\xfa\xf3\\\xaf\xda\xef?\xd3\x95\xd4\xf3\xa1Y\x88\xcftIq[oD\xb3\x16\x9f\xe9r\xe3\xf8\x9b\x96?\x81\xd7\xd20\x03\xb7\xbd\x88dj\x87b\xed\x9b-\xeap&\x9b}E\x8c\xcb$\xb5\xa5\xa8g\x12|\xe7\xb8\x961\xb7\xd5\xb6\x17\xc1X\x84\x93@\xfc\xe0+\x8c\xf2\xf2\xa2%\xc2G!\x198eY\x9c\x94\x1a?\xa8\xc7\x8e\xacHO\x90\x8fBK\x93\x8fB\xb0>\x10\xef\x00hu\xe1\xc4\xf9\xd3q\x84;\x00\x89w\x012\xe8\xd6\xa8B\xe9\xc4\x1cB\x9f\x07(d\xda5\xaai\xa2ac\xd4\xab\x91T\xfa5\xaap_\xc9\x1b2\x05k\xc4\xe5\xc4I\xa6a\x8d\xd0\xa9\xd8\xa8*\x9b\x9aM\xa0c\x8d\x9cH\xc9\x1aI\xa3e\xa3\xea4\xc9\x97D\xcd\x1aI\xa5g\xa3\n\xaf\xda.\x89\xa25\x92D\xd3F\xb5\xe5$\xe9G!\xd1\xb5Q-s\xfa\x96B\xd9\x1a)F\xdbN\nO\xa1n\x8dd\xd0\xb7F\x8aP\xb8F\xe84nT\xd5\x8c\xd6\x8dS\xb9F\x1e\x81\xce5\xf2X\x94\xae\x91G\xa0u\x8d\xa4P\xbbF\xc8\xf4nT\x93M\xf7\xaa\xf1\x1d\xa7x\x8d$\xd1\xbcQmj\x9e\xa0R\xbdFd\x1a\xddk$\x95\xf2\x8d*L)\x0b\x80r2\xf5k$R\"\x00%a\xe9\x18\xfdF\x9a$u\x95\x99D\x07G\xb5IC\x0f\x13(a#)-N\xa4\x86\x83\xba\xe6\xabY\x02=l$\x89\"\x0ej\x8a\x16\x1d@\xc9!\x8d\xe3\xe3\x93T\x80\x00%\x87<\x8e)\x94\xa4b\x04(eHd#D\xa8\xd6H\x94L6\x92@(\x1b\x89\xe4\xbeV\x92C,\x1b\xa1\xe8\x0f\xa6\xd6-F2\x1b\xc93>\x9dl6B\xe9y\x06\xe9l$\x8bx6\x12L\xac\xae$N@\x1b)IB\x1b)AD\x1b!\x8e\xae\x93 i#DR\xda\x08\x85\x98\xb6\x8e%\x90\xd3F\x887/\x9d\xa46B'\xaa\x8d\x04\xca%\xa0\x14!\xac\x8d$\x91\xd6Fr\x88k# \xe4\xb5\x11\xcaM\"<\xae4=t2\xdbH)B\xdb\x08\xa9\x99\x91'6\x9d\xdc\x0e\xaa\xbb|\x88\x13\xdcFrH\xee\xa0B\x83U\x84\x0b1\xa0\xe4\x90\xddA\x85\xd2\xecc\x06\x8a2\xa0\xa4\x92\xdeAe\x13\x05N\xd8B\x8a\x93\xdfF\x82\xc5\x1aP\xd2I\xf0\xa0\xbaH9\x07s\x10\x9d\x16\x8f\xdc~\x8b$\x0f\x94v@I\xa5\xc7\x83\xca~z\xff\x973\x02En$\x95&7\x92@\x95\x1bI\xa6\xcb\x17'\x12)s#\x91\x99 \xa2\xe9\xf7Q\xa8$0\x95>\x1f\xf5\xa6R\xe8\xe3\x89)4\xba\x91\x881r\xe8\xf4\xa0BB\xb9\x08\x94\x1cZ=\xfa0\xc5KG\xa0\xa4\xd3\xeb\xd19:RF\x02%@\xb3\x07\xcf\xcb%\xdd\x8d\x94\x1c\xef \xe4\xfb\xa8\x9aL\xc0\x1b\xf1\xafzBe(Pp\xc7,T\x8c\x02%eG)\xa70Ex$t\xed\x8e\\\x9e\x02%T\xa4\x02%\xa5GY\x05+P\x92\xcbV\xa0\x10w2C%,PR\x0bY\xb8\xcf\n\x96\xb3\xf0\x9f\xe2/j\xe1:'z\x91\x8c\x02\x17(\xa12\x17\xfa\x08\x9a\xbdS\x06\xcd\xa9\x85/P(\xe5/PhE0P\x1e\xa1\xbb\xa5\xcab\xa0\xd0\x8bc\xa0\xd8--\xd6\xa1\xf1\xd8\x93\xcae\xa0\x10rm\x17'n\xa2e4P\x88\x83\x01\x12\xed\x07\x05\x0bk\xa0\x90lH)\xb2\x81\xf2\x88\xfdN,\xbb\x11\xd5\xf7\xb5\xb8?\xa3\x17\xdf@\x89\x96\xe0@\xc9\xb5\xc2\xa9\xe58P\xe8E9Pr[K\xb8g\xc5\xcat\xcc\xd5\xc5\x8au\xa0DKv\xa0\xe4v?\xbb|\x07\n\xad\x88\x07\n\xb1\x89T\xea?\xe5.\xa6\x17\xf7\x08\xaa\xab\xe4I%>P(\x85>P\x12\x0d\x17\x0b\x9f\x81l\xe3Q\x0b\x80\x04\xd5\xe99=\xa7\x0c\x08J\xac\x18\x08\xca\xac\x87\xa7\x97\x04A)\xfc\x1a\xa6\x17 AI\xb9k\x90^0$\xaa\x0f\x95\x9cT6\x04\x85hGH\xb0%\x90\n\x89\xa0\x10\x1f(#\xa9f\x07ri\x11\x92*\xab\xfc\x08\xadf\xc4$\xb42#(\x9f\xc1()\x85GH\nq\x16\x8e\x94\x1f!iJ\xb3)\xb9P \xcag2-\xa9t I\x9b)o\x12/`BRG3.\xa9\xd4 J\x82AS\xde\x8a\x90a\xfc\xd4\x12(Q\x85wU\x1f*\x84\x82B.\x87\x82B\xb4WJ\xdf\x0b\x16H\x19\x15\xa6\x95IA!\x17KAI.\x99\x82B4 u\xed\x1a\xab\x00\x82\xd2\xa7\x97R \xeaS\xbb\xaai\x05UP\x08eUPd$\xa6\x0b%\x18\xd9\x85B\xb479Y\x01\xd5\xe4\xc5J\xaf\xa0\xa4\x14`A\xa1>\x82y\xc5X\xbc\xea\xa6\x92\x1c\xc1\x88\x8b\xf4\xc2,^UX\xb0\x85Z\x9e\x05%\xb9H\x8b\xff\xeaS\xf1\x96p\xa9\x16\x94\xac\x82-\xe1\xae\x93\xca\xb6\xa0\xa4\x16o\xf1*\xb2\xa6jB \x17\x94\xacB.\xfe\x16\xd4#\xbe\"\xc3\xe5\\P\xf2\x8a\xba\x04;#6\x81\xd2.(y\x05^\x8e\x9eV\x95\xf6h\x9eYh,\xeeR\xf7 \xf5]\x16\xd9\x8e\xde\xbf{\xb5l;\x97z\x99\xbf}\xb9\xd4\x8bC\xa8\xef\x96\xd4`X\x1c\xc0\\\xea\x85\x10\xe4\xea\xe2\xd8\x92\x83[\xe9A\xad\\\xea\xc5Hj\xb0jp'?%H5)8\x95K\xbd\x9c\x1at\x9a\x11lZ$\xc8\x94\x1e\\\xca\xa5^J\x04\x8f\xa6\x04\x8d\x92\x83E\xb9\xd4\x0b\x97z!\xaf\x92\x92\x829\xf1s\x89K\xbdp\xa9\x97R\x01\x96\xc4\xd8\xbeh@eB %\xa5HHJ\xe0$\x97z\xc9\xa9\x96\x12\x0b|\xe4R/\xf4@Fb\x00#%p\x91\x16\xb0\xc8\xa5^ 3\xf00!\xe0\x90K\xbd$\x04\x0cr\xa9\x97\x85\xa4\x06\x00r\xa9\x17\x97:.\xf5\xe2<\x81\x18\x84\xc7\xa5^\xd2\x82\xe9\xb8\xd4\xcb(\\\xeaE\x8b)\x9br\xc4\xf3\xce>\xa3\xe7<\xf0D\xf6\xea\xbf\x8f\x05R\xe4q \x0d{Z:\xb1`\nx\xd8\x91\xd4B*\xca\x0e\xfa\x0cW\xd9\x94w\xa3\x9df%S\xb4\x1a\x07\x04;+\x92\xf2\x01\x0fSJ\xcc\xb7\xf6\x93\xad\x91b\x9b\xc2\x96Yc\xf0 \xfd4*\x7f\x82Z?\x8dF2\xd4\x06\x022\xc7\xef\xa1\xa0O/\xec\xd1\xa3\xe0\xdf\xd1\x0d\xadYg\x16\x9c\xb6\x86\xb1\x90\xd9\xd6\x8f\xdd\x0cmq\xbdVw\xd5\xbd\x95\xce<\xd4\xaaP\x12\xff8\x065k\xf8\xfc\xa2\xa6\xe1\x86Z\x1c\x19\x05+W\xbc\xaf\xe9\xa2\x91]\xd0\x83Z\xb4\xdd\xde\xcdA\xab)Vo\xc0\xfcI-(k\xb5\xeb:\xde\x0c\x8f&\x8b\xd8P\x1ez\xeb\xdf_\xefE\x07\xfb\xaa\xee\xceeW\xb7\xce\x90\x1f\xab\xae\xd2\x13\xb1\xccq\x8b\x8c\x81\xa6\xdblM\xb3\xe6\x18/G\xb4\x17]_\xf7\xce\x10\x9a\xc1\xb0\xab\x8dhZO\x1cl\xda\xc35i\x9b\xa1\xb5\xc3\x9f\x95\xbf`\xdd\xd6\x0d\xa8\xdf\xebFs\x8b\xc7\x1awu\xb3Z0\xf9\x99m\x8b\xd1l\x8e+\x8d4\xfaMU7/\xee\xea\x8d\x18\x91\xcbh\x08\x00\xc2\\\xc3\xf2\xa8Z\xd0\xd6\x08Z\x03\xc2_\x13\x015\xd3C\xa0d\xf0\x9d\x12\xa5c4\x0f\x83G+\x0ef\xae\x8b1\x18\xc6`\xa2> \xdaL\xc5\x18\x0cc0\xbe#\x19\x83Q\xc2\x18\xcc\xb10\x06\xc3\x18\x8cO\x18\x83a\x0cF c0\x8c\xc10\x06\xc3\x18\x0c\nc09$ c0\x8c\xc1L\xc2\x18\xcc\xb10\x06\xc3\x18\x0cc0\x8c\xc10\x06\xc3\x18\x0cc0\xbf\x06\x0c&\x19\x17i\xdbm\x00\x16i\xdb\xed\x0c\x13\x19\x0e\x9f\x91/3:d8\\\xff\xfd\xe9B!c\x87m\x99#!C'm\x17\xefQ\xaf' \xfa\xb2\xc2\x9e\xac\xa6\x95+\xccF\xb0\n\xe5 \x8e\xec\xe5\x9c\xa2a\xd6kt\xc2\xb6\xed\x96\xec\x82\x1d\xac\xf2\xfe\xdd+v\xb9\x02\xbb\\\xa3\xfb\x8d\x94-;`\x97+\xbb\\\xbdG\xb2\xcbU \xbb\\\x8f\x85]\xae\xecr\xf5 \xbb\\\xd9\xe5\xaa\x84]\xae\xecre\x97+\xbb\\Q\xd8\xe5\x9a\xe3\xb5d\x97+\xbb\\'a\x97\xeb\xb1\xb0\xcb\x95]\xae\xecre\x97+\xbb\\\xd9\xe5\xca.Wv\xb9\x1e\xbb\\\x97\xc1\xd5.\xc7\xeb\xdf\xa6Xh\xe3~\xad\xb6[+\xfc\xd9\xec\xad\xca5\xe6\xf6\xbf\xaeoUe\x87J\x1e\xc6\xdd\x0b\xdf'\xfb\xdfoD\x03\xebj\xbb\x15\x1b,\x9f[5\xb8\x0d\x831\xee\xcfq\xb7\n\x93\x1e\xe0\xb6\xca\xbam\xfa\xc3\xf0j\x83\x9b\xfa\xfaF'}\x1f\xf5\xd9\xb9\xe3\xaf\xab\x1eKT\x0cK\x81k\x1d\x08\xabg\xdb\xba\x87\xba\xd1i\xf9\xb7\x0f\xd0\x0b\xe9\xf4\"O}\xd7\xbf>Y_r(L\xfeK\xb8\xe9\xd0\x8cm\xb7\xaa6\x9bN\xf4\x9e\xa3H{U\x94\xed\x1ep\\r\xe677\x7f[\x96\x10z\xe6\xdfn4\xfa\xfe\x1f\xb8\x14\xeb\x1b\x10\xcd\xba\xdd\xa8\x1de5I\xb9_\xc6\xc3\xe8\x14M\x7f\xe8W\xfb\xc3\xe5'\xe1\xad\xed\x19\xb1.\x10,\x0c\x04g(\xd0,\x0c V\x86\x0c\xc7hP\x99{w,\xf0\x89U\xdaA\nq')d8J\xc3\x1d\xa8\xe4\x0d\xd9Y\n\xa5\x1c\xa6\x90\xe94\x0d*\x1c\x8cKv\x9c\xc2\xe9\xceSHv\xa0\x06Ui\xc7N\x92\x13\x15J;R!\xd1\x99\n\xa9\x0e\xd5\xf0\xc8\x1e\x9d\xadT\xa7*\x94v\xac\x02\xcd\xb9\n%\x1d\xacp\xb2\x93\x15\xf2\x1c\xadP\xca\xd9\nY\x0e\xd7\xf0\xe3`U\xd4\x89t\xe1\x11\x1c\xaf\xf0\x88\xceWx\x1c\x07,$:a!\xcf\x11\x1b\x9b\x82i\xceX(\xeb\x90\x85\x04\xa7,\xa4;f!\xc39K\x982\x7fCp\xd0B '-\xc4\x1c\xb5@_\x9e\x11\x1c\xb6\x90\xb8\x8aKv\xdc\x06\xb5)\xa7.\xc1y\x0b \xad,\xe8\xc4\x85$G.\x94v\xe6B\xa6C7<\xae\xfa\xb8S\x17\xf2\x1d\xbb^}\xc3\x15c\xce](\xe6\xe0\x05\xba\x9f\x12(\x8e^Hs\xf6B\xcc\x03\x91\xe9\xf4\x05\x82\xde\xc0\xf6g!\x070d\x19\x97\xee\x08\x06B/3\x1c\xc2\x90\xeb\x14\x86\xb0\xe7\x8b\xe4\x1c\x86\xc2\x0eb(\xe4$\x06\xda\x889\xd9Y\x0ct\x871\x10\x9d\xc6@v\x1c\x03m@\xa5;\x90!\xc9\x89\x0c!G2\x94r&C\xaaC\x192\x9d\xca\x90\xe6X\x06\xc2M\x88\x10\xcdu\xd8\x01\x0ee\x9d\xe0\x10s\x84C\xd8\x19\xee='\xd7I\x0e\x05\xc7n\x82\xb3\x1c\x92\x1c\xe6\xe0]\xa0\xfcwUo\xc5&\xec\xb7\xbbl\xdb\xad\xf0n\xaaSw7\xf0J\xdaK\xb9\x81\xbb\x1b\xa1\xf7\xb8\xecz\xea\xc3\x08\xbf\x14\xa2\xd1G\xfb\xefp\xd7\xee\xc6\x82\xe2\xca\xf5\x8e\x8e\x00g2j\xd0\x87\xf8zI\xed\x81\xbe\x90N\xe5<5\x1a\xff\xee=\xedkl\xe7\xf9\x98n\\\xff\x97r\xfc\xb8O!\xec\x92\x89\xe6\xe0\xc9\xad\x0d\x8a\x85\xf8\xe1\xed\x8f\xafW\x1f>\xbe\xfc\xf8\xd3\x87\xd5O?~x\xf7\xe6\xd5\xc5\x9f.\xde\xbc&\x9f1\xfc+\xf1\xf0\x8b\x1f\xffL<>\xa8\xdc\x041'u!\x14\x85M\xb2'u\x10\xe0\x85\xf40\xd6\xeb\x0d]x\xdf\xfc\xf6u\xdd\xac\xb7\xfe\x17\x7f/\xb6W/\xa6\\\xf2\x9eA0\xa6\xf3^a\xc1\xfc\xcf\xd0\xb5\xe5%'\xa2\xa0\x95\xd5V\x17\xee\x87\xba\xef\x0f\xe8m\xf1\xbf\x8a,\xde\xc0\xcaK\xee\xeb\xe8\xd4\xba\x93;0\x1e7\xa3!\xec\xbfK\xd1\xedzp\x17\xfc\x9fd\xec@\xf8 =\x99h\xd8\xb5M\xfdI8b\xe4'!\xdc`H\xb0\x11LW\x9d\n\xaf\xc0\xcdaW5/:QaB}\xb5\xa2\x8b\xd9\x08(v\x02\xcdFH/\x1b\x02\x8f\xd3Gs\xd9\xa9\x93S\x98\xed\xf4c__7\x95\xac\xd4\xb7\xcaZ\x96na\xe4\x9e,/\xef\xec\x89\xd8U\xf56\x8a\x0f\x18U\xa0U\xf9\xfb\xecM\xe70INW\xb5Z\xf3\"@\x87\xdd\xd8 \xfd\xab\xbbUS\xad\x18,tt\xc2\xd4\x1e/\x0dB\xbfC\xcbf\x99\xbb\xf3\x1cj\xabp\xcds5\xa3\xea#\x02\x98\x11\xae\xf5\x95\xd3w\xb9\xbc\xbb>4\xe1B8\xb4\x02=I\x06\xdaTR\xbc\x18t\x153\x12\xd6\xf6\xf1\x9bhW7X\xff'4\x94\xe7\x0bI\xd9*\xa7\xffVH\x113\xd0T5\x84\xf4\xd2\x9c\x0e\x9f\xbd\x18\xad?\x1f\x97\x9fZJ\xa1W\xde\xa22J\xf0\xc1\xa4\xde\x15p\xe8\x9duTA9\xd56^l\x05\x05\x15 l1\x02\x02\xebNT\x12\xbfw \xaf=\x92\xbd\x80h3\xd0m\x8a\xed\xe8\x13\x1e\x08#)\xa6\x05S\x85\xa6>\x1a6\xea\xcfX\x87f\xe3\xaf\x144\xc9\xb4\x1a|\x0e\n\xe1\xbfR`\x9b\xbbd\xcf$\xbb\xea>P\xb1g\x92G4\x80i\xc2l\\\x99:Y\x0b\x8bD\x95\xe1\xec8\xaf\xe6#nE\xa7M\x99l\x1b$q\x9e\x82\x89\xac\x968-\xb5\xa9\xea@\x96\x13#u3\xc17g\xbf\xff\x83\xf3\xf0i!\xd06\xab\x9bv\xbbYu\xe2j\xb5n\x0f\xcdc\xaf\xe7b\xe5\xc7ps^\x05z\xec\xdb\xbe\x96\xf5\xad\xc0\xc0\x10{)\xf6\xac\x9fz0\xee\xba\x05\x14\xb6\xfb=:\xf5\xc4\xbd\x14\xdd\xb0\xc4\xc5\x90\x15\xf7\x10\x9b\x8cSo\";\x17\xee8\x0d\x14o\xb4\x06\n\xc1\x9e\x93E\x0f\xa7\x99t[\xf7rV\xc0\x11\xeaM\xff\x1cD\xb5\xbe9\x0e\x03\x18\xd6\x08~cN*\xda\xe5]q\x9cCyt\xc6\xb8\x1d\xeb\x8b~\xd4\xf9\x1cd{\x8d{\xad\xca\xc3\xa5\xbcS\xad\xac\xdc\xbeB\x0c02\x04\\\xf8j\xcfz\xb5\x05k6\x86t\x90o\xdd\x81\xb8\xc7\xb9E\x97\xaekU\x81>\xcf\xba\xf2\xc3\xb6\xeao\x06c\x98\xfcH>\xa2\xbf\x1a\x9ex|)h\xd7\xe8\xec2\xcf\x91\x03VX*\x06:9\xb5\xac\xab\xed\xfa\xb0\x1d\xfd\x85W\x87\xe1\xe3\xdf}\xc1C3M\x1a\xbd\xb2]{\x90\xc3\x98\xecp\x19\xd8\xde\n\xbb\xea\xde\x99\x8e\xee\x1a\xba\xea\xee@7\xdf+t_u> \x9e/\xde~u?,C7\xb54\xacfe\xcdlN}w7mo\x15xt_\xd4\xbe\x8du?\xa3\xa2\xad\x11\xa1\xba6u\xc1\xa9iS\x8f\xee\x7f\xf4\xf0(\xb4\xd7}\xd5\xd9\xfd;\x83\xbf\xb5\xca\xac\xfb\xf6N\xe0\x82\xe8R\x8c\xb7Kl\x94K\xdf;l\x8d+@u\xc1}\xb5\xdda+\xeb\xfd\xb66\xd3\x98}\xed\xa3\x13fO\x9d\x15\xfb7\xc1\x99\xba^-\xc6\x08n\xc0_\x1eu\n\xc6;\x9e\xc9f\x97\xb1\xa2\xf6f)P\xa7?\xebq\xef\x8a\xabC ~rDr\xa2\x8a{\xb9\xf2\x86pE\xa7\xda(\xb0;\xeb\xea\xff\xf8&Z\xd3\n\xf3\xd6\x1f\xfeS3\xefU\xdf\xe3\xb6\xf3\xbb\xeaZ\xbc\x17\xff8\x88^\x9e\xe1\xef\x1eeS\xf1\xe8A\xed`H\x01\xbb\xb6\x97 \x149\xae\x90\xf33\xb8\x90\x96\xc3s/\x1f\xa0\xf6\xa1\xa0\xc3\x1c*\xd4c\xdc\xb4\xb0k;a\xe6,\xd7\xcc\xa6\xc6\xea\x89\xc6\x0c\xbc\xb3bo,\xdc\xb2\xaf\xcd\xde\xfdT\xe0\xd5L\xb3V\xce3_\x7fmC\xab\x85\xcd\n\x1f@\xcf\xe1w\xd5\xb02\x93\xcf\xa1\x96\xbd \xf8\xe8\xd5,\x8a\x1e?\xb5EvW\xf7\xf3\xf1\xe1\xeb\x88\x8a\xe5\x9d\x02R\xa9\xa9q\x8fBX\x8dL\xe9r\xc7\x1f8[\xee\xe2W\xce\x96K[oAFP(\x0eV\xce\x96K\x08\x00\x95%\x82?s\x02?9[n\xc1 \xcf\x94\x00\xcf\xa4\xe0N\xce\x96{j gF\x10g\x91\x00\xce\xf4\xe0M\xce\x96{J\xb0fJ\xa0fF\x90&g\xcb\xe5l\xb9\x91URr\xd0%g\xcb%\x05X\xe6\x04Wr\xb6\\\xdfa\xd1 \xca\x84\x00JJ\x9e\xd5\x94\xc0I\xce\x96\x9b\x93p6\x16\x18\xc9\xd9r\xe9\x01\x90\xc4\xe0GJ\xe0#-\xe8\x91\xb3\xe5Bf`cBP#g\xcb-\x10\xb4\x18\x0dX\xcc\x0dV\xf4\xbe79[\xee\x91p\xb6\\\xce\x96\xbb\x90\x12\x99K\xa9\x81\x84\xc9A\x84I\x01\x84\x9c-W\xe6\x05\nr\xb6\\#\xe6-<\x11\xbe\xd3Z\xe9\x85\x9a_\xbf?\x0ea\x9b}F\xeb\xc07\xd1T\x97[\xdczB\xd7\xea`6\xcb9\xaer\xe2\" \xebJ\x8a\x0b\xea\xbd\xf1=\x9ek\xfd\xad\x13\xff8\xd4\x9d\xd8|\x0fW\xd5v\xe6\x1dt\xeeU\x98&O~\xf1\xb3O\xe2\xc1\xd7\xf4\x85\xa7Y\xbb\x96+=\xebwB\x1e\xba\x06\xb3\x9c\xa2\xb7S{\xf7F?\xb4\xda\xbf\xbb^lt\xa9\x1e\x0c\x1d\x8d\xf9\x96\xdf\x0eo\xe2\xb6Q\x1f\xf8\xed\xd5U/T\x00\xc9\xbc\xb9`\xf9\x1f\xac\xc4\xbcP\xc6Z\x9e\xdd\x1c\x87\x11\xb1}>;.vRtg\x94)\x9b\xc3Nt\xf5\xda\xfcMM\x10\x1a\xdf\xc0\xad\xac\x1b\xd1\x18\xc3\x1f\x9aq\xf7p\xb1\xd0\xbeP\xda\xb6\xa2\xef'\x13\xe2~\xdb\xa1\x1fL\xfdI$\xdas\xae\xfe\x91\x8d\xbb\xf0\xd4;\xcc\xbb\xadw5\xd5\xba\xeaX\x83@\xf8\x1c\xf8\xb8\xb3l\x8f`\xcd\x86\x1c\xb6\x0b\x8f3\xee#\xd9\x7f\xba\xb8\x82\xad\xb8\x92\x06x\xd0\x04\x84Y\xcd\xaaMq|@\xf0\"\x83\x9d/\x1f\x10v\xab\xf6\xfb/hE\x1bC\x98\xce\x0f\xd9\xd2:c\xb0\xa8\x1a\xa1-\xc8\xee `\xf8\x8f\xba\xd9\xd4kE\xa9i\xf7\x98\xb6\xa0:P\x0f$[]\xdd\xac\xb7\x87\xcdb\xadZ\xe1UF\xff\xe4\xe2\x8e)o\xb7\xb5m>L\x9b3\xaag\xa6\xec\xa7\x8b~q\xb7\x16]P\xcb\xfbN\xf4\x9aKP\x8f\xd7\xf4<\x0e\x8f\xdc\x99~\x9a\xea\xeb\xa6]\x12\xb2\xe6i\x9c_\x02-s\xea\x8d]\x06\x8a;n`'nE7;5t\xf3\xf4\xd1\xcb\x1bW[\x18K'\xdcO\xc2L\xcfp\x0d\xa1\x99\xcbn#\xba\xe5\xa7\x84\x93\xfb\xfd]Qk\xe4\xe7\xaa?\xffy\xfco\x95\xeb\xfb\x9f\xa8&\x98\xbc~\xcc]o\xa1\x83\xcdU\xab\x86\x1e\xbe\x9b\xa7\x1ft\xaeps\xf3\xdd\x19\xe1\xbf2}~\xea \xe1} J\x16\x14GK\xeb\x1eu\xa9P|\x12\xa5\x13\xba\xa7\xa7s\xa7%s\x0fZ\x13\xa2\x16\x05\x02\xa5C\xb0(\x90\xad\n\xb9\xacN@_R\xfa\xf6\xa2\xbcN\x94\xd8)\xcd\xec\xd0\xa9\x9dB\xdcN\x1e\xb9\x13P\x97\x98\xb0\xfdDz\xa74\xbf\x93H\xf0\x14fx\xd2(\x9eD\x8e'4\x86G\xc2\x87J\xf2\x14fyH4OA\x9e\xe7T\xa2'\x8b\xe9)D\xf5\xe4p=\x01e\xe4\x94\xec\x8f\xc0\xf6<\x1e\xdd\xf3(|O\x1a\xe1S\x9c\xf1\xa1R>E9\x1f:\xe9\x93\xcc\xfa\xa4\xd3>\xd1\xa9\x90\x96|\xfdd\xe2'\x9ax\x9d\xb4\xa0\"p?)\xab\xaed\xf6'\xf4\x12$\xa7[\xa7\xb5\xaf \x01\x94\xc2\x00\x15\xa6\x80\xf28\xa0\xd0\x08\"\xa5X\xcfd\x81<\xda$)\xbdz\x19\x1e\x88\x0c\xb5\x10\x98\xa0$*(\x96e7\x87\x0c\x8a\xe9\xf4\xfa\xc7\n\xf1A\xe9\xc6\xa43B\xb1\xbeepB\x99\xa4P8\xb3s\x9c\x16*\xcb\x0b\x95!\x86\x08c\xe3dj\x88\xcc\x0d\xd1\xc8!*;D\x188\xe9\xfcP\nA\x14L\x94^\x84\"J\xe4\x88\xf2H\xa2$\x96(f\xf4pr\xf4\xc8\xb9t\xa6\xa8\x1cU\x14m\x94\xf7\xf9)\xc7\x16\x11\xe8\xa2|\xbe\xc8\xa3NFS\xa1\x17e\x8cb\x94Q&g\xe4\xd1\x15O\x81\x1eg\x8d\"\xe9\xcfK\xf3F\xc5\x89#?sT\x92:\xa2pG\xe9\xe4Q\x12{\x94A\x1f\xa5\xf2G\x91\x94\xe6\xe1\xd6Q\x89\x10*\x85\x94\xc1!%\x92H\x81\xee\xe6\xd0H\x1eU\x84$\xe69DR`\xc8\xc7\x13\x98\x17\xa4\x92\xa2\xc9\xcb\x1f\x83L*5\x16\x13\xe8\xa4\x14>\xc9\xbd<\x08%&\x97No\xb3-\xb4]\x80\x9c\x94\xe4*\xf5\xb8G\x1f5!y(\x1d9\xad\xe5Y\xa9\xc8\x93\x13\x91Gw\x8dBI\xc8SS\x90'% OK?NN>\x9e\x91z<\x94x5\xe58%\xe18-\xddx\xa1\x0e\x95J4NO3n\xb7\xeb\xa4\x86\x8fG\x9d\x94`<\x92?T\x9e\xeec\x8f&\x16\x8f\xdeJ [\x05\n\xa6\x14\x8ffV\x8d\xa7\x13/\xdc\xb3\xc2\x89\xc4\xc9i\xc4\xa3I\xc4\xd3\xfbyj\x02qz\xfa\xf0\xf4\xb6\x05\xefA\xb1\xc4\xe1\xd4\xb4\xe1\xd1\xa4\xe1\xe9\x1d\xccN\x18NK\x17\x1emP<\xb5$\xed~\x94L\x13~J\x92pJ\x8ap\xb2Q\xc2\xc9ZS\x0d\x93\x92\x1a\x9c\xf2\x96\x00rb\xf0XZ\xf0YONO\n^\xe0EEO\x07N\xbb\x0b\x90\x9e\n\x1c\xd3}\x07\xf4\x9d\x94\x085`(#\\\xa8H\xb0Pz\xa8\x10\xa7\x00>%D(%@\xa8px\x90$\x05\x07\x15\x0c\x0d\xa2\x06\x06\xc9\xb4\xb0\xa0\xd4\xa0 N\x01<\x93\xe40 N\x01L\n\xfe\xc9 \xfd\x01N\x01\xec\x91h\xb8OB\xb0\x0f%ylJ\xa0\x0f\xa7\x00\xce\xc9\xa2\x1b\x0b\xec\xe1\x14\xc0\xf4`\x1eb(\x0f%\x90\x87\x16\xc6\xc3)\x80!3p'!l\x87S\x00\x17\x08\xd3\x89\x06\xe9\xe4\x86\xe8x\xdf\x9b\x9c\x02\xf8H8\x050\xa7\x00^H\x89t\xac\xd4\xe0\x9b\xe4\xd0\x9b\xa4\xc0\x1bN\x01,\xf3\x82m8\x05\xb0\x11J\n\xe0y\x92AK\xd5\xecsz~\xd4\x0c\xfc9\xca(8K\x14lON\xb5\xaav;\x9b\x11\xa7d\x8a\xb2;DR\x86\x16L\xa5xn\xf9\x97Qe0\xad\xe2k\xcb\x1bm2,\x1a\xa7\xac7\xc1\xa2\xe9\xb9o[\x02}\xd6\xd5\xd6\x04\x17A\xd5\xe0V\x13\xe2\x1b\xcfqG\x0e\x0d\x89[G\xeb\xb6\xe9\x0f\xc3\xeb\x1bn\xea\xeb\x9b%8`\xfb\x99\xaf\xab\x1e\xb1\x92Y\x1da|\xa3\xd4=\xd4\x8dv\xd2c\xa2-\xd3Rw\nH\xab\xf3\xfa\xb8'\x9b\x0dr\xba\xab+G\x1b\x8d\xc8/\xe0\x9e\x8cQY\xd1\x0b\x00\xe1\"0\x8b\xb1 \xe6\xaeD!\xec\x08\x02qcm:vq}C\x85\x99L\x94\xf3\x8c\x964]\xfe\x85\xfe\xfc\xb9\xfe\xfc\xdd=\xba\xfe \xdd%@\xc5\xa1 -\x94\x9c>\xce\xa2\xb1\xf4\xbav\x84\xfa\xf4\x8f\x9dX\x8b\xfa\xd6\xcd\x1e\x1e)\x0c\x18m\x9aM\xa6\xa5\x04ZL\x111\xc8Fap\xdb\xcd0[]>\xf8\xf1-\x80j\xad`>\x9d\xf8\xd8\xff\x86n\xef\x1a\xfc\xc6k\x1b1\x0d+\xedsP^\xb7v]W#\xde\x13\xbaS\xb767\xd3^\x0d\x1a\xfd\xd7\x8d\xdc\xd2\xcbj[5\xeb\xc8\x86}\x81)\xa1i\xbd\xe1\x9a@\x1d3\xf8\xb69Q\x0du\x94\xbcj\xeb\xc6\xa2\xe8\xd4\x80\x98\xc8\xab\xa6\xdd\x99W\xdap\x03\xabF7.\xe4\xcd\xf9\xf1\xed\xc77\xdf\xab\xafBMW\x8d/\xc3\xaa\x81\x8bF\xea\x85\xe7\xe8w\xe9\x83\x83@\xafJ5U\xe4\x7f\\MtX?.t\x86Ax\xdd^\xb7j\xc9\x97\xeb\xc5\x98\x1e\"\x9b\x8d\x1a\xaep[mU\x02\xfd\xd6~\xd0\xc4\xfdZ\xec1C\xbfS]--\x8f\x88\xbb7z\xa4.\x97\xe0zr\xd0\xb6\xeb\xb1:~\x7f\xa8\xa5Ix\xeeT\xb6\xde\xaa,\xff\xe3+zi\x86i\xc9r<\xdcf\xe6\xb1\xd66\xf6\x8at\x96d]\x7f\xda\x1f\xaf9P\x82\xcfX\xf8\xe92\xc5\"\xfc@\x12 %\xf6\xfa\xdaf]\xfd\x1f\xdf\xc32\x96\xac\xd0/\x9e\xb1z\x05\xec\xab\xbeG\xff\xba]\xd1\x1f\x7f\xf7(\xc3\xd5\xa6\x8c\x94\xb7\xb8\x90\xd6w\x9f\xaa$\x10H\xf2\xd6 \xe5\xedoZ\x1c\x1c\xda\xbb\xef\x1a\xf9\x8a7<\xd1\x98'P\xc5c\xa2}_\xe5\x05\xcb\xfb\xed\xeb\xafmh\xbbf\x81\xe7\xf0\xbbJ%\xb8\x7f\x0e\xb5\xec\x0dg\xd1+\xfa\x153\x13\xa8\xef\x81\xbbz\x11F\xa1;r4\"\xe6\xd4\xa4\xb5l\x8f\x02\x94.E\xe7\xce\xaf\x1ff)Q\x98\xa5,\xf3\xa2g\x96\x92YJ\xb70K\xa9\x84Y\xcaca\x96\x92YJ\x9f0K\xc9,\xa5\x12f)\x99\xa5d\x96\x92YJ\x14f)spDf)\x99\xa5\x9c\x84Y\xcaca\x96\x92YJf)\x99\xa5d\x96\x92YJf)\x99\xa5\xfc\xa5\xb0\x94\xce\"\xdd\xf3\x82\xfa!\xf7\xb3\xf67\x9br\xf1v\x0dnt\x81j\xf7\xde\xe8\x9cV\x1bx\xd7\x8b\x9d.\xd5\xb1a\xaa\x8a9\x9cS\xea\xff?v\xc9\xff\xd9v\x8e\xc3\x88\xd8>\x9f\x1d\x17[)S\xfd\xf6\n\x9a\xc3Nt\xf5\xda\xfcM\xcd\x10:/\x0f\xeee\xe9\n\xee\xe8\"\x1e\xb7\x0f\x97%\xfe\x95\xb6\xed0tF\x13\xe2\x86\xdb\xa1\x1fL\xfdI$\xdas\xae\xfe\x91\x8d\xbbp\xdf;\xcc\xbb\xadw5\xd5\xba\xeaX\xc3E\xf8\xbc\xfa\xce*\xf2\xfa\xd7\x99\xb6=n$\xd9\x7f\xba\xb8\x82\xad\xb8\x92\x86\x82\xd0X\x84Y\xce\xaa]q|@\xf0\"\x83\x9d/\x1f0OY\xb5\xdf\x7fA+\xdal\xc2t~\xc8\x96\xd6\x19\xb0(\xcb?\xfcG\xddl\xea\xb5J5\xa6\xfdc\xda\x82\xea@=\x90luu\xb3\xde\x1e6\x8b\xc5j\x85W\x19\x1d\x94\x8b;\xa6\xdc\xdd\xd6\xbe\xf9\xf0\xba\x99\xa1>3e?]\xf4\x8b\xbb\xb5\xe8\x82Z\xdfw\xa2\xd7`\x82z\xbc\xa6\xe7qx\xe44V\x08\xf5u\xd3.\xd3\x17\x9a\xa7q~ \xb4\xcc\xa97vY\xe1\xc2q\x03;q+\xba\xd9\xa9\xa1\x9b\xa7\x8f^\xde\xb8\xdab[:\xe1~\x12fz\x86k\x08\x9d0\xaf\xdb\x88n\xf9-\xe1L\xcc\xf8\xbb\xa2\xd6x\xa4 \x80\xf3\x9f\xe7\xe0\xf2?\xf1\x1a\xae\xa8\x00\x0b\xac#\xc7\x02L\xcc)\xec\xab\xbas\x02\xf7\xaf\x97\x19\xe5~I\x98\xbd\x0f\\\xc9\x02\xebb\xb0|P5D\xd5C\x1a&Op\xf5\xd0\xfc%\xe6\xc8R\x80|\x14\x8fO\x80\xe3\x0bw\xb2\x1c\x16\x1f\x85\xe2cH|z\xcfN\xc7\xe1i\x86*\x89\xc2\xd3@\xf8t\x0c^\xe3\xee\x1e}\x14\x08>x\x03\x83\x00|\x91\xc7<\x88\xbe\x13\xc6F\x0c{\x8f\xaa\xa0\x8d\x85\xd2\xc0{I\xdc\x9d\x04\xbb\xa7\xa3\xeeq\xc3\xe4c\xeeP\xbbFL\x18r/\x88\xb8\x87\x01\xf7p\xc7\xd5\x82\xc6\xdd\xf3P\xf2\xd3\xa3\xd5\x83\x91\x89\xd8\x9dZ\xc1\xc8\xee\xe2WFvc\xc3r\x12Fv\x19\xd9u\x0b#\xbbJ\x18\xd9=\x16Fv\x19\xd9\xf5 #\xbb\x8c\xec*ad\x97\x91]Fv\x19\xd9Ead7\x87zed\x97\x91\xddI\x18\xd9=\x16Fv\x19\xd9ed\x97\x91]Fv\x19\xd9ed\x97\x91\xdd_\x1e\xb2;GH|m\x9e\x1f5k\xf3D#=r\x9b?\x17\xadu>\x15\xb6]\xc2C.\x84\xcb\xa2\x99\x7f2':\xb0.\xab\xbel\x94\xeb\x1a\x15z\xf9.\xc7\x95\xf4aO\x16\xf4B\x03<\x06\xdb\x15c\x92\xa2\x9bu\x81\xa1\x1e\xc5\x8d\xc2\xe4\x14\x91\x9aJka\"\x10\x15\xa6fD#\xbb\xa0'\xf8\xc4\xfa\xcd'g\x9c\\w\x02\xf1\xc0\x1bQ_\xdf\x9c\x9a4\x12\x80Rw\x1b\x85\xb2 jd\xd1JsG\xf4\xbf\xf0M<\xfca\x9c\x06\x82\xdad\xdb~\x82\xfd\xb6Z;7gQ\xd6\xed\xf0\xd6U\xd7\x0c\x17\xacO\xb6K\xbch}\xa2m\xe6-5\xb694\xf5=\x16\xaf\x1f&C\x9aa&U\x81\xcd\x8d\xa6\x96u\xb5]E\x12\xa2\x02\xdd0)\x9d]\\}\xf6\xaa\xd4\x00\x9e>$\xe0x\x05=\xedn\x0e[\xf4\xeaiD\x10*I2\xc1#u=\xd0\xa7\xf46\xda\xe5\xe3\x0b4\x94\x90\xb4\x11Eg<\xbch\xd6\x9d\xf2\na\xc9\xf7\x10uR\xf7j\x96\xf4\xdf\xae\xa9+\xc3\x04\xd0n7\xabN\\\xad\xd6\x05r\xdcB\xc2t\x15\xcbI\x89\xf2Av\xb5\xca\xd5\xbeo\xfbZ\x0e\xf7\xab\xbe\xb2\xfa\xf8\xcc^\xa9\x0c\x1f<\x97B\xf8\xfd\x93\xa0>7\xdb\xfd\xdeT\xe7\x96\xa2\x1b\xbe\xb71\xeb\xbc\xcf\xcdH}\x9c\x1c\x8b\x9c7C\x1b'\xb6\xb1\xb1\xab\xee\x87^4\x80N\xa5Nl\xc5m\xd5H\xd8 Ym*Y\x11\x90[\xfd\x82\xc4\xa8\x06{\x06\xb7I^}P\x0e\x98\xe8Z4\xf6\xb2U%\xf8\xb7[\xb5\xc9\x02}\xdd\\o\xad\xa5\xc63\x97i\xa7\x86\x0d\xff\xef\xe4v\x87\x89v\xd46-<\x87\x8f\xc1FM\xc5/T(\x86\xd8\xc0\xb6\xee\xe5c\x92\x86\xae\xd3\xcf]\xab\xda\xc5\x81L ja\x02\x91 \xc4I\x98@d\x02q\x12&\x10%\x13\x88na\x02\xd1\x08\x13\x88L 2\x81H\\%1\x818\n\x13\x88\xb60\x81\xc8\x04\xa2C\x98@d\x021f|&\x10\xbd\xe70\x818\x13&\x10\x99@d\x02\x91 \xc4\x99Pi0&\x10\x950\x81\xc8\x04\"\x13\x88\xa7\xb5\xb9$\x81\xe8\x82\x0c\xb5r\x17eh\xed\x80\x8c\xb5\x14\x1d\xee\xd2\xde\xc1\x1bZ\xfa\xd5\x0bsTt\xc4\x85\xf9\xf6\\~)\xd5\xe5]\x06\xd1'\xef\xbf\xb3\x12\xbe\xfeu\xa6m\x8f\x1bI\xf6\x9f.\xae`+\xae\xa4\xa1%4>a\x96\xb3jW\x1c\x1f\x10\xbc\xc8`\xe7\xcb\x07\x10\xd5\xfa\x06\xaa\xfd\xfe\x0bZ\xd1f\x18\xa6\xf3C\xb6\xb4\xce\x18,\xaaFh\xab&\x1a\x18\xfe\xa3n6\xf5\xba\x92b\xf4\x8fi\x0b\xaa\x03\xf5@\xb2\xd5\xd5\xcdz{\xd8,\x16\xab\x15^etP.\xee\x98rw[\xfb\xe6W\xaa\xc2\xbe\x85\x04\xcd\x94\xfdt\xd1/\xee\xd6\xa2\x0bj}\xdf\x89^\x83 \xea\xf1\x9a\x9e\xc7\xe1\x91\xd3\x15\xb6\xa1\xben\xdan\xe1u0O\xe3\xfc\x12h\x99So\xece\xdbn\x85U\xfe\xdbq\x03;q+\xba\xd9\xa9\xa1\x9b\xa7\x8f^\xde\xb8\xdab`:\xe1~\x12fz\x86k\x08M\xceu\x1b\xd1-\xbf%>\xd4\xcdZ|\x0f\x18n\xf3\xa2\xdf|\x82o\xce~\xff\xbb\xa2\xd6\x88\xc5\xf8\x1c\xf6\xd7]\xb5\x11c\x8cO\xb5\xdfok\xb1Y\xed\xb7Us\xfe\xf3`\xc7\x7f\xe2\xe9\xae(\x9e\x97x\xf0\xbbm5%\x06\xaf`\xdf\x89\xdb\xba=\xf4\xdb\x07\xd0\xda@_\x05\x06\xad\xc3#]\xcb^\xdd#g\xfc\x8b\xa5\xf5+\xd3\xe5'\x1a\xed\xe2C\xfd\x83\xee\x8e0u:\xeb\xc7\x1c\xce\xbf\xdc\xb6\xebO\xe6o\x95M\xe9+\xbb\xde\x0d\xcbm\xb4\xdd\xd9\xd10\x8c\x80R\x96\xcdm,JZ\xcc \xae\xf2C\xf9.\xed\xe1\xf0\xfe\xdd\xab\xe5\xa2\x95A(\x06\xa1\xa2^@\x8a#\x0d\x18\x84b\x10\xca{$\x83PJ\x18\x84:\x16\x06\xa1\x18\x84\xf2 \x83P\x0cB)a\x10\x8aA(\x06\xa1\x18\x84Ba\x10*\x87%b\x10\x8aA\xa8I\x18\x84:\x16\x06\xa1\x18\x84b\x10\x8aA(\x06\xa1\x18\x84b\x10\xea\xd7\x0eB\x0d\xffk)\x98}D\xab'Q\xfb\xe2\xecmx\xe3[U\xbe\xbfG\xc2\x9e\x92\xbd\xc7\x07y\xd3v\xb5|\xf0\xfb\x8c\xdf+\x7f9v\xa7Z#\xc0\x80\xdf\xed\xe6\\\xb5\x19\xd96\x9b\xc3Z\x1a\xc7\xb1\xf9j\x9e\x19\xe6\x99\xd3}\xfe\x87g\xfa\xd8\xb9O\xd9(\xff\xca\x18\xe1\x89z\x94\xbd\x19\xfc\xbc\x1bG)6\xd1\xaa0\x03\x08:~\x8da\xe2n_\xed\xe4]X\x92\xfd\xb8\xec\xc7u\x08e\x1f\x10\xd8\x8f\xcb~\\\xef\x91\xec\xc7U\xc2~\xdcca?.\xfbq}\xc2~\\\xf6\xe3*a?.\xfbq\xd9\x8f\xcb~\\\x14\xf6\xe3\xe6\xb8B\xd9\x8f\xcb~\xdcI\xd8\x8f{,\xec\xc7e?.\xfbq\xd9\x8f\xcb~\\\xf6\xe3\xb2\x1f\xf7\xd7\xe0\xc7M\xf5\x89\xea\x1d\x1f\x15Q\xebw\x8b\xbe\xc2\xa3f\xa1\xb4x\xcb\xd4\xdfg\x11\xb4\xce\xa8YK\x81\xfe\xf9\xc9\xfa8'K\xd82k\x8arj\xd7q\x13L\x12tyE\nXT\xbeRT\xd1]\x1e\xca6 \xc0\x07!-\xff\xbd\x0e\xa15\xfd\xd1\x1e'\xf5\x93\x99\x01\xd4\xde\x95g\xb1\x04\xf6\xc9^\x07\x97\xde\xec\x1c\xb7D\xda+y\xa7\x83\xd6\xab\xfd~\x8b\xdf\x9aj\x1b\xa8\xda\xc2\xbf\xb4\xcd\x0b\xad\xd07\xfe\xd7\xednW5\x9b\x1e6\x07e\x8c@\xd3\xd4D\x0e?\x88\xeb\xba\xf9AE,\xe3\x82jZ(\x8dw\xb2\xf6\x04,O\x82 \x05\xaam\xaf\x1c)\xde\xde\xca\x166B\x8a\xb5\x84\xbb\x1b\xa1\xb6\x18\xab\xa9\xcb\xc6\x14\xeb\xaa\x81\x9b\xaa\xd9l\x05Tp]\xdf\n\xdf\xb6\xebxc\x94\x97\xc1wM\xd3 T\xd9\xe1\xa6\x95\x1co\xe5\xf0\xae\xc0\xfa=B\xbar\x03Lb\x1a\xfa|\xcc\x88\xe1\xdf\xd6\xd4.\x8d)m\xc4\xd8\xcb\xba\x87\xf6 _\xb4W/6\x95\x14\x98o\xc1\xb2\xb5G\xdf\xc7z'\x86\x0f\xf5\xff4\x81\xe6\xbe\x0bw\xa2Z\xdf\x0c\xaf$\\TO\xd7U\x0d\x16\xf7\xf5Q\xf5\x1aP\xa4A\xf6\x93E+\xeaF{\xfe^\x0f\xef\xd9u%\xc5\xe6{\xec\xb1r\x87\x8cp \xba5\xd4\xcd\xda\x8cG\x9e\xa9#=\ng\xe7\xc3\xb6\xbd\xae\xd7>\xc3\x8d\xe3\xa0\x13\xbb\xf6\xd6T\x1c\x1dL\xf8\xe1\xf5\x7fy\xb7\x0b.t\xd5\xa8\xb1ph\xd3\xea\xb4)\xcfG\x07\xd18[\xc8\x9b\xae\xbds\x16\x17\x0b\x95\"$\xdf\x01\x7f)\x99\x99\xf5?N\xe5\x03g\xb9 \x8c\x95vz\x0f{/\xbaA\xb3\xfb\x99\xaf\x9b\xab6\xb3\xb9\xb1\xba6j\x83m\xf2\x9bMn\x80q6j\xaeZ\xedh\xd2\xe9V|~\xa6\xb6y\xb1\xbe\xa9\xfcn\xf3\xfe\xb0\xbe\x01\xb5V\xbc\xaeU\xa1\xbb]\xad\x13\x14M%ta\xad\xbc\xe5\xd5A\xb6\xbbJ\xd6\xeb\x80\x1f\xd64\xd0Y\xae\xc8\xbc\x08V\xebm=,3zY\xc9\xe03\x17\xa8\xe1\x15\xe3B\xe2d\x08\xe1>\x01\xf9\xb1\x85\\>$\xa0\xef\xc8E\x10\xd8g*\xcb\x88D)\x91\xd2\x9c\x08\x9d\x14)\xc4\x8a\xe4\xd1\"\x01u\x83A\xc9\xbc\xc8\xc9\xc4Hif$\x91\x1a)\xcc\x8d\xa4\x91#\x89\xecHh\x0c\x8fT \x95\x1e)\xcc\x8f\x90\x08\x92\x82\x0c\xc9\xa9\x14I\x16GR\x88$\xc9aI\x02\xcapY\x14\xa5I\x1e\x85'y<\xa2\xe4Q\x98\x924\xaa\xa48WB%K\x8a\xb2%t\xba$\x99/I'L\xa2S\xe1o\x08\x8cI\x01\xca$\xc2\x99\x10\x17T\x04\xd6$e\xd5\x95\xcc\x9b\x84^\x82\x97\xed\xad \x10'\xd4\xf6\x15\xa4NR\xb8\x93\xc2\xe4I\x1e{\x12\x1aA}\x9c>\xc9\xe6O<\xda\x86\xab\xc5\x08\x94R\x0c\n\x19\xa4 p(I$J\xc49\x9aE\xa3\xc4tz}2\x85\x98\x94tc\xd2\xb9\x94X\xdf2\xd8\x94L:%\xe8\x80'\x10*e\x19\x952\x94\nal\x9cL\xaa\x90Y\x15\x1a\xadB\xe5U\x08\x03'\x9dYI\xa1V\x02\xdcJ!r%\x91]\xc9\xa3W\x92\xf8\x95\x98\xd1\x83\x8fP\xec\\:\xc7R\x8ed\x896\xca\xfb\xfc\x94\xe3Y\x08DK>\xd3\xe2Q\xa7\xb6Z\x03TKa\xae%F\xb6d\xb2-\x1e]\xf8\x0d\x1d\xdaF\x88\xf3-A\xc2\xa5<\xe3R\x9cr\xf1s.%I\x17\n\xeb\x92N\xbb$\xf1.\x19\xc4K*\xf3\x12\xa4^\xc2\x0c\x02\x9dB\xa0\x92/\x19\xecK\"\xfd\x12\xe8n\x0e\x01\xe3Qe\xd1%\xb4G\x82F\xc1\x04\x86|s\x1d\xe6`\x8a\x920\x11\x16\xe6qh\x98Rc1\x81\x88Iab\x96\xcb\x03B\xa6q\x8bS\x89\x87\x9c\xfb2\x8d\xdb\xb4\x0cg\x1a\xe7\x08u\xe7\xef\x1c\xa1n G\xa8s\x84\xfa$E=\x8d)~\xc6$/#G\xa8\x9f\xea[\xcc\xf0,\x16\xf1+\xa6{\x159B\xfd\x14ob\x8a/\xb1\xb0'\x91\xe6G,\xe8E\xa4\xfa\x10\x1d\x0bb\x8eP\x9f\x0b\xc1kH]%%{\x0c9B\x9d\xe4'\xcc\xf1\x12r\x84\xba\xef\xb0\xa8g0\xc1/H\x89mN\xf1 r\x84zN\x90w\xcc\x07\xc8\x11\xeat\xbf\x1f\xd1\xebG\xf1\xf9\xd1<~\x1c\xa1\x0e\x99>\xbe\x04\x0f\x1fG\xa8\x17\xf0\xe8E\xfdy\xb9\xde<\xef{\x93#\xd4\x8f\x84#\xd49B}!%\xa2\x85\xa9~\xbad/]\x92\x8f\x8e#\xd43\xfdr\x1c\xa1n$7B}\xd7n\x0e[\xb1\xd2\xbbO\xbd?H\xfd\xaf\xea\xc0\xbf\xe9\xe3fq\xea\xdb\xbaW\xdb\xc6\xa8\xcb\xecd\xf5\x18\xed\xa8b\xd2\xcc\xbcE\xc8W\xfd;g\x0e\xef\xf9\xd5\xf5\x11O6\xc8\xddiT[\xbe\x84\xdb\xcc\x1f\xe9N\xda/\xd2!\x96\xcd<\x0b\xbd\xee\xaa\xf3\x1c\xdd\xfd\x13\xae\xe9)\xd2?\x17\xdd\xb0\xf5p/\x9b\xfe\xd0/\xc3\xdf\x83\xad\x9c\x0d\x8f\xffqo$\xcd\xc6\xde\xb895\xcc\xb5z\xc0\xe3vf\x7f\xdc\x04\xcfgF\xb4\xf4;J|\x93k1\xce\x94Wa\xf94\xe2F\xb2\x0eP\x17u7\xb5\xd2\xa1\xd0h\x9a\xaf3\x08\x9e\xfd\xf9\xf3\x99\xef\xdc_<\xe7\x8bc\xde\xbf{5\xfa\xf7\x97\xbfE\x8c\xca\x18\xc0\xe2W\xc6\x00b\x03{\x12\xc6\x00\x18\x03p\x0bc\x00J\x18\x038\x16\xc6\x00\x18\x03\xf0 c\x00\x8c\x01(a\x0c\x801\x00\xc6\x00\x18\x03@a\x0c \xc7\x93\xce\x18\x00c\x00\x930\x06p,\x8c\x010\x06\xc0\x18\x00c\x00\x8c\x010\x06\xc0\x18\xc0\xaf\x01\x03\x08\x15\x1c\xd7^\xc3&Pw|\xe1 \xb5\xce@\x1f#\xceTc\xe1\xf1j\xda\xaepxZ\x8f=\xb3\x16\x18\x00\x7f\x11\xd5\xed0\x11\xa8\xdd(\xdcV9J\x06q%\xa4N(<\xbc\xe1\x12x\x03\x00,\x83\xfe\x0fMA\x18\x99\xea\xa0_U\xdb\xden\xaec\xcb$\x15\xa9\x98\xb2\xf2\x9a\x8ecb\xde\xf3\x9f\xd5d\x87y\x92\xff\xe9'-\xac\x8d\x8c\x9f\xb4\xaaWF\xd3\x87A\xd1\xbcH\xc0h]u\x11|f\xd5C\xaav!\xa71\xac\xa6\x05\xd9\x1d\xfa\xe1\xab\xfd\x93\xe8\x1a\xb1\x1d\xd3\xd17\xe2^\xce\xfd\xe6u\x0f*\xcd\xf1\x19\\huj\xa5a\xefe\xf5\xb2\xed\x86\xe7\x1f\x93\x91\xab5\x84\xce\x01=\xd7\xf0U\xac;\xef\xdf\xbdR;\x80z;\xc3\xec\x88m\xc5u\xb5~\xd0\x9d\xb5^\xd2\xca\xf7\xd5\xed\xd7\xc3P\x9crvC\xd3\xdea\xe7/~x\xa5&\xc1Z\xf60L\x8a\x9d\xd8o\xab\xb5\xda[\x9b\x94|\xad6\xf4\xbe??\xbf\xae\xe5\xcd\xe1R=\x9b\xfa~\xd6\x97\xeb\x17\xd7\xed\xf9\xe5\xb6\xbd<\xff\xed\xfa\xdf\xfe\xed\x9b\xea\xb7\xbf\x15\xff~\xf5\xef\xeb\xf5\x1f\xbf\xbb\xfa\xc3o/\xbf\xfb\xed\x1f\xd7\xd5\xbf\xff\xbe\xaa\xfe\xf8\xddZ|\xfb\xed7\x7f\xf8\xe6\x9bo\xcf\xd5\x03=\x9cz\xben;q\x8e \x99\xcfo\xbf=WC\x0f\x9f\xf7\x7f\xfd\xcbw\xbf7\x0b\xfa\x19\xdd\xe2\xb6\x8b>\xf2\xc9R.\xbeq\x9e\xe4R\x8e\xec@j\xb8#\x82\n\xa1\x100\x05\xb7\xa1\xf3q\x05\xcf\x8d[\x1ckc\x0b\xe6o\xcc#,~e\x1e!6\x82'a\x1e\x81y\x04\xb70\x8f\xa0\x84y\x84ca\x1e\x81y\x04\x9f0\x8f\xc0<\x82\x12\xe6\x11\x98G`\x1e\x81y\x04\x14\xe6\x11r\\\xfa\xcc#0\x8f0 \xf3\x08\xc7\xc2<\x02\xf3\x08\xcc#0\x8f\xc0<\x02\xf3\x08\xcc#\xfc\xday\x04\xcb+n\xe9 \xf1\x08G\xbe\xe6\xa9P\xbcr9\x8f\xf5\x86\x87a2\xdc\xb4N\xfc\xe3 \xfa\xb9+B\xbd\xf9\xea\xde8\xfd\xb4\xbaC\xb3\x11\x9d\x1e\x03\xca+\xbe\xf4\xaf+?G\xdb\xcd\xb6\xd3\xea\xe6\xfb\xa5\xf7a\"\x0cdw\x88\x00\x060w\x8d\x8d\x91\xee1\xf0@\xde\x8f\xcc\xc1FL\xfe\xb8}\xdb\x1fC\x05\x1f\xef_\xabC\x00\x8f\xd4\xf3wW5}\xa5>\xa8\x1324\xfc\xd1\x99\xa1\xc1\\@\xff\xf6y\xbc\xd6\xff\x9fN\\}\x0f\xcf\xfe\xf5\xdc\xda&\xd7\xd69\x93\xf7g\xda:g\xa6m\xc6\xd1;\xf9\x8d\xd9\x0d\xbb\xf8\x95\xdd\xb0\xb4m<`7,\xbba\xbdG\xb2\x1bV \xbba\x8f\x85\xdd\xb0\xec\x86\xf5 \xbba\xd9\x0d\xab\x84\xdd\xb0\xec\x86e7,\xbbaQ\xd8\x0d\x9b\xe3\xc9d7,\xbba'a7\xec\xb1\xb0\x1b\x96\xdd\xb0\xec\x86e7,\xbba\xd9\x0d\xcbn\xd8_\xbb\x1b\xf6\xb2\xdd\xd8o\xb8\xba9\xfa\x93\xd7\xa7Y\xc8\xfb%\xefW\x97\x0f\xd2\xe5\xd8 \xeeX\x04\xf7*f{\x01\xe6\x02c\xa0gu\xe7\xf2\x81:\xce\xb9\x14\x95gy\n\x1d\xc5\x7fJ+r\x14>\x88\xee\xb6^\x8b\xb3\x85\x8b\xd4\xc8,\xab\xf5\xfc'\xb7\xffU\x1f\xb4t\x0f\xeb\xcb\x84\x1c\xc4\xe7\xd5\xaenZ\x82\x9b\xf8\xe5p\xdc\xe8+\xae\x1a\xc0?X\xc6\xc2h{\xd1\x0cGl\x00\xcd*[\xf5|\x16\xf3%\xab\x8b\xea\x03>\x8fC9c\xd4*\x93\xae\xfe\xbbwe\xba\xf7\x8e\xdb\xf0\x16\xd5\xac\xff9\xd1\xc9\xcb\x11\x87\x86\x0c\x8d\xbb\x94\x81\xc7nsv\x9b;\x84\xb2\xed\n\xec6g\xb7\xb9\xf7Hv\x9b+a\xb7\xf9\xb1\xb0\xdb\x9c\xdd\xe6>a\xb79\xbb\xcd\x95\xb0\xdb\x9c\xdd\xe6\xec6g\xb79\n\xbb\xcds<\xcf\xec6g\xb7\xf9$\xec6?\x16v\x9b\xb3\xdb\x9c\xdd\xe6\xec6g\xb79\xbb\xcd\xd9m\xcen\xf3/\xed6G\x07$\xee\xa4%9\xa0\x02\xfb\x15I\xfe\xc9\xa8\x07|q\xfa\xe3z'\x93\xdc\xe2\xe8\xbf\x0e:\xc4\xdf\xa8C\xb4\xa7\xfb1\xe2\xa6\xf1\x02\xfa\xb7'\xeb\xe6\xfe\xecp\x86A\x0bl\xe6@\x1d\x90\x86i\xa0uOs\xa2\xeb!\x90\x03i\xb0\xaf\x9c}\xe5\x0e\xa1\xec\xb5\x02\xfb\xca\xd9W\xee=\x92}\xe5J\xd8W~,\xec+g_\xb9O\xd8W\xce\xber%\xec+g_9\xfb\xca\xd9W\x8e\xc2\xbe\xf2\x1cw3\xfb\xca\xd9W> \xfb\xca\x8f\x85}\xe5\xec+g_9\xfb\xca\xd9W\xce\xber\xf6\x95\xb3\xaf\xbc\xa8\xaf\x9c\x9c\xfd\xd9\xf8\x00\x95g\xdaxa3\xfc\xc4\x84\xf0i\xbc\x14FK\x1b\x97\xb1?|Z\x0d5\xd9\xce\xc3\xa8\x8b\xb9\x94\x7fA\xe1\xd3\x9f\x97^\xb0\xccS\xc21\\\x96_`\x8f1{\x8c\x1dB\xd9q\x04\xf6\x18\xb3\xc7\xd8{${\x8c\x95\xb0\xc7\xf8X\xd8c\xcc\x1ec\x9f\xb0\xc7\x98=\xc6J\xd8c\xcc\x1ec\xf6\x18\xb3\xc7\x18\x85=\xc69NW\xf6\x18\xb3\xc7x\x12\xf6\x18\x1f\x0b{\x8c\xd9c\xcc\x1ec\xf6\x18\xb3\xc7\x98=\xc6\xec1f\x8fqQ\x8f\xb1\xd7\x8d\x13\xf3O\x16N\xef\x9fm\xb7\x19>aZ\xe8\xc5\xf0v\x93\x02[\x83\x8d8le\xbd\xdf\xfa\xf6\x92M\x1b\xc7&\xf4\xde-\x90\xd7\xc3jg]I\xb1\xd1Nv\\\x94+o\xfb\xb0\xf2\xd9\xb7{5En\x9e\xc3\xe5A\xaa\x06z{\xbc\xeb\xafW#\xfbR7\xbd\x14\x95\xd7\xd7\x7f)\xd6\x95\xf2\xc2J\xa8\xb6};_\xf7\xff\xb5\xbf\x9eC4\x9eo\x80m{\x9d9VhC\xe1/\xed\xf5\xbca\xdb\xf6z6\xab\xe6\x8e\x08\xc7\x01\xe2V42\x80~\xf8p\x13\x08!'\x10{\x18Qb\xe8 \x185\xde_ &\x1f\xa4\x92\xb2\xab/\x0f\xce\x14 \x93\xc4\xba\x8b\x12\xec4\n\xa1\xeb(\x14\x03\xa0|\x12\x0e\xc2l)$[\xa0\x04\xfdY\x93$h\xac\x9b\x8d\xb8\xa7j\xbcl\xdb\xad\xa8\xfc\xaeN ?+F\xde\x0c\xe3\xf8\xa5\xb9\xcfj\"\x85\xben\xae\xb7b\xb0\xdd\x0b\xdc\x91\xd8Wu\x17\xfa\x00\x18\xa4\xea\xfbv]+\x9f\x0b\xba\x9e\x1a|F|{b\xd4f\xaa\x06\xe2\xeb\xbe\x87j\xf2\xd9\xc3F\xdc\x8a\xed0\x0e\x94\x03\xba\x92\xb2Z\xdfX\xdb\x15^\x85\xf6\x84 \x03[\xa4\x06\x13\xfcS\xdd\xa8\xfd\x94\x1f\xb6\xad\xdel5\xbf\xbc\xba\x11\xebO\x1f\xef\x03\xfb\xd5\x7f\xa9\xa4\xe8\x9e\xdb+\xde\x1ev\xd5\xc3\xf0\x81\xfa\x8f\x83\xe8j\xb1\x81\xc3`\xeda\xb6\xea\x85\x9eT\xdc\x16\xa3\xd9KY\xab\xb7\xfc\x89\xd0o\xeb\xb5\xf2\xea\xa1!\xf1\xe9\xd2\x08\xce\x9d\xe8\x86/\xe5ZJ/\x0e\xb09 \xc4\x85\x93\xa6\xaf\xa7\xd3\\\x1a\x9e5\xedW\xce\x13\x9f(\xc5\xf7A&\xe3\x17T8\x18\x97\xcc\xf9\xc1\xe9\xac\x1f$\xf3~AU\x9aCJb\xfe\xa04\xf7\x07\x89\xec\x1f\xa4\xf2\x7f\xe1\x91=\xb2\x81T\x06\x10Js\x80@c\x01\xa1$\x0f\x08'3\x81\x90\xc7\x05B)6\x10\xb2\xf8\xc0\xf0\xe3P\x0d\xdf\xfeQF\x10\x1e\x87\x13\x84Gd\x05\xe1qxAHd\x06!\x8f\x1b\x8cM\xc14v\x10\xca\xf2\x83\x90\xc0\x10B:G\x08\x19,!a\xca\xfc\x0d\x81'\x84\x12L!P\xbe\xc3\x88\xcb\xb3\xe8&\x14J\xca*.\x993\x0cjS\x0c\"\x815\x84\x84V\x16d\x0e!\x89;\x84\xd2\xec!d\xf2\x87\xe1q\xd5\xc7\x19D\xc8\xe7\x10\xbd\xfa\x86+\xc6XD(\xc6#\x02\x1d\xab\x03\n\x97\x08il\"\xc4\x80\x99LF\x11\x08z\x03\xde\xfaB\xbc\"d\x19\x97\xce-\x02\xa1\x97\x19\xfc\"\xe42\x8c\x10\x06\xb5H,#\x14\xe6\x19\xa1\x10\xd3\x08\xb4\x11s2\xdb\x08t\xbe\x11\x88\x8c#\x909G\xa0\x0d\xa8t\xde\x11\x92\x98G\x08q\x8fP\x8a}\x84T\xfe\x112\x19HH\xe3 \x81p\x13\"\x8fY\xfc|:\x17 \x05\xd9H\xa04-\xf0\x94\x95\xe3$\x81\xc2J\xc2 \xbc\xa4W\xe1p`\x88\x99\x84\xd2\xdc$D\xd9I\xc8\xe5'\xbd\xda\xf0\xdb>\xbc\xcd\x11\xe7(!\xccRB\x16O\xe9U\x15\xe4,!\x97\xb5\xf4j\xd3\xee\x11\xff\xe5\xca1\x97@\xe2.!\x83\xbd\x844\xfe\x12r\x18LH\xe60!<\x8b@\x84\x8d\x83\x04>\x8e\xcadB\x0e\x97 \xa9l&\x84;\x9e\xc3hz\x95Y\x04$\xf5\x91\xa1\xb1\x9a\xc1\x07B\xa1c\x01^\x13\xca2\x9b\x10\xe36!\xccnz\xcf\xc9e:\xa1\xe0\xd8M`;!\x89\xef\x04\xef\x02\x85\xb671\xf3\x0f\x1eC&\xc6\xc78\x1d\xa2^4n]\xc3\x8c\x86h\xce\xcb\xe6\xa1\xf7\xbfi\x9ch\xe4\x1ff\x07\x87\x0b\x8e\x18,\xf1\x94\xbc2\xa3\x0e\x8b\xe1\x9c\xae\xce\xb9af\xc2\xb9a\xa8\xcfS\xbaO\xd9l\xc4y\x15R\xfd\xc9E}\xc9\x9c\x1b\x86s\xc3LR\xd4G\x9c\xe2\x1fN\xf2\x0dsn\x98S\xfd\xc0\x19>\xe0\"\xfe\xdft\xdf/\xe7\x869\xc5\xd7\x9b\xe2\xe7\xcd\xf0\xf1rn\x18\xce\x0d\xc3\xb9a\xa8>\xda\xa2\xfe\xd9\x1c\xdf,\xe7\x86\xf1\x1d\x16\xf5\xc1&\xf8_)YER\xfc\xae\x9c\x1b&'\xbdJ\xcc\xaf\xca\xb9a\xe8\xfeS\xa2\xef\x94\xe27\xa5\xf9L97\x0cd\xfaE\x13|\xa2\x9c\x1b\xa6\x80\xcf3\xea\xef\xcc\xf5uz\xdf\x9b\x9c\x1b\xe6H87\x0c\xe7\x86YH\x89<\x1dT?d\xb2\x0f2\xc9\xff\xc8\xb9a2\xfd\x8c\x9c\x1b\xc6\xc8\x17\xc8\x0dC\xac&29\xf8\xf2\xab\x89\xc8{}\xec\xb58N\x98\xf2g!?\xde\xf7\x18\xa0y%\xe4\xfaf\x98\xe4\xef\xfb\xe1=?\x8b\xa1\x9deC\xb1N\xd2?\x7f\x9e\x84(D\xa3Y\xcd3\x8e\xd1g_M\xad`\x97\xe6L\xd8\xa5I\xdb\x12\x03vi\xb2K\xd3{$\xbb4\x95\xb0K\xf3X\xd8\xa5\xc9.M\x9f\xb0K\x93]\x9aJ\xd8\xa5\xc9.Mvi\xb2K\x13\x85]\x9a9^Avi\xb2Ks\x12vi\x1e\x0b\xbb4\xd9\xa5\xc9.Mvi\xb2K\x93]\x9a\xec\xd2\xfc\xb5\xbb41\xe7\xab\xa5\"\xf4\x19\x8d\x07\x9b\x00\xc3m\xdd\xa3\x13\xc0*\xa8\xa0\x8e0\xdfw\xf6\xa9S\xe6pU\xb4\x01n\xbf9\xfb\xfd\x1f\xcf\xee\xbfW\xaf\xab\x7f\x1cD\xf7`r\x80?\xd7\x83@o\xce\x8f\xbe\x8c\x99:\xb5\xa9\xf0\x95\xabqJ\x97='\xd6\xcd\xf7\xf8G\xebo\x93\x9b\xf6\xaa\xda\xf6\xf68r;\xaf\x1cn+\xcfv\xca\xba\xddn\x85\xb2\xc5\x9f\xf4f\x8a\xca\xbe~d\xf7}u]7\x98\x10\xff\x93x\xf0\xd9\x7f\x11\xec\xf9I<`\x8ad|u\x8d\xa9\xe6\x87\xc5|u=F\x80\x9e5\xe2^\xae\x86\x83\xd5&\xe4\xf5b\xb7N\x19Cg\xfd\x85\xe1\xd0\xa11\x02v\xc3m\x11j\xe7Nm\xf7\x9d\xc1\xdba9\xd16j\x97\xa2\xbd\xba\xea\x85\x1c\xbe\x90\xe6\xcd\x05\xcb\x89\xd2\x0by\xaa\xe1\x8f\xec\xe9\xdc\x92r\x18\x11\xdbG\x1c\xc7\xba3\xca\x94\xcda'\xbazm\xfe\xa6f\xb9u\xd5\x0c\xfd\xc1\xfd\xb8\x1b\xd1\x18\xc3\x1f\x9aq\x0bt1\xbc/\x94\xb6\xad\xe8\xfb\xc9\x84\xb8i\x88 \x96?\x89D{\xce\xd5?\xb2q\x17E$\x1c\xe6\xdd\xd6\xbb\x9aj]u\xac\x99$d+\xab\xed`\xe4K\xdc\xe93\xdb\xfb\xb8=n\x8f`9\x16\x8d\x98i\xdb\xe3f\x98\xfd\xa7\x8b+\xd8\x8a+\xa9\xf7]k\x89\xaf!\xb3$W;\xfb\xf8\x80\xe0E\x06;_>\x80P \xba\xf7\xfb/h\xc5u{h\xe4J\x99\x84hK\xeb\x0cUeA\xa8\xfe\xc9\xee `\xf8\x8f\xba\xd9\xd4\xc3\xa4:\xfa\xf8L\xd9\x8d\xe1@=\x90luu\xb3\xde\x1e6\x8b\x05w\x85W\x19\x9d\xac\x8b;\xa6\xe6>k\xef\x7fxeN}Z\xba\x02~\xbaXV\x8fXtA}\xa3t\xa2\xd7p\x85z\xbc\xa6\xe7qx\xe4\xce\xf4\xd3T_7m\xb7\xf0\x9c\x98\xa7q~ \xb4\xcc\xa97v\x99\xdd\xdeq\x03;q+\xba\xd9\xa9\xa1\x9b\xa7\x8f^\xde\xb8zz\n\xaaN\xb8\x9f\x84\x99\x9e\xe1\x1a\xa2Q>eU\xe6c\xf9=\xe4L!\xf0\xbbG\xb2\x86j\xc1\xea\xd2\xff\xca\xfa\xedb\xeb\xfd\x05\xbc}\xff\xfa\xcd\xfb\xd5\x0f\xffg\xf5\xd3\x8f\x1f\xde\xbdyu\xf1\xa7\x8b7\xaf\xbfw\xfeu\xdc\xe6W{\xf3\x87\x06\x17\xb2}\xdb\xc9\xa9\xf3\xf0v\xf8\xbf\x1f\x1e\xcc\x03?\xdf\xd7\x96-\xbc\xfc\xf0\n\xadX\xf7\xb0\xae\xfa\xa5\xb3\xc0j\xcf\xcb\x0f\xaf\xbe\x9f\xfd\x0b=\xbe\xc3\xd5\xe7\x16\xf7jx\xfdf\xa6b\xf8\xe7\xa8cy\xdbN\xbc!G\xf3\x8eh\x0e\xbb\xf9\x9a\xc4mj\xdf!/?\xbc\xf2\xfd4\xf4cv\x83\x91\x97\n\xab\xb7\x9e\x17\xef\x13\xb2X\xd0\xa8\x85\x87~S\xa8\xff\xd6\xd3\x8el\xd1<\xcf\xa1\x97U7<(\x12\xbe=C\x1f\xba\xb4\\\xe7G\xb9\xa0\xac\x97\x80\xfa:\xd3\xaf\x8f\xe9\x80\"\x96\x8f\xcc\xf8\xfc\xb2\xcc6\xddR\x7f\xc8t\xf8\xd5`\x9e6e\xbf\xa3/\x11.\x1e\x97A\xafk'q\xddnD\xbf\xaf\xd6\x1e\xac zQ\xdd\xb7\x1f\xab\x1d\xaa1\x89\x88\xe0U\xbbq\xed\xdf\xb8\xc9V\x80\x18\xdd\n$K\xcfL0&L\x1a\xae\xe9$\n\xf2\xab\xcb-/4\xcc\xb5\xc3'l\xff\xdc8\xb2\x1c\xa7u\xd5\xdd\xea\xb1\x8b\x94\x0d\xf7\xbd=\xc8\xfda\\\xef[E\x8d\x9e\xf5\xb0m\xaf\xafE\x07_w\xd5\x9d\xbe\xd8o\xce\xe0\xaf\xde\xd2Z~\x9c\xa5i\x9b\x17\x1b!\xd5\xbcZ\xf7\xb2^\xbbz\xbcm\xaf\x9fp\x1d\x9e]\x7f\xbd\x8a\xd6\xc7\x8a\x0fK\x94\xf8\xe0\x84P\x8d:\x94\xe8 \x80Hm8\x94\x98qQ\xbeL\xc94\xa52r\x0c\xd1\x10(\xb4*r(4\xc3\xa0\x10\xcc\x83B6\x12\n\xddT(\xa4\x1as( VC\x89\xd69\xb0%Q;m\xbe\x9a\xcbT)n\xfcPk\xa6\x1b\x0cw]\xb5\xdf\x8b\x0e\xeenD\x17\xc2#'\x19&\xc0O\xe2A\xf9Jp\x19\\u\x91\x02\x12F\xb0\xa3\xbd\xd9\xb6V\xeb\xf5\xea\x0eg\xf9\x80k:\xb9\xe7\x1f\xd4u0:\xc7\xf4Z4\xb3zjI\x1dW`\xf80\xef\x8f\xcfE\xac\xbff\x0b\xfe\x93x8\x9f*\xf2i\xb0\xbc\xea\xc4\xd2\x14\x11uTC\xa5\x98)\xbd\xf0\\P\x9d.Jg\xca\xcf\xf5\xed.2(\x82e\xe7 \xa13/\x7fxu\xf1WtH\xfd\xa5\xbd\x9e\x86\xf9`\xe3\xc3Z\x1e:a:\xa9R\x926X\xc01\xc0\x17\xcb{\xa5s\xf4rm\xdbkw\x1bi-\xa4\xae\x1f\x86\xc9`\x83K\x07\x7f\xa91\xd2\x1a\xc1]\xca\x1a(\x13\xce\xfc#d\xf2\xad[5\x18M\x0bim)V\xaa\x9a\xb8D}9+\xd3\xac+\xb5\x1b2\xfa\xf8\xbb\xcd\x96B\xf5\xa5\xb3\x1aj\xcaH\xc3\xe5C\xac\x99\xd2\xb3\xb8\x8a\xbe4\xe3\xafI\x19-\xa3\x18\xb5\x02\x90\x9f\x0b\xc8\x8d\x0c\x0b\xe8K*\x9fX4:,\x1a\x1fV:B\x8c\x1e#V(J,/N,\xa0.\xb1`\xe2\x89\xb1b\xa5\xa3\xc5\x12\xe3\xc5\nG\x8c\xa5\xc5\x8c%F\x8d\x85\xc6\xf0\x18OF\x8d\x1b+\x1c9F\x8a\x1d+\x18=vj\xfcXV\x04Y\xa1\x18\xb2\x9c(\xb2\x802rI\xc4G\x88${\xbcX\xb2G\x89&K\x8b'+\x1eQF\x8d)+\x1aUF\x8f+\xc3eDBdYzlYt*\xa4\x15?<9\xbe,\xba!@ZP\x11\xa2\xccRV]\xc9\x91f\xa1\x97 \xb9\xdc!\xad}\x05\xe3\xcdR\"\xce\n\xc7\x9c\xe5E\x9d\x85F\x10\xa9\xc4af\xe4\x99G\x9b$\x957,\x13}F\x0e\xa1\"D\xa0%\xc5\xa0\xc5\xaa\\\xe5\xc4\xa1\xc5tzi\xecB\xd1h\xe9\xc6\xa4G\xa4\xc5\xfa\x96\x11\x95\x96\x19\x97\x16\xae\xac\x16\x8fM+\x1b\x9dV&>\x8d06N\x8eQ#G\xa9\xd1\xe2\xd4\xa8\x91j\x84\x81\x93\x1e\xad\x96\x12\xaf\x16,TX$f-1j-/n-)r-f\xf4pq\xc2\xc8\xb9\xf4\x08\xb6r1l\xd1Fy\x9f\x9fr\x91l\x84X\xb6\xfch6\x8f:\x19-EX4\xa2-\x16\xd3\x96\x19\xd5\xe6\xd1\x15/A\x18\x8fl\x8b\x94\x1f,\x1d\xddV<\xbe\xcd\x1f\xe1V2\xc6\x8d\x12\xe5\x96\x1e\xe7\x96\x14\xe9\x96\x11\xeb\x96\x1a\xed\x16))\x18n\x1d5\xfe\x88\x1a\xf3\x96\x11\xf5\x96\x18\xf7\x16\xe8nN\xec\x9bG\x15\xa1\x88`N\xfc[`\xc8\xc7\x0b\x08\x16\x8c\x81\x8b\x16\x0f|\x8c8\xb8Rc1!\x16.%\x1a\xce\xbd<\x90\xf5N\xf4\xb2\xda\xed3\xfdd\xb4}\x80\x8f\xf5\xe4\x9e\xd8w\xe2\xb6n\x0f=\xb2~g\xf0\xa7\xb6\xd3\xc0_\x0f\xff_\xf8\xf69\xd4\xf2Y\x1f\xb8\xb3w\xeaX5\xfc7u5\xcc\xd5\xbe[\xa2fP\xd3?\x93\x94E\xef\x92\xdc\xb6r\xfa\n\xc7\x96\xfc\xa5\xea\xe5\xabv\xb7\xab\xa5o\xba\x9d\x9a\n\xff\xf1\x1f\xf0\xeds\xef\xebt\xe8\xc1\xf0m\xde\xd7\xbdj\x81Ka\x08S\x92O\x80\xfe\x92\x11\x10):4\x80\x0c\x1f\xc5\xba\x8bB\x00\x8e\x08]G\xa1\x18\x00\x85\x84\x17\x91l\x81BD\x8a\x124F\x11=\x14\xd4\xb8\x0ckq \xed\x996\xa2\xf8\x92 LRA\x85}\xdd\\o\x15Y\xf4b\x02fbuN\xab\xbeo\xd7\xb5\xda\xcd\xd25\x9a\xe7\xe9w\x97Bm&\x020\xcaS\xd2\xdb\xb4\x06l\xc4\xad\xd8\x0e\xe3@\xb9\x01*)\x15\xf4?.\xcf\xbc\n-|\x02d\xe0\x13\xd2\x00\xb6\x7f\xaa\x1b\xb5\x86\xfcA\xc1\xcd\xc3\xab\xd9\xfc\xf2\xeaF\xac?}\xbc\x0f|\xdf\xff\xa5\x92\xa2{nS\x04=\xec\x90\xd8\xf8\xc7At\xc3g\x00FX\xca\x1b\xd1\x0b=\xa9\x9c\xb2e\xabI\xa2\x11\xbc\xd1\xb4\x94\x8e.6`\x10~e\xadE\xaf\xae\xed[e\xd8\xec\x83\xf2\x8axgL\xbb\xf5&J\x0f\xe4M;\xfc\xd1}Il\x97G\x9d~\x95\xf7:\xa3H\xeb\xff\xb23\xda\xaf\xbav\xa7:Z5R\x9c\xc1\xdfoD'\xaa\x1e\xfe\xd2^/\n\xe1b\x1b}c9\xe4*\xb1\x16\xfe;!\xabM%\xab\xe7\xe3\xf5\xd5\x87\xde\xbc\x8b\xf1\xee%V\xd5\xfd\xed\xd9\xb7\xdf>\x1f\xfe\xe3\xf7g\xdf\xa9\xff\xff\xee\xe8\xec\xf8\x18\xf9x?r\xe3\x118\xab\x13[q[5\x12\xe4\xbdB\xc9=\x1f\xc4\xc6\x16\xca\x19\xe8\xea\x8f\xac\xae{\x0b\xb3\xc3o_\x9d*\x06\xb6\xed\xf50\xe5\xa8\xc5\xe1F\xac\xdb\x8d\xd8\xccG\x7f(\xfc\n\xec\xe0\x8eS\xea\x07\xdb\x91%\\?\x98\x93mG\xdf\xdd\xf1\xe7\x0c%\x0b\xa9\xe2d\xdb\x14\x90\xaa\x08F\x95\x03Qq\xb2\xed\x82\xe8T\n8\x95\x84Mq\xb2\xedSa\xa9\x0cT\xaa\x08(\x95\x8eIq\xb2\xedS\xf0\xa8\x148\xaa0\x1aE\x03\xa3\nbQT(\xca\xb1\xc3\xc7\xc9\xb6\xe7B\xc0\xa0\xa8\xab\xa4d\x04\x8a\x93m\x93\xc0\xa7\x1c\xec\x89\x93m\xfb\x0e\x8b\xa2N \xa0\x13%Ms\n\xe4\xc4\xc9\xb6s\xf2U\xc7\xa0&N\xb6M\x07\x99\x88\x18\x13\x05b\xa2!L\x9cl\x1b2\xa1\xa5\x04d\x89\x93m\x17@\x94\xa2\x80R.\x9e\xe4}or\xb2\xed#\xe1d\xdb\x9cl{!%\x12\x1fS\xc1\xa3d\xec( :\xe2d\xdb\x99\xa0\x11'\xdb6BI\xb6]\xb8~\xb0\xd7\x8d\x13\xcc\x90\xa6\xf2n$9\x9f\"{\x15\xb3\xbd\x00s\x81\xd1\x8bX\xdd\x85R\x00\xec\x02\xbe5O[\x8e\xd3^\xa2\xbc\x80\x1f\xde\xbf}\xf9\xfa\xd5\xcb\x0f\x1fW\x7f}\xfb\xfa\x8d7\x05\xa6\xe7\xf0\x1f\xfe\xf2\xf6\xd5\x7fQ\x0e\xfc\xf0\x7f~|E9\xee\xa5\xf3\xc01\x97fBk\xe3\xbb-\xa3\x03\xf6\xaf\xedFXYT\x95\xefbL\xf57X\xdb\xe3\xc9\x05\x9d\xedp\xe1\xcf\x85\xf7\xef^\xb9\x1eF\xe3\xe4u=\x0e\xa1\x1b\xf1=\xfc_\xd1\xb5\x1a\x8aQ\xf3\xc1\xd0$\x95\x1e\xd53\x95\xb9\xef\xd3\xf7\xf0\xfa\xcd\xbb\xf7o^\xbd\xfc8\xe8\x1cVa\x8e\x9b4f\x94w\x19\xcc\xa1\xd4\xec\x87\xea\xcd\x1d\x9d\xbf\xe2F\xc0\x87\xd7\xff\x85\x80\x84\xceZ\xef\xd0\xd76wU\xb7qo\x15:G\xd0\xd1\x00P-\x9e\x90\x02i\xe5hT\xbe\xc6\xc1P*\xbf\x0f\xce\xd5[\x95b\xfc\xae\xaa\x9dQ\xce\x83i+\xd0x\xcd\x94\x9dfr\xea\x0f\xabWZc_:[\xfb2\xa7\xb9\x8e\xebaR\xd3\x1e\xea\x9d\xc2\x19\xa5X6+<\xf6g\xfc\x82\xca\x8e2\xe1\x0b\xf8O\x99D/h%\xcbqm\xa5\xff\xd4\xbf\xa4V_?W\x8c\xe5\xf9\xcf\x88O\xfe\x13O\xf5\x14cW\x9c\xd4\xdfky\xf3\xf1\xbe\x1f\x0b\xb2W:7\xa4\xda\xfc\xd4\xa4\x07\xc8\xfbq\xc4\xcd\xec\xf4\xcc\xc9\xbf|w\xf6[S\x03}Y\xca\xdd\xbe\xa4>\xe4\xf3d\xf9\xa4\x97s\xb7\x9b\xc8%\xdd\x950e\xc2\x94\xc9$L\x990e2 S&\x92)\x13\xb70eb\x84)\x13\xa6L\x982!\xae\x92\x982\x19\x85)\x13[\x982a\xca\xc4!L\x990e\x123>S&\xdes\x982\x99 S&L\x990e\xc2\x94\xc9L\xa8\x1e\x7f\xa6L\x940e\xf2k\xa0L\x8e\xaa\xc7\xcd>\xa3u\xfe\x16\xed%\xd5\xff\xd2\x93\x1fz\x18M\xf1M{\x16\xaa\x9b\xef\x97\xfe\x00/\xaa\xe2\xd9\x95pW\x94\xe0z\xe8\xf4\x82\x8f\xe0\xdb\xcf\xe1z\xe8e\x8d\x1b\xaf\xe4\xcd%^KX\x91\xeb\xa1s=\xf4_f=\xf4d\xfc\xe7\xe7\x9b\xaa\xbf c?\x1f\xef-\xd8G\xde\x0f\xcf\xa8]\x95u\x89\xec|\xe6r\xbctPgJ%\xc3x\x0e\xe39\x8c\xe7ha<\x87\xf1\x9cI\x18\xcf\x91\x8c\xe7\xb8\x85\xf1\x1c#\x8c\xe70\x9e\xc3x\x0eq\x95\xc4x\xce(\x8c\xe7\xd8\xc2x\x0e\xe39\x0ea<\x87\xf1\x9c\x98\xf1\x19\xcf\xf1\x9e\xc3x\xceL\x18\xcfa<\x87\xf1\x1c\xc6sfBE%\x18\xcfQ\xc2x\xce\xaf\x02\xcf\xa9z{\x8a\x9a\xc39U\x7f3\x92\x02\xf7\xf8O\x83\xe3<\x07\xd1`\xd4\xbf\x1aa7\xe2^?\xc4\x059\x1d\x9f[\xd3\xda\x96\x1d~\x16\xf2Ft\xbb\xba\x91gWB\xec\xaa\xee\x93\x90g\xb7\xdf\x9e\xbd\x1bz\xad\xcf?\xf2.\x1d\xfb\x93\x9avuY\xf5bu%\xac\x1d\x14\xe9t=\xcbZn\xc5b\x8f\xc1:}x%\xae\xf5K\xe5\xcd\xc5\xbb\x17\xdf~\xf7\xdd\xbf\xab\xedL\x18~\x94-|\x03_7Bl\xf4\x0e\xd77\xb0\xef\xd0Ykd]m\xb7\xbdY\xec\x19\xad+\xdc\xca[mD\xd3\xee\xea\xa6\x92\xb6\xcbP:=\x7fn\xc6\xc9\x8f0\x05.\x05\x97\xed\xa1\xd1\xcfd\xb5S@\x82\xf2A\x98^\xad+\xb3\x89i\xeb\x13\xf2N\x88\x06A\xaeq\xcbJ\x0c\xb3`\xbd\xae\xe5\xc3jw\xd8\xcaz\xbf\xadE\x89\xae\xccn\x87\xf3\"v'v\xd5}\xbd;\xec\xe0\xba\xea5\x12S5\xd6\xdd\x1aZl\xa9\xdbU3\xe7\xc9Mu;nA\x89\xa6\xba\xdc\x8a\x15\xa2k\xcbn,v\xdb\x92{a\xeb\x9e\xd2\x9bH=M\" \xa7\x7f]\xdc\x8e\xed\xfa\xb0Us\x89\xfd8\xf6Z\xe3\x987\xc47\xe2\x17\xed\x9e\xb5\xd0\x1e\xe6\x0b\x8b\x8d\xf7xW7\xab\xeb\xaa_\xa9\x91\x1dQ\xeez\x9af\xe7\x8f\x1dW\xf7\xadn\xc6\xfb\x86\xbfN\xd9{\xd0\xff\xaf\xde{b6\xe9\xd8\xf5\x9a\x16-\xf4\x0fAw3\xff\xc7\xd5L\xcf\x10\xb3\x9a\xaa\xb6v\xd1%\xb0\xbe\xa9\xba\xeb\x99C@\xb6\xd0\x8bf#:\xed\xf5\x80\xb6\x99\xc6\xe5W\xd6\xc5qJ\x9b\xd9\xe3\xcd\xdf\xfe\n\xbbvs\xd8\nk\x9a\xf7O\x8a\xff\xffa\xee\xfe\xa1\xea\xc5\x9f\xc4\x08$\x92\xa7H\xe2h\xd1\x8d\x1d\xc7I=N\x85\xb3\x99P\x1d?\x1bY\xae\xc6\x8d)y\\*\xceb\x1d\x1d\x06\xe5\x9f\xab>\xb9\xa7\xd7U\x9f\xf5(\xeb\xae\x0f7oL\xfc\xa3\xc9!|X\xaf\xb5\x1b\xd1\xd1\xefE[\xc7\x8e\x8f'NN\x91\n\xae\xeb[\xd1\xe8G?f\x05\x1c5\xc96\xd8[\xef\xcf\xa3&\xef\xed\x91\x88+\xd2\xdb\xdd\xf1@<[\x18q\xc1w\xb8\xa9\x0e\xe7\x9b\x18\xbcoc\xf0\xcc!P\xf8\xad\x0c\xcb73P\xdf\xce\xe0}\xad\x81w$A\xd4\xa3q\xda\xdbz\xd91|w//\xe1|\x81C\xfc%\x0e\x8f\xd2\xe3\xd3^\xea\xcb\xbe\xa9\xc7j\xf1b\x87\xc5\xcb\x1d\xfc/x\x08\xb9\xd4\xb2{\x98\xf9\xc2?\x1e\xa6\xe6\xf5\xefx\xe9\x83s*\x87P\x7f\x92\x17\x00\xe0_\x04\x04/\xe4{\x90O]\x10,\xed,o\\\x8b\x02\x88,\x0c\x80\xd0\xf4\xa3\xa2v\x85\x16 @Z(@\xd6b\xc17,\x1d\xaf\x8f\x99\xbe\xe3\xa2|c\xf4\xc2\xfd\xb9\xb85;\x0e\xf3\xf7\xc1\xf2\xa3\xf7e\xf3@~'\xc9#\xcc/\xbe^\x9d\x8d\xa5\\xo\xb1\xdb\xe0\xc6\xf5r\x00\xbdc\x10/\x0b\xbd\x0b v\xae\xbd`\x02T\x97\x89\xd1\xd9\xb8\x9c\xa5m\xe9_NF\xe5\xb2\xe0\xb8\x05\x0477\xcal\xe2\xcf\x01\xe0\x16\xa0\xdb\\\xbb\xad<\x17r\xf3\xc3l9\xf8\x9a\x1bS;\x01L#\xa1h4\xe4,\x132\xcb\xc5\xca\\\xf8X\x11`\xac\x1c\"V\x04\n\x0bc`y\xe0\x97\xba\xcb.\xc0+\x1d\xe9\n\xa0[2\x06k\xe5\xe2YN\x0c+\x03\xbcZ\xa0V\xc1o\xc4\x19N\xe5\x7f7e\"S\x13\x1a\xb5\xb4\xdfW\xfe\xeb\xe5\x81P\x0e\xe8I\xeb\x1b\xd1\xa7\x13a\xa7\x13\xf0&\x17\xcat\x02\xbc\xe4\x00\x95r\xd1$/O\xe3\xc0\x8f\x82\xc0\xd1\xdc\xe7M\x83\x8a\xe6\xe7\xfcs\xd9\x97dT(\xd6\x99\x10\x0e\xe4n\x7f\x10\xf9!B>6p\xe0\x02yNCw\xf2`\x9d#[g\x009^\x04\xc7\x0d\xdd\xf80\x9b#cPP\x9a\x10oT\xe8\x89\x1beG\xfa|Q\xa0\xe5\xb6\xcfPN\xd8D3\n\x8am\xa5\xa1dn\xa8\x8d\xad)\xb6\xad\x86Rds\x0d\xa5\xdc\x16\x1bJ\x91\x8d6\x14J\xd4e\xfe\xa6\xdb\xf1,\xea\x8d\xb2\xda\x86&\n!\x9a\xcf\x19\xfe\xe6\xb8\xac\xf3\xb8x\xb4^\xfe\xa6'\x8a\xa7y\xb3\xbf\x15\xdb\x06E)\xb8\x19\x8aRlK\x14\xa5\xd4\xc6(\x8a?:\xce\x11\x15w\xfaV)J\x91\x0dS\x94r\xdb\xa6(\xf1\xcdS\x14B\x14\x1ba#uv`$j\xcd\x11\xc8\xe5\xba*u\x9b.\x16\x9dF\xd8f\xd5\x07R\xa2\xd1\x16\x8d/\xb5\xf1\x8aRp\xfb\x15\xa5\xcc&,J\x99\xadX\x94S\xee7!2,\x1e\x11\xf6\xcf\x19\".nwg\xb7\xdf\x9e\xbd\xba\xa9\xea\xe6U\xdb\\\xd5\xd7\xe4M\xda\x9bv'T\x15\xe3\x95\xe2=#\x00\x84&\x11\x17'A\x7fW\xcb\xf5\x0d|=\xbc=\x9aa\xd1\xd7}z\x0e\xdf\x0c\x0b\x9bm'\xaa\xcd\xc3t\x82y7n\xaav5\x1c\x96r\xd5\xd9G\xd0\\\x01\xac\xdb\x0e\xd9E\xdc\"\xf8x#^\xbf|\x0b7U\xb7y1\x1ceZ\x88\x07\xebvZ\xda\x86c\x8e\x9a\xa6\xbfP\x96\x8d\xa3\x04\x8f-u\x8c\x90\xe5\xdd\x8d\xd0\x1f\xce\x02\x9a\xd6\xfa\x0eR\x1f-\xed~\xdf\x9a\xf9\xfa\xf5\xcb\xb7\x96\xc2\xb1'\xfao\xa2\xde\x7f\xfb\xdd7\xd9\xd6\x9b\x9d\x8eQ\x18\xdfL_\xdb\xd8\x80?\x8f\xfc\xad\xde\xfd\xb0\x1f\x83\xaf\xd5\xb7\xfe\xf7\xe7\xe7\xd7\xb5\xbc9\\\xaa!\xaez&\x0e\xbb\xf37\x17\xef\xfa\xf3\xba\xef\x0f\xa2?\xff\xf6\xbbo~c.\xf0\x9f\x7f\"\xdd\x00\xdd\xb8\x9b\xaa\xbf\xc9\xef\x9a:\xdb\xba\xb0\x8au\xb4\xe3\x01nD\xb5\x19\xbe\xce\x87\xb5\x00\x96\x8fV\x9b\x82\xc3\xbf-m\x06B\x9e6\x816\xb3f~\x97r\x0b\x9e\xcdN\xd1\xc1/*Ld4\xcd3[\xf9\xbf\xa5+\xff\xb7\x99\xf2\x7f;\xd2{\xf9\xf0\x7f\xabF\xd6\x87]\x8a\xea\x99}\x97\x1a\xe0\x07\xf3\x07\xe7C\xe6\x98\x0cf!l\xa3:c\xd6u\xab\xbeyd\xdd\xb4\xfb\xad\xc8n\xa6S\x0d\xbc\x9a\xfd5\xd2`K\x9biz\xb5\x96\xf5m%\xa7A\xb0W\x14\xf4\xe5\xa1\xbbNi\xe9\xb3\xa3\xd3\xe0\xdd\xf8\x17G\xabz\xb5\x1c\xed\x17\xcd\xff\x8d\xb9\xa9\xf5\xf0\xc7\xcb\xc36\xa5 3c-\x14\xc0\x85\xfew\xd6\x1d5\xca\x8c\x89v\x87\xba[]o\xabu-\xba\xec\x16:\x94\xc0\x9bz\xff\xe2\xb7\xbf\xfb\xb7\xdf\xc3\xd7\x97\xed\xee\x126b[=\xfc&\xd8dK\xe1\x7f\xf8\xef\xe9\xa5\xe8\xb6u\x93\xdd\xd4\xd9\xe9\xf0\x83\xfa\x97\xa3U\xffA0%\xaa2\xed\xda\xb6\xcd\xa6\xcdo\xd7\xect\xf8\x8b\xfaWf\xbbP\x95iW\xd5u\xed\xdd\xc9w\xd8\xa5E\xdd\xe2\xdf\xff\xbf\xec\xbdk\x93\x1c\xb7\x91(\xfa]\xbf\"\x0f#\xee\x92\xb4\x87M\x91\xb2\xe48\xbcG\x1b\xcb\xc7P\x9a5\x1fs8C\xedn8|\x9b\xd5\xdd\xe8\x9e\xda\xe9\xaejUU\xcf\xc3\xbb\xfe\xef7\xf0\xaag\x02H\xa0j\xc6\x94\x17\x19\xe1\xb0\xd8SH$\x12\x89\x04\x90/|\xf7\x87\xef]S\xfc\xe3p7\xe9\x92?\x98\xe4M\x91\xdc\x8e\xa6\x19A\"\xf2g\xbe\x7f\xf6\xddw\x14\x92%\xa1-\x84V\x92w\xac\xd8\xb0y\xc6\xaar\xbfM\xab`\xa2Q4\xf0KZT\x07\xe9\xd2\xbcT7_~\xc9|\xcf?\xd6^Bq\xf8\xcfXu\xdd\x9cC@\xd8\xb0\xb7iU\xd5.\xfb\x92o\x93\x17I:\xaf\xd2\x9d+\xa0V\xd1\xa7\x9bh6\xf1\x96\x0ei\xac\xdb\xd4\xfbF\x92-\x0f\x99G\xa7\xb2\x81O\x97\xb2E\xad\xfa\x8bds`\x1e\x1d\xca\x06>\x1d\xca\x16\xb2C\xdc\x1f\xd0:\xf2w\x13\x83\xd4Y\xac\xf3A\x93\xb6\xa3\x9e\xc9\xf8]\xb9\xba\xdc%\xd5\xc5\xec$\xd3\xae\x19UYP\xfd+\xcd\xc4\xa9\x1d\xf25\xfcn\x91n\xf8w3\xec\xe6q\\V\xe9.\xa9\xd8\xdd\xa6\xe6\x1e\x8c\xb9\xb9\xed\x9cb\xa6hY\xd5\xb9\xb9\xfcbJ\xcd\xe4\xef\xf8\x82\xb0\xe5S\xb0j\x90\n\xbcJ\xaa\x04\xd6E\xbe\x13I\xb3\xda\x0f\x01\x8f\xd4\xeb\x10y!\xbf\xe0G\xfdm7\xac[\x98R\xc4\xc3\x05\xdd\x94\xa1\xfd2_\xd5\xa5G\xafvsw,MM\xad\xfeZS\xa9\xab\xdd\xeb\xb4\xe5[\xb8\xda\x01\xbba\xcbC\xa5\xab \xa8\x96\xc8,\xd6B\xd5\xfa[\x9d%\x86I\xc2\xbb\x9c~\xf7LV\xab\x82\x95\xae\xd9W\xc4\xa9\x8f\xb5\x8dj\x99gU\x91,\xd5\x0b2\x8d\x8bG\x8c\xf8\x8a\xd5\xf2\\\xe5\xfbt\x19\x16\x05\xd4\xa3\xa3\xb3\x00%Z\x11\x03\x00\xdb\xb4\x94\xd1-\xf2\xb7\xb6\xd1\xb3M\xa9\xb6\x9frQ\x18!\x8cB\x92\xa4=$-k\x91\xeawvT\xc7\x8e\xbc|u\xf2DUvQ\xa8\x84\xc6\x9f\xcb\x17G\x88\x84\xe0+\xaf\x8d\x08:o<\xa5\x99\"QX\xfb\x9a\xbcL\xb8\x16\xd19\xe2U\x14MNu\xe3q\xd5S\x1f\xd7ElZ\xa8[\x85o\xaa\x9by\x9a\xad\xd8\xcd\xa8\xd1i$utQ\xab/e\xfa\x15\x83\xedp\x95>\x92\xe6\xfbp\xd6\x8d\x1fdg\x84\xdb|\x83\x8d\xac`\xbb\xfc\x8a\xad\xfa\xfd\xf4\xed f\x87\xb5B &M\xbd\xc8\"\xe2%x\x7f\xd7B\x9fp\xfd\xc7\xf5\xa8|D(\xe1W\xedn\x0cW\xc1\xf2b\x93di)\x1f\x86\x81\xff\xc8\x0f2\x94f\x9f\xdcBRU,k\xec\x7fi\xa9,\xd0\xe9\x1an\xf3\x03\x14l\xc9\xd2\x8e\xef}\x9bo:\xd6\x8c\xea\xa2\xc8\x0f\x9b\x0ba\x83\xdc\xf2\xa3O\xeb\x812|X\xef\xf2Mc\xd8\x14\x1e\xf8\xda\xbf\xa1\xa3V\xb6\xad]\x98\x7f\xae|\xe9*\x03\xbc^\xa9\x9a\x0e\xce\x0c\xa1\xb8D$L\xa9\xb4\x98\x0c\xd6i\xd4\x9bZ\xe6\xef>\xfe\xa4\xf6\x08a\x96-\xab\xbc`\xab\xa7b2\x9be^\x07~icS\xe3X\xf8\xf0\xf1\xfc\xb8V\xa9GZsqTB\xbd\xf0>\xf9\x05\x9ae\xe5A1\xb3\x94\xf1q\x05+\xabn\xb0\xa1\xfc\xabF\xcc[\xaeX\x91^\xb1\xd5\x11\xa436\xe3\x1c\x95!A\x9ava\xf6:\x82\xc5\xa1\x12\xa1+%[\x1e\n9\xb2\xbaK\xf4\x8c\xf1\xbe\xdch~\x9e\xdf\x90\xf7\x18L\xdb\x92\x8aVThh'\xba\xc4\xc0\x1902aP\xa79\xa4s\xba\x80\xce\xc9\xc29\x8d\xc1\x9cUx(\xe7T\x81\x9c\xf60\xce\xa0 \xceiC8\x8d\x01\x9c\xd3\x86o\x1a\x827G\x86n\x0e\xd8]!\x81\x9b\xd3\x86m\x8e\x0c\xda\x9c8dsD\xc0\xe6\xd4\xe1\x9a\x93\x05kN\x1b\xaa9Y\xa0\xa6;Ls\xb2 MS\x88\xe6\x98\x00M4 \xb3\xa2\x84c\x8e\x0b\xc6D\x82/\x03C/\x91\xc0K\xe3Fi\x0c\xba\xb4\xef\xa0\x81\x01\x97h.5h\xfe~\xe3\xee{\xe2P\xcba\xa0\xe5\x04a\x96\x93\x06Y\xf67\xc3\x91\x01\x96\x8a\xd1m\x8ccB*\xad1\x85\x86pJg0\xe50\xb6\x89\x1eH9l\xfb7l\xacA!\x94\x94\xc1\xba\xc2'\xcdcs\x86Nz\x04N\xf6\x03\xceLA\x93\xe3C&\xc3\x03&\xd1y \x0c\x96\xb4\x86J\x9a\x03%ma\x92(\xb3\xa8!\x92\xae\x00\xc9^x\xe4\x88\xe0HBh$=0\xd2\x19\x16\x89D\x1d\x0e\xbaC\xbeq\x85C\x8e\x0b\x86D\x89j\xfd2i\x18\xe4\xc4A\x90\x93\x86@N\x19\x00i\n\x7f\x1c\x04?N\x13\xfa8Y\xe0\xe3\xb4a\x8f\xb4\xa0Gg\xc8\xa3\xba\xeb\xbb\x02\x1e\xd5g\xd6p\xc7A\xb0\xe3\xb07j\xe0\x9b=\xd0\x91\x18\xe6H\x08r\xec\x90\xbb\xce\xb0FWPc\xa3\xa5\xdb\x9e\x8e\x94\x1fQ3\xae\x84Z\xa6p\xf1\x17\xb5fk\x1bk\xeb\x03\x85\xa9L\xff:p\xcdJoE\xfd\xa3\xbe\x8d\xac\xf2\xc3b;\xf0\xb5p\x04\xb5\x1bMU\xc7/\xab\xbc\xe0|\x15\x7fC\\\x03\x8f\xde\x1c\x9f~:~\xfd\xf2\xfc\xf8M\x1dQ\xc8Ed\xc9\x0f\xc8\x1e\xfe\x81\xb6g\xa0\xe7z\xb8`7\x8a\xf0a\x07\xeb\"\xdfY;p~\xe0\xe1\x0b\x15.O\xc5\x1f\xfe\xb18\xf8\xeb0@(\xd3\x0d\x9f8eeVfH\xed\xc6S\xe6\x91\xb6\xcdky\xc1\x96\x97]\xb3f\xb2\xe1\xcaS\x96F\xd5-\x95yYv.\xaeG\xe9&K\xaaC\xc1\xe0\xd1/G\xf0\xe9\x08\xce\x1e+\xffv\xbfl\x1f[\xee\x9f\x7f\xff\xc3\xe53`\xdb-\xbf\xed-\xf9\xc5\xbf\xf6\x0c\x14\xc9\xf5\x08\xc6\x14\xc9u\xed\x17N\xae\x1bv\x08\xd91\xc9h\xe7\xde\xd91psyK\xf6\xe5a\x9bp:)\xb7\x87\xcf\x92,\x07\xd6\xe4\\\x08\xa1>,i\xb7\x87\xa4\x97\xc2\xdb\xfa\xab)\x8b\x17Bh\x9d4\xa3\x17\x90\xac^pd\xf6B\x08\xd5\xe3\xb2|{\xc8\x08I\xa0`\xcc\xf6\x85\x10\xf2'\xcc\xfc\x85A\xf6/\x183\x80!\x84\xd6 \xb3\x81a\x90\x11\x0c\xae\xac`\x08!y\xca\x0ca\xa0\x0b\x88-S\x18B\xc616k8l\x18\xf6\xeca\x08\x19\xc8\xb8L\xe2\x1e2\x95W\xdc\xcf&\x06sF1\x10h\x9e\"\xb3\x18L\xd9\xc5\x14\x02\xc6f\x19\x83)\xd3\x98\xd2\xf9\xb8\x8cc\xb0\xda=Ge\x1e\xb7\xf0\xb4s\x90{\xd9\xc7`\xce@\x06Q\x94c\x9b_\xcf\x0f\xd9\xbe\xc8+\xb6\xac\xd8j^\xdd\x0c.\xc0\xd6,\xb5\x8e\xf1\x02EW\x0f-]C\xc1\xf6\xdb\xe4\xf6I\xfdwx\x94\xce\xf8\xe5$S\x87\xcc\xb6\xc4\xa6\x9b\x8c\xad\x1ew\x9e\xa4\x14y\x12\x0b\xa6\x8c`u\xb4\xbe\xba\xf2\xef\x92\xe5E\x9a\xa9\x90d5}\x1e\x0f>\x0el?\xe2\xa5\xc7\x97\xcbe~\xc8*o\x97\xef\"\xd9&\x99\xf3\x9d\xef\xde\x1b\xa2\xa2I\x1d\x0d\xa0\xfe\xa9\x834~y\xdf\xb1\xfe\xe8)\\\xe6+F1\xbau\xba\xaa\x1b\xe9\xce.\xd8\xcd\x13i\xb2\xe0l\x15vo\xe9~\xafC\x04\x8e?\xbe\xd4]f\xb9{d\x06\x83c\x87\n\x81GS\x90HF?,\xa1d\xbf\x1e\x18\xff\x8bt\xca\xd9r\x08\xb1)j\x8c\xbc\xfd\x878\xf9\xaf\xa2\xc5S\xd5\x04>\x9d\xbeV\x98dT\x1fj\x03TOp\x8b\xd9\xf8Z\xe5\xc0\xc2\x9e\x1e\xe5\x14\xf6\xa8&^\xec\xf9\x87|>\xbd=\xc4\xd7\xf9\xca\x7f|\xd8\xf3\x1c\x14k\xf8`\xb5\xf6\xcd\xc1\xfd%\x9adM\x88\x88\x0e\x17\x1a\xb2\xe3\xbf;\x92\xd1\x1e\x11E,\xf8\xf7\x1e2\xf1Z\xbc4\x1c\xaa@\xe5;\xc5sZ\x81\x83\x1e\xbb\xda-\xf5\xc0\xf4\xbb\xc7\xddx\x0e\xa5u\xb4f\xd3\xaa\x878e6\xe5Vk1\x9a~\x03\xfd\xc1\x14U\x05\xba\xa8z\x14\xb4\xe3\xf7,j\x03\x9d=\xab\x94\xb4[?\xed4\xd7\xa7\x91O\xa7\xaf\x9dR\xf3[{\x99\x1fq\xf9\x80\xed\\i\xf7\xfd\x8ft\xff\xf4\xb0IgP\xefG\xc4#\x04f\xaf\x10\x18\x8f\x81`\xb9\xd6L\xe6!\x82\xa1\x97\x08L\x9e\"\x18E\xaa\xbf\x0b\x89@&\xe2T\x82\x9a\xcaa\x04\x18\x1a\xffe\x94$\x93\x93 `*G\x13\x18\x9dM\xad>\xa6p8\x81i\xcd\x81%\xa6\xcf\xe1|\x02;\xef&vB\x81\xc3\x11\x05Dj\x90h\xa0QN)\x04[{d\xc6!\xa0\xce)\xb0\xae0\xa0\x8e\"\xc8Q\x85 \xacd\x8dW\xd4Y\x05V\x87\x15\x8c\x99\x8dI\x9cW0\xd6\x81\xe59\xb1FG\x16L\xc0\x8ai\x9cZ@tl\x81\xd5\xb9\x05\xc4\xf1x:\xb9\xc0\xea\xe8\x02\xafN)\x0e/p9\xbd\x80\xd8%:o\xc1\x0e0\x04W\xcb\xf4\x85:\xc1\x80\xe4\x08\x831\xc3 v\x8a!\xb8\x88\xb6`p:\xc7`\xcc\x88&q\x94\x81\xd5Y\x06\x0e\x87\x19\x8c\xa1?\xd0yf\x17/\xcc\x81\x06\x04'\x1a\x8c\x19\xc9\xa4\x0e5\xf0\x130\xb3c\x0d\xc6\x0ci\x94\x93\x0d\xc1\xc7W\xfe\xc0\xd1\x06Vg\x1b\x8c\xa1\x7f\x94\xe3\x0d\xa7\x7f\xe8|\x03\x8a\x03\x0e\xc6\x0cc\x9c3\x0eA\x88\x9eV\x8d\xc2\xe5r\xca\xc1\x98\xb1\x8dr\xd0\x8d\x1e\x9a\xdbQ\x07c\x067\xa9\xd3\x0e\xec\x8e;\xb0;\xef\x808\x8e\xa9\x9cx`s\xe4\x01\x91\x98)\x1cz`s\xea\x01\x91\x90\xf1\xce=pZt\xa6r\xf2\x81\xdb\xd1\x07vg\x1f\xb8\x1d~\x00\xb6\x0b\x9e\xd9\xf1gD\x1d\xe8\xfc\x83\xf1\x0e@\x80\x10'\xa0\xd5$\xda5Mv\xf0\x0d\x0d\xa2\"\xff\x85\xdf`n\x9e\xb2+\x9d\xde\xd0\xb55\xe2\x06\xd03\x99\x1d\xedm\x01\xedU\x90B\xe5\xdf,\xaa2\x99\xb8=\xa4:K[\xf0V\xfe]\xe6r\x94e\xbeLE\xb6\x8c\xc8\x82\xe0\x1fo\xd2+\xd6\x16\x96K\x86\xd5\xfe\xec\xba\x1fz\x03\xa5x T\x13\x0f'\xc4y\x91,\x99\xb8\xd6y3t\x8a*\xc3\xfd1\xb5\xeaP\xa5*\xad\xf6\x9bV\x1b\x03\xc9\xf5\xbc4\x7f\xb2V\x90n\xd0\xbcN\xb6\xdb\xdf\xd6\xc0\xdb\x14w\xc7\xdd\xfe\x8b}\xd4\x01)\xda\x7f\xd71#\xd9*\xeaw\xf74\xff\x92l\xd3UR\xe5E\xa8\xa3M;\x8b\x02\xb1Q\xfe0\xe2d\xc5\x84.\xb7\xaf+&t\xc5\x84.\"\xf5\x93\xf8\xa9bB\x97\x85\xeaI\xfdOD\x1bzL\xe8\xf2\xf7+\xc5\x84\xae\x16x\x8fc\x94\xbf(x\x18n?\x91\xf7@&\xf5\x0d\xc5\x84\xae\x98\xd0\xe5\x97\xd0\xa5\xa2Ywl\x97\x17\xb7\xc4{t\xa7MsAW\xff\xee\xde\xcf\xd5\xb72\x83b\x8e\x19M\xed\x9d\xb4\x1a6= \x9b\xa1\xba\xa3\xe7k\x95\x9e!L\xaa\n\x8b4~\xcc\xff\xb3\xcc\x91\xb2'N\xabS\xbb]\x1d\x8a\xca:f\x15y\x7fNd\xc1\xe0\x0e.\xe1\xfd\x98cWt\x9b\xad\xc7Y\x8c\xaab\xbb}._\xc0\x90\xae\xab|\x95\xae\xeb\xe7j\xaa\x1c~b\xd5\x05\xa4\x19\xe4\x05\xbf\x11\xa8\xb6\xac,\x9bQ\xcb7y\xe4\x02\xbdd6\x16\xa8\x81\xb7\xf0uY\x80\x1a\xfd\x028\xd0Y\xc8\xd2\x0e\xa8\xebv\xe6U\xb2m\xd9o\xf5\xd3R\xf2\x19\xa7\xb6d(+\xfea\xdb)^+\x9f\xa5i~8Y\xc3\x96\xad+\xf5\xf2PZ\xc9\xd2\xe8\xb5A;\xaf\x85Nv\xc0Y\xb1\xb8\x05\x96,/ \xd9\xef\x9b\x0c\xd1CV\xcd\x05m.em\x1eg\x0b\x89(\xe5\xca*\xb9Z\x0f\x0c\xf8\x7f\xa4\xd9\x8ak/V\xbf\xb8\xa6F'>\x1c\xcc\x8b*\xf2\xd6)S-{\xa8\xab\x8f\xf68)2#Z/K\xad\xf3\x82\xb3K\xa7\xc2\xa4\x19|>);\xbc\xeb\x11,\x0c,\x05+\xf72\xf4@\x08c#\xbd\\@gJ\xfc\xd2M\x96\x17\xea\x93\xee2\xef\xec\xc1e[\xb4D!\xc0\xd2i\x137\xb3W!\xe8\xb36md()\x98A\x8e8V\x96\xad\xbaG\x08\xb1otkP\x9e\xa5\xd9\x92\xe9\xf4\xb8'\xe5\xea\x12\xbe\x9d\xfd\xe1\xbbo\x06\x84\xd5+\\\xd7\xbf?\xcbwZ\xcd\x0e\xab\xdb\xbf\xcds(\xf3\x1d\x9b\xd7z\x1c})\xa1\xa5\xaa\xdb\x13\xd7~.AV\xafW{NMD\xbba\xaa\x97R\xfd4@\x9a\xc1\xe6\xd3\xe9k(\xd4\x17\x8ad\x99\xd2R\xeb\x10\x85\xaa\xe9w\x06\xc7\xa2`\xackk\xf1t\xa5j\x15OT2\xc4\x0d\xa6\xde8\x94\x96\xa9\xf7\x10\xd8'\xa5r\x08\xb4\xb84\x93\x7fo!\x10#sn-'U\xeb\xe5\x05\xa1o\xd6-\x1c\xe2\x04+\x840\xcba\x97\x17z\x81\xd79d\xa8~\xa1i\xd7\xfe\x94\xd7\xe8\xe4\x84\xe3:\xb5\xf5\xca\xdc\xba3\xfc\xd6\xc2o\xe1\xbbN\xc4\xca:\x82\xb4j*\xe7\xc3!\x93\xc7\xf4\x95|\xff\xed:\xc5\xcaJ\xf6D\xb1\xe5\x8a5\xc9\xa2\xfa\xa4\x16\xc6k\xc1\xbc\xc60\xdf8!\xf8\xae\xd6\x93]\xf1\x80\x86\xd81\xdb\xa3\xaa\x17rwQ\xaa\x9e\x06\xab\xb2`{&\"t^%E\xcd2\xf3\xbaTh\x84d\xf4\x97\xe4\xfaf\xc6\x8a\xe5\xf3ogW\xcff\x1f\xaf3\xed\xf1\x1dL0\xcb\x0eu\x0e\xe4\x13\xf8\xf8o\x1f\x8e?\xcd?\x7f8;=~}\xf2\xf6\xe4\xf8M\xef/\xef?\xbe\xf9\xfc\xee\xb8\xf7\xe3\xf1\xbf\x9f\x1f\x7f\xfa\xf0\xf2\x9d\x9a\x03\xb1\xcd\xbd0\xa0\xc2\xa7H\x10(H\x11\xf5|\xe5\x82\xc9\xf9\x8f\xe5E\xba\xe7\xf2\x93\xc0\xf1\xa7\xd7\xcf\xbfmU@\xd7\x83E\x88F:oj\x0e\xf3mG\xbc\xa4\xf7\xb4%F\xbc\xabY\x1f\xa3\x1c\xec\x8b\xce\xbf@0UlM\xd7YSVU\xfe\xaaB\xd3z\xd9\xc9\x03>\xbd\x00\xfd_\x08\xb6$\xe3\x07lVd\xc9\xb6\x8d\xa8=\x9d\xbe\xd5M\xe5\x1dN4\x0f\xdf\xea\x9a}\xa2\xca\x15J1\xf2\x94\xcfG\xc1\xb6\x898\x08\xe7k\x90)\xc4\xb0\xcc\xd3\xac\x84\xff\xf3\xe4\xc9?\xcb\x99\xeb(\x89K6\xa8k\xca\xaev\xf3\x8b\x15\x8d\x98\x7f\xdez\"\xdb\xf5\xc7\xe7[t\xd6\x12\xb5\x8a\x91GaC\xbb\x9d\xc2\xc7\xd9\xe1\xe6\xc7D\x19\xfc\x83&x30*&0.}\xb0*(\x98VI\xc1@Q\x81MY\xc1\x1dPMT\\=lJ\x8d\x0d~\x1d\xa5\xcbz\xd8h\n\x0dLJ\x0dL\x8a\x0d<\x94\x1b\x04(8\xab\xda\xe9\xc5\x89\x13\xd6\x9a\xea\x97\xa4n\x04\x9fO\x93\xb4\xf0^ab\xa6\xe7\xfb$\x1d\x04\xed\xd1V\x19'c\x18&\n\x849h\x85\x82vO_\x92\xa6V\x13\x9fR\x1a\xda\x9d \x97\xa0\xa8\xe0\xd3)\x90!\xcf\xe7\xbbd\xbf\x17\x97\xa4\xc1\xea[QW]\xed8\xc9\xafK\xb5^8V.\xf9j\x95\x95UR\x1d:/q\xa9\x01\xce\xf3\xe6\xc8\xdcC7X\xbe\x925\xa2A\xcd\xb1\xe3\x0f\x9f\xdf\xc3\xa3o\xf5Q\xf3\x08\x9e\xe95#\x8ftG\xf0\xbc>\xe6\xf5\xd0)\x14\x8fi\xccl\x1f\xdf5\x98\x8f\xf1\xfd/:\xc7\xf9\xfe\x1f;\xc7z\x0d\x8e\xe3}\xf3\x99-\xe7d\xccq_\xc3\xf4\xc7\xfe>\xe6\xa9\x8e\xff}\xbcc\xae\x01\x12\xcc\xdbI\xade\xba\x03\x97O\x03\xebg\x1b\x97y\xb1*\x81+\x14\x11\xb2\x94geZVjcl\xef&\xc3\x9d\x84\xaf\xd0+&7\x93$[\xf5w#j\x05\xab\x81.\xa4(\xdbfh~\xfa\xd6\xffH\xd3(\xdc\xb0\x03\x1e\xf9y3\x8bj\xb6,\xf9\x00\xf5\x8c*hJ\x17\x01J\xda\xa0\xa6m\x8a:HU\xdb\x95\xb5Y]O\xae\xb0\x0d*\xdb\xca^LmS\x14\xb7Cu;\x947Y}\xbb\x14\xf84*\xfc.\x95\xf8\xdd\xa9\xf1)\x15\xb9\xfdf0\xa92\xc7/\x06>\n\xbdm\x89od\xb73\x80\x96\x8b\xa0}\x18\xef\xba|\xda\x8a\xbea\x85\xc7\x89vh\xaf\x07\xdbj3\xbewh\x97\xf1\xd1\xf6{\x98\xc8\x86\xcf\xc1i\xc7\x17\x1fum\xf9@a\n\xf2\x98\x9eIqz\xd9\xf6{mM\x96\xfe\xdegS\x98\xfb\x0d\xbb\xbf\xd7\x11\xc3}\xa7\xab?%\x9f*\x0c\x9b=:C^\x1b\xbc\xcb\xd2\x06\xc1\xdb\xf9`#\xc7\xb7p\xcf\xcd\xdb\xb4mcr7\xe1V=\xd8\xa4QF\xf57f\xfb\x96l\xdc\x8c\x8d\xdb0a\x036\xab\xa5\xb1\x9b\xee\xddl\xb7w\xb1\xd1N\xb3\xc5\xe2\x9c\x1c\xbf\xadv]\x05\xf4=t}3\xdb\xa5\x1b>u\xe2qj\xf9\x9f\x9fD_d5\xe2|\xc5\xbc\xca\xad\x7f\xbe`\xe9\xe6\xc2\xe5`\xe8W\xa8\xec\x12.\x94\xa5\xa2\xfe\xf5\x05[^Rr\x98\xcd($\x03\xbcoi\xeb\xfc\x909USG\x02.\x92\x12\x14\x0d\"N\xe3\xc9?\xeb\x7f\xae\x8e`\x9dlK\xfeK\x96W\xf5\xafZ$w\xc3\x99\x1a \xef|\xd39\xfd\xf0\xff\xe9n\xa5`\x05\x9dz\xba\x13\x0f\xe6\xcd\xbd-\x00\x96\xcf\xfa\x82`\xf9t(\x10\xed\x08\x0c\x1d{\xc1\x17\x00y\xf6\xdc\x9bV\xb2\xe32e\xf9\x04_\xddb\x19\xd6\x0b[\xadAQ\xf0\"\xe9nyj\xa9\xcanj=)\xdf{=\xbf`\xea\x0f\xfaq]\xa1$N\xb2J?\x8b\xdd\xcd\x91S\xb9\xd1\xf2\xa8\xa00\xd5\x8f\xf3\x97\"T \x95\xcf\xb5\xc2&\xdf\xe4\xe29U\xa5\x106Er\x95V\xb7\xb3e\x91\x97\xa5\xa8\xbb\xca\xd7\xc7\xab\xa4Z^\xbce\x8c\xee\xe5\x95F\x0b\xad\xf7\x1d\x1a\xa2J\xb6\xf35sD\x97\xca\xcf\x90\x97%(\xe1!\xb2\xb1c\x0e\xcd\xc3/\xd2\xd5\x86 E\xed\xc7\x00+\xa9n\x99[^$Y\xc6\xb6\xf3t\xe1J\x0fW\x87\x95\x87o\xd8\xbe`K\xae,^\xa8\x0c\x81\xc3~S$+\x06W\xdf\xc9\xc49\xf5ekH\xee\x91\xd7u\x00\xc8\xa3\xdf\xe7\xd7\xce\xa4~t\xa2\xf4\xceI8\x99vFR\x93\xd8y\x01\x1a\xae\xf4\xcf\x0f\xcb\xd6\xa6\xacNn|\xc9\xf1\x93\xbd \xd6\xc6\x05\xb1\x7f\xfaM?I\xf2\xfdtJC\x05\x1c\xb2\xf4W~\x19Y\xb1\xacJ\xd7)+\xc4\xcd\x81\xef\xf4\xda\xf7\xd5\xda\xf2\xad+\xfb}\x9a\xe9\xc5M\x1e\x9b\xc7\xda^\xc8G\x13\xfc\x97\xdc\xfbr#'\xf6u\xb2\xdd\x8ax\xefbG&P\x16\x93\xce\x92\x9d\xbd\x0c\xc8BtP\x10D\xcdK.G\xdc\x0cG\xa9~\xf1\x92\xe1\xd60\xfba\xd6\xb5$h\x8bfM\x89HST#\x80\xf7\x87mU\xa6\x1b8c\xd5\x91\xcc-Q\x82\xd5\x8cB!L\xb6e\x0e\xbb$\xcd\xaa$\xcd\xca\x8e5E\xd9\xbc\xb9\x16\xab\xc3\xa2\x8fx\xa7\xa54F\xeb\xc26\xcb\x0bV\xd73j\xdd{\xf2\x16\xaa\x05[&\x87\xb2~\x0f\x8b\x7f%R\xe7\xb2J\x14\xd0(\x93\xab4\xdb\x94\xd6%p\xa86y\x9a\xb5\x8e)\xe4\xb5P\xb2l\xe58\x1e\x17l\x8d\xd8\x13:\x9f\xc8p\xb0\xbb]\x17\xc3\xed\xbd\x8d\x06Y\x1a}\x1dj\xfd|\xb2\xe3\xad\xe8\xc3nhr\x96\xe6\xdb\xb1\x9d\x1dC\xb0\x06\xa3E\xd1\xe2'\x01\x91~\x19\xbaV\x01\xd8\x15\xcb\xaay\x10\xe5N\xc1?W\xb1{\xe77d\xc1O\xed\x12m:\x15\xbb\x97\xcb\x8a\x95\xb4\xda\x83\xe8\xb5\x9cd\xf0\xc2\x97\x82A\xb2\xb1e\x80~:\xe9\x12@\x9e\xc0\xfb\xc7\x18\x9a\xdat\x86\x92\xd7\xd9\x103\x91@x\x95\xae\x0e\xc9V\x08\x8d|\xd4No4U\x0e\xc7\xe7?\x93$\xfb\xc6\xef\x0e\xb5\xe0_\x87\xad\xb2\xa6\xf9\x08-\xd1.n|\xb7\xfbAj\x08\xa3\xf1=$\xf5\x97\xb4\x03\x17\xbe\xbc\x1d\x8dzK\xbd\xfd\xf5`\xbc`\x193X\xf6A\xb0s\xc0\xb4\x1f:\x9aM\xb8r4tTC\x9b\x80\xffi\xac\x98V\x95\x00\xf8\x19B\xba\xb5a\xe8+|\xcd\xd8'\xb6d\xe9\x95M\xc1\xf4\xaf\x10=u\xd6\xbd<\x08\xa5#\x8e\xbf\xed\xca\xe8\xe2\xfb\xfeX\x15:\x87\xf2\xf4L\x03SH\xe6\x8e#Ar\xc5\x8ad\xa3*\x9a\xf5\n\xb5\xd0\xd9W\xdf\xc9F\xabZMO\x83q\x14a\xb2<\xfd\xfc:\xcdV\xf9u\x10\x02q\xb7_\x17r\x02\x89\x18Z\xa1G\xca\x00S\xb2j~\xd8\xaf\x92\x8a\xcd\xc5%q.+\x07\xce\xf7\xacX2\x87M\x04\xc5+\x12-\xd4\xda\xd2\xfc\x1eq\x8e\x95d\x86mn=\xfcfW\x89\xacH\xf2\xfd\x1f\x9f}\xf7\xed\xb7\xdf\xea2\x83\xb5\xad\xa5\xba(Xy\x91o\x07\xf2J:b\xd13\x12\xc2\xceW\x9d\xc0\x8c\x91NG\x98\xd4\xf1\x08D\xe7#\xb4\x99\xbd;l\xabt\xbf\xa5\xae\xa9\xa1\xf1T\xd4\xb0\x19\xb3\xd0\xdbhv\xc9\xcd|\x93\x94\xf3\xe0\xda\x1f*O\x8bo$\xf3*o\x94\xc7^V\\\xe8\xa34D4uDv\x95\x8b\xd8\x80C\xc9\x1ev;i\x13>!~<2\xf4d-\x8dJ\xaa\xd2(,Xu\xcdX\xd6\x18uD\xb4\xd8\xebCQ\xb0\xacjLE\\\xee\xb6I\xc5Jm\x03U\xe8JV\xbf\xf2[4\xd5\x1a\xfe\x19\x9e}\xfb\xff|\xd3\"\x94\xa6\xb4l\x9b\x95\x08\xf8\x10\xbb\xa22\xea{\xc7{,\xdb\xce\x00\xb4\x0d\xde\x0e\x86\x96\x04\xb0\x1d\x81\x8c\x87h\xd3\xb1\xc3\x82\xcdhB\xb7\xb4\xb1\x9b3\x0d\x8d\x10?\x83\xe5k\xcc\xdf\x80|N\x9fL\xff\x1c\x0b5\x9ba\x1b\x0c\xf9\xf6\x84\xcc\xbbe\xe6\xad\x17(\xdb\xec[pZ%\xc0\xd2.\xd0\xa8m\x94\x04K\x0b\x934\x84\xc8C\xeb\xbd~\xb2(\xc8#\"\x16\x8e2\xad0\x04\xce \x16-Cj2x\xa2)\\\xf4\xb0X\x1a\x14#a\x8aT\x18\xf6\xab\xdb\x0f|q\x84\xcdV\x90\x12F\x8d6\xc8\x18\x1a0\xf2\xc4p\xab\x08C\x86\x1bs\xc0 \x85`\x7f\xf0\xdb\xfbv?4\xf0\x80]P\xc0.,`4\xf6\x80\x0b\xaf\xcd\xe8\xe3l\x8c\x1a\x7f\xc0\xce\x17p\xf0\x06\x1c\xd6\x0fp\x11\x05V+\x08\xb8\x9bOn\x0d\x91\x80\x18\x87 \xb2\na\x959\x89o\xac=i\x80\xb0\xb1/\x81c\xb300\xc2\xa7\x0e\xb1q\x01cv'#&\x8c;\x93\xd8\xa0:\x8cp\xd9\xa1\xe4\xd6R;e\x837\x96\xe6\x1a\x15\xb4\xbd`J\xcf\xc0\xff\xbe\xaf\xd7\xf2i\xdf\xe7\x0b\xf7\xb4-\xfc\xd6\x8d\xbe\xb4\x18\xf4\xae\x8f\xd8\xf2a\xd7Wl\xf9p\x92\xe3\xc5D\x07\x0b\xdc\x97\x1c\x86\x0b\xf5+\xfb\xa1\xa2/\xe03\xb1\x94\xc6\xac\xe0;>\xca{z\xb3\xb0\xf5n\xf9\x1c[\xf3\xe6UoX\xf7\x8e\xdd\xdc\xbe\x97\xdbwr\xc7Fl\xdb\xc5\xadM'\xd7\x02C=`\xa1`\xa8\x0b,\x1f\x0f\xf5\x81\xe5\xe3)\xad\x00\x98f\x08Ef\xd6\x0f\xa1\x18\x8dZ\xc2\x0f!US\xe8\xf8\xe7\xc0\x1d\xff~l@d\xf3F\x03\xf7n\xb4\x19=c\x0d\xf8\xd8\x7fX\x96\x1f6\x17s4w\xa41YS\xa5\xc1\xdf\x08\x187\x0c\xa4A\xdc0\xba\x9d\xc4\x0d\xa3\x86\xafv\xc3\xe0\x80\x15\x07A%\xda\xe0\xa2\x89E=bQ\x0f\x05\xe69\x9c\xac\x967\x8c\xac\xe7\x0d\xe4\x9a\xde\xe0S\xd7\x1b\x9c\xb5\xbd\xa1\xa9\xef\xed\xde\x95\xf9o\xef\xd2\xd2\xffu\xf1\xe6\xd0\x14\xb61\xd7\xc2I\"3O\xb3W\xb7ae\x86\x97u\xd29\xda\x00o\x041>\x84\x10\x1fB\x99:Y=\xd6{\xd6\xd4\xc1\xef>\x12*,A\xa9\xd8\x99\xc2\xabL\x1e\x9a.\xeeh\xe3\x93:\xde\xf9\x9e\x98@.&\xa7\x1f\xff\xe1=AM\xc0G\xd0\xe2\x1ae\xa7\xd20\xc8C\x03\x83\x88\xc0\xc4\xb6W47\x0d\xec\x93\nn\xaf\x9c\xebv\x08$\xb1A\\!\xa3r\xd6\x06\xd8\xda \xfa\x1a\xa6\xb0a\xa2\xce\x8a\x91\xb9l-TMV[\xeb\xc7\xf1\xa9m-d2\xc9\xad\xf5\xc3\x9de\xba5\x05\xe0\xcfs\xb1\xe0\xbd\xd7\xaf\xbd\x18\x86\xbd\xe3wIY\x1d\xf3{\x81xj\xfag1\xf5\xafn_\xaeV\x01\x16\xe1\x11\xd9TD\"\x85\xe9)\x90\xbc\xbbH\xd6\xaa\xa9\xfb\xb8(Yq\xc5V-.\xfa\x13\xd8\x0dz\x0ec$\xdc\xf9D\xb4\xf6\x19qL\xf6?\x104\xfb\xcd\x1d\x1f\x07&\xb9\xeaJ@\xf7'\xf3\x0eu\x17f\x1f\xe3N\xe5\xdc\xab\x9c\xbb\x15m\xbfr\xf4c\xde\xb3\xa6\xde\xb5\xf0}\x0b\xdf\xb9\xc2&\x1c\x1f\xcb\x84;\x98a\x0f\x9bx\x17C\xf6\xb1\xbb\xde\xc9\xb8\x8a8\x95\x81\xd1\xdd\x08\xb4 \xa5\x1d\x03\xd0\xa6=\xed\xc6\x00\xb4\xffqQU1\x00\x8d\xcc\xaa\x18\x80f\xc3\xf4\x15\x05\xa0\xb57\x99V(K\xd8\x16\x13\xfd\x92\xc3\x06A\x07\xd4\xe8\x97t|\x1c\xfd\x92w\xe9\x97$\xab\x8c\xfe\x0d6Pq\xc4kl\x90\x96\x88\xd7\xd8\x06\xe25\xf6k\xbd\xc6J\x1e\x05\xea\x84\xbe: ]XM\xc5\x1a\xc1<\xf7\xf7\x96qj,\xe2hi\x83\x17s\xb44h\xe4\xd8\x18\xd1`.\xec\x08HqG\xa8\xfb\x1a\xbeCe+\xf2\x08\x96Aa\xc5\x1e-\xdf\x0f\xc7D\x11\xbb\xa6\x1a\xaa\xb7\x00\xfe\xdd\x13\xa7\xefM&\xff\x0eY\xd0\xfd\xd9)\xbf\xee`\xd8 \xcf\x0d\xf7\x1e$\xeb\x13\xd9*\x81\x1c\xfaK\x9ccu8\xf4\x9e\xdb\xe8M\x1f\xfe\xec8r9\x0fv.1\x02{\x0f\xd1\x9b\xfe?\xcb\x9b.y\x13\xea\x98\xbcc\xadl;\xe7YD\xe3\xde5\xb0\xf5\xccg\xd3\xdc\xc6s\x1fi\xf3\xc1\x14\x00\xe9\xf4\x87\x9f\xfft\x9f\xf8C\xed\xf63\xa0m\x90\xa6s`\xc0\x18;\x06,%\x82\xc2\x96&\x17\xdev+\xd6\xc2\xaf\x07V\xa4l\xa5?p\xc7\xec\xf5L\xb3\x01\xcba!\xdb\xdd\xedr0\xfa\xe9H\x9c\xc4\x8e*fo](J\xb3\xcf\xce\xbc\xab\xde\x85\xe9\x04\xf7\xde97W\xe7\xf6j\xf3\xe19\xb1\xbb\xfcxN\x04F_\x9e\x83W\xe0\xe4\x178\x8d\xd2\xe0&\x0f\x9c\xae*\x02\x8a;0RK0\xf8\xf6\"\xeb\\\xac\xb3\x99\xf9Fy\xfbP \xef\xf9\xfb\x82\xeb\x13!^\xbfP\xa5f\xf2\xfd\x19\xf1\x19\x8c\x89c<\x80\x1dL\x8d\xb7\x94\xe4\x03\x94\x15Q\xbd7\xb5}\xab\x90*\xda\x04o\x06\x86\xa2\xaa`\xe6\x97\xad\xb8\xaa\xa5\x99e\xd2\\\x85V\xc3\xb0\x92\x8a\xae\x86\xa16\x14`\x0dDf(\xc6J\xc2\xd6K\x1d\xa3\xd58\x1c\xd7\x07\xa9H+ \xf1\x80\x15\x83\x8b\nXN\"\x96\xfb=\xd2\xa7g\x01Wp\x14q\x05\xdbVd\xde\x82\xd0\xd4\x0c\xab\xa63\xed3\xc6&\xb6\xc7\xd8G$\xf1\xf4\xf0\x8c\xc9\xe4\xe9\xa1Ry=\xbd_)\xc9=\x1a,\x05`\x81\"\x87\xb8\xad\xd7P\x0c\x96\x84\xd1`>\xb6\x16\x86\x0dCL.\x12\xdb\xa0\xc7\xee\x8c\x94b\xae\x9d\x0e\xad\x05c\xa7\xe9\xcb,\xc9\xa3\x0b\xc8\xb6p\xa9{w\xab\x88,\x98\n\xc9\xb6\x88\xa7)Z\xf7f/9w|\xc3\x96\x87\x8a\xbd\xde&i\x80k\x84\xb7\xba\xe3\xdb,\xff|~(\xb6du\xeb\xd2C\x00/\xe1\xf3\xa7wO\x0bV\xe6\x87b\xc9 Kv\xea\xddjy\x00\xde\xde6G`\xf5\x04\xf1\xed^[\xd0\x06\xc8JV\xa4\xc96\xfd+\x1b\xe8\x111\xa6*_\xe6[X\x1c\xd6kVh\xd3\xde\x0c\xce/\xd2R\xd1\x0e\xbbCYi\xe3\x04$\x15lYRVC\\y\xc6\xe0\xc1\xd3\x07\\\xee\xf8~\xcd\x8a\x99\xd0\x81\xdb\xa4\xac\xa0d\x1b\xae\xe9\xb4\x91\xef\xf3\xa7w\x0fK\xd8'\xd5\x85@>@U\x1f(\x87\xbd\xf0\xe6\xeb\xc3v{\x0b\xbf\x1e\x92-\xe7\xc0J\xf2G\xa1\x16\x9cx\x94\x94\x90f\xc3\xc6_x\x97O7y\xbe\xd9\xb2\x99\x18\xfb\xe2\xb0\x9e\xbd9\x14B\xaf\x7fy,)\x16\xe8\xca\x8b\xfc\xb0]\xc1\x82\x01\x1f\xf4\x00\xd32\xc9\xf2,]&[\xa1}\x86==b\xb3\xcd\xec\x88\xb3J\xe4\x1e?\x98=\xe0\xcb\x85/\xe3d\xb9d\xfb\x8a\xad\x1e\x0f7\x0e\x80\x93\x0c\xf6\xe2\xb0\xb3dGP\xb1dW\xc2\xa1<$|\xb8\\\x1f\xe4\xbb}\xba\xe5\x14U\xb9\x18\xec\"\xcd\x92\xe2V\xda\x8bn\xf7\xacD\xb8\x95T\xfc\xcb\xdbaW\xecf\xcf\x96\x15\xa4\x15?|\x1fJ1N\xb1\x0f\xe5Y\xc5n\xc4T\xbd\xccng\xf0s~\xcd\xaeXq$\xaeZ\x9f?\xbd+\xe5\xf65\xc0\xc7Qp\xf1\x1b\xca\xdf\xf2\x82\xed\x18|\xb9\xa8\xaa\xfd\x97#\xf9\xff\xe5\x97#\xc8\x0b\xc8r\xf5\xd7#!=\xcb$\x83\\\xac\n1\xe2\x92Up\xd8\x0f\xf0%b\xacH?\xac\xb8b\x85\x1c\xf2.\xd9\x97R\x14\x04\xc5U^\xe7r\x8b\xfd=\x95\x97\x92\xa4\x84u\xbe\xdd\xe6\xd7\xe5\x0bd.~\xc7UiM!\x9f\xbe}\x91_\xa5+\xb6\xaa\x07!\xf6\xf4\xb2<\xec\xd8j\x86!x\x99\xc1\xcf\xe7\xe7\xa7\xf0\xd3\xf19\xe4\x99\x16}\xb9\xa0n\xc5\xa1 \x81?\xf7\xc5\xf1\xfcv\xcf\xfe\xf2\xe7\xbf\x0c\xd0\x81\xce\xad\xcf\xf4\xbc\xcb\x8dOpr_\xe4\xab\xc3\x92 \x9b}Q\xe4\xc5\xf0\xf2\xfb;x\xb9\xdfo\xd3e\xa2\xc6^0.7\xf9\xb5z\xe0-Y\xf2\xb5\x9a\xe7\x97\x87}\x9d\xc0\xbeHJ\xb6R\x84#\xe4|\xfe\xf4N\xf4}\x91\\\x89\xa9\xdf\xb5dt%\x854\xd1\xa4\xf2\xff\xbe\xcaS~n\xc2n\xcb\xb2c\xb1\xfc\n\xb6\xce\x0bv\xa4\x1br|I\x95.\xd2-\xbf'f\x8c\xadtQ\x00\xa1\"\x8a+\x86\x05\xd9\xe4\x99\xda\xfe\xc4\xc7bm\xcc\xe0\xd1\xe7\x92\xc1\x15+\xca4\xcf\xf8\xa8\xb9x\x88\x0cx!\x1fI\x96l\xb0Q.\n\x96\\\xf25\xac\x10\xce\x1e\x0fg\xfaC^\xb1\x17Pq\x9d\xb9>dK)\xc1\x9c^\xb5\xe6\x97r\xb7\xdd\xde\xb6\xab-\xe0l\xcdE\x89\x89a\x91\x05\xa5\xab\x17\x875\x14\x8ck`v\xa4^$\xd4\x9d\x08\x17\x0c_\xa4\x8d\xdc/\xd8&\xcd2\xcc\xca\xc2\x8f\xb5\x88r\xbd\xdd\xb3\x99\x94\xc7d\x9f\x96\xb3e\xbe\xc3\xb4\xd4\x99X\x11\xa5,\xec\xc0\x17\\\xd6_\xdd\xf0\x88\xd3q\xa1+c\xc8%\xf4\x18v\x03\xfb=\x87\x05\xb2\x98\xc5`\xc4\xd9\xbb>&\xcb\xb3w\xb9g\xcbt\x9d.\xa1d\xbb$\xab\xd2e\xd9\x15u\xb1F<\xb6b\xc3E\x0e\x08\xbb\xf4{\xbe\x8c\x17L{\x0d[\x1b\xed`_U\x9bS\xb2\xc8\xaf\x90\x0dZ\x0eI\x89d\xf7\xf0n\xa6\xe0\xcb\xcb\xec\xf6K\xcbg\x90AR,\xd2\xaa\xe0\x8b\xc6B\x89\xd6\x83\xc96\xef\xf1B\xdet\xbaS\xc1\xb5\x95P\xa8\x92\x92\xc5\xf0\xb8\xd1\xeeK\x9f\x1ez\"s\xaa\x05w\x9b.\x04yJ\x8f\x96P\x1e\xf6\xfb\xbc\x10;\xd0>Y^>=d\xfc\xff\xf8\xbe#\xe7\xb1\xc4V\xc9p\xc3\xcd\xd7p\xa8\xa4\x82\xd0\xcb\xaf\xe4\x8a)Y\xadR\xb9\x16a\xc32V\x88\n\x1d\xf2JUj\xf2_\xf6\xf4\x91\x9c\x82.\xfe\xe3\x9b\x84\x0b!<{\x01\xa7\x9c>\xbe\xee\x14\xa9I\xcd\xd04\x83\xd7\xbf\xff=\xb2\x0d\xbc\xcdsX\xe79\xfc\x08\xb3\xd9lX\x10\x84\x0f6\xc9n\x87\x7fH\xb2\xdb\x19\xef\xeem\x91\xef\x1e\xad\xf3\xfc\xf1\xf0\x93\xd9l\xa8\xe7\xd35<\xe2M?\x0b\x02\xcf\xf3G\xff\xc4\xdb>F\xeb\x96`\xed\xff\x86\x8f\xfd\xb9c\xec\xff\x9a\\%\xc1\x83\x87\x1f\xc5Y\x83c\x0d\x18iZ>z\x9b\xe7\xb3\xe56)K\xc3@% \xfccI{\xab\xc1\xb0\xaf\xbf\x0d~y\xfa\x94\x8b\x93\x9d\x86\xb3d\xc7\xf8\xd6\xfdRR\xb3a\xd5\x1b\xb6N\x0e\xdb\xea$+\xab$[\xb2G\x8f}\x88C\xdbc\xb4\xa2\xb3\xf5\x9dc\xb6No\xab\x8b}\xd8E\xa7.M\xbakyKbJ\xee\x1e\xac\xf3|\xb6H\nA\xf4\xcd\xd3\xdb\xd9_\x1f\xc8\x11\xcb\xb3\xff\xf0\x1a#\xba|\xc0\xbf\xeboA\xffz\xf6\xf1\xc37CN\xf3\x9f\x9b\xdb\xb2\xc8/\xca\xe2Y\x1fV\xda,\x9b\xe9e\xfa\x029\xf2&\xcbK\xbeF\x9b+\xd2:\xdd\xb2\xa1\x16\xd4k\xf9\x94\x15e\x9e\xa1\xc2\xabl\x19\xeb\xb4(+\x111h*\xcf\xa5>\xe4\xd3\xad\xbf{\xee\xd4\xbb\x1c\xb0^\x1f\x88\xf1?x\x01\x0f09\xee\x0ek&\xa9\x7fp\x84\xe1\x11t\x7fHv\x1c\xd7\xff\x91$\xfe3\xfa!\xa7\xbb\xf7\x9d\x8b\xf8\x93\xb5:\xaaw\xe7X\xcePZ\xc25\xdbn\x9f\\f\xf9\xb5\xb4|_$%$\xba\xf0\x94\x94\xcb6\xb6\xae8\x1d\xc9\xe3cO\xc6\x9a\xbay\xaaK.8\xd9\x06\x12)6]\x84_\x84\x10k\x19\xba\xc8\xb7\xabN\xe9+\xb1\x04\xd2\xac\x96=P\xb6\x11%z]\\\x02}-q\xf0\x88\xafV=\xdc\xc1E\\\xdb\x85\xfe\xf2\xe7\xbf\xbbN\xab\xe5\xc5\xdfA\xb2\xd3R\x84\x046\x91\x11H\xf4\xd8\xd8\x08^\xdd\xc9\xae\xdc\xcc\xf9'\x93v\x81\xab'\xc1\xd4\xe3\x9f\xde\xfaO`\xddH\xcc\x9b\xc4\x86M[{\xc6\xc83ee7\xc6\x07\xd7\xf3\x06`go\x08\xcat\xb1\x9c%\xadP\x9c\x99\xbe\\\xf0Q\xcb\xa2\xd0E\xb2\xf4\x91\xcejP.\xd3\xb6\xc5t\x94\x83\x88\xc1\xd31\xcf\xc2\xaa*2\x89\xf35\xec\xf3\xa2z\xaa\n\xe0\xb7\x0e\x82e+\xce\xa4H\x96]A\xec\xc5\x7f\xa9\xf0E\xa5\xe7\xd6\x87l\x93.\xb6\xac{h\\$%\x9b\xdb\x0f9\x12:c\xe0\xad\xba1\xd9\xaa\x93\x82m\x93[N\x1f\xd2\x19\xce\x85\x86\xe3]\xff\xc4\xb0\x0b>\xe6\x93\xd7g\xcf\xbf\xedao'\x86\xb78\xa0F\xaf\xb8\x04i&\x8f\x8d\x1c\x13\xe7\xfa\xcc%\n\x9e\xa2/\xa2\x9ce\x00\xf2\xe0 \xd3\x8f46\xcbC\x1b\x8b\ng\x16\xa1\x14j\x0d\xc8\xdcTq\xc6}\"%EF\xc9\xd7\xf7\xe3~\x8aOu\x91\x96m\x91\x90'c\xf5C!s\x91\xc6S\xddC\x14Dxg\x93\xb3\x90\x8dS\xa1TZ{%\x95L\x04Q\x9e\xbcz]\xf7\xd2:\x94\xd4\x06M\x95-\x90\xc3\xbe\x10E\xd1 \x812\xcd6Z\xb8\xe4\xcdh\xc1\xb8\x08i4\x05[\x1d \xf4-i\xd37\xad\xf2X\xf1\xa0\xeeJ8D\x8a\x03\xd3n\xd1L7\x85E\x92]\xc2._\x1d\xb6\xec\xa1\xdeL\xcfX\xb6R(\xbe\xa9\x15\x8c\xc6\xa45ygYT9\xac\x93m\xc9\x9c\x02\xddT\xbd\xff9)/\xbcw\xe1\x8b\xa4\xf4\xd2s\xfc{x\x94fp\xc1n\xd4\x95\xedq\xe3\xddl\x0f@,\xfe\xd6\xfaD&\xba\xbb\xf1\x0d\x06A\xd9\xf8\xeaF\xe8\xc6G\xe4\x9cPT\xde\xac\x13\xc3\x9dW\xcd\xb6\x82\xb6\xc3\xdb\xc2`\x8b\x81\xf0s\xe8\x88\xed\xa6\x87I\xabU$\xe4\x98\xb2\xed\x80a\xeb\x01\xf2\xd8\x82\xb6\xa0\x01\x96\x0e\x87&\xd8\x8aZ\xd8\xd4rG6d\xdb\x96\xe4\x96\xfb\x8e\x08\x92\x05_\x0ek\xac\xe4\xfb\x9f\xdd[\xa2\x1fvn#\x1bo\x87\x8b\xc4\"J\xae\x852\xe5R\xb1.\x16\xfar1/\x18\xfa8\x83\x17\x8d\x9d_\xd3.\x1ct\xe9\x10\x17\xcf\x80\xd2\xb6\xfcA\xc1\xaaC\xa1\n|\xb4\xc9*M{\x10\xee\xdc\xeft\xd0|\xd0\x91\x96\xd6\xcf*FI/\xd1Yo\x15\x90v\x80\x18$\x10\x83\x04\xc0a\xd1\xc9\xb3\x8c\xc9\xe0\xeb\xb0\xdd\xc1j\xcfq\xef\x12\xc7\xe5\xb2\xc8\xafC\xed\xdfL\xb4\x1ez\xc1\xd0\xd9T\xd3\xc5\x07!\xdbA\xb2\x14,\xd6ft\x17\xafPZqn)\x05\xd9i\x11\xb8\x8fNd\xfe\xea\xa9\x9f\xc1\xc5\xa7\xb9\xe4h\xe2\xe5\x1d#H\xf1\xe0\xd7Z0^\x12\xc1\xb9\xb5\x8e\xbd\xe2\xf6\xd0\x89\xfbY\xff\xbe\x08\xfd\xab.\xd8\xae\xbb0b4\xc1W\xdf\xbe\xa6i]\x84]\xc3\xe9P\x84H\x16e\xd976@/\x11>\xe7*L\xae\x85\xb7y\x11\xe6R\xeb{J=\xa4\x91~[ W\xcd5\xef\x88\xc1\xf5\x08\x1a\x14cJ\x11\x84=*jU{\x96\xd93\xca\x8cj\x8f4\xed \xcf2/wy\xa9\xfd\xa1\x0bV%\xcffJ_\xbe\xba\xadXy\x9e\x9f \xce\xfb\xcb\x8bD2\x97\x13g\xd9\x1a\xf0\x91\xdbh0\xaf\x14\xd5J~\x0e\xc5~\xa9\xb0\xe9\xf1\xeaY>K\xb3%{\xa1\x06\xff\xa4\\]\xc2\xb7\xb3?\xfc`g\x87Dz\x9e\x0b\x92\x82\xd9\xc1\xcfv\xae\x8drp\x0e\xb4\xb2\x08\xa5\xcb\xc9\"\xf1\xf5T\x1cz\x95\x94\xec\xa5\xdc\xcb}\x19be\xc5\xfe\xb0\xe8\x1e\x9f=\x94N\x85\x16\x180\x1e3\xed\xfb\xc5\x84\xa5\x05\xcc\x85\x05\xa6++0YQ\x01cI\x81*\xbc\xa0\xc0T\xe5\x04\xec\xc5\x04\x82J L[H\xc0XF`\xda\"\x02\x86\x12\x02#\x0b\x08\x0c\xd8]!\xe5\x03\xa6-\x1e0\xb2t\xc0\xc4\x85\x03F\x94\x0d\x98\xbah\xc0d%\x03\xa6-\x180Y\xb9\x00w\xb1\x80\xc9J\x05\x98\n\x05\x8c)\x13\x80\x96\x05\xa8(E\x01\xc6\x95\x04@\x02J\x02\x0b\x00 \xe9\xff\xc6\x8d\x92f\xa4\x1a\xc6\xd2\x84\xa5\xfd7i\xfe\x18\x7f\xbfq\xf7=q\xc2\xff0\xdd\x7f\x82d\xffIS\xfd\xfb\x9b\xe1\xc84\x7f\xc5\xe86\xc61\x89\xfd\xd6\xccvCR\xbf3\xa5\x7f\x98aKO\xe7\x1f\xb6\xfd\x1b6\xd6\xa0D~\xca`]I\xfc\xe6\xb19\x13\xf8=\xd2\xf7\xfbi\xcf\xa6\xd4\xfd\xf1\x89\xfb\xe1i\xfb\xe8\xbc\x04\xa6\xec[\x13\xf6\xcd\xe9\xfa\xb6d}\x94Y\xd4D}W\x9a~/I\x7fD\x8a>!A\x9f\x9e\x9e\xefL\xceGr\xdf\x07\xdd!\xdf\xb8\x92\xf2\xc7\xa5\xe4\xa3D\xb5~\x994\x19\x7f\xe2T\xfcI\x13\xf1\xa7L\xc37%\xe1\x0fR\xf0\xa7I\xc0\x9f,\xfd~\xda\xe4{Z\xea\xbd3\xf1^\xdd\xf5]i\xf7\xea3k\xd2\xfd \xe5~\xd8\x1b5\xfd\xda\x9enOL\xb6'\xa4\xdawH\x9e2\xcd~\xe2$\xfb\xe9R\xec\xa7K\xb0\x0f\x9f]gr\xbd+\xb5^ki\xe5\xd4\x9bK\xb7+\xd1\xd4\xd9\xf1\xee\x96\xec\xd7\x03\xcb\x86QW\xee\xb6\xf8=\xa0e\x9ely\x06D\x98\x83\xf6@\n\xde\xc0I5|N$cK>\x13\x85\xbeM\x8b\xb9\xaa\xfd<|\xa6\x16I\x99.kL\x9d\xfb\xe9L\x1c\xf3\x94@\xb4\xfb\xd2\xa6-vS\xb1V\x18l\xe3@\xaa\xb4\xbd\xb6\xad\xa0:W_a\xe1\x82+VVi\xb6yl\xb2\xe5\xbfb\xcb\x8b\xef\x9e\x9f\x16l\x9d\xdex\x1b\xad\x17\xa2\xf1|/ZSM\xf8\xb57\x06\xeb\xdal\x97n\x7f\x0d\xc5~\xd9X\xa4%6/\x83\xb4g\x14\xf0.\xb9\x99\xef\xd8.\x9f\xd7\x06S\xaa\x89\xbe#\xb7\xd5\xcd\xbcL7\xfd*\xcc\x9e\xed\xff\xca\xe6\xcb\xbc\xac\xe6{V\x08gA\x08\"N\xc5\x15+\xd2\xf5\xad\xc4\xc5V\xcf\xbf\xff\xfe\xd9\xff\x9e\x02U\xc9\x96\xfb\xe7\xdf\xffp\xf9\xcc\x1fYGJ\x90\xd0\xdf\x96\x07\\{=\xf9\xa4\xb6\xfc\xe0\xd8T\x0b\x17\x99Z\xdd\xb5o\xe3\xe4\x8d\xb7\xack\xb5\xe5\xf6Kt\xc6\xf1\x10\x97\xcb\xd9sYu\xba\x1f\xa2\xe2\xa0\xd6\xe5\xcf\x1b\xb6l-\x15\x02\x83N\xb2u\xee\xcd\x994[\xb7\xd2\xcb:\xa3\xe7\x7f\xd24k\xf5&~S\x1e\xd2\xb2\xd9^\xe5\xf1\xb9\xa5\x8a\x83\x02\x1b|\xde\xbd\x1cx\x8f\xc0\xd4\x17X\x02\x14M\x9e$\xb0\x19\xc9\xc0i\x0f\x83i\xbdJ\xe0(Y=\xa5w \xa6\xf40\x81\xbdp\xf5(O\x13L\xe8m\x02\xa7\xc7 B\xbdN0\xc6\xf3\x84q\xecv/\xe4\xc5X\xc4z\x84\x07\n\xc1%\x97\xba\xb1\x90\xf58O\x14\x82\xee\xb07\x16\xb3\x9e\xda#\x05\xe3\xbdR0\xbdg\n\xc6y\xa7`\x9c\x87\n_\xa2(\x91\x93\xf9\xad`r\xdf\x15L\xe9\xbf\x02\x92\x0f\x0b\xa6\xf4c\x81\xb5\xe8\xf58\x7f\x16\xb6\xc6\xd1\xc2\xd7D/\x17\x8c\xf6t!\x08\xb1\xf2\xd7\xc1\xfe/0\x95\xc0vl\xf1\x962\xd8\x94\xfd?\xd0'\x86\xa9=c1l\x17\x1d\xe3\xfcc=d\xc2[\x86\x96\xc4\x9e\xc4O\x06S\xfb\xca\x00\xf1\x97\xc1x\x9fY\x0f[\x85\x14\xc7\x1e\xe7E\x03\x97s l%\xb2 \x1e50\xd5\xad\xf5\xf0\xac\x99q\x0cl\x92\xa3\xbcl\xe0\xc1\x0c\x97\xb7\x0d\x9c\xe3vz\xdd\xc0\xcf\xf3\x06x\xadbK\xf1\xec)\xbcp0\xca\x13\x07\xb69\x0c\xf4\xc8\x81\xcb+\x07\x8eB\xda\xaeR\xda\x96\x89\xa5z\xe9\x80\xe0\xa9\x03\xac\xa4\xf6(\x8f\x1d\xd0\xbcv\xe0\xe5\xb9\x03\x8a\xf7\x0e\x8cLCE\xd6\xf4\xad\xcb\x9b\x07\xa3=z`#\xb4\xf7\xeb\xa4\xde=\x18\xe9\xe1\xeb\xa1\xc2JoO\xec\xf3\x83\x89\xfd~`-\xc0\x8d\x96\xe0\x9e\xca\x07\x08S\xfa\x01ar_ \x90\xfd\x81@\xf1 \x02\xdd/\x08D\xdf \xe0%\xb9\xf1\"\xcdtO\x92\xab,7\xd9W\x084\x7f!`\xc3\x98\xd2o\x08c}\x87=\\H\xb9\xee)\xbd\x890\xa9G\x11F\xcb\x83\xd3\xb3\x08\x04\xef\"\xf46\x1d\x93\x97\x11(\xb1\x8b\xc3\x17s\x07\x1eG_<\x96\xfc\x7f\xc4\xf6\xaem\xe62\xab\xab\xf5A\xd7\xf2ow~\xfd\x91`\xf0\xf76\xf6'\xed4\x0e\xb4\x0d\xde\x0e\x8c\x86r#\x17c\xcaEL\xb9\x087|K\x83\xdd\x80G1\xe5\xc2\xc7\xc0=\xd2\xb8=\xb1a{\x84Q{\x84A\x1b\xb5\xaeNf\xba\x9e\xd6l=\x99\xc9\xdam\xae\x9e\xccT\x1dS.b\xca\x85\x87I9\xa6\\ \x06\xe31\xc6bJ\x16BL\xb9hAL\xb9\xd0\x10S.j\x18a\xc0%\x18o\xe9\x86[\xa7\xd16\xa6\\\x8c1\xc8\xc6\x94\x8b\x98r\x11S.\xa63\x9d\x8e2\x9b\xc6\x94\x0bR\xca\x85\xa5tP\xcf\nH)1\xa5\x13%\xb0bi.kc@Y\x1c\xd5\xb0oo\x9c\xb6\xc8he\x88\xe05\xde\xb8\\W\xabI\xcd\x93\xf6\xc8\xdd\xe9L\x94\x13\x1a)\xad1\xbb#\x0c\x95\xd3\x99*]\xc6\xca@s\xe5\xd4\x06K\x8b\xc9rj\xa3\xa5\xd1l9\xdap9\xc0g\x8a\xcf\x9d\xd6x9\xda|9\xb9\x01s\x94 sz#\xe6\x84f\xcc\xa9\x0d\x99\x13\x9a2)\xc6\xcc \xcd\x99\xb6\xb8\xdb1&\xcd\x012<\xe6\x169Q`Zj\x9c\x99s\x80\x0e\x8b\xb6\x0d4|\x1a\"m-[\xb1%\xca\xd6\xb5K\x07\x9a@\x87\x8a\xcb\x18_k\xa3`bC(f\n\x9d\xc4\x18:\xb19\x14\x8b\xa9\x1di\x12\xed\xe0\xaa\x90x\xda1\x06Rg\xf8\xa81\x92\xd6i&\xc5\xc3\xd2\xe8\xa6R\xbc\xfd\xdf\xf0\xb1\x07\x19L\xa9\x83w\x19M\xed#u\x1aN\xbdL\xa7X\xf8\xa19^v\xbc\x01u\x8c \xd58[\x81fTg\x94\xac-F\xd6\x1e!k`\x1e\xd5\xa0\xea6\xa9\"\x91\xb1#\xcc\xaa$\xc3\xaa\x8fi\x95`\\5\x84\x99\"\xdd\xa2\xdf\xb9\x8c\xacc\xcd\xacF\xf2:\xbfMjl\x9d\xdc\xdc:\xb1\xc1uZ\x93\xab-\xd6\x15\x89t\x9d\xc6\xf0:\xa1\xe9uj\xe3+\xd5\xfcJ0\xc0\x92M\xb04#,\x1a\xd9\x8a\xf5J5\xd6\xb9\xa2Z\x89\xc6X\x929v@\xfc\x94&\xd9\xc9\x8d\xb2S\x9ae\xa74\xcc\x8e\x9bo\xa7q\xd6m\x9emo\x0c\xaa\x10\x84\xb6w\x8a\xcb\xbd\x98\xd2\x9bT\x14p\xa9\xff\xa2Z\xc4\x17l\xe2\x0b6\xbf\x8d\x17l\xfa\xb6\x7f\x0f'\x03\xf6$\x8b\xa6\x13\x0dy\xfe\xce\xe6\x84x/\xea\xc4(\xd4\xafn\xb9\x8a\x0d\xf5G\xc4\xf0gO\xdf\xc2d\x9e\x85\x18\xfe<\xc2\x9b\x10\xc3\x9f\xfd<\x08#\xfd\x07\x13{\x0fF\xf8\x0e\xa6\xf6\x1cL\xe67\x98\xd6k0\x99\xcf\xc0\xed1\x98\xcc_\x10\xc3\x9fc\xf8\xf3\x18\xab\x7f\x0c\x7f\x1eg\xdd\xa7D\x04\xc7\xf0\xe7\x16\xc4\xf0g\x0d1\xfc\xb9\x86\x11vz\x82\x95\x9en\xa3wZ\xe8c\xf8\xf3\xc4\xf6\xf8I\xad\xf1S\xda\xe2c\xf83\x90\xed\xefN\xeb;\xd1\xf6N\xb1\xbc\xc7\xf0\xe7\x06\xd7\xc4\x96\xf6\xe9\xec\xec\xd3Y\xd9\xc3g\xd7iaw\xd9\xd7\x9d\xe1\xcf\x16\x8b\xa0\xd5J\xd9\xc6\xf1\x14ABxCu\xd8\x7f\x0c\x8e\x0e1^\xc6\xe0\xe8\x16Le\xc8t\x992\x03\x8d\x99S\x9b3cpt\xb8is\xb4qsr\xf3\xe6(\x03\xe7\xf4&\xce \x8d\x9cS\x9b9'4tRL\x9d\x13\x1a;cp\xb4\x82@\xb3h\x0c\x8e\x0e5\x93\xc6\xe0h U\x0c\x8eF\xc7\x1edN\xa5\x0e\xdeeR\x8d\xc1\xd118\xdaep\x8d\xc1\xd118\xdai\x8c\x9d\xd8\x1c;\xadA6\x06GC\x0fh\xc6Y\x82y\x96l\xa0\xa5\x99hcpt\x0c\x8e\x1e5\xdfN\xd3\xad\xdbx\xebk\xbe\xa5\xc5\x97\xb6\x9bw-\xb7e\xc7h\xab\xd9\xe1\xf5\xaa\xa4\xc0*\x1f.\xf4\xb6\xe5\xee[/R\x0e\x86\xbd\xb7>\x86\xa84Z\xf3\x0c\xa2\x04\xd4\xcc\x8b\x1by\xad\xef[\x02%\xf6f\x10\xbb\x8c\xbfu9\x02\x97\xf9\xdd\xcb0\xa4\xce70\xa7A\x8b\xbc\x87\xe9\x8b\xb8#\n\x88\x8cQ\x02\xaa\xd5s\x9aF\xbf\xc4_k!\xfe\xa9Ht|3Aly\xdb\xbcH\xff\xda\xcbD\xf0\x90\xbd*FE\x8fw)\xc4\xa8\xe8\x11n\x84\x18\x15\xed\xe7:\x18\xe98\x98\xd8m0\xc2i0\xb5\xcb`2\x87\xc1\xb4\xee\x82\xc9\x9c\x05nW\xc1d\x8e\x82\x18\x15\x1d\xa3\xa2\xc7\x98\xfbcT\xf48\xb3>%P8FE\xb7 FEk\x88Q\xd15\x8c0\xd0\x13\xcc\xf3t\xe3\xbc\xd34\x1f\xa3\xa2'6\xc4Oj\x86\x9f\xd2\x08\x1f\xa3\xa2\x81lxw\x9a\xdd\x89Fw\x8a\xc9=FE7\xb8&6\xb1Og`\x9f\xce\xbc\x1e>\xbbN\xd3\xba\xcb\xb0\xae\xb54\xbb\xd9\xa7\x05j\xb7\xeb\xdd&\xf4Mb\x95T\xecI\x95\xee\x9aS,V\x9e\x82\x7f\x00\xd7\x17L\xea\xacM\x91d\xaa\xa2\x86\xe8\x8f\x89\xd9\xd7\x93\xb7/\x0e\x19[\xcd\x84=\xe1\xb0\xdd\xf2\x99f\xfds\xb2\xc0\xd0f\xdf*ge\xf6\xb0\x92\xb7\xecD\xf6\xd7\x8c\x05\x1e\xc9K\xda2\xcfV\xca\x96\xc1'\xf7K\xc7P\xd9\x99\xd4]r\x0b\xc9~\xbf\x15w\xf24\x13\xd7\x9e\xa4b\x0d\xf9r;\xc5+\x94\x08k)l\xd2+V\xc2\x9e\x15\xbb\xb4,E\x9fU\x0e\xec\x86-\x0f\xf5\xddK\xd8\xec\xe5\xfe\xa46\x07\xa9\xe5Z\x94\xf3\x91\xd8\xcd\xb2/\x87\xd6V\x82\x8dV\x0c\xa2\xfd\x06\"2\xcb\xf2\x1bf\xfd&\xdaz\xa3\xad7\xdaz\xa3\xad7\xdaz\xa3\xad7\xdaz\xa3\xad7\xdaz\xa3\xad7\xdaz\x05D[o\xb4\xf5F[o\xb4\xf5F[o\xb4\xf5F[o\xb4\xf5v |v\xbf\x16[o\xdf\xce;4F\x02\xbb\xa9X\xb6\xe2\x13\xadM\xbe\xd5\x05,\xf2\xeaB\xde\x1bV\xab\x82\x95\\w(\xad\xa0\xec\x8d\n\x1f\x97\x12e\xa5\xac\xf7\xd4\x13q\xcf\x13\x97\xa74\x13\xc7\xe12-%S\xc4\xf7\xa2\x9c\xb3\xfc\xb7\xc9f*B_\x7f\x92=\x89\xff\xf3\x0f\xcb\x16T\xddq\x81\x8d\x81}\xb6\x8d\x05\xb9\xed\x0dl\xb5\x8e\xef\x0dv\xdbv\xab\x01\xad`\xa1\x17\x8c\x96\xdc\xe6o\x86ldp\xdeI%Lh\xdb\x95`+\x12\x02\x93\xday%Lf\xed\x95`)\x18\x02\xe3,\xbf\x12\xa6\xb2\xffJp\x15\x0f\x81P[\xb0\x84`\x8b0\xce\xbb\xdb\xbd\x90!c!\x11\x18c\x1dF\xb1\xc9\xcd\xc9XP\x04FZ\x8aQ\x84\x87\xbd\xb1\xb0\x08\x04Z\x8dQD\x96\x82#0\xde\x9e\xac\x91\x10\xac\xcahK\xb2\xa5Y\xc2\x08{\xb3\x84\x11Vg\xd3B7\x90:\x99=Z\xc2\xb4Vi \x93\xd9\xa6%\xb8-\xd4\x12&\xb3SK0\x170\x81\x916k\\W\xa0\x85L\x80j\xcd\x96\x10j\xd3F\x91\x99\xec\xdc\x12\x02\xad\xdd\x12\xd0\xe2&\xe0>RX\x8a\x9c\x00\xf1\xc4\x11h\x0b\xc7\x95\xa9\xb1\xe0 \x10\xa8\x19g\x1d\x1f\xa0\x13\xd6r\xb4\xf8 Lc)\x970\xce^>@'N4\xe8\xe1a\xa4\xed|\xd8\x13R\x10\x05FZ\xd4%8j\x83\x80\xad8\nPl\xec\x12\xd0\xaa\x05^\xf6v &\xe1T\x0b\xbf\x04\x97\x9d_\xc2\xa0\xf8\n\x8c\xb3\xf9K X\xfe%\xd0\xed\xff\x12\x9c^\x00 &&\x1a\xc4\xda\xfc\xbd\xcb; a\x9c\x8f@\x82\x85\xe4\xc1\xef\xa3\xbc\x06\x03l\x83\xe2-0\xd2\x970\xec\x01)\xe8\x02c=\x0cC\x92\xfbE^`b\xbf\x83\x04s\xb1\x17\xc0\x0b\xbe\xc0d\x9e\x08 \x93\xf9#$L\xeb\x95\x90@\xf3MHpz($\x10\xfd\x14\x9d\x8f\x1d\xc5`\x00_]`(\x12\x02\x1e\x16nWa\x18\xa0{1\xd4\xc7n_\x86\x04d@S\xfa5$\x8c\xf2n\x0c\xb0!\xc5c`R\x9fG\xab\x9bI<\x1f\x12\xc6\xca\x88\xd3\x0b\xa2\xd09\x0b\xca\xc0`c\xc3\xfc\"\x12,7Ns<\xbc\xe9\xc1\xc6\xd1\xfe\x92\x0e6e\xffG\xbd&\x12\xfc|'\x12:\xd7R\xe9\xf6\x10\x968\xd8\xa6\xa50p\xaa\xdfd\x8f+-E\x8a\x18\xbd'\x87Cd\x1d\x92p%;>\xc1\x84O\xcd\xeb\xefu\x9e\xb64\x08T\xf9%\xcb\xd4Y\xb530\xb1\x87$\x99\xea\xb2sg\xfd\xf0\xf1\xfc\xf8\x858a\xcb?\xaacl*4\xd2 \xdf\x8a\xc4\x01\xa2\xb6\xdbvN\x11r\xce[\xd8\xcat\x93%\xd5\xa1`%\x14\xec\xd7CZ\xc8[\xd5&\xdf\xe4b\xcf\x9e\x0d\x05\xb2\x1eP#\"\xf5\x90\xca\xaa8,9\xba\xe6x$\x0eA\x19$K\xb1G\x85\xceR\xe2\x8d\xfb}\x8b\xdf\xa4\xa8=j\x82\xbe\xf8_\x1a6\xe9+\xb7\x90\x99\x16\xbe\x1f\xe1\xdbZDVi\xb9\xdf&\xb7>\xb4u\xa6E\xb5\x874[\xa5\xcb\xa4Rg\xfd\xf2\xb0\xd9\xb0\x92\x9f\xc8\xd4J\xe5\x93S\x939l.\x03\xa6\x97[~\xc1\xac\xaf\x88\\\xe3\xf9\xd0\xf5\x10=\xef}\xf7\xb0?\xa3\x0f\x85*m_M:\xd1x\xe2\xec\xfe\x88m^\xc0k\x81\x08^\xf2%\xa5\xb1\x94\xb7\xbbE\xbe\xf5!\xab3\x95\xb2\xb9\xbe\xdf\xc9\xbe\xd4o:J\xae\xbc\xc8\xaf3\x10\xa1\xea: GP\xf3\xf2\xfc\xe3\xfb\xc72\xe4\xb1\x85p\xd95\x86+\x19(\x85\xa3Av\xa2X\xdc5\xf3\xe3\xacR\x1f\x1c\x8a4x\x80\x9f?\x9d\x88\x08&X\xe5\xcb\x83\x08\xa4|\x94s\x1d\x0d\xf9z\xfddy\x91\xa4\xd9c)\x0dM\x08Em\xb9o\xa1I3\xb9\xeb\xf0\xcb |T\x01t\x84!\xfc\xd0\x0ca~\x91\x94\x17c\xc6\xf1sR^HUV^$\xcf\xbf\xff\x018B\xe1\xebh\x06\xb7\xcfS\x1d\x95\xff\xf9\xd3 \xbf\xcd\xdd\\!\xaf^\xc0\xe7Rh\xb76\x85i\xc6\xaf\xe5\xc9N\xec\xd5\xab\xfa\xdb\x8eE\xe2m^\xe8\x1c\x96\xa3\xda\xaf\x99\xb1\xeb\xed-_\xb3|\x10\xed\x11)s\x852z\xcbf-dr\x02;\xf8\xcf\xaa\xbc\x10N=\x19\xce(\x83\xf1vI\x96\xee\x0f\xdb\x96S0-\xdb\xda@\x86\xea]\x0fc\x00/\x19\xdb\x8b\x84\x9c\xd6o/ElQw\xb1\xfc\xf1H\xe2\x14\xdeZv\x93\x96\x95\xdc\xb4\x17\xc9\xf2\xf2:)Ve/\x86\xb2sFS\xe3\x82u\xbae\xf5>\xa5<\xd2s\x9b\x90\xb7e\xa93ir!uv#11\xacbEsX\xe2k\x0fv\xf9\xea\xb0e\xa6\x15)\xac\x82/\xb7\xdbW\xd2:\xe2\x9f\xec\xa0\xcc*_\xd5\x95 3\xcd\x19?\xb7\x9d\x1d'0\xd0Mm\xa2\xa3\x1a\xe9\x06C\xd3\x13\xa5O\x11\xf5\xbf\xf9\xd6\xb4\x957 \xae|\xca1n\x10)\x88\xf5\xcfj]G7Ht\x83\xdc\xa5\x1b\x04\xd1_$_H\xd3La\xfbt\xfaZ\x13i\xf7\x87\x08\x04\xaaq\xa8\xca\xeckL\xd2j@\x14\xa1a\xd6\xa3\x7f\x02\x91\x94\xde\x94Q\xa4D5!\xbb\xcaD+q\x9b\xd6\x87\xe8W\xb7\xe2\xb73\xc1voi\xd9u\xec\x9dh#\xbca\x9f\x15nI0\xd8@\xc1\xb0\xa9\x83\xc9\xe8c\xd8\xdc\xc1\x91\x7f\x88n\xf2`\xd3k\xba\x9d\xdd\x9a\x08\x10n#E\x91!\x8e\x95\x06L\xb6R\xa8\x07\x82\xdbK\xc1a3\x05\xe2H\xa7\xb2\x9dB\x98\xfd\x14\xc5cu\xd44\xe0oG\x85\x91\xb6T\x14a\xed\xd0\xb1$\xea\x84\xd9T\xc1lW\x05\xcb\"\x93`\xb0\xaf\x82{\x81Lfg\x05\xe79j\x02{+\x80\xaf\xcd\x15`b\xbb+\x0cl\xaf`\xe3\xb2}Y\x8e\xb1\xc3\xf6P\xb5\xa4\xee\xdb\x8eh\x0d\xec\xb1@\xa6w0\x85#m\xb3-\x14\xa8}\x16\x066Z \xd3\xea\xb4\xd5\x02Lc\xaf\x05\xc4f\x0bd2\x07\"0\xda~\xdb\xc3'\x12\xd8\x97\xc3\x80f\xaa\x1d\x17\\\xb6\\\xe8\xdbs!|\xf0\x13\xd9v\x81f\xdf\x05\x97\x8d\x17P;/\x8c\x1a\xdf(\x9bo\x0f]\x95\x9b\xec\xbe\x00!\xb6_p3\xc4\xac\x0f\xfc\xed\xc0\x80\xd9\x82\xadgr\xf7Y\x99^\xe7\xa3\x83\x0b\xb9\xce\xc1\x89(1\xb1L\xb6\xf2\xc00$\xa0\xeesq\xe0;\xd8\x92\x89\xe0U\xa9\xf3\xea\xf4xy\xd1W[g\x9a\x89\xcb\x08\xbf\xec\x92\xaf\x04\xf1\x16\x10o\x01\xf1\x16\x10o\x01\xf1\x16\x10o\x01\xf1\x16P\x03\x8d\xd6x\x0b\x90\x10o\x01\xf1\x16\xf0\x8fy\x0b\x98\xfe\xe0\xef<\x99\x8b\xcc\x05\x7f\xf7\xb7\xdcir\xd1\xb8\x7f6\x9f\xd6\x05>\xc8\xa7icA7\xfd\x0e\xb7'\xca\xad\x910\xf0`\xb5i\xb9\xa7\x13?\xee\xe4w4s\x1d\x9d\x83=^\x03Lc\x1c_\x03d\xca\x116\xf8\x9d\xe6\x0f\x93`\x1b\xfa\xe8\xdc\x9d\x0e6\x9d\xc7\xd3\xf9qt:Ow1\xa8\xd4\x1eL*\xc1\x92\xe1\xd3\xf9\xde\xaa\x0fc\xf4C\x8c~\xf8mD? \xdbWG\"?\x9d\xben6Pq\x1ai\xb5h\xb9\xb5e\x99\xe9z\x8dx\xa5\xc15\x84\x94\xa3M\\w\xbc\x8f\x1a\x8da\xd6\xa3\x9f\xc1 f\xbb\xad[\xf3!\xd0M\xd2\xbeMZ6J\xe7\xdd\xdf\xbd\xf3\xe9\xaf&4\x909Ldv#\x99\xdbL\xe66\x94QG=\xa5\xb1l:s\x19\xd9`\x16j2\x0b1\x9a\xb9(%\x99\xcd\xc6\x18\xce\xac\xa63\x97\xf1\xccj>#,\xa2IMh\xaeM\x19\xa62\xa3\x85\x18\xd2\xee\xc0\x94\x86\x19\xd3F\x1d\xd6'4\xa9Y\x8cj\x06\xb3\x1a\x9drdb'0\xae\xb9\xcdk\x98\x81\x8dN5\xc9\xc86\x9d\x99\x0d7\xb4\xd1\xc9E\xc4#\xdc\xdc6@\xd5J\xa2\xc2\x0cn~&7\x82\xd1\x0d1\xbb\x8db\xc5\x84\xc67\xb2\xf9\xcdio\x02\xa3 n\xecX\xa74\xc4\xb9Lq\xa1\xc68\x02{lZ$\xcc$\x87\x1a\xe5\x06]u\x98\xaaO\xe5P\xd7\xfe\x15v\n\xa1n:\x196B\xf3\xab<\x82\x82m\xd2\xb2bE\x87\x9b\xa2\xcb\x98]\x10\xef\xd7\xbf\xc5\xfb\xf5\xe0Z\xebi\x9a.\x03m\xd32\xd1\xcb\xfb.\xbdo%Z\x0e\x86\xa7R\xf8:\x0b\xba\x95=V\x1f\x0d;\xc9c\x12O\x89m\x1co7w\xd3\xd8\x1b\x08\xc7\xe9\xf2\xbf\x9d\xf2\xc9\xfa\xb8o?\xd6\xc4\xd9\xa4\xc2\xe1\xf4\xeb\xdd\xcbd\xbb\x14\x1e\xa4l\x03\xefYq\xb9eP\xe4y5\x0cA\xe4g\x08\xe1\xca]\xe6\x07\xec\xed\xb6\x05k\xbd\xee,\xc9>R\xdeV\x11G\xcb\x96\xac,\xf9\xdf\x04\x92\xd6\x9b\x8c\x03L\x19K7\x17\x8b\xfcP\x88v\xf9\ny\x91\xf1\")/\xd0\xfc\x13\xf1B\xba\xb0\xd3W\xea\xa9\xbb\x04V\x07\xf9p}\x1d\x99\xa59#N,\xf2C\xa5\xd6\x07\x08\xd3\x0c\xce\x1b\xf5R\xff\xd9\xcc{\x85[X \x14?\xc5\xaa\xd1=\xf0\xd3R\xd5\n#\xd4\xdfwG\xe35\x8e\x12\x19H\xd7\xe57\x1c\xc2\x05\xe7\xf1\xe0^EP7\\?\x96\xfbdh\x96m\xb5\xc5\xb93\xd0\xc9\xb8w\xaesS\x15\x7f\xaa\x1b\x8a;\xad\xc2\xd6\x8b\xdb\xa71L\xf7,\xb1\xe1\\S\x08\xbb,sl7\xaf\xb6\xf9\xf2\x92\xbc\xc5\\\xb0d\xa5\x9f\x94B\x9b\xe0\xcd@\xd6\xc6.\xd3A=\x0by\xf8\x90!N\x0bN\x8a\xd8m\xba\xdf\x98\xb4\xa7Yw.\x9aA\xb5\xc1\xaa\xb0,g9\x80d\xbf\x9f\x0e\x9d]\xfb\xbd\xe6\xb3\x9c\x95\x87\x12\x96\xc9^^W\xe4\x85C\xff\\\x1c\xb6*\\y_\xe4\\3 \xbbt\xcd\xbd\x1e:\xdeV\xfcID\x0d\x1e\xf5\xf5N\x9a-\xb7\x07\xf9\xd2%?:\xd7\x1fJUW\x0bt\xa9_\xcbU\xbdK\xa1\x1c2I\xc8l\x9ag\x0f\x07\xa1\x0e\xfc\x8c\xc4\xa0*\x92\xac\x94\x0f`\xee\x92\xe5E\x9au\x1e\xe6\x17=\xcfS\xd4\x89>`s_\x0dX>5'\x1eT)9\xa3]\xa3\xc0\x1e\x9c\x14O\xb7\n\xe6\x19\xa8\xf7\x92^,\xbe\x92(m\xc8^\xbbO\x8aj^\xb2j\xde_\xbb\x1a,\xa7\x13W~\x0brW\xaa\xff\x84\x1e?\xdb\xe0J\x06\xc1\xd9\x00.V\x80\xeb8\xa3t\xceiRT%\xab~\x16\\\xf9\x06\xf9@h\xc6\x937\xfdi^\xe6\xbb]Z\xf9\xe4\xa1\x1b\xa9Q\x1dqTrM\xc95\xcc\x97^\xeb;\xfe\xcf \xbaS\x8f\x82\xe6E9\x01\xb2>\xed\xebB\x84\xbf3\xae\x03 ?T\xfbC\xd5\xfc\xb6/\xd8\x95\x1cZ\x0b\x830\x0cLJS\xad!'\xc0\x95\xec\xf7\x13`\x11\xf2\xa2\xee\xf5\x13\xa0cW\xe9\x8aeK6\x01\xaaz\xfe\x9am\xa5\xb7\xef\xf2\x85\x9f\x97\xac\x98\xa3i\xec\xc6\xfe\xec{[\x1f\xa9\xb6)\xe4E\xbaI\xb3Dm@\xf5g:\x9b\xf8H\x0d\xa3\x1a\x9cr\xc5\xe3\xcf\xaf\xd8\xf2\xe2\xbb\xe7\x8a\x9aA\xf4\xd9I\xfb\x18\xacb\xc1\xf49\xeb\x0bgK\xf9\xe5H\xd4\x0eSf\xb7\xb37\x7f:\x82k\xb1\xe1^\xb1\xa2\x82A\xae\x9c\xb8\xffw\xfa\xecw)\xc2\xcbXU\xb1\x02>\xff\xbb\xe1\xe4-\xf5N\xe7\x1c\xd9\x1c\x1fEXCC\xb5b\x8bT\xe0\x1a_pq\xb1\xeaf\xfc]\x16\xd5\xbd4\x13\xe1@(\xceoJ\x19\x00\xaf\xadw\xe2\x1c!\xaf\x1b\xf2\xd4\xf0/\x92\x01\xb3\x9f\xc5\x96\xff\xfbg\x839\x96\xa6\xe2,\xaf\xa4\x7f\xf4\xa6\x84\xda\xd2'T\xcc\x0c\xe0\xdf\xd8\xc3\x82\xc1\x7f\x1e\xca\n\x92M\xc1\x18?\xf2\xe4\xfd\xc7%8\xc8\x94?\xf1\xda\xf9\xa0\x1fqH\xdf\xb1$S\x14K\xb2^\xee\xf7\"\x81a\x95\xb3R\x10!\x0fU\"\x9e\xb2d\x9c\x9c\x81i\xf9\x8d\xbc\x8d\xb6\x12\xe8K&s\xbc\xf8\x01)YV\xf2Ed\x89\xa7\x0e\xc1j\xebP\xad\x0c\x82D`\xd8\x18\xc2\xe4\xc0\xdb\xa6Q\xdfk\xe6Wy\xc5\xe68!\x12\xac\xe7\x12\xd7\xc9\x04@\xe0G\xed\x16\xe0F\x0e\x84\x0e@\xa31\xfe\x95pR\x91\xc0\xb2\x83!MX\xc3\x138;\xf9\xe9\xc3\xf1\x9b\xf9\xfb\xb3\x9f\xe6\xe7\xffqz<\xff\xfc\xe1O\x1f>\xfe\xdb\x07\xcfV\xa7\x9f\x8e\x7f\xf9x~\xec\xdf\xea\xf5\xc7\xf7\xefO\xce\xbd\xdb}<\xfdx\xf6\xf2\x9d\xa5\x99\n\xa2}\x110>\x97\x15\xa9\x0dg\xe9&c\xab\xf7\xe5\xe6\xbc\xbeb\x8bM _\x0b\xbf\x10[\xd5\x8f\xeb\x0f^\x9c\x19B\xbdi\x0e\x14D\x0f\x8c\xfc\x7f\x01\xbf\xe4\x15\x1b\xbeW\xe8l-\xf9\xf9\x02N\xc5\x16\x99l\xcd(\xb0\xfbQ\x17\x88\xc2\xe9:\xa7K(\xf2C\x86\xc6\xe1kp_\x08$\xb4\xba\xfb\xee\xb9\xf1;\xfc\xb2\xd5\x05\xc2\x1a\x07\xe2:\x07\xeb}\xa4\x01\"K\xc1uGi\x83\xf3\x02\xd7\x05\xe2\xa8\xc1c\xe4\x00\xd6\xab^\xefC\xe2\xffV\x15gJ\xf7\xc9\xf0J\xd4\x854k]\xf1t\xb2\x9b\xb5ER\x96\xf92\x15\xd9\x00\xf2xk\xfc\x9a\xddT,\x1b\xdat\xbb\xf0w\xe6eM\xa3\xf2\xe74^\x8c\x96\xb5r\x06\x1f\xbb \x11C\x10S\xa0\x8c\xaeL\x9a\x80\xeclT\xc7\x89\x92\xc0\xbe\xf9oA(\x1bF\xba\xc5\xd3\x8a\xad-\xba-\xa7\x05\x0e\x03\xd9E\xc4\xd3\x8a\x80O,6y\xce\xf9\xa12H0\xa7\x93\xd3\xbd/\x18\xbf{@\xa7;\xf1\xcb\xba@j\x8ahhla\xd0\n<\x1fB\xeb\xf0\x89\xfdY\\{\x16\xf1\xda\x13\xaf=\x10\xaf=(\x10\x85\x93v.\x8d\xd7\x1e\xa0\xb3\x14\xe8\xfbS\xbc\xf6t\x802 \xe07\x11\xe03\x19\xf1\xdaC\xed=^{\x14\xf8lS\xf1\xda31/\xe3\xb5\x07\x87\x11\x8ct\x8b\xa7\x15[\xbc\xf6\xe00\xd1\xb5G\xec\xd3\xf3\xab\xbcJ\xb3\xcd\\\x94\x02\xb5_\x81\xac\x02\xe5\xde\x9b\x1bE~\xf7}9\xf7H\x8f^l{#e\xea\xdfh\xf7\x1d\x9f\xffc\xe5\xbck\x1c\x99\xda\x9d'\x1d\xd85\x93PT\xea\xfeQ]\xe7\xbc\xfdz\x9b.E /\x97\x18d\x8e\xb7\xfcT?\x97U\xcc\xe6IU%\xcb\xcb\xbbt\x1e\xb6(\x9a\x1b\x82 %\x10\x8e\x9d\xae\xbe\xa0f\x06\xe1\xa8K\xe8\x0f\x88}\x02\x12\xcf\x89\x03\xb1S\xf0\xe8\x18L\x11\xa18P\xe2D\x0d-\xe9\xb4\x83'\xfd`\x8e4\xc5\x81\xb0P\xfb\xa0\x17.\x1a\x95\x8a\x03\x1a\xab\x8a\xc3}\x10DQ+}\xa0\xc7\xc0\x92\xd0\xa1q\xb2\xae\xc8X\x1c|\xe2eI\x08\xfb1\xb5\xf6(Z\x1c(\xb1\xb58\xe0\x11\xb78x \x8b\xdb\x0c\xa3\xc1\x0b-e\xbfl\xc30\xbe\xd7\xf0]\x18\x11\xee\xab\xa6\x06K\x840\x0ew\xac\xb7\xa8\x06\x05\xf0g\x0e\xd0\x8f\xe3\x0dxZ{4xr \x028\x05\xe0a\x05\xd2@\xbd\xbd\xf7\xc1O\xba5\xf8L&\x84M(\x84L\xaa\xb7\xd5\xa8\xd7\xcce=\xd2`\x8f\xcb\xc6\xc1\x93\x07\x9ec\xa7Ev\xe3`\x88\xf7\xc6\xe1.\x87a\x8d\xce\xc6\xe1.\xc91\xe7T\xe3@\x0dM'!\xeb\x87\xaf\xe3\xe0\x0ej\xc7\xe1.\xd9f\x0b\x8b\xc7\xe1.\xa9\xc1\x03\xebq\xb8K:\x1c\xa1\xf98\xdc%A\x96\xe0~\x1c\xee\x92\x18wz\x00\x0e\xf6\xa4\x01\x1c\xeen\x1c\x9e\xf1\xf6X\x90=\x0er\xabq\x0d\xce\xe3l\xe2s&\xf9JN\xd6N\xc7\xa7\x06\xdf\xa3\x10\xcd\xa1\xa1!\x1e\xa9\x8d\x10\x8f\xd4\x02\xfc\xc4Z\x83\xcfdB\xd8\x84B\xc8\xa4\xde\xd7\x91\xba)\x96D\xe1\x82\x1c\xbd\xf9\x11\xa7.X\x9ft\xea\x82\xb70\xfa\x8b\xa2\xd6 \xf3\xf56A^\x921A\xd0\x84\xbb\x03\x9e\xba\xf0\x04^\xbd\xfb\xf8\xfaO\xf3\x937\xf3\xb7\xef^\xfeD\x08\x0e\xeaC\x1f\xc3\xcbWg\xc7\x1f\xec\xf1L]\xe8# \x04Du\xa1\x8f\xe0\xc3\x89-.\xaa\x0bu\x94\xd486\xf8\xdd\x1b$\xc8\x85\xb2z\xbbM6\xadW\x9fd\xc91\xb5\x88\x9c\x01S]h\x1c\x88)\xddt\xe9\x19\xac\xd0\x85 \x19\x0dRI\x84(\x8e.\x8c\"\x8dnv\x93@r4wa\x14}d\xd6\x85\xd8\xc6\x01^\x8b\xe3\xe7Y\xba\x91\x01}|\x9f\xd7\xc6c\xe1\x96\xd5i\x83Dti\x06\x89\xc2\xe92\x18\xfb\xd2+\xb1v\x13\x1dk\x1f\xa1\xc8\xa0\xd4\xc7\xee\xeb\xc4\x11\x15X\x1f\xbb\xd5\x1bP\x89\xce\x98l\xae\xdbf\xea\x9b5T2Bl\xa0s\xbf\xa1\xee2\x0dm.\xc9\xa3\xef\xa0\xc4\xdd\x938\x12 \xd4\xf1H\xf0\xd2C\xde\x0b\xc9s\x11\xed\x0f\x8ba\x15C\x13x1\x05\xbc\x19\xc3\x81\xad\x9e\x7f\xff\xfd\xb3\xffM\xfd<\x80A\xe0\xcf$\x105\xe8\x96\xfb\xe7\xdf\xffp\xf9\xeck#\xcdww>=,\xb6\xe9\xf2O\xec\xb6s\x99\xbfd\xb7\xed\xda\x89\xf4\xfd\xf5P2Y\x9a\xf4\x97z\xb1\x12ZR\"M\xba\xe0\xcdL\xdf\x8bKm|\xd9\x17i^\xa4\x95\xd7\x9a\xb8\x13\xba4E.B<\x96\xa5\xcf\x82\xf4\xd0S\x9eL\xf0\x92q\x0f\x0d\xe5\xc1\x08\xf0d\x06\xf8\xeb&O\xa6\x80/c D+\xdd=Q~\xfa\x88\xaa\x8d\xb8\x9e!!\xf4\xd5E\xbe\x9a\xc8\x93\x81\xf4\xd5\x0e\xa1:\xe8\xce(\xa2\x07\x05\xd6-\xe8\xa4\xb8\xc9\xe0\xe7\xd5<\x9b\xdb\x0d\xb6\x84\x1e\xdd=-n\xff\x9adU\x9a\xb1\xb9\xfb\xc4\xe9>i:N\x98$%ESM$\x0dM\xe0\x90\x04\xe2:'\xe9c\xd2 \x81\x98\xd3S\x7f\x90\xb4\x1e\x04\x1f-\xd1\xc7'\xadg\x90\xb2\x833\xd0\x9e\xc4CM\xd91'\xe8X\xa6\xc2dq\"-jl\xe2\xf04\x1a\x12:\xd3\x9e\xecH\x88\x19\xb12\xee\xea\xecL\xb8N\x80\x8brpR\x0ff\x1d_\xff\xd9y\xbd\x00\xc2\x15\x03\x9cQnNv\x81\x9be\x84+\x07\x98\xf6\x06\x0d\xee\xf4\x0e\x92$\xda.D\x84D\x0dKZFh\xf7\xceL\x81P\xc4\xfdq9s P\xf5I\xcbf\x08\xa5\xd1\x95\x97\x10\x8a\xd7\x9ca\x10\x8a\x91\x90+\x10\x8a\xda\x11\xf5\x1f\x8a\x96\x16\xbf\xef\x8e\xd6\x0f\xeb\x7f\xa2\xb8\xfb\xe1\xb3c\x01G\xb4A\xb1{\xa8\xf1\xe0.\x10\xa3\xf3#\xfc\x96H9\xf6LP\x04\x1f&.\x84\x0f\x8eb\xf80IA|h\x84u|Q|p\xd4\xb6\xf7\x12\x1dsy\x89\x11\xf2\x13\\\x91\xc2\xa3p>\xb8{\x03B\x8f\xe0,\xa2\x0f\xb4\x8e\x80\xd8\x19ht\xd6/\x9c+\xb1\x0d\xb4\x80\xeb\xb0*\x93xKJ\xa5IcKbpuP\xc5I\x18Wu\x12Hj\xac\x0b\x93V\x9f\x04\x9f\n\x940\xba\n\xa5 \x03\xbd\x12%\x90\x93\xb5<\x04\x9ar\xaa\x97@J\xd0\xa2]%$\x98|?C\xa0&e\x11u\x07x\xe8\x0fp\xdej\x1a\xf0`;\xb8v\xf8>\x90\xae\x8a]\xf0\xe0\x06xr\x84\x83W\xc2\x95\x8f\\h\xa0\x8b\xa6\x06\xeaD\x81\xffd\x81\xef\x84\x11/\xaah\x13JR\x95\xd3\xf5]\x7fH\x1f\xa8\xcb\xc6\xd2\x05\x92\x0b\xa7\x0d\x01\x948Y\xedQ\x01\x13<\xe5\x90\xae\x9f\xc8\xf9 w\xc1\x01\xffm\x94X\x1d\xd3\x89\xa7W\x82\xd0\xb7B&xU\xc9\x04j\xa5L\xf8\xba\xf8\x00\xd0#\xa9q\xf0\x1c\x0b\x04\x8c\x07|\x1f\x81\x00\xba\x02\xe8\x83V\x08\xe4\xb7\x17$x<\x08\x01\xf7L\x1cUu\xf5\x81\x16%NF\x87G\x93S\xcdN\x1a\x1c1\xe68P#\xcf\xc9\x08\xb1\x08uw<:\x0e\xd4(u\x1c|\x1e\x97\x80\x10\xc1\xa3\x99\xcf4x\xa3\xa7\xee\xf9m\xa0>8\x01\xe3\x08r\x1d \xba\xe0\xfd\xf8\x04\xdc\x9f\xee\xf41\xf2@\x18\xd3\xc0\xef\xca\xd2@\x80\x95NC\x00\xf7 \x90\x83\x00\x9e\xd6;\x0d>\xd6\x93>\xf8\xaf\x0c\x0d\xbe\x13\x0e\xe1\x93\x0e\xa1\x13\x1fd\xed\xd3\xe0a\xf5\xd3\xe0\xcep\xc0!\x80/\x01\xfc\xa0\xe7H\xe0\xe0\xf5\xa0\x05\xdc\xd3\xb0\x9cy\x0d8\xdc\x07i\xf4B)\x0dP\x13=\xc8\x08M\xf9tC\xa0\xa5\x89\xe0p\x1f\xect%\x9a\xe0p\x1f\x94\xf9<\x86\x01\xf7D\x13!\xd9\x05\x87\xfb \xce\xfb\x91\x0c\xb8'\xc2h 78\xb8\xd3pp\xb8\xfbq\x85\xdc\xce\x88\xf9>$\\\x94\xb78\x80\xfc\x1e\x07\xf8\x1f\xcb|\x8fc_\xe1\x85\x84\xe4\xe7\xd7\x10r\"\xa4\xfb\xd54\xc4\x9b\x88\xc7\x1a\x94\x10o\"F\xf0_\x12\x1a|'\x1c\xc2'\x1dB'\xfe\xbeo\"~\xef~@\xcd\x11J\xe5r\x0d\xc4\n\xe6\x1a\x82\x048L|\xb5f\xf2|\x0b\x04\xc6\x08\x06-\x06\xb1\x0b>e\xab\xcc\xe0Q\xd0\xca\x0c\x1e\xa5\xae\xcc@+\x82e\x06\xef\xf2Xf\xf0\xbfzI V\xda\xf2\xc4\xea\xac\xcbe\x06\xefx\x9e.\x04\xcbs\xb0\x9a#8N\x870\x9aL?K\xaa\x04rLE\x17F\xd3\xea\xc5\xd2\x90\xc3\xbb\x04j!3\x0f\x94\x1eo\x8c@ \xed\xe42i$l\xc6Rj\xa4\xf7F\xc0\xe7\xcd\x11\xf0\xdb\xe3|v6w5\xe86\xf8\xed\xe4\x1e\xbb\xb8\xc7\xe8$\xf8\x8cQ\x82\xb7\x8e\x0bZ\x8c\x01\x0b\x91Tm\xba\x0d\xde\xcc\x82 \x86\x81OE\xea6\x041\x0e\xc2\x98\x07~U\xab\xdbp\xbfd\x86\x9c\x1a\xa8U\xae=P\x86\xbde\x02^\xd5\xaf\xdb\x10\xc4\xe4\x90\x0b\xdb\xde\xafBv\x1b\xee\x81\xc6=\xf1\x9d\x13\xf0_\xde\xbe\x0b\xdbS\x0f\x060\xc7{}xj@O\x06A\x00\x93 L\xf7\x050\x0bB\x18\x06\xa1Z\xef\xfe\x08\xf4\xd7w\x93k\xbbP]\x17\xa2\xe9\x02\x18\xeb\xa7A`\x8c\x8e\xbbs\xea\xfc\xe2x\xebV~d\xd1H\"\xbd\xa9\x02\xf4\xdei\xbd\xfa\xbc\xaf\x02\xe4\x934\xe1\x04MV\x86t\x15H\xde!\x88\x1c\x94\xe0\xa1C\xc8\xfb\x01y\xf0\xe0\xc5\x00\xf0\xd5\xfe^\x8c\x00?f\x80\xbf\xae\xbf[r|4;U\xa7\x13\xdf\xbe\xf2\xd3\xe6~\xea\xc8\x8bi4\xa5 !@k\xdf\x01-~\x1a\x9aH\x00\xb1k\x8a\xe1\xce\xb3G\x97Q\x8ej\x1f\x9a\xf2\x8d\x17\x08\x7f\xe7\x05Lo\xbd\x80M\xcb\x995\xda\xe4\xf5\x9d\x0dNb\x89\x8fPT~\xe0\xf8\x8d\x85\x9dQ\x88\x85\x9d;`s6\xda\x8ePwUc\x93\xe4\xfe#0\xcf\xee\xd2\xf3u\xdey\xba\xe9<\x1drt\xd7[\x90\x93m\xeawh\xc0\xc7\xb3E\x98*\x82\x94\xdf\xcf\x93e\x04\xaf\x92GO\x86\xe1L\xf8^\xcd\x00\xdd`\x1b&;d\x0c\xce\x96\x1e:\xd4\xf5R\xbf\x07\xd2\xf0L?!r\x96fK\x11\x90W\xee\xf2\xf2I\xb9\xba\x84og\x7f\xf8c|.d\x00N\xb1\xd2B\x15\x9f\x0bi\xbe\xa2%m\xc5\xe7B\xda\xbfR\xd0\xc5\xe7B\xfa\xe0:\xb4\xc4S%&*\xf1\xb9\x90\xfe\x1f=\xc6\xe5\xcc\"\x89\xcf\x85X0\x122(BQ\xff\x96\x9f\x0bq\xef\xe5\xfd\x0e\xc4\xfb\x83\x17\x0c\xf2\"\xdd\xa4Y\xa26\xda\xfa3m\xc9>BP\xc9\xc1\xf2\xd3d\xc2\xcf\xb6\xaf\xba\x8f\x0e\"\x0dN28g\xfa\xf1\xc1#\xa8.x\xdf\xaa,\xe1\x17\xce\xb2\xf2\xcb\x11,\x0e\x95> \x9c\xbd\xf9\xd3\x11\\c*L\xbdv\x08i\x05U\xde\xef\x1b\xeb\x9a\x9fM\x16\xac\xaaX\x01\x9f\xff\xddr\xc0vgV4#\x88\x8f\xaa@|T%>\xaa\xe2:;\xc5GU\xba\xdf\xb8No\x12h\x11\xeb\xb1j.m\xbcn5\xd6\x85X5\xd7\xed\xfc\x07?\x81\xa6\xdc}$\x90\xb2\xe9h\x17. 6'J\x17\xa8YsD\xdd\x01\x1e\xfa\x03\x9cw\xbf\x06<\xd8\x0e\xae\x1d\xbe\x0f\xa4\x0bu\x17<\xb8\x01\x9e\x1c\xe1\xe0\x95\xed\xe6#\x17\x1a\xe8\xa2\xa9\x81:Q\xe0?Y\xe0;a\xc4\xeb<\xda\x84\x92\xb5\xe64\xce\xd7\x1f\xd2\x07\xea\xb2Du\x81\xec\x8b\xd0\x10@\x89\x93\xd5\xb1j\xae\xff6\x1a\xab\xe6\xb6\xe0\xae\xf9\x1c\xab\xe6\xde+\x93c\xd5\\\x17\xd3\xbe\xe6\xaa\xb9\xf1Q\x15\xdf\x96\xf1z\xd8@\xbc\x1e\xc6\xeb\xa1\x0d\x88\xba\x03<\xf4\x07x\xdc:<\xd8\x0e~{f\xbc\x1e\x92\xdaP'\n\xfc'\x0b|',^\x0f\x07\x10@\x89\x93\xd5\xf1z\xe8\xbf\x8d\xc6\xeba\x0b\xee\x9a\xcf\xf1zx\xafL\x8e\xd7C\x17\xd3\xbe\xe6\xeb\xe1\xdf1\xd5'>\xaa2\x84\xf8\xa8J|T\xc5\xf5\x9d\x17\x01\xe0I\x04\xc4GU$\x10\x15@\x1f\xb4B\xf0z\xb7$>\xaa\xe2\x86\xf8\xa8\n\x0e\xd4X~\x1c\xe2\xa3*v\x18A\x90\xebH\xd0\x85\xf8\xa8\x8a\xcf\x95\xa5\x81\x00+\x9d\x86\x00\xeeA \x07\x01<\xadw\x1a|\xac'}\xf0_\x19\x1a|'\x1c\xc2'\x1dB'>\xc8\xda\xa7\xc1\xc3\xea\xa7\xc1\x9d\x07\x82C\x00_\x02\xf8A\xcf$\xc1!>\xaa\xe2G\x9a_e\x13 \xd4t\x182Bz\xfdQZ2\x0d\x0e\xf7\xc1NW:\x0e\x0e\xf7AY|T\xc5\x93\xb8\xf8\xa8J\x0b\xee~\\!\xb73w\xea\x0f]\xb3\xc4GU\xfa\xe0\x7f\xec\"\xf9\xf95\x84\x9c\x08\xe9~5\x0d\xf1&\xe2\xb1\x06%\xc4\x9b\x88\x11\xfc\x97\x84\x06\xdf \x87\xf0I\x87\xd0\x89\xbf\xef\x9bH|T\xc5YU \x87`\xc1\xa0\xc5 v\xc1\xb7.\x13\x0e\x9e\xd5\x9ap\xf0\xac\xe1\x84\x03\xbd\xb2\x13\x0eA\xf5\x9ep\xf0\xbfzI \x96\x8d\xf2\xc4J*2\x85\x83w\xaa\x82\x03]\x05\x92w\x08\"\x07%x\xe8\x10\xf2~@\x1e\x06\xf8t\xfa\x1av\xac\xba\xc8W\xbcc\xf9l\xccl\x91\x94l\xd6\x0cuv\xf5l\xc1\xaa\xe4\xd9\xec'V\xbd\xe3\xabM\xe2\xd0\xbdK\x19\x1b\xe8\xcb\xa1\x86\x1c\xee\xe4\xa8\x92\xc5U\xebp\x1b2\xca\xb0Ar\xad;s\xc0\xd1\xc9\xb0\x03\x93O:\x83\x1dw\xca\xf2\xf6\xd6\x1d\x15\xddI{\x99\x87\xfaA\xa17l_0\xaecW/`\xbfeI\xc9\x84\xb9\xecK\xfd\x06\xd1\x17H\xb3\xb2b\xc9*>24\x00\xa7\x9a\xd5\xf3\x17\x1f\x19j\xbe\xa2%1\xc6G\x86\xda\xbfR\xd0\xc5G\x86\xfa\xe0:\xc4\xc7[\x16&*\xf1\x91\xa1\xfe\x1f=\xc6\xe5\xcc\xaaB\xd5'-/*\x94FWVS(\xde\xf8\xc8\x10\x00-\x9b\xc7\x9d\xb7\x13\xd6\xbf\xe7K:r\xc5\xc5\xe7s\xe2\xf39\xf1\xf9\x1c\xf3\xa9 >\x9f\xd3\xfd\xc6u.\x91@\xcbM\x88\xf5\x91i\xe3u\xab\xb1.\xc4\xfa\xc8\xee0\x0f\xf0\x13h\xca\xa9^\x02)o\x92v\x95\x90`s\x97u\x81\x9a\x1fI\xd4\x1d\xe0\xa1?\xc0y\xabi\xc0\x83\xed\xe0\xda\xe1\xfb@\xba*v\xc1\x83\x1b\xe0\xc9\x11\x0e^y\x8d>r\xa1\x81.\x9a\x1a\xa8\x13\x05\xfe\x93\x05\xbe\x13F\xbc\xa8\xa2M(\xf9\x89N7L\xfd!}\xa0.\x1bK\x17\xc8^'\x0d\x01\x948Y\x1d\xeb#\xfbo\xa3\xb1>r\x0b\xee\x9a\xcf\xb1>\xf2\xbd29\xd6Gv1\xedk\xae\x8f\x1c\x9f\xcf\xf1m\x19\xaf\x87\x0d\xc4\xeba\xbc\x1e\xda\x80\xa8;\xc0C\x7f\x80\xc7\xad\xc3\x83\xed\xe0\xb7g\xc6\xeb!\xa9\x0du\xa2\xc0\x7f\xb2\xc0w\xc2\xe2\xf5p\x00\x01\x948Y\x1d\xaf\x87\xfe\xdbh\xbc\x1e\xb6\xe0\xae\xf9\x1c\xaf\x87\xf7\xca\xe4x=t1\xedk\xbe\x1e\xfe\x1d\x93\xba\xe2\xf39C\x88\xcf\xe7\xc4\xe7s\\\xdfy\x11\x00\x9eD@|>G\x02Q\x01\xf4A+\x04\xaf\x17j\xe2\xf39n\x88\xcf\xe7\xe0@\x8dR\xc7!>\x9fc\x87\x11\x04\xb9\x8e\x04]\x88\xcf\xe7\xf8\\Y\x1a\x08\xb0\xd2i\x08\xe0\x1e\x04r\x10\xc0\xd3z\xa7\xc1\xc7z\xd2\x07\xff\x95\xa1\xc1w\xc2!|\xd2!t\xe2\x83\xac}\x1a<\xac~\x1a\xdc\x19\x0e8\x04\xf0%\x80\x1f\xf4\x1c \x1c\xe2\xf39~\xa4\xf9\xd5\xb0\x91@M\xf4 #4\xe5\xd3\x0d\x81\x96&\x82\xc3}\xb0\xd3\x95h\x82\xc3}P\x16\x9f\xcf\xf1$.>\x9f\xd3\x82\xbb\x1fW\xc8\xed\x8c\x98\xefC\xc2\x15\x9f\xcf\xe9\x83\xff\xb1\x8b\xe4\xe7\xd7\x10r\"\xa4\xfb\xd54\xc4\x9b\x88\xc7\x1a\x94\x10o\"F\xf0_\x12\x1a|'\x1c\xc2'\x1dB'\xfe\xbeo\"\xf1\xf9\x1cg\xfd,\x1c\x82\x05\x83\x16\x83\xd8\x05\xdf\n\\8x\xd6\xe5\xc2\xc1\xb3Z\x17\x0e\xf4\x1a^8\x04U\xf6\xc2\xc1\xff\xea%\x81X \xcc\x13+\xa9\x9c\x18\x0e\xde\xf1<]\x08\x96\xe7`5Gp\x9c\x0ea4\x99~\x96T \xe4\x98\x8a.\x8c\xa6\xd5\x8b\xa5!\x87w \xd4\xbaj\x1e(\xe3\xf39\xb6O\xbd\xf68\x9f\x9d\x8dV\xec[\x83\xdfN\xee\xb1\x8b{\x8cN\x82\xcf\x18%x\xeb\xb8\xa0\xc5\x18\xb0\x10\xc9\xc5\xc25x3\x0b\x82\x18\x06\xbeE\xc45\x041\x0e\xc2\x98\x07\xfe\xc5\xc55\xdc/\x99!\xa7\x06j\xf1q\x0f\x94\xa1OJ\xf8\x16#\xd7\x10\xc4\xe4\x90\x0b\xdb\xde\xbfH\xb9\x86{\xa0q\x1f\x9f\xcf\xb1\x80\xa7\x06\xf4d\x10\x040 \xc2t_\x00\xb3 \x84a\x10\xaa\xf5\xee\x8f@\x7f}7\xb9\xb6\x0b\xd5u!\x9a.\x80\xb1~\x1a\x04\xc6\xe8\xb8;\xa7\xce/\x8e\xb7n\xe5G\x16\x8d\xa4\xf8|\x0e\x0et\x15H\xde!\x88\x1c\x94\xe0\xa1C\xc8\xfb\x01y\xf0\xe0\xc5\x00\xf0\xd5\xfe^\x8c\x00?f\x80\xbf\xae\xbf[r|4;U\xa7\xc7\xe7s:p\x07\xb4\xf8ih\"\x01\xc4\xae)\x86;\xcf\x1e]F9\xaa}(>\x9f\xd3\x80m6\xe3\xf39\x04\xf7\xaas;roA\xb1\xb0s\x07\xe2\xf39\x14/\x95\xa7\x9b\xce\xd3!Gw\xbd\x059\xd9\xe2\xf39\xe4m\xcd\xe9U\xf2\xe8\xc90\x9c\x7f\xb8\xe7s\xea\xf7@\x1a\x9e\xe9'D\xce\xd2l)\x02\xf2\xca]^>)W\x97\xf0\xed\xec\x0f\x7f\x8c\xcf\x85\x0c\xc0)VZ\xa8\xe2s!\xcdW\xb4\xa4\xad\xf8\\H\xfbW\n\xba\xf8\\H\x1f\\\x87\x96x\xaa\xc4D%>\x17\xd2\xff\xa3\xc7\xb8\x9cY$\xf1\xb9\x10\x0bFB\x06E(\xea\xdf\xf2s!\xee\xbd\xbc\xdf\x81~`0/\xd2M\x9a%j\xa3\xad?\xd3\x96\xec#\x04\x95\x1c,?M&\xfcl\xfb\xaa\xfb\xd6!\xd2\xe0$\x83s\xa6\x9f\x1e<\x82\xea\x82\xf7\xad\xca\x12~\xe1,+\xbf\x1c\xc1\xe2P\xe9\x03\xc2\xd9\x9b?\x1d\xc15\xa6\xc2\xd4#\x8b\x90VP\xe5\xfd\xbe\xb1\xae\xf9\xd9d\xc1\xaa\x8a\x15\xf0\xf9\xdf-\x07lwfE3\x82\xf8\xa8\n\xc4GU\xe2\xa3*\xae\xb3S|T\xa5\xfb\x8d\xeb\xf4&\x81\x16\xb1\x1e\xab\xe6\xd2\xc6\xebVc]\x88Us\xdd\xce\x7f\xf0\x13h\xca\xddG\x02)\x9b\x8ev\xe1\x92`s\xa2t\x81\x9a5G\xd4\x1d\xe0\xa1?\xc0y\xf7k\xc0\x83\xed\xe0\xda\xe1\xfb@\xbaPw\xc1\x83\x1b\xe0\xc9\x11\x0e^\xd9n>r\xa1\x81.\x9a\x1a\xa8\x13\x05\xfe\x93\x05\xbe\x13F\xbc\xce\xa3M(YkN\xe3|\xfd!}\xa0.KT\x17\xc8\xbe\x08\x0d\x01\x948Y\x1d\xab\xe6\xfao\xa3\xb1jn\x0b\xee\x9a\xcf\xb1j\xee\xbd29V\xcdu1\xedk\xae\x9a\x1b\x1fU\xf1m\x19\xaf\x87\x0d\xc4\xeba\xbc\x1e\xda\x80\xa8;\xc0C\x7f\x80\xc7\xad\xc3\x83\xed\xe0\xb7g\xc6\xeb!\xa9\x0du\xa2\xc0\x7f\xb2\xc0w\xc2\xe2\xf5p\x00\x01\x948Y\x1d\xaf\x87\xfe\xdbh\xbc\x1e\xb6\xe0\xae\xf9\x1c\xaf\x87\xf7\xca\xe4x=t1\xedk\xbe\x1e\xfe\x1dS}\xe2\xa3*C\x88\x8f\xaa\xc4GU\\\xdfy\x11\x00\x9eD@|TE\x02Q\x01\xf4A+\x04\xafwK\xe2\xa3*n\x88\x8f\xaa\xe0@\x8d\xe5\xc7!>\xaab\x87\x11\x04\xb9\x8e\x04]\x88\x8f\xaa\xf8\\Y\x1a\x08\xb0\xd2i\x08\xe0\x1e\x04r\x10\xc0\xd3z\xa7\xc1\xc7z\xd2\x07\xff\x95\xa1\xc1w\xc2!|\xd2!t\xe2\x83\xac}\x1a<\xac~\x1a\xdcy 8\x04\xf0%\x80\x1f\xf4L\x12\x1c\xe2\xa3*~\xa4\xf9U6\x91@M\x87!#\xa4\xd7\x1f\xa5%\xd3\xe0p\x1f\xect\xa5\xe3\xe0p\x1f\x94\xc5GU<\x89\x8b\x8f\xaa\xb4\xe0\xee\xc7\x15r;s\xa7\xfe\xd05K|T\xa5\x0f\xfe\xc7.\x92\x9f_C\xc8\x89\x90\xeeW\xd3\x10o\"\x1ekPB\xbc\x89\x18\xc1\x7fIh\xf0\x9dp\x08\x9ft\x08\x9d\xf8\xfb\xbe\x89\xc4GU\x9cU\x95p\x08\x16\x0cZ\x0cb\x17|\xeb2\xe1\xe0Y\xad \x07\xcf\x1aN8\xd0+;\xe1\x10T\xef \x07\xff\xab\x97\x04b\xd9(O\xac\xa4\"S8x\xc7\xf3t!X\x9e\x83\xd5\x1c\xc1q:\x84\xd1d\xfaYR%\x90c*\xba0\x9aV/\x96\x86\x1c\xde%P\xabmy\xa0\x8c\x8f\xaa\xd8>\xf5\xda\xe3|v6Z h\x0d~;\xb9\xc7.\xee1: >c\x94\xe0\xad\xe3\x82\x16c\xc0B$\x97\x90\xd6\xe0\xcd,\x08b\x18\xf8\x96\x96\xd6\x10\xc48\x08c\x1e\xf8\x97\x9c\xd6p\xbfd\x86\x9c\x1a\xa8%\xa9=P\x86>4\xe0[\xa2ZC\x10\x93C.l{\xff\xd2\xd5\x1a\xee\x81\xc6}|T\xc5\x02\x9e\x1a\xd0\x93A\x10\xc0$\x08\xd3}\x01\xcc\x82\x10\x86A\xa8\xd6\xbb?\x02\xfd\xf5\xdd\xe4\xda.T\xd7\x85h\xba\x00\xc6\xfai\x10\x18\xa3\xe3\xee\x9c:\xbf8\xde\xba\x95\x1fY4\x92\xe2\xa3*8\xd0U y\x87 rP\x82\x87\x0e!\xef\x07\xe4\xc1\x83\x17\x03\xc0W\xfb{1\x02\xfc\x98\x01\xfe\xba\xfen\xc9\xf1\xd1\xecT\x9d\x1e\x1fU\xe9\xc0\x1d\xd0\xe2\xa7\xa1\x89\x04\x10\xbb\xa6\x18\xee<{t\x19\xe5\xa8\xf6\xa1\xf8\xa8J\x03\xb6\xd9\x8c\x8f\xaa\x10\xdc\xab\xce\xed\xc8\xbd\x05\xc5\xf2\xd7\x1d\x88\x8f\xaaP\xbcT\x9en:O\x87\x1c\xdd\xf5\x16\xe4d\x8b\x8f\xaa\x90\xb75\xa7W\xc9\xa3'\xc3p\xfe\xe1\x1eU\xe9\xd1\xf0\xdfm\x1a^\xc9\x1c\x9e\x12*V\xd7\x9a\xe6,\x94\x7f8\x92\xc7MN\x94\nY\xdb\xf7\x8au\xb7P\xadS\xb6]\xe9r\xd9l\xc5w\xfcE\xb7N\xf7\x80\x94\x9a\x1d?\xb1\xea\x1d\x97\xf6Jt\xfb\x89\x95\xfb<+\x99.\x18^\xe8\x7f\x0b\xcat\xc2\xf1\xff=\xb0\xe2\xf6i\xb7\xa5B\xf7\xe9\xf45\xecXu\x91\xafx\xa7\xf2\xc9\x98\xd9\")\xd9\xac\x19\xe6\xec\xea\xd9\x82U\xc9\xb3Y\x8d\xa1>U\x9f\xb1J\x93 \xc5l\xa02\x87JR\xaa\xc5\xfe\xa1\x03\x95Flo\xc2\xae\xcc\x98v\x1fhu\x8367iq\x8320\xae\x1a\xc3=\xd4\xb2\x87\xd8\xf6\x0f\xdel~(\xd0\xdd\xdd\xb1p)\xa7\xd9\x97\xf0\xf9\xd3\xbb\xa7\x05+\xf3C\xb1d\x90%;\xb5\x86\x0eY\xfa\xeb\x81mo\x81/\xac*]\xa7\xea\x16V\xa9JJ\xa6\x98\x83\x92\x15i\xb2M\xff\xcaVx:\xd8\xbe\xc8\xab|\x99oaqX\xafY\xa1\xf3\xd6g\xb2\xe4\xb7\x1c\x0b\xec\x0ee\xbd\xc0!\xa9`\xcb\x92\xd2P\xc3 \xcf\x18\xddr\xea\xaa\\\x0c~\x91fIq\x0b\xc9v\x8b\xf3\xeev\xcfT9wQ7\x04\xfd\x88\xdd\xec\xd9R\xbf\x1cp(u\x89.!\x0c\xecFL\xe5\xcb\xecv\x06?\xe7\xd7\xec\x8a\x15GB\xb5}\xfe\xf4\x0e\xbf\xd5\xcb\x83\x00Gc,3R./\xd8\x8e\xc1\x97\x8b\xaa\xda\x7f9\x92\xff_~9\x82\xbc\x80,W\x7f=\x12R\xb6L2\xc8\xc5j\x12\x1c\x18\xee$\x12\x0e{Uo\xcc\xd0\x1f+\xaeX!\xd9\xb0K\xf6\xea\x89\x05>\x02q\xdfS\x85\xc9\x84\xdd#\x95\x85\xe9\x13|l\xeb|\xbb\xcd\xaf\xcb\x17\x86\xb9\xfb\x1d\x9c\xac\x9b\x11\xf0)\xd7\x85E\xeaA\x8a\xfd\xb9,\x0f;\xb62T\x9e\xf8\x1d\xbc\xcc\xe0\xe7\xf3\xf3S\xf8\xe9\xf8\\U\xf3\xe7\xb4\xca\x05z+v/\\2\xff\xdc\x17\xf1\xf3\xdb=\xfb\xcb\x9f\xff\x82~,t\xf9A\xcc\xb5\x92!\xa9\xef\x8fd\xad\x89|uX2H2`E\x91\x1b\xc2\xb6\x7f\x07/\x9bT\xd4R-g\xcb|g\xd2\x98gb\xb5\x95\x90W\x17r\x91g}\xcd\x02\x8f\xd4Y\x8c\xed\xf6\xd5\xadZ\x9e\x8fQd;a\xf2Y\x18\x14\x89\x18\xa08k\xa6\xbb\xfd\x96\xf1\x8dN\x08?\x94{\xb6L\xd7\xe9\x12J\xb6K\xb2*]\"\x01Eb\xbd\x05\x1c)|\xee\x01\x86\x13\xc7{\xae:\x16L\x97\x02i\x1d\x18\x06g\x03\x9dd\xbe\xc8\xaf\x0c\x87\x0d9T%\xce\xfda\xba\xa8\xf9\xf22\xbb\xfd\xd2\xdc#\x92\x0c\x92b\x91V\x05_|\x16\xaa\x94\x8e\x1e\xa0K\xb6y\xb6\x913\x92\x0c\xa7\x8ckM\xa1\xf4%U\x8b\xe1q\xaa\xdd\xa7>\x15!bv\xaa\x05\x7f\x9b.\x04\xa9J\xaf\x97P\x1e\xf6\xfb\xbc\x10;\xe7>Y^>=d\xfc\xff\xf8~)\xe7[\x9cJ\xfa\xe8\xc4\x89\x06=<\xe4k8TR\xf9\xe8\xe5\\r\xc5\x97\xacV\xa9\\\xdb\xb0a\x19+D\xfd\"yu\xa8\xeb\x02\xbcD\xf4\x9d\x9c\xa2a?\xc77 \x17`x\xf6\x02N9\xbd|\x1d+\xd2\x93v\xa5\xce\xd7\xbf\xff\xbda\x9bz\x9b\xe7\xb0\xces\xf8\x11f\xb3\xd9\xff\x8b~\xc2\x99\x90d\xb7\xf8\x1f\x93\xecv\xc6\xbb~[\xe4\xbbG\xeb<\x7f\x8c\x7f6\x9b\xe1{O\xba\x86G\x1c\xc5gA\xf4y\xfe\xe8\x9f8\x8e\xc7\xf0_\x06}j\xc2\xf373o\x9e;x\xf3\xaf\xc9U2\x9a9\xf0\xa38[q\xec#\xb8\x90\x96\x8f\xde\xe6\xf9l\xb9M\xca\xd2\xc2\x04I\x12o \xc7\xd3j\x84\xf7\xfb7\xf4\xd7\xa7O\xb9H\xbai:Kv\x8c\x1fA^J\xea6\xacz#\xcdN'YY%\xd9\x92=z\xecK,\x8a\xc3D\xbbqf\xbfs\xcc\xec\xe9mu\x91g\x86\xb9\x95t\xbd\xcd\xf3G\xb3\xd9\x0c\xdfD\xeay}d\xfc\xbb\x90}1\xe3\xbe\x13\xce\x1b\x9fH\x8e\xbe9>{\xfd\xe9\xe4\xf4\xfc\xe3\xa7\xc7&;S\xb3F\xcc\x9d\xc9\xee\x8c\xdc\xfa\x83\x83[?\xe5\x86\"$\x9cS/~\x84\x7f\xda/fo\xf3\xfc\xbff\xb3\x19.O\x9c\xc8#~\xd0\xe4_'\xd9\xed~1\xfb\xc0\xae-\xf4\xa6k\xf1\xf5\xff\xfa\x11\xb2tk\x14 #\x13\x0dbm\xfe\xbe7\x10CsE\x95\x1c\xc3\xecs\xb6K\x8a\xf2\"\xd9\x9e\xe7ra\x8f%y\xf0;\xbf\xb4\x8a\xd9\xd0\xfb@\xbb\x8a\xe1\xbe\xbfc\xc9\xb7\xc8n\xb5\xe5w\x80\xedP\"g\x9e\x87\xc81\xec)\xbf\x8b\xcf\xc4\x1f\xf8Q\xf6!$\xad]\x95\xef\xb8\xaah\xcd\xb0\x07!;\xc3N\xeam,\xdb\xde\xea{\xe3\xe0\xc2_\x1f\x9d!YWL\x9e\xe6\xb6 bPx\xf8\xf4\xe1\xb0\x0bu\xa1\xd5$\xca\x1b,S\xf2\xfd`\x9d\xe7\xb3ER\x88\xc1\xdd<\xbd\x9d\xfd\xf5\x81\xe4\x96\xbck\xe1\xd7JA\xca\x03\xfe-\xb6\xbd\xfe\xeb\xd9\xc7\x0f\xc8\xcf|\xc6\xf8\x9f\x1a\x8b\x87<=\xe6|U\xab\xa3\x91\xbc\x95\x1dJ\xa6m\x8a\x9b\xc36A\xca\xf7\x0dQ\xf0\xcfW\xac9\xd0\x1c\x01\xdb-\xd8j\xd5\x1cm\x94\x9d4A\xec$\xad\x03\x864\x90~\xf9\x17>\xf0/\xea:\xdf1\xfcj6\xce\xb4\x8axa\xb8.$\xcbK\xae#\x9ak\xe9:\xdd2\\[k}r\xca\x8a2\xcf\x8c\x0bD\xd9\xaa\xc4#vs1\x07?\xc23\x1cc\xfd\xb1\xf0\xd6\xaao\x9f\x93\xf7\n\x0e&*\x1e\x08\xde\xc2 Q\x12N\xa6 U\x07M\x91l\x02\xbd\xe0\x86\xf8\x8f\xec\xb0[H\x1b\x8668\xb6\xac^}\xfa\xdb\x8cZ\xe6\x87\xac\x9a\x0b$\xfde~\x9d\x94P\xb2\xea\x08\xd2\xaa\xd46\xd3\x12\x0e\x99\x14\xa6\x954;]\xa7**\xce\xe17\xc4|wV\xf7\xa1BP;\x11\xdb\x08^\xdd\xca\xf7c\xbd\xfd\x88\x1f\xf2\x15;\xc9\xd6\xb9\xb7\xf7P\x1d\x1e\xe7Y\xbeb\xf34[\xe7}/ i\xadh\xe3\xce\x1c\xad\x1f\x8a\"2#\x13\x7fy\x8ex\xf4\xadV5\x8b\xa8\x19K\x80\x86#D\x8bv\x86\xa1\xeb\xce\xc0\x8a\xb4\xb2\xb6iY\xb1L\x04X\x90\xbe\xcfXu\x9d\x17\x97\xa4o-S8\xf8vy\x91d\x19\xdb\x96\xa4\x8f\x8d:r\x97g\xe9e\x7fC3 \x11ks\xb4xU7\xa6\x17\x0c,sX\xec\x97^/\x96\xb7\xaaz\x0e\xd7\x85\xc7\xe2\xe2\x07]\x12o\x92\xfd~N\xfe\xd8g\x9a7\xa9-8r\xf0\xf9\xe2\x90nW\xf3*\xd9\xd0\xe4b\x93\xdb\xd4\x86\x01\xfb\x8a\xedQ\xec\xc3\x9044\x1c\xcd(3\xf60\x82}R\xa1\x81{\xd6\x95_\xefu\xbb|u\xd82\x81d\xf0\x91\xa5\xf0\xb2\x17r\x85g\xf0]\x89\xc7\xbc\xd1p//\xd8\xf2\xb2<\xf4\xab\xd3\xab\xbf\xbe\x97=\xf7\xcfw\xbfHJN\xba\x85\xb6\xe4V6/W\x97^\x93^w\xf6\xf0,\xcd\x96\xa2\x92\x17\xc7\xf3\xa4\\]\xc2\xb7\xb3?|\xf7\xb0\xfe\xb6{\xfalh@\xcf\x9f\xc8\xce\xd98\x0d\x06\xd8\xda\x9b\xff\xa0\x19-bH7\xe3\x1b\xbcB\xe6\xb3\xcd\x9f\xddf\xcb4\xdbx\xef\xf2\xa5l\xd7W?\x8b<\xdf\xb2$\xb3\x8f\xb4\xd7'q\xa0\xaaU\xe08\xb13\x91\xf7\xa0c`\x94n\x11\x03\xa3b`T\x0c\x8c\x82\x18\x18\x15\x03\xa3b`T\x0c\x8c\x92\x10\x03\xa3b`\x94\xe0T\x0c\x8cjC\x0c\x8c\x1a\x00=\xf6'\x06Fa\x9f\xc4\xc0\xa8\x18\x18\x15\x03\xa3$\xc4\xc0(\x0d10*\x06F\xc5\xc0\xa8\x18\x18e\xfa8\x06F\xc5\xc0\xa8\x18\x18\x15\x03\xa3b`\x94\xfa\xfd7\x13\x18e\xf3\xde\xddsh\xd4\xcf\xad\x8aA\x03\x11\x1f\x8a\xf70L\xc3\xf1\xc0\xb1\xc7\xb2Ab\x90\xfc\xc5c\x10w\xe4\x8b\xc2l\xb4\xa2=\xda\x0b\xd4\xc7x\x0d\xcf\xedR\x1f\xd4E\x1f\xca\xed2\x02\x7f2\xd7\xf5(\xee\xf0\xd9[\x84\x85\xc1N\xe3\xee\x03\xb3\xd6f\xfdr3\x86g`=$lXV\xca)\x1d=\xa5l\xad\xb4\x85R\x02\xf68+\xbc\xa2\x96\xc4D\xa8\\6\x88\xbb\xc3+gY\xf6b\xcb\xfec\xad\x90\x85V\xc62?\x04j\x9d\xe9N\xcf\xee\xe7:\x91\x079\xa9\xe8\x8d\xef\"\xbd+\xe7E\xca\xcf\x8aJ1C\xbf\xe6\xd2\x91\"\xb9\xe2\x97\x9b\xb6\xdb8\x81W\xdd\x82K\xad\xbf\x9ddp^o\xccG\xd2\x7f\xa7/b_\xf8\xd0\xcb/G\xb08T\xdarq\xf6\xe6OGp\xcdt='\xe9\xab7\xf7\xd5\xee\x8a\xefM\x0bVU\xac\x80\xcf\xff\x8e\x04p\xb9_?l(U,h\x1e9t\x9c4d\x14\x1c\xf9\xa4\xd1\x8d$D\xa7\xcf\x185h\x08&\xb56\xef\xc6\x05v\xa2\x01m\xad;\x91\x7f>\xf1~\x0en\x9d\x16y\xbe\xfe\xb8'\xb3K|b\xa3\xb8s\x1f\xa1\xae6\xaei}[\xe1\x8bJ\x8d\xa7}\xed\xe2C\x90\xb7\xae\xdaW\xbcL\xb6\xcb\xc36\x11eI\xdf\xb3\xe2r\xcb\xa0\xc8\xf3J\x06\xe5\xb4v\x80e~h\xec\x03\x0b\xd6\xf2\x1b\xea\xc0\x05i\xff\xe4x2\xc6\x8fb\xfco\xe2\x04\xd5\xb6\xf6e\xfc\x14\xb3\xc8\x0f\xad\x01e\xf9\xaa\xb6\xf0q\x0d\xd5X\xf4\xa4w\xfd\xbc\xbd:\x13X\x1d\xe4)\xab\xf6!\xeaq\x8a\xdb\xbc\xfcP_\x0ej\xe7_\xb3\x86\x08\xcbF!,\xc9\x92\x90\xef\xef8\x1e\xaf+jm\x14\xc8\x01\xc3\x18\x88g5\x0c\x0c\xaf\xc2\x1dA\x0c\xc5csH\x8f\x17\xd0\x01\xc1]1\x95\x10,\xac\x1d,m\xc1\xed\x88\xac\x84\xae\xe0J\x98N|%t\x85\xd8\xb1\xec\xc5\xfe\xa9\xf8\xb5\xe7?\xd5X\x17\xd2\xfa\xb0MK\x11[\xa6\xbf\x0f\\v\xe5t\xeb\xae\xbeZ\x93\x17\x1e\xe5\xcc1\x88ME\xd7\x1e\xbe\xf2*4\x12\xd5\xb8\n\xec\xd1\x17\x13\xc6\x9d\x9a#N\xa7\x8b5\x9d,\xca\xd4\x18_\x8a9\x9a\x88\x91\xa5S\xc5\x94\xda\xa3I\x83\xe2H\x83#H\xc5x\xfb\x81\x8f\xc6\xd8\xd1\xe0\xa8Qi\xca\xefa3\xc4\x8b\x8e\x89\x14\x15Q\xa1\xfd\xd1 \xce\xbc\x90\xe8Ps$\xe8\xc8\x18PR\xf4'=\xd2sD\x8c\xe7\x88\xe8NDaL\x18\xc39m\xf4\xe6dq\x9b\xee\x88\xcd\xc9b5MQ\x9ac\xe23\xd1X\xcc\x8a\x12\x85\x19\x1a\x7fi\x8c\xb5\x0c\x8c\xb2D\xe2+\x8d\x1b%\xcd\xff2\xd8A\x03\xe3(\x9b\x98I\x8c\xbf\xdf\xb8\xfb\x1e\x175)\xa3$[\xe8\x86\xf1\x92\x13DJ\x8e\x8b\x91\xecIy\x7f3\x1c\x19\x17\xa9\x18\xdd\xc68&\x02\xd2\x1a\xdeg\x88zt\xc6;\x0eC\x7f\xe81\x8e\xc3\xb6\x7f\xc3\xc6\x1a\x14\xd1H\x19\xac+\x8a\xd1<6g\xe4\xa2G\xccb?.\xcb\x14\xa78>B1<6\x11\x9d\x97\xc0xDk$\xa29\x06\xd1\x16}\x882\x8b\x1aq\xe8\x8a5\xecE\x19\x8e\x88/$D\x16\xd2c\n\x9d\xd1\x84HP\xde\xa0;\xe4\x1bW\xd4\xe0\xb8xA\x94\xa8\xd6/\xa3\xa2\x03\xfb\xd1\x80c\xe2\x00\x91\xb8\xbfQ\x11\x7f\xfd\x08\xbf)c\xfbLQ}\x83x\xbei\"\xf9&\x8b\xe1\x9b6z\x8f\x16\xb7\xe7\x8c\xd8Sw}W\xac\x9e\xfa\xcc\x1a\xa57\x08g\x1b\xf6F\x8d\xb7\xb2\xc7\xe4\x11\xa3\xf1\x08qx\x1d\x92\xa7\x8c\xbd\x1b\x15u7\x8c\xb2\x9b.\xben\xba\xc8\xba\xf0\xd9uF\xd3\xb9\xe2\xe8\xb4\x96\xc6c\xe7\xd0\xfb\x04\xe6\x9a\xb7D\xca\x11q\x8c\x89\x8bs\x999\x1b\xa7\x14\xd9\xd0\xd9-\xa1\x82\x8caXg\x05\xf9\x88\xe2\xa4\xc3\xea\xaa \x9fa\xf5T0lH\x1d\x15#\xb6n\xfd\x94\xea\x0e\xfc(X\xad\x14\xe3%\xd5Y#\xc5P\x1f\x85\x8c\x10\xab\x8b\x82\xd4Dq\xe3Cj\xa1\xf8\xf8E\xc1Q\x03\x05%\x80R\xfbd\xca\xba'\xad\x85\xb4,n\xf7U>\xab\xdf\x12%\xaf\xa2\xc1\x1b\xaeVe\xd02N \xef\xad\xd2\x9a\xeax\x1e\x8fgO\x91GM[c\xdf?\xdf\xcf\xd45Gs\x8b<|sE4t\x19\x19\xca\xaa\xf5\xab\xa0\x19\xc5\xd3\x180\xf85D\x1d\x1a+\x9c!h\xd0\xcaf\xc8w\x83\x8af\x81*xX\xc1\x8c&lH\xd52\xa4a\xafZ\x99\xc7\xd4\xe3\x15\xca\x0c|7V&\xeb}o\x97\xed\x8f\x0d\xb1\x04\x01\x1f\x12\x88\x10\x87\x12f'\xeaT-\x9c_\xda\x93G\xa0\xa7\xb3V\xacs\xd8\x91\xcd\xde\xfa\xa07\xec\xac Z\xb3\xd6H+a|\x7f\xd5tN\x18a?&\xd3C\x9a\xf0R[\x8e\xd8fc\x1f`\x8d\xf9\xfc\x9ak-\xba\x8c\xdecc\xa0{\xe8\x84\xcf\x11\x8f\x83\x86 c\xa1\xc1\x16\x0f\x0d\x84\x98h@\xe3\xa2\xc1\xccf\xec\x89c\xe7\x9e\xd0\x9f\x8cn\xac4 \x05\xf6D\xa7!n\x1a\xc2\xa4w\xca\x00c\xc2\xcb\xc5F\n\xc1J\xa5hj~\xadXb\xb5\xbdTl\x9a\x13\x0dw\xf5\x98\xb3\xf3Ub\xe3\x8b\xc4\xe6\xd8k\xa0H\x8e)\xfa\xdb\x12\x87\x0dx,6\x04tg\x8c\x89\x0eA6.F\x1b\x9cq\xda\x10@\x93)f;\x04\xd70~;\x04\x8b%\x96;\x04\x9d!\xae;\x04\x95=\xc6\x1b\xacq\xde\xe0\xdd\x9fg\x00t?\xea\x19\x0ca\xb2\xa4cGu\x83\x92\xeeU\xa3\x15\xd54\x81>\xed\xf3\x1bU N\x1b\x0d\xc5\xae)\xfd\x04r\x8f\xfc\x17\xc9\x80\x99\xcc5\xfb\xfd\xb3\x81#\xea\xc3\xc7\xf3\xe3\x172,i\xbb\xe5\x03\x84:5P,\xa8\x19\xc0\xbf\xb1\x87\x05\x83\xff<\x94\x15$\x9b\x821\xbe\xc1\xa3\x81\"y\xc1'C\x98a\x07\xfd\x88\x10\xb2\x1dK2E\xb1$\xeb\xe5~\xffsR^\xc0*g2\xccA\xbd\x02\xcd\x91\x97\x8c\x93\xd3\xca\xe8\x94B\xf6FFj\xb6\xac\xe2%\x93\xc1d\xfc8\x90(\xffr\xfb5\xe9\xfa\xd4\xa2Pi\xd1\x0f\x12\x81ac\x08\x93\x03\xef\xca\x96u\x10\xe5\xfc*\xaf\xd8\x1c'D\x82u\x17v\xed\xc3\xc2\x80\xca\xe6\x83\xf8]\x0d\x0e\xe4@\xe8\x004\x1a\xe3_ \xfb\xb2\x04\xfb\xe3\xf7 \x9e\x9c?;\xf9\xe9\xc3\xf1\x9b\xf9\xfb\xb3\x9f\xe6\xe7\xffqz\xec|\x02\x1fou\xfa\xe9\xf8\x97\x8f\xe7\xc7\xfe\xad\x1cO\xe2\x9b\xda}<\xfdx\xf6\xd2\xf4:>4f\x88\x17\x01\xe3s\x95\xfaj\xc3Y\xba\xc9\xd8\xea}\xb99\xaf\xe3y+\x15[R\x8a?\xb5\x1d\xbe\xe6:\x80\x12\xea-\xc2P\xa1\xa7\x06#\xff_\x88\xe7\xe2\xf1\x1a\x8f\xd6\xd6\x92\x9f/\xe0TlF\xc9\xd6\x8c\x02\xbb\x0dt\x81(\x9c\xaeS\xa9\x84\"?d+wo\xb6\xe3\xaf\x84Vw\xdf=7~\x87_-\xba@X\xe3@\\\xe7`=}7@d)\xb8N\xe4mp^W\xba@\x1c5x\x8c\x9c\x83\xe5b\xd3\xfb\x908\xcf\x1ah\xe2\xa5\x812 \xe07\x11\xe03\x19\x84\xcb\x12\xfa\xf9\xf0\xea\xd4\xffl\xc7\xca*\xd9!F\x95\xd6G\xb4A\xd9\xee\xe5]\xa8o\x1b\xe6'\x14\x1a\xf0\xec\xdd\xca\xca\xa6c\xc3\x8b\x0f\x0dP\xe5\x89\xa67\xb8\xb2O\xf8\xc1\xda\xdd\xe54#\xf5\xdb\xa6\xf8\xae\xd0\xd0\xa8\x13U\xae\x1a\xef\xab\xb02\xdd\n\x9d\x90.\xd3}R\x19\xeb\xc1JH\xb3\xd6\x85F\x17t\xb0\xb6H\xca2_\xa6\"\x8eQ\x1eo\x8d_\xb3\x9b\x8ae\xa6\xf7\x114\xfc\x9dyY\xd3\xd8 ?R\xf7rm\x9b\x9b\xc1\xc7lk\xaa\xd5+A\x86\xdbJ\x13#\x93\x06\x0f;\x1b\xd5q\x02)\xc3\xaa\xa1&m\xfe[\x10\xca\x86\x91n\xf1\xb4bk\x8b\xae\xb1b\xba\x86\x81\xec\"\xe2iE\xc0'\x16\x9b<\xe7\xfcP\x19$\x98SG\xbf\xf0s\xe5\xbe`\xfc\xee\x01\x9d\xee\xc4/\xeb\"\xef\xbf\xd6\xd1@c\xf9\xe1\x94\x9aG\xd5:|b\x7f\x16\xd7\x9eE\xbc\xf6\xc4k\x0f\xc4k\x0f\nD\xe1\xa4\x9dK\xe3\xb5\x07\xe8,\x05\xfa\xfe\x14\xaf=\x1d\xa0L\x02\xf8M\x04\xf8LF\xbc\xf6P{\x8f\xd7\x1e\x05>\xdbT\xbc\xf6L\xcc\xcbx\xed\xc1a\x04#\xdd\xe2i\xc5\x16\xaf=8Lt\xed\x11\xfb\xf4\xdcVp\xb6\xfe\xd2-P\xee\xbd\xb9Q\xe4w\xdf\x97s\x8f\xf4\xe8\xc5\xb67R\xa6\xfe\x8dv\xdf\xf1\xf9?V\xce\xbb\xc6\x91\xa9\xddy\xd2k]3 E\xa5\xee\x1f\xd5u\xce\xdb\xaf\xb7\xe9R\x14\xb8\xe1\x12\x83\xcc\xf1\x96\x9f\xea\xe7\xcbm\xca\xb2j\x9eTU\xb2\xbc\xbcK\xe7a\x8b\xa2\xb9!tN\x02\xe1\xd8\xe9\xea\x0bjf\x10\x8e\xba\x84\xfe\x80\xd8' \xd1\x8b8\x10;\x05\x8f\x8e\xc1\xfe\xbaj\x1f(Q\x91\x86\x96t\xda\xc1\x93~0\xc7U\xe2@X\xa8}\xd0\x0b\x17\x8d\xc1\xc4\x01\x8d\xcc\xc4\xe1>\x08\xa2\xa8\x95>\xd0#>I\xe8\x8c\x95qmq\xa08\xf8D\x87\x92\x10\xf6#H\xed1\xa38P\"Iq\xc0\xe3Kq\xf0\x12\x16\xb7\x19F\x83\x17Z\xca~\xd9\x86a4\xab\xe1\xbb0\"\xdcWM\x0d\x96xX\x1c\xeeXoQ\x0d\n\xe0\xcf\x1c\xa0\x1f\xc7\x1b\xf0\xb4\xf6h\xf0\xe4\x12\x04p\n\xc0\xc3\n\xa4\x81z{\xef\x83\x9ftk\xf0\x99L\x08\x9bP\x08\x99To\xabQ\xaf\x99\xcbz\xa4\xc1\x1e\x85\x8c\x83'\x0f<\xc7N\x8bc\xc6\xc1\x10\xdd\x8c\xc3]\x0e\xc3\x1a\x8b\x8c\xc3]\x92\x03\xc6G\x18p\xa0\x06b\x93\x90\xf5\x83\xb5qp\x87p\xe3p\x97l\xb3\x05\x81\xe3p\x97\xd4\xe0a\xe48\xdc%\x1d\x8e@t\x1c\xee\x92 K(;\x0ewI\x8c;\x18\x1e\x07{\x88<\x0ew7\x8e \x82\xecq\xe8W\x07\xc0\xc1\xe3l\xe2s&\xf9JN\xd6N\xc7\xa7\x06\xdf\xa3\x10\xcd\xa1\xa1!\x1e\xa9\x8d\x10\x8f\xd4\x02\xfc\xc4Z\x83\xcfdB\xd8\x84B\xc8\xa4\xde\xd7\x91\xba\xf6v\x90\xa6T\x8e~\x989\x82\x03\x9aO\x82\x83\xb70\xfa\x8b\xa2\xd6 \xf3\xf56\xd9P\x1b\x05N\xb8;\xe0\xa9\x0bO\xe0\xd5\xbb\x8f\xaf\xff4?y3\x7f\xfb\xee\xe5O\x84\xe0\xa0>\xf41\xbc|uv\xfc\xc1\x1e\xcf\xd4\x85>\x02B@T\x17\xfa\x08>\x9c\xd8\xe2\xa2\xbaPGI\x8dc\x83\xdf\xbdA\x82\\(\xab\xb7\xdbd\x03i\xb6\x12N\x0fU9Z/\"g\xc0T\x17\x1a\x07bJ7]z\x06+t!HF\x83T\x12!\x8a\xa3\x0b\xa3H\xa3\x9b\xdd$\x90\x1c\xcd]\x18E\x1f\x99u!\xb6q\x80\xd7\xe2\xf8y\x96nd@\x1f\xdf\xe7\xb5\xf1X\xb8eu\xda \x11]\x9a\xc1\xff\xcf\xde\xbb?\xc9m[\xf9\xe2\xbf\xfb\xaf8W\xb7j%\xed\x8eZq\xb2\x8fo\xe9\xdel]E\x96m\xe5:\xd6\\Ivj+\x95\x1aq\xba13\\u\x93m\x92=\xd2d7\xff\xfb\xb7\xf0\"\x01\xe2\x008 0\xb2\xb3K\xfe\x90X\xd3\xe4\xc1\xeb\xe0\xe0\x89R\xb3`\xfbt Ih\x94\xd0\\\xccQ\x94\xd0Jn*\xf3w\\*\xbf\x10 \xc5\xcfE>q,\x9dY\xfa\x1bPZF\x12{5\x0c\xecp\x14\xa9\xccC\x0b\x87\xba\xdf\xb3j\x07\x95L`\x06\x99\xc0\xac\x1d\x15F\xde\xca4!\xa8\xe4\xc1\xa5L\x11\xc0G$\x90'i`\xa1\x16_pnEz\xb4~\xf2\xce\x9f~b[\xe5\x97\x87\xf4\xe8\x0b\x08\xf9\xd4\x89\x92\xa0a\xd1\x10MdR\xfca\x97\x94\x00KB(%!hB\x0b\x8f$\x07B\xacu\x8cF1\xe2\xb1 R\x14\"\xb2\x0c\x11\xce\x0c\x1c\x0dD\xc2\xfe#!\x18\x01 RG\xbam\x9d3T\xb7<\xeep\xf7\x1fYINt\xdcInP\xb3\xdd\xe58\xf8\xf5\xab\xaf\xe449\xdb\xd5\xdd\xa4\xb6\xa0Bg\x12\x99?\xaf\\N8\xfc\x10\xf9K:\xb7,y\x9b\x8b\x1b\xea\x95\xa7\x8e\x1c\xf5\xcd\xf4\xd7\xa3HsZ6\xc5VXP\x05ESP\x18\xf9\xc4\x0fA\xe0\xe4\x8b\x18gN^\x18\xba\x10\x85\xf9f\xfaO\x90\xfd\xcc\xa5\x9f\xe9<8\xdf`\xba\x8e\xab\xe7$pl.\xb3E\xf4\x99\x05\xda\x96G\x87 \xeb/!\xdd\xa5\xa4\xfa\x16\xd4UP=\x05\xd3Q0\xfd$\xf7\x12\x9d\xa0>\x12\x18,\xae\x87Pu\x10\xa2\xfeA\xd4=\xe2z\x07A\x04LO\xbe0\x98\x9e\xa8\xae\x11\x98\xe2\x007y\xf4\x0b\x021\\\xaf\xf0\xea\x14\x04\x8a\xb3\xee\x15\xd2#p\x1d\xa2\x9c\xfe\x10\xd1\x1d\xc6\x8e\x93\x05\xb8g#\xa1\x138\xdf<\xf1m\x13\xdd0\xd1\xad\x12\xda$\xc4\xedQfc\x04\xb6\x04U\xe7B6@\xf0\xd39\xd3#\xecNk\xba\x08s;\xcc\xf6\xd5\x08\x7fN\xe03\x0b\xf2<\xe1Dp\xf60\xba\x7f\xfd\xaa{&\xb4y\x16\xac\xb9\x0427\xfb\xee@\x9a\xe7\xc1\x99\x17\x812w\xd7\x15C\x18 /\xf4\x1c\xf4;A;\x13\xaf\x1a\xff\x0e\xc8q\xec\x1c\xa7\"\xd5Q\xb1\xe9\xe8htD\xfc\xb9$\xc49\x8b\xa5\xffs\xee@ME\x95\x0b!\xc7\xa5b\xc5\xa5\xa2\xc3\xad>RX}\xa4\xf3\xe7\x9e|\xa4\x1e\x1d3\xcan\x98~\x19Q\x82\xa34gC\x0b\"\x8f\xa5\xf3\xb2G\xf7M\xedU,R\xb3\x04\x17\xcc\xc2\xfe\x9a\xd1\xf3 \x81\x85\xb0\xbf\xab\x063>\xd1}\xb9j0\xc6\xb3j0\xab\x06\xb3j0\xab\x06\xb3`\x98\xab\x06\x93\xac\xc1\x84r\xca\xd0\xd5\xc0\xc4\xa4\x17`\x93L!\xcf\xdf\x89\xf3\xfa2\xf8K\x03\xeaR\xd1A\x01/\x1dWX\xb2\xf7+z\xb9^\x822\x89]\x9f\xb7\xe0\xa4wuR\x88\x1do\xbel\x1d\xaa~\x8a\xbf\xeb\xbf\x01\x82\xae\xa7\xfa\xde\xf6\xdc\xf6\x90\xa4\xafBT\xf2@a\xbd\x15\x16\xe8\xae\xbeob\xf73\xf8r\xe0I*\x1f\xa6>y\xe0G\xc2:\x99O\x17\x80 \x90H\x86\xf6x_\n\x1eA\xe7\x85X\xcf!\xda{\x08\xeb\xbf\x10\x9do\xfd\xc4\xf4`\x88\x02nD\xa7\x0b\xe2SF\xd0\x8b!\xa4\x1b\x83_?\x86X\x17Cz2\xc4ue\xa0\xd2G\x86\x1e\xd4\x9b!\xba\x86\xa1=\x13\xc8\xaa[\xda\xdb\x98\x96 \xcbuj\x84\x12\xe9\x8e\x80\x98>\x16\xb8\x0f\xe0\xdeg\xa1\x84\xbe\x0d!\x9d\x1b\x02\x98\xfeQ\xdd\x1b>\xef\x14$\xb2\x04B\x10\xc7\xe5\xa7\xa8\xe8\xc8g z:D\x0f\xffr\xfa:\xf8\xc0\xf4\xb1\x9b\xc3V\x8do\xd5\xf8V\x8d\xcfzV\x8do\xd5\xf8\xd4O\x14V^5>\x88-\x14\xf1\xa0O<\xdeW\x8do\xd5\xf8V\x8dO?\xa8\xc6\x17\xab\xfe\xf5\xae\xa4O\xbc{\xbd\xb6\x8b\xa8\x95\x0bF\xf9\x19\xab\x94G\x17|^] _^\x84\x9e\xdd\xf8y\x1d\xb9\x9eh\x81\xd6\xde\x87/ \xca\xd1\x88\xeeW]\x89^\"\x94zuP\xb4O@\xea\x17\xd0.\x07\"\xa99`0w\xf4\xde\x9d\xe8\xf5?\xa5\x9b\x8cKm\xfd\xd0\xaf\xf5\x81\xe9\xca\x9e\xd0P\xc7\xf5\x84\x81~\x99O\xca\x15>\x82\xae\xe8U\x80`\xea\xc5=\xa9\xd7\xf5\xc4/\xe9!,i\x0c6\x9c@\x82\xa6\xd6\x87\xaf\xdcIj&\x86\xf3I\xbcT\xa7\xe0\x8e\x8e\xc3B\x93\x06\x081MhzHf\x9f~H#\x05\xf2h!n\x0e\x8e\xaf\x91\xccB\xfdP\xf8H?\xf1)\x87\x94i\x07\xfa\xd4\x13\xcd\xc7\xd9\xcba\x84m\xfaU5\xa4\x11\x91F\x92~\x19\x0d\xe1\n\x9aR\xdd\x9b\xb4\xd6\xcf\xd4\xe0|>\xa2\xf7\xc3\x8c\xb5*\xd8\x93v\xe3K\xa91P\xeft)\xd5^\xfc\xd6\x96R-%\xdc\xcbR\xaaI\xe2\xcd+\xa5\x9a\x83\xa4\xbbU\x8e\xe4\x1bU\xca\xf4\xcfR\xe6\xf2\xefL \xdd\x94\x12=\xac\xe2\x87\xd4gSj\"\xb7\x9d\xd0N\xbf\x90cM?\xab63=\xa4\x91\x02y\xb4\xb0j3\xa5\xb5\x19\x1f(\x94\xf9\xc8\xb1\x84\x91\xcd\xa3\x98\xe6DV\xa02B\x14P\xca|\x12\x16\x83v\xbfG\xbcr\x9d\xf6\x1d\xf1.\x8fh\x95;\xed\xb3\xf8\xbd\x1d\xc4\x8ax\xfc\xa1bC\x96\xbb\x99#\x8aye>\x84p\x8d\xfd$pM\xc2\x06&\xde\xb3\xb1\xa0\xf1\x98\xad-\x9f \x8e\x96\xf9,\xe8Ad\xf8t7\x13\xfd\x86\x0c\x812@\xa0\x84{fh=Z\x0e\xbf\xe1!H\xb8\xf9b\xe2V\xf4\xbe\x8b\xa04\x0d\xcb\xd0\xa9\xcd\x90R\xe7\x97\xf6AIO\x90\xf2\x14 O\xd8\xa1D\xf6$\xb1&\x01O\x9800 \x0e\x0e\xe8H\xc2\xc4A\x02u\xa0\x90\x82!\\\xbeq\xda Q\x16;\x98\x80\x1cL\x01\xcf\x05\xfa\x84\xd0\x94\xc9c\nbp\xa1\x96\x8f\xc1\xdb\x1c\xa2,\x1eg\xee\xe8\xbe%\x0d\x84\xc0M\xd1\x1d\x1b\x1d\x0c\x90\x06\x04\xd4\xbdJ\x1a\x18\xd0\x06\x07\xf4]Z\xb6Y\xca\xfe,\xb9;\xa3{\x93\xb63I\x93\x10\xdb\x1b\x90\xb6'\x8b\xb4\x19\x8b\xde\x8f\xef\xc5\x1a\xf35\x14\xb8\xbf\xc0K\xd3G+~C\x81Os( $|O\xd8\xb5\x01y\x12\x91$1\x19\x12\x91\x1e\xd1\xa5%l\xdd\xa8\xac\xc8oD;\x1eR7\x7fh\x8b\xc7\xf8\x9e\xb8\x9e\xf8\xe6\"m\xe5\x85-\xc4\xb6m\xf2\xd6\xfa\x1ci2\x0b\xc1\xf2\x0ds\xc1 F\x85\xc8\xf7\x16D~W\xf7t\x90X_\xa2\x0d \x00\xce\xd9\xb8\xbe\x0d\x1b-\xbd\x0cR\x0dQ\x06O1\xa6|2\xe5\x8b\xf8|\xf9\xbe\x0f\xfb\xbbR\xd2\xf7}_\xf8\x93\xf8\x03_D<\\ \xfd\xf2IN\xeb\xd7\x9fQ\xfc\x03\xe9)\xfe^B\x91\xd4\x7f\xf9,)\x00\xf0\x7f\x19+\x03\x90\xcfg\xb8\x02)\x18\xa1\x91-\x84\xfd\xf9\xf1\xe8L,6C\xb0\x1ab\xfb\x11\x08!\x02\xc2tA\xfcL\x96OB<\x860: \x8e\x10\x80\x18\x89\xa1\xac\x9b~\xe2,\xa2\x9f\xd8\x04\x03}\x92\x81:\xd1I\xd1\x17B\xec%\xea\n&\x0c\x80\xe6\xfa%{\xbe\x13Z\xf4NU\xb4tA>\x14\xbe\x88\xef\xe7\xa83\xbb\xc4\x88\xe8\xc7@\xb9\"\x07\xf9\x90J\x1d\xe4\x13+x\x90O\xa0\xecA>?\xc3|%\x97Cx\xc9Y\x19\xfb\xfe\xa9\xf2\x95F\xc8\x87T !\x9f\x9fu\xb2\xe2l\xe6\xa54g?:\xff\xd1\x8a(\xe4\x93XJ!\x1f\xcadd\x94U\xa0\xf4\xae\xda\x0e\x1f\x05Zq!\x1f\xac\xd2V>\xab:\xbf\xaa\xf3\xe3\xb3\xaa\xf3\xc1\x16r\x8f\xffU\x9d_\xd5y\xe4!M\xf4\xaa\xce\x03e\xaaVu>\xaag\xad\xea\xbczVu~\xf9d\xc5\xd9\xccKiU\xe7\xadg\x89:\x1f\x8b\xe8\xa8\xb7\xc2\x0c\x12>\xef\x82\x85\xd5\xf2\xc9\xa2\x7f\x9f\xb7o\xc6\x961\xab\x04\xdb\x1d\xc9\xc7\xd6_\x88-\x1fZ9\xb6\"\xe7W\x93B\xaaQ\xa4@[>\x99\xc6^\xa4d[>\x045/\xd6\x0eD\x8a\xb8\xe5Ch\x08\x88\x8d\x01\xa5\xac[>\xa9\xc5\xdd\xea+Z_!\xa1\xbf@+\xf7\x96\x0f\xe1\xac0\x1f\xbd\xc1\xa2\xa5\xdf\xf2\x89\x16\x80\xcb\xe7>;\x11\xdb\xf2\xf3\x87^\x18\x1e%5\x15\x8e/,\x0f\x97Oj\x91x\x94\xa0\x1cAj\xa9\xb8|R\x0b\xc6\xe5\x13/\x1b\x97\x0f\x99\x11b\xd5V\xf2!\x93\x8b\x9dI\xe6\x13.*W\xef\xa47LKz'\x96\x99\xcb\xe7\x9ed\x0b\xc5\xc8\x85\xb4I\x00\x9aJ:= \xde\x05\xfd$\xcc\x06$\xce\x08\x00\xd1\xeb\xa0\x1f\x8a\x959\x7f\xe8\x1c\xaa\x1f\xeaBA\xfabA\xea\x82%y)f\x9f\x84\x0b\xbf\xe4C/f\x97O\xc2x\x13\xc6\x99^\xde.\x1fB\x91\xbb|\xee\xa3\xdb\xe4\x92q\xf9\xdcG\x17\xca\x16\xc2\xcb'\xad\x1c^>\xf716j\x81\xbc|\xee\xa3\x07\xf1\x92y\xf9\xdcG\xdb E\xf4\xf2\xb9\x8fN\x10\xcb\xea\xe5s\x1f\x1dH+\xb4\x97\x0f\xbd\xdc^>\xe5\xfb]\xb8\x00_>\xa12|\xf9\x10\x0fj\xea\x01\xfd3\xaa\x8a\x91R}\xf9\xa4\xe8\x02q\xcf\xb3~V\x1dq\xd5\x11coC\xc2BA\xfabA\xea\x82\xdd\xb7\x8eH\x81\x08\x90\x8f\x1ci\x18(@>Q\xb8\x00\xf9$1V\x1a[%\x01\x08\xc8'y!i`\x02\xf2Y\n) \x9f\x85\xc0\x02\xf2Y\x08/ \x9ft\x90\x01\xf9dA\x0d\xc8\x87R\xaef>\xa5`\x07\xe4\x93\x04> \x1fr\xe4\xd6~\x92\xf9.Y|\x10A \xe4\xb3\xb8;4_\x8d|\xa2\xd1:\xfbY\xdc'\xd2\x14\xa5:CK\xc2\x17\x98\xf4B\xde\xc2\x94>&\x01\x1a\x04)\x99`\x07\x14X\x03\xf9D\xc0\x0d\xe4C\x90\xfd\x14\x89\x1f\x83;\x90\x0f\xed\xe4\"\x9cZ\x84^\xcb\x87\xd2w\xf9\x90eE\xd2&H\xd8\x00\xd1bk\xfd\x90\x07\x0fI\x13\x00\xf12J\xfbI\x9a\x08H\x9b\x0c\xa0\x14\\\xda\xcf\xfdv'\xe5\x14L\xa9\xdf$\x90\x8bUx\xdaO,\xbcn?I\x93\x96\xa2\xc0\x93*C\xed\xe7\x1e\xfa\x12\x86b\x90\x0fq;Q7\x12Q\x8e$\x0c\x96\xcc\xa7D B\x1c0$\x0c\x1a\xd2dG\xc2\xe0!e\x02 Uj\xdc_G\xe8\xf2\xa2\xa8\xb4H\x91\x15)\x92\"a\xa2h;\x13\x96\xc8\x88\xe2\xbd\xa0e$\x8do\xd3\x9a\x0f7\x1d\x00\x8b\x90O\xa4\x950\xf58|\x84|\xc2\x9aX@\x03\x8b\n\x8f\xb8\xc8\x88JH\xd2<\x13\xf6bT\x1eF\x07\x03\xa4\x01\x01U\xfa\x91\x06\x06\xb4\xc1\x01]\xd6\x95m\x96\"\xd9Rd\xda\n_\x13j\x93&\xa1\xb2d\xc6\xcf\x99\xd3\xb8\x10/\xc3\xa13I\xbb\xe5\xa8\x19\xdf\x1a\x9exG2\xb8R\xc0\xc9\xbc\x8b\xe5\xd8\xa1\xd2\x06\x97.H\x86\x9cw!\xf4\x128 gN~[* \xff\xe2\xd1\xf3\xd0\xfcyf\xf3\xe1\xba\x19g\xa9\xb9eV\xee\x98=\x11x\x16Y,_\xcc\xcd\x0cC\xa6p~\x92\xa3\xb3\x8c\xed@;W+\xf8\xd9|{y2\xad\x128\xcc\x0d\xadD\xb9cv*\x04#X\xde\x93\xd5\x7f\x9az\xe2O\x92\x12\xe1\x0e>G\xb2\xe1\xd1\xa3\xa0@\xf3\x1e\x80\xc1\xd8\x0f\x1a\xe5\xf1\xe7\xfc\x04W\xdaj9\x9e\xb1\x83\xe4\xe6P\xc9{\xb3O\xa8\x04\xf2\xf2b\xc2\x190\xd4>\xf8\xf2W\xa8\xdf\xbb\xd9'\xd4/\x03\xb9#T\x12\x9e\xcc\x0f\xea\xe7\xe1\xbc\x0d\x7f\x86\x06\x8d~f~\x85s\xba\x8a\x93\xfew\xd3\xb9F8a=\x89\xfb)R\xae\x8ch\xf2&\xd9\xc7\x8e\xfc\xf1\xbd\x90\xa1\x1160\x02\xc9\xf2Q\xf5\xd2\xab\x1a\xe8\xc7\x9b\x02\x9fK:\xa6\xf7e\xaa\x10\x08=Z\xf2z)\x95B?\xd1\x04\xf5\x98\x8a\xa1\x1f\x7f\x12z`)\x8a\xdf\x1d\x8d\xa7\x8f\x93\xc8\xf9,\x80HRx\xc6\xce\xf0g\x87\x90\xb9\xd7c\xe8\x92\x92s\x82=\x87h\xef\xc1\xaf\xf2\x8c?\x07U\x1f\xfdPl\xd6p\"Mt\xba >e\xc4\xf4\x98`BL\x87_\x81\xe8\x8e\x01\xca\x88\x804*\x80\xa8k\x06\xc6\xd6b\xee\x19 \xf0\x82~\xe2U\xbf\xa4)\x05\xda\xb4\x12]6\xc6\x8b\xfej\xdex\x00\x03(\xbd\x8f\xf6\x9a\x1e\xcc\x808~Knw\xa2\x81\x03(\xd0H\x99@\x07\x90\x83\x1dP\xa0\xcf\xb1\xc0\x07\x14h#\x8c\x9e\x92K\x9d\x10\x10\x81\x02\xcd\x10\x10Pr\x9b\xa0\x05J\x80\x14,\x81\xec\xfe\x14\n\x9c@\x00\xb1$C\xa1\xbd\xd7\x03?\x80:\x12?I\x0c\xe2(\xc2\xc8z\xd2#O|T\xb0\x9e\xf4\xf8\x8b\xfe\x93>\x86\xd6!\xfb\xfd\xf3^\xefN\n\xdc\x00}\x92\xe38\x1b\xa9A\x1c\xec\x1b\x02\xa6Fb0\x07\xfb$\x8c\x9f\xb1(\xa8\x03@\xab\x8d!#dXq\x9f\x18\xf3{\x7f'\xc7\x85\x80\xce \xc4\xcdF\xc0\xbbHl0\x8em\x11\x8d\x17Az\xab\x81a\x16\x8e\x1d9$=\xa9\x93\xcbcH\x98,\x0b\xc1I\x04@$\xbcb*\x90H\x1b(J\x0c\x89\xcc\xfb\x8am\x7f\x86Pi\xa4\x08\xb1\x90\xac'\x94\x1f\x12\x06\x03\x94\x01A\xdc\xa9/\x9fr\x0d\xc6\xc5jr\x04\xc0K)Rn\x18\x0bi\x01m\xe0q\x0d\x89\x101\x90Ofkx\xa8\x0bb\xac\x19f\xca{\xb4\x9d\";*\xba\x9f\xe2\xbb)\xba\x97\xa2\x03\x80\xf8 \x80\xb6\x8b\xca4\x15\xdb?\xa5vOp\xef\xc4wNt\xb0\xb1]C\xdc3Y\xed\xc4\"n\x10k\x00#\xee\x01\x05@\xe9`\xdf\x87\xcb\xfe\xb1\x935\xf7\x1ew\xcf\x0e\x0f\x8c\xdc\xcb\xa5\x9e\xfd\x1c\xd8\xc9\xa1=\x1c\xd8\xbd\x91u\x0fn\xa3\xe0^]N\xb8t\x00;\xc4\x97\x84\xb5q\x19>\xba\xa5\x12\xa9\x86\xb6\x0f\x99\xdd\x11\xd3\"\xf8\xadm6\xe0\n\xf6\xc2Jt\xf7\x9e\xa4\xc5\xf5\xe7\xe7U7\xbc\xd5n 92g\x0f\xb8\x9c?s\xdc\xc8/\xe6N\x1al\x12\x97\x14\x1dz\x1c(\xceP\xe4\xd5\x9e\x89#\xc9\xa8\xf3Cc\xf0\x94\xd8\xbbW\xc8\xf8E\x8c'\xc6N\x92\xf9h\xb0\x1b\x8d\xa5/%\x17\xcb>\\\x14+\x1fgoF.\x12#_\x1c\x1bG\x8a\xed\x821qJ,\x1c\x8f\x81{\xa6\x19s\x81{W\xc4'<\xdd\xd8v\x94\x04\xe6\xdf\x08\xc4\xb0\x17po\xd9\xfa\x93\xa8\xa7:\xa8\x8e\x87U\xf1\x80G\x1a\x17r\xe6\x13\xd3\x14\xef+\xd2\x14\xf50{=\xcb\xe1\xd8q\x94s\x9c\xde\xd0b\xc4\x9e\xd8pjs\xc1xj*\xb1\xfcXo<\xc6\x9b\xda\xa7P,7\x95\x16\x1e\xb3M\xa5\x12\x89\xcd\xa6\x92\x0b\xc4`SI\xc5c\xad\xe1\x18kZ{\x05b\xa9\xf3\x18j\x82\xe2Q\xe4\xa0@b\xa2~ g\x10\xb1b\xa0\xeb a\xfd\xf4_\xf0\x84\xf0\xc5\x1ce\x7f\xee\xb7(#\x1aK\x8cL\x8a?v\x98\x123L\x88\x15&\xc4\x08i\xb1\xc1\xe4\x98`\xe9\"/R /\xb2\x0c\x11\xce\xbc?\x1c\xb8H`\x8eH\x1d\xe9v\xc1\x00\\\x08\xeely\xc0\xcdE\xac\xb3\x03m\x1e\xdb\xf9\x0f\xfd\xf5;>)\xe2;gz\xcc\xed\xf4\x04\xde\xbe\xfa\xe6\xfb\x97_]\xfc\xe1\xed7\x17\xef\xfe\xed\xfc\xe5\x8c'\xdd\xdf\xcf\xdf\xbc\xfc\xf1\xf5\xbb\x97\xa1\xdf\xad\xed\x82\xbd\xf1\xfa\xfc\xf5\xdb\xe7r\x9f\x8c;#\xd4\x0fkr\xffSO\xae5V\xb9h|\xac|\xd1d\xde\xbf\xbe\xf7Zgd\x1b\xb7K\xeb\x19\xf5\x8e\xef\x99X\xf4>\xf4\x9e\x1c\xc538\x17\nI\xb5\xef\xb1\x05\x19]m\xe6b\x04=\x19\x0b!\x97\x10Wh\x82*\x82:>\xa3\xba\xc8lKy\xdc\x9cid\xca953\xfd\x84\x01\xe7%\x89\x86\x9f\x15\xde\xea`8\x81\x1bV\x97\xfc\xea\x92\xff%\xbb\xe4\xdd\x08p\x82\xd4)`\xc1y\xd8\xcd\xcbl~V\xf32Z\x90\x1b\x02\xbc\x10`\xb1e$\xcb2W\x81\xba?\xfdD\x98*\x89^v\x8c\xc7\x95\xbb\xed@\xaf;\x1cF\xbd\xc9\xdb\xe0\xdc\x1c\x89\xe9P\xf8;\xb6\x1e\xe5}\xc71=\"\xfa\x14Pu*\xf0\xeaUPH\xb7\xf2\x8e \xd1\xaf|\xefb:\x16\xe4\xe0\xe6\xce\xdc%\xf2\xbb@\xc4kt\x93\xb8.\x92\x04A\x97\xef\x17[\x01sg?\xda.\x8e\xbc\xa0n\xd0>\x0e\xd21\xba>\x91\xa8\x9b\x1d\xfb\xb4\x84\xc7\x103\x97\xdaz\xc8\x02\x15\xe6\xeb\xe4\"\xb8\xbc\x13;v\xec/\xd4\xc2\xca\xbd\x13\xb0Qp\x00\xcf\nY!o+rN\xfd\x0c\xdfd\xb9\x91q#d\x8dD\xc4KD\xc2\xd1\x08x(\xf2\xbdm\xfbC\xdbo.\xab\x9em\x9av\xc76\xb7_^\xb2\xa1\xfa\x92\xaf\xd0U}\xfd\x86\xf5G>:\xf22\x1d\xea\xa6>\x9c\x0e\x17\xd7U\xcf\xb5\xc4mxS\x1d\xbbS\xc3\xf5\xbf\x0f\x8c\x1d/:\xb6eM\xec\xacW\xa7\x82\xfa\x10z6p\x05\xb2\x9f\xd1\xe3B\xb8\xbbuS^\x0cb3\x9f\xa09XK\xdf\xee\xf4\x1f\xa7\x18\x91\xde\x83\xf2+\xb8~s\xfe\x02~:\xb1\xee.8\xa1o\x87j8\xf5\xc9\x13\xca\xaan_\xb3~\xb8\xe8\x87\xb6ci\xd9\x7f\xd6>X\xfee\xee\xa1\xbb\x1c?}:k\x97|o-1\x9f~\x96\xba\xc2\xbdX3\x19\x14\x14\x8b9[`\xbd\xb6_\xb1\xed\x8b\xb6n\xc8\x8b\xbacM{\x08\x0e\xa7:\xb4\xa7\xe0f\xc0\xa5\xb7\xea\xc88\xbe\n\x86\xf6\x03k\xa4yX\xc9v\xebF\xc8\x07!F\xf8\x9f\xb6\xf5\xa1\xda\xab\x06G\xad\xfe{\xa1\xbb\xbf\xe3'\x8d\xf8\x01\xaej\xb6\xdf \x0b\xa1\xe1\xad\xa8\xe0D}8\xee\xd9A\x1c\x14B\x12\x9e\xfa\xa1=\xc0\x81\x0d7\xedNQ\x9a\"R\xd0\xb1\x9fNu'\xcf\xf0\xeb\xf6\xba=v\xed\xd0\x1as\xba\xab\xf9\x00/O\xe2P\x9f\xe6v\xcf\xaeE\x8f\xd5\x7f\xb5\xdd\x1b\xf6\xb1\xeav\xe4\xd9NS\xfa:\x83\xf8\xf4JY/\xdcl\xfdM\x1a\x88\x0e=\xe7\x85\xe0\xeb~\x85\xa4 w\xc8\xa7\x1c\x8f\xc8\x87\xc2)~\xc6\xf7p\x89\xa9\xcb\xc8\\\x10\xbd$\xeaK\xb1\xb9w\xfa\xa3\x87\xbd\xfeo> \x92\x17b\x1cz^u\xd5\x81\xae\xc9p\x0d\xea\xd4\xd4\xc3\xdd\xc5P9\xe6\x83\xb5\x9e\\\xc6\\\x8cN\x17\x9c1g\x0c\xe0\xb7\x0e\xbe\xe2\xf3\xb0\xe5\x1a\xa3\\3\x8c\xf8\xb4\x82\xbb\xf1m\xc1 u\x0f\x8d\x99\x9c\xb1o\x9bk&\xb7\x90N\xc5\x98\xf8\xffq\x05\xe6\x85f\xcd\xf3\xb6\xdd'\xab*\xc7\xb6u4\xaeUn\xfeR\xe4\xa63H\xbe\\\xe3\x90F\xa1$\xfe\xfc\x90\xff\xa1n0Cq\xdcj~\x86\xe1#\xb1\x14+>\xe5\x9a7\xcd\xaf\x9fZ\x9f\xebI\xe2\xea\xb4\x1c%\x89g'\xc9/\x05~\xba\x8a-7\xeb=\x07\xdeV\xd6-\xc8\xbaj\xc5fj\xbc\xfc[\xb5\xddv'\x9dW1\x9d\xe5!\xe5!\xccGtvvH,\xe7\xe5w\xedP\xed\x7f\xd1\x0c\x1dM5\xf22\xf7\xfc|7_\xc7J\xbb=\x85\xdd\x9e\xfe\xca'\x14j\xf6lF\xf9x{-\x1f|c\x12>\x8dW\xec/\xde\xaa\xdenn\xbe\xc0\x80\x01s\xf60BN\xedj\xe4\x17\xfa\xe6\x8e\xc9\xb0\xa5\xba\xbd|h\x1a>\xd2\x8f\xb9\x98\xa9\xf6\xfb\xa8\xa8i\xc7\x8ca\xb4\xe8\xaa\xec\x1e\\\x0f\x95\x82\x87\x8aX/[\xb9>\x1d\x04\xf3\xd8\xcb\x9ep\x92`R|\xc9qb\xd2Yx\xa6\xb4\xdd\x94\x1d\x90|\xa0df'\x85L7#|`N\xbd\xf1gckI{M\xceJs\xcd'\x8d\xba\x18\xd8\xf0\x93W\xc2$\xb2x\x19\xfe\xa8L\xc0\xe7\xf2\xd4L^\x0b\xcb\x84\x8c9\xb3fS3\xff\xd6\x9a\xf2i\x96\xf5\xafC+\xfd\xdai\x13\xed\x19\xe0\x82\xd9\x9eQJ\x9dri.'O\xf0\xd1p\xe78c>\xba&\xb8\xf8\x13\x1bX\xa7c1\x86\xc5m.\x0c)\x83\xc0\xe3\x1c\x02\xbf\xa0\x0e;\x89\x02\x1f\xc6t\x92\xa2\x0e#\xf0\xbbR`\xb9;\x05\xe2\xce#(8\x01\x89\x8e\xa4\x19\xb9\xa6\xbd\xa7\x19\x888\x95`\x9c\x01\xafc \xd9.\xc1\xed\xaa6\xaa\xf2G%n\xcbQ\x86\x8a\x8c\xf9\xbe\x17\xe6R\xe2\x1e\xdd\x8e\x9fz\xf6\xe9\xf4\x82\xb5W\x8d?[\xa7\x0ctl\xcb\xea[\xb6[\xbci\xe7\xbd\x81\x80IS\xb2\xe8\xc6k\xca\x04\xad\x11\xbf\x19\x13\xf8,f\xc2,V\x0b=\xdd\xc3\xcc\x97\x1c]\xd1!\xe63]h\n\xa4\nE\xdb\xa7`\x80\xb9\xe9\x07 B\xc4\xd8dI{\xec+\xe3\x95W\xcdU\x9b\xbc\xd3\xf8\xbf\xc9\xb1\xb3\x19\x8f\xcc\xbf\xc55\xbc\xf15\xadw\xe8=\xd8\xb3\xfd\xd5\xc5e\xdb\xec.>\x8bCc5\xa6\n\x1aS\xce\xda\xcd\xa2\x16\xfb+\xc3\n\xefm\xd3\n\x17\xa8\xeb\x92\xff\xc2\x97<\xef\xc8\x0d\x04\x19\xa2\xc2l\x81d\x9d\x93Z\xac\xc4\xbc>\x0d\xfdP5\xbb\xba\xb9.\xec\xae%\xa9\x1e\xce\xb7\xb0\xea\x1d\xe4\xed\xe4\xe9\xde/\\\xef\x80\xe0\x94\x04\x18\xd3t\x97\xb6\xd3\xaf\xf0\xe8\xd4<\xd16D\xf3\xd8e.\xb3\xa3|SUf\xeej\xc3>\x1dY\xd3\xd7\xb7\x0c\x86\x16\x86\xae\xda~8\x83j\xbfo?\xf6\xd0\x8b\xe9\x80\xbe\x12\x81\xc5\xed\x0d\xdb~\x88{\xcf\x08;k\xc1~Gfc\xe9\x8e\x7f\xbb\x17\x90#\xc9\xdb\xbc\x97\xdf\xdd\xef\x896Ee\x8e\xac\xab[O\x94\x05\xddfh\xee\x9f\xfa\xa9\xab\xb6\x83c\xde,:\xfb\xeci|y\xcb\x9a\xc1N7\x9exKL\x18\xb0[\x85\x856=\xdf\x8aTF\xce\x05\x9c\xc1\xeam=\x88\xbd\xaeLh\x91( \x1f\xd8\x9d\xfd\xd1\xbb\x1b\xfe~\x0f\x0dc;\xb6\xe3\xcc\xba\xad\xf6\xdb\xd3\xbe\x1aD2y\xd7\x1e\xbbZ\xfc\xb7\xdc\xdf\xed\x15\xf4C\xf5A\"\xb4}`\x8dm\xcds^3\xf5\x17\xb9\xfb\xab\x8e\x8d\xc6x\x03\xd5\xd5\xc0\xf8f\x91\xc3\xb8\xa9zh\xb7\xdbS\xd71_\xb8A1\x88\xad)\xa9\xbf\x85\xad\xd5cu\xad\x04\xdc3\x9c\xf4\xf4\xc2\xccu5\xfeYM\x9e\xdeR\x8b\xec`\x01\xa9\xe3\xa9\xd1CX\xce[\x17\x12\xe2\x9f\xa9\x15-\x05\xf8\x7f\x0e-\\\xf2\xe1\xf4\xbd\\\xda\xf3\xea\x9a\xbda?\x9dX?l\xe4\xef3\"\xd2\xaf\xc9?\xe7\xe4\xf8D08\xb4\xfd\x00\xec\xea\xaa\xde\xd6\xac\x19\xf6w\x1bx\xc5\x19k\xbf\xe7\xb4\xd9\xe18\xdcA=\xbf\x92k\xb8a\x1d\x13\x0b\xdf\xb4p\xe0\x8c\xa7\xe0vL\xe6C\x8ap\xa2\x93\x82\xecB\x1fB\xab\x0c\\\xf0\xd9\x10\xff\xd1\x9c\x0e\x97\xac\xe3\x0c\xac\xbab\x94\x0b:\xfd7'j\xcb\x19\xffB\x10\x99\x9fM\x1f\xab\x1ez6\x9cA=\xf4\x9c\x0fOB\x06\x9f\x1a\xc9L;h\xf9<|\xac{$\xf1\xd6#\xddgRt\x81HW\x14\x12\xe4\xf8\xf8\xe9\xf3\xed\xf6t\x10[\x7f\xf7bfj\x10\x04\xf9j\x9d\xfc\xf2\xad\x13|\x80a\x06\xb0\xce\xa1\xe9\x05c\xbd\x15\x99\xb9\x12\xf4\x81\x1d\x07\xa8\xf8Lu\xa7F\xd4%\x88\xad\xc4\xba3\xd8V\x0d\x97\x1e\xc6\xa90@\xd5\xdc\x89\x9cz2\xbb\xba\xca\x0b\x99WW\xcf\xc9\xdf6\xa3.\xd5\xe2G\xdd]\xd2+\xa2\xb6\x93xuR\xeb\xc8<\xea\xd7YQ\xa6@OHWCu\xbe\x8d\xcc\xf4\"}4Q\x13-\xa4\x83\xe6k\x9fj)\xa72\xbd\xdb{\x8c\x99Z\n\x8b\n\xa0\xf2\xce\xf2)\x9aj\x03\x8d2:\xf5\x8e\x98\xbe\x9dSyn\x10\xd3\x81V\xe3O\xe7{V\xf5\\\x1b\x1b\x14\xea\xd2{IM\x97\x1e\xbe\x97\xa1\xc9\x01\x8e\xedQ\xc9w\xd1@\xdd\x8f\xba\xc7\x99A\xae\xe6\x8bk\xd2\x17[\x85\xed\xa0g\x9c\xee\xc0\xf6wS\xe8\xeet\xbc\xee\xaa]V\xfc\x17\x01\x0e\xf6:h\xfc\xee\x99C\xf5\xe9\x82k\xd5\x88\xdf&\xe8\x9e \x15~\xbb\x01\x0f\xf3\xf9C\xf5I\x959\xf6\xf5_\xd8\x19\x9f\x13\xd1\x81\x0d\xf2\xee\xf7\xed\xc0\x9e\xc1\xe1\xd4\x0f\xfch\xbc\xeeX\xc5Yu\xb8\xa9\x1a\xf8\x152\x90\xeb\xea\xf3\x0e\xe3\xba\xea\xe1\xc8:\xb7\xaeV?x\xff\xdb\x0e\xd8O\xa7j\xcfw\xf5\x93/\xad\xcf\xac\xdd \n\xdaU\xe4t\x04\x0b\xdb\xd7\x07\xaeY\xb7\xc6\x95\xc2b\"\xcd\xe6\x99u\xb7\xb6~\x16rGu\xcd.\x9a\xd3Ab\x06\x97\x9d\xdf\x98\xbbN\xce27\xb8\xda\xabqP\x92cDg\xf0\xacE\x95\x81PoE\xeb\xa7}%\xa4\xa0\x16\x9fBDJ\xe1\xfa\x8c\x93\x7f~\xcd\xbe:u\xf2\xe8\x7f\x8aP\xfb\x8f\xea\x96u\xbc\x0b\x12\x15\x16y\x83+h\x7f\x9d\xaf\xbe\x9e\xb9\x9d\xa2\x9d8o\xcbgF\xaa\x8bX?_\x0d\xd0\xdf\xb4\xa7=WS;)\xc1vJ\x03j\xf8\x99\xf2\xb0\x87\x07\xa7\xe6\xb2\x95J\x82<`\x1fpf\x15&\x1bB\xb0\xaf\x0f\xf5\xbe\xea\xb0\xb6\xc6\xec\x031\xf77U\xb3\xdbs\xa2\x7f\xfa\xbe\xe5G\xde\xf5\x93\xe7\xc3\x93\xb7C\xf5\x81a\xdfV\x02/\xbf\xff\xf3\xa3\x9ba8\xf6\xcf\x9e>\xbd\xae\x87\x9b\xd3\xe5f\xdb\x1e\x9e2aE\x9f\x0eO?\xd6\x1fj\xf9?\xe7]\xdb^=i\xaf$\xc1'_?\xff\x7f\xff\xf3\xe3M5<\xa9\xfb'\xc3\x0d{\xd2\xa8\x16\xab\xe1I/^8v\xed\xe5\x9e\x1d\x9eT\xcd\xee\xc9M\xfb\xf1\xc9\xb6j\x9e\xd4\xc3\x93K\xf6\xe4\xaa\xfe\xc4v\x8f\xb1\x95\xbc7 \x89.\xad8\xfb{\xa6\xd4\xc6C\xf5\xa9>\x9c\x0eb\x93\x8b\xb4!a\xba\x8fx\x81Z|\xca#l[\xcdA\xd5\xf9s\xc9\x0c\x14A\x01V\xd8\xd7\xcd\xf5\x9ei\xc1\x85-B\xb3\xd3\xdcrU\xed\xf7\xfc\xfb\xab\xb6\x1b\xaa\xcb\xfd\x9d0\xe6;\xdd7%\x82\x94\x08G(}%\xb1g\xf8a\xfa\xe5\xaf\xfe\xf1\xff\xfb\xa7\x7f\xf9g\xceS_\xfe\xe1w~\xc1\xa7\xefJ\x18\xab\x98\x06q\xf03\xb8i?\xc2G&\xf9\x89Y\x17(\x1c\xaa\xfd\x15\xab\xfa\xaa\xd9Z\x92pT\xc9\xb2E\xa1\x02\x95\xba\xe0\x9fzYa\xd1uc\x08\xff\x84\xddZ\xa3\"\xaa\xe6\xa7c\x9c\xc4v\x90\x8e:\x81\x05%]]\xbc\xabf~$71O\xbds\xa7\xbb4gN=\xeb\xe1\xf9\xef^\xbc\xe2$\xf8\xe7Mu\xa8\x9b\xeb3\xa1\x02=?\xd4M\xcb\xffb\x9f\xd3\xf8E \xe9\x93{\x7fw\x16\xfc({8?E\xf9L\x89\xb1\x1a0\x08z4\xe6\x00\xab\xcbm\x9d=\xba\xdbv`\x17#\xbeG\xaf\xf2\xae\x9c\x02}\xfd\x90\xc6\xbd\xf4@\x0d\xf6\x85\xcf\xcfU}=\xc2U\\\xd5]?(8\x00\x84\xd6\xee\xc4\xbb(m\nl\xe7\xdfZ\xb8&\xfd\xe4 \x95yg\x1b\xf8J\x12\x10\xc7q\x7fd\xdb\xfa\xaaf;\xd5\xde\x99G( \xfbt\xef\xb8\x1d\xf9\xd3\x9f.{\xf6\xd3\x89\xdbe\x92F\x7f\x86@\x9aHA\xb9k\x05_+\x86\xc0:\xcf\xb7\x8d\x81\xca\"\x90\xee\x91\xf7\xf4\xa0\xb8\xd1Q\xef\x984C\xc4\xc7\x1b8\xef\xea\xb6\x13V3\x1f\xa1\x1a\x97\x98\x16\x84\xd0|\xa2\x9av\xc0\xda\xbbd\")\x90\xcb\xd0j\xbbeG\x05\x0ck\xecr\xa5\x1a6l\xf8\xd8v\x1fp]\xe05\x17\x9bj\x1d\xce\xbc\x0b\xb5\x15\n\xab\x06\xd2\xc1\x16\xc4\xd8=u\x03/9\x89\xdd\x8f\xed\xc0\x9c\xcb;@\x18t\xda\xe9>\xd8\xb0\xed\x029\x11\xb3dM\x14\xcfbt\xa1\x8b`\x07\x9f\x93OO\xe7V\xf4\x94\xbc\xbc\xc10\xf5\xa6\x81\x92]\x01D\xb9\x18t\xed\xd8r\xd0\xbf\x16\x8b\xe5\x9eW\xca\xe5I7-\xcb\x0c\x823\xa9\xb6\\\x9a\xc9\xadd\x90\xf2K\xb1e\xd2k>l\x83\xe0Lj\xe5I\xab%Rj&\x93\x0cj\x1e\xe9\x94 \x95|2\xc8\xa0\xe6H\xa3|)\x84J\x1f\x9c\xd3\xf3\xa4\x8d!_\x14=K\xca8[\xde\xf0O\x90\xf7\xbe\xe2\x12\xcaY\xb6<\x7f\x1e\\\xce-\xaf\x14_^\x19?^\xdc\x87w\x0f\xfe;\xc4w\x97 \x9a\x02\xfe:\x9f\xaf.\x90\xf4<\xe3\x03\xbf\x7f\xae\xa4on\x99_\xce\xf1\xc9%L\x9a\xe3\x87\x8b\xee\x82S\xc0\x00\xcb\xf0\xbd\xd9~\xb7\x84\x11\x10mJ\xa0\x8c-\xf5p\xca\xb51g\xe4P\xbfZ\xbe\xd59#\xe8\xf1\xa7\x15\xb4>!h\x81B +\x14\xa3\x87\xf8\xcf\xf2\xacQ(`\x91\xce\xc8\x85}f\x99\x96\xe9\x8c\x9a\xd7W\x96o\xa1B\xc8G\xe6\xdf3y\xd6\xaaA\x88\xe8\x17\x1b\x05\xf5\xcc\x0c\x9aD\xd3\x94X\xb2\xed\xea\xa1\xdeV{\xb3f_2\xfbx\x98M.Q\xb1\x14\xbc\xbb\xfa^T\xdcEf\x1f\x8bd\xe3+\xa4d'\x18\xa9\xfeuHQ\xaa3\x14\xeaQ\x856\xc89\xca\xb4\xa5H\xfb\x95\xe8\xf8\xa9L\x1a\xa1\xab8\xe7)\xcd\x98\x9a\xbcDE\xfe\x85\xa8\xc7E\x9c5\xd6B\x94T\x85\xa9jp\xbe\n\x1cV\x7f\x0b\xab\xbe\xfe[\xc2\x12\xe5\x86G\x03\xc6\xb4\xdf8\x1aO$%2S\xdbM\xd7t\xddY2\x95M\xf2\x1c\xe5C\xfe/TrUZ\xa5\xe6\x03\xbb\x80\xec\xf9~\xaf\xf9(9\xbf\xd2\xe7\xcf!-89\x8f\x9b\xbf~q\xea\x9c\xfbb\xbc:uLw\x06x\x0e?\xbc\xf9\xeei\xc7\xfa\xf6\xd4m\x99Xi\xb9\xf1OM\xfd\xd3IdO\xeeX3p}VN\xef\xa0\xae\x1f\xc2B\x93=\xeb\xeaj_\xff\xc5EO\x11c\x1a\xdam\xbb\x87\xcb\xd3\xd5\x15\xeb\xb42\xbbQ\xc2I\xf4]\xfa\xdf\xb4F[\x0d\xb0gU\x8f\xc4c\xdb\x86\xc1\x83\xa7\x0f`{Su\xd5v`\xddF\x9c\x90\xfb\xaa\x1f\xa0g\xd7\x07\xd6\x8cW\x86\xfe\xf0\xe6\xbb\x87=\x1c\xab\xe1F\x10wH\x8d\xa9\xc4n+\xc2^8\xed\xf7w\xf0\xd3\xa9\xdaK\x8d^\xcc\x8f\"-f\xe2Q\xd5C\x8d\x04B\xdf\xf3&\x9f^\xb7\xed\xf5\x9em\xc4\xd8/OW\x1b},\xbf\x7f,{,\xc8))y)Do\xe5P\xdaVM\xdb\x08\xa5\x88o\n\xb7\xa5Gls\xbd9\xe3S%\x0e\xc7\x07\x9b\x07:\x83Vk\xdb\x8f\xb1h\xf4+\xaecV\xdb\xa1\xe6\x87\xf2\xc0\xf86:\xf5\xa7\x8a\x0fWZ\x1c\xc7z\xcf{\xa4T\xc0\xcb\xba\xa9\xba; \xb5\xc6w>2[\x95\x10@wnS\xec\xd3\x91m\x07\xa8\x07\xad\xe1N\x19\xc3\x03\xfb$\x96\xeays\xb7\x81o\xdb\x8f\xec\x96ug\xe2\xc8\xfe\xe1\xcdw*q\xda\xa1\xc7I\xcc\xee\xbe\x91O\xbf\xbda\x07\x06\xef\xf9\xf9\xfd\xfeL\xfe\x7f\xff\xfe\x8c\x1f\x1bM\xab~=\x13\xdc\xc3%a{\x94\x1a\xef\xfeN\xa04\x9f\x8e\x0e=y\xd9\x16\xd2\x0e\xebn\xa5\x17{\x80Cu\xec%+\x88\x1e\x0f\xedx#\x97\x88\xf9\x8a\x0b=z\xa8z\xb8jE\xf6\xfe3d-\xfe\x1e^]M=\xe4\xcb\xa7o\xd3\x19\x07!\xca\x1c\xfa\xfet`;$\xdf\xeb\xef\xe1y\x03\xdf\xbe{w\x0e\xdf\xbc|\xa7\xcd\xa9\x1f\xde|'7\xd4\x9d\xa8\x93\xa8\xe0Osv|wwd\x7f\xfe\xd3\x9f\x1dr\xa0K\xc8\x1a\xbd\xeeR\x1e\x9f\xc9;f\xda\xddi\xcb\xb8f\xc6\xban\x82S\xb4z3\x89_\x99J.*\x17tF\xfd\x96\xef\xd5\xb6\xfdp:\x8e\x15p\x97\x95\xb0\x10\x1bT\xac\x00\x1f\x8ah\xfb\xa6\xba\x15K\x7f0xt'\x99\xb4\xd2]\xe5\xff}\xdb\xd6;\xa8\x1a7)\x0cT\xc3b\xfbu\xec\xaa\xed\xd8\x99\xfe\x90\xd3\xab\x86\xfa\xb2\x166P\xc3\xd8\xae\xd7u\x8b\\Dt\xb7ln_\x83\x90E\\\x0c5\xc2,o\xe5\xde\xd8\xc0\xa3\x1fz\xa6\xcf\x1d>j\xce\x1e\xe2\x10\x15\xfcQ5\xb6:\xae\x9f\xcb\x8e\xc9b\x02Ep\xf3\xd8]i\x19\xa7\x10\xda\xbem\xb3\xa9=/J\x08\x9aa\x7fg\x16\x15\xe2\xd3\xda\x8aJJ\xb7\x96P\xc9\xea\xcb\xd3\x15tLd\xeb\xcb\xb8\xb9H\xb5\x17\x8d\x08s^\xd4\xfe\x8d|\x7f\xc9\xaekQZ\xe5\x10\xe3j<\"\\\xef\x8el#\xf9\xb1:\xd6=\xd7\xb11)\xf5V\xec\x88^\xe9\xf9\"l4\xdb\xdd\xf0HA^\xc9\x02P\xb9\x85\x1e\xc3\x01\xcd\x9e\xbaD6\xb3\x18\x8c\xb05\xc6\xca!\xa97\x8cVp\xcf\x0eU3\xd4\xdbYpK\xec\x91\x84\xa3\xd8[N\x1b?\xa5\xff\xa0\xe2R\xaa\xda\xc58h\x9dsU\x1dN\xd5e{\x8b\x1c\xd0\xa3kJ\xcc\xbf\xf1{\xa8\x07\xef\x9f7w\xef'%\x8b\x9bd\xdde=t|\xd3\x04z\xa2\xe5`\xb5ogs!-;{)\xb8\xb4R\xa6>\xef\xc9\xa5\xabn\x98mi\xeda\xc62\xe7\x9aq\xf7\xf5\xa5\xe8\x9e\x92\xa3=\xf4\xa7\xe3\xb1\xed\xc4 t\xac\xb6\x1f\x9e\x9e\x1a\xfe\x7f\xfc\xdc\x91\xeb\xd8c\xbb\xc4=p\xdb+8\x0dR@\xe8\xed\xd7\x83DF\xaa\xe5^\x84k\xd6\xb0N8\xa2d\xcd\xd9\x88:\xf8|&\x8f\xe4\x12\xd8\xf4_~\xaaDm\xd7\x97\xcf\xe0\x9c\xf7\x8f\xef;\xd5\xd5\xca\xbc\xea\xf1\xc5?\xfc\x03r\x0c|\xdd\xb6p\xd5\xb6\xf0[\xd8l6\xff\xcb\xf9\x99\x0f\xb6j\xee\xdc\x1f\xaa\xe6n\xc3\x9b\xfb\xbak\x0f\x8f\xae\xda\xf6\xb1\xfb\xcaf\xe3\xca\xf9\xfa\n\x1e\xf1O\x7f\x10\x1d|\xd7>\xfa;\xfe\xedc\xf8\x0fD\xb6a\xdf\xff\x15\x1f\xfb\xaf#c\xff}u[-\x1e<\xfcV\xe8\x1a\x9c\xea\x82\x91\xd6\xfd\xa3\xaf\xdbv\xb3\xddW}\xef\x19\xa8\xec\x02\x7fY\xf6\xdd\xf8\xc0m\xeb\xaf\xce_\x9e>\xe5\xec\x14\xee\xc3\xdb\xea\xc0\xf8\xd1\xfd\\\xf6\xe6\x9a\x0d\xcaT~\xd5\xf4\x037h\x1f=N\xe9\x1c\xfa=\xd6Wt\xb5~\x13Y\xad\xf3\xbb\xe1\x86\x1b_\x0e=\xd9\x97\xaf\xdb\xf6\xd1f\xb3y\x8c\xf1\xa4\\\xabG\xe8o\x82_\xc5\nR\x17\x90\x7f\xf4J\xce\xd8W/\xdf\xbex\xf3\xea\xfc\xdd\xeb7\x8f\xe7\xf2\x1b\x14y\xc9\xd3x\x03\xb2 t6\xfe12\x1b\xdf\xb4\xeeD\x88\x99x\xf6[\xf8\xbb\xe3\xe5\xe6\xeb\xb6\xfd\x8f\xcdf\xe3\xf2\x05\xef\xd4\x19W\xb8\xf8\x9bUsw\xbc\xdc|\xcf>z\xfaW_\x897\xff\xc7o\xa1\xa9\xf7(#\xa0\x93\x84\xb0#\xfe\xde\xac\xc3\xc8g\xaa\x07\xb2\xaf\x9b\x1f\x9aC\xd5\xf57\xd5\xfe]+7\xdd\xd2\xeeY\x7f{'\x002\xb6\x1fF9k^Ay\x9c\x9f\x042Jp\xa7/\xe5\xe5\xc7\xbeM\xee!\xa2\x92<\xe5\xf6\x9fpul\xb8\xfa\xf6\x90\xeb\xf1\xe3\xa9\xc4O,}\xd5\x9f\\k\x9b\xe0(\xfe\x9b\xfd\x9d\xb6Y\x1c\x83rT\x0dUA\xe8\xa0\xed\xd8\x87O\x1f\xda\xe4\x94\xd1\xa4\x9b\x96V\x12S|\xf7\xe0\xaam7\x97U':\xfd\xe9\xe9\xdd\xe6/\x0f\xe4\x88\xa5\xee\xef\x9a1\xa2\xc9\x07\xfc\xbd\xf9\x11\xf4\xfb\xb7\xaf\xbf\xff\xc2\x9di\xfe\xe7\xc9Z\x96\x1aR\xcbw\x95R\x0f\xa4\xc5 \x9cI\x83Hr\xbd>9\x99\x0b\xee\xe7\x83\xc05\x9e\x0e\xf63`\x87K\xb6\xdbMG\xfc\x99\xf6\x03\xdb\xa4\x8c\x03W\x96\x81\xbf\xff?|\x90\xefU\xad\xad\xe5\x11\xd2S\xb6\xd1\xdb\xf4\x19\xa2\xf2V\xdb\x0f|\x8fN&\xd2U\xbdg\xae\x14\xd4{\xf9\x9cu}\xdb\xa0\xcc\xab|\x19\"\xd4x!\xe6\xf9\xb7\xf0\xa5Ki|\x91/\xb7~\xef\xd7Q\xb9\xcb\x1f\xac\xd5\x07b\xfc\x0f\x9e\xc1\x03\x8c\x8f\xedamd\xef\x1f`\xd9\xfe\x0fD\xbf\xbf\xaf\x0e\x9c\xd6\xff\x96]\xfcW\xf4E\xde\xef\xd9{\xb1\xce\xbf\xbaR\xaa\xba\xbd\xc6r\x85\xea\x1e>\xb2\xfd\xfe\xc9\x87\xa6\xfd(\x93\xcco\x04f\x83\xaa\xe0\x97|iR\xb3\xd9\xe9L\xaa\x8f3\x1e\x9b\xe0aT\x93\x9cqDTM\xb0\x8dM\xf0\xbd`b\xcdC7\xed~ga\x08\x88-P7#\xef\xe9\xf0\x98b=\x9b\x96 ?r\x1c<\xe2\xbbU\x0f\xd71\xc4\xb5_\xe8\xcf\x7f\xfa\xf3c\x849s\xd6\xdbn\x00_r1lN\xea\xcb\xcd\xaf\xbf\xfcu\xff\x00YF\xfd_\x96\x9d0\xfa\xd3;6\x9c\xbaF^\xc0\xa0\xff8ZK+\xf8\xd1\n~\xf4K\x05?\xb2\x8b6\x90\x08\x00\x05f\xdb\xf8LQ{s\xfeBw\xd2A>\xc2\x83\x0f\xc5#\x0f\xa4=1\xa0\x01\x05\xef\xf2G\x8an\xca\x85\x12\xfc\x81\x84ra\x84bA\x04o\x08!#\x80P*|\x10\x0e\x1e,\n\x1d\x94\x0d\x1cx\xc3\x06e\x83\x06\x9e\x90Af\xc0\xc0\x99nW\xcf.\x1d,\xc8\x0c\x15\x14\x0e\x14d\x84 J\x07 \x8a\x85\x08\xca\x06\x08\x8a\x85\x07\xe2\xc1\x81b\xa1\x01_` ',\x80\x86\x01\x10\xcd\xd5\x957y!\x00\xc4\xe5\xbf\xd0\xe1\x8f\xb8\xfb\xa3zRXyt+\x0d\x96\xb9\xf9'\xb7>6\xbf_\xc4\xdb.\xec\xe0w\xdd\xfb\x05\x9c\xfbE]\xfb\xf3\xc30\xd3\xad\x8f\xb8\xf2s\x1c\xf9AO\xb6\xc7\x89\x1fu\xe1\xbb\x1e5\xba\xfb\xde\xfd\xf6\xaf\xd8X\x179\xee)\x83\x8d9\xed\xfdc\x8b:\xec\x13\xdc\xf5s7\xa7\xcfU\x9f\xef\xa8_\xee\xa6G\xd7e\xa1\x8b>\xe8\xa0\xf7\xbb\xe7C\xceyt\xb2\xa8\x8e\xf9\x98[~\xe6\x94\xcfp\xc9\x13\x1c\xf2tw|\xd4\x19\x8f\xf8\xba\x9d\xe6\x90wbN\xf8<\x17<\xda)\xe3/E\x9d\xef\x85]\xefE\x1d\xef%\xdd\xee>\xa7\xbb\xe3r/\xe3p/\xe6n/\xebl\xa7\xb9\xda\xa3\x8ev\xa2\x9b\x9d\xe2dw\\\xecnkTwk\xd8\xbdNt\xae\x13\\\xebV\x97K\xba\xd5\x0b;\xd5\xcb\xb9\xd4\xcb9\xd4\x97\xafn\xd4\x99\x1es\xa5K)\x1dpA.\xf1?\xeao\x84\xdbQ\xd2r\xbc\x8eW\x8c]wU3\x8c^\xc7o\xf8\xbf\xc8^F\xf1-sjB\xc9\xa5 \xea{=\x1a}\xdf\x98\x12I\xa7\x9eu\xf2\x15\xc1E\x8d\xf4\x04T*S\x7f\xb8a\xb5Y\x18}uj\xa6\x9b\xa8$a\xc7\xfb\x99\xd81\x16\xea\xd8%\xe3\xbd\x92/\xee\xe6\xbd3HU\x8d4Q\xf9G\x0f{\xbb\x9b\xe3'\x9e\x10\xc8DR\x01\x92s\xfd\xaa\xbd\x92E?g\xaa\xe2\x85\xff\x97\xf6\x91\\16}\xb4(\x1e2\xac\xbe\xdf\xd5\xf7\xbb\xfa~W\xdf\xef\xea\xfb\x1d\x9f\xd5\xf7\xbb\xfa~\xff\xcb\xf9~Ud^(|P\xcfa\xfb\xff\xef\x8fo\xc5-\x08C\x0b|\xcft\\\x06\x08]GN\x13?\xc3\xb4\xdc\x0dh\x93:|.\xf5\x91\xe4 6]=\xe2\xf2\xcd\xf8\xa7\xd6\xca8\xe7iU\xee\xf2N\xab\x9b\x8b\xf4\"G\xd5\x85\xe5jQI\xb5\x17\xe6\xaa/`\xea/\xe4v\xb6\x88*\x0c\x11u\x18\xf05\x87\xfbR\x8b\xc1\xc7\x02\x10\xa8\xb6\xf4\xd7[\x06\xcb\xec\x89\x99\x85\xab\xb5\xbfZ\xfb\x7fk\xd6>\xc9\xc8w\xcc\xfbP\xa4\xfe\xba\xbd\xdd\xdc~\xb9\xf9\x8a\x1d\xdb\xbe\xa6\x17\x95\x1d\xd5\xadU\x17\xf5nn\xa3\xcf\xd6\x87r\xef\x9dA\xcd\x82\x91\x93\x16\x10\xd4;-\x87\x8e\xb3\xcb\xb2v\xb2\xdb\xee\x8d\x87\xa1\"\xb2\xf1#\xab-\xf5Wm\xfc\xb2\x1e\xae\xba\xf6`\xb5:\x95\x84\x1d\xf8\xaa\xdf\xafsb\xc7\x9a\xf6@\xb6\xf1\xe7=\n\xbe\x1e\x12\x15/\xda\xda\x10w0\xb4\x1fX\xa3\xea\x8ae\x97\xb4\xf0\xe3g}\xd5\xa8\x86g\xca\xab\xbc\x9d\x86\x9bQ\xf2gUz\\\x0b\x01\xfa\x8a\xcbxa\x15\x8c\xa7\xa6UW*Y\xd4\xa2\xd7\xd7\xd7M5\x88\x9b\x00;\xf6\xd3\xa9\xee\xa4\x0b\xf7\xba\xbdn\xc5\x81\xb5\xc1\x17Z5.\xe5\x9cZ_\xf9\xe5\xc8\x02\x1bw\xef\x8d\x13\xa2\xf6\x84)\xfc\x15E\x8b\x16\xff\xf3V\x88\x81\xd1q\xc2\x95N\xfe\xd7\xa1\x1eOM\x93s\xd1\xad\x97x\x0f\xcf\xa1n.v\xe6\xa6\x85\x95\x0f\x7f\xa9|\xf8\x87\xba\x11\xb7vi\x11#n\x90\x1c9\x82s\x0b\x13^\xc3\xdbV8\x06\xa5WK\xd3:T\x9f\xf4B_\xc8_Rd\xdd\xfcR7\xd1\x0fIFt\xe39\x1f\xe9M\xbb\xdf\x89\xeb\xfa\xda\xb1\x8b|b'\x9e\x85W\xdc\x12\xaeL\xa7\x82T_\xe1\xd7\xe6\x84\x1f\xdaf\xb8\xe9\x91-e\xb1\xf8\x0c(T\xfc\xe9J\x08c\xf1\x92\xb8R\xf2\xba\xbde]#\x1c\x7f\x96\xf0\xb5w\xce\xbae\xd6-\xf3_h\xcb\x80\x1a\xcd\x82>\x8fwF*= \x9d\x96\x9fNmw:\xa4\x90\xb5\x18L/\xc9\x91u[n\xe9^\x1b7\x10\x8a[\x12\x85\x83D\x9a\x12\xe2\x9eW\xb9fR\x9f\x96\x87\xb0\xc9\x19\xc6\xd5\xb5\xf2\xe2Z\xf5\xe3p\xd3\xb1\x9eOoJG\xff\x15\xed(_\x8bNO\xcb\xbf\xb1^tK\n\x1b\x93\x93\xb8\x05\xb4\x19\xaf,t\xec\xf2_m\xfei\\\x1f6\xb4\x17\x8b:\x88\xce\xa4\xb4 \xda+\xf8\x91\xa99\x13\x0c\xf5NL\xa9\xfc\xa7XV\xa7\xc7\xf6L\xf2^\x89\x8b\x8c\xad\x11\xc0\x97O\x7f3n\x88\xba\xb9\xa8%?\x8e\x1bCPN\x19\x825\xc7\\@\xc8\xbe\x8d\xee\xfaZ\\e\xcaf\xd3n\xaa\xd6r\xbc\xd2\xefj{\xff\x85\x1dZ\xef\xa0\x1a\xa6q\xf6\xa7\xcbC\xdd\x9bw\\\x8ff\xc2\x96\x9f\x0c\xfb\x02C\x90\x84\xd4H\xa4d\xd3W!\xf3>Ill.\xb1\xaa\xed\x07P>\xf6Qw4\x9d\xc2\xe2\xe2_C@\xd5\xbd\xa2\xbdg;\xdbS\x85ES\xff\xe9W\x9e\x11\xeeX\xef\x9cUI\x03\xd4\x1a\xa91\xb6\x8emY}\xcb\xe0\x11:\x9d\xf0\xf7z\x80\xa6Gl\x1c\x97>\xa4\xadS\xe3\xd5\x95\xb4\xf4\xcf\xc4\xfcD\xe9\xba\xd4D\xc7lv\xb8\x14\x13\x9f0u\xec\xd3\x91\xed\xb8N~\xb1X\x8aZ\x9b4(RA\xa29\x8dm\x1a\xea}z\x7f\x17 \x94\xfb\x95x\xff\xfc/\x8bf~\xd5\xb0\xfe\xf64\xac\x89\x87\x17\xe9Z|\x9f^\x88{\xfcq\xf5\xe2\xb2m\xf7\xac\x9a\"<\xca\x1f\xc7?\x9b\xb6\x7f}e6\xb8k\x99\x0c \x1c\x18\x1b\x94\xd6b\xb66\xca\x97Q\xc7\xeb\x18\xef\xc1\xd2\xa6M\x17\xcf\xd482fg\xc8\xfc\xe4]\xda\xaa\x1c\x97\xe4\x1e\xa1.\x0d\"\x1c\xd4\n\xa2\x9c\x1b\x0ect\xd3\xd8V\x05\xce\xbc\x85\xc7\xf6A\xf2\x8b\xb9g\xf5A\xce\xe5\xf5\x81\x0d\xf2\x10<\xc8@U\xa5?G\xef\x85V*\xca\xaf6\xbf\xfar\x03\x7f`U#{Qi\xe6\x93W\xd3\xab\x9de\x0c\xdf\xce5\xf9\xf2W\xbf\x12\x8a\xe7\xd9\xd4\x1a\xef\xfb\x97R\x1b\xfd\xa8b\xf7f\xfbz\x83\x90\xa5\x1b.\x0d|\x86\xac\xbc\xf5^\xbba?=\xbdno\xe1\xd0\xeeN{\xb6 &S\xfd\x8bk\xda*~$\x1b\xb7E\xfc\xb0\xa9\xeeW\x15+\xbf\xe74\xada\xbd:Y<\x05\xf3l\xd6\xab\x93S\xf3i\xc4\xb8\xd7\xab\x93S\xf3f\xd6\xab\x93)\xf9/\xa8X)\x9a\xe7R:\xc7\xa5`~\x0b%\xb7\xa5`^\xcbzu\xb2x\x16\xe7\xae\xacW'/\xbbYa\xbd:Y>\xc3zu2:\xf6E70P\x07\x1f\xbb\x85a\xbd:y\xbd:9vG\xc3zu\xf2zur\xf4\xfe\x86\xc278\x94\xbd\xc3a\xbd:\x19f\x0f\xed>\x07\xc2\x8d\x0e\xe4;\x1dh\xb7:\xacW'\xafW'g\xadw\xf4\xb6\x87\xf8}\x0f\xde\xab\x93-;A\xbb@\x85\xbd/L\x90\xd1H\x18\x7f\x92\xe64\xfb\xc4\xb6'\xae \xcfB\x0e\x061\x91\x8b=\xda[\xfdP\x0d'\xc3\x17juB\xfeh\xbb\xa0\xc7\xc8\xb9\xf8m:JP\xeb\x8c5'+\x82\xf6\x04\xce\xdf\xbc>\x7f\xfd\xf6\xf9w\x17o\xdf=\x7f\xf7\xc3\xdb\x8b\x1f\xbe\x7f{\xfe\xf2\xc5\xab\xaf_\xbd\xfc*\xf8\xdeW/\xcf_\xbf}\xf5\xee\xe2\xfc\xe5\x9bW\xaf\xc3\xaf\xfe\xf8\xfa\xdd\xab\xef\xbf\xa1\xbcy\xfe\xfc\xed\xdbH\xbbo^\xfe\xfe\xe5\x8bw\x91\x97\xbe~\xfe\xea;\xe3\x15u\x0e>#\x0c\xf6\xaan\xaa\xfd\xc5P\xed\xf7w\x17\xd2a\xe3Y\n+H\xe8~\xa5s\xb5\xc5/ ~\xd1I1s\xb7:\xfc\xf1\x86\x99\xc5P\"\xe1^\xee\xdbqqo\xeb\n\xae\xdf\x9c\xbf8S\xee\x10\x1d(\xd2b\x9d\xa0\xbfi\xbba\xfc\x13\xde\x17\xf9\xcf\xb4\xbb\xcc\xa8\x9d\xd1\xb4\x01\x07A1\x8e\x93\xc3e=\x0cL\xdf\xef0\xe6O\xcd;5O\x04\x8a\xf7\xea\x9f~\xe5\xf4\xca\xcc\xce\x92\x02t\x9e\xb0T\xf7\xd3K\xea\xeb\xab\xaa\xde\xb3\xddE\xc7\xaa\xde,n]8WH\xaf\xac\x06,\x1bD\xfd\xe9\xe3\xcd\x9d\xddK\xf9\xc5\x17N\x8b\xe7c\xde\x95Ad\xdbvL\xc9\xf7\x03\xb7`;\xb1\n\x15V\x15\xb2\xf1f\xce\xbc5\xac'g\xe4\xa6\xf1C1|\x88F\x0f\xcd\xe0\x89\x18;QC'h\xe4\x90\x0d\x1cOf\x935{b\x9eDXG.\x8c\n\xc3\x89\xdf\x98Z\x94i%4\x97\x04'4\xd8\xb1YA\xa6tY\xfa\xcc\xda\xd8\x9a\xb8-\xd9\xbf\x1b*\xc9\xac \xd8\x9d:\x9d\x16\xa7Nu-\x80\xac\xdc\xc7\xd8z\xbb=\xb0~\xa6u@\x1e\x92\xd4\xf6%'\xb9\x0d\xcb\xbf\x07Z\xb4\xd6R\xa3\xe6\xe9|\x17Y#\x1ehVs\xa8\xdb\xb0\xfeei\xd3\x02\xb5\xafc\\\xc3\x0d\xf6@n\x01\xb7}\xf9\xf7\xa5\xadK\xb1\xe5\n\x19Qa\xfd\xa2m\xfa\xa1\x1eN|\x0b%c\x9cm\x8d\x8f\x03\"z^\xbe\xeem\x98R\x11n~\xa7\xe8Mxo\xf8\x18U\xe5^\xf2\xf0<\xf6\x0c\xc9\xa1\xa0\x17\xc3\xaa-\x87\x90\xa9\x12\xa8\xff\xb7\xc4\x9cA9-\xd1\x11\xa6!\xb5\x8b\xae\x97\x1a?^\\s\x0e\x1e\x93\x0c3\x14\x013\x16\xc1o0B\xc0h\x04\x9f\xe1\x08\xa1\xc1\x83\xd7\x80\x8c|\x16\xcb YlL:\x94r,J\x87\x98\xdaC\xce\xdf\xe9f&8\xbe)j\xf5\xba\xf3\xa5]\xc7\xa2x\xacH\x15;8N\x1d|\xbd0\xd9A\x91P\xba\xb3q\xc0\n\xb3\x85t\x84I\x9d\x88\x7f\xbf\xfe\x16\xaf \x0b\xee\x80\x800+)\xce\xbc\x02\x8d\xbe=\xcb\x08\xb5\xb0\xa7\xc9\x15l\x1e\xd1\x16\x14na\xf1\x16\x10p\x11\x11\x17\x12r\x91Oc\x82\xae\xa4\xa8+,\xec\xfc\xe2.U\xe0\xe5\x88\xbc\xf0\x14f\x8a=\x9b?\xa5\x08D\xf7\xb6G\x04\x8f\x95>\xb6q,0\x83\xa6R\xabq\x1f,\xc1\xa2\x12\x1bj\xfa\xb3J\x94X\xb1\xa8V,\xaa\xfb\xc4\xa2\x9a\x1f\xb9 \xa7:\x05\x87J| \xcb\xab\x92\x0fu]\xf7k\xa0\x828\x83\x99\xabF\x1d\xdbV\x03\xdb=\x83\xf3\x8e]\xb1N\x97j\xbc\x97D\xdeC\xdd\xf4\x03\xabv&3X\xcd\xf8j\xc0:&\xe3\xb0C\xab\xde_\xb4\x1f=\x95\xcc@6;H\xb8\x10c\x19\xe5=O\x9c\xdd\x0ea\xe6\xc6\nBM!a\xea\xd0RdX\xed\xa5\xe5JDQ\x15\xe2\x1e\xec\xa5,\xc8\x18\x88\xc0\xc6\x00y\xcb9kP\x12B\x06<02\xe0@\xc9\xc8\x0c\x94\xfb\xde\xd2f+\x84\x0d-^_\xb4\x9d\xe7\xc5\xe5\x90\xb1\x1e\x99863rnq\x8d\x0f\xd9\x06\x00E\xb7\x81\x02C\xe9\x16\xe0>\xe0le\xa0\xdd@\x00\xf1\x06\xf2;\xbd\x14\xfd&:\xffq<\x1c\xfa\xb6\x98\xb1\xb6(\x04\xd5\xec]\x0d*2\x85\x16zC\xa8\xd8[> \xfc\xbf\x1eg\xf2Y\x8f\xb3\xff\x9e\xc7\x19|6m\x18~\xe9\xa7\x8d\xfd\x87\xf5\xb4\xa1u\xba\xdcic\xff\x81p\xda\x00\x0d\x81\x0d\x96\x0f2\x03\xd6e\xb8\xa9\xe6k\xa3!]\x08\x88l`z\xb9qT6\xc8\x1bV1\x846HBi\x83\x18\xe8\x15 #\xb7\xd1\xda o\xe0\x85\x90\xdb\xc0\xe8\xa7\xe1v\x9c\xbd\x91\x8d\xe06\x9fh\xe5t\xc3P\xdc\x802\xb5Q47 \xcf\xae\xe3\x7f,\x80\xec\x06ic\xb8\x1f\x91VT\x0e\xcf\x11\xdf m\x84\xab~*\x9f\xff~\xfai&~\x1c\x041\xe4`\\\x8dy6\xa5\xf8%\x0bK\x0e\xe8xr\xcb\xba1$\xe2\xcaA\x00[nY\x0f\x120\xe6 \x8c3\x07\xcb\xc5U\x86r\xe2b\xce\x89~\xa4\xe3\xceA\x01\xec\xb9\x19\xb9\xf6j\x01\xfe\x1cx1\xe8 \x01\x87\x0e \x92P\xc20\n\xb5\xce\xbc\xe2\x13\x0f\xbf(\x9eM\x0e\xc0hf\x9f\xd8&\xc1\xc3Q<\xd9kIR\x84\x0bh\x07\x9f\xe9\x0c\x1b\xd6K&\xd7K&\xd7K&\xa3\xe0x(\xb5\xf5\x92\xc9\xe5 z@\x05\xd2C\xbfL\x00\xd7\x83\\\x80=\xc8\x03\xd9\xf3mtOW\x0b\x82\xef\xc1=\x00\xf0AY\x10> \x02\xf1AY0>X/\x99\\/\x99\x84 x\x1f\x04\x01\xfc\x80\xd0\x9b< ?\x87\x9c\x00\xf6C\xc1\xfc\xa0\x14\xa0\x1fd\x83\xfa9\xe4\x84F\x83*\x0f%\xc1\xfd@o#d@y \x7f\x10\xc7\xba\x83\x10\xd8\x1f\xd0\x00\xff\xc0\x87\xc2\x95\x08\xfc\x07\x01:\x08\xb4Q&\x08 $MN\x1c\x0c\x10\x08\xb3@\x00\x05\x84T`@\xc0\xd1\xd8\x82\x00\x81P\x08$\x102\x81\x02!\xbc\xb2\x8b\x01\x03!\x0e\x1a\x08\x11\xe0@\x88\x82\x07Bx\xc1\xe9 \x82@\x02\x12\x04\x0cL\x10r\x01\x05\x81\n*\x08\x89\xc0\x82@\x03\x17\x84\xc0$z\xd8\xda\xff~\x1cl\x10\n\x00\x0eB\xb8\xcb\xce\xdf\xb3\xc0\x07\x1dj\x0e\x18!d\x02\x12\xba- \x00\x85\x90\x0bR\xe8vy\x0eZ\x08\xc5\x81\x0b!\x08^\x088\x80!\x14\x041\x84\xb2@\x86p\x0f`\x86\x00t@C\xa0\x81\x1aB\n\xb0!\x90\xc1\x0d\x01\xdf]\xe0\x01\xbd\x83\x04\xe0\xbb\x18\xd0!\xa4\x80\x1d\x02\x15\xf0\x10\xf0\x01\x95\x05>\x84\\\xf0C\x87\x1a\x02\x86\x08\x85\x01\x11\xa10(\"\x14\xe0\x11\x028\"\x90\x00\x12\xc19\xd8\xc2\xb6XQ\xb0D\x809`\" \xa0\x890\xefT\np\"\x84,\xe59\x80\"\xc4\xa0/\xa2\xefz\x81\x14\xf1\xd7}`\x8a\xf8\xdb\x0e\xa0\"\xfe\x1a\x02\xaa\x88\xbf8\x03V\x041\xcfD\xec\x11\xf9\x84\x00\x16!\xcaK\x05\x80\x16g\x143\xd1\x16g\xd4\x10O\xb4\xa6J\x01`\x84P(\xc9\x1fH\xf2\x801B\xcc\xe5c\xcdu\x1e(#\x84\x81\x19!\xa9+e\x00\x1a\xc1\x0b\xd2\x08I\xbd\xc9\x01k\x04\x02`#$\xf5\x06u\xbc\x95\x03o\x04\xb4\xca\xd5\x03\xe2\x08\x94\x88\xad\x8b\x18\x07\x8et^\x04\xe8(\xc9\xc8\xc4\x05\x17\xc5\x0e\n\xf5m\xde\x02\xd0\x00\x1eE\xf38\xc8#|\xa6\xe0\xf2\x9a \xf53$H-\x87\x8a\x840\\$\x14\xe2\xe7\x12\xd0\x91\x10\x82\x8f\x84\xb2\x1d]\n% (\x9c$\x84:\x87\xc1JB9hI\x80R\xf0\x92\x90\x0f1 \xe0\xc0LBhn\xac\xa5\x89\xa2+N\xd4\xe9\x90\x93\x80\xc1N\xc2\xbd\xf4)\x19\x82\x12\xc6S\x91-\x02\x82J\xe9\x9cn\x07\x12!)\x01\x87\xa5\x04\x08\xe5\x10\xc6{i\x02A\x02\xe4AT\x82\x1f\xa6\x12\xf2\xe6\xd2\xd3\xcb,\xc8J\xa7\xe5\x12\xb0\x95\xbe\xb3\x12\xcd\xc1#\xe5\xf7\xe9NQa\x16\xd4\xfb\xe9H\x0bz\x18\xf7\x8c\x9ftO\xb0IK\x12\x03}\xa9\x81~\xfd\xed>`\x8a\x86@\x92`4\xa6\x1f\xd7\xcd\xe4\xb34U\xd0Cn\xb0\"\xde\x9e\xb0\x0d\x94N\x17,\x9e0\x18M\x19,\x904X:m\x90\x968\x98\x95:X:y\x90\x98>X:\x81\x90\x94B\xb8<\x89\xd0GN\xdc\xbf\x1bL#,\x98H\x18M%,\x94L\x98\x93N\x98\x9cPX \xa5pyR\xa1W\xf2\x80?\xad\xb0xb\xe1\xfd\xa4\x16\x16O.\xa4\xa7\x17\x16O0\x8c\xa5\x18.I2\xf4\x10\x1aS\x0f\x03i\x86I\x89\x86\x85S\x0dc\xc9\x86\x99\xe9\x86\x81\x84C\x82z\x12I:\xa4\xea/%\x13\x0fc\xa9\x87\x94>\x15N?\x8c% \x16LA,\x9e\x84\x18JC\xccJDD\xa8\xf1\x9e\x0c\x9eT\xc4\x12\xc9\x88\xa4\x8c\xbbHB\"9%1\x90\xa5\x93\x9c\x96\x18\xa2\x85&%\x14HNL\x9b,Z\x82\"eN\x88I\x8a\x0b\xd2\x14\xbd\x19]\x91T\xc5r\xc9\x8a\xf9\xe9\x8a\x91\xf5\xceJY$%-\xc6\xd3\x16)\x89\x8b\x11FHK^\xa4\xa6/z\x12\x18\x0b\xa40&$1\xa6\xa71\x92\x13\x19C\x93\xeae\xfd\xd07\xb4\x84\xc62)\x8d\x91\xce#\xbf\x94Ml\xf4\xa46\x16Nn\xf4\xa77\x96Np\xf4\xa48f%9\"\xd4|fp8\xf1\xd1\x9b\xfaX6\xf9\xb1x\xfa\xe3\xfd$@\xa6\xa5@\x92\x93 \x13\xd3 S\x12!\xbd\xa9\x90\xfeD7z\xaa\x1b%\x1d21!2!%\xd23\xb4\x8c\xb4H/\xf7\xbb\x7f/\x9b*\xe9M\x96,\x9f.Y>a\xb2\x04'\x11\x93&\xa9i\x93\xee!\x1a\xb3$\x17'O:\x94\xc6\x10\x97\x9b>\x89'Pf\xa6P\x06m\x7f,\x8d2-\x9129\x9525\x99\x92\x9cN\x99\x90PIL\xa9LN\xaa\x8c\xa7U\xc69-+\xb5\xd2\xa1\x86\xa5Z\x96N\xb6D\xd3-\xd3\x13.\x17'X\x05\xd2.\xa3\x8e\xaf\xc2\xa9\x97\xd1\xe4\xcb\xb4\x0e\x95K\xc0\x0c\xa5`\xa6\xf5)7\x0d\x93\x96\x88\x99\xd6'\x8f;\xb2l:&\x9e\x90\x19H\xc9$E\xcc\xf1\x0c\xacb\x89\x99\xb1\xd4\xccr}\xccH\xd0\x0c\xa6h~\xde \xffz\x17QJ\xe2\xe6\xbd\xddE\x94\x97\xbe\x19M\xe0,\xc7\xf5\xa5\xd28#\x89\x9c\xc5;\x9c\x93\xce\xe9K\xe8\x0cv\xd2\x97\xd4Y4\xad\xb3dbg\x91\xd4N4\xb938O\xf1\x1c\xbby\xbe\xe2\xb2\x14OO\x92\xe7}\xf5mQ\xaa\xa7/\xd9\xf3\xbe:\x99\x93\xf2\xe9M\xfa\x0c\xa5}Rz;O\xa9\xccO\xfd\x0c&\x7ff\xce\xad\xb7\xb7\xd9)\xa0\xf7\x92\x04\xea\x90\x1d\x93+\x9d['\xa6\xfb\xe3\x10j\xeb]r\xc3z\x97\xdc/\xfd.\xb9\xffD\x93\x9c\xd3PL\xc7\xedALs~W\xed\xf7wo\xc4\xe8\x93\x13\x9d\x85\xa7\xc3\xb3\x8d\xa4\x17\x04\xbf\xdfq\xf9EG\x1eO\x82\x97E\nz\x0f\x02~\x03Z\xf3e|\x05\xb8\x97\x80\xd6\x83\x1c\xcf@\xcc'@\xeb\x81\xb3!\xcby\x00\xecN\xe3\xad\xfa8\x9e\xb2\xb3\xc4g\xd4]\xf5c;\xb0\xe4\xedd\xa3j'\xec\n=\xf4_\xd8\x95\xf0|<\x8b\xaa\x80\xc4\x87zM\xe4?<\x9a\x9e\xd9\x9cL(\xfe\x19\xc0\x89e\xc3\x98c!\xee9\xd0_[\xb3+3\xf3\xa4=*\x07\xc5O\x13\x99\x1f,26\x81d\xe0\x13\x94\xfa\xac\xaco\x99\xa9\xa1)J\xd3\xeah.\xf1N\x90\xb7\xa3\x06\x074\xed\x93\xf6\x88\xeedg^\x9f\xcd\xff`\x90\xd1\xeaY\x98\x88Z\x84g\xd8\x1f'b\x8d\xa5u\x85)~\xff\xfa\xd9\xec\xdf\xd6\xd8H\x14\xa6U\x9e\xd3\x9a~\xb1\xa9\xda\x1aR\x88\xcd\xeb\xe6:\xd1\x94\xf3\\z\x1f\xd7(\x82w\xdb#j\x9b\xd9;\x9f\xc50%\xe3\xd2,\x05W\xda\x93\xc7=\xd7<\xfc:\xc7rmc\xd2.\x0cr\xb8\x9e\x81\xce\xf7\\\xb7\x88\x89&\xf7\x1d[\x9f\x88i\x12\x01\x1d\x82\xa0=\x90\xc4\x95\xab1\xc49-SK(\xa6\x1f(\xde;\xd4\xcd\xb0\xb9\xfd\xf2\x92\x0d\xd5\x97\x9b\xc4\xdd\xc6\xbf\xbd\x98\x95]\x84\xb4\x84A!\xe9l\xdbZT\xb3\xf2\xef\xd5;us\xb5\x17\x1b\xf0\x82\x0b\xf7\x0b uE\xa3z\xa8> \xb7A\xd54\xa7j\xafP\xb2\xa0n&\x9a\xd0ML;5t\xa8>\xa55\x10\xa3W7Dz\xca\xcf\x81\xd2\xbbn\xab\xfd\xc5e\xcb\x95\x1e\x1a5\xfe\x01\x9fT\xe5~\x02\xf9-TC{\xd0h[\x97\xfbv\xfb\xa1\xe7R\xf1\xe2\x8eU1K\xcbc\xea\x19\xa9\xcb[\xce\xa2\x92(o\x168Q\x979}\xc2\x91\x0d\xac\xebG\xc7\xde\xa7\xa7\x9c\x0b@\xeaa>\xbe\x14\xde\xbf\xe7b}\xcf\xbb\xf6\xb6\xee\xb9\xb8I\x8e\x18K\x06\xb98\x8e\x14\x88\x13ay\xa2m\xff\xc7\x9c\xa2\xde\xd6\niMp\xb8(\xd6\x94\xbci\xbc(\xdcQ\xc8\x96\xb63=}c\x0e:KM\x02O\xe7\x14p\xef\xa9;\xdb\xaf4s&O\xf3\xc8\xd6\xd9\xd3;m\x10\xcf\xb4N/\xd0\xa6\xd3\x19\x14\xc5\xe9<~\x14J\xf1s'P\xb2\x7f\xf2\xec\x1d\x0d\x11\xec\x8c\xe6\x18\xdcR\xda8\x1a\xb7\x929\xf9\xa4P\x0d&\xd0!d\x01\xc7\x05;\xc4\x85;\xa5\x854!\x0f~A\x9f\xd2\x18\x85vME\xe0\xa6\x08\x7f\xf0\x1d\x00\x14\xca\x84\x83\x00B\x87A\xb0\x8dx\x00\x8a~0 \xdb\x83\xb2\x0f\xd5y\x82\xca/\xb91l=\xe6\x85\xc1f\x84\x8d\xd7\x9f.\xfbc\xb5\x0d+\x1dV\x18\x13\xf9}\x16%q\xde\xc0e\x93\xd1]\xd3\x90\xab\x9b]}[\xef\xc4\xc1\xa1w\xb9\xe2| \x18$\xe1{M\"\xfc\x15I\xe8\xdc\xf5\x10\xcf&)[J\x85\x84\x14\x1a\x9d\x1eG\xb1H8\xb9\x0b\x04~\x8e\xa5\xc6\x9b\x11\xdc\xcd\xf0\xa2y\x98\xb7\x10\xe3\x8a\x0f\xde\xaa\x81\xa6/\x8b\x9e\xa2{\xf6s\xe3+\x11\x90\x1e\x1f\xd8]\xa9\x8c1\x87z\xc8\xbd\xaeg\xd2\xb0\x8a\xa6\x9d\xa4G\xa1\x90\xbc\x9a\xddX/\xc6\xbb+`\x7f,b\xecS\xdd\x0f|i\xed08\xff@\x93\x9a\xd7m\xa3%\x8c\xff\xec2\x95\xad\xa58\xeb\x0fv\xb1\x8c\xc1iR\x8f\x1e1A\x84\xefkD\x08\xef\xd8u\xdd\x0f\"\x94<2\xc68N1F\xe9+3z\x1f\xe96\xce\xb4o-vH`\xd3\x98\xa8]\xc6\xc6Qq\x9b\xcb\x15\x06'\xa8vm\x16P\xadD&\xb1\xdfW\xfdM\xdd\\/5\xbe\xfb\xfa\xbaa\xbb\x0bu\x9c\x7f\xac\x9b]\xfb18\xa1\xd3!n\x9e\xe1\x87\xba\xb9P\xa4\xb8J\x90D\xc7\xd0\xdcw\xed\xc7f\xa8\x0f\xec\xe2\xdf\xabz\x7f\xb1S\xde\xb4 \x1d1\x01\x17W\x02\x03\xbfm.v\xed\xe9r\xcfD_\xd2\x9bwh\xc9\xde\xa4\x12\xc2\xec\xd7\x11\xf9\xcb\xd1\xb7Gt\xebK\x993\xa4W\xd45f\x9d\xb5\xce>{\x9d\xadA;B\x83<\x03\x14\x05p\xae\xffE\xf8\x87Ds\x96\xea\x15\xe3\xa5\x00M\nO\x05>\xf7v)\xca_\xe9D\x8b\xf3\xda\xa8\x89\x97\xd2\xafc\xfc\xfb\xb6\xben\xea\xe6\xfaUs\xd5&3\xf1m\xb5\x17\xcbR7\xd7\x17us\xd5.bg\x15\xf3'\xad\x82\x84\xf9\xb8A\x02\xbc\xd1e\xf3\x9a<\xdf*\xbf\xadF^\x11\x8e\xf4jh;\x91\x19'\xb0\x11\xa1\x82m\xd5\xec\xf8\x9f\x19\xbc~#~85O\xfe}^ _7;\xf6\xe9\xa2\xbd\xba\xeaY~\xf7\xc2\x19\x07\xafxS\x1a+\xa6\x87\xba\xd9v\x02.\x86\xed\x80\xdd\x8a\xfc\xc7\xfa0\xa2\xc0\x8b\xd1\xd4\xbd6&\x91+S\x840\xe1\x07\xe5<;\xf0\xe2P\xdd]\xc8\xdb\x1a\xa4\x80\x10\x81O\xf6d\xdb\x1e\x0e\xf5 \xef\xfe\x18\xd4E5u\x03\xdb\xb6\xf9w\x85^./\x01\xb0\xa9!8e\x984\x1b\xad\x8f\x81u\x87Qg\x12\xb3\xab\x93Y\x0fu\xef\xdeA!GqY\x0f\x87\xeah\x86\xe3\xe5B]\x08\xec\xb4\xc4u!\\\xd0\xe7\xac\xcd\xbb\xfa\xc0\xfa\xa1:\x1c%Z\x9bZ\xa51H\xa3WC\xf6\nv'\x01O\xb3\xafoY\xc3\xfa\xf9\xdd\nZH\x99\xc3\x19\xda\xc3e?\xb4\xcd\xc2\xeb\xcd\x9c\xfe\xfe\xf1\x86\x89\xeb\x15\xe4bZLsS\xf5p\xc9Xc\xb4 \x8f>\xd4{\xde\xf1\xf64\xb8\x17\x1f\x8d\x9f:\xeb\xcc\x86\xc7\"\xeb\xb6\x16\xe9\xa6\xd06[6\x9b\x13\xc9S\xc2jf?\x9d\xea\xdbv\xab\xa2y\x9d\xa1\xa6\xe9\xa7j\xeedj\xea\xbc\xa1m\xdb\\\xd5\xd7'\xae0\x1f\xea\xfe\x92\xddT\xb7\xb5}\xfb\x89\xe4\x1d\xcdr\"\x0b\x8c\\\xc8\xbat\xbf>\x07\xd5\x0e\xb4W\xaa\x03\xf0\xe8\xd4H\xee\x7f\xac\xdc-z~N*\xd5Y\xdc~2#tj\x1a\xb6e}_u\xce\xed@\x1d\xabv\xbd\xbdA<[\xc2\xdf\xd7\x1f\xf5j\x18\xe7\x82\x99-\xa1\x7f~\xd8\x83\x92\xfc\xc0%\xbf8\x85\x0emS\x0f\xedl\xca\x86\x1bV[k\xa4\x19\x1d\xf81|[\x0f&R\x80\x94\xc8\xf3cE\x9f{V\x83\"\x07Z#\x0e\xdcV{\x91\x9c\xa1\x0f\x93/\x0cjvu8r\xdcQ\x8eU\xe33E\xed\xcd\xf9\x0b=\xaa\xe4\x836]]\xc4NW\x92\x1dEv\x07\xa0\xc7p`#\xf8\x8f\xe2\xc0G\xa1\xfds\x1f\x07r\xe8H^\xdc\xcdX*`\xe1\xa39p8\x97>\x9e=@\xa2%\x8fh\xff!\x1d:\xa6IkE\x82_C\xd6\xab\xe4q\x8d\x1f\xd8\xfe#;th\xc7{^\xf2\xe0\x0e\x1c\xdd\x99\x87\xb7CM8\xac|\xc77\xe5\x00'\x1d\xe1$\x9eY\xb2\xbf\x8b\x1d\xe5\xc1\xc3<\xe58\x0f\xf79\xe3H\xb7\xe7|<\xde\xddC\x9dr\xac\x87\x8e\xf2j\xbf\x9f:\xa27\x15V\xfa\x96`X\xae%kk\xc9\x9a\xfe\xc2\xbf\x86\xb2IC\x13l\xad+\x01\xeaF\x80rO\xca\xe1\x886\xffQ\xcc\xb5\x8d0\xbfm;\xf9\xa2\xb8G@\xe9\xa7#x?\x97\xc9B\x1e\x98\xc3\xb4\xc6\xa6\xdf|\xdb\x1e\xa6N\xa1\xe8\xfd\x1d;2\x91d\xf6\xbb\xaa\x1bg\xd6w'\x855F\xc1\\\xf3\xfb($\x1c\x7fLcN\xf2D\x99\xdf)z):3&\xb5\xc8\xea\xb2\xa3\xcc\"\x0c\x8e+\xb0\xe8N\xc0O\x8b\xb2\xea*\xae\xa8&t\xc7\x7f\x04\xe4*\xa4\xf2\xd41\x08\xceT\xd1L%t\xaetf\xa9\x9bN_\xed\xb3\x12W1\x83\xb3\xec\xaa\x95\xfe\x99.\xa5J\xce\x95HL}\xc4\x15G\x7f\xdfJ)\x8b\xa8\x9a\x98\xa5 j\x85\xd0\xa0\xe7\xa8\x86a\xa50\xa2\x0e.\xddE\xd6A\xb1\\\xed\xb3\xd4\xbc\x89 M\xbf\xc3\x174C\xa7s\xdd4\x966\x87\xeaqZH\x0f\xe2\x0e\xdbQF\xff\xaemvo\x8d\x1bS\x9cy\xb6\x8bX~\xf7\xfa\xfb\xaf\xfc\xf7w\xcc\x7f\xe7\xff\n\xfe\xf8\xea\xfbo\xd0_\x8d\x0f\xc7\xfc\xefP\xd3\xf8\x92Oc\x1buV\xf9/Q\xfb3N\xb0Y\x83\xe2i\xe4\x19\xa0u'\x0d\xd4\x8dJ\xda\x1f\xf7\xc8\xec\xfe\x18|J8=\xf9_\xd8\x8a\xcb\xe0\xb6\xba7D\n\xf1 \xbdW\xdf\x7f\xa3 \xbe\xfa\xfe\x9b \xc5Ss)5\x1b\x0fA\xdd=B\xe7\xa6\x8eyX\xeb\x05\x97\x16\xe26\x05\xf2\xa1\xbf\x1d?\x11\x19\x8a\xbe\xf4KK(\xce\xbf\xb1\x924\xc4\x9d\xe2\xc2\xb3\xa8_\x02U\xb4$tD\x1d\xcd3\xc9u\xac\x92\xa9\xc2&\x87\xe8_\x13l\x17\xde\x0eQE\xb7\x06\xc7\xbf\x1b\xf3l\xedn\xc3\xf6\xa6\xea\xae\xa5X\xda\xb1=\xbb\x16\xa6\xd6\x19\x88\xfb\xb5tP\xd4r\x93W\x9f.\x96\xf6\xc3E{S\xc4\xac \xd6)\x9a\xf3\x9e\xce\x15\xa9\xad\xe3\x19\xe1z\x8b\x1aPd\x042\xd5\xae\xec@\x0c\x9a\xe8xvU\xbd\xbf\x93zV\xd5k\x10\xf8\x19\x9d\xd9\xc1(F\xef\x19\xca\xe9\xc8u\x90\x8b\x84\\\x88\x88\xceb\x10\xd4\xcc\xb2\xaf\xfaA]\x95\x80\xb0\x0eWX\xe5\xa0\xb12\xaai\xaf\x8e\xb3a\x10\x98\x95\x0b\xe8\xaa>k\x7fD\x85\xc0\x9biC\x13$\x81\xbd\xd8\xe8L\xdd\xcb\xaeqwL\xbcm\xbb\xe86s\x97\x88}a\xca\xa3\xd0\x0e\xf1\xee\x8e\x05\x9d^\xb4#\x0cU\xd2\xe8rx7\xe0\xdd\x981J\x86\x14\xd7\x12\\\x1f\xeb\x15\x89Q\xbf\x92\x9c\x91rZ\x8d\xcctA1Vg\x03w>\xd6\xdc\xcb\x9am\xabn24\x81\x14\xc6\xf7\xf5\xda\x8f\x83Z\xd2\xba\xf3q\xa4u\xe7(\xeco\xaa\xceMo\x0d5)\xbfP\xebj\x0e\x89/\xa7\xfa\xb1c[V\xdf\xa2\x12j\xd4\xea\xa6\x85\x9a\xa7\xe9p\x8dD\x99\xa3\xed\x07\xd6\xf4p\xc3\xf6\xe2\xc2\x9c\xaa\x81j+T\x7f\xa5\xdc+R\xed\xc7F\xde\xa8\xd36\xc6\x04\xcb\xf2\xef\xba\xf7\xd5\x01\x8az\xd4\xf6\xa3\xb4\"\xda\x86\xcd\xd7\x83\xc4d\xc9\xe1\xc3\xdd\x8c?\xd1\xcf\xf0O!\xcc\xab@>I\xb3y\x16\xc2|K\xefI6\xff\x02\xc2\xc3\xf4\xe6\xd3y\xd9!a\x19\xa6\x05y\x1aJ\xf35\xccy\x9b?\x97\xd5\xbej\xdc\xc4a\"+R\xeb\x9a\xb0\xfb\xc0\xe2\x82\xc6\x9a\xd9\xc5\xf7~M$r\xae\xfb\x9a\x9c\xa4\xfa\xa1\xdd\xe9\x15\x13}\xa6\x17W\xb8b\xaa=k\x04\x88\x99\xc1J\xec\xd3\x96\x1d\x07e\xb0\x0d\xd3u\xcc\x95\xbd\x88\xf3\xbbm\x15\xff\x8e\xceF\x11\x84\xe8O\xf5 \x1c\xfe\\\x01\xdc\xeek\xde\x9av\x1d\xf7A\x897\x0d\x84*\xea\x0emS\x7f\x88:\x7f\xac)R\x9f\x18+}s:T\xcd\x93\x8eU;\xd1m\x91E\xae\xbd\xdb\x0e;\xd7;\xd6\x0c\xf5\x10\xae)\n)P\x9a\x80\xe9\x1b\x90\xd5\xe2\xd5~\xfaq\\{x\xc4>m\xe0\x87\xf3\xb6\x1b\xec\xe8\xea\xffew\x97U\xcf\x1e\xeb\x8e}d\x97}\x9d\xa6\xd8\xa9O\xd0\x9e\xe8\xdf\xf6u\xf3a<\xc9\xd9\xf6\xd4\xd5\xc3\xdd\x85\xe0\x8fm\xccsm\xcb\xc1\xd9\xb7h\xa3\xecP\xd5{1\xf7\xfauP\xaf\xeb.\xec\xd8P\xd5\xfb$mB}\xa2Ep+\xfd\xa2\xbaI\xf5+\xb2\x97\x0c~D\xbd\x1b\xc6\xcb\x01\xae\xfe\xb6\xee\x87\xb6\xab\xb7\xd5>)\xa6q\xc3\xaa\x9d\xcb\xd7$\xa1y\xcb\xba\xbev\x92\xafe\xf8\xe2\xb2\xea\xeb\xad\xf2;\xd6SzS\xa0\x0d\x08d\x11\xa9\xf4\x8e\xf9\x1f\x03G#\xc4\xc0\xb6\xab\xe3\xb1\x1c\xb9\xb0m\xff\x82\x0b\xa4\xa6?\xf5\xb0\xad\x8eR\xccJ\x93P\xff\xb9;\xed'\x8c\xc5-\xeb{\xe9\xeb\xd1\xb37#'\x8e`\xfe\xd3\xf6\xa6\xaa\x9b\xb3y\x14\xb3n\xb6\xfb\x93\xbcp|\xbf7^\x04\x01\x8a\xd4\x0f\xddi+\xfb\xa0\x01\x85d\xeb\xa87\xa1:JT\x8f\xbam\x1e\xf6N\xea\xe5\xc0\xcd\xb2\xa1\xab\x1ay\xf5'\x1c\xaa\xedM\xddX)*\xa2e\xea\x05#E\x12\xb0\x17\xa4\xdec\x19>\xe2\x8e}1yn\xef\xf5\xadr\xec\xb6 \x83\xdfT\xfd\xcdB\x86tR\x0bD\x1d\xc8p\xd1\xb3\xe1b\xbe\xbd\xf5\xe3\xed!\x04{)>u\x03\xfd\xe3O\x82j\xdd\x0c\xec\x9a\xb9 :\x10\xc9\x90\x01\xef4@l* <\x1d\xe3\xa2\x9dW\xdd\xd0\xb3\xe1[1+\xf3\xe5\x96\xa1\xa4\x0b\xb7\x0bQ\x0er\x9aT\xcdqRroIF\xe1[\xd0x\x8f\xff\xb3@sS\x86K\x01b\xf3\xbe_u\xedA\x88\x89\xeax\x84\xf64\x1cO\xc3\xf4\xb7i\x0f\x18\x14D\xeaJ\xd1>\x8d\x92\xb2\x00\xad\xeax,@E\xf0\x8b\xca\x8f(@\x8e\xddr}l\xcb\n\x90\x1a\xd7o:^f\xe2\xe9(\xaa\xbfY\xaa\xad\x1b/T\x92\xbb\xca\xf2\x92\x8d\xc7\x8d\x8co\xc9] e\x92\xe13Br\x13\xcaf!\xf3\xbf\xfa\xcd\xfb\xa0l \x1f\xed.ik\xf8>\x8b\xff\xa1\x9b\xe0\xa9\xe9\xfc/\xb8d\xdb\x9b\xd1gP7\xf0\xfb\xb7\xaf\xbf\xdfX\xefO\xfb\xe1x\xbatR\xd1\x82\xc2=$\xda\xf9g\x17\xa7\x0e\x95\xed\x11\xe9\x1b\x9b%\x10\x91\xee\x1f\xde|\xf7\xb4c}{\xeat\x0d\xad\xb0\x03%\x06\xec\xfeN\x19%W\xb5\x9a\xbdA!\x87\xb8z\x89|z\xd6\xd5\xd5\xbe\xfe\x0bC/\xaa\x16c\x1d\xdam\xbb\x87\xcb\xd3\xd5\x15\xebt\x1a\x94J\x19\x91c\x91Hf\x1a\xc5\xac\x1a`\xcf\xaa~\xc0\xe9\xb5\x0d\x83\x07O\x1f\x08\xf7w\xb5\x1dX\xb7\x11\x16\xb8\x88q\xf4\xec\x9a\xdb\xd9z\xa5\x7fx\xf3\xdd\xc3\x1e\x8e\xd5p#\x1a@\xc9\x8d^\x15\xbc5N\xe6\xea\xb4\xdf\xdf\xc1O\xa7j\xcfge'\xe7L5!f\xe7Q\xc5\xb77N\xe0=o\xfe\xe9u\xdb^\xef\xd9F\xcc\xc5\xe5\xe9j\xa3\xc1\xec\xde?\x96\xbd\x17$\xfb\x9b\xf6\xb4\xdf\xc1%\xc33\xc5\xf9\xb3\xad\x9a\xb6\xe1\xd6\x85\x10\x04x\x8b\x8f\xd8\xe6zs\xc6\xa7P\xe8\x9f\x0f6\x0ft\xc4\xb8\xdar\xb3\x9f\xed\x1e\xe3\xb7\x97\x03\xbcj\xe0(<\xf2[v\x06\x03\xab\x0e=\x9c\xfa\x93\x008>\n\xac\xcfc\xbd\xe7\xbdS\x98\xa0\x97uSuwF=\xbb\xfd\x0c\xa2\xfc]0\xd7p\xc3\x90$XP\x17\xfbn\x85\x17bh\x15\\\x86\xd6\xcb\x07\xf6I,\xe5\xf3\xe6n\x03\xdf\xb6\x1f\xd9-\xeb$\xac\xc6\x0fo\xbes\xf7.\x7f\xa4k\x82\x93A\x93\xdd\xf9\xd3oo\xd8\x81\xc1\xfb\x9ba8\xbe?\x93\xff\xdf\xbf?\x93\xa93\xea\xd73\xc1e[\xc3V\xdd\xdfA\xcfp\x0e:\x1d\xa1\x12c\xf5\xb4\xc7\xba[\xa6\x82\xe3\x87\xea\xd8K\x96\xe1#\x108<*)P\xc8+\xa1\xc0\xf7P\xe1c\xbbj\xf7\xfb\xf6c\xff\xcc\xb3v\x7f\x0f\xaf\xae\xa6\x11\xf0%\x17XV;\xb6\x1b\x07\xa9\\|\xa7\x03\xdb!w}H\"\xcf\x1b\xf8\xf6\xdd\xbbs\xf8\xe6\xe5;}\x0b\xfc\x0fo\xbe\x93\x1b\xf4N\xb8\xb7p\xce\xfc\xd3\x9c\xc5\xdf\xdd\x1d\xd9\x9f\xff\xf4g\xf4e\x85\xea\xc1\xd7Z\xf1\x90<\xd7\xc4*\x1c\xbbvw\xda2\x91K\xd4u\xf3\xe4p\xfd\xfc=<\x9f\xcc\xa2^\xa4\xc5V|~d4o[m\xb9Lh\xdb\x0f\xa7\xe3\x98AyY\xf5l\x07-~C\x90O\xbc\x01\x1f\xbe\xe8\x97\xc8\x81\x1bn\xd8\xc1\xd8\x0b;\xb9\x19*=\x8c1+\xc8\xcex2\x1f\xd9)\xb1\xed;v\xd5v\xecL\x7f\xcciVC}Y\xef\xeb\xe1N\\I\xa0\xe3XBDu\xb7H\xc1\x85|\xdaFEp\xc5\x07b\xdfm\xe0\xd1\x0f=\xd3\xde\x01>+\x9c\xed\xb8\x9c\x91|W5\xd5\xb5o\xc4\x97\x1d\x13^\x0dMt\xf3\x18\xe7\x96\xef\xdb\x81=\x83\x81\xcb\xf1+\x95\xf4W\x89\xbe+y\xa3\xc0\xc0\xf6wfZp\xe3\x9d\xeaV\xe4C\xbb\x19\xc1\xf2\xd1\x8c\x05\x1d\xe3\xa7\x03SN\xeb1\x1df\xac\xbf\x9e\xf6\xd7%\xbb\xae\x9b\xc6g\xa9\x88\x1a\x19\xaf\xe0\xdaH~\xae\x8eu\xbf\xd9\xb6\x07\x9f\xc4|+v[\xaf\xdcL\xc3M\xd5\xcc%\x0b\xc6_\xdbl\xf0\xb3\xa7\xbe\x82G\x9c\xc4\x0f\xa2\xd3\xef\xdaG\x7f\xc7i<\xc6\x93\xf9\x03t\xfe\xea\x9f\x9b_G\xe6\xe6\xf7\xd5m\x95=9\xf0[\xa1[q\xea\x19\xb3P\xf7\x8f\xben\xdb\xcdv_\xf5}`\x12d\x97\xf8\x07r<\xc6Gx\xbb\x7fE\xff\xfa\xf4)g\xc9x\x9f\xdeV\x07\xc6U\x90\xe7\xb2w\xd7lP\xd7\xcc\xbcj\xfa\xa1j\xb6\xec\xd1\xe3\xd4\xce\xa24|}\xf7\xae\xeco\"+{~7\xdc\xb4\x8dgme\xbf\xben\xdbG\x9b\xcd\x06?D\xc6u}\xe4\xfd]\xf0\xbeX\xf1\xd4\x05\xe7\x1f\xbf\x923\xfa\xd5\xcb\xb7/\xde\xbc:\x7f\xf7\xfa\xcdc\xdcU(\x9b\x92{\xc4\xdf\x98l\xce;[\xff\x18\x99\xadoZ|\xa2\xc4L=\xfb-\xfc\xdd\xf1r\xf3u\xdb\xfe\xc7f\xb3\xc1\xf9\x89w\xf2\x8c+\x9a\xfc\xed\xaa\xb9;^n\xbeg\x1f\x03\xfd\xad\xaf\xc4\xdb\xff\xe3\xb7\xd0\xd4{/\x03y'\xd1\xc3\xd6\xfe\xf7g\x03\xf1|\xaez%\xc7\xb0\xf9\xa19T]\x7fS\xed\xdf\xb5rc\xe7v\xd9\xf9\xfb;\x01~\xb3\xfd0\x9e\x03\xda\xd8\x80\xcb\xbbIU\xd3'\x96\xacl\xbb\xd3)\xdb\x0e\xb5S\x8f\xe8<\x0f\x115\xec)\xb7\xc57\xe2\x07\xae\xca>\x84\xca8U\xf9\x89\xab\xc2)n\x0b\x82w\xdcF\xc6c\xac\xd9\xdfi\xbb\xd11\xf8G\xd5\x19\xaa\xab\x81Imn_!\x0e\x85\x87O\x1f\xbaM(\x83VwQZ\xb0L\xf1\xf7\x83\xab\xb6\xdd\\V\x9d\x18\xdc\xa7\xa7w\x9b\xbf<\x90\xb3%m-\xdc\xac\x14]y\xc0\xdf\xc5\x8e\xd7\xdf\xbf}\xfd=\xf2g\xbeb\xfc\xa7\xc9\xe3\xa1J4\xf8\xaeV\xaa\x91\xb4\xcaN\xfd\x08dw}\xdaWH\x15\xafKBf\xbaL\n\xcd\xd9Te\xa7v\xeb\x99\xd2\x94\x10?\x89\xa1`\xc8\x0c\x8a\xf7\xff\x87\x0f\xfc\xbd2\xe7G\x85\xcd\x9c\xc6\x8d\x16\x11\xcf<\xe6B\xb5\xfd\xc0e\xc4d\x96^\xd5{\x86Kk-O\xceY\xd7\xb7\x8dw\x83(_\x95\xa8\xfa\xba\x10k\xe0\xab\xc9\x9b^\x16.j\xf5\xee\xaf\xc9g\x05\x7f|\xbdx \xe6\xe6\xc13x\x80\xed\x0f{\xb8\x1b9\xa2\x07g>Zb,\xdfW\x07N\xef\x7f\xcb.\xff\xab\xf7e>\x96\xd9\xbb\xd4\x01\xbd\xbaR&\x90\xcd\x13r5\xeb\x1e>\xb2\xfd\xfe\xc9\x87\xa6\xfd(\xd3mnDr\xa8J\x94\x91\xfc<\xa7h\xb3\xe0\x99T\xb5g|9\x15\xd4\xaaf9\xa35\xd7\x88\x07C\xb0\x9d\xdb\xc8{\xb1!4\x1f\xde\xb4\xfb\x9d\x95\xc2#\xb6\xd3,G\x86\xff\xac\xd8\xd7\xa5'\x9a\x199\x17\x1e\x89\x8a\x1d5\x15\x8e\x03E\xfb\x08\xff\xfc\xa7??\xf60y.\x8f\xd8\x0d\xf9\xd9DL\x03'\xf7\xe5\xe6\xd7_\xfe\xba\x7f\xe0Yv\xf3_\xb2\x0c\x0e\xf7\x89/\x03D\xd0\x85u\xaa\x0e\xf8\xa3*y\xb3\\\xfaS\xb5\x9bz[\x04\xc9dA\x8aCP\xd7\xfc\xc8\x12\xc6/\xdc\x9f\xe6\xbd\xb73\\\xac\xfa\xa1y\x99\x0f<\x92\x8d>\x1d\xebj\xd4\x7f \xef\xabM6`\x82\xfbn\xfb\nW[\xf9\xdf\xb4\xea\xae\xc2\xafM\x15X\xbe\xf7Pb\xa4\xaa,\xfd\xc8\xcc\xc5\xa5q \x95\xf7\xe8\xe6Z\n\x1f\xa0\xf8\xedQ\xddl\xf7\x1b\xe8\xd9\xfe\xea\xc9\x94\x889[\x81)y\x15\xcb\xfb\xa4\xf7\x07\xe1\xd99\xe9).%/\x1f\x95\x7f\xac\xfb\xfe\xa4J\n\x83\xd1\xa9\xa9Fa>\x80Y*\x1d\xfe\x93\xf9\x0f+@f\xfe}`\xdd\xa1\xf7\xe7\xc3\xe9gX\x16\xdcr\x12\xf8\xa6'\xe2\x88*\x99\xd47=nz\xdf\xf4\xa4t\xc8\xe3\xfaZ\x9e\xfc\x87\x92k;'\x0dpz\x9c\x84\xc0\xe9I\x19Ij\x92\xe0\xf4\xf8\xd3\x05\xa7'\xa5'\x9e9]\x98Y\x88\xd2\x9ae\x1bN\x8f\x93w8=)CH\xc8E\xd4\xcfx^\x94\x85\xdf\x8a\xcd\xec\xbcY=\xabg\xdc\xb2\x1c\x7f\x94W\xe1\xdd\xcc@\x11\x86\x9b\xda\x95U\xf3#\xf9\xfa\xd4 5\xa6\xb3\xb6\xdd\xb41\xd2\x80\x97\x82C\xd9\x0d\x87\x86|\xe0F\\}\x98_\xe02=F\x15l+\x029{60\xdf\x80\xb7\xb3\xfa\xd7\xe9\xb1z\xbcuK\xef\x06\xbb\x88m*\xbf+$\x9f\xfde\xb6\xd3\x13\x9bU\x8cNB\xd1\x16Jo\x0c\xee\x84\x8bp\xa7'0~\x88\xe6\xd6a%\xba\xd3\x13\x11\x00@\x9c\"P\xcd,\xa8M\xf4\xd2\xc3\xead\xa7\x07\xaf\xf9\x9d\x9e\x82\x03K\xafu\xf4\x92rk \xe3\xb5\xc1\xd3\x13\xac\x12\x9e\x9e\xc2CO\xae\x98\xf4R\x1b\\\x98\x8dP5\xf1\xf4\xa0u\xc5\x06]Z\xd8\xcf'Y\x818!K\x8a\x91q\x81b\x16(\xebG \x9b\xb3\xfd\xd5\x05V\x02'\x9f\x0c\xdd\x1d\xa1\xeeX{\x0f{a[\xc0\x8em\xf7\x95\xc4/\x11\x97\x079\xc4\xd4[\x9a\x10\xe6\xb7\x0b\\E\xa1\x9f\xe9\xc0j\x9b\x8b\x9bv\xbf\xbb\xe8\xd8\xd5\xfc\xa2t\xf9\x10\x8e\xcd\x00L'2\x1d\x9c\xd4v\xd8\xdf\xc1\xb1\xed\xeb\xa1\xbee\xfc\x98\x14\xb1\x7fs6\xc6\x1eN\x96x?\xb4\xc7#\x86\x15y\x07\xec\xd3\xc0:\xae\n\xa9K~=\x83\xadw\x1e\x9b,\xffn\x12\xf9\x04k\x14\xfcS\xb2\xaf{\x91\xa04\x0d\xba\xde\xf5g\xc0\xaa\xed\x8d\x9bN'\xee\x983^E6\xbd=\x9b\xc6\xcf!V\xfd\xd1\xa8Pq\xaaV\xce`h\xaf\xa5\x9fd,\xe8\x93\xa6\xa7\xaaXS\x89}8\xc5\x87\x12\xcbC\x9b\xa9\xca\xb7^w\xc0>\xa9\xeb\xbd\xc4\x9e\x15\x1aO\xdd\xf4\x1bx\xab\x80\xbe,r:\xfdf\x9e!W\xf1]#\x05\xa0r\x91[d\xcfd>\x8fHCi\xbb\x8em\x07\xd8V\xfb\xedi\xaf}\xce\x16\xb1\xab\x137\xa0\xbe\x981\xd0\xb4\xe1z1\xfe\xf64p\xfe\xe8\xa4\n\xd1\xde\n\x13r\xb4\xa9\xe1\x8f7\xac\x91C\x81\xaa\xb3E\x9e\xe9Y\xb0[\xb1\x17\xedl&\xb1\xeb\x9e\xab,\xbbz,\xa9\xac\xcc\x82\xd0\x8f7mo\xb73\"\xea\xd9\x8d\x98\xcbPO\x99L\xa2\xb1i%e\xd7\xa7\xae\x8a\xcb\xa9dHf\xae\xb3\xaa\xd4\x1c\xbb\x15k\xfe7\xea\x06]U\xf9\xc9\x0f\xdfK6.\x01\xdb\x89\xd0\x8b`%\x85&&\xbbgS<\x9c\xf6C}\xdc\xd7\xb2\x136}\xf1\"\xce\xd9v\x15\xd5\x14\x00\x909\xcb\x82\x11\x8d)n\xe4\xf6\xe5\x13j\x80P(R\"\xd9y\x0c0*\x10\xab\xa1\xed\xe4\x00\x8eU'fN\x95q)9\xc4\xa5\xfa XP\x1a8G\xd6\xc9\xab\xc1\x85s\xb7y\xaf\x88\x1d\xda)G\xb5c\xe2F7\xbb\xe3\xfa\xc7G\xef\x9b\xf7\x1a]\x14\x9d.\x8cM\x17C\xa6\xf3Nf\n*\x1d\x05\x93\x0eA\xa4\xcb\xc4\xa3#\xa2\xd1\xa5a\xd1\x91\x90\xe8<\xa0nh\xf3\x9ew)\x08t\xf9\xf8s\xde\x8e\xce\xfe\x9a\x85<\x87!\xcd\x15\xc4\x99\xc3Q\xe6\xb20\xe60L\xb9\xd2\x88r!<9\x14M\xae\x1c\x96\\Q$\xb9\xf28rt\x149\x12\x86\x9c\xf2\xd2P\x10\xe4\xd4\xabQ\xfc8\x14=\x0eo\x9d\x8a\n\x16G\x8eK\xc0\x8d#\xa2\xc69\xc3(\x8d\x18W\x12/\x0eE\x8b+\x8b\x15W\x16).\x8f\x1fH(q\x14\x8c8\xf3\xe4\xc0\xf0\xe1\xa4\xad\x86\xa1\xc3\x85m\xa0\xc2\xc8p^\\8\x0c\x15\xce\xce\xb5-\x84 \xe75Z1<8*\x1a\x1c \x0b\x8e\x86\x04\x17\xc5\x81K@\x81\xc30\xe0\xbc\xe3\xb7f\xbb\x0c\xfe\xdb\x94\xc0\xb4\xfc\xd6_\x87#\xe7Dsp\xdf\xa6ZA_h\xd9\xdf1\xe3\x1fy\x88oCz\xd8\xc5\x8b\xf5\x16t\xc9X\xdd/\x84\xf3\xe6Gy\xa3w\x05u\x00-\xc7w\xb3\xeb}\xf5\xe3Cw\xf3b\xbb\xd1\xfb\xbf\x14\xd7-\x8e\xeaF\xef\x03:\x87\xe5\xf0\xdcl,#\xb6tNl\xe1\xac\xd8\xf5ni\xeb)\x99!+\xb95\x92#[6K\x96\x90'[I\x99\xb5\xd9\xb9\xb5\xa5\xb3k\xd7\xbb\xa5\xcd\x87\x96g[8\xd3v\xbd[z\xbd[z\xbd[z\xbd[:\x9e\x95KHE]\xef\x96\xa6L\x0e%S7>\x0b\xa4l\xdd\xe4|\xdd\xf5ni\x8cn4{7\x96\xbf\x1b\xcf\xe0]\xef\x96^\xef\x96\x9e=\xeb\xdd\xd2\xeb\xdd\xd2\xd6S4#\xf8>r\x82S\xb2\x82\x89y\xc1I\x99\xc1\xf4\xdc\xe0\xf5n\xe9%\x99\xc2es\x85\xd7\xbb\xa5CY\xc3\xb4\xbc\xe1\xf5n\xe9\x85y\xc4A\x13|\xbd[zN\xbdxn\xb1\x9b\x08\xbc\xb4?\x08\xcf\x96\xcc1\x06O\x961\xf8\xf3\x8c\x9d\x14\xc9B\x99\xc6\x8b\x83[\xeb\xdd\xd2\xc4\xdcc\x94\xdcz\xb7t\xd1\\\xe4\xf5n\xe9\xe9)\x9c\x9d\x9c\x90\x9f\xbc\xde-m<\x85\xf2\x95\x17\xcb\xe7x\xd6r|V1:y\x99\xcb\xc9\xb9\xcb\xc1\xf1C4\x7fy\xbd[:w`\xc52\x9a\xf3r\x9a\x89Y\xcd\xc5\x87\x9e\x9c\xdb\xec\xa56\xacwK\x8bg\xbd[\x1aR\xd2\xa3I\xc7f\xdaE\xca\x85\xd3\xa4c\x89\xd2\xeb\xdd\xd2\xc6\xcf!V-\x9d<]8}z\xbd[:!\x95\xfa\xbf\xdf\xdd\xd20\xe7\xee)\x19\xd9:9\xa7?\xaf\x97\xe3\xe8g\x85\xc6\x9e\xf7\xe1o\x08\x1a;\x90\xb8O\x03\xc4F\x08$\xd4\x0d\xd8\x97\xa0'\x97\x0c\xdc\xd4\xfd\xe0\xd9a\xfc'ko\x19wQ\x8b\x9d+\xd3\x81\xe5\x05\xf0\xca\x97\xb0h\x93\xc9\x8b\xe61nJ*\xd4U\x19\x92\x88\xc6 \xb9\xec\xb2\xea\xeb\xad\xbc\xa2^\xf4\xdf}/dj\x86\x0dMA\x15\xb7I\xa2\x16I\xf4\x1a\x8c\xeax\xbc\x1f\xd21\xc5\x19\xe0\x85.\x8d\x80mu\x94\xd7\xc1Ie_\xff\xb9\xe3\xda\x9e`\xebc\xd7nY\xdfK\x93^\xcc\x07BO\xc9d\xf1\xb3\xb8\xe5\xfb\x0c\x8b\x87\xd5\xcdv\x7f\x92\x01>.\xaa\xc6\x97\xb9\x15S\xf1\xf1\x9e\xb6\xb2/J\x91Q\xbd\xf0\xd66TS\x82\xf1C\xe4\xcaC\x19%b0tU\xd3\xcb\xf8\xdf\xa1\xda\xde\xd4\x8d\x93\x97(z\x81^x\x12X\n\xdf\x8dB$E\x16\xd7c\x8b\x97\xba\x8a\xe8\xb6\x98h|tr\x07\x1d;v{O\x1b\xe8\xa6\xeao2\x99\xdc\x93\xd9z\xac\xba\xe1\xa2g\xc3\x05&f\xf4\x13\xf12\xc5z\x0f\xf8\x91h\xfd,Z\xa8\x9b\x81]#\xb7d\xea'~\xa1Lh\xaa\x802]\x10\x9f\xb2q\xc1\xcf\xabn\xe8\xd9\xf0\xad\x989\x8ce\x84\xd5?\\\xe0]\"q$\xda\x05\xd5<'+\xf7\xb5d:\xbe\xfdg\xef\xf2?\x15n~\xd2P\x0b\x13\x9e\x8fK\x84\xb4\x85\xe2\x7f\x111\xca%M\xdb\xb3\xa5\xf7\xf8\xd3L\x10\xb9\xa3-\xedn\xb9\x86\x1a\xa5b\x16)\xf8\xea\xa8a\xd6\xa3X\x87\x8d\x7f\xe4\xd6SC~\x906P[\x0d\xf1\x95\x80\xf9\xe0\x8a\xd5XC\xa4\xce\x1a\x16t.\xe0\x1a]Rs\xed%\xa6\xef\x81\n\xd4]C\xb8\xf6\x1a\x16\x8cny\x0d6\x10\xeb\xb0aA\xaf\x02s^\xb2&\x1bBu\xd9 :\xe5\xad\xcd\x86\x05\xc3ZP\xa3\x0d\x84:m\x88w%\x96\xb5G\x99\xfd\x8c\xbam\x94\x9e]\xcd\x12\xaf\xdd\x86h\xfd6\xd0'\"\xbb\xda\xb0\\=7\xa4\xd6tC\xb0\xae\x1b\xe6#\xc8\xa9\xed\x86\xfc\xb3\x82R\xe7\x0d\xc4Y\x87\x8czo/\xc1K\x96^\xf3\x0d\xf1y\x01\xc2\xdc@\xa4\xfe\x1b\xe2\x0c\xad\x1f\xea\xf4\xc1\xa2Z\xf0 9Bm4\x10j\xc2\xe1~\x06[\xb0>\x1c\xb2k\xc4\x81^'\x0e\xf77\x1di5\xe3Ar\xf3D\xc3\x94\xbaq\x88\xd7\x8e\x03m\x12(R\x1d\x12&\xaaX-9\xf8\xea\xc9\x81VS\x0e\xf1\xf1S\xc6T\xb4\xbe\x1ch5\xe6@\xab3\x87\xb4Zs\x88OHL\xd7\xf1\x17YCF\xed\xb9\x87\x98\xa8G\x8f\xd6\x9fC\xac\x06\x1d\xc0\x9f\xc3,\x1fO-:\xc4\xe7+Z\x84\x15\x9b\xb2\x9c\xdat\x94`;\x9f\xf1\xd9[1\x96\xcf\xadSw\x08\xa2\x99\x8f\x8bk\xd7\x1dJ\xba\x96\xdd[\xbf\x0e\xa5k\xd8\xc1S\xc7\x0e\x85k\xd9ar\xaa \xf5\xec\xe0X\x01I5\xed\x0e-Q\xe3\xee\xabk\x87\x02\xb5\xed\x18c\xe0\xf5\xed\x90[\xe3\xeeP\xc3j\xde\x81R\xf7\x8e\xef\x96@i\xae\xb7(X\x95\x03\xdb_)zo\xce_\xe8\xbe\xd1\xca\x82\xcf\xb9\xd1\x91~\x83\x98\xb0U\x0cAg\x8dN\xfe\xa8\xa2\x0e\"oZ\xc4\x89\xb5u3\n\x16)\x83\xa7\x8d\x88\xaa\xf2\xb8\xf2\x1e\xb2@\xbd\x82\xd6\xea\xe4\xcctT\xe7\xb04#U\xd8\xc0\x92\xa6\xa6\xbc\xe0\xda\xdbTY\x85\xb5\x8e\xd5\xef\xf9OD\xdb\x0dg\x11\xd7\x1d\xd3J\xe1T\xe2>\xbd3\xef\x1ak\x86\xce1v\xb2\xfb\xe5Hx\xa3)\xa3\x97\xa0\xff$\x02\xd9\xb5\x90\xf0\xd3\x91dh>\xcey\xd21\xe3\xd7GG\xd6\xc1\xb1\xaa\xbb\xa7CW\xb7\x96\x17n*/\xbf\xa7\x91\xba\x0d\xe8\xf1M\xb3o\xd4\xb8\xebw\x86\x16\x8e\xac\xeb\xeb\xderc\xf1\x91_\xecX\xd3\x1e\x96p\xe9\xf4\xb5e\"\xf0?\x0b\x97,\x17\x92 ~Wh\x16\x16/\xd4\xcd\xc5\xccN'\xf6\xc1\xa7i \x14G\x0b\xf6\xa6\xaa\x9b'\x1f\xeb\x1d\x1b\xef\x8a\x9d\xab\xe7\xc3\x8dS@S\xcd,9i\xc4\xa9\x83{:\xdd\xc4W\xd6\xc4 \xc2+&0\xe5\xdb \x90 \xe7m\xbbO\x97\x8cm\xbb\xf7\xc9\xc5\xb6\xdd\xdb $\xfc\x0fus\xd5.\x92\x81M;\\\xc8S\xea\x02\x0b\x15y\x167\xe5\x0bd\xc6\x8d)\x89\xce7\x1f\x1d}\xb6\xdf\x18\xdb?\xfd@2\x85\xc7\x85\xee\x951>Lm\xcf\xbd\xde\xd2ls\xae\xf3\x07\xdcR!w\xd4\x14\xfa\xba\xdf\xf2E\xa7\x1d\xbd\x8d/\xd9\xf6\xe67\xbf~\xa2k\x10\xedJ\xc60)W\xa3\x1e\xf7\xf6E\xdfm\xefyDh[n\x80\xda:dd\xc9!JN\xd7d\xea\x19\x08\x0dn\xd7\x0f\x9fmpF[\xe1\xc1y\xd6\xaa\x1f4\xecQ|\x84\xe8\xe9*\x9fL+8\x0b@Az\x87\xdb&\x10\x87\x91O\xd4\xe2\x06\x82\x9fB>\x94E\x92\xcf\xacw`#\xe3\xc8\xbfi\x14\xdd\x90S\xcfb\xd4\xa1m?\xc0q_m\xd1J\x0d\x90\xfe\xf8\xe3\x9e\x89\x86C^\xbc\xc4I\x89y\xf2\x92&\xc6\xee\xa15/\xa7\xa6\xfe4\x85g\xa2l<'\xe8\x9b\x14\x15\x87\xb8\xb8\xac\xf6U\xb3\xcd\x9d\x14\xfaPg\xed\xa2\xb1\x11\xfd\xdb\xc7\x1b\x8f\xd7J>\xb6\xbc\x1a\xaan\xc0|\x98\xf2\x91\xb6)\x17\x11\x9fm\xa4S\x93Z\x1aM\x06\xbc!l\x9e\xf8|H.-\xb9\x81\xa4\x19m\x0e\xde7h\xd3a\x979\xec\xa8\x03N>J9~\xd5l;QS&]m\xa1\x9a\xf5\xba\x17\xb2\xd4\x17\xfeNt\xbc\xca'iD\xa4\x01\x05\x17\xfa\xad\xd7!+FFw\xc6\xca'\xc5%\x0bd\x8e4U\xc8\x97\xbc[\x86\xe7\xd1\xdaH\xf2\xfc\xf1\xe7\x13\x83\xa8\xa3\xbc\xad\x9a\x81+\xaf\xd5\xae\x1a*\x8c\xff\xac^i3\xb0\xeadp\xc2jP\xfd8'\x12\x1b\x969 ;[Y{{+\x81[ToO\xfb\xca0\x98\x10\xa0\x89\xa9;\xcd\xb50\x02\x10'\x96\x00\x95\xb1(*P\x06+0>kr\xdc\xe4\x0e9O\xec\xd6\xa3V\xf8U\x8a \xc0\xeb\"\x14)\xcbZ\x10\x0c\xbcj+\xab\xb6b>\xab\xb6\xb2j+\xab\xb6\x82=\xab\xb6\xf27\xaa\xad\x04\xe5Jp\x81\xe2\xe3q\xc6b: \xd9O\xa7\xfa\xb6\xda\xb3f\x90\xea\x83\xf32B\x90}\xda\xb2\xe3 \xd9\xb4F!\x8e&\xd4\x81Q:\xcd*Z\xd4\x16\x95\xe7\x97\x887!qQ\x80\xfeT\x0f\xc2\x99.R\xcf\xf6\xb5\x07Rit*\x9as\x1b\x9a\x19s\x98\xd4\xe9\x98\x8d\xdbf/\xa58\xd9\x9d\x1b\xb1\xa9Rf\xc1\x1a\xb3M\x0e\x19\xbf3\xf2\x15t{\x05\xdd\xfe\xa5\x82n\xdb\xa1u4\xa8\x10\x0b\\X\x1f)j\xc9\x81\xf5\x1f\xf4\x01\xf3\x95#\x04\xe4\xd2\x10\x82\x1a\xf2\x90z\xb6doD\x02 ^~\xb0\xe6\xd2\x1b%\xc0\xc3\x03x(`\xf2]g\xf4\xc4!\x12\xe9 jz\x06\xa2\xc5\xf7\x8bII\xb0\x01#\nRL5\x8a\x9f\xd0\xae\xadW\xe3V\x9e\xa1\x1aqC\x0e%\xe51\xee\x08f\x1dq\x9c\xe4\xc2\x80\xb9\x9dVc&\xda4\xa2\x90\x15F\xb0\xbf\n\x84rB\xd6\x96\xaa\xc7S\xaf\xec%\x06\x16W3w\xbe\xcc\xf9\x8em\x19Wo\xab!8\xb4BC\n\xf4yh\xa9}\x89\x99@D\x0e\x89eI\x960x\x12M\x1db\xcf\x97\xa5w.1i\xbc71\x01\xe16\xa68;#G\xdc\xcc\x8e\xb1\xae?\nX1\x11\xfb%\xe8gE\x93\x8b\x1c\x7f\xab_\xc7CF\xc1\xe7M\xe4\x90\xee\xf7\xd2\xc7\xda\xd7\xcd\xf5\x9e\x99\xfeU\xa3Y\xe9L\x9d\x08r\x893~b$Q6|>\xb8Lz\xd2v;\xd6\xb1\x9dp\xe2\xca.\xe2\xdd3\xef\x0d\x99\x19\x11!\xfd\x05\x19\x91\"H\xcf\xc6\x18\xd3j\xbfr\xf5'\xb2\xfeb8Y?SJ\xc6\xd4b\xa1\xa3;\xa2G\xc9'E\x86\x16\xd1\xa9\xe4\x13\xd1\xac\xe4\x93\xd2\xb7\"Z\x96|\xca\x14\x88[\xf5\xdf\xe6t\x88M*\x7fT\xc7\x8e\xe3g\x8cI/c\xbb\x8f(\x1cSv\x9d\xcaJ\x97\x87\xdb\x0d\xdb\x0b\xe7O\xd5@\xb5\x15\xe2\xdf\x1d\xf0+\xaeP\xb9~\x83\xf6c#\x1dGmc\xac\xa5\x82\xe7\x14\x00\xb5\xed\xb6\xae\xc6\xc4j1\xabF\x86\xb2K\xef\x8aSr\xdb\xf1,\x85\xe7\xe0_\xbc\x19\x9c4F\xf9\x04\xd7T\xfaX\x13?\x8b\xad\xde\x0b\x99\xf8\xa8\xfdeb\xa1\xa6\xdc\xf4)\x1fRL4_\xb7\x83\\6w\xe6\xbe\x7f\xfd\xee\xe53\x01p\xa4\x9c\xc1\x12)\xa8\x16\xc7\xd7\xabFk\xc6#\x84\xa8Jw\xc4!`\xa4pu\x1b\x19\xab\xcf9\xbf\xfet\xaa;\xc9\x14\xd7\xedu+\xd0J\xa8>%\xfc0\xb0=J_\xf9\xbcI\x16\xa5\xc9}\xf6\x05\xc61\xc9^$\xed92i\xad\x8e\xa3\xd5qd\xfe\xfd\x97\xe68R\x1d\xb5\xf5\xad\x90\xe6\xe3\xd5\xbcL\x02O1\n\x86\xeaE\xd5\xbc\x92\xd5\xad\xf1\x0c\x98\xebX\xa4M\x11\xbe8\x83\xe6\xa6q\x96|\xe15\x19\xd3\x95\x183z\xb1\x0b2\xc2Wcx\x8f=\xff\xa17x/\xc2\x08\x9ey\xb1\xe3k\xf9\xb5\x17\x80\x07\xe2\xc3\x17^,\xb9\xea\xc2\x7f\xa5\xc5\xa2\xcb,\x04y\x84X\xf0\x1a\x8b!\xef\x02\x8b\x85WW\xa0\x80B\xf1K+\x16_W\xb1\xe8\xa2\nn\x9cb3\x16\xbf\xa2b\xc9\xe5\x14>\xc8\xf8\xe8\xb5\x14K/\xa4\xe0R\x1c!\x17\xbc\x8ab\xc9%\x14\xe1\xcb&\n\\3A\xba`\"\xed\"\x89\xcc+$\x96^\x1e\x01h~\x8b//\xa8\xe8\x85\x11\xe5\xaf\x8a(zI\x04\xedz\x88e\x17Cx&8t%D\xfae\x10\xd3\xa5\x0f\xd8\x1e\xf7\\\x031P/\x80Xz\xf5\x83\xbc\xe2\x01!\x88_\xfa\x90q\xdd\x83\xe7\xa2\x87\xe0\x11\x1f\xbc\xdc!~\xfe\x97\xbb\xd0!t\x95C\xb8\x1f\xcb\xaeo\xd0\x92tF,tqC\xa1+\x1b2.k\xc0w\x12v\x94g\\\xd0\xc0\xdb\x9bQ\x1b\xd0\xab\x19r/e\x88\xde(\x10\xb8\x88\x81t\x05\x03\x8e\x06\x9ev\xed\x02N\xc3\xc1\xe1\xcd\xbed\x81:\x19\x94\x8b\x15\xc2\xe3&]\xa6\x90x\x8d\x02\x06\xed\x1e\xba:\xa1\xcc\xa5 y\xd7%x\xd70\xe3\x8a\x84\xe8\xe5\x08\xe1k\x11b\x17\"x'3\xe5\x12\x04\xca\xf5\x07\xc8\xc5\x07\x99W\x1e\x10/;H\xbb\xe6\x80t\xc1\x81\xe7N\x00\xb4y\xcf\xbb\x94\x8b\x0c\xf2\xaf0\xf0vt\xf6\xd7E\x17\x16@\xe0r\x82\x82\xd7\x12\xe0\x17\x12,\xbd\x8a\xc0{\xed@\xc6\x85\x03\xa8\xe1\x15\xbaV\x00\xbdP\xa0\xdcU\x02\xcb/\x11@.\x0cXtU@\xf0Z\x00\xfa\x85\x00\xa4\xab\x00\x94\x97\x86r \x80z5\n\xff\x8fb\xe2\xe3\xadS\x81\xd7\xe3`\xff 0\xffD\x80\x7fg\x18\x19\xa0\xfe(\x80\x7f\x06t\xbf\xe3KBA\xfb\x97\xc1\xf5\xfb\xa0\xf9\xcb\x82\xf2\xe7\xf1\x03 \x88\x9f\x02\xc1o\x9e\x1c\x18\xec\xbe\xb4\xd50\xc0\xfd\xb0\x0d\xb4\x18d\x1fG\x88\xf2\xc2\xebc\xc0\xfav\xac\xbb\x10\xa4\xbe\xd7h\xc5`\xf4\xa9\x00\xfa$\xe8|\x1ah~\x14.?\x01(\x9f\x84b2\xd15f\xbb\x0c,\xfe\x94\xcc\x81\xe5;\xd0z\xe2p\xe4\x9c\xe8\x143\xf1\xc0\xdf\x9b\x91\x13\x1f-o\xd5\x82\xbfc\xc6?\xac\xb0\x8d\xf9w\x12\xd8\xfd\x90\x1ev\xf1B\xdb\x07]2V\xf7\x0b\xc1\xd9\xfb\x81\xec\xe9]A\x1d@K`\xebGxz\x84\x9e\x0f\xb0\xde\x0bUO\xef\xffRx\xfa80=\xbd\x0f\xe8\x1c\x96\x83\xa1\xf7\x00\xd0{\xa1\xe7\xe9\x1dO\x86\x9b\x9f\xb2N\xb1tqo\xc3Dp3g\x1e\xe7\xcd\xe99$\x00\xca\x0bg\xf6\x8c\xdc\xfc\xd0\xf4B\xc9/\x82\xf0\x0b\xe7\x87S\x07\x9a \x16oU\xc3\x87a\xe2}\x00\xf1VO\x97C\xc3/\x90\xacq \xf8\xf8\xb6[\n\xfe\x0e\x97\x98\xff:\x11\xf6\xdd;f\x88\xd6\xe3\xfb\x81\xbe\x83\xdb\x19H\x93\x02\x8b \xdd\x05:\xb7\x87Z\x08\xb3;\x0c\xe3^h8\xc5@\xdbm\x90\xbf4\xb8v\x12P{\xc1\x01\xa7\xc1\xb2\x87\x90\xd1\xacqS\x01\xd9\x83P\xec\xc1a\xc6kg\xacIX\x82\xae\x8e\xa1\xa8G\xf1\xd3\x17\xaa\xc19h\xe9\xe2\xaf3zfq\xfe\xdc\xce\x8d\"\xa4\x93+A\xa2'\x17=]\xae_\x88\x81\xee\xa9\xfa\x08\xd7{\x98U9\xf9\x15r(\x87.\xc8\x18\xcc\xc14w\xc1\xb6=h\xe6~6\xccE0\x87YR\xccb\xac\xf2\x11\x9b\xdc \x86\xa3\x94\x17\xc4'w\x91\xc9\xcba\x92\x9b\xc6\xb6\xd9B\x06\x0e\xb9\xc4\x1d7h\xa1\x08\xe4\x97\x99\xd8\xe33a\x8f\xa0\x8eg\xe1\x8d#\xf8\xe2Qdq\xb5y\xf0\xe4\xd1X\xad\xd0\xc4\xe2\xe9 \xaaH\x9dQz\x8d\xd0$x>o\x89\x90\xbfj& \xc2f\x86]\x91J\x9eh\x15\x0f\xb5?\x85\xaaw~\x01\xf0\\\x84zi\x82\xca\x17\xab\xb7\x8c) \xfa)X7\xed\xad\x9c&\xd5N'\x8c9\x0c\x855\xb7>KUP\x93j\xa8 \xa3\xa0\xadK\xd9Jjr-u\x0e\x90\x0e\xcc\x07W\xa4\xa2:^SM\xe8V\xb4\xae\xbaheu\x82F=\xb6N\x1dAt\x00^\x8eZRc\xed!\x95\x02\x19\x15g\xf7r\x95\xd6\xd1Z\xebYw\x96U[\x87\xc7\x94[qm\x11\xbbt\xa1,\x97\x14`\xaf\xb5ikm\xda/\xaa6\x0d_?\xba\x02\x9eX\xaa\x86\x91Z\x02\x17\x90n\x00\x8c\x1b\xf4\x9e\xf5\xfep}\x1b]\xcdF\x04\xf4\xc2*7/\x9d\xff\x15\xads\x8bU\xba\x05\xd5\xef\x90\xf2=x\xeb\xdd\xa2'pl\x96\xa0|\xd5[\xac\xee\xadt\xe5[\xe1\xda\xb7H\xf5[v\xfd[\xd9\n8J\x0d\\F\x15\\\xd9:8\xc9\xad\x91J\xb8\xb2\xb5p\x84j\xb8\xe2\xf5p\x91\x8a\xb8e5q(\xa1`\x9d\\\x91J9b\xad\x1c\xfaeR\xfd\\v\x05]\xe9\x1a:\x7f\x15]\xe1:\xba\xfb\xa8\xa4+\\KG\xad\xa6+\\O\x17\xae\xa8+^S\xe7\xaf\xaa\x93\x82\x8bTW\xb7\xbc\xb2\x0e%&\xaa\xed<\xb5uY\xd5u\xde\xfa\xba\xa8J\x11\xac\xb1\xa3i\x1c\xe5\xea\xec\xc2\x95v\xf1\xde\x14\xad\xb6\x0b\xd7\xdb\x15\xab\xb8\xcb\xad\xb9s\xc8 \x8d\x06U\x1e\xca\xd6\xdd\xa9m\x84\x0c(\xb7\xf6\x8ePp\x16\xac\xbf#V\xe0y\x8bZ\x12\xab\xf0\xfct\x90\xec\xff\xecZ\xbc\x94\xc9\xa1\xd4\xe3\xc5g\x81T\x93\x97\\\x95\xe7)r\nV\xe6\x95\xaa\xcd\xcb\xad\xce\x0b\xaelF\x85\x1e\xa1F/V\xa5\x17\xaf\xd3\x0b.xJ\xad\x1e\xadZ\x0f\xad\xd7\xcb\xae\xd8#\xd7\xec\xa5V\xed\x11\xeb\xf6\xfc\x93\xe8ak\xff\xfb\x94\xfa\xbd\x12\x15|\xc1.;\x7f\xcf\xaa\xe3s\xa8!u}E+\xfb|\xb5}\x99\xd5}n\x97\xddj\xbf\xf2\xf5~\xe1\x8a?O\xcd_\xc9\xaa\xbf\xc2u\x7f\xf7Q\xf9\x97R\xfbG\xac\xfeK\xaa\xff\xa3W\x00zj\x00}U_\xf4\xba\xafx\x1d`R% \xb9\x16\x10\x1dP\xe9z\xc0\xb2\x15\x81\x9e\x9a\xc0\xd2U\x81\xa5\xeb\x02\xf3y\x84T\x1bH\xab\x0e\x9c\x1flX\x85\xa0\xb66\xb1\x1a\xc1\xb8\xf5V\xb8N0P)\x88\xd7\n\xcezX\xaaZ0h\x82c\x15\x83\xf4\x9aAb\xd5 \xb5n\x90P9\x08)\xb5\x83x\xf5 =\x0eT\xa6\x82\x10\"5\x84\xf4\xfe <[\xb2\x92\x10<\xb5\x84v/B\x1d4\xfe\x91WO\xb88\xb8\xe5\xad*\x8c:\xa2\xac\x81\x14\xaa,\x0c\xd5\x16\xa6u\xc8\xe3\xfaZ^a\x88\x92k;o\x8da\xa0\xca0m$K+\x0d)\xb5\x86i=\xf1\xcci\xb9\x8aCo\xcd!\xf8\xab\x0e\xd3\x86\x90\\y\x18\xab=\x0c6\x1fJ\xbf\x8a\xcdl\xe1\x1a\xc4\x84*\xc4p\x1d\"i\xc0\xbe\\K\xfa\xa03\xeb\x11\x93*\x12\xfd5\x89n^\xe8\xc2\xaa\xc4\xc5\xf29^\x9b\x18\x9fU\x8cN^}br\x85bp\xfc\x10\xcd~\x0e\xd5)F\x05\x00\x10\xa7\x08\x8aW+\x86\xeb\x15c\x15\x8bE\x07V\xacn1\xafr\x91X\xbbX|\xe8\xc9\x15\x8c^j\xb6mA\xaea\x8cT1F\x07\x1c\x93\xac@\x9c\x90%%\x8e\xb8@q\xcb\x1e \x85\x8fY\xba{N\xf9\xa3CL\xbd\xe5/\x80$\x94@&\xa5l\x13\x8eMLO\xf0'h\xf7e\x8b!c\xe5\x90\xc1\x82H\xc1b\x18\x0f\xc3\x07S\xef\xfdSR\xb68\xd2[\x1e\x19f\xd5\xd2%\x92\x85\x8b$}e\x92E\x0b%\xb1R\xc9\x92\xc5\x92\xe0-\x97,[0\xe9)\x99,^4\x89\x96M\x96/\x9c$\x94N\xc2\x9c\xbb\xa7dd#Qc\xbf\x17#\xfd\xe9\xc4:NjzG\x13YK\x07\xd6\xd2\x81_P\xe9\xc0\xbc\xa3\x9e\x0c}ri\xb0(\x04P\xb4b\x15\xc2\xe6\xdd\xc9r\xca\x1d\x06\xf6\xde\x13\x88\xe5\xe6\xa3\x0b5\xf3rx\xcap/\xd9\xf6\xe67\xbf~B\xad\xc6\x9d\xcag\xfbn\xbb\xa4#\x16c\xa0\xd4\\w\xbdu\xcf\xbfJ\x8a\xd7U\x00\x065\xf5\xbd\xdb\xd5]?\x14\xec\xaaA-\xd2\xd5\x1d\xeb\x07%\xba\x0cJ\xba\xe7\xf3\xfe:%\xc5\x98\xfe\x94[\xdf\x11)\x1a^\xa8\x91\xc6\xd4\xf4yq\xb0%\xdf\x9d\x12ak\x0e\xd1*a\xa4>8R\x19L\x18\xd8R\x0f\xd5\xbc4\xd8\x1c\x9b]\x1fl\x0e,@\xc6\x1eX\xa4X8\xc3x\n\x95\x06k\xff\x8f\xfe\xed#W\xbb\x82\xfd\xef\x87\xaa\x1b\xe6\xd6\x9f\xd47\xf8\x96)\xd8\xef\x89\xa8\xde\x7f\x93zel\xb9'F\xbcOje\x82\x0dq+\xc7\x1c\x9a\xcf\xf3\xe9V\x0d\x13\xb8*d\xae\xe4\xd6\x08\xff\x9c\xa6\xe6\x92*`\xa3\xde\xd7\xa1\x1703C\xfc`\x9e\xa4\xb3b_[\x8e\x18\xe5\xbecq\xafE\xc9-\xf4\xb5\xda\x9d\x97\xf8Z\xc4\xad\xd2^\xbc\xbbfG\xedl\x19m\xa1Vp\xac\xba\xa1\xe6\xaa{g\x95\xf4NM\x8dkg\xd5\xf3\x8a\xf8\xb9\xf5\xb5:#-\x87\xf7\x8c\xfc\xb8Ml\x1f-Aa\x11\xd3L\xd6Z\xbc\x07\x0e\xca\x918/\xda\x1e\xf7\xbc\xb3\xc4>;\xbc\xa7F\xb0w\xeeI1\x8f ,8\x10\x90\x03\xc0+\xfa\xe3\xbaK\x96l\x9f\xcbrL\x8a\xc7\xbb`\xed\xd4\\\x99m\x8b\x0cLZ\xe3r:\xb8\x8e3\xd9\x9c-\x95I\xf28\x81\xef1\xe9[N\xee\xa2\x12\xd7Z\xc1,\xe1j T\xaaXI\xae\x8b6\xbbq\xc1&\xc9\x84~\x8e\x93\x80\x98Z\x1c5\x83S\xc1d3E\xd8\x8c\x9a\xa3\x0c\x07U\xe1\xe8`\x08\xa0\xb1\xc5\x04\x1c\xc4\xf4[oo\xc3\x13\x9c%\xfdf\xb4\x10\xbd\xd6\xa7\xd5.\xecm\xael\x9c\x91\x0bh\xb3~]6\xca\x16~W\xcfry T\x99 \x94\x1e\xd2}Q\xe5d(\x844W\xff\xaag V\x83\xce\\g\x8d+\nq\xe5\xd4\x92\xc3\xe0\xdc\x9b^!\x9d7.PW\x04\xeb\xd1k=9\x88\xb3/MW\x14\xad\xfb\xd2 \x07K\xd6\x99\xb2\xe84\x19\x95\xf7\x9c[\xa2\x1d\"\x0b=v\x10\xf7\xda\xd1;\xe5l\xa5\xe5\x1e\xbc\x19!\x9fW\x0c\xe2\x9e<(\xd1\xfd\\\xaf\x1eD\xc6\x80\x02\x06b\x1e>\x08\x83\xc6\xa6\xa7\x0b\xc5a\x02\x03\xce\x01\x888\x08 :\xc5\xf2Y\xae\xf2\xa0\xe4\\K\xceh*\x8e\x11H\x1cpnf\xc52=)B\xca\x1d0\x01N02`\xca`Ru*\x94H\xc8\xca\x9c\x1e\xbf\xd7\x10\xca\x8ce\xa9\xc6\xe5gm\x19<\xf5{\x11\x81\x80?H\xe4J/\xf6`\x11}L>d\xadL\xb5L\xeby\xa4\xe3\x9e\xc5\xca\xd1\xd6P\x82\xb1\xa4\x968\x0f\x95\xd2\xdf\xe4\x83C\x0c.\xf4>:\x9fz\x15\xcf4/\xa4A\xc4\xf4G\xba\xc8\x82y\xdeH\x83\x90\x93;\xfaY\x02d!\x87B\x90`\x88(\xac\xe7\xf0\x92ci=\x87\x91g=\x87\xd7sx=\x87\xe5\xf39\xce\xe1\xb4\xb8{R\xac2\xc9\xcbb\x912<.\x86\xafE>\x05<.6=\xcb\xfb\"\x1f\xcb\x07C\xf1*Q\x87:\x1b\x99f\x08u\xf4\xcf\x9cJ\x19#\\\xe0SB\xc0_\xc9.\xa5\x80G\x08e$\x9a'\x88\xea\x02\x9a\xbc\x1c\x0bZw>\x8e\xb4\xfe\xf3\xa8m\x9f!\xafi\xd9\x0d\x07?c\xaeR\xa1;\x0b~\x9e\x04\xa4\xb4\xbb \x08w\x00dv?\xfb\x0e\x825\x8f\xe8\x97\x9cG\xb4\xf8\xee\x80\"\xc9D\x13e\x9fYo}>f\x9b\xe7\xde\x11\xa0\xacwI,\xfdB\x00\xfaA\xf9\x0b\xcb\x19Z\"\xba?K\xaaP\xb2\x88\xceH\x11\xb2v\xc0bQl\x88>\x83\x9c\xdb\xd1\x05\x1d\xcc\x10\xb9k2P\xa2\xf0\x8c'\x03\xfdk@\xe8,\x13\x95\x84\x04\xa1\xb1\xba\x82,;\xfc\x17\x18\xc4\x19\xce\x9a\xdb\x85\xd7\x15\xcc\xae'0\xa7\x18\xbf\xa8\xc0\x7fE\x01\xaa\x02\xe3\n\xf0\x80^H\xe0=\xac\xc3\x8aY\xc1\xeb\x07\xfc\x17\x0f\x94\xbbr\xa0\xd8e\x03\xdek\x06\x86\xe5\x17\x0c\x94\xbaZ |\xa9\xc0\xa2\xeb\x04\x16_$ \xc6;w\xd5x\xaf\x10X|y\x00\x8a9\xe0\xb96 \xe7\xc2\x00q9\xc0|4\x08\xa6\xe3\x92K\x02\xfc\x17\x02d^\x05@\xba\x04\x80\x0e\xf8\x9f\x01\xf5\x9f\x01\xf2\x8f\x08\x8c\x82P\xfeeA\xfc\x8b\xc1\xf7\xc7\x81\xfb\x8bA\xf6\xfb\xc0\xfas`\xfaQH\xfe\x81\x02\xc6\xbf\x14\x86\xdf\x0b\xb9\xbf\x10l\x1f\x81\xd9\xf7\x1e\x94\xb4\xea_\xe7\x04]\x08\xa7?A\xe7c\xf3\xfbE\xbc\xed<\xf0| \x96o\x90sa\xf3\x0b\x00\xe6\xe7A\xe5\xcf\xb8|~\x18f\xc2\xe3\xab\x896)\xe6\x00\xe1\x07Q\xde=\xe0\xf7Q\xd8{\x17\x01\x9a\x0eu\xef~\xfbWl\xac\x8b\x80\xed)\x83\x8d\x81\xd9\xfb\xc7\x16\x05\xb0O\x80\xae\x9f\xc3s\xfb\xe0\xea\xf3\x81\xea\x97C\xd4\xa3\xeb\xb2\x10\x96>\x08H\xef\x87\xa2\x0f\x81\xd0\xa3\x93E\x05\x9e\x8fA\xce\xcf\xc0\xe63`\xe6 \x00\xf3th\xf9(\xa8<\x82\xcd\xee4\x87\xbc\x13\x03\x8f\xcf\x83\x8dG;e\xfc%\x0b$~\x0e\n\x9f\x03\x07\x8f\xc0\xbfg\x01\xbf\xcf\x81\xdeKB\xbc\xfb\xc0\xdd\x1dX\xf72\x80\xee\xc5\xa0\xdc\xcb\x82\xb8\xd3\xe0\xdb\xa3\xc0\xed\xca\xd6\x8fA\xb6\xab\xd7\x82`\xed\x0e\xaa\xb9\xdb\x1a\x15v;\x0c\xcdN\x04e'\xc0\xb1[]. \xc1\x9e\x05\xbe\xee\x82\xad\x97\x83Y/\x07\xb0\xbe|u\xa3\xa0\xea18u-\xa5\xe7\x10\xea\xd2\x92\x98\x83\xa7\xfb5\xf6\x82\x80\xe9(T\xfa\x1c$\xdd\xeaI xt\xd4t\x9aC\xa2S\xc0\xd0\xa30\xe8q\x00\xf4 \xf49\x11\xf4|\x0ew\x8e\x8e\xcf\x9a\xc5|\x88\xf3)\xc1c\x0en\x1eo\xdd\xe2\xa69\xa1\xc9g\x9d\x06e>\xd2\xe9\xa7.Nm\xe2\x1d1\xfea\xb9\xca\xcd\xbfG\x81\xcb\x07\xba\xcb\x1b\x85)\xf7\x1a\xf2VW\x0b@\x93\xe3\xa0\xe4\xb4\xe6\x1dw\xc1r\x08r\x98\xe5j\x01\n>\x8e\xc2\x8e\xd3\xfa\xba\x04j<\x0c2Nkw!\x828\x86\x16\x8e\xe2\x84\xd3z\x91\x84\x0d>\x05\xfcJ\x85\xad-F\x99\x93\xd73\xb2\x00\xfd{~\xb2\xa0\xb8\xdfS{\xe5\xc2\xdd\x9e\x01\x0d\x89\xc8\xde\xd3\x00\x0crALo\x0c\xcd{\x1e\x88_\x80\xe3\x9d \xae\xc2\xa8\xdda\xf9\x90\x81\xd4-\x9c\xa43r4\x8cntl\x10,r\xc0\xd1\x9b\xbd[\x0d\xa2\x03\x87\xa2\xf8\xdb> f?\xe6vf\xd7\xd3\x11\xb6Q\xce\xd6O\x1a\xb6v\x14U\xbb\xc0\xe0\x921\xb4\x91 \x05\xd8\xf8\xe1\x14\xf4l/n\xb6wH \xe0\x16K\xe0\xb0\xe7\xd0\xd7A\xd0\xebD\x9d.\x07\xe2Z\xfc\xf5\x0bs\xa0SU\x84iL\x05a\xad?G\"K\x9f \\MHf\xf1\x82U\xcb\xae\x93\xd2\x91\x1d\xce\n'\x0fYC\xcc\x04\xa2\xf6\x9e\xe1\xe2o8\xfb\x94\x84\x9d\xce\x07\x9c\xd6\xe1_Ep\xca\x95\xc8\x05\x99\x9e\x01KgBJO\xd6\x9b\xa27\x81Ig\xc3H+\xd8[En\x02\x90\xbe,\x07\x1d=\x03\x8d. \x17\x1d\x01\x8aV)\\\xa7\xe3uW\xed\xd8\x98\xc2\xf5\x07\xb1\x07\x7f\x94Ar\xb9\xa5\x1c\xd5\xc2U)\xb8\x05\x16\x91.j\x93\x99\x898\xd5\xf1\xa8\xf6\xbcz\xeb\xd6l\xd6K)\xbc\x8b\xc7\x04-M\xcd\xd3\x9a\xb5\x07\xc7\x14]k\xf8c\x80\x97\xefD\xf9\xa9\n\xbd\xf7n3c\x10\x04\x95\xce\xbf\xf1\xcf\xf8\xf9\xbe*:\xd1\xfe\xb3\xe9-\x1b\xe4Id\x19\xcc\xba?2\x95K\xfc\xa4\x1d\x8d\"d/\xf9U\xbffy\x19g3\xdc\xb7W\xc3G\x91$\xdd\xf2\xd9\xde\xcb \xa2\x98\xc4j\x0f\x0f\xda\xe6\x89\"\xf2@\x9c\xca\xd5\x94\xcc,\xfa}\x12\xc30\xfe\xc2i\n\xcf-\xfc\x8e]\xd7\xcd\xef\xf6\xed\x18\xf80\xa2\x07\x8a\xa6H\xbf9\n~\x17 \xdb\xfc\x9f\xfb\xde\xac=\x10\xba\xb5I\x9e\xab\xa1\x83HwT~\xbcj\x1a\x82\x1e\x1a\xdfu7U\xb3\xe3K\x0f\xd7\xf5-k\xa6 \x13)A&E\xdd\x15\xf9\xc1(\xa9\xf5\xb4N\xc7 \x1b\xb4\xec\xd4\x0d\x9eA-\x81\xc1\x0drv\x0e\x85\xca-\x1aS\xb7\xa6\xbe\xd6=\xb4\xa7\xe1I{\xf5d'US\xd6X3\xf3\x8e\xebB\x96\x8e\xfa\xadN\xac\xb6]\xd0\xd5\xf6\x86\x8b\x15\x15\xe1\x19\xe9\x0bv`\x9f\xea\xd1N\xbf'\x13\xf3+v\xec\xd8\x96\x8b\xb6g\xb2\xcfR\xb2\xaaa\xf42\xc7HL\xe0n|sc\xbc\x89\xac\xc4\xbe\xbd\xae\xb7\xe6 \xc75\xe8\xd8\xa1\xbd\xd5\xdeY>\xdc\xb7_\xfd\xdf\x8d\xe3\xdd\xaf{\x15zQ\xb96\"\xd5\xe5l\xcc\xae\x1aw\xcap\xd3\xb5\x1fG\xad\xb7\x94G\xe1\x1d\xea\x1c\x98\x16\xf6\xa0\x12W\x8e\xac\xe3\xd4&\x8d\xb6n\xaeZ\x9a<\xb6\xa0\xf0E\xdc\x7fJ\x0f\x9b2s\xc6=\xd6\\\xb5\xcaR\xad\x9b\xed\xfe\xb4\x13\x07\xdf\x93\xedMU\x9b\x95\xcb\xfdi{#\xed\x81\xebz\x90\x1a\xb8\xaa\x11\x1c\xcf_.AO\xfb\x1dT\xa7\xa1=TC\xbd\x15\xf9}\xba\x9d\xb1fHK\x9d\x0bY\x00x\xd1\x0f\x96q\x94`\xd1\x0fk\xce\xed\x9as\xbb\xe6\xdc\xae9\xb7k\xce\xed\xf8\xac9\xb7k\xce\xed\x9as\xbb\xe6\xdc\xae9\xb7\x81o\xd7\x9c\xdb5\xe7v\xcd\xb9]sn\xd7\x9c\xdb5\xe7v\xcd\xb9]sn\xd7\x9c[E\x88\x94s\x8bk\xe2\xe7\xfb\xca\x8c\xae\xd4\x8d\xb4\"\xf8\xacT\x97\xedi\x80\n\x8e\xfb\xaai&\xef\xafXM\xe1\xd9\xae\x07\xe5\x07R\xb4\xda\xed\xf6\xd4\x05\"Z\xe2\xe2\xc7\xe722\xc0\xdbM\x06\x98/\xe5\xcd\xb5\xd1L.E4\x03\xf3\xee\xf2\x91\x8b4\x05\x1d\xce\x08L\xa4op\xba\x95\xd0]\x98\xc6g\x8a\xda\x9b\xf3\x17\x9a\x81\xe4\xc1\x12\x9d\xd6\xd3p\xd3v\xf5\x90~\x13L\x1c\xef\xc1\x1a\xf0C<\xe7\xe1\xa1lN\xba\xb2\xf1\x1e\xf9gB\xcd\x82\xfe 2\xd4\x17\xd2\xa5\xb0\x88\x83\x8ec\x88\xcf\x19\x98Xl\x9d/%\x9b\x18Y\x9e\xff\xb6({\xcd\x8e\x12\xc2r?wN\xc4pF\n\x8b\x1fB\xe9\x18\"\xa0qD\xc8\x8f%\xce\xa8U\xfb\xbeu\xe2\x89P \xa68#\xe7D\x18!?\xca8\xa3\xa6Vn\xdeH\xc9h#\xf8\"\x8e\x90\x14u\x04'\xf2\x08\x14\xc7\x14!\x89\xcc\xe1\xfb\x82\x91H\x08E#!)\" yQI@\xce2\xa0\xcc`\xe4\xc2\xac\xc5QJp\"\x95\x10\xea\x8e\x0f\x95./j9#\x96\x1b\xbat\xe4\x81\xf1\x87H0\x13|B\x1e\x82i\xbc\x03\x1a\xd8\x84\xd0LBt\x03@\xd9 '\x04\x03\x9dP4\xd8 %\x03\x9e\x10\nzB^\xe0\x13\n\x06?!\x1a\x00\x85\xa5AP\xc8 \x84b3vw\x14\xfc\xe2 \x86BN@\x14\xa1%\xe5\x91'(\n\x99\x81Q\x84\xdc\xe9\x08\x95\xe3\x0d\x19\xdb*\x1a \x85\xfc )\x94\x0f\x94B^\xb0\x14\xf2\x02\xa6\xf8\x16E;Y,\x8c\n\xc5C\xa9P2\x9c\n\xa4\x90*\x94\x0c\xabB \xb4\n\x99\xe1Ul\x8f#\x01W\xa0\x06]!;\xf0\x8a\x10t\x15jX\x1e\x8e\x05<$\x0b\xb1#\xde\x1b\x9a\x05\xd2\xf9\xbf0D\x8b\x89=\x1d\xb4U\xd1C\xf3\xb7p?\xf2\xc2\xb53b\"x\x8b\x84l\xa1L\xd8\x16J\x87n\x01 \xdfB~\x08wFmp\x02\xba\x90\x19\xd4\x85X\xac\x13\xfc\xc1]\xa0\x04x\x01\x8f\xda$\x05z\xfd4\x1c\x17yV\xd0\x17\x12&#\x16\xfc\x85\xe8\xb8\xa3A`H\x0b\x04\x03\x16\xa1\x0b\x04\x84\xa1HP\x18\xb2\x02\xc3\x10Z\xc3\x85\x01b\x88\x05\x89!\x18(\x86H\xb0\x18B\x0bK\x0d\x1a\x03!p\x0cn\xf0\x18\xf2\x02\xc8@\x0b\"CR \x19(\xc1d\xf0N\x1a\xca\xb2\xbewc\xc1e\xc8\x0e0C\xa8\xa3\xb3\xbf\x16\x0d6Cf\xc0yF\xca\x0d?C\xe9\x104\x14\x0eCC \x14\x0dX8\x1a\x8a\x85\xa4\xa1dX\x1a\x8a\x87\xa6\x81\x1c\x9e\x06J\x88\x1a\xe8aj \x86\xaa\x01\xdb\x1f\x80\x065!!\xb0\x19\x0e[\x03=t\x0d\xb4\xf05`\xc3(\x19\xc6\xfe\xff\xd9{\xff\xe7\xb8q#o\xf8\xf7\xfc\x15x\xf7}\xebl\xe7\xe4q\xbc\xc9\xdeU\xf4>\x9b:Y\x92\xbd\xba\xf8\x8b\xca\x92o\x93\xbaJ\x8d1\x1c\xcc\x08\xd1\x0c\xc1%@i&\xf7\xe4\x7f\x7f\nh\x80\x04I\x80\x00\xbf\xc8\xc9SE\xfc\xb2\xeb\x11\xd9\x04\x1a@\x03\xdd\xfd\xe9n4\xd6\x95\xdd\xa0\xd5rl\xa3I\x9d\xdbhR\x077\x1a\xbd\x1e\x82\x8en\x14\xe1\xecF\x01\x87\xb7\xcf\x85\x18\xe3\xa7\xb5^\xd3\xd4z\xfbika\x8d\xbc\xb7\xff\x12b\x1f\x97\xda\xee0,\x18;\xba6T\xdby\xd9\xa9\xe6\xc6\xc4\x95BkE\x97\x06i\xc7T\xf3\x89\x8d7\x85\xe6\x8e:\x856A\xec)4o\x04\xaa\xa3\x0f\xf5\xe4\x05\xf5yV\x86\xc32\x12^w\x02\xacM&\x06\x9d\xe6Uo,B\x86B\x10\xba\xe0^\x98\x9d\xbb\xc2~\xfdU\xfd\xfd_U\xfb\xa3\xdc\x18\xe6\xb7\xbea\xb9\x8a\xfe\x17\xed\xb197c\xbc\x11X\x90\xde\xfb\xa7r\xfc\x94\xd5#\x9c\x81l\x1eLI\xcd~\xa3\x97\x9d\x1b\x10\xf1\xdbg!\x86w\x8f(\x9e\xf1n:\xae (9\xbc\xc2\x9c,\xf0*\xa1%\x8f\xcf\xde\x9c_}\x00\xb1\xff\x9em\xa3\xd9\xb9\xe7\xdb%M\xd7\xe4\xd0\xe4\x1fM\x05\xd9\x92\xbc\xc5@{\xfb\xee\xcc\x87\x90\x9b\xed\xe4\x81\xa4\xe2\x89E\x9cz\xbc\xf6K\x87\x18\xc2B\xe4tU\xb4\x92\x10\xb9\xbb\x06\xad\xd5A\xfb\x05g-\xe4\xeej\xc8\x08\xd5J\x9d\xd8\xadC|\"\xbf\xdd2\xf8f\xd8U\xa7\xbe\xf0\xaaKU^\x97\xad\xd4\xc5\x12\x01\xdeoy\xa0\x17{'FS\xb3\xb4\xca\xb4u\xa8\xf6\x80\"\xa2\xbd\xd9\x9d\xf3\xf2Y\xb97\xa3\xa7e\x8d\x05\x8e\x1c{\xedR\xd1\x91\x93\x01\x0b\xac\xee\x81\xe9QQG9\x11E\x9e\x1a\x98\x92Q\xda\x94\x1b\x15\xe0h\xd5FGW\x02}\xf8rsk\x91\xab\xfb\xc5v$\xdd\x8a;\x94\xe5dC\x0fPkK\x15-\x943\xcbI\x86!S\x99\xfc*|\x0c2\xda\x10\x87{\xa7\xfc(\xaf\xdd\x85/ltV\x0d6\xc5\x85\xd4\x863\x96A.\x9d\x13\xb4*\x84\xea\x08\xc9\xd5\xfd\xc2\xdc\x80,bzS\xfd\xaa6\x9c\x04+|\x82\x00H`\xcd\x06\xf3\x81o\xeb\x17\xa9/\x9f\xdf\x9b\x85\x1a\xba\x854\xa6D\n\xc3\x1a\xed\x1d\xdb\xd6P\xd3\xe1\xc9\xd0\x84\xe7\xeb\xcd?\xc5\xf5\x06\xa1\xc6\x05\xb6\xfdf3+\xb5i\xe1\x9b\x91:\xa0\xab3Eiq\xbaP\xe8=9\xbe\xac\xee\x0b'\x08s\xce\x12\x8a\xab$X.\x00\x85Z3\xde\xabN\xa3\x0bp;P\x82\x9a\xd7`yk\xf2@vr\x0e\x14V\x01\x0b\x81\x93;\xdb\xa6i-\xe7\xfajj\xf8\x1c\x8c\xae\xf2\x96\xa6\xca\x84\nP^y\x1a\x9a\xbf\x9c\xdf\x91\xe4\xfe\xf6\xd0\xd0\x8a\xdfcA\xf2\x13$r\x9cr\xac\x9d\xa6{|D+\x82~)HN\xc9\x1a\x15\x92Kr\x7fq\xa27\x8a\xe7\xaa\xf4\x87I\xafJ\x16-#\xd9\xac\x9f\xbav\xb3-\xa9\xbe\xc1\xa6v\xc1\x0c;\x96yh\xa5N\n0\xec\x82\x17N .\x9c\x10Z\xd8\x01,t\xf9P\xa2a\x85\xd3\x81\nC\x90\xc2\x81\x80\xc2\xc1pB5\xee6\xca\xaf\x03L8\x18J\xe8\xcc\xad\xe2\xcd\xae2\x0eF\x88\x8a\xacE\xcf\x07\"\x9c\x1aB8\x1a@89|p\x14xp\x04t\xd0)V&\x85 N\x0d\x12\x9c\x10\"\x18\x03\x10\x9c\x10\x1e\xe8\x07\x07N\n\x0dt\x03\x03E\x1c,pbP\xa0\x0b\x128\x18\x10\xe8\xbcwv\x1c\xc5\x1dP\xc0\xd0)=\x15\x0c\xd0\x0f\x02\xec\xea\xc18\x00`+_\x8b+c\xcbD\xe0\xbf\x89\xa1\x7f\xed\x03wJ\xd8\x9fp\x80\xfe\xc6A\xfe\x02\x187/\xdc/\x02\xec\xe7\xc2\xce\xf4\x01\xfa\xb9\xde\xff\xbb{\xec\x03!~q\x83\x0f\xc3\xfb\xbaF\x1a\x01\xed\xeb\x05\xeck\x03\x9d\xfc\xa0\xbe) }c\x00}\x9e\xd9\x1a\x0c\xe6\x0b@\xf9\xba\x80|\xdd0>\x0f\xf3\xe2!|a\x00_\x0b\xbe7\n\xbc\x17\x05\xdd\xeb\x03\xdc\x8b\x80\xed9\xb1p\x8e\xcf:\x9f\x0b\xc3\xf5\xc6\x82\xf5<\xdd\xab\xfd61Lo\x0cH\xcf \xcb\x9b\x18\x947-$\xcf\x0f\xc8s\xc0\xf1\xa6\x02\xe3M\x08\xc5\x9b\x1a\x88\x17\x0b\xc3\x8b\x00\xe1EC\xf0\xe2\x00x\x0e\xf8\x9d\xeb\xab\xb1P\xab\x10\xf4.\x1ax\x17\x05\xbbkt~Z\xc8\xdd(\xc0\x9d\x0bb7%\xc0nJx\xdd\x98\xf9\x8e\x80\xd6\x85\x81u\x95\x84\xf7{\xabkv\xd0\xb6\x17\xc6\xd8O\xabG\xd4\xa4\xcb}\x07^\xa7\xb3\xf4Xw\x1cu\x94X\xa9\xf5\x02\xfcs\xc6IX\xa4Z\xb4\x946j\xa5v\xb9\x8d\xd3\x1d^?\x0b.\x10\xed\xfa\x135\xa7\x8bC\x15t9Z\xc4\x13\x18\x8a\x1d\xae\x14\xafb\xdaG\x8d\xed\xc2WL\xe6@\x87\x16r\xa3\xfb:3!\xccc4\xc0\xc3\xbb\xb8n\x0f\xbd\xf1k#2 i\xb8\xdam#\xe3\x91Y\xb4\x87;\xcc\xef\xfaxB%!\xcb\x85#\xc5\xf4\xdd\xa2\xe4\xd9\x9a\xf0\x0c'!\\\x9d\xee\x93\x80\xffW\xd23\xfd\x8c\xf0\xd2\xbb\x84\x8c\x9a\xda\x13\xa3N\xe8Gs\xfc\xb8\xec\xe9L\xae\xed\x1d\xc9OV\x88\xac\x10\x16n\xd5\xd8O\x9fq\xb4c\xdb-\xc9\xd1s\xb9\xb6\x80\xe8\x8b\x05\xfa\xa0\xdcf\x16\x95\x94\xa5/\xd7D\x90|OS\xca\x05M,?\xf7\x13\x8b\x1b\x07\x18\xd0\xa6\xd3\x9c3h\xfe\xcc&5^\xda\x84\x1c\xd2\xab\xe9K\xb7\x1f\xff6nk\xe1\xf0\xb4[\x7f\xf1{\x9f\xfd^w\xfbu\xd7 \xa0y\x86\x02\xads@\xd0\xba\x87\x05\xcd\xeb\x93\x87\x16\x18!\xb4\x0e\xff<\xb4\x08*!\x03\xa9iC\x0f\xa1\xee\xce\xfb`\x89\xd0B\xa7@\xbd\x85G2\xf8\x04\xeb\\c\xae\xfe\x8f>\xe0\xec\x16\x1a\xd8p\x17}\x9b\x87\x16\xba\xb1\xf5\xc7\x96\x83\x1e\x05:7\x16\xf0X#f\xae\xf8\x1a\xf6\x18\xfaz\xac\xe8\x97[d\xddK\xeaG\x94\x9f\xa9u\xeb\xcc\x89\x021_\xf4\x7f\xa77\n\xb1\xe3\xa4>\xab\x01\xfcr\xf2KA\xb80\xae\xa6\xea\xc21\x10i\x18\xfda\x03(TI\xf4\xda\x9f\x15-\xcc{TB@1\x17\xbf\x19\x0f\xd8\x98\x8b\xdf\x8c\x00i\xcc\xc5o\xfa\x013F\xc22&\x06e\x8c\x80dL\x0d\xc8\x98\x0c\x8e1-\x18c2(F\x18\x881\x19\x0cc.~3\x17\xbf\x19\x03\xa6\x98\x8b\xdf\x8c\x03M\xc4\xd4\x83\x99\x8b\xdfXm.~c\xda\\\xfc\xa6l#\xe0\x0f\x11\xe0\x87x\xe8C\x10\xf80\x17\xbf\x99\x18\xe60)\xc8aJ\x88\x83\x0f\xe00\x17\xbf\x99\x8b\xdf\xd4\x1e\x0b\xc3\x18\xe6\xe27\xc3\xc1\x0b\xc3g7\x08\\\x08\xc1\x16\x8c\x94\x16tO\xb8\xc0\xfb\xac\x8f9\xb4n\xa5\xa5\x95!)\xcb\xc9\x03e\x05\x07W\xea\x02\xbd\x95z\xb0\xf2\xa7r\xf4\x07\xf4\xfa\x04Q\xf1\x0c\xd8\xfe\xa8~UKdMkA}lc\xb3I\xedd\xd3\xc7\xf2\xaa\x0bZ\xc9\x03\x13\xe5\x9dZ\x7f\xf1=\xe6\xe2\\\xe5\xc4\xb7?n\xd1\xfb\xf1G\xf4\xfa\xa4&Ve\x8f\xe4\x9d\x9aS\xae\xbed\x8e\x9b9\x10u\x0eD\x9d\x03Q\x9f\"\x10\xb5t\"il \x10(cN\xe1\xde\x96\x10\xceA\x94;\xbc\x0cH[\x99N\x1a\xa2\xa2\xec\x8d\xa9\xa3\x81\xc4\x1d\xe3\xc4GZ\x7f_\x0bo\xde\xf0u\xaaW\xed\x0f\x18*e\xfd\x13\x9c\n\xb2@?\xdf\x91\x9c`\x8e\xde\xb3m\x03\xda\x05}9i\x99\x9c\xac\xb9\xdc\x13\x81\xd7X\xe0\x93\x92\xba\xba,\xd6;jw\xb2~as\xc2\xc0\xbe_\xbc~}\"\xff\xe7w\x8b\x1f\xd4\x7f\x7fPo\xb8\xe7\xa5B\xdb\x84\x9c{9\xd9\x91\x07\x9c\n$\x0e\x90\xf3@\xae$\xd3\x7f33\xb7\x95m[\xe0-\xb7\x1c\xa5p\xdb5\x97e\x95\x1f\x80\xc3\xb1\xbb& [\x13;\x13S\x92\x1f3\xc1\x16*\x9f\x02\xa7\xdb\x12\x1at\xce\xf6\x19N\xc4\x1b*\xce\xa4\xb0\x03\xa1\xd0\x12fm\x01F\x0e\"\xc7\xcb\x15\x15|\xc9\x05\xcb\xdb^\xb1\x18\xe4\x0c\xd9\xd5d\xa9Sj\xb5\xecmn`Kc\x1c\x90\xbf\xa2i\x05\x94wl\x04\xf8\x1f\xa2\x0c\xa1R\\\xac\xa8\x00A_1\x9c\xaa.?|\xba\xb8\\~\xf9xs}y~\xf5\xf6\xea\xf2\xc2\xf1\xd7\x8b\xab\xcf\x97\xe7\xb7\x8e?\xdc^\xfe\xe9\xf6\xcb\xd9{\xef+\xcb\xb3/\x7fr\xfc\xf1\xfd\xe5\xbb\xb3\xf3?/\xcf>\\}\xfc\xb4T7\xd7\xf63\x97W\xd7\xcb\xd7\xbf\x7f\xad\x97\x81\xd27O;:\xecA\xecinT7_8\xa3\x14\xcf\xd0^\xfe\x05,\xc8\x82#y\xad\xe6$)r*\x8eh[\xe0\\\xca'R\xe1F\xd5\xc4I\xfeY\xae\xba\x84\xa5\x9c\xaeI.\xb7\xa6T\xdd(\x17\xf9Q-\xbd\xdd\x0e\xc1M]~L}\xc9\xb8\xcc\xf4\x8d\xeb\\M!\" \xe3G.\xc8~\x81\xce\xb2\x0cv\xbc\xaa\xf9\xa4\xfcf\xb0(\x8de\xb4$j\x16[IZ\xbf\x0c\xf0\x06\xd5\xb9\x1d\xbd'\xf6\xbb\xfa\xa2n\xbdc\xc1\"\xe5\x1a-r\xbc\x85\xcf\xb1\x8c\xa4\x92K{\xf9\xbd\xeb\xcf\x08o\xa5H\x16\xa60\xd5\x0e\x8a\xb7\xad\xe5\x90S\xf2\x88\x12\\\xa6QQ\xb7~\xca+\xb6+vic\xb1\x16\xc54\xaf\xfa\x808\xd3\xf6d\xba\xd9\x10\xb9\xc45!,G\xa3\\@\x18x\xcc\x85\\\xff\xb5\x14\x8cz6\xaa\xd3\xd7\xb3\x9e=\xab\xc6\xce\xc0\x98\xa2\"\xadf\xab\\\x1arG\x9a\xfai\xf0\x89\x9c\xfcU\xcd\xca\xc2\xf5MX\xf2\xa7\xad_j\xb9\x1e\xebk\xcf\x14\xaf\x01\x96]\xb0DK\x01M\xfe\x81\xe4 \xf7\xd5\"-\xe11p\x84\x02\xc8\xb8\xd5\x0b\xbd%O\xdb?\xc1\x05mS\xa8\x93\xa9\xd6\x0fX7r\xa4\xea\x8bG;\xb9\xd7]\xb1\xc7\xe9K)\xa7\x94\xa7I\x90\x83(\xf0\xaee\x94\x90*_f\x14\x0c\xedh\xab?\xa3\xe9\xa9\xbe7YTN\xa2\xebD\xfe\xe17~nK\x01\xd3\xe6\xb8\xfc5\x86\xeb\x96\x94\xb8`\xc9\x05\xcdI\"\xce\x8a\xc3\x02\x9dq\xc4\xb2\x8c\xe9C\xa1I\xfe\x04V_\xb5\x8c\xd7\x8c(\xc1]\xae\x92_\n\xaay,\xaf\xa1\xe6\xeb\xec\x81\xe4\xda\xff\xa5\xff\xf4\x0c}\x85\xff[\xca[\xe9\xd7N6h|zH\x94\x9ev\xfd\x11\x96\xc0\n'\xf7\x8f8_\xf3\x86+\xd4\xcd\x9d\xb3=M\x19\\5\xac\x0dQ\x96\xb3\xd3\xe2\x0c\x96\x95sEjI~\xda\xfe\xc9\x9a#\xe5;*\x19*\xcf\xbd\xcb\xabk\xa4\x9e1\xdc\xb3\xe5\xa6\xe1\xd3\xc5\x1f\x17\xe83\xd9\x9c\"\xe5B<}\xf5\x8a\xd0\x8c/TiFR\xec\x17,\xdf\xbe\xba\xbc\xba\xbe\x91?\xbf\x94\xa7\x89~\xef\xdc\xf8PO\x1c\x9d\xa2\\\x8br\x90\xeb\x92cu\x81\xf6\x80s\x8aSa\xcc\x06\xab\xa2t\x9d\x96w\x90\xd2\xc1-\xbbh\x99L\x17\xe8V^ \xd4V\xba\xbc\xba\x96}:AGV(7t%E3\xcc-\xdb\xce\xd7\xdb\xc39K7t\xfb\x15v\xaa2\xfc8.<\xfa\xfd\xaf\xa6\xb7?A\\\xc4W\xc3N\xf95@\x9c\xc8NI\x9ddM\x12\xbaV\xf2\x1c\xec\xaa\xfa\xb4\xd0\x84\xf4+\xcd)\xeeZ\xa3?,\xbe\xaf]O\xcaT|\x85\xb8\xeb\x95\x81\xce\xda\x16}\xad\x08\xff_.\x17\xc4\xb3\xff\xf7\x95\x05\xc6x\xd5\xee\xd2\x8d\xfa\x82\xec\xd4\xb3\xf2e\xbf\xf2e\xf7\xa7\xca\xf9vW\x17\xa4\xbc\x84\x9ak\x11\xb06\x1b]\xb1\xdd\"\x97\x16\xfb\x15\xa9Yy\xe5\xde\x82\xechl\xa3.\xcb\xea\xb2\xa2\xf0\x1c{,t\xcd\xc5&Ys\x12\xbca\xeb\xe33^7\x9ek\x85G\xcd7\x94F\xd5TM8K\x96\xd3\xbdr\x0d+Z\xa5n\xc1R\xd2\xc2\xded\xf8\xc8\x9bv\xa5\x0d)\xb7\xfb\x86X\xb6 ?\x0f\xdf\x922\x03\xed\x86\xc0\xf1\xba\xc5\x1c\xed\xe8\x9e\x8a\x92s\xb6\xbej\xf5]w\xb2V\xaa\xb5\x81\x04\n\x8dG\x8d\xa2\xec:\xd0&\x00 \xaa\xe1\x1e\x13\xbcK m\x9cM\xddF\xad\xc8\x05\xae\xa0K\xe4\x01\xef\n,\x8c\x96\xb9bk\x88;Y3\x05\"\xa5\xdb\x14\xcb=c\x91\x81#\x1dL\x156y\xe3>\xaf\x96\x0b\xe5\xbak\x88pA\xf7\xcav\xf2@\xe5Y\xb6\x97\xbd\xab\xe9\xf3N\x8b\x94\xdb\x12\x05\x1a\x8b\x0b\x00\xd1\xb6\x809\xed_\x1d\xd6\xaf.\xdb\xd7\x9a\xa4l\xef\xb2Cu\xda\xaf\\\xbd\x0d\xbe\x16\xb2\\\x9d3\x9aZ\xea\xba`\xf7$\xd5f)\xe8&MA\xa4\xca\xa9\xc4\xa9\xee\x84+\x87\xc8\xc7O\xb7\x97\x10\xb4\xa2\x15\xc12\x01!N\xd1Uj\xca\xa5\x96\x92\xda6\x9a\xb7\x88\x81\xbf\xab\xfd\x91r\x19\xf1j\xff\xaf\x8eh\xcb\xb6L\xa9\x98u\x0f\x9f\x8e~\xd1\xfdi\xa5\xb7L\x982\xaf\x00\xdc S}\xbem\x88\xbdF\xb7\x98/\xd5\xa6\xec \x93q\xe4Q\xf7\x15u-?\xd1\xcc \xba\xc5Z\x8d\xd1k_)\xe6\xf2\x00\xaa\xc4B{\xd1iKO\x93u+\x85\xfb\x92S\xc1\x8a\x12\x81\x0b%tUUy[\x96d\xf8H\xf2\xc8\xf1v\xaf/\xbaAE\xca\x898\x01QS\x97^&F\x91\xca\x0b\x80\x14y\x19>\x1a\xe9\xb1\x91\xda&\xba\xda4\xe8\x95\xa4\xaa\x0c+8I\xd4|\xaa\xd3!\xc3\xc7\xea\xf5&\x0b\x94\x9c\x97C+\xcb\xf4b$\x0e\xa6?\xcfAF\x16Z\xd7R\xbf\xaek\x05\x88\x9b\xcc6\xe7\xf8\x8b\xd6\x978\x11Z\x0e\x96o\xabk\xf1\xafS&~\xad\xd1n \x8f\xe5!\xa7.t\x9br=7i\x99\xd3\xcdq&\xd8\xebT\xa9\xe8\xb1\xb3\xe6[\x8atS\xb1X\x9e\x07\xc0\xae\xe7\x84j\xa0Zc\x0eu\x97\xc0\xb8\xedD=\x03\x01\xc5\x82\x17\x06in\x02\x1f\xd4\x17T\xbf\xcd\xe2n\xcd\x18S3*g\xd3\x8e\x8d\xa8\xf5\xee\x19X+Vx\x87\xd3\x84\xc85\xd36\xa8\xe3LJ\xe3\x9cbA\xac\x8f\x1aM\x05\x91\x83\xca\xfb\x0f\x83Q\xa5\x92\xd5\xdf\x9a\xbd\x91\x8f\x1a\x13BI\x85k\x05H\xa9\x02\x1bLM\x19XA\xb3\x98k\xc0-\xcd\xcc\xae7P\\\xf9\xaa\x85;\xb4M\xe7\x8a\x11JRQ)\x90\x95\xfad\x11S\xf2z\xd1\xf0\xba\xdb\x99`\xe96eRb\xd2\x8d=T\xbaN\x9f s\x11\x174\xe3'\x88.\xc8\xc2\xfc\x01\xaf\xeb\xa6\xec\xda=\xe3\xeb-\xcd.H\xc2r,X\xfeUv\x8b\n\x8e2\xc6\x85\x0eD\x8e02\x97\xba\xdc|t\xd7\xda|t\xfb\x8fn% \xa9\x9dJP\xd0,\xeb+\xff\xe0\x9d\x92\xfaz\x9d\x13^z\x86\xcd\xc1\xa2O\xa5R\xfe\xea\xaf\xba\x8d\xac\xe6Lh\xa0B\xcd\x15_\xcbM\xd0\x8f\xca\xf0/cpW:\xbf\xc1\xdf7\xe4|[g{\x933\xbcN0\x17\xd1&\xee7\x9f?\x9d]\x9c\x9f\xdd\xdc\xfa\xed\xdc\x8dG\xde\xbc\xfft\xfeG\xdf\x1fo\xfe\xfc\xf1\xdc\xf7\xb7\xb3\xf2\x8f\xa5\xbd:\xf0u7?k\x83l\x98HV\xe6o\x95\x9dD\xfe|{\xb8!\xf9\x03MH\xc5!UE\x08\x08\x96\xb5RP\x98+\xa7\xe8o$g\xdaw\xab\xb0\x19\xf2;\xe6\xcc\xf6RPL;E\x17\x97\xd7\x9f/\xcf\xcfn%\x9d\x82\x13\x17\xf7\xcc\xa1f\xac'.B\xc6\x9c\xa2O\x1e\x1d.\xa5\xed\x16J\xe5}\xf8\xcd\xe2w\xff\xbe8 \x96*C\xd6\xc2\xdb1\xf9\xc9\xd6<\xa8~XR\xe4P\xf1\xd5\xb2\x12\x9a8N(\xe7\x8f\x1e1\x15\xe6\xc6(\x19\x83\x91\xf6\xffZy\xdf\xcb|\xe0,\xdd\x1d\xfd\x9d:s\xf6\xealH\xb7\xf47 m;Gt\xaf\x10!\x82\xc0\xe7;v\xd0\xed\xe13\\M\xa2M2\xe2\xb0T\xe6\xe7\xbeN<\xd4\\\xe9\x86\x90\x11B9~t]\xf1\xf6\x8e\x18\xfd\xc6\xb7\xec\xbd\x8e\xe2\xf6\xbb\xf31{\xcf;\x1f\xb0\xf6\xbd\xf3\xefg\xb5\x07b\xf7?\xea<\xf1\xa6\x91\x03\x16A\xab\xae\x18r\x88\x054\x89hpR\x19.\x1e\xd0\xe4\"\xc2\xd9\xc1\xa7\x11\x13\xa8\xb7\xa8pvnzq\x81\xfc\"#x*\x95\x82\xa3\xdc\xbe\xfa\x9f\xc2\xaem\xd7Z\x87\xe5k\x9a\x9e\xb3\x86\x94OP\xf5Lh\"\x0ee\xba\xa0\xa6\x00\x89\xbah7\x13\xa2\xa0\x18\xeb\x87\xd7\xf8\xe1I\x8e\xa2\x9eh$HA\xd1f\x87\xaeD)\xc8\x9d,\xa5\x93xL\xd2\x14\xd4J\x9cR\x91t%\xe2\xf0s\xa66\x14g\x12\x15\xf5T-\x91\n\x8a\xe6MWB\x15\xe4J\xaa\x12O\xfa\x7f7U\x92\xd8(\xfb\xee\x04+\xa8+\xdc\x1e\xb5\x12\xad\xa0o\xa4\xf8y\x93\xaf\xa0\xcey\x87\xe6\x9f}\xe4N\xc4\x82B\x1a\xa5;!\x0b\xea`\x06\xb4\x8el&\x1d\x8c\x81\x16\xced\xa2Hx\xfe\x16\x18\x10\xb4P\xb2\x16\x14\x1c \xb4\xce\xa4-(f\xb0\xd0\xc2C\x86\x16H\xe0\x82\xe2F\x0f-\x98\xc8\x05\xc5S\x0b\xd9\x10\xec6$\xa9K'\xc1z\xd6\xb1\xceGa q\x19P\xa0\xc5\x8dl\xca$/(\x98\xe8\x05\x0dO\xf6\xe2\xa1\xe6e@\xcc\xf0'L\x05#[g:\x18\xe4K \x83\":;ij\x18\xe4K\x0f\x83\x82=\x89=\xc0\x84/M\x0c\n\x9d]\xf5t1(\xfa\xac\x1d\x9a6\x06yR\xc7t~9\xf2\xae\xd23\x8d\x0cr\xa6\x92A\x93w$\x90VF}\xf0\xe0\xea\x80\xe30\xf0\x8b\x7f\xe1\xa9\x11\x14\x90\xcc\xa1\x9d0i\xca\x19\x14\xa8\x154e\xea\x194e\xfa\x19\xd4]1hT\x1a\x1a4a*\x1a\x14LG\x83\x86\xa6\xa4Ac\xd2\xd2\xb88v\xcc\x8c\xc9\xd9]=hDz\x1a\x07\xad\x129\x87\x9c\x15\x84\xc6\xa5\xa9q\x90S@t\xe1\xac\"4u\xba\x1a4>e\x0d\x9a>m\x0d\x1a\x97\xba\x06\x8dK_\xe3\xde\xa2\xceNN\x96\xd4\x06M\x9e\xd8\x06M\x99\xdc\x06E%\xb8AS&\xb9A\x9d\xd5\x86\xc6%\xbbq\xedqg\xc5!\x105\xc1\x148ht\x1a\x1c\x07AW\xdd\xa1\xc1\xc9q\x90_\x15\xeb<\xe2;\xea\x0f\xc5\x9c\xff\x03\x13\xe6\xb8\xc4\x9e\xb7\nQ\xa8\x1f\xe3\x92\xe74\x88\xa9T:\xceZD\x93$\xd1AS'\xd2A\x8ed:h|B\x9d\x065\xe1\xa8J4.\xc5\x0e\ne\x9eA]\xb5\x89\"\xd2\xed _\xc1\x90\x1eiw\xfc4Z \x0bF\xa5\xe0A=\x98\x11J\xc5\x83\x82\xe3\x0e\xa6\xe4A\xfd\xd2\xf2 w\x91\x98\x8e\xaaES\xa4\xe8A\xa3\xd2\xf4\xa0\xae9\x1c\x98\xae\x07\x85R\xf6\xa0@\x05\xa3P\x0d\xa3\x8e\x89\x8dM\xe1\x83\"\xd2\xf8 W-\xa3Q\xe9|P\\J\x1f\xd4+\xad\x0f\x8aI\xed\x83\xbcLs.Y\xdf\xb3\xa1T?ht\xba\x1f\xd4\xd5\xd1\xc6\xaf\x93\xa6\xfeA#\xd3\xff4H\xb9j\x1eM\x9c\x10\x08M\x9c\x14\x08uV>r\xd6>\x9a*A\x10\x9a2I\x10\x9a\xdd^\x0e{\xf3\xfc\xd3\x87\x0fW\xb7\x83\xde\xfdt\xfd\xe9\xa6\xcc\xdb\xefk\xb5\xb4\xfb\xfd\xc7\x1b\x16c\xf5\xa6\x12\xf2\xae?\xf0\xed\xad\x86\xa6@t\x8b\xdc\xd2\xda\xaaj\xe1\x03\xfd\xe1\xaaU+\x8f3\xa70j4\xef\xdc\x9c\xa2\xffb\xa2\xe5\xc7\x8b\xa4\x00|>E\xd7\xea\xf0\xc4\xbbn2>M\xac\xdez,\xe8\x98[=\xb4\x9c\x15\xa9C\xb1\xaa\xb78U\x02\x9a\xf5\xe9\xdf~\xdf\xf9\xac_\xad\xab\xb7H\xd9\x81z\xc8\x0f\x14\xd4j\xaa\xd6\x83\xed(t\xc27[\x94\xaaXo=\xb8\x81zrD\xb6\x80RYo}\xd6\x85i\xf1K\xd3\xb4\xd8\x89B\xfd'\x0b\xf5\x9d\xb0HE\xd5\xf9\x8a[mm>\xeaDu9\x1e\x8c\x1fh\xc8\xc6Ro\xa5&\xe7\xbf\xef\xd7\xdb\x80\x9e\x04Y]u\"\x80\xf1\x81\xd6g\x1d\xc6\xcb\xa7\xd2\x07\x1c\xf7\xf9i9\xd0\xff\x18\x95\xa7U\xd5g\xe3\x14*9\xa9\x13\xa1vg\xb1@Z&\xd1\x84f\x18\xfc;\x96rh\xe0\x0eA\x12\x16\x0c\xaa\xe6(q7r\x10$u[\xc8\xeb\xed\x9f\x88\xcfe\x9fk\xe8yQ\xcf\xa2\xb0@\x9f\xd2]\x98\xe1\x80\x7f\x04S5\x01\x03V\x98\xc5\x15j\xa7\xeb\xa9\xb2\x9b\xcb\xff\x1b\x17s\xc5\xe4\xcee\x1d$&\x97}sY\x879\xdcZ\xf7\x8ee\x1d$\"\x17\x80k\x82\xa3\xe6\xaf\x0f\xd3\x14\xc3j\xd5\xae\xb2\x9cH\xbd\x0c\xd5>\xab~\xd9\xe4\x8eT\xb6v\xab\xacy\xb2\xd7\xdd\xa3\xb4.\xdb\xbeG\x94z\xb8\x9a\xd5\xc3\xf87g\xf5\xb0j\xb3z8\xab\x87]-Rv\xa0\x1e\xf2\x03\xf5\xd0:z\xb0\x1d\xf5;3g\xf50\xea\x9d\xd8\x89B\xfd'\x0b\xf5\x9d\xb0Y=l\xb5\x01= \xb2zV\x0f\xfb\x1f\xa3\xb3zh\xb5\xa7\xe6\xf3\xac\x1e~S&\xcf\xeaa\x88i\xff\xcc\xea\xa1\xbaS,\x1f\x98\xa0\xe9v\x99\xb1\xc7\xee\x8bN\xe4\x02\x8c\xbbGT\x07\xc9\xb7\xfdn\xd49\xde\xf3\x8b\xa1\xf3;v\xb9\\\x18\x17\xb2\\3\x97\xda\x81\\9\xdc\x8dK\x19P\x19%\x03\xbd\xe4L`\xc4#\x9346;\x9a\xa8\x90\x07\x15\xee\xeb^\x13;\xa9\xed,!o\xfdR\x053\xde\x7f+G\xb6\xd5\xc3e\x07t\x16Z\xc47Q\xe4wQ\xc9\xa8\xc8\xab~\xe4\xb7Q\x8f\xef#\x0f\xe2\xd9\xddzt\x00\xf5\xec\x04\xea\xc2L\xbb[,\x92\xda\xddz\x8e\x05\x0d\x18\x0f\xea\xc6b\xbb[\xa4\x00h6#\x10\xbc\xb8mw\xf3\xa2\xb9\xdd\xed[v.Vt5[\x1cJ<\x9a\x9c\x1bM\x1ekv2-\x801w\xb7X\xe4y4A\x17B=\x8cGw\xb7X\x94\xba\xbb\xf9\xb1\xeb\xee\xd6{\xe1\xc5\x99\xcfL\xebM>\xf6\xcc\xb7\x9b\x1b)\xefn#:\x14\xba\x12\xd4[\x00k\xefn\xdfHv\xf61\xf2\xa0aLC\xfdT\x96\xaa\x0d\xb0\xd2\x996\x80{h \x07\x11\xeai\xbd3\xad\x8f\xf5\xa4\xd9\xfa\xef\x0c\xd3\xfaN8\x1a>\xe9h\xe8\xc4\x0f\xb2\xf6\x99\xd6\xc3\xeagZ8\xc2\xc1\xdd\x06\xf0e\x00?\xe2c$\xdc\xad#r\xc2\xdd\xbe\xc5\xb0\x82q\x0d\xee\xf6-\xba\xe6\x8e\xd6\xeen\xb1\x81\x1e\xd1\x04}\xf1t\xed\x16\x17&\xe2n\xdf\x82\x9d\xa1@\x13w\xfb\x16=\xf3\x87\xaa\xb8\xdb\xb7\xe8SD\xb0\x8b\xbb}\x8b\xce\x05\xc2e\xdc\xed[t,.\xe0\xc6\xdd\xc2a8\xee\xf6\xf4\xe3\x1a\xa2\x9dE\xc6\xfbD\xd1j\xc7\x04\xb9\x1b\x9c\x9c1|\xeby-\xeb{\x1d\xfb'TH\xa2\xfc\xfc\xa6\x0d\xb9\x11\xc6\xfb\xd5L\x9b5\x91\x1e{\x10\xda\xac\x89x[\xff-aZ\xdf G\xc3'\x1d\x0d\x9d\xf8o\xad\x89T\xe9\xb1b9\x03\x1c\xe9.dXo\xc1\xb2\x86\xf56h\x01\x0f[\xbeF2-7;\xec\xacf\xe9o\x83\x17F\x1c\x06\xb1\xde^\"U2yyu\xb1|\xfb\xfe\xec]$>\xaf\xd9\x9aT\xce\xde\xdc\\~\x0c\xc3\x0b\xeb\xadI$\x12\xa3XoM\"\x1f\xafBP\xc5z\xab\xcas\x8ffK\x7f\xd5\x0b\x1al\xb2\xf5\xdb\x1d\xde\"\x9a\xae\x95\x9f\x8d\xeb\xacKz\x03\xf62&C\xab\xfc\xdf\x14\\\xb2\xa1\x17\xaa\xd6\x1b\xcfSo\x83\xd7\xf3`1\x17\xe18m\xb7\xd1\xdd\xecgI\x85\x16\x8d\xa9\xa8\xb7\xd1}\xed\xc5\xd2!\x97wh\x90\x99\xf9\x86n\x01\x93+\xef\x1e\xc6\x8f\xa0\xd0\x06&\x02\xbb\x07I\x9a\"\xac\xe9\x86\xaf\xf3\xc3\xfa\x0e\xd4\x9b\x19U\xb5K[\xe7\xa1\x8bW=\x1eU\x0d\xc6}\x95\x10\x16\x9b`\xf4\xca\xd2\xd1=\x92j\xffq\x12T z\x9cq}N\xb6\xaa\xaf\xe1g\xfb\x9e\xe4=N\xf1\x1e\xa3\x83\xd6g\x8c\xd0z\xcb\xb8A\x9bq\xc0F\xcc\x8a\xd52\xa2\xaer\xd5z3\x0b\x0db\x98ld\xfd\xfd\x0f?\xbc\xfe}\x9fW\x062\x0e\x0dc\x1eR\xa94\x93\xec\xfb\x1f\xfe\xed\xfe\xf5?s7\x87\xdc\x1a\xae\x8b\xd5\x8e&\x7f$\xc7\x9a\xb1\xe4\x9e\x1c\xb9U\"\xaf\xdf\x99_p\x02 v\xff\xab\xdc\xf8\x91o\xc7\x82\xb4\xeam\x10\x93\x87(l\xa5\x8d,\xcb)\xcb\xa9\xe8\xbd\x9f\x9e\xb4\x8f\xa6w1\x9d\xea\xb9\xbd\xfbn\xec\x9erp\x00sz\xef\x8f\x9e\x12\xb0'\x83\xd0\x00&\xa1a\xb2o\x00\xb3\xd0\x10\x86\xa1\xa1R\xef\xdbu\xb0\xbf\xbc\x9b\\\xda\x0d\x95uC$\xdd\x00\xc6\xf6\x93 h\x8c\x8c{\xf2\xde\xf5\xc3\xf1\x96o\xf5\xebV\\\x97\xe4\x9d\x9c\xa5\xcb\xb0\xa1=\xf2\xebq_]\x1d\xff\x86SAS\xb2\x8c\xbbQ\xc7\xdd\xa4#n\xd0\xd1\xc20^\x04F\x9f\x10\x91\x1c\x84\xd6C\x86D\x9f\x07\xd1\x83G\xbd\x18\x80\xfaJ\xff^\x8c@\xfd\x98\x81\xfa\xcb\xfa\xa7\xedN\x1f\xc9\x1e+\xd3Um\xc1\x101\xd4S\x9a\xf7\x13G\xbd\x98\x16'\x14\xa0\x0d\x90\xdaO\xd0\x97~\x12:\xb2\x03\x91\x9f\x8e1\xdc\xf5\xfcb\xc8(\x17k\x1fz/O\x89s\x15op\xa6\xc2\x0dBQ\x0f`\xe3\xf1\xd2\xb3\xe2c\xb0\x10d\x9fA\x91\x07\x86\xf6\x94\xef\x08^#\x0c1\x0e\x08b\x1cl\x03\x91\x05\xf1\xaa3\xca+\xe5\xfc\x12m\xf2\xfc\xce\x1e'1\xd0\x8bH\x0c\xdfr\xfc\xce\x89\x9d\x9dmN\xec\\k]\xce\xc6\xae+\xd4S\xe5\xd8\x8cr\xffE0\xaf\xdb\xa5\xd7\xd7y\xd7\xd3M\xd7\xd3!\x17\xefz\x1b\xe4d\xab\xcd\x7f\xd0;\x16\xe7\xef\x8a\xf6lELU\xc4*\x0f\x1co=>\xd2}\xac\x05\xbdJ=\xbe\xe4\x19N\xed\xdc\x8cu\xf3\xf8\x9d7\xdd\xc7p\xb4C\xc6\xe3li\x90s\xba^2\xbc\xd5E\xc4*\xa6\xd5zU=`U\"\xb3~4!\xbe\xa6\xfc\x9bU\xfe\xcb%K\xdc\x12D!`[*\x8dw\xba\xbc\x93\xd4UL\xad\xfa\x8a)\xfe%\xff\xd7\x94\x1f\xe3\x9c\xac\xe5?\xae\xf1\x96|\x86\xe2K\x0b\xf8{\x83\xc8/\x05\xc9!\x92Z\x92\x93\x9c h\xcf\xb8@d\xb3\xa1\x89\xbc\xb4\xec\x8e\x0bt%\xac\x8a\xbf\x998\xb6\x83\xadE\x99W:eh\xcfr\xc5\xc1bW/\xf8\xe88\xee\x82Lq\x84\x8f\xf9T\x12E^qC\xfdOZ\xecW$\x87BZ\xaa+\x96\x12\xd2\xea\xbf\xcd(U2l\xa9\x884C\xa3\xe4\xcaT5\xb2\xa8\xe0\xba\xf2\x15\xe5\xa8Ha-\xad\x11\x93|x\xa4Z\xbdq\xef\x07O\x8d\xa4>\x85\x07\x1b$L/M\x0dB\xf3ogY\xc7\x1f\x16\xdf\xfbJ7UU\x10a\x92ZK\xbe\xbd\xdc\x85\x95\x93c|)&\xc3\x03S?\xd4Q\xdeL\x1c\x96y\xad\x93\xce\x8e\xba;\x8b\xa8\n\xb8\x0dJ)K_\xae\x89 \xf9\x9e\xa6\x94\x0b\x9a\xd44A\xb6\xe5\xae\xfe>m\x8d\xea=\xdf\xfas\xea\x84\x14\x8fn\x95\xa3\xc5\x7fh\x9d\xd7\x15W\xa9n\xfb\xb5\x7fL\xe5kE\xc2\xf3\xb7\xa8\xfbWwQoh\xdd\x03\x84\x164\x0d\x07\x07\x0b-\xeb\x16sS\xb2\x96@\xbe&OQy\xd9\x95\x82?mG\x12\x96\xf2b\xaf\xf3\x8a\xb9\xbb!\x0e\xae\x0e\xf42!\xcbW\x96E\xee\xad\x06\xea\x91\xcc\xa1\x9d\x80\xd0\x19\xfa\xf2\xf9\xfd\xab\x9cpV\xe4 A)\xdeke\xbfH\xe9/\x05\xd9\x1d\x11]\x93T\xd0\x0d\xd5\xee\"\xa1S\xbe\xba\x85\x16'9\xc5;\xfa\xb7z\xc9`\xd3T\xc5\xee\x84\xed\xd0\xaa\xd8lHn\xf6\xcd\x02\xea\x12\xc1\x18\xa0\xe6\xad\x11kX\xa0\x1d\xc1\xdc\x99h\x8d\xa5\x04}\xf7\xea;\x94\xdc\xe1\x1c'\x82\xe4Plw\x87\xb9@\x9cl\xf7$-\xf7\xd5\x97\xcf\xef\x9fq\x94a\x01%u\x1d\xc4\xca\x94\\\xae/I\x12\x9bb\xb7;\xa2_\n\xbc\x83\xd2\xd5\x8aS\x9a\xbc\xe2\xc9s\xcc=\xf9\xca\xbe\xca\x0f\xbf\xda2\xb6\xdd\x91\x85\xe2\xc1\xaa\xd8,.\nU\x168\xfd\xfa\x02\xfa\xad\x08\xf2;V\xec\xd6r\x8f\xc9\xc1;h%8e)M\xf0N\xadV\xd7\xd7\x9e\x93\xc5vq\"\xd9\xa6\xd2\x94|\xb7\xf8N\xaam\xaa\xc6\x94.\x16\xfc\xa2RA\xedv\x95\xa2L2\x92&\xe4\x04 \x82\xf7\x1c\x15\xbc\xc0r\xd8\x90\x98,\xa3R57\x85\x86W4\xc5\xf9Q\x1e`.\x8e\x1d3\xa2\x05\xbdJf\xe8x\x84\x1c2y\x1cR\x81\x04S\xe8\x10] JN=9\xa8\xa9;K\x8f\x0b\xf4\x13{$\x0f$?Q\x1b\xfd\xcb\xe7\xf7.G#X&%\x11O\xdeC\x9e\xdc\x91=A_\xef\x84\xc8\xbe\x9e\xc0\x7f\xf9\xd7\x13\xc4r\x942\xfd\xd7\x13\xb5\xa2\x12\x9c\"\x96\x81\xf0\xdb\x1d\x1d\x86-\xd9\x8aL'?v~\x8b\xe4\x0f\xaa 7\x16h\x8f3\x0e\xcbC\xf6\\\xb9\x9e\xf4Ya)\xe1\x08s\xb4a\xbb\x1d{\xe4\xa7\xce\x99\xf95\xba\xdaT\xfd\x94\xd3i\xb2\x19\x96CQFA\xae$\x913\xdd\xdd\xaf\xd1Y\x8a~\xba\xbd\xbdF\xef.ou\x011\xd9'\xd8n\xaa45\xc2\xe8\xbf\x9b\x8b\xf4\xf6\x98\x91\xbf\xfc\xf7_\x1c\x04\x91\xb1\xaf\xa4f%\x80\xf8<\x81Dvl]$\xaa:\xbd*I\xef\xbaR\xfc\x1a\x9dU\xa7\x1d\x14y\xc6\x92\x07`\x19Kp\"\xf72c\xf7EV\x1a\x88V\x98\x935\xaa\x15\xc77\xcdw\x87\xfa\xf2\xf9\xbd\xea\x91\xaa\x0d/\xee\xc8\xdeZ\xcb\xbaj66\x03\x90\xff\xff\xc0\xe8Z*\xadNb\xd0\x1d\xb5]sU~\xff\xc4\xbc*)bAWtG\xc5\x11\xa5\x84\xacMap%V\xf2\x07\xcf%\x87\xa5\xba\xba\xbcz\\\xed\x9a\x05z\xfe\x85\x13\x93xKrC.\x1f)\x1d`\xfd\xe0\x14o\xddc]\xe5\x04\xdf\xcb=\xafI.^\xb8V\xc2G&\xc8\xa9\xaet_\xa4 \xact\xd9k-%\x92\"\xcf\x95]\xd1\xb6\xc7y\x0b\xce)3d\xdb\x10\x87\x8c\xb4_\x15\x1b\x94\x13)\xc3\xc9\x89\xba\xa1Sa>\xa4J\xa6\xab\xd3\xbb\xdc\x1f+\xb2\xa5i\xea\xd61\x1e\xa9\xb8s\n\xe7cF\x16\xb0nqF\xf9\"a{\xb7|\xbbQ\xbb\x87\x83\x11Pn\xcf\xb4)\x0f\xd0smy\x01+*l\xb7\x17h\xdf0\x1d\x99\xb6rn\x7f5,\x85\x8d\xa0\xfblG\xe41\x04\xb6k\x9e\x91\x84nh\x828\xd9\xe3T\xd0\xa4u\xd3\xf6\xa8b\x9dG|\xa7\x0b!|\xfe\x7f0\x15\xe6u\xf6\xcb\xea\x00o\x9d\xd6\xe6\x8e\xbab\x0f\xce\xa3\x1f\x86\xa7\x17l\x9f{\xf0\xd7\xb3\xf4\xf8\xd5\xd2\x1bR\x84\xf3\x15\x15\xb9\xdcX\x1d\xfd\xd1\x92\xb4A\x0c\xefX\xba\x05\xfe\xe3\xe6\xf4Hy\xa7\xc42\xf4g\xd5\xbe\xd2\xd8\xdf3\xb7\x93\xd6b\xba6\x0b{GW\xaa\x93Z\x1as\xc4\x8b,c\xb9:\xd12\x9c\xdc\xbf*R\xf9\x1fy\x8e\xc1\xdcr\xf7Nr\x1d\xe5l\x83\n\x01\xe2\xc4lS.\x05\x19\xae\xae\xe6[\x92\x92\\\xa59\x05\xcbr\x99>\xec\xac%\xbf`J\x9a\xdf\xb8<`\xb9D\xd1\xebSt-\xfb)\xf7\xa7\xee2\xb6\x93\xf9\x9f\xff\xeb\xbf:\x0f\x95\xb7\x8c\xa1\x0dc\xe8G\xb4X,\xfe\x7f\xc7\x03r\xe08=\xba\xfe\x84\xd3\xe3B~\xf4m\xce\xf6\xcf7\x8c\xbdp=\xb4X\xb8N\x0e\xbaA\xcf\xe5\xeb_TWo\xd9\xf3\x7f\x91\xef\xbf@\xff\xe3\x94\x8an\x1a\x7f\xf7\xf1\xe2\xfb\x00/\xfe\x13?\xe0Q\xcc@?\xaa{\x8d\xa4{\xe6\xf0\xb7\x819\xbc>\x8a;\xa9\xa29hB\x8f\xde2\xf6|\xb1X\xbcp\xaf[\x98\xc1\xe7\x9e\xbf\xaaU\xadf\xb6\xcf\xc4\xca\x17\xaf\x80\x83\x17\x977\xe7\x9f\xaf\xaeo?}~\xe16\xcbUk\xdf\xf7\x19\xf8\x90\x87;\xbf\x0bp\xe7\x1ds\xda[$gN\x7fD\xff\x92\xad\x16o\x19\xfb\x9f\xc5b\xe1Z3\xb2s'\xf2\xd2'\x9f\xc5\xe91[->\x92Go?\xe9F=\xfb\xff\xfc\x88R\xba\xf3,\x12\x0f\xd3\x9cK\xd6\xf7l\xa3\xf3\xceWu_\xa0\xdf\x8b/\xe9\x1e\xe7\xfc\x0e\xefn\x19l\xd31\x1dm\xfc*\xd5=\xc5w#\xb7\xed\xe4\xe4Y\xf3t\x01\xd7\xee\xd1\x00:\x14:\xb3A\xf0\x99\xe3\x12\xf4Jj\xac\x0b\xf5\x07yy|&\xb5\x8c\xf2\xb4\x93'\xa1\xce<\xd9 \x05+\xa2\xf9\x81\xf2\x80IwG\xa3g\xb5T\xe2\xf2\xa2\x8a\xf0F\x10\xb8I)m\xfc\xd9\xabgM\x82Z\xd93\x9d\x01\xed\x8e\xe8\x15\xfa\xdd\x86\xb1\xc5\n\xe7j\x18\x87W\xc7\xc5\xdf\xbe\x03.\x80\x9e\xe2R\xbc\xd4g\xbf\x93O\xb6\x8f\xb9\xff\xbc\xf9\xf4\xb1\xf5\xa3\x9c\x03\xf9\x87J\xf3\x87[\x1a\x93{Q_I@\xc3)81\xae\xdfm\xb1\xc3\xad<\xdbm\x02\xf2\xe15\xa9\xae\x12'\x88\xecWd\xbd\xae.\x15'\xfa\x86\xd2\xb2\x17X\xc7\xfbF\x0d\xf6\xeb\x7f\xc8\xe1~\xd5*n\x0d\x9da\x98\xb70[\xfb\xd4y\x0d\xc7\xc9\xbd\xdc\xd9\x95j\xb7\xa1;\xe2\x92\xa7F\x06\\\x93\x9c\xb3\xd4\xb3\xc8\xb5\x95F\xd5\x98^*\xae\xff\x88^\xbb\xa8\x95\x8f*(\xa5~\xf2\xfb(9.\x9b\xfb\xeb\xdf)n|w\x8a\xbes\xad\xf8\xfa\x10\x170\x8e\xefN\xdc\x94\xd4\x08>\xe2\xbd\xa4\xf6\xbf\xa0\xab\x7f\xf0<*G\xd0x2f\x18W\x1b\xadL\xd4\xe7\x1e\xe6\x8dr\xf4Hv\xbb\x97\xf7){L\xd5^\xbc\xc3\x1ca\x94\x14\\\xb0\xbd^\xb3uz\xf5\x85v\x02W\xd9\xc6\xea\xabp \xfa\xa3rA\xa5\xdb\x96-I-\xae\xe6\x07\xbe\xaa\x05o\xd6\xda\x1d\xdb\xadu\x9e\xde\xaaO\xca.\xa5\xd7(\xd2\x96 \xbdD\x9b\xd4\xd4'\xca\xb5\x89\x9e\xcb\x1dnX\xd024\x18k\xd8_\xfe\xfb//\x9c\xcbx\xdcz\xa8\x7f\xc4\xb7$\xd4\xf0%\xb1\xd7\x8b\xef_\x7f\xcf\xbfsNr\xf5\xff\x1e\xac\x99W]\x0bx\x03heP\xccr\xf2@Y\xc1u\xfd\x02\xf4\x96\xe5\x1a\xc1\xc0\xd1\x1f\xd0\xeb\x13D\xc53\x98\x9aG\xf5k\xcb\xba\xb0'k\x8a\xa5,j\xb2R\xc9\x0d\xd3\xefRa\x00\xddO\xa5\x82\xaf\xd5i_\xbc\xc7\\h(\x99\xecD\x83\x18t \xfd\xf8#z\xddJ\xa1\xacz(5\x14N\xb9\xfa\xa2}4\xba\xdc\xc9\xe2\x1bx\xd5\x85\xc7a\xdc\xa9aw;\x89}\xdd\x86\xf6\xb4\xfe\xefN7p\xe7\x98\xa0\x05\\\xbf\x11\x14\x02e\x7f\x80\xc2\x8a\xb1\x1d\xc1.\xab]hO\x98\xa6\xfc\x87\x95\xc3X\x01 9M\xb7;\xe5\x15~Y9>O\xec\xe2\x1f\xcab\xe4&\x88SX\x83}]\x87\xe0\xc8TvJn{\xeb\xd0\x9a<\x90\x9d\x9c/e\xa4S\xc5\x12\xee\xac\xc3\xbcE\xc8r\xab!\xe1\xb8p\x1bd\xce[\x9a\xaa;\x84\xc2\x93\xa9c\xc2\xfc\xe5\xfc\x8e$\xf7\xb7\x07\x87\x16\xf3\x1e\x0b\x92\x9f\xd8\xde(\x8e\xf6\xe0\xb93\xc8\xadB%N\x17w\x84\x13\xbd\x19\xfb\x18l\xb4\xa7\xb7t\x9c\x82\x0f[\x132N]}\x97\xad\x92\xb4{\xbccH\xdb$[\x12\xc4\xee\x9dA\xb7\"q\xc78\xf1}B\xf7\xc3\xd4li\xd0\x83\xfb.k\xdf\x9e\x0d\xb5*\x1bk*\xc8\x02\xfd|Gr\x829z\xcf\xb6\xbc \x8b\x95}:q\x9a$\xad\x0b\xdc\x9e\x08\xbc\xc6\x02\x9f\x94_P\xd7\xe7z\xa7\xed\x0e\xb7\xaf\xaeN\x88\xe0\xf7\x8b\xd7\xafO\xe4\xff\xfcn\xf1\x83\xfa\xef\x0f\xe5[\xfey\xab\xc0\x83!\x87wNv\xe4\x01\xa7\x02\x89\x03d\xb5\xc7\xa9}\xbc\x98Q)3\xb8\xdd_\x81\xb7\xdc\x82\x1c\x80N`\xd2\xdb\xef\x98\xc2-\xab+\xc4\x9a$lM\xd6\xb0\x08j=\xae\x81\x1c;\x11\x976\xd6\xf2\xf6PB+\xbd\xc8I\xae\xd6\xec\x00\xfc\xa4%|]\xa2\xbe%\xe0\xc7\xa3,\xb9\x19\xf8\x8er\xe5\x06s\xc0-\xb9\x03o\xd9\xb7\xa7\x9e\x03\xc8w\xec\xb8\xa3\x98:\xce\x88.\x14Z\x18\x9f\xe9Fhv~\xb0\x17J\xd3\x8b\xd3\xec\xfcD,V\xd3\x85\xd64\x84\xdd\xb8\xbd.n\xc5a6]\xa8\xcdx~\x85\x90\x9b\x1e\xecf\xfc\x07Z\xf8\xcdx\x00L\x18\xc1\x19\xc0\xc1\xb8P\x9c]W7\xcf\xb5\xad\xf3\xca\xd6}]\xeb\xc4sv\xaf\x0ch\xa102\x0f\xaa3x\x8b\xf3#;Cw\xdb\x00\xec1x\xbf\x0d\xb1\x0c\x9a\xef\xca^\xfb{\x08\x99\x18\x83\xf3\x0c\x0f\x17Z\x10\xeb\x195th1\x0c\x80\x16\x81\xf8\x8c\xe4\x05\xb4(\xd4g\x0f\x8a\xa1\x8bs\xbd\xf5\xc5~\x86\x99\xd3\x07\xfd9\x04\xff\x19?\xc2A\x18P\xff\xf2\x97B1\x88\x02\x9d\x1a\x07\xda\x81\x04\x8de\xc4\xc4h\xd0\x084\xfe<\x1f\x83\x11\xf5\xa3D\x07\xdf(\xc7bE}h\xd1\xa7\xe8P\x04f\xb4\x8d\x1a\xed0BhA\xf7|\x14\x95\x00:\xd7P\xe9\xc2\xe7\x86\xf7\x90i\x830\xba^j\xfahw\xa3tc:5\x19R7\x8c\xd5\x1d\x87\xd6\x9d\x04\xaf\x1b\xe6\xc8 \xccn{\xcf[\xdeJ7jw8n\xb7E\xc8\xc0b\xfd\xc8\xdd\x89\xb1\xbbS\xa3w\xfb\xe3w\xbb\xe7q2\x0co\x07\x8aw(\x8e\xb7\xd5w\x1b\x99\xeaC\xb4V\x03\x8aO\x11\\\xc3\x11\x0e\xcf\x17\x8c\xd0\x85\xbc\xdb%\xca\xf6\x981.\xd0\xc3o\x16\xbf\xfb\xb7\xc5\xe1\x14\xb46HV\x0b`\x99\xea-\xe7\x111g\x19\xd6m\xce2\xec\xc82\xdc\x1a\xb1s\xb4\x9e\x91\xeaQ\xc6\x0fJ\xbd\xe9^2\x0e\x1c|\x1c\xc4\xfe\xf6\xc0\xdf\x1c\xe1\xfc\xd0\xa4>_\x9fwB\xee?\xb05\xb9*\xb1E\xadM\xd3\xde0pQ8m\x8e[\xdf\x1fJ-\xcc\xbaSp\xbaM-\xa8l\x8f\x8d\xb9o\xe7\xd1\x85\xaf\xc9?\x18\x8eH\xf2\nG\"\x7f3\xde\x15\xe7\x97Q\xd7\x02v\x95\x16x\x89n\xae\xde}\\~\xf8tq\xb9\xfc\xf2\xf1\xe6\xfa\xf2\xfc\xea\xed\xd5e\xb3\xd8\x82\xfd\xd4\xc5\xd5\xe7\xcb\xf3fM\x00\xfb\x81\xdb\xcb?\xdd~9kV\x02h\x93X\x9e}\xf9S\xc7C\xef/\xdf\x9d\x9d\xffyy\xf6\xe1\xea\xe3\xa7\xa5\xd2\x92\xfd\xcf^^]/_\xff\xfeu\xed\x89\xb2\xe4@x\x80\xdd\xd7\x95\x1b\xbaM\xe5\x1aj\xce\xbc5'\xe0\xb7\x14\x1cI\x15\x9f\x93\xa4\xc8\xa9h\xde\xf9\xb7\x05\xce\xe5}\xc0u6+\xb0\x90\x9c\x1e\x0b%\x93\xb0\x94\xd35\xc9\xe5y\x87r\xb2\xa5\\\xe4Ge\xcf\xda\xed\x10\x18\x13d\x1fT\x07ZXL\xad\xbf\x9d\xab\xcd\x80H\xc2\xf8\x91\x0b\xb2_\xa0\xb3,\xe3Z(\n\x8dN\x01\xb9l\xbcmm\xb8\x8b\xfaV\xf3\x03\xd5\xa75M@N\xaa\xce\xef\xe8=\xb1Ij{\x82\xf5\x8e\x0b\x16K\xd2\x84\x159\xdeBwXFR\xc9\xe5\xbd\x1c\xed\xf5g\x84\xb7\xf2\xd2$\xb4;\x9e\xee\xd4\x07\xf0Z\xf2&%\x8f(\xc1\xed\xfb\x982WP^\xcd\x9fb\xb0\xf6W\xea\xfb\x12\xcd\xab^!\xce\xb4K\x93n6$w\x80\xa6\xb0\x1c\xa8\x02J`\x98\x1e.\xe4\xbd^\xa3\x10`g\xea\x89l\xdf\xad=;\xcd\xb3>K_\xb0r\xe4\x16i5\xe1\xe5\xa2\x93\xb7 }\x066\xbe\x95\x93\xbf\xaaym\xa9*\xedMx\xda\xfa\xc5\xferc\x95\x1b\xf8\x11\xf0\xf4\x82%\x00Rh\x02z\x1eH\x0e\xf74\xb5-J,3\\\x8b\xa5\xda\xd1\xd1+-^\xfcq\x81>\x93\xcd)R \x9e\xd3W\xaf\x08\xcd\xf8\x82\xa8+s\xb1_\xb0|\xfb\xea\xf2\xea\xfaF\xfe\xfcR\x9e\xab\xcd\x8987\xd0\xa7\x13G/)\xd7\xc7\x15\x9c]\x92\xa55\x11\xdc\x94\x168\xa78\x15-\xdd}U\x94\xe0\xa7\x12\x11\xa4\xf4^\xb8\x0e^\xfc\xd1r\xb9-\xd0-C$U[\xfb\xf2\xeaZ\xf6\xb9i\xed=\xb2B\x81\xce\x1c\xa7\x84TN*\x83\xfc\xd7\xdb\xc39K7t\xfb\x15\x04\x8b\xb2\xd6\xa7MTR\xdb\xac\xfa\xd5\x0c\xf2'\x9c\xaew$\xffj\xa6E\xf6\x06p\xb0\xb2\xd3{,{\x9d\xd0\xb5:\xc1\xc0\x17\xa7\x0f\xca&E\xfdns\xedD\xed\n\xa8\xdc!\xdb\xbe\xd8 Z]\xfb\"CB\xcd\xa5y\xf1A\xbe^\x85\x87\x9a\xdb\xa9\xfc\xb5~!J\x01\xd5\xae\xfe\xc2\xe9\xd6\xbe\x99\xd6\xeeW\x86r\x039\xd4\xbc\xe3\x96wk\x96{Hw\xdf\xf6\xa1\xe3\xd1w\xfe\x15\x15\xcaP\xdb\xba\xf5\x9b?X\x9b\x0fd\x80*U)O8==e\xefpu>U\xc4\xe25\x02r\x109^\xae\xa8\xe0K.X\xeeN\x18\xdd\xa7\xcc\x06\xd9\xb5\xcc\xccA\x1d\xb7\xa6\xf8\xfb\xaf\xc7\xe7R@&\xe2\x0d\x15g\x8aG\xd4\xbdU\xe4d\xaa\x00\xd5R\x85\x97l\x05\xcbx\xed\xa2\xa4\xee\xc1R}\xd5G\x10Iy\x91\x93\x12d\xad\xee\x88k\xb2\x06+\x92\xc0\xf7\x84\x03>yOS\xba\xc7;\x84Ud\x83E\xb0\xbeM\xa1\x13\xe0\xe5V\xfe! H\xd3\xad\xb3\x17R\xf4\x88;yg@\x1co\x0c$S\x8b\xa4T\x90t\xad1\x99 K5\x18\x14\x15\x80s\x03Br-\xab\xb3\xaco4t\xcfM\xda\xda\x9e5\xcbL\xd5\x0b\xa3O&,\x07%{mv\x1c\xaf\xd4J8\xa5\xf5?\xcd\xa2\xb6\xc8\x19\xaf\xb5\xbc\xe9\x1b\x83js\x83f\xaa\xb8\xab\xda\"\xbf\xb2\xba\xa5\xb6\xa4\xe9\x04(\xb8R\x10H\x16b\xd7\xcb\xdd\x1b\xfc\xc6R\xd3#vx]\xd3\x1e\xa5e;\xb7OS\xbb\x0ek\xd6\x9dZu\xb7F\x1d\xd4\xa6c5\xe9.-:R\x83\xf6\x8b\x87\xa1\x9a\xb3WW\x9eTO\x1e\xa5#\xb7\xb5\xe2i5\xe2I\xb5\xe1i5\xe1\xc1Z\xf07\xd2\x80\x9d\xda\xef\xd3k\xbe}\xb4\xde\xa7\xd6x'\xd1v\xfd\x9an\x84\x96\x1b\xd6p\x9fP\xbb\x1d\xab\xd9*]\xd6\xa2\xd7\xd0j'\xd2h\xc3\xda\xec\xb7\xd7d\x07k\xb1\xdfP\x83\x1d\xa5\xbd\x8e\xd2\\\x9d\xba\xeaX=Uj\xa6\xf6Zk\xe8\xa8\x93\xe8\xa7\xd3\xea\xa6\x11zi\xa7N\xda\xbc\xa4\xc2E\xcew/\xac]\xc1\x94\xe3\x0f\x02k\xc1\xcf\xac\xa7\xa9\x1e\xc4\"\x0f\xc3\xdd\x8e=\x02\x85\x06\xfc\x92#^$w\xf2\xb5\x1dK\xf0\x0e\xd6\x9eC\xf6\xda\x91\\0D\xe7u\xf4S\xbe&\xf9\x9b\xa3}\x0d\xb5.\x86\xf6\xa5\xf0%\xfa\xf4\xf9\xe2\xf2\xf3\xf2\xcd\x9f\x1d\xd7(\xeb\x8fg7\xe7\xed\x1f/.\xf5\xaf\xe5\xa5\xccK\xcc}\x1fs\x7f\xddM\xc6s\xf4\xb2\\T\x17^&\xc7\xbd@z\xf8\xa6[\xe5\x05K0tvs\x0e\\\xa4\\\xddHJyQ\x1f\xebi\xed_\x95\xe7\x9c'\x04\xf4\x13\xf5%\xc7\xbb\x92%\xa7\xf5\x7f\x96oK\x1e\xb4^\xd7\xeb\xce\xea\xb2zVI\"\x18[\xf9p{\x9eo\xd4\xfa\xeb\xe5G\x04E\xa6\xeev\xefa\x08\x10\xcePy\xaf\xea\xde\xed\xc4\x9a00\xde\x1f\x12?]0\xfcda\xf0\xde\x00x1<\xf4}\xaa\xa0\xf7\xeep\xf7A\x81\xee\x83C\xdc\xd5x\x9bvbop\xfb\xe0\xb0v\xb8u4\xa8y\x02\xda\xc7\x84\xb2+\xb3Ps4\x8eh\x83!\xe1\xeb\xfeP\xf5\x91A\xeaQ\xe1\xe9\xf1\xa1\xe8#\x82\xd0G\x84\x9f;\x04\xc6\x84A\xe6\xd3\x86\x97O\x16X\x1e\x0e)\x9f,\x98\xdc\x17F>&\x80\xdc\x89?\x141a\xe2C\x03\xc4\xbd\xc1\xe0\x03\xc3\xc0\x1d\x10\xe5~6n\x14*\x0fPy\xa1q'I,;\xc0[\xfa\xb9-\x06o\x01\xa5%\xef\xe6\xca\x0d&/h\x19\xcb\xd4\x1e_\x9f(\x00\x81\xec\x10\xc9Ua\x0e\x13\xfe\xd8 \xa8%g\xf3;+\x92`\xe5\x80\x11\x08\xef8\xab_\xf7?\xf0m=\x9aR^\xfd-\x02\xad2\x1d\xde9\xed\x9e\xba\xf7l[\xff\xb0\n\xcc\xb6\xa4\x8bg\x06}\xec\xb4\xfb8W\xe7\xeb\x1c\x02\xb4p&\x90\xb9:\xdf\\\x9d\xef\x1fX\x9do@\xe5\x0d]c\xa3A\xcf\x08\xe2\xc6\xcf\xceS\xc1z\xc6\x16\xac\xff a2W=\x98\xab\x1e8\xa9\xcdU\x0f\xd0\\\xf5\xc0\xfd\x9d\x91\x80\x12C$\x02V\xe2|3\x1aj\x02m\x04\xe0\x04\xda\x08\xd8\x89o\xa3{\xba:\x19 \x05\xda\xb4\xb0\x14h\x93\x81S\xa0\x85!*\xd0&\x03\xaa@\x9b\xab\x1e\xccU\x0f\xc0\xbe1W=\xb0\xda8\xc0L\x8b\x9c\x98\xab\x1e\x84A6\xd0B\xb9\xf5\xc3\x80\x1bhs\xd5\x83~\x00\x1dhs\xd5\x83v\x9b\xab\x1e\x84A?\xd0\"\xa0?\xd0\xe2\x01@\xd0\x820 hs\xd5\x83\xb9\xea\x01\xb4)\x81G\xd0\xe6\xaa\x07s\xd5\x83 \xc4e\xaez0W=\x08\xad\x91 \x0cJ\x93\x1bP\xf5\xa0[\x17\xab\xd9\xd8\xdb\x8eHc\x9f\xaf\x1eQ\x0bE\xeeieriP;K\x8f\x8eD\x99\x1d1\xf3!\xb8FD\x92Y\xf3N\x03\xb6\x11\xc2k\xdc\xd2,\x1a\xa2\x01n\xfe&\xde%\x90\x0e\xa8E\x17\x9a\xcf\xe3\xb0&)k%z\xf5\xda\x04\x9a=\xea|\xdc\x0f\xbaA\xe8\x9cQ;\xf1\xb5`\xf7$\xd5\xe7\x03t\xc9\xe4\xc1\x96\xd2@\xea\xe9\xea\xc3\x8d{\xe2\xc7O\xb7\x97\xa7\xea\\\xd3\x80\x88\xd2o\x8eSt\x95\n\xbdmKkIm\xef\xc2$\xd5\xe8q\xbaM\xb1(r\xc2M\xda\x06u\x9b\xd9\xb2-S{\xc5\x02C\x00RO\x7f\xb6\x85\xcaP\xe7\x14\xcd~e\x1e\xce2\x927\xa7\xb1\xc1.\x93/Y=[R\x04\xa0Z\x03\x12\x872|T\xe7\x90\xb6+\x99/\xb9\xf9}K\xb3\x12\x91E\xb3\xcaJ\xb6'\x02\xbf\xb4}y%s\xbd\xfb\xc6\x85 \x8b^\xcc+\xb6v$Lc\xeb2\x01\xb8NN\xaf\x8c\x84\xca\xf8o\xf1\xb2\xeaf\x83\x8bQx\x14\x93\xe7~\xf6\xe5\x89\xd9\x977\xfb\xf2f_\xde\xec\xcb\x9b}y\xb3/\xaf\xdef_\xde\xec\xcb\x0b\xdf8f_\xde\xec\xcb\xab\xb5\xd9\x97\xa7\xdb\xec\xcb\x9b}y\xb3/o\xf6\xe5\xa1\xd9\x977\xfb\xf2f_\xde\xec\xcb\xb3\xdbX?\xcd\xec\xcb\x9b}y\xa15\xf2\x8f\xf3\xe5i\xf3:\xc4O\x99J\xa9\xe5\xaf`\xf5\x80H\x1b\x88p$\xa5{\xa5A\xa9*(\xd1d\x11T\xe1-i\x82\xe7H\xcd\x8f\x8e\xff\x97+\x0d\xa23\xd9FU1\xd1E|\x1bt\xce\nq\xa7\x92.\xb4\xaa\xe0Y\xb9\xb7\xa1n\xef\xed\xe1\x19\xb7\\B\x0bt\x89\x93\xbb\xca1d\x92-h\x17M\xab\xb0\x19V\x8b\xb4\x1d\x83%\xcaj\xb2\xf2\x94R'\x94\xdc\xb7\xaa\xda9\xa2\x02\xb1$)\xf2v\x8c\xe8\x1b\x15\xde\xfb@R\xb3C\xcc{\xcd\x0e=7F\xde\xb2\xb0\xb0z\xce=g-[\x90\xcaj\xbd!y\x0e\xa67l\\3t\xaf\xf4\xea*\xc1D\x86\x8f\xf0\xb7\x0di\xbaDM{\xbcc\xbbv\xa1=;\xb6\xbe\xfayO\xf6\xcc\xe5\x9e\xe9\x1d^* \x99\xc8\xe0\xca \x902A^%l\xaf\x1c\n\xb0 \xcd\xfc\xa0\x86\x83\xa9\xc5\xf9\x9f\xcf>\x7f\xbc\xfa\xf8\xeeT\n\x87dG\xa1\x08\xb3$\x0f\xf9\x1cvGD\x0e:[<9\x08c\xf8O\x99h\xd7\xdaK\xf0n\xa7\x04\xe6\x9e9KXY\x85*\xe0\xc9\xaf\xb2\xe3_M\x13\x9cV^\x97US\xc3P\xc6\xfb\x96K\xee\xf1\x8e\xa4Z\x1cA\xb5 \xfb;)\x13\x88\x17\xca\xce@R\xb1\x90\xebR\xde\x97@\x80q\xa2jd\xd7\xc9y\xac\xc3r\x95&8}\xa64[\x08<\\\x83\x83\xad\xe5\x89P\xd5m\xa1`\xb4E$e\xe92\xc9\xa9\xa0 \xde-g\xb7\xc3\xecv\xa8\xb5\xd9\xed0\xbb\x1df\xb7\xc3\xecv\x98\xdd\x0e\x8e6\xbb\x1df\xb7C\xf8\xc61\xbb\x1df\xb7C\xad\xcdn\x07\xddf\xb7\xc3\xecv\x98\xdd\x0e\xb3\xdb\x01\xcdn\x87\xd9\xed0\xbb\x1df\xb7\x83\xdd\xc6\x9a\x94g\xb7\xc3\xecv\x08\xad\x91\xd9\xed0\xb9\xdb\xe1X\xae:\xbaM\x99\x1d$U\xd3No\x0fo\xac\xe4i*\x91\x9a*\"Z+\xbb)Y\x80w\xbb2\xb0J\xfe\x17\xb1\x07R\x9a\xc4p!\xee\x86\x95\xaf-#\xa9\xca\x17]\xd1\x1f%\xfd2\xa5]!\xeeXN\xff\x06\xfb+'\xaa\xae]G\xbe7{E\x193\x05\x18SaH'&(i\xcf\xa4B+\xb9\xba)\x83d\xaa\xe8\xadAI\x14[6\x8dpm\xd1z\x89\xdb*\x9f`-4\xce\xfa]\x1buEr\xa7OL]t\xb0\x0cg\xb3\xc8\xd5\xa3\xe2\xaaH\xb6z\xe8\x9a`\xbale\xc2\xd2\x94$B\x8a\xab\xf2\x83*\xeb\x9f]$\xcc\"\xb8\xa3\xf7\xb5\x9bBW\xb9ZyEc\\\xad\x0dXI\x8d\xa5if[*9k\x9c\xeb\x0bPi`[\xe5\x0c\xaf\x13\xccU\xe7\xea9\x08\xddY\x06\xdf\x94\xc9\x03E8\xd3\xa0\x89\x12\x1c4\xe7\xd1\x893\x85\xc7\xcb\xd6a\x0e\x0bY\x97&\xf5\xacuy\xd5\xa6\xf4\xa8M\xe8M\xeb\xf0\xa4\x8d\xf2\xa2M\xe7A\x0by\xcf\x06z\xce\x06{\xcd\xc0R\xef\xe0\x96\xd7c6\xd8[\x06W\x98\x16=\xaf\xa7l\x8c\x97\x0c\x15Y\x8b\x9e\xcfC6\xc4;\xd6\xe5 \x1b\xed\x05\x8b\xf2\x80\xf5\xf1v\x8d\xf2t\x8d\xf0r9\xc5\xca\xa4\xde\xac\xa9=Y\x13z\xb1b\x17\xf6\xee\x8c\xf5\xecx\xbaW\xfbm\x947\xa7\xed\xbd\x19\xe3\xb9qzjFyi\xda^\x99i=2~o\x8c\xc3\x133\x95\x17fB\x0f\xcc\xd4\xde\x97X\xcfK\x84\xd7%\xda\xe3\x12\xe7mq8&\\_\x8d\xb5\x9e\x87<,\xd1\xde\x95(\xcfJ\xa3\xf3\xd3zTFyS\\\xde\x93)='SzM\xc6\xccw\x84\xb7$\xec)\xa9$\xbc_O0&\xd0\x01)\xd9\xa9\xb7y\x1c\x1f#\x96\xa3\xe1R\x83\x9f\xd1\\\x14$]\x93|OS\xb1\xc0\xab\x84..\x1fH\xdac\xe5\xc9G\xba\x98\x86\x85\xc8\xe9\xaap\xf0vZG\xfe=9F;\x0e\xfa\xb9\x19h\xba&\x07\xf7\xd3+\xc6v\x04\xdby k\x13\xaaXyf\x18\x00\xe1\xad\x9c\xa6\xdb\x1d\x91\xdd} \xfa}\x86i~\x820\xe7,\xa1\xca\xc6\xad\x95sD\xe4\xdb]\xcbD\x91\x07? G\xb8\xf2\x0f\xa25y ;\xc9&H\xb0(\x04N\xeel\xf5\xdeJ\xa9\x88D)\xb9\xf4\xe2zKSe8x\xa3B\xfc\xe4\xdd\xde\xfc\xe5\xfc\x8e$\xf7\xb7\x07cFz\x8f\x05\xc9Oj\x19\x11\xd1\x1e\x1f\xe5u\xff\x97\x82\xe4\x94\xacQ\xc1U\xceD\xa5F\xa8\xe1\xa8e\xef\\q%\x9b\xa2\x97^m\xc6\x1d\xb3\xd7\x98e\xc7\x13\x8d\x99m\xcf\xe9\xf4\xb3\xf9\x7f\x02\x00\x00\xff\xffPK\x07\x08\x81\x01\xff\x92=y\x02\x00\xff`$\x00PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(\xd4`4t\xc7\x01\x00\x00\xbd\x01\x00\x00\x11\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\x00\x00\x00\x00favicon-16x16.pngUT\x05\x00\x01\x80Cm8PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(6B\xc8\xd7\x7f\x04\x00\x00u\x04\x00\x00\x11\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\x0f\x02\x00\x00favicon-32x32.pngUT\x05\x00\x01\x80Cm8PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(R\xb2\xb0\x8fo\x02\x00\x00\xb6\x05\x00\x00\n\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\xd6\x06\x00\x00index.htmlUT\x05\x00\x01\x80Cm8PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(\x81\x01\xff\x92=y\x02\x00\xff`$\x00\x0c\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\x86 \x00\x00swagger.yamlUT\x05\x00\x01\x80Cm8PK\x05\x06\x00\x00\x00\x00\x04\x00\x04\x00\x14\x01\x00\x00\x06\x83\x02\x00\x00\x00" + data := "PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x00 \x00favicon-16x16.pngUT\x05\x00\x01\x80Cm8\x00\xbd\x01B\xfe\x89PNG\x0d\n\x1a\n\x00\x00\x00\x0dIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\x00\x00\x00\x1f\xf3\xffa\x00\x00\x01\x84IDATx\x01\x95S\x03Luq\x1c\xfd\x8c\xf1\xc3\xec0\xa7)\xcda\xb6k6\xb2\x9b\xf9\xb2k\xc85/\xdb\x8dqx\xc6\x94m\xcc{\xef\x7fO\xff\xf3l\xdc\xed\xf2\xe0\xfe\xf8\xc9\xffP\x14\x11/\x14[\xa3P\xc4\xa1\xbc?\xf1t>7\x12s\x13\x03\x85\xca7IR a\xb5j\x8f\xa71\xbe]\x88\xf6\xb9L\xf0\x1c\x93\xcf\xda\xe3)\x10\x93f\x8d\xe4\x06\x13\xcf\xde<\x9b\xd14\x95\x8a\x92\x81OA\xcfF\x89\xdd<\x9b M\xe6}L\xe4\x07\x15\xc5\xf5\xe3\xffI\x0c{\xd6\x8d\xffs\x994\xbasfh\xae?\xafk\x1aprw\x10 <\xb9\xdb\xc7\x86\xa6\xd1\x19I\n\xa8\xb1\xd7\x84y3g\x171T$\xb5c\x7fq\xfbbq\xbfk\x8e'\x1dQ\xb0\xc2,\x92\x0bx|;F\xe5\xf0\xef\x00\x83\xf2\xa1\x1fx|?q\xbd\xcb\xc2\x16\x80ZF\xf0\xc4J\xf3\xe3\xe4n1\xcc\x17k`:}\xcby\xe8\x98\xcbB\xc7|6z\x97r\xd14\x9d\x06\xd3\xf9\x8a\xe4\x94\x90\x8b\xb6\xd9\x0cP\xebc@\xd0|\xbe*\xc94\xc8\xa7\x98'\xcdh\x00\xe3\xd92\xa6vK}\x0cB\xa4\xf0+D\n\xc7\x81)\xb0\x10\x9a\xe3\xa9\xd8\x8bx\xe4(\xa2\xbb\x8dl\x0d\x01\xb6\x8a-\xf378\xbe\xdd\xc7\xa6\xb6\xc9\xd9\xc6d\xd8\\m\xf4\x0c\x92 uQ\x0e\xd2\xf5\xb3\xd1\xf1w\xdfQ\x16\xb34a$\xa1\xc4\xc4(V\xbcF\xd9\xdf\xa4\x91\xe9\xb0&,\x12+\xcd\x93\xcf\x1c\x1cb\xdc\xca\x00qt\xeb\xcc-\x14\x89\xfe\xfc\x0fm2j\x88\xec\xccs\x18\x00\x00\x00\x00IEND\xaeB`\x82\x01\x00\x00\xff\xffPK\x07\x08\xd4`4t\xc7\x01\x00\x00\xbd\x01\x00\x00PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x00 \x00favicon-32x32.pngUT\x05\x00\x01\x80Cm8\x00u\x04\x8a\xfb\x89PNG\x0d\n\x1a\n\x00\x00\x00\x0dIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\x00\x00szz\xf4\x00\x00\x04|ID\xc4\xcf\xd0@\x04&%\xad\x1e\x16\x0f\xf7\x8d\x97AR\xfa\xca\xe7l\x87\x05\xf8\xd2\xfb\x0c\x84\x1d\x0dLVY\xdc/ju\x13\x1a\x88\xd2\xa0\xaaa\x82|nzp_\xf4\x03\xc8 \xd4;^\x8a9}\xeeu\x9a\x91 `\x04\x14s\xec\xe1\x0c\xc6]\xa3\x05``\xd1w\x12*~ \x00\xf3\xae\xd3\xa0\x9cb\x82\xa2bx(\xb3n\x1fqx\xd2\xf2\xda4\x1d\x8a}\x1ck\xd4>\x9cI+\xeb\xb3\xf4k\xc8u`L\x93\xf3]4\xb5\xd0\xc3\xe33\xd9\xee\xd7\xf2\xd9\x19\xea\x18\xc9\xc1Y:\x18\xfb(-\xadN\x82\x06e\xd5\x1f0\xa2\x1dV\xf8\xbe0\xc1\x985\x01\xf8\xd2~\\\xa6\xa5\xb5)&\xf6\x98V\x80l\xe4\x03\xf8\x03\x04\x00s\x9a^\xec\x85\x00\xf4+\x0b\x00\xe1:G\xf2p\x96\x0e\xc4,\xe46\x1e5\xbbP\xdd\x15J\x80}\xce\xa4\xe2\xc8{m\xa4\xe2\xc3\xc2\x01\x07\xc0\xdb\xa4\x18-\xa1\x931\xba\x10S\xfa%\xb6P`\x10\x19v\x99#|Gg\x9b \x10W\xf6\x8dI1\xba\x92\xd66\x17E\x12\xfa\xd9\xa8\xf3UTe\n\x1b\x95\x9d\x81f\xe5\x18\xa5umc\x81\x86\xa6\xeb\xec \x804\xcbg\x17\xa19\xfa\xc6\xf7<\xa3\xbd\xf2\x0e\x7f\x02\x80\x97Y\xc7\xac\x184$h\xa3v\xba! \xcc{\xcd\xb4!\xb1\xd8\x92%h\xe3\x93\xdc\xd3_\xda1\xe6\xaei\xcf\x83\xa6p\xbc$\xf0\xb2\xda\x94\xa2q\x14B@\x13\xdb\xff\xf3\xd7\x0d\xfaA\xb9\xc5n{\x8e\xd6Y\x08\x01u\xc1'~\x16\x8e\xe9\x04\xa2\xfbA+\xc74\x0c\x98\xab\xd7:\xfc0\xd1v\xaf$\xa2#\xb7\xf1\x08\xfdm!OXh8\x10j|g\xd1\xe0a\xb2\x99\x04\x9a[y\x9a\xbdk\xf24C$\xa0\x9e#\x9f\xa3\xa8\x001\xc6\x1a\"\xc0\xe4i\xa6\xcc0\xf3\xf7\xb7\xf5XE\xb8\xe0\xa1\xc9\xc2\x0c\x90\x83\x80$\x838\xdf\xd6\xe3\xd4\x82FNG\x0f\x876\x8a\xbf1\xa8d(\xa7@\x8cQX\x90\xdb\x19\x9f\xc5YG\xe9\x9e\x00\xa5y3]\x9aJ\xe1\"\x00\x00\x00\x00IEND\xaeB`\x82\x01\x00\x00\xff\xffPK\x07\x086B\xc8\xd7\x7f\x04\x00\x00u\x04\x00\x00PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\n\x00 \x00index.htmlUT\x05\x00\x01\x80Cm8\xacTmk\xdbH\x10\xfe\xee_1\xd9|Hrd\xa5\xbc\xdc\x85C'\x99#\x97+\x0d\xa44\x90\xf8C)\xa5\xac\xb4#y\xea\xd5\xae\xd8]\xf9%!\xff\xbd\xe8\xcdJ\xeb\xd0\x96P\x0c\xd6\xe8y\xc6\xcf\xcc>;\xe3x\x8fsx{\xff\xee\x06rc\xc1y\xe1)\x03I\xce[JkOFCZk\xa9\x10\xd2\x9a\x94\x04\xce\xa7\x93x\xef\xea\xfd\x7f\xf7\x1fn\xff\x87\xb9/\xd5t\x127\x0fPB\x17 C\xcd\xa6\x13\x80x\x8eB6\x01@\\\xa2\x17\x90\xcd\x85u\xe8\x136\xbb\x7f\xc3\xfff=\xe5\xc9+\x9c\xde\xadDQ\xa0\x85\xd9u\x1cvH\xc7*\xd2\x0b\xb0\xa8\x12\xe6\xfcF\xa1\x9b#z\x06s\x8by\xc2\xe6\xdeW.\n\xc3ZW\x8b\"\xc8L\x19\xbaN\x85\xd7\xc4\x9b\xf6\xff\xfd3\xf8+8y\x86\x06\x99s\x0c\xc2\x1dm\xca\x8cf\xe07\x15&\x8cJQ`X\xe9b(\x93\x8be\xc3\xf3\xf3\xb3\xf5\xf9Y\xd0\x12\x8e\x1e\xd0%\xacE^\xadwz\xb1>\xbd\xf8F\xafEF\xbd\xf6\xc4]\x0c\xad\xcd}\xf8\xd8?\x01R\xb3\xe6\x8e\x1eH\x17\x11\xa4\xc6J\xb4<5\xeb\x7f\xb6\xbcY\xa2\xcd\x95YE\xc0K\xf3\xc0]f\x8dR\xa9\xb0\x8e/\xd1z\xca\x84\xda\xcd\xe5\x9b\x08\xba\xc4\x81{\x9a\xf4\xc1\x1f\xc7C\x10\xa5\x98\x1b\x8b\xe3\xbb\xc8=\xda\x1f\xf6Gz\x8e\x96\xfc\x8ehj\xe4f\xe7\x87\xa5\xb0\x05\xe9\xe8dl/\x15\xd9\xa2\xb0\xa6\xd62\x82\xfd\\4\x9fQ\xaa\xf9\x8e\xc3\xad_q\xd8\x8d^\x136\xf2\xbd\x9f\x92\x96@2a\xe3<\xb0i\x1cJZ\x0e~g\x96*\x0f\xcef\xaf\x99-\xde\xedH\xf0\xc51\xc8\xacq\xceX*HO\xe3\xb0\xd3\xfd=E\x9c\x17Z\ne4\xf2\xca\xa2C\xffk\xf5\xba\x97\x15iiV\x81\xd1\xca\x08 \xe4\xb5\xce\x9a\xf5><\x82\xc7\xe1:\xc2\x10.\xdb-\x17\xe06\xcec\xd9\xe3\x99\xd1\xceCM\x90@\xbf\xab\xb3\xeb\xcb\xf6\xc4\x87\xe3\xb5\xd5VE\xc0\x82\xa1\xe1`#J\xc5\x8e\xb7\xb44\xe5g\x92\x11\x1c\xec\x8f':xF#V7\xa4\x17\xed\xb8x[\xe3Hugu\x11|\xdcB\xf0}\x1fA\x9f\x14\x88\x8a\xdc\xf1Kyw[\xf3n\xdb\xd4m\xce\xa7g\x95T]\x90\xfeY\xa5.)\xb82\xab\xd6\xcb\x99U/i)\xb11\xb5\x8f\x80\x8d\x85oZ\x88\x0d\x93{4\xd8\xde_M\xeboM-\xf8\xd4N\xf2x\x7fq\xd8\xcdr\x1cv\x7f\xb9_\x03\x00\x00\xff\xffPK\x07\x08R\xb2\xb0\x8fo\x02\x00\x00\xb6\x05\x00\x00PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x00 \x00swagger.yamlUT\x05\x00\x01\x80Cm8\xec\xbd{\x93\xdc6\x9a\xee\xf9\xbf>\x05\xb6#\xf6H\x9e#U\xc9\xb7>s\xb4\xa7'V*\xcbn\x9dh\xdb\xb5\xb2\xdc\xb3\x1b\x13\x13i$\x89\xccd\x17\x93H\x13`]\xda\xdd\xdf}\x03\x17^\x13\x00A&\xabT\x1e=o\x84\xc3\xaa$ \x02/q\xe3\xfb{\x00\x8a\x1b\xba\xdd\xb2\xf2\x15y\xfa\xc5\xd9\xcb\xa7O\xb2b\xc3_=!Df2g\xaf\xc8\xe6\xf6\x82\x97\x8c\xbc\x7f\xfb\xd3\x07B\x8b\x94l\xdf_^\x90\xef\xa8d7\xf4\x8e\xa4<\x11O\x08I\x99H\xca\xec 3^\xbc\"\xaf\xcd\xb9Y!Y\xb9\xa1 #\x1b^\x12!\xa9d\xe4\xd7\x8a\x95\x19\x13\xcfI\xce\xb64\xb9#\xb2\xa4\x85\xa0\x89\xbaN%s\xcdJ\xa1\x93xy\xf6\xd5\xd9\xcb';.\xa4\xba\xff\x8b\x92 y\xb6\xa9\n}\xe2\xedY\xc6\x9f\x88d\xc7\xf6L\xa8l\xbe ;)\x0f\xe2\xc9\x81\xca\x9d\xfe\xe1\x9c\xc9\x1d+\xf7Y!\xcf7\x8c\xediy\xc5\xe4\xf9\xf5\xe7\xe7k*\xd8j\xc3\x98:\x87\x90-\x93\xe6\x1f\x84\x88j\xbf\xa7\xe5\xdd+\xf2\x86\n\xf6-k\xb2I\xe4\x8e\x11u\x15\xd90F\xf8F\xff}\xa0%+$Y\xe7<\xb9\xaa\x7fK\xaa\xb2\xfd\xf1\xcc\xa6\xca\x0f\xac\xa4*\xc3\xef\xd2&e{\xa8d\xe2\xc0\x0ba\xf2o\xec\xe9\x17/_>m\xff1\xe6\xe8r\xac\xeb\x8e\xfa\x9c&\x01\xf34\xd4\x08V?\x0e\xf3 \xd0\x01\xa1\x03z\xcc\x1d\xd0\x81\x96t\x1f\xe8}.\xf5\xf1^\xdf\xa3/a\x92\x95B\xcdkn\xdb\xf4\xc8\x9e\xa7U\xce\x9c\x13\x9bo\xeb\x93L\x82\xf6\x94G\xdb\x07u\xdd\xd2\xb5^f\xccI\xaaag\x05\xd3\xaea\xd7{\xeb\x84\x8e\x97\xce<\x95\xd5S\xef\xc2\xb5\xae\xe0+\xff\xe4\x8b4i\xaf9\xcf\x19-\xdcg\x98\xfe\xf0\xdf^xjU\xe7\x16\xaa\x86%\xac\x99Z\xbd\xe8\xcd\xad\x88\xe4\xe4%yV0\x96\x9a\xae\xcf\x93\xdeKr(\xb3\x84\x91\x84\xe6\xb9\xf8\xccqR}\xb7U\xb2\xa3\xc5\x96\xadRV\xf0}VP\xe9\xea\xa0\xc8h\x9fCFG\x042|\x92^_\x04\xb2F\xd6\xbc*R\xe3\x1b\xba\xe7U!{\xef\x01\x9e\x04\x13Z\x10\x93\xd6\x13\xdf-\x99\xbca\xf5p\xee\xa8<\x84\xb0\x9c\n\x99%\x99\xbc[\xed\xab\\f\x87\xce:\xba\xcf\n5\xad]\xe9\xa6?3\x03c\x1dU\xef\x1e\x8dcu]\xcb\x8a\xa6\xae\x99\xa3z\xa8\x0dtR \x17{.t\xe0\x82\xc9\xdd0\xe00\xb4\xfa\xceq\xcdo\x81\"z\x9aT\xa7\x98z\xfe)9Y{\xeb\xcd\x8e\x96[\x96\xfaZ\x92\xe4D\xb0\"U\xa3\xbaz\xd6)\xe1E\xdbT\x8f\xae\xb1\xf9\xbe\xec\x8e\x80v\x98\xf8\xeb\xf7\xc7C`\xef\xfap\xab\xd1\x13\x16\x93n3\xdb\xee\xa6_\x0f\xfa\xda\xb7\xba6\xaa\xb9\xc9]Vl\xc9\xed9\xbb\xde\x0f\x92s\x0d\xc3\x98\x89\x0f\x8eb&\xfeqf\xe2\xecz\xaf\xe6\xe04I\xd4\xf4\xe1\xfc7\x9a\xa6%\x13\xe2\x9f\xfe\xe9\xf8ksj3\x1f\xa7\x05y\xab\x92c\xd5\x9e\xd8d\x9c\xd3\xef\xb7rg/\xb5G\x1f\xed\xcc{MsZ\xb8\x86\x8c\xe0S\x18\x8cU:\x89\xfam\xbf\xfe\xd3\x06aU\x07\xd5L\xe32^\x0cG/\xd5\xb8V;*v\xa7d\xa1I\xa4\xce\xc4\x8e\xdd\xbe0\x95D\xf5)\xea\xb0\xae+\x82lJ\xbe7\xf9\xfa\xf1\xf50+\x05\x9f\xee\x89\xba&V\xeeiK/\x97:\xfd:\x87\xb6\xfa<\x15D\xb0_+\xa6\x8e\x14\xd5~\xcd\xca~\xae\"zo[\xd3\x9a\xee;\xf3\xf5\xdc\xeaW}\xc5y\xbfr\xd6\xf6\xfe\xf2\x82\xec\x99\xdc\xf1\x14\x9d7:\xef@\xf7\x1b7\x11'\xe45\xf9\xf9\xfd_\xceK&xU\xaa\xfaM\xf7\xea\xbd\x9dJR\x15\xd9\xaf\x15\xcb\xefH\x96\xb2Bf\x9b:\xd6\xa1\xab*\xdfx\x13T\xe7\x08Vf4\xcf\xfe\xee\x9f[i\x1fH\x9e\xf0\x9c\xac\xab\xcd\x86\x95\xf5C;#\x1fv\x99\xb0e#\xfbJH\x92\xf0B\xd2\xac \xd4\xe5Jc9\xa3B\xfa\xef\xc5\x0bF\xfep\xfe\x07=\xe1\xa3\x89d\xa5\xba\x0b#\xea\xfd\x8c\x08\xb6\xdd\xb3B\xd6}\xe1\xcf\xef\xff\xf2T\x90\x03\x95;oj:S%;\x94L\xb0\"pW\x95\xdc\xa6\xca\xf3;\xf2kEs\xe5\xc1\xd4\xf8\xd7\xdeJ{\xf2\x19\x15$+\xfc\x89\xfc\xa2\xb2r\xbe\xe5|\x9b\xb33\xed\xb3u\xb59\xfb\xa62\x03\xd9/\x9f\x99\x92\xe8d\xc5\x8eWyJ\xd6L%\xe8K\x8f\xaa\xf7m^d \xcdu\x1b\xf2\xdf\xf9\x19;\xdb\x9e=W\xaeM\xd5\xa3\xf8\xc3\xd9\x1fT\xb7Up\xa9\xfaEv\x90,\xfd\xec\xec\x89\xff\xf2w\x059(gg {N$S\x93\xe2JTT\xb9\xe3P\xb2\x84\xef\x0fY\xaer*\xb9\x19\x92\xb2\x82\x96\xc7-\xac6\x9a\xe7\xda_\xc2TN\xb9c\xde\x17`BL_G2\xa9\xa6\xf0\x95\xean\x0b\x03\x1by!\xd9\xad~\xd4\xaf\x8b\xbb3\xf2g~\xc3\xaeY\xf9<\xf0\x12DT\x85\x10\xf6\xbdT%%w\xde0\x85\xedA\x19\xf9e'\xe5\xe1\x97\xe7\xe6\xff\xe2\x97\xe7\x84\x97\xa4\xe0\xf6\xe8s]\x1b\x13Z\x10\xae[\xa7\xf2\x88?A&Iu T\x97=p_V^\xb3\xd2\xb8fO\x0f\xc2T-\x9ds\xc9\xeb\x96e\xde\x192\xfd\x02G\xa8\xeb\x1d\xce\xd8\x86\xe79\xbf\x11\xaf\x02\xcf\xf6_\xc8\xbbM[\"U-\x0e%\xbf\xceR\x966\x85V?R!\xaa\xbdz\x11\x0f$\xf4\xba \x7f\xfe\xf0\xe1\x92|\xf7\xf6\x83z\xbf\xb2M\xd0\xb4\xb1\xbb\x8c\xe5)\xa1\xde\xab\xffc\xd8,>\xdc\x1d\xd8\x7f\xfe\xc7\x7fz/\xb0\xb3ZU\x1fL}\xb3\xc3\x88~B\x87\x92\xa7U\xc2\xd4\x04R\x0fa\xaewxc\xffB^\x1f\x0ey\x96P\xeb\xcb\x92\xa9\xfa\xc9o\xcc\xebfB\x13\xd5\xb7p~U\x1d\xd48[\xe5\xd2\xbe@\x06\xfa']\xaf|\x87u%\xd4y\xdc\xd1k]\x05\xf7\x9d6\x94\x9aFD\xeb\"\xa9\x7f_\xf3,%\xb4\xf0W,b3\xa8\xbb\x8f\x92mx\xc9\x9e\xd7 \xa8t\xa9\xcc\xd6Y\x9e\xc9;R0\x96\n\xf3\x1aMt\x97W^\x07J\xa2\xcbb\xa2y\xfa\"\xddf\xcf\xc8\xb3\x9f\x05\xab5\n\xcaK\xaaz\xaa>\xcb\xd4OZ\xd0m\xa8\xf4\xeb\x92\xd1+\xd5\x07\xd9\x84\xcf>\xf3\xd7\xa8\x1f\xb8d\xaf\x88TcH-{\xa0\xba\x1c\xb6\xef\xb2\x82\x83\xfc\x8e\xd0k\x9a\xe5t\x9d\x07\xbbKU\x1f\xf9f\x93%\x19\xcdG\xc6\xb2u\xb5!%S#\x11{\xae\xa3&\x99\xaco\xda\x90\xb0\xa6]z\x93Z\xb3mV\x14\xaa\xb07\x99\xdc\x05\x06\x97\xbb\x03;3\xf5\x9f\x1e2q\x96\xf0}\xa87\xfe\xc9\xa8>\x08W\xafF\xaa\xa3(\x86\xbd\x14yf\xa7\x9fl\x7f\x90w\xb6i\xbbb\xd3\xc6\xf6:8\xb7\x0etJ\xba\xd0\xaa\x10$\xdb\x1fr\xa6\x06Y\x13\xa2\x13\x07\x96d\x9b,!\x82\xedi!\xb3\xc4\x19.\xbb\x977\xd0\xa1\xc5\xce\x92\xbeW\xdd\xd1\x9a\x11\xaa2\x95\xa5\x9d \xce\xd1<\xc6\x0e\xeet\xcd\xaf\xfdu\xda\xba\xc06\x05W\xf1cr\xf6\xcb\xeb\xe2\xee\x97zz\xa4\xdf|i\xb9\xced\xa9\x1a\xb1?\x87\xce\xa4\xea1\x82\xe6\xdcV=B\xdd\x8fV\xf5\xcez\xa019\\\xf7\xa7\x85\x83\xe9_3\xab\xf3T\xcd\xcb\xba\xe1\xe4\xd9Zg\xdb\x8e#\x82\x88\xeap\xe0\xa5\x1e\xc1\x0f4\xb9:\xaf\n\xf5?5n\x9bz\xe1nAv\xa0\xf7Ol\xf8\x86T\xd2tlu\xf7 T\xc7J\xd343}\x05\xd9\xb2\x82\x95T\xea\xcc\xab\x17-a\x8b\xe5LO\xe5\xc7#\xbf\x05\xfa\xf0Pz\xff\x0c\xfb\xee\x8b\x11\xdf\xfdozM\x17s\x1e\xf9\x93\x9e\x1b\xaa\xbb,\xe0\xa1L<\xfb\x96\xf3\xb3$\xa7B\x8c8\xc8dQ]d\xca\xd8\xb9\xd0\x9f\x87\x7fz\x8f\x9c\x9f\xabj\x1d\x97\xc7\x9f\xe8\x9e\xa9\xa9\xd3k\x93\xdb-\x93\xdf\x98\x90\xc2\xbbBHZ$\xec\xd9gs2\xefL'T\x96`-\xf8r\xa4\x16\\\xde\xc9\x1d/\x02\xf5\xc0\xe4\xf1[\xce\x9f\x9d\x9d\x9d\xf9\x07\xb6\xa6\x0e<\x0b\x9e\xa3\xdb\x91\xae!s+\x88J\xe4\x9d\xf1\xf87o\x7f\xbax\xff\xee\xf2\xc3\x8f\xef?\xf3\x8dw\xc4\xde\xd6\xb4\xb9\xf0\x8d\xcd\xad\x83\xde\xfcj\xc4\x9b\xdfq\xbf#\xb5'_\xfd\x89\xfc\xb7\xc3\xfa\xec[\xce\x7f;;;\xf3\xd7C\x95\xe9\xe7jB\xad\xae\xa0\xc5\xdda}\xf6\x03\xbb\x19\xc9\x7f\xb6\xd1W\xfc\x1f\x7f\"E\x96\x07+^\xd0\xc9\x81\xe6\x11\xbenP\xc0@26\xa7\xa6lg?\x17{Z\x8a\x1d\xcd?p\xd3y,U\x0c\xe7\xb1\x0fZy\x92\\5\xe3T\xfd\x12F\xd6w\xed\x94\xb4\x1eYo\xb2<'k\xf7\x1b\x81\x8d \xaa)\x9b\xfbVO\x1d\xd3\xcd\xf3M\x95\xe7g\xfa\x80\x9a\xca?%\xb43\x13P\xb3\x04U\xb7|\xe3\xa6\xa9s\xee\x9b5\xc3n\x91\xdf\xd5\xef\xdcG\x81\x94\xe6\x15\x82\xd0\x8d\xd4SZ\xf7\x8dt\x8c\xe7\xe9\xf9S\xf7\xad\xec|\xa1\xce\xb2\x8e\x04\x10f\xdb\xc8\x1f6\x9c\x9f\xadi\xa9\x0b{{~w\xf6\xf7?\x18/\xea\xf7Rgz\xfe\xd7t\x9d\xd5?\xa84|S\x85\xff\xfd\xd3\x8f?x\x0e\xa9'\xad\x0e\xb7Q'3\x93\xe6\xaa\x17\xb1\xd3@\xf3f[\x89\x06\nn\xab\x9c\x96\xee\xf4\x8e\x93Q\x97\xa4\xac\x9d\xb8='l\xbffi\xdaN\xe1\x9e\x9b\x17\x12Wr\xd4\x13\xbf\xeaL\xaa6\xfaU\xfe\x97\xff[9\xe8\x17\x1bNi&\xae\xddG\xe0n\x06\xb6\xdbz\x15x\x05\xa3\xc9\x95\xea\xbb\xda\x90\xc0&\xcb\x99\x7f\xb4\xa9\xfb\xbaKV\n^\x04\x1b\xa7\x8dEn\xb2R\xc8\x95~\x8e\x7f\"\x9f\xfbSn.PU\xaf>\xff\x8b\xc9\xe3\x9e\xb2P\xae\xfe\xa0}\xf9\x87W\xe4\x0f\xae\xb6\xd9w\xc3\x99)\xe5\x1f\x9e\x87\xd2\xd3\xe5\xfb\x81\xeeU\x9a\xff\xcb\x14\xe1\xdf\x82\x17\xa8\xf2\x0d\xce\x9fZ\xc8w\x1b\xfb\xca\xd9\xafk\xa66d\x82\xdc\xb0<\x7fqU\xf0\x9bB\xf7&;*\x08%I%$\x1fRmc\xa6\x0d\xb9\x8e\xf4\xab\xfcs\xf3\n3h\x07\xa6\x8b\xecdGU`\xcf\xeb%5U\xda}\xb3_tc\xac\xeb\xf9\x8e\xe7V\x9d`rn\x9arV4\xed\x83\x98\x18\xa8;)\xd3d\xdc\xf7\xd1Y8k\x06\xf5g\xaa\xf7\xaa]x\x14\x1c\xabc\xc6\xff\xf9\x1f\xff\xf9Y\xa0!-Q\xe7\xfa7\x0cW;\xed*\x95\xe4\xe7g_|\xfe\x85\xf8C\xa0\n\x99\xff\xb7\xfa\x85.KV\xed\xec\x15\xb1\xb8\xb8\x93F\xef=\xda\x1e\xae\xf1\x1b\xab9\xf1\x8e\xdd6\xc7$7\xf2 \xd2!\x80jX\xe8vL\x99\x96:\xf6z\xc3\x92\xfdZe%K_\x11YV\xddG\xe9\x08T\xc4sp\x0bjE\x0c\x08\xffG\x1b$xc\xf9n\x7f5N\xc3|)qQ_+\xd5\x16Y\xb1\xcd\xdb\x02\xb4\x98\xdcG\xd1\xed\xcd\xecQPt7E\x8f\x80\xc4\xd6\x91S q\xdf\xf7\xb5\x01\x12[\x03$\x06$n\x0d\x90\x18\x90\xb85@b H\xec6@\xe2\xda\x00\x89\x01\x89\x01\x89#gI\x80\xc4\x8d\x01\x12w\x0d\x90\x18\x90\xd8a\x80\xc4\x80\xc4c\xce\x07$\xf6^\x03H\xdc3@b@b@b@\xe2\x9e\xc5\x02;@bm\x80\xc4\x80\xc4\xd3!q\xcd\x01?\x1e$\x1e\xdb\x9d\xf1\xdf\xbahx\x81\x8d\x1a\x9f\xb75#\xd3\xcbc\xb3}\x96\xd3R\xb9e\xb8\xf5\xd1Sa\x87\xea\xe7d]IBs\xc1I\xb2c\xc9\x95 9/R\xdeF\xd5v\xb4L7\xbc\xbc\xd2\x1b^V\xc2\x8f\x9b\xb1\x1f$\xf6\x83\x04\"&@\xc4\xda\x80\x88%\x101\x101\x101\x101\x101\x10qm@\xc4\x8d\x01\x11\x03\x11\x03\x11\x93\xc9\x94\x13\x88\xb8g\xd3\x9c\x07D\x0cD\x0cD\x0cD\x0cD\xdc5 b b b \xe2\xde\x05@\xc4@\xc4\x1f\x01\x11\xc7\x03\xd6\x84\xa7qKp/x\xea_t\x9b\xe7$\xe1\xaa\x9b\xea\xae\xb3\x0dnQ\xad\x92\xb3\xbf?Z\xce\x19bn#\xfb1;\xe3)G{F\xb7\x8d\xcb\xd6\xfd\xc1F\xd1\xb4h\x11\xbd}B\xfd\xbe\xbf\x97\xe2?\x9c+o\x95\xa3\xa7,\xbb\xd5\xcf\xf9\xfd\xe5\xc5 -\xac\xb9\x05P\x1d\x8d&\xc6\x04\xe4\x08\x80*\x80\xaa\xf7L\x00Um\x00\xaa\xc7\x06\xa0\n\xa0\xea3\x00U\x00Um\x00\xaa\x00\xaa\x00\xaa\x00\xaa\xc6\x00T\xe70I\x00U\x00\xd5\xd6\x00T\x8f\x0d@\x15@\x15@\x15@\x15@\x15@\x15@\xf5S\x00\xaa\x0f\xb9\xe6VS\xc0\x8f\xb5\xe0\xd6|\x19}5\xe1#\xc5\x17\xfa\x8a\x88O\x15?\x15\xf6\\\xf2\xba\xcf2\x07`\xb8\x93\xdc\x93\xba\xa8\x8f\x96\x10\x1bo\x99\xf2Lb\x7fG8\xb8\x9bR]Y\xea\xef\xd4\xdb_\xeb0O\x9f\xab\xd7V\x7f\xc8wb6\xa6|B\xb8\xf9V\xf0\xb4\xaf\x08\x93\xfa\xc4\x959\xbal\x0e\xed\xba\xe2\xfe-\x069\xb4\xd9\xea]\x1b\xb1mu\xaf2FQtW*\xe7\xfd:=8\x05;Z[\x03]\x07]o\x0dt\x1dt\xbd5\xd0u \xba\xee6\xd0\xf5\xda@\xd7A\xd7A\xd7#gI\xa0\xeb\x8d\x81\xaew\x0dt\x1dt\xdda\xa0\xeb\xa0\xebc\xce\x07]\xf7^\x03\xba\xde3\xd0u\xd0u\xd0u\xd0\xf5\x9e\xc5\x92N\xd0um\xa0\xeb\xa0\xeb\xd3\xe9\xfa\xc7\xfe\xec1\x132\xdbS\xc9V[*\xfcP\xfd\xad=\xeb;*\xdaX\x8b)\xe2/L\xeeV\xac=\xfe\x0b)\x0f \xa1\x87\xcc\xa6\xd1\xdfT\xba=\xefI]\xaaG\xca\xd2\x1b\x7ft-\x18\x13\x8a\xe3\xc2[*z\x9bD\xd7\xaeK\xd5\x91\xc1E%\x933\xf3\xe0\x8cH\xd9\x1c8c=%\x93-HV\xb9c)I\xa9\xa4f\xe57\xbb\xde7\xd1\x0c\xf2\xcc\x84\x9c\xd5\xdb\x9f:\xc3\x91\x98\xa8\x0e\x87<\xab\x83s%\xbbf\xa5\x93b\xf1C\xc2\xd3\xa3\x10\xe0\xf5~5\x9d\xf06\xa5\xab\xafn\x9a\xa0\xa5\xd1\xb6L\xeb;r\xbd'\xec\x96%\x95*\xcc\x13G\n\x9dJ\xda0vM6\x98\xe85\x84\xba\xf25i\x00\x93\x0f\x8e\x02\x93\xc7\x85Y 090\xb9\xf7L`rm\xc0\xe4\xc7\x06L\x0eL\xee3`r`rm\xc0\xe4\xc0\xe4\xc0\xe4\xc0\xe4\xc6\x80\xc9\xe7\x90f`r`\xf2\xd6\x80\xc9\x8f\x0d\x98\x1c\x98\x1c\x98\x1c\x98\x1c\x98\x1c\x98\x1c\x98\xfc\x93\xc7\xe4\xe5\xd6\xcf\xc8\xcb\xadh\xfbG\xa1\xda\xe5\xdfT\xd37a\x82z\xf4\xd2?Y\x94<$\xe3\xbfZ\x9c][\x8b\xc674\x17#l\x9c\xf8\"\x12u\xde\xb7T\xac\x12z\xf0e\xdf\x1en\x90\xa0\xe9\xb1\xcd\xb8\xbd\xa5\x82\xa8c&JW \x96\xde[\xd6\x07\x94\xb9\xce\xfc\xa1\xe4\x07.X\xb9\x1a\x11*\x0c\xcf\xab\xc7\x1e\x95\x1f&\xd4K\xb7\xf9&uVh\xed\x82\xb9\xeb\xbd\x15\xc6\xf9\x1c\x92\x1d\xcd\x8aU\x96\xfa\x8a0\x08\xc6\xd4\xa77\xe07;|\xfe\xf5\xd7\xe6g\x92\xa5\xaa\xba\xea\xe8_\xc9\xf7\xae\x92\xf6\xd2\xda1\x9a\xb2#A\xc6b\xc5u?:~\xcd\xca2K\x99\xf7\x99 I%kO#\xacH\xb8\xee\x1d\x85n-\xf7\x96\xdd\xce\xd3\x99 ,\x91\xbbUB\xf3< *\x91\xbb\x0b\x9a\xe7NA\x89\xba2\xac$1\x17?\xa9\x8b\xf6HU$;*v\x93\xf0wX\xa5\xa1\x92\xab[j\xa3-\x92%-\x045\xda\x8c~s5\x08W]\xe4H+\xcd6\x1bV\x8a\xa6A\xb8F\xa2\x0f\xacH\xcdc%bG\xbf\xf8\xfa\x8f\xbd\x1cto\xac?\x13pF~b\xcettd\xfb\xd5\xf9\xf96\x93\xbbj\xad\x07)\xd9$\xdd\xfdg&D\xc5\xc4\xf9\x1f\xbf\xfe\xf2\x7fz``\xc96\xacdE2\x1c\xa5s\xbe}$\xa2\x01\xef\xf6\x1b\xc6\"\x02\xe6\xf5\x16\x12\xfd\xaeYM\xd3K\x9aH3ej\xa3\xa3\xba2\\\xb3\xc2M\xe5%?d\xc9Hf\xdc\xfe1\xe6\xf5\x92\xb1\x88\xd2\xf4\x1a\x9e\xc9\x8e\x86\x92$\xcf\x84\xc1\xfd\xe6\xb7\xee[s\xb7\xbc\xee7\x91\x94Jz\x82\x8b#\x98D\xa8!\x1a\xd3\x02)3\xb7\xccD\xabz\x1a\xe4\xffy\xcd\xdb\xbd\xe9\xbc~\xf3\xee\x85\xed\xcc\x9d\xe7\xe8\x01\xca\xbbY\x89\xb1 e\xf6\x08\xd4\x8c\x8d\x97\xba\x9b\x9b\xban6\x93\x05\xe3\x8da\xefp\x13\xc0\xdcY\x91\xe4\x95\xaf\xe4\xf2v\xe5\xeeB\xed\xe1\xf1B\xdb\xf2\xd8\x84\xea\xc9A7s\x9e\xfeQ\xdf<+Rv{\xc2\xdd\xa7\xb8\xbc\xbe\x9d\xab{\xb5\xf1\x91\xe3\x99Jm\xe6\xa1,\xe3\xab\xd1g\xdf\x1d\x04\xee\xeb\xc9?\xa4\xe7{n\xcf\xf9v\xdc\xdd%\xdb\xf3k\x96\x86\xf3\xb7\xe6\xb1\xb45\x9c\xaak\xfa\xcd\x8eY\xaej%\xba5\xbe\x12$\xa0,Q\xf3\n5\x196-\xa5\xe7)_G\xa8\xe6\x96/\x1f\xec\xe9\xf6n\xa7\xba\x93\xcf\xbf~9\\]\xf8\x1d\x15\xe4Pf \xab\xe1| nL\x9e9\xd6\xad\xd5\xca\xe0s\xd5]\xd5\xeb\xd5>\xff\xfa\xe5g\xf6\x86\x81\xe4\xfe\xfc\xed\x84\nc\x0b\x13Z\xd1\xb1\xbc\xeb\xf4\xddj\xcf\xfd\xf9[#\x12}V0\x96ZA\x80\x99\xf1\xebPg \xb5$\xcf\x8c*\xde\x06E\xb7\xd6\xe9\xad&\xc2\xdb%\x98\xd7\x91%\xab\xcc\xd3^\x92\xa6p_\xbf\xd1\xcf\xa1~ OC\x99\xf9\xd7\xe53\xf3\xaf\xbd\xcc\xfc\xebh>\xd6w\x7f\xa7\x85\xcc\xaa\xfd\x92Y \xd6\x87\xe1\x1d\xc9\x9b\xfa\x87z@8\xae\xc9\xa1\xb0Ig\xc0 z\xb5\xa8M\xcdW\x0d\x12\xae\x11\x9c\xcc\n~\xc8\xd9\x83\x15\xdby[r\xd1\xfb\xf5\xd8\x01\x81\x04]#&\xa1\x89\xcc\xae\xa9\xf47\x82\x83\x9eS\xac\xabr\xfb`%?\xba%\xb9l~q6PiPiPiPiPiPiP\xe9O\x9dJ\x1bPj>Nv\xa6\xff\xe8\xbe\xee\xf6\xde\xa9\xcdQ\x1d\xa6\xac\x9f\xcb\xdf\xe855g\xd8\xa3C\x06}\xe2\xc70\xdd\xb9\xcc\xf6\x8cW\xd2\x97\xcd\xc1\xab\xbf=\xbb\xf3\xfdN\xd9\xf9rlstC\xbe&\x82%\xfa\xd3]\xc3\xe0\xb6z]\xfaI\xdf\xe0\x85\x8eJ\xea\xec\xa8l\xf6\xceJh\x9e\x8b\x87(\x7f\xc9\xd8-K\"\x8boN\xeeq\xfaB\xe3kUd\xcd\xc7\xedh\xd2<\\\xd5\xa6Ug,9\xd9\xf67\xb7_\xd3\xe4j\xe1\x02\x8e~X\xb7W\xf24\x13\xfaK\x88B\xd2\xde\xb7\x07z\x0e\xe8\x9dd\xf7I7\x1fLL\xaeHB\x0f\xb2*\xd9\xa9\xa5\x18\xee\x0f>\x92\xdb\xe1\xe2iO~\xadf\xa2\xcd\xb1\xf9\xe1A\xf3\xcc\xd6\xd5\xd6\x9bSu\xb0\xdeU\xbc\xfed\xe8\xa1\xcc\nIx%\x0f\x95$i\xa5\xc7q\x9bc\xc2\x8a\x93?\xc4\x1c\x95\xeb<\xdbg\xb1\xfd\x81>\xb7\xd7\x1e\xf6\xf46\xdbW{\x92\xb3b+w\xaa]\x98\xd2<'\xebJ\x92\xbf\xb3\x92\x93=\xa3E?~V\x15:\xa1\xd3\xbf4}\x8c\xeb\xdd\xa0\xdeY\xf0\xa6S;\x1b|f\xd1\xe7\x8c\xa9_c\xec|s\xf1\xd4\x82\xc6tmmy\xfa_V\x8c|\xb6\xb3>\xc7\xd8\xffDS/=\xfd=\xbd\x8fTn\x1b\xce\x9dZ\xf2I\x9ff\xec~\x80\xb1\x97\\\xcfO\xa7: \xaa \xb7\x1e\xe8~u1\xb2\xf4\x0b|\xa8q\xce\xa7\x19\xfb\x1f`\xec%W\x7f\x8c\xf1T\xdfM\xab<\x9d\xaf.N\xf3\xdc\x94\xef4\x0e\xbf\xc6\xd8K\xcf\xf5e\xc6\x8f\xe0\x83\xaf\xc3\xd5'\xe2\x13\x8egO\x1f>\xd7\xff\x1a\x93k\xdf\xb7\x1e\x1f8\xc3\x83\x0f:FV\xb7Y\x9f\x81\x0c}\xcf\xa6\xfd\xf0\xe3\xc3\xd62\xd7\x87\x1d#}0\xef\x9b\x90\xfeO\xad\x1d\x7fT\xeba]1\xfc\xd2c\xa4\x1b\x16\xf8@\xe4\xe0\x93\x90\x0f[\xec\xfe\x87\x1f#\x0b=\xebk\x91\xfe\xda\xdf|\x1f\xf2a\x8b~\xfc\x05\xc8\xc8\xe2\xcf\xfbtd\xe0\xa3\xb0\xee\x8f\xca=\xac7\xba\x1f\x85\x8c\xf4\xc3\xac\xefHz\xbb@\xf3\xe5\xc8\x87-t\xf7\x0b\x91\x91\x85\x9e\xf5QI_\xa1\xedg$\x1f\xb6\xd0\x8e\xefDF\x96}\xf2\x17&\x87\x1e\xe9\xa5\x16\xfa\xa0\xe2\xc3z\xe4\xf8\xab\x91\x91\x0e\x99\xf7\xb9\xc9G\xef\x0f\xd7\x07$#=2\xeb\xdb\x93\xcd\x17&{I\x0d\xbf6\xf9\xb0>\xe8}\xc4\xd2W\xf8\x19_\x9el\xbf/\xf9\xb0\xe5\xe9|\xb6\xd2W\x9a\xc9\xdf\x9a\xac\xbf(\xf9\xb0%\xe9|\xa8\xd2W\x92\xc9_\x97\xac\xbf!\xf9\x10%a\x85\x0e\x94\xee\xd9\x9e\xf7\xd2\xee\x95\xa0wR\x1bL\xb5\x7f?d,\xd5\xe6\xa4d\xb2*\x8bUJ%\x1d\xc9s\xe7\xcc6\xe3\x9a\x82\xd9x*\xdf\x10s\x8e^9\xf5 \x850\\`\xf57\xc1\x0b\xfb\x93\xaf\x10\xc7g\x12\xf3\xbf\xaad=\xc6`\xbe\xf2I\x0d\xd43\xcf\xfd\xd4\xa2\xc4\xd4\x1e\xbd\x16q\xd5\xb4\x06_1\x86\xf8\x88\xed\x0f\xdc\xe8C\xcdg3y\x9am\x1a!\xbb\xe4\xe4;&w$+\x08/SV\xaa\x1fD\xb6\xafru\xea0\xa8\xc66\x1b\x96H-\x8edr\xb7Jh\x9e/\\n\x8f\x82\xd7\xe9\x0e=\xc0\x8c\xbb\xc3\x8c\xbb-<3\x7f\xd7\xebB4N\x15\x84\x15 \xd7\xf4W\x10\xf5\xf8\x1f\xb6T\xa6 \x06j\x05K\xb1j\xc1WS\x1bS\x1b<\xb9\xaf\x1c\xbb\xa1\x96\xc9N(L\xd7\x9eA\x9e\xed\xd8\xedg\x0f\x90\xe9~\xe6B\x83D{\xc6\x03d\xab\xf5eJ%{\xd1\xcbW\x9d\xe5C\xc9\x0f\\\xb0r5\xb2\xc6zx^\xbd\xf6\xb4\xfe\xd3\x96F\xe5\x90 y\xef\x05rV\xe7dG\xb3b\x95\xa5\xbe2\x0c\xa3I\xf6\xf4f\xdd\xb8\x8el\x9a\x9fI\x96\x92\x03-\xf5R\x8a\x92\xef]e\xeb\xa5e\x82\xbc\xf7V\xdcn[\x98\xba\x92[u\x96\xfe\x85\xdcz\xad\xef\x05\xcd\xf3\xd0\xe2mu||9\xb6:\xebI]P\xac\xc6\x9e\xbe\x1a[9\xd0\xbd\x18\xbb{\xa4I\x03K\xb1\x07G\xb1\x14;\xdc\xe1u\x0dK\xb1\xb1\x14\xdbmX\x8a\xad\x0dK\xb1\x8f\x0dK\xb1\xb1\x14\xdbgX\x8a\x8d\xa5\xd8\xda\xb0\x14\xdb_\xa7\xb1\x14\xdb\x18\x96bc)\xf6\xe8\"\\,\xc5\x0ex\xcew\x04K\xb1\x87\x86\xa5\xd8X\x8a\xdd\x1a\x96bw\x0cK\xb1\xb1\x14\x1bK\xb1}fc\x91X\x8a=\xb8\x00K\xb1\xb1\x14\xfb\x91-\xc5\xa6\xe5\xd6\xbf;x\xb9\x15m\xff\xa8\xc5\xf0\x7fSM\xdf\x84 \xea\xd1K\xffd \xe7\xbda\\'\xb5\xdeR\xb1J\xe8\xc1\x97}{\xb8\xb7\xec\xb2\x1e\xb7\xb7T\x10u\xccD\xe9*q\xfa\x92Jo\xd6=k\x8cg\xcb\x07\xdcz\x01\xd5:v\xec\xd6\xde\xf5\xde\n3.\xf11z+_i\xac\x1a\x0b\xcb\xf9uv2,\xe7_\xa0\x80\xa3M\xadWr,\xe7\xb7v\x7fy\xc6r~,\xe7\xc7r~k\x1faE6\x96\xf3c9\xbf\xb69\x95\x07\xcb\xf9\xb1\x9c_\xdb\xfdg\x18\xcb\xf9\xb1\x9c\x1f\xcb\xf9\xb1\x9c\x7fR\xf1\xb1\x9c\xdf\x18\x96\xf3c9?\x96\xf3c9?\xe9\x18\x96\xf3\x8f-\x1c\xc7r\xfe\x13K\x82\xe5\xfc\x0f\x1aK\xc5r~\xf3?,\xe77\x86\xe5\xfc\xd6\x96-\x95)\xc8\xb4\xe5\xfce\x03`eI\x0bA\xb54\xfa\xde\xb2\xbd\xc0\x9a\xfe\x07\xcas?o\xf1K\xfa\x1f\"o1\xeb\xfaO\\\x0b/\xff\xeb\xae\x87\x97\xb7#\xab\xe1?\xdc\x86\xd6\xc2\x7fh\x1f\xeb\xf8\x92\xf8\x0f\xb7O\xea\x92bA\xfc\xf4\x05\xf1\x1fn\xdd\xcb\xe1?\xdc\xe2\xc3\xe4\xda\xb0\x1a\xdeWI\x8d\x85\xba\xbc\xaea5\xe6\xd0\x0e\x17\xd5\x98E2\x82\xc4b6\xa5\x98I&\xba\x04\xa2\x97\xde\xf1K\xfb\x0c\x021\x8b:\x0c\xe8\xc2\xd0=\x03\xd20\x87.\x0c(\xc2\xf0\x0e\xfd\x1b\xcc\xa5\x08\x0d-\xe8'\x7f4%\x99C\x0b|T\xe0$\x12\x10\x15\xfd\x8f\x8d\xf2\xcf\x8e\xec\xcf\x8d\xe6\xbb\xa3\xf6\x0bE\xea\x97\x8c\xce/\x14\x91\x1f\x8b\xc2\xcf\x8b\xbc\x07\"\xec\xd3\xa3\xea\xc1\xe8yD\xc4|n\x94\xdc\x13\x0d\x9f\x19\x01_@/t4\x1e\xea\xd6\xd1\xb9*4\x18\xce\x0cv\xb7A\xedc\xb7/[\xba\x111\xa0*\xb4\xc8\xfe\xee-\xae:\xd6|\xf9\xc4\xaa\x16\x9b\x8d\x17\xd4\xb1\xf6\xfb4\xb5\xde\x89<\xfb\xe6\xed\xe5\xfb\xb7\x17\xaf?\xbc\xfd\xe6d\x99\xf3\x91L\xb1\xd1\xb4\xf1j\x9d\xbb\xcb\x93\xaa\xc1;\xa1\x92\xa5A\xb5`\xad\x13\x1cf\xff>7\x97\xf1dsS\xf6\xe6\xe8\x0b\xdfh\x90z\xa8:k\xd5\x9e}\xdcZye\xc5\xb7zY7\x11\xd9\xb6`e\xfd1\x1f;\x1f\xab\xb7\xea\xb1cJ\x9f5$;\x96\\\x0d\xe7wt\xab\xded\xa5i\x0d\xf6\xea\x94\x95\xd9uW6\xa8\xeeE\xb5\x88\xfb\xd9_\x9f\x93\xf7\xcf\xc9O\x9fY!\xf4\xf1\x1c\x80%\x87/\xbe\xfe\xe3\xd5\xe7\x84\xe5\xb9*X\xa2\xfa\xcf\xeb\x8f\xd0\x92Jz\xe3stIo\x1a\xa5\x1b\xbdi\x9d\xab\x1bV\xed\xe0\x87\x10\x83\x8e+\x9d\x8d\xec\xdcW\x10+J\xc7\xaeF:;\x19v5Z\xa0\x80\xd8\xd5\x08\xbb\x1a\x9d\x9ek\xecj\x84]\x8d\xf41\xecj\x84]\x8d\xb0\xab\x11v5\xc2\xaeF\xf7\x9da\xecj\x84]\x8d\xb0\xab\x11v5\x9aT|\xecjd\x0c\xbb\x1aaW#\xecj\x84]\x8dH\xc7\xb0\xab\xd1\xd8\xfe9\xd8\xd5\xe8\xc4\x92`W\xa3\x07\x8d\xa5bW#\xf3?\xecjd\x0c\xbb\x1aY[\xb6T\xa6 \xd8\xd5h\x89<\xf7\xf3\xf6\xfb\xdb\xd5h\xf6\xe7\x86,\xa0\xaf\x7f'\xee\xcf\x0f\xdd[\x89\x9c\x15\x1b[4\x1do\xd1\xa4\xb5VT\xf2rE\x93\x84W\x85<\xff-\xe1\x85\xa8\x9f\xe3?\xfd[7u\xbc\xf5\xd7:\x91\xd7&\x0d]\xa8\x8c\xe9\xb5\xc1okE\x86M\xff\xa90\xde\xb22/uU\x93\x8e\xba3+D\xd5A \xaf\xadB\xc6\xfe\xd0\xdb\xf1ix[{\xce\xa3\xdd\xfa\xc9z\xa0\xf6\xed\xa4\x8d\x82\xc2U\xd5\xd8 \xfd\xba\xde&\\\xecy\xab.\xaa\xc5s\xf6Qe\x05Y\xb3dw\xb4\x9b\x11i\xaa\xd6\xd9\xe0\x88Pu\xbcH\xa6mt\xe4\xd5%\xd4\xd6\x7f\x9b\xb1\xb7\xa8\x8b\xd0\xd6\x9d\xe6\x88\x19{\x86y\xab]`\x8e.\x9bC\xbb[V\xff\x16\x83\x1c\x1e\xab\xec\x06%\xfb\xc7\xf0\xc1\xe9\xa69\xac\xc9\xcd.\\\xc3\x1d\xbdT\xfe5?:\x96\x00\xeb\x84\xce\x8f\x9a\xe2\xfb\xcb\x0b\xbb\xb4\xad\xf5\x15\xb6\xee\x1a\x1c\xc5\xd6]1\xfd\x8b\xb1\xb9\x8bV\xbc Jl\xddeM\xce]\x14\xd3\xb5\x99\x0bd\xbc\xe9a\xeb.l\xdd\x85\xad\xbb\xa6/\xf0\xe9\xda\xdc\xc5>\x81\xfe\xc91\x03\xe8\xdaB\x0b\x82\xba\xb6\xe4\xe2\xa0\xae-\xb4P\xa8kc\x8b\x86\xba6o\x01Q\xb0\x0f\xc7\xd6]\x0e\xc3\xd6]\x11\xab\x99\xfc\x1d6\xb6\xee\xd2\x86\xad\xbb\xb0u\xd7\xe8\xa6M\xd8\xba+\xe09\xdf\x11l\xdd54l\xdd\x85\xad\xbbZ\xc3\xd6]\x1d\xc3\xd6]\xd8\xba\x0b[w\xf9\xcc\xc6\"\xb1u\xd7\xe0\x02l\xdd\x85\xad\xbb\x1e\xd9\xd6]]\xd8\xddI\xa8\xafF\xec\x9cS\x13\xb9\x06^\xeb\xa3\x0d\\\x95\xdc\x00}\xd2e\x82\x1b~D\xfd\x07\xb8\xa0\x85\xfe\xb2\xacF\x98\xbf\x97\xedon\xcfY\x99|\xf1\xf2\xfc\xfa\xf3s\x9agT\x9c\xa7\xac\xe0{?\xc1\x7f\xcfd\x99\xb1k&T\xdf\x9f \xc9JU\x83\xd5\x95D_i\xcf\xef1\xf7\xd7\xea\xf07\x9d\xa3\x8f\x96\xb6w\n\xdf5o\x18(\x1c?\xd1^n\x0b?\x1f\xd0\xb6i\x90\xf7\x97\x17\xc3V\x05R\x0bR;\x12\xa6\xbc\x87 g\xa8\x83\xd4\xfdA'\xa9\x935KQ\xfd\x97n\xbc\xa6\x17\xab\x1d\x19\xdd\x83\xe9k\x89\xbd\xd6^\xd1\xeb\xc3t\xeb{\xdd;\xfeh{\xb1\x9e\x0b\xbavB\xdd\x9d\xd7\xf9u\xbd6\xbf\xfb\xeb\xa6\x82\x0e\x10\x1d\xa0\xfb\xf8c\xea\x00\xbbS!\xf2`\x1d\xa0\xceQ\xa0\xe7\xbb\xd4\xc7I\xd9t\x80\xfa\xadH]M\xf6<\xadrf\xca\xe4\xec\xff\xde\xbe\xbf\xf8\xe2\xe5e\xf7\xf0\xa3\xed\xfe\xban\xe8Z\xb0\x0e\x86k\xa0]\x1b\xa2}\xe5\xaf\xa1\xc7\xab9\xba\x16\xc3\xda:\xb5J\xbd\x16\x98\xdb\xea\xc7\x94\x15\xb2\xa4%\xcb\xe9\x9dz\xe9\xe7\x1bra\x14\x9a \xcf\nA\xfe\xd7\x8b\x17\xbe\xb7b\xfd\xe0\x88\xe4W\xacp\x12\xd0\xbah\xd7\xfb\xd5\x8e\xf3\xab\x8fS\xba\xb7\x7f\xfd\x9e\xa8\xbbke\x03/\xaeY)\xb5\x0e\xb8\xcd\xbb\xaf\xe9rB\xad+|/\x9b\x17\\\x7f\xc7\xd4\x88\xe27\xac,\xed.v\xe4\x83\xf6 \x91\xbb\x92W\xdb\x1d\xa1\xe4{\xb1\xad\x95\xc7\x1fn\x89\xe4\xbe{\xfa\xc59\xdf\xebfd\xf5\xc7\x1d\x19s_\x90\xdc\xb5l\x9d\xac\xec\xfeg!\xd7\x07:'+1\xed\xb9V0\xa9R&\xc7\xbb\xb4\xf5\xae\xb1\x1dBw\x1f&\x7fw`,B\x98jR\x8d\x1a\xee\xed\x00o\xf3\xa1\x86\xf6~z\x18\xd91\xb2?\xfc\xc8\x1e5\xd8\xea^iu\xa0Y9\xf5]C_I\xf4\x95\xf6\xfc\xfe7\xa9\xd5\xe1\xcb\xce\xd1G;\xd0\x1e\xb9\xa0w\xf0#T&\xfdp\xfcK%\x8cE\xd4\x89Z\xb5\xdf\xae~0#Q\xc2\xd5(\x9c\xc8\xc0\x90\xe4\x89 \x19\x8b\xbf\xb5]\x7f\xb1\xa6\xfa\xab\xda\x05\xdfg\x05\xad\x83\xb8kF\xf6\xf4p\xd05\xc9\xed\x06=\xb0\xa6\xe1\\\x84\x06\xf3&\x1bb\xc7o\x84\xad\xb0\xea\x9ej\xe8\xb4\xc3\xb6\x90TVn}L\xed\xa6\x15\xbf)\\\x0b*\x8c\xd9[\x04\xf4P\xc6\xe9:\x91\xe6Y\xbc\xfd\xe1\xe7\xef\xc9\xb3\x97$+t4\xf59\xf9\xbc\x1etM\xe0\xf49q-J1\xc6n%+\x0b\x9a\xd7\x89\xf9\xd8p\xc4cbE\xe5}\xca\xaa\xcb\xf8\xf1\xdf\x7fx\xfb~\xf5\xf3\x0f?]\xbe\xbdx\xf7\xed\xbb\xb7\xdf\x8c\x9e\xfb\xfd\x8f\xdf\xfc\xfc\x97\xb7\xa3\xa7\xbd\xfd\x7f?\xbc}\xff\xc3\xeb\xbfxN\xac\x07\xc8\xe8\x0c\x84\xc7\xf3\xd6~\xd4OA\x15[\xcb\x96\xcc\x98\xae\x1f\x8d\xd8e\x07\xcd\x08\x07\x8d$ \x92p9\xc8\x91\xe5fbB\x8b\xfay\x9fW\x85\xf9157\x0f\xf0\xec\xbec_\xf5\xfe\xb2\xd3\x9cL\xe8T4\xca>\x9a\xfc\xd8H|\xc4\x1d\xeag\xf2\x8a\xd4\xffr\xa4O\x8bN\xfd\xf3'\x1d3\x8fnF\x88\xbe\x83\x8c\xfa\xa5fN /S\xa1G\x19_-Nx!2!\xed\xfbDx\x1a\xadz\x9fkf\xe6\xd2\xb4H\x07\x93s\xdf\x04\xf7@\xb7\xb6\xdf:n+\xfd\xa5\xa0\xcd\x89\xbd\xc9h\xe7g\xcb\xd0]\xa3\x99\xb1\x13\xde\xee\nv+WW\xecn\xe6\x04|T\x01\x1a\xd7\xc6\xea\\\xd4\x13f\xf5O+\x88\xa6\xc2\xee\xf3zI\xb7\xec\xbdY.zf\x8e{\x12k\x81\x92JV9\x92\x91=\x17\x920-3\xd6\xda\xe43\xf2Nvh\xe4A\xde\x91\xcc\xb7\xe2F\xbf\xc9h\x0dz\xc1\xc9\x9e\x97\xac\xd6\x9c\xbb\xea\xb0\xe4\x92z&t\xd1\xce\xf4\xac\xa7#\x11\x03\x87\xbe\xbd\xf6\xa2\xfeGw\xc1\xb9\x91\xc9w4\xd9\xbe\xf2v\x1dm\x96\xee\xe9\xc4|]\xda\x0d\x15\xea\x9d\xeb9\xc9d\xbb\x15;\xe9\xf4U\xca\x7f7\x99\xe8\xd7\x8f\x88\x00j;\x19\x8cz\x9fr%q\xde\xa6\x81\xe0)^\xb1\xdc\xc7\x1f\xfa\x15+\x14\x14\xea9\x7f,\xf2;\xbd\xc4\x8ao\x08\xdfl\x04\x93\x84\x97\xa4\x9f]\xd2Y+'\xd8\xd2\xdf\xb2\x18\xd9\xb7\xa0\xe3D\x93?\x9f\x1f\x07\xfd\x8e-\x8cv\xa5\x9e\xeceI\xfd\x9b\x9eXt7\x1e\xbf\xd9\xb1\xa2v|U4\xbd\xea`\xe2\xf7N\xa7\x96\xab\xc9{\xe3B\xb36\xc4\xecAs\xc5&\xfa\xb3\x9f\xfc=;\xd7\xb3#~\xc7\xbd\xd3\xf7=\xaf\xf7\x86\xf0\x0cOf\xd0\xef\xd6`\xdb\xdfW\xf9\xa0\xd74k\x1e\xba?\xbd\xdb\x90\x9cmd=\x9c\xdb\xf1\xbd\xf9\xd0\x02o\x1a\x88\xb9\x89\xf2\xf3\xfa\x8e0\x9a\xec\x08=\x1c>\xa2\x17\xbb\x83l{}p\xab\x8d\xf6\n\xe5Q]C\xb9\xd6\xc2\xe8\xb0pV\xa4Ybv\x002K9\xad\x07\xf5\x89\xb6\"u\x93\xcb\x8a$\xaf\xd2Ad\x97\x9a\xbb4ki\x07OL\xf7\xd8\x9d\xe9\x84\x1a\x85{s\xd6^b?\xbf\x13\x83\xa75(\x82\x96\xa2\xaa\xb1\xd4\x8c\xad\xbay\xb5\xedQ5\xb93\xdb\x9a\xb2m\xc1\xcb\xc1\x02\xb9\xba5\xf6oa\x9a7\x1e\xcb\x9b\x1e\xc9\xebD\xed\x1c\xe9\x8d\xc4\xf1\xe6D\xf1\xa6\x04)\x16\x88Q D\x81\x10\x85\xfb\xf8c\nQ\x0c\xe7\x01\xa1Fb\xdaV\xb3\xbfQY\xbfB\xb3\xac\xf9&\xd0\x8e\xdd\xb6s\x8c\xc1\x9ek\xba\x81\xf6\x12\xb4\xcd\xa8\xf7\xdb\x85g\xf6\xd09\xe9\x1e\x97\x10\xec\xb3\xad\x1a@\xd4DW\x7fr\xf2\xdcv\x89GS\xdc\xde\x8c\xf5{s\xd5\x85\xba\xe2\xd1\xec\xc6\x87\xbeep\x14}\xcb\x03\xf7-\xa1\xef\xc5\xda\x86fw\xc3<\x1e\xae\xe7\xbc\xcd\x0e\xf2\xdevqc\x99\x90\xfc^\xb2\x10\xd9\xd1\x98y\xd1\xf9o\xe3\x9b\x8ej\xf9\xf8\x87\x92&\xac\xddct\xf0\x8a\xa5\x0ff\x85yR\x9d]s]\xfd\xd5{}\xe3'u\xc9>ZOE\x82u\x7f\xc3\xab\xc2\xf1F\x18~\x1b\xec\xe5tGE\xfb\xa8\xcb\x8a\xbd\xf8\xb7\xfa\xcf\xf4\xb9y\x8e/\xfeM\xef;T\xff:\x9c\x00\xef\xbb\xfe:\xce\x8a\xabN\x99s{\x0cX\xfdWg\xc3<\xf3E\xd9\xafjI\xfe~#\xd0\xb2%\x9fu\xd9\x8ee\xdb\xdd\\\xa9\xa7{/k\x0cY\xc3\x8a\x87!\xeba\x87\xac\xe3\xb5\xb0\xf78\xd9LJ.\x84\xdeL[\x0d\x03k*\x93\xdd\xb9\xdeN\xbf<^\xb6\xda\xeb\xbf\xdf\xa8S/\xcc\x99O\xea<=\xd2\xee\xbbW\xa0\xae\x9d\xd0\xd5\x15\xdc\xb9\x013\x89\xa9\x12\xa3\xb2\x0c\x13\xd5\xad_bf\xdde]f\xe9\xb6\xdd\x0e~V\x1auP\xe6\xa4D\x9a\x8f\xdf\xcf\xba\xdal\x01\xaf\x1bF\xfc\xe5\xe8\xc3\x07G\xd1\x87\x8f\x85\xdeZ\xc3\xee\xca\xd8]\xd9m\xd8]Y\x1bvW>6\xec\xae\x8c\xdd\x95}\x86\xdd\x95\xb1\xbb\xb26\xec\xae\xec\xaf\xd3\xd8]\xd9\x18vW\xc6\xee\xca\xa3\xfb\xeabw\xe5\x80\xe7|G\xb0\xbb\xf2\xd0\xb0\xbb2vWn\x0d\xbb+w\x0c\xbb+cwe\xec\xae\xec3\x1b\x8b\xc4\xee\xca\x83\x0b\xb0\xbb2vW~l\xbb+7\xfc\xac\x93\xcc\xc9\xaa\xa2\x81v\xb3!\x95\xf7s\x8f\x01\xca\xbc\x9f\x9bh\x9e\xbbl\xd2\x1e\xd0;\x13\xc7\x8bx\x1e\xff\xe8\xf7:\xea\x17\xa9k\xf2#\xc0\xc5\x00\xca\x9f\x14V\x0b\xed\xb2\x10\x01\xf4#\xee\x15\x05\xf5#\xd2\x89\x03\xfb\x11 \x8d\xc0\xfd\x88\x14\xc6\x00?\x10\x7fk@\xfc@\xfc\xad\x01\xf1\x03\xf1\xb7\x06\xc4/\x81\xf8\xdd\x06\xc4_\x1b\x10?\x10?\x10\x7f\xe4, \x88\xbf1 \xfe\xae\x01\xf1\x03\xf1;\x0c\x88\x1f\x88\x7f\xcc\xf9@\xfc\xdek\x80\xf8{\x06\xc4\x0f\xc4\x0f\xc4\x0f\xc4\xdf\xb3X\xdc\n\xc4\xaf\x0d\x88\x1f\x88\xbf\xf3\xdbD|\xfd\x90\x88\xff\xf1\xd2w\xd5\xe0\xc3\xe4\xfd/T\xc8K\xb3m\xaa\x86\xf0v\xa7\xfb7w\xaf\xd3\xf4\xd1\xef\x1f\xaa\x0b\xe9\x03\x80\xb3\x16\xc6\xeb\x14W\xf7\xba<\xde\xdc\xe2\xb4\x0f\xbd\x8d\xdeD\x7f\xe1\x8e\x9ahI\xe8\x1enJJB\xa4\x94\x8cy\xd8\xd8\x181U\x96y?LDb\xbc`l\xd4\x17\xc6\x04+R\xff\x17\x88H\xec\xfdR&\xe4\x98\xf0\x80\xc4&\xa6;\xa7\xf1T\x82~&\x91\xbe&\x9d=Z\xc3gEf^\x19\xdd\xb7{\xbb\xf9-2\xb9\x98\x00jmz+<\xbdS\xa4\xc5\xde\xdd]\xf5\xd4\xa0J\x8b\xf6\x9b\x8b\xc7\xfb\xe6\x0dM?\x08\xff\xfb\xdc\x86y\xa3\xda\x04O\xc9o\x0f\xf9\x94\xc6\xf6\x16&\xe4\xc7JnyVl?\xd8\xaf\x7f~\xb8m\xa7\x93v\xb7\xd54\xbb\xce\xd2\x8a\xe6\xba\xb7\x18n\xbf\xd6\xb7mI\xaf3\xa9\xe1\xdd\xdb\x0f\x7fv\x9c\x16\xa3\x9a\x1a\xf1\xf9:\xe7I\xf03\xac\xa7\x0c\x11\x1b\xc6\xde\xb3\x84e\xd7sF\xba\x90\xb7\x1b?\xdf\xea\x19E\xcf\xc9f\xf4\xd3\xef\xaf\x9d\x11\x8a\xe8\xf3}\xfe\xf6x\x1a\"\xaa\xc1Q\x88\xa8\xe2{'\x88\xa8 \xa2r\x1bDT\xda \xa2:6\x88\xa8 \xa2\xf2\x19DT\x10Qi\x83\x88\n\"*\x88\xa8 \xa22\x06\x11\xd5\x1c\x1d\x12DT\x10Q\xb5\x06\x11\xd5\xb1AD\x05\x11\x15DT\x10QAD\x05\x11\x15DT\x10Q\xdd\xaf\x88\xea\x1e\xf70\x99\xaah\xe2\x16.\xae\xe4\xad\xb9\xcc'l\x1aP\xc8'u\xde e\xaam4\x964\x8a\x90!ej\x0cR&H\x99Z\x8b c\xd6\xf6\x90\"\x19H\x99\xba\xf6X\x9f\x12\xa4L}\x1b\xed\x16!e2\xb6\xd0\\\x04R\xa6\xd1\x8ep\xac\x03\x94\x902A\xcad\x0cR&m\x902A\xcatd\x902A\xca44H\x99\x9c\x06)\x93\xd3bgI\x9025\x06)S\xd7 e\x82\x94\xc9a\x902A\xca4\xe6|H\x99\xbc\xd7@\xca\xd43H\x99 e\x82\x94 R\xa6\x9e\xc5\xcaJ e\xd2\x06)\x13\xa4L\x9d\xdf&\xa9\x8c\xb0\x1f\xd4\x91z\xca^\x17)\x9fb\x8f\xfe\xabLk\x93\xcd\xc7\x81\xffF\xb5W\x93\xc2_\x019P\x84\x02k\xa9[\x8d\xeb\xb0\xc2\xbe6\x16\xd4b\x8d\xfa\xdd\xd8\x98\xf7\x8d\x85\x15YQ^1\x16\xe1\x1bc\xe3\xba\xac\xe8\xbb\xc6j\xb3\xa2\x13\x1c\xd5gE\xfa\x9eD\xfb\x9fL\xd0\xffD\x17\x83Dk\x80&$\x19\x13\xa9mma%\xd0\xa8bkT\xb3\x85'\xf7H\x9f\xdc\xb8\x8eki%W\x84\x96+N\xcd\x15\xf1\x0c\x02\x8a\xae\x88\xab\xa3\xba\xd51]\xd7\xe8}\xc2O`\xae\xba\xcb\x9d\xd7\x92\xef\xa1\xef\xea\x18\xf4]\xd0w\xb5\x06}\x17\xf4]\xadA\xdf%\xa1\xefr\x1b\xf4]\xb5A\xdf\x05}\x17\xf4]\x91\xb3$\xe8\xbb\x1a\x83\xbe\xabk\xd0wA\xdf\xe50\xe8\xbb\xa0\xef\x1as>\xf4]\xdek\xa0\xef\xea\x19\xf4]\xd0wA\xdf\x05}W\xcfb\xb56\xd0wi\x83\xbe\x0b\xfa\xae\xceo\x93\x04R\x13tPz+\xabUB\xf3|\xb5\xbe\xebJt|J\xa87\xfa\x8a\x0b\x9a\xe7o\xee~\xe8(\xbb\x1e\xaf\x12\xaa-\xa2\x0f\x96\xcd\xdaP*$o\x19 \xf6\x94lS\x15\x1e=\xce\xc8\xa5\x9aV\x07(\xdc\xc7\xde\xf8i\x8c\xa3\x93\xf1\"\x1a\x1b\x17GD$\x13\x13\x94\"\xcbJ!\xbc\"\x08\xc9g=\xf0\x94J:\xeb\xc2=\xdb\xcf\xbb\xe3\xbd\xee\x91v\xcf\xbb\xa3i\x15\xc6j\xc7\xb2\xed\xee\xde\xee\xc1\xaeY!\xefc'9\xe8\"\x06G\xa1\x8b\x88\xef\xc2\xa0\x8b\x80.\xc2m\xd0Eh\x83.\xe2\xd8\xa0\x8b\x80.\xc2g\xd0E@\x17\xa1\x0d\xba\x08\xe8\"\xa0\x8b\x80.\xc2\x18t\x11s\xa4\x05\xd0E@\x17\xd1\x1at\x11\xc7\x06]\x04t\x11\xd0E@\x17\x01]\x04t\x11\xd0E@\x17q\x1f\xba\x88G\xbe'M_\x8b\xd1\xd5\x17\xc4\x881~\xd2\xe7?\xa9\xf3\xfe\xf8\xd5\x18\x8f\x84\xd1\x85\xb7)\x19\x0dO\x85\xb4\x1c\x11\x97\x87\xf4\x1c\xe3\x8a\x8e\x87\xdc@&F\xd9\x11Q`c\xe3\xea\x8e\xc8\xa4b\xc2k\xc6\x16\xd4x\x04\xb7\xba\xf0\xe9<\"\n\xe4\xd7zD\\\xec\xd7{D\\\xfc\x00{3=\xc8\xaeL\xe3\xfa\x8f\xa5\xee4\xaa\x029\xe5FP\x82\x0c\x8eB \x12\xdf\xd5A \x02%\x88\xdb\xa0\x04\xd1\x06%\xc8\xb1A \x02%\x88\xcf\xa0\x04\x81\x12D\x1b\x94 P\x82@ \x02%\x881(A\xe6\x88)\xa0\x04\x81\x12\xa45(A\x8e\x0dJ\x10(A\xa0\x04\x81\x12\x04J\x10(A\xa0\x04\x81\x12\xe4~\x95 \x06\xff\xd7\x1f\x17Y\xf2\x1e\xf3\x94\x1f /6Y\xb9\x9f\xbc\x1b\xc7\x85\xb9\xeew\xb2)\x87-\xe5#\x81sm\x1d\x9b\x1d\x9b2\x8f\xb0\x1c\xfbH\xcdh:\xecV\xb2\xb2\xa0\xf9\xc9 \xdd\x13\x99\xee\x9a\xc8\xb6\x05\x95U9\xe76\xac\xe0\xd5v\xb7:\xf0\x1b\x97\xf6\xc6\\\xb8\xe6\x83\x8a\x0c*2mP\x91AE\x06\x15\x19Td\xc6\xa0\"\x9b#\xc4\x82\x8a\x0c*\xb2\xd6\xa0\";6\xa8\xc8\xa0\"\x83\x8a\x0c*2\xa8\xc8\xa0\"\x83\x8a\x0c*\xb2\xfbU\x91\xb5\xa8\xfe\xec\x8au\xd3\x0b\xc1pK\xbf\xa9\xed\xa2K&\xab\xb20\x8c\xb3\x8b\xfb\xce\x1aT\xae\x83m\xdbATJ\x97@u+c\xf8\xfbG5l\xf2B\xbf\x8d\xf3\xcdF0\xa9\xde\x04\xfa\xd9%\x1dX \x98<[\xd6[\x9e\xd0\x8b\xc3\x89&\x7f>?\x0e\xc2\x1e\xb60\xda\x95E\xb5ge\x96\xd4\xbf\xe9\xd6\x9c\xd0B\x95\xc7\xc4\x9dv\xac\xa8\x1d_\x15M\xa8o0+~\xa7S\xcb\x99\x10\xad\x0bMp\xac\x12\xca\xd5Wl\xa2?\xfb\xc9\xdf\xb3s\x07b\x02\x87{\xf3l\x9f\xc5zW\x9f[\xab4|\x1a\x03\x13\x06\xee\xd6`3\xd7PG{\xa9\x1dL\xd0\xa7\xfb\xd3\xbb\x0d\xc9\xd9F\xd6\x9a\x0c+\xd2\xa8\xa7\x9e:\x82m\x1a\x88\xb9\x89\xf2\xf3\xfa\x8e0\x9a\xec\x08=\x1c>\xa2\x17\xbbJ\x89\xf6\xfa\x90/;W(\x8f\xea\x1a\xca\x89,+F\xd4?\xb2\"\xcd\x12*Y\xc3\xb2\xac\x07\xf5\x89\xb6\"u\x93\xcb\x8a$\xaf\xd2\xc1\xc4\x92\x9a\xbb40q\xf0\xc44\x9a\xee\xc4\xb8\xd5\xd0\xd0\x96i\x18\xf2\xfe\xf9\x9d\x18<\xadA\x11\xf4\\\xbcd\xc2\x8a\x08t\xf3j\xdb\xa3jrg\xb65e\xdb\x82\x97\x03BP\xb7\xc6\xfe-\x8cgN}\xb0\xc3=u\x1c\x0f\xb0d\xd7\xac\xec]\x1azx\xf6\xec\xe1\x83\xcb:J\x9b\x92\xb9[B/\x1du\x0ffd'\xbcLY9\x9c\xf7\xff\x94\x15\x89\x1a\xb2\xb8\xd8s\xf1B\xa4W\xe4\xe5\xd9W_.\xea\x8d\xe9\"d=~\xe6\x99\xb0j\x92\x11%\xb2:\xfb/\x99\xa8\x9b\xfe\xa3U#\xb7\xd3\x82e\x05\x1e\x83N\x05B\x9c\xc1Q\x08q\xe2@\x0e\x81\x10\x07B\x1c\xef\x99\x10\xe2h\x83\x10\xe7\xd8 \xc4\x81\x10\xc7g\x10\xe2@\x88\xa3\x0dB\x1c\x08q \xc4\x81\x10\xc7\x18\x848s\xb4,\x10\xe2@\x88\xd3\x1a\x848\xc7\x06!\x0e\x848\x10\xe2@\x88\x03!\x0e\x848\x10\xe2|\nB\x9c\xe9t\x91g\xc5j}\xb7JY\xc1\xf7Q\x80\x91g\xc5\x9b\xbbo\xd4\xe9\xf6\xa4\xc7\x8b\x18y\xb6\xec\xf6\x1d\x1d'\x0dm$\xe4\x12\xdat'x\xe9x\xa8C=\x10\x13\xbef\xaa\x03\xd0\xdb\xe3\xd8 \x85\xc9p\xad/P\x9d\x04-lV\xdc\x03\xed\x0f?~x\xfbJ\x8f\xa8\xe6,;4e:~\xf2\xae\x90\xb6\xd161\xabn\xcbu$g&+\xae\x1b5_\xf5\x11\x0d>W\x13\xb3-\xdfr\xddD\xda\xda\x00\x80;8\n\x80\x1b\xd3*\x8c\x01\xe0\x02\xe0\xba\x0d\x00W\x1b\x00\xee\xb1\x01\xe0\x02\xe0\xfa\x0c\x00\x17\x00W\x1b\x00.\x00.\x00.\x00\xae1\x00\xdc9\x0c\x14\x00\x17\x00\xb75\x00\xdcc\x03\xc0\x05\xc0\x05\xc0\x05\xc0\x05\xc0\x05\xc0\x05\xc0\xfd\x14\x00\xee\xc7\xdcI!\xed@\xddE\x92\x9eL\xa3\xbb\x9fd ch\xfd5\x91\xdf\xcb'w|_\x9a\x91\x1f\x83\xbe\xa9\xbc\xcc\x8e;\x05\x08x\xc4\xd5\xc9\x8e\x16\x05\xcbW\xd9:\x99\x9dF\xf3U\x86\xa7\xdf\xa8\xfe-\xa1RUF3M\xaa\x0e\xdb\x92\xa6\x8c\\\x7f\xf9\xd4\xe58s]\xa7\xfe4'\x012\x0f\x8e\x022\xc7\x05) 3 \xb3\xf7L@fm\x80\xcc\xc7\x06\xc8\x0c\xc8\xec3@f@fm\x80\xcc\x80\xcc\x80\xcc\x80\xcc\xc6\x00\x99\xe7pZ@f@\xe6\xd6\x00\x99\x8f\x0d\x90\x19\x90\x19\x90\x19\x90\x19\x90\x19\x90\x19\x90\x19\x90\xf9> s< \x8eX\x88\xac\xd9\xdd\x07\xfe\xbbX\x83\xec\x01\xa6\xce\xd8\x0b(\xe4\xe0((d\\\x14\x8b\x80B\x82Bz\xcf\x04\x85\xd4\x06\nyl\xa0\x90\xa0\x90>\x03\x85\x04\x85\xd4\x06\n \n \n \ni\x0c\x14r\x0e\xc8\x03\x85\x04\x85l\x0d\x14\xf2\xd8@!A!A!A!A!A!A!A!\xef\x83B\xb6\xe9\xcb\xde\xf2\xbf\x05\x92\x8e\x07\x9c\xba79\x98\xaf\xd0\xae\xea]\x98i\x9e\xaf\xd6w+\x9a\xa6e\x98}\xfe\x85\nyi.\xb6\xfb1\xd3<\x7fs\xf7:M\xebx\xc0\xa3E\xa1\x9d\xb2>\x12<'X\x912\x07\xe246\x1a\x99*\xd9\xa6*\xd2\xd9\x97\xfbV\x05\xdb\xa3\x01\x7f\x18\xf3z\xc5\xd8\x88o\x8c\x8dy\xc8\x98\x1a\xe0K\x9ax\xf6\xaf\xaem\xb4\xc0\xc6B[a\xd7\x16\x95TLd\xcd\xd8\xdb\xf7\x17_\xbc\xd4\xaa\x01KC[\x16Z\xea\x99\"-\xc8[\xb9c%\xab\xf6\xe6\xe4@b\xfa\xb1\xb9g7\x92\xcf\xae\x0c)\x95t\xf6\xc5{\xb6\x9f\x7f\xe7\x82\x17\xc9\x12\xd1\xd9\xc1G\xdb\xbb&\xb3=\xe3\x95\xf7\x99/s\x93u\xce\x93\xab\xd5\x8ee\xdb\xdd=\xdf\x89]\xb3B\xae\xee\xc9o\x10\x81\x0c\x8eB\x04\x12\xdf\xd5A\x04\x02\x11\x88\xdb \x02\xd1\x06\x11\xc8\xb1A\x04\x02\x11\x88\xcf \x02\x81\x08D\x1bD \x10\x81@\x04\x02\x11\x881\x88@\xe6\xe8( \x02\x81\x08\xa45\x88@\x8e\x0d\"\x10\x88@ \x02\x81\x08\x04\"\x10\x88@ \x02\x81\x08\xe4~E F\x90Pj\xd5\x05\x13b\xc9\x9b\xc4\xcbA\xf8\xda\x04\xe1\xce\x8f\xf9eH\x03\xf2\xa3\xbd\xec\x8d\xba\xea\xcf\xfa\xa2'u>\x1f\xa9\xfe\x83\xddJV\x164_\x85Im0\x16\x14\xa4\xb3\xcb\xa7\x0b\x18;8\n\x18\x1b\x17\xcc#\x80\xb1\x80\xb1\xde3\x01c\xb5\x01\xc6\x1e\x1b`,`\xac\xcf\x00c\x01c\xb5\x01\xc6\x02\xc6\x02\xc6\x02\xc6\x1a\x03\x8c\x9d\xc33\x01c\x01c[\x03\x8c=6\xc0X\xc0X\xc0X\xc0X\xc0X\xc0X\xc0X\xc0\xd8\xfb\x80\xb1\x138iI\x93\x9c\x9d\xeb\xb5\x97\x13Y\xe9[uM\x07\x94\xfeN\x96\xcb\x83f\x82f\x82f\x82f\x82f\x82f\x82f\x82f\x82f\x82f\xb6\x06\x9a\xd9\x18h&h&h&\x99\x0c\xe4@3{6\xcdy\xa0\x99\xa0\x99\xa0\x99\xa0\x99\xa0\x99]\x03\xcd\x04\xcd\x04\xcd\x04\xcd\xec]\x00\x9a \x9a\xf9I\xd0\xcc\xc7\xb6\xb4\xb4\x83L\xbb\xdb\xd5\x8e\xb2\xd2\x1f\xd4\xb9\xbf\x0fJ\x1a\xdc\x8b7\x18\xfb\x01$m\x0d\x90\x14\x90\xb45@R@\xd2\xd6\x00I% \xa9\xdb\x00Ik\x03$\x05$\x05$\x8d\x9c%\x01\x926\x06H\xda5@R@R\x87\x01\x92\x02\x92\x8e9\x1f\x90\xd4{\x0d i\xcf\x00I\x01I\x01I\x01I{\x16\x0b\xac\x00I\xb5\x01\x92\x02\x92v~\x9b\xc4/\x1f%$\x8d\xfb\xf8\xf2wL\xfe\xa8O\xff}\xb0QS4\x1f\x84\xf3\xf0\xb40M\xb3\xde\xb2O\xcc\xcf\xdb\x02\xc1\xa4\xc1S\x9f\x95F\xb3\x95\xf0)\x89\xa4,g[*\xd9*\xf4E\xe2\x914\x84\xa4\xa5\x0c~tv4\xb4\xd6a\xaf\xde\xcf\xe7\xca\\\xa7AKi\x9f\x00\xd9u\xb7|\xee\x1a/\xf2\xac\xf0\x04\xfaL^\xd6\x9c\xe7\x8c\xba\xa2\xb4\x8dGt\\\x8eJ\x17y&\xe3e\x129\x15\xbb\x95\xcc\xf6!\";\xc3'@\xf3\x83\xa3@\xf3q\xa1]\x024\x0f4\xef=\x13h^\x1b\xd0\xfc\xb1\x01\xcd\x03\xcd\xfb\x0ch\x1eh^\x1b\xd0<\xd0<\xd0<\xd0\xbc1\xa0\xf99t\x1bh\x1eh\xbe5\xa0\xf9c\x03\x9a\x07\x9a\x07\x9a\x07\x9a\x07\x9a\x07\x9a\x07\x9a\x07\x9a\xbf_4\xdf\xe7\xbcK\xdec\x0e\x99\xef\"\xe3hB\xff\xc6\\\x04P?\x97\x8f\x03\xd4\xf7\x0d\xa0\xfe\xd8\x00\xea\x1b\x03\xa8\x07\xa8o\x0d\xa0\x1e\xa0\xbe5\x80z P\xef6\x80\xfa\xda\x00\xea\x01\xea\x01\xea#gI\x00\xf5\x8d\x01\xd4w\x0d\xa0\x1e\xa0\xdea\x00\xf5\x00\xf5c\xce\x07\xa8\xf7^\x03P\xdf3\x80z\x80z\x80z\x80\xfa\x9e\xc5BS\x80zm\x00\xf5\x00\xf5\x9d\xdf&A\xf4G\xbb\x86\xbe\xc7{\xa3Q\xfd[{\x15X\xfd\\D\x0eV\xdf7\xb0\xfac\x03\xabo\x0c\xac\x1e\xac\xbe5\xb0z\xb0\xfa\xd6\xc0\xea%X\xbd\xdb\xc0\xeak\x03\xab\x07\xab\x07\xab\x8f\x9c%\x81\xd57\x06V\xdf5\xb0z\xb0z\x87\x81\xd5\x83\xd5\x8f9\x1f\xac\xde{\x0dX}\xcf\xc0\xea\xc1\xea\xc1\xea\xc1\xea{\x16\xcbM\xc1\xea\xb5\x81\xd5\x83\xd5w~\x9b\x84\xd1\xdb\xf4\x87\x80u\xc9\xbbL\x86\xf5\x82\xc9\xf3\x84\x17\x9b\xac\xdc\x879\xbd\x81\xf4?1ya\xce~R\xe7\xee\x91\x02\xfa^\xa1\xba\xe6M\x8b\x8cB5\xcf\xf7\xc5IL(\xc9\xf3\x9d\xf1\xd6\x1e\x0d\xbb\x17\xd9\xb6\xa0\xb2*\xe7\x95\xb4m=\x13.\x07}\x1e\x1c\x05}\x8e\x8b^\x12\xd0g\xd0g\xef\x99\xa0\xcf\xda@\x9f\x8f\x0d\xf4\x19\xf4\xd9g\xa0\xcf\xa0\xcf\xda@\x9fA\x9fA\x9fA\x9f\x8d\x81>\xcf\x01\xb8\xa0\xcf\xa0\xcf\xad\x81>\x1f\x1b\xe83\xe83\xe83\xe83\xe83\xe83\xe83\xe8\xf3\xfd\xd2\xe7{\\)\xde\xdeD\x83\xd2e\x93\xf6\x10\xd4S\x80\xb7\x98F\xbc\xc5\x9b\xbb\x1f:\xe5z\xec\xe4\xfb\x91\x80\xc0\x003\x9f\x14\x02\xf3r\xf3Hr\x1eq\xb38z\x1e\x91\xd0\x08A\x8fHa\x8c\xa2\x83\xa3\xb7\x06\x8e\x0e\x8e\xde\x1a8:8zk\xe0\xe8\x12\x1c\xddm\xe0\xe8\xb5\x81\xa3\x83\xa3\x83\xa3G\xce\x92\xc0\xd1\x1b\x03G\xef\x1a8:8\xba\xc3\xc0\xd1\xc1\xd1\xc7\x9c\x0f\x8e\xee\xbd\x06\x1c\xbdg\xe0\xe8\xe0\xe8\xe0\xe8\xe0\xe8=\x8be\x9a\xe0\xe8\xda\xc0\xd1\xc1\xd1;\xbfM\xe4\xd0\xbf\x17\xc4m\x82[a\xc2}aNj@\xf7\x93:\xdb\x8f\x94l\xb7\xe5\xf3\xc1\xb9\xc7\xb7\xac{\xaf\xba\x902\xb8\x12\xdbM\x14I\x88*\x92\xb1\x12\x1b\x1b\xa3\x8b\xfa\x1c~\xc3<{\x91\x1b\x1b\xf5\x81\xb1QO\x18\x8b\x85\xec$\xee\xcev\xff\xf6@\xc0\xee\x8dV\x07\xfc\xb5\xdeu\xbd\xed\xe9E\x1d\xc3S??\x15M\xce\xbc)\xd9\x1c\xdb\x88\xae0\x9es\x9c\xbd\xc8\x96\xf5\x1e7\x86\xca\xdb\xb4c5^\xea\xc1\xd4\x96\x88\\\xa8\x1e\xc2z\x82|_\xe5Rd[\xf2\x13\x93\xcf \xa3\x89k&\xb7-\xe9u&\xefZ\xff\xb8F \x9a\x0bN\xf64k\x83\x8e\xcd\x0d\xaf\x98\xa6\x0f\"\xdb\x16\xf50$\xd4H\xcb\x04#\xb4t\x8do:F,9Iv\xcc\xfd6\xd0\x88*\xd4\xeb@{\xa75K\xa8z3\xa8\x03\x8e\xd9\xb6\xc86YB\x0bI\xb6T\x10A\xaf\xb3b\xdb\x86\x08\xa1\x90\x18\x1c\x85B\".\xc2N\xa0\x90\x80B\xc2{&\x14\x12\xda\xa0\x9086($\xa0\x90\xf0\x19\x14\x12PHh\x83B\x02\n ($\xa0\x900\x06\x85\xc4\x1c\x91\x01\x14\x12PH\xb4\x06\x85\xc4\xb1A!\x01\x85\x04\x14\x12PH@!\x01\x85\x04\x14\x12PH\xdc\x87Bb\x96ZA\xb5\x8e\xb0T\xe1/T\xc8KV\xa8*\xd6`\xce\xf7\xec\xd7\x8a \xf9\xe6\xee\xf7\xf3\xc1xU\xdaG\xc2\xcd\x1e`a~P\xfb0\xae~\x18\xd1?\x8cz\xc0\xd8\x98\x1f\xecYc*\x88(\x9f\x18\x8b\xf0\x8c\xb1)Z\x88\xc8\xfb\x8f\xeb!\x96TD\xc4k\"\xc2\xaa\x88\xa8\xc2\x8d\xba5\\\xf6\x05\xd5\x11\x91\xfa\x88\x85\x15\x12\x11\x1a\x89\x99* wJPN@91\xd6&c\"\xef\x04\xca ('\xbcgB9\xa1\x0d\xca\x89c\x83r\x02\xca \x9fA9\x01\xe5\x846('\xa0\x9c\x80r\x02\xca cPN\xcc\x11\x1f@9\x01\xe5DkPN\x1c\x1b\x94\x13PN@9\x01\xe5\x04\x94\x13PN@9\x01\xe5\xc4}('\x1e\xe4\x1b\x0d\xb3\xe4\x19\xa5\x11Z\x84\x15\x1aCY\xc6\x93:w\x8f^\x90\xe1\xa3q\xd8L\xa2gc8\x91\xc4\xc8(F}`l\xd4\x13\xc6\xa6\x08(\"\xee<.\x9eXN:\x11+\x9c\xc0f\x123\xa4\x12\xa3B\x89Y2 H\"\x08$\x11\xa3\x9dHLH\x9d@\x12\x01I\x84\xf7LH\"\xb4A\x12ql\x90D@\x12\xe13H\" \x89\xd0\x06I\x04$\x11\x90D@\x12a\x0c\x92\x889\xaa\x02H\" \x89h\x0d\x92\x88c\x83$\x02\x92\x08H\" \x89\x80$\x02\x92\x08H\" \x89\xb8_I\xc4#\xff\xdc\x86UH\x88\xb0D\xe2/T\xc8\xa1L\xa2~\x9d\xfe\x1d\xe8$\x1e \xa3\xc3\xc6\x15\xbd\xb3\xc6\x14\x17Q>1\x16\xe1\x19cSt\x17\x91\xf7\x1f\xd7^,\xa9\xbe\x88\xd7_`\xe3\x8a\x93\xd5\x18\x11z\x8c\x99\x8a\x0cwJPi@\xa51\xd6&c\xa2\xfc\x04*\x0d\xa84\xbcgB\xa5\xa1\x0d*\x8dc\x83J\x03*\x0d\x9fA\xa5\x01\x95\x866\xa84\xa0\xd2\x80J\x03*\x0dcPi\xcc\x11:@\xa5\x01\x95FkPi\x1c\x1bT\x1aPi@\xa5\x01\x95\x06T\x1aPi@\xa5\x01\x95\xc6}\xa84\xa6*&\x8eU\x12\xa2\xda\xefiy\xf7\x8a4lW\xe8,eL\xe8\xd0\xb6\xb9\xae\x0e\xe0\xcad\xa7\xab\xcb6\xbbf\x05\x11\x92\xca\xaa \x918\xb6\xa4\xf8\x9d(,\x1e [\xb3r\x8f\x11\xb0?\x1a^\x1ala2;\x9dX\xa5\xc1hB)\xcb\xd9\x96J\xb6\xa2{^\x15\xf3q\xbe\x90\xb4\x94\xab\xc54\x01!\xa5\x85\x95\x05\xe8;\xd6M\xc0\xdc\xd8\xfd\xe4\x8a<+F\x02\x82k\xcesF\xdd\xf1\xdc\xc6C\x8d6`v\xf9DN\xc5n%\xb3\xbd_\xbb2\x9a\xc6\x98\x8fzM\xd56\xa1N\xb0/\xcfu\x1faz\x91\xb4>\xa1m\xbdP\x05\x0c\x8eB\x15\x10\x17U&P\x05@\x15\xe0=\x13\xaa\x00mP\x05\x1c\x1bT\x01P\x05\xf8\x0c\xaa\x00\xa8\x02\xb4A\x15\x00U\x00T\x01P\x05\x18\x83*`\x0eX\x87*\x00\xaa\x80\xd6\xa0\n86\xa8\x02\xa0\n\x80*\x00\xaa\x00\xa8\x02\xa0\n\x80*\x00\xaa\x80\x8f\xab\n\xd0y\x0b\x88\x02\xbea\x87\x9c\xdf\xed\xf5:\xefZ\x15\x90\xb6\xbf\xd9\xd3{\xe4\xff\xa2\xb9\xc1\xa5N\xfcI]\x80G*\x01\xe8\xba\xa0kA$\x16\x06bv\xa5\xf7*K\xfd\xb8,\x10\x0b\xa2\xd7\xac\xa4[\xb6Z\xe7<\xb9\xd2(wV2\x11\xab\xdf\x1b\xc4\xbf\xa621\xd4\x98W\xf7\xf4\xc5\x83\xb6\\\xed]\xef\xbd\x80\"\xdb\x16,]\xdddE\xcao\xee\xed&\x1a\xb9o4<\xe2\xc5\x89w\xf1\x04\xff\xda\xad@V\xd5!\xa5\x92\xad\xf4\xae +\x13a^\x1dX\x990\x9f\xb4\xe2\xd4{g\xebd%KZ\x88\x0d+\xeb:\x12\x94aD\xdf\xd0\xebR\xaf.\x87\x8c\x10n2\xb6\x03\xc8h\xde\xac\xf4\xe3\xe97j\xacM\xa8T}\xae\x99\xb2\xeb\xeaJ\xbe\xfe\x1f\x9f\x7f\xf9\xf2\xe5\xcb\xa7\x8e\x8b\x1b\x19\x87\xdc\x95L\xa8a4T\x80\xc0\x1e$c\xbc]\xdd\xaa\xe0{\xff\xbb\xf7h) \x8bq\"\x92\x88\x89\xf8\x12r\xc1\xb3\xc2\x90<\xa6\xe6B\x92_\xb1\xc2\xc6kM!\xb2\xc2Lf\xd4|\x89\x166[~4\xf0\xc3\x8f\x1f\xde\xbe\xd2/\x18\xe6L;S\xcft8\xf9]!\xed\x1c\xa6 \xe1\x8b\x00\xa9\xb2\xd3\x1b\xf3\xfe\xe6\xbbagw\x8cz\x10V\xef\xab[\xbe\xe5z\xe6\xe0\x0e\x86\xdb\x8a\xb0\xafr\x99\xe9\x17\x01W\xd2\xa3.\x1e\x93*\x19\xa9\xd7*\xa1y~\xdf\x9dw\xf7V{z\xbb\xdaR\xb1\xca\xb3}vo7d\x05]\xeb\x1e\xafHW\x92\xb7\x83\xc6\x81\x15j\x92\x1b\xbamHj\xe5j\xde)\xaf\xa9\x97\xabU\xdb\x8ct\x1d\xf0\xc0y\x18oi\xef6f\x17\x1dK\x1c\xc9\x9a\xc9\x1b\xc6\x8av\xaf\x19\x0d\x05.\x0cKlw\xb5\xa1\x85+,\x90S\xc9D#{\x13\xcc)\x19\xb1\xdbn\xa9\x86\xf7o\xe4\xf3\x97\xff\xe7\xd1)\xb6\x90q\x03Ws5\xb4a\x83\xa3\xd0\x86\xc5\xd4\x7fc\xd0\x86A\x1b\xe66h\xc3\xb4A\x1bvl\xd0\x86A\x1b\xe63h\xc3\xa0\x0d\xd3\x06m\x18\xb4a\xd0\x86A\x1bf\x0c\xda\xb09\xf2*h\xc3\xa0\x0dk\x0d\xda\xb0c\x836\x0c\xda0h\xc3\xa0\x0d\x836\x0c\xda0h\xc3\xa0\x0d\xfb\xc8\xda0\x039W\xec\x96%\x95d\xab$\xa7\x99\x95\x1c\xf8\xbe\xb2si.yk\xae\xb8P\x17<\xa9\xf3\xf8H\xe5_\xbaT@e@e@e\xc6\x80\xca\xb4\x01\x95\x1d\x1bP\x19P\x99\xcf\x80\xca\x80\xca\xb4\x01\x95\x01\x95\x01\x95\x01\x95\x19\x03*\x9bC\x9b\x80\xca\x80\xcaZ\x03*;6\xa02\xa02\xa02\xa02\xa02\xa02\xa0\xb2O\x01\x95\xd5v\xa0[\xbbd\xd4\x07mf\xad\xd9/\xd8\xad\\]\xb1\xbb\x13\x973z\x83\x0e\xbd\x17\xfb\x7f\xf8B\x0eu.\xea\xef\xcd\xdb/\xbe\xaf\xd5\x88/\xec\x97\xdc/\xe9\x96\xbd7\xab\xef\xce\xccqOb\x9a\x13\xeadT\xb2\xcaq\x8c\xec\xb9\x90\x84\xe9\xc8\x96\x0e\x87\x9d\x91w\xb2\xd3\x00\x0e\xf2\x8ed>\xc8#w\xac\xd4\x1f\x9a'\x05'{^\xb2:\xcc\xe9\xea\xbc%\x97\xd4\x03\xb2\xa2\x9d\xe9]\x1b:\xf6\xdd~{{\xedE\xfd\x8f\xa2\xda\xafM\x90\xa6\x8e\xccv\xc2\x80\xbe\xf2v\x1d\x9d\xf0\xaa\x90+\x9d\x98\xaf\x0d\xddPA\x04\x93\xcfI&E\x1dp\x16\xa4*\xcc\xe2\xe7\xd4\xc4\xe0n2q\\?\xc6\x83>&+\x06\x82\x9aR\xf5:\xac\xac \xdb\xf7\x97\x17\x0d'\xad{\x03An\xd43s=\x1e7\xcfHxi\xd2\xd0\xec\xa7^\xe3Y\xf7-\xaa\x1f\xd6\xe1\xbd\xaeg\x9c\xee\xa8\xaf\xf8\x89\xef\xdb|\x07g\xc2%;0\x1d}yC\xcb\xe6!\x8d\x0c\xb8}\xb7\xe8\xfa\xed\x1br\xdb^\x04+L\x07G\xb1\xc24\xa6\x05\x1a\x036\x076w\x1b\xb0\xb96`\xf3c\x036\x076\xf7\x19\xb09\xb0\xb96`s`s`s`sc\xc0\xe6s\xc83\xb09\xb0yk\xc0\xe6\xc7\x06l\x0el\x0el\x0el\x0el\x0el\x0el\xfe)`\xf3\x87_a\xda\xa6\xdf\xa2\xfa\xb3+\xd6M/\x04\xc3-\xfd\xa6\xb6\x8b.\x99\xac\xca\xc20\xce.\xee;kP\xb9\x0e\xb6m\x07Q)]\x02\xd5\xad\x8c\xe1\xef\x1f\xd5\xb0\xc9\x0b\xfd6\xce7\x1b\xc1\xa4z\x13\xe8g\x97t`\x81`\xf2lYoyB/\x0e'\x9a\xfc\xf9\xfc8\x08{\xd8\xc2hW\x16\xd5\x9e\x95YR\xff\xa6[sB\x0bU\x1e\x13w\xda\xb1\xa2v|U4\xa1\xbe\xc1\xac\xf8\x9dN-gB\xb4.4\xc1\xb1J(W_\xb1\x89\xfe\xec'\x7f\xcf\xce\x1d\x88 \x1c\xee\xd5\xdbYGzW\x9f[\xab4|\x1a\x03\x13\x06\xee\xd6`3\xd7PG{\xa9\x1dL\xd0\xa7\xfb\xd3\xbb\x0d\xc9\xd9F\xd6\x9a\x0c+\xd2\xa8\xa7\x9e:\x82m\x1a\x88\xb9\x89\xf2\xf3\xfa\x8e0\x9a\xec\x08=\x1c>\xa2\x17\xbbJ\x89\xf6\xfa\x90/;W(\x8f\xea\x1a\xca\x89,+F\xd4?\xb2\"\xcd\x12*Y\xc3\xb2\xac\x07\xf5\x89\xb6\"u\x93\xcb\x8a$\xaf\xd2\xc1\xc4\x92\x9a\xbb40q\xf0\xc44\x9a\xee\xc4\xb8\xd5\xd0\xd0\x96i\x18\xf2\xfe\xf9\x9d\x18<\xadA\x11\xf4\\\xbcd\xc2\x8a\x08t\xf3j\xdb\xa3jrg\xb65e\xdb\x82\x97\x03BP\xb7\xc6\xfe-\x8cgN}\xb0\xc3m\xc9\x1d\x0f\xb0d\xd7\xac\xec]\x1azx\xf6\xec\xe1\x83\xcb:J\x9b\x92\xb9[B/\x1du\x0f\xb3{\x00\xe1e\xca\xca\xe1\xbc\xff\xa7\xacH\xd4\x90\xc5\xc5\x9e\x8b\x17\"\xbd\"/\xcf\xbe\xfarQoL\xd8\x1a\xa1\xe4\x7f\xd3\x8f\xd6\xf5\xe1\x14\xef\xe6\x08\xf5Eo\xd45\x1f\xcc%\x7f\xd6\x9f\xd1xRg\xf7\x91n\x920\xf6\xd1\x8f ^\xf0t\x1d\xd0\xe1\x0c\x8eB\x87\x13\xc7q\x08t8\xd0\xe1x\xcf\x84\x0eG\x1bt8\xc7\x06\x1d\x0et8>\x83\x0e\x07:\x1cm\xd0\xe1@\x87\x03\x1d\x0et8\xc6\xa0\xc3\x99#e\x81\x0e\x07:\x9c\xd6\xa0\xc396\xe8p\xa0\xc3\x81\x0e\x07:\x1c\xe8p\xa0\xc3\x81\x0e\x07:\x9c\xfb\xd0\xe1\xc4\xe3L\xfdQ\xf60\xbc\xfc\x86\x15|\xff\x81\x7fPg>\xa93\xf3Xie[\x9c\xde\xcf\xae\xd8\x0b(\xe4\xe0((d\\\x14\x8b\x80B\x82Bz\xcf\x04\x85\xd4\x06\nyl\xa0\x90\xa0\x90>\x03\x85\x04\x85\xd4\x06\n \n \n \ni\x0c\x14r\x0e\xc8\x03\x85\x04\x85l\x0d\x14\xf2\xd8@!A!A!A!A!A!A!A!\xef\x83B\xb6\xe9\xa7\xac\xe8\xd5\xbc\x93\x93\x0e\x01NZ\xc9\xdd\xf9\xf5\xe7\xe7k\x96\xec\xbe\xfc\xe2\xfc7\x9a\xa6%\x13\xe2\x9fa\xcay\xc1\x8bkV\xca\xd7\xe6\xe4'u\x9e\x1e)\xe7\xb4e\x8aDu \x9d\x83\xa3 \x9d\xf7\x10$\x0cu0\xb4\xd7\xac\x88\xed\x02\x06\xb8\xb0\xed\x01dYE\xf7-\x87\x92m\xb2\xdbA\xca\xf7\xd6\xb9l\xf9\xb5\xea[\xcc\x88\xb4\xd2E\x16\xe7\xbf\xed\xc5V=\x8d\xb1.F_t\xa9\xafyR\xe7\xeb\x91v0\xa6d\xbe\xca>\xeb3+);p\x91\xc9\x95v\x88\xbfZ\x07+\xde\xd8\xb7?\xbe\xe5%y\xfb\xdd\xb7\x9d\xba\xf8\x9c\xdc\xa8)\xcb\x81\x95\x89\x9a\xb0lu\xb4\xd5fEM\x95\xea\x9a\xe1k\n\x9c\xb0\xc2\xff\xa2t\xcdeVlW\x07Vf<\x9dY\xa6\xde\xf3\xad\x07\xff\xfa\xe5\xc2\xdc\x80\x98\x1b\xb8&\xf9\xbfV\xbc\xac\xf6K\xdc\xda\xeb\xd4\xef\xb3\"\xdbW\xfb\x81\x0f\xcd\x8e\x17B\xd2+\xa6a\x97\xa1x\xd7\\\x9a-4|\xf8\xd1n\xe0\xa1\xc1\x98o6\x95\xf0Bd)+Yj\xb8A\xbf\xdc\xe1L\xeb\xc6\xdami\xbdo\xa7\x98\x1dD\xcc\xdfz\xb2\xbc\xe1\xaeG\xab\x139\xef\xa6B\xde_^\x0c\xb3k^\xb8\xdb\xcca\x98=r\x10\x86\xd9\x07\x1df\xed8\xd4I\xec\xc4a6b(\x147\x99Lv\xab\xee\x80\xe1\x1b\x00\x7f\xd2\xa7~\xba\x03`&\xe8:g\xabV\x83\x10\xa8v\xbe\xaaNB\xd5\x9d\x8c\xd7\xaa:\x13\xaa\xaa\xa8S\x1f4\x0b\x11]\xf7\xdb\xef\xbe=\xb5\xdfn\x92@\xa7\x8dN\xdb}\xfc\xa1;mo?\x9a\xad\x93sz8\x88sY\xd2BlX\xa9\xdf.v\xb4(X.\xce\x7f\xb3\xffZe\xe9?\xcf\x0f\xbc\x94\xe2\xfc7\xf5?\xfd\xb7\xaa\xa5\xfcf\xd5\x0b\x05tz^Q\xed\xf7\xb4\xbc\xeb\xb5\xb3\xb7\xfa\x12\x1b\xe3\xb0{r\x99\xd6e\x12\xab\xdf\xd3\xcc\x0cN\xf5\x812K\xaa\x9c\x96D\x8b\nh\xd1N\x93m\xceH;;\xebu\xf5\xbd;\xd9\x13\x1em_\xef\xf2d\xd7\x82\xcf\xdc\xbe\x92t\x9d\x98\x98\x0d\xe7\x8e_z\xe3z\xc0\xae\xeb\xc2\xbd\xa0Sa\xd1\x7f\xc8\xef//\xd0\xe7\x11\xf4y\xa3\xbdV\xdc\xbb \x94\xefP\xbe\xfb\xce\x84\xf2]\x1b\x94\xef\xc7\x06\xe5;\x94\xef>\x83\xf2\x1d\xcawmP\xbeC\xf9\x0e\xe5;\x94\xef\xc6\xa0|\x9f#\x1e\x87\xf2\x1d\xca\xf7\xd6\xa0|?6(\xdf\xa1|\x87\xf2\x1d\xcaw(\xdf\xa1|\x87\xf2\x1d\xca\xf7\x1a\xb0v\x92\xe9\xbdJ\x1b\xac\xd1\xe1\x9d\x16nt_\x8bOT\xd9t\xc4\xac\x06\xee\x8e\xe4E\xbf\xe7\xdeGF\xa6aj\xad\xea_\xed\xa8\xd81q\xfe\x9b,i\xc2\x8e\x15\xb0\x0d\x86\xd6\xdb\x88\xfd\x99\x8a\x9d\x16\xe7fL5L\x9dB\xfd\xa5-\x95\x10\xc9\n\x13\x84\xc9\xd4\xcc\xdc\xa4p\xbc\x19\x99J\xe5I]\xbaG\xca\x94Ui&\xf1\xc4A>\xb57\x9ee\x05\xd9\xb1[\x1b\x98\xfa\xac\x1dw;n\xd3~w\xf9\xcd\x91\xa8\x1b87>\x9d/\xb9i\x1f.$7\xc0\xcf\xce\xe3\xc0\xcf\x1d\x03~\x06~n\x0d\xf8Y\x02?\xbb\x0d\xf8\xb96\xe0g\xe0g\xe0\xe7\xc8Y\x12\xf0sc\xc0\xcf]\x03~\x06~v\x18\xf03\xf0\xf3\x98\xf3\x81\x9f\xbd\xd7\x00?\xf7\x0c\xf8\x19\xf8\x19\xf8\x19\xf8\xb9g\xb1(\x10\xf8Y\x1b\xf0\xf3\xa7\x80\x9f5\xbc\xeb\xa4\xd0{\x8b\xfe\xe0F}\xcf\xfe\xc3R\xe2\xff<\xff\x8f\x16_\xff\xe7g\xff\xfd\xfc?\xf4\xd9\xddp\xe2G\xe0\xc1:\x93\x81\xe5\xc8\xe6sR\xfa\xa4\x96\x04\xe7\xb9\xa3\xa4\xc2O\x80\xcd\xf5O\xea\x12=R\x06|\xec\x90\xae\xc9\x8f\x00\xeaT]8!B\x15\x13\xe4!\xf66&|oGw\xbd\xc1\xa0\x1a\xb7U\xd5=?\xd6R\x08\x1d}\xf3\xa6\xa7C\x91%M\xd4(\x15\x06\x1a\x86\n\xda \xc2\xa6*\xb6\xd9:g\xe6\xb3`\xee\x91zM\x05[\xe9\x07\xb5\x94_T\x8a\xfd\xdal\xb3S\xb2\x9c\xde\xb14\"[1~n\xdbA\x7fbr|{\xe5\xbdw\x17?}\xf1\xb2\xb9\xb33A\x9d\x1b\xd1\xcc\x82\x9d\xe7X\xff\xd6\xcf\xa2\xa3:\xd0\xcf\xfc\xb8,\xbd\x92t\xdbC\xb3\xfb\xc0\xb0\xed\x8b1E\x83\xaa^[{\xf2\xf13\xeb\xdd\xb0=\xb1W\x1b;?\xdb \xb5\xab\x130\x16lp\xe1\xe6V\xb0[\xb9\xbabw~f\x1e\xacV\xa3\xe1\xe0^Q\xff\xe1k\x8du.jQ\x87\xfa\xa7\xa5#T\x08\x83\x80.\xe9\x96\xbdg\xbfVL\xc83s\xdc\x93\x98\xdeWO'\xa3\x92U\x8edd\xcf\x85$L3\x07\x0d*\xce\xc8;\xd9\x99\x9a\x1c\xe4\x1d\xc9|\xf8]\xeeX\xc94\x90*8\xd9\xf3\x92\xd5\x00\xca\xd5*\xf4\x8ec':\xb3\xca\n\xf9\xc7\xaf\xdci\x8c\xec-g6\xa8\x0b\xde\xea\xf3\xbf\xe5\xa5\xc6\x92\xcdF5\xad<\x86\xee\x1b\xc9\x8c\xc1\xadYA\xccM\x06qO\x1b\xe0\xd5\xb9q\xca\x16\x1c\xf7\xb3\xa7=Z\xfd\x82)\xfc\xa2\xd2\x85\xf9\xbc\xde\x97\x99\xd1K\xc7\xc3M\x17\x01\xd6\x1f\x8di\x8f\xb7Sc\xc0\xfa\xc0\xfan\x03\xd6\xd7\x06\xac\x7fl\xc0\xfa\xc0\xfa>\x03\xd6\x07\xd6\xd7\x06\xac\x0f\xac\x0f\xac\x0f\xaco\x0cX\x7f\x0e\x19\x07\xd6\x07\xd6o\x0dX\xff\xd8\x80\xf5\x81\xf5\x81\xf5\x81\xf5\x81\xf5\x81\xf5\x81\xf5?u\xac\x9fv@0yh\x86\xae3\x16\xf8\x80\xd3\xa5>\xde\xfbvS[\x96\xba\x13\xce\xd6\xc9\x8b:Q\xb2\xe7i\x953'\x00\x7f\xf7\xe6\xe2\x83=\xcd\xa4\xfb\xa4.\xde#\xc5\xdf]\xeft\xad\x97\x19s\xd2\xe0\x9b3C\x17\xf5\xbd\xd2Z\x10\xba\x85\x91\x9b`E\xbab\x05]\xe7,\x0dA\xf1\xe1f\x17]\x8b\x89\xd8\xf4\xefD\xcc\xffu\x00\"\xcd\x84\xf9\xb7\xaa\x16I\xc9\x85xa\xb6 \xd0\xfc\xdc\x93X]Q\x04\xd9\x94|\xaf\xa3\x9e\xbe\x86\xad\x13s\x0d\xae%KXv\xcd\x1e\xa6\xf4\x83\x9b-\xe8\x00\xdd\x85N*~\x04\xc47-k\x94\xdb\xeb_\xcd\x82|\xdb\xc6\xdf_^\x0c\xd2\x03\xb4\x07\xb4\x1f\x8dX\xc75\"@{@{\xdf\x99\x80\xf6\xda\x00\xed\x8f\x0d\xd0\x1e\xd0\xdeg\x80\xf6\x80\xf6\xda\x00\xed\x01\xed\x01\xed\x01\xed\x8d\x01\xda\xcf\xe1\xde\x80\xf6\x80\xf6\xad\x01\xda\x1f\x1b\xa0=\xa0=\xa0=\xa0=\xa0=\xa0=\xa0\xfd\xa7\x00\xed\xbd$\xddl\xbf\x7fN+\xb9;\xbf\xfe|\xcd$\xfd\xfc\x9c&\xe6\xeb\x07Y\xb1\xe1\xe7\xbf\xd14-\x99\x10\x81\xbd\xf0_\x9b\xf3\xdf\x15\x1b\xde\xd2u\xf3\x9b^\\_\xaf\x12\x16$\xe1\xfb\xbdyt4\xcf\x9bsL\xbc\xcb\xa6\xda{\x87\x7f\xea\xfcH\xc0\xffxj\xcf\xed\x11\xf9N.\xec\xe1G\xcb\xe2\x95SFH\xbc\xf6\x9b\x05\x9en_6\xed\xd0\xcc]\xdeP\xc1\xac\x0b\x16E\xf3\xf6\xf1\x87\xb8\xb47\xa0t\xa8\xd6\xab+v\x17\xba\xd6\x8b\xfb\xc6\xf2E\"\x90\xdfh\x06\x8d\xc5\x84\x8d\x8c\xcd\x02\x7f\x81\xf4\x8eb?\x81\x17\x88e\xe1\xdf(\xfe[\x1a\x00\xc6#\xc0\x85 \xe0<\x0c\x18HN94\x1a\x04\x9e\x8c\x02\x97\x86\x81\x13q\xe0\xc2@p\x1a\x12\x9c\x08\x05Cu\xb8\xc1\x85\xb1Xpa0\x18\x85\x06\x17\x84\x83\xa7\xe2\xc1Y\x80p!D8\x07\x12\x06\x12\xd3\xf8p\x1c\x13\xde\x0b(\xbc?Tx/\xb0p\x1a.\\\x1c\x18\xc6\"\xc3E\xa1a<6\x9c\x0c\x0e\xa7\xa3\xc3\xd1\xae\xf0\xb3\x08x\xb8\x00>\x1c\x01\x88\x91\x13\xaa\x08\x888e\xd65\x19$\x86\x06\xc15\xbff\x11(16\x7f\x0b\xe2\xc4)@qa\xa48\x0f*\x86j\x90\x18\xc7\x8a\xb3\xc1\xa2'5u\xb71\xb4\xb8\x14\\\x8c&d\x11\x80q\x12b\x1c\x89z\xcf\xc2\x8cciz\x83m\x0b\xc1\xc6\xe9\xce\x8c\x07\x8ece\x9b\x01\x1dgb\xc7 Y\x89@\x8f\xcb\xc2\xc7e\xf0cD\xdd8\x19AFC\xc88\x0c\x19\x0b\"#*\xcet\x189\x05G\x06\x80\xe4BHr\"\x94\x9c\x87%'\x81\xc91\xa7\x07\x9b\xd0\xd8\xb5\xf1\x80r9D9\x9a)o\xfbY\x0eTF\xa0\xca\xf9\xb0\xd2\x93\x9c:-\x84+\x17\x06\x96c\xc8r&\xb4\xf4\xa4e\xde\xa1Ca\x84qp\x19D\x97\xcb\xc3\xcb\xc5\xf1\xa5\x1f`.\x890c \xe6t\x8c9 d\xce@\x99Saf\x10g\x86\xe1R<^\x8aE\x9a3\xa0\xe6D\xac\x19(\xee\x1c\xb4\xe9I\xaa\x83\x0d\xe3\x9aD\x1c\xde\x0cT\xf9b\x1b\x06\x9c\x8b\"\xce\x11\xc8y?\x98s\xa9\xba8\x01uN\x81\x9d\xee\xe9AM3\xcd\xb7\xe1gq\xac6\xa21\xf8Z~k\x82\xfdZ\xb1\xc2\xf5ilrb\xfa\xbd8\xc4?\x9c\xeb$;\xe8s\xb8X\xd2,\x8b\xec\x12\xda\xde\xf2\xc9\xa3 \xa6\x1b\xb8>i3\x83e\x93=\xc3\xb2\xc9\xd8H\xd9Lz\x8ae\x931\xcct\x11b:\x87\x97b\xd9\xe4\x82\x94t\n#\x9dDH\xb1l\xf2T.:\x83\x8a.\xc2D\xa7\x13Q,\x9b<\x85\x84N\xe1\xa0\x0bS\xd08\x06\xba \x01\x8d\xe5\x9f\x8e\xc9<\x96M\xf6-\x82x\xc6\xce\x92&\xd3N,\x9b\x8cb\x9cs\x08'\x96M\xfaN\x1b\xa5\x9a\x13\x98f\xcc\x82\xbb)<\x13\xcb&\xe7\xac<\x1c\xe3\x97X6\x19\xcf,#\x89e\x0c\xaf\x8c\xa3\x95X6If\xf2\xc9 t\x12\xcb&\x17\xa0\x91\xa3,r.\x89\xf4\x8e\x9bX6ydX6\x89e\x93\x03[b [,c\x9cL\x18'\xf1E,\x9b\x9c\xc9\x14\xb1l\xb2\xb6\x98\xbd\x8e\xed\xc2\xb8N\x1a\xbd\xf7h{x\xb8\x86\xaf\xfe\xd9T\xe2n\x0ft_{%\x07Vx\x066K\xb6\xc4P4_\x11\xd6Qq\xd5~n3!5\xeb\xb6g8\x17nv\xa2\x08\xff\xbec\x05Ih\x9e\xb3\xd4l\x93K\x0b\x13\x192\xfb\x08?7\x01\xb4_Uvm\xa4'\xe1\x85\xa8\xd4hKv\xd9vg?=\xdb\xa4\xc77m\x85\xdaR\xa1\xa6ER\xcfN\xb6\xf5\x87m\x9b\x8f\xd4fE\xc2\xcb\x92%\xd2,\xff\xe9\x8e\x86N\xce\xf9\xa5=\xecZW\xfa\xe87x\xee?\xd3\xaeI`E`\xc5\x9e\x01+\x02+\xba\x0dX\x11X\x11X\x11X\x11X\x11X\x11X\x11X\x11X\xb11`\xc59d\x0eX\x11X\xb15`\xc5c\x03V\x04V\x04V\x04V\x04V\x04V\x04V\xfc\x14\xb0bk2\x939{\xd5\xb0\x1b\x1d\x88sR\xb6\xc1\x95-\xed:\x9em\x0d\xbe\xe8\xd9`\xb1\xfeW=\x9b\x9f\xed\x00\xe2\"S\xc6\x82$(\xcc\x81\nv+\xc7v\x00\x8dX\x15\xe9\x0d\x7f\x84\xd7F\xd6V\xe7\xa2f\xb1\xea\x9f6\x1aH\x850!\xcfK\xbae\xef\xd9\xaf\x15\x13\xf2\xcc\x1c\xf7$f@\xa5JF%\xab\x1c\xc9\xc8\x9e\x0bI\x98\x8e\xb1\xe9\xc0\xdc\x19y';M\xf1 \xefH\x16\xd8\xb5\xa8d\xfa\xb9\x17\x9c\xecy\xc9\xea\x80\xabk\x18\x91\\R\x0fR\x8bv\xa6w kS\x1b\xbdQ$}{\xedE\xfd\x0f\xb3\xa2V\x8d\xbdu\x8c\xb8\x13\x90\xf4\x95\xb7\xebh\xb30W'\xe6k\xcd7T\x10\xc1\xe4s\x92IQ\x87\xbe\x05\xa9\nS\x99S\x13\x0d\xbc\xc9D\xbf~D|[\xb4\xc6\xbaS\xbe.\xfa\xda\xdd\x18\xdf_^4\xdf\x17\x1d\x96#\xc8\x99\xb1\x9e\x16\xebi\x1d\x16\x138%\x00\xdf\x00\xdf\xde3\x01\xbe\xb5\x01|\x1f\x1b\xc07\xc0\xb7\xcf\x00\xbe\x01\xbe\xb5\x01|\x03|\x03|\x03|\x1b\x03\xf8\x9e\xc3\x8e\x01\xbe\x01\xbe[\x03\xf8>6\x80o\x80o\x80o\x80o\x80o\x80o\x80\xefO\x01|\x87\xd6\xd3\xb6H\xfa\xec\x8au\xc7\xba\x10\xe4\xb5T\x97\xda.\xd4,V\xd5a5\x0b\x1a-*k\x10\xb0\x0e\x86m\x07Q#\xcdtU\xb3\x1f\xc3\xba?\xaaa\x8d\x17\xfam\x99o6\x82I5S\xefg\x97t\x82\xf9z\xd1i{ +^\x99{u~k\xd7\xf8nh.F\x16\xf9\x12_h\xc4\xe1D\x93?\x9f\x1f\x07a [\x18\xed\xca\xa2\xda\xb32K\xea\xdftkKh\xa1\xcac\xe2B;V\xd4\x8e\xaf\x8a&\x147\x98\xb5\xbe\xd3\xa9\xe5L\x88\xd6\x85&xU \xe5\xea+6\xd1\x9f\xfd\xe4\xef\xd9\xb9\x03H\xeepo\x9e\xed\xb3X\xef\xeask\xc0\xecc\xe7&L\xdb\xad\xc1\x16GW\xf9\x00\xdf\x9a\xa0L\xf7\xa7w\x1b\x92\xb3\x8d\xac\xb5\x06V|PO\x0du\x84\xd94\x10s\x13\xe5\xe7\xf5\x1da4\xd9\x11z8|D/v\x15\x00\xed\xf5!_v\xaeP\x1e\xd55\x94\xeb\xf5\xf1D\xfd#+\xd2,\xa1\x925\xac\xc9zP\x9fh+R7\xb9\xacH\xf2*\x1dL\xfc\xa8\xb9K\x03\xfb\x06OL\xa3\xe3N\x0cZu\xdd=AM/\xb1\x9f\xdf\x89\xc1\xd3\x1a\x14A\xcf\x95K&,\xe4\xd7\xcd\xabm\x8f\xaa\xc9\x9d\xd9\xd6\x94m\x0b^\x0e\"\xf8uk\xec\xdf\xc2x\xe6\xd4\x07\xbb\xe6&\x95XL(\x11'\x93pD)\xfc\xfd\xeb\xc2\x12\x891\x81\xc4\x89\xf2\x88\x808btz2*\x8c\x88\x9b\xbf,+\x8a\x18\x93D\x8c\xe7i\x9e\x1c\xa2\xee\xd9\x1d \x8e\x89!\x16\x94B\x9c \x84p\xcb\x97B2\x88eE\x10a \xc4\x12\x02\x88(\x82?\"~\x88\x96>\xf8I\xdct\xd9\x83?-g<|\x11\xc1\xc3\x14g\xc5\x8a\x1d\xc6}\x12-t\x98!s\xf0\xe1\xd71\x89\xc3r\x02\x87\xd3\xe5\x0d\xc1\xe7}\xa2\xb4!J\xd80.k\x88\x115\x04\x9d=U\xd0\x10+g\xf0\x88\x19\x16\x902L\x102L\x971D\x8b\x18\x02\xec\xdf\x9b\x9d\xc05\xb1\xe2\x85e\xa4\x0b\xc1\xcc;\x8e\xcc\x12-\xd4QhGz\x1e\xc9\xc2\xc2\x82\x05\xbf\\a\xaeXA\xc7G\\\x19wK\x15\x96\x15*\xf8^\x83\xc7D\n^\x89\xc2\xb2\x02\x85\xf9\xf2\x04\x8f\x14a\x96\x10aTt0Mr\x10-8\x98(7\x98\"6\xf0J\x0d\xfc\xb9\x89E\xbeq2\x83\x89\"\x83 \x12\x03g\xd1\x96\x95\x17\xf8\xc4\x05'H\x0b\x9c\xd1\x19\xaf\xb0`\x9e\xac $!X^@pzM\x8a\x16\x0f\xc4J\x07\xfa#`\xfc\xb2\xde\x19\xabz\x07\xa9u\x17\xf5\xb6\xf7\xc7j\xdd\x9ea\xb5\xeeX\xa5lmad\x14\x0b\x8d\xe6a#obX\xad\x8b\xd5\xba\xad\xcd\x01L\xde\xc4\xb0Z\xf7\xd8\x16\x82M\xa7\xe1\xa6\x19\xc0i\x11\xe4\xb48t\x1a\xc5N\xf7\x00\x9e\xee\x0b=\xdd\x03|\x9a\x82\x9f\xe6\x02\xa8`\x1f>\x86\xa0\x16\x84P\xb1\x18j\"\x88Z\x1cE\x8d\xc3\xa8\x93q\x14V\xeb\x8e\xe6l\x1e\x9er&\x85\xd5\xbas@\xd5\x18\xaaZ\x06VE\x12\x98Q`5\x01Y\x8d.5\x9c\x88\xad\xb0Z\x17\xabu\xb1Z\xb7c3\xe0V<\xde\xc2j]kX\xad\x8b\xd5\xbaX\xad{l\xf3q\x9839\xac\xd6u^\x10\x05\xd0\xb0Zw9\x9c\x86\xd5\xba'\xc3\xb6e\xea\\4p\x8bGnq\xabu#\xbf~\xdb\xdds\xba\xfeMr\xbb\x89\xf2\xa6\x1f\xfa{\xd0\x0f\xe0\x9a\xbc\xac\xd6w\xab,=\xff-K\xc7\x17d\xbd6\x97\xbc\xb9{\xf7\xcd\xd1\xda\xac\xbah\xed\xda,{\xc0,\x1a\xacK\xd9s\xd1S\xe7\"\xb5?\x9e}\xf1\xd4\x9e\xedZ\xd0\xd5\xc9\xc4\x93\xdaE\x8f{m\xd7\xca\xfaf\x02#\x9c\xe6&\x9b\x98g\xeb\xea.\x14\xee8o\x94\x0f\x0f\x92q\xd5\x81Cb'P\xcd\xb9\xe0\xc3\x83\xa3\xe0\xc3q\xf1E\x02>\x0c>\xec=\x13|X\x1b\xf8\xf0\xb1\x81\x0f\x83\x0f\xfb\x0c|\x18|X\x1b\xf80\xf80\xf80\xf8\xb01\xf0\xe19\x88\x15|\x18|\xb85\xf0\xe1c\x03\x1f\x06\x1f\x06\x1f\x06\x1f\x06\x1f\x06\x1f\x06\x1f\xfe\xd4\xf9p\xd6\xed\x96C;8\x7f\xa3\x9e|\xa2\xde\xf2\x9e\xeb!\xa6\xc6\x86YJ\xb2BHF\x07OV\xfdnyr\x8f\xb16\xaf\xfb-e^3\x0d\x9a3\x96Z\x96\xb19\x1a.l\xa4^G\xf3\xd6\x8c\xa9\xcamw\xad%\xcf\xf2\xecJ\x87\x13\x077\x12\x9f\x99\xa0\x92\xad\xa3\xbd\xe4\xaaC\xaa\xdfW%\xafSQ\x95\x8bl*Y\x95M\xd8\xad\xc9i%w\x86\x84/H\xc1I\x9f\xc89v\xdfm\x1d\x1c\xf9\x84\xbaOd\xba\xe7\xfbO\xcf s\xff\xc7\xa0\xf8S7f\x8d\xdb\x7fx\x92>`\xcd\x92\xdd\x97_\xf85\x01o\xf4\xf1\xcb\x92m\xb2[[TA\xd6\x9d\x1f\xed\x051(\xdb\xc9\xfb\xdf\x1c\xa7\xf5hI\xbf)\xf7\xea\xa03;\x81\xf5\x86#k]\x0f\x8c\xe2\xfa\xfe\x03)\x0f\xc9 \xb1I\x9fg\xfecs\x12\x80\xfe\x91\x1f\x01\xf4c\x02\xc2\x04@\x1f@\xdf{&\x80\xbe6\x00\xfdc\x03\xd0\x07\xd0\xf7\x19\x80>\x80\xbe6\x00}\x00}\x00}\x00}c\x00\xfas\x988\x80>\x80~k\x00\xfa\xc7\x06\xa0\x0f\xa0\x0f\xa0\x0f\xa0\x0f\xa0\x0f\xa0\x0f\xa0\xff)\x00\xfd\x19\x88\xb4\xf9\xa2\xe5j}'Y\xf0\xbb\x96\xf5\xdaY\xc9\xc4\x07\xfe\x93i\xc8 /\xaeY)E\xf3\xd5\xcb\xd7\xf5Jju\x9azz\xbd8\xc4l\x9c\xea\xba\xb9=\xef\xd1b\xd5\xda\xb1\xc6\x03\x13\x90[8\xc0\xe1r\xc5(_u\xa7a\x1fb\xbb\x12\x1a\x80\xb5{\x01\x00\xab\xe78\x00k\xc7\x00X\x01X[\x03`\x95\x00\xacn\x03`\xad\x0d\x80\x15\x80\x15\x805r\x96\x04\xc0\xda\x18\x00k\xd7\x00X\x01X\x1d\x06\xc0\n\xc0:\xe6|\x00V\xef5\x00\xac=\x03`\x05`\x05`\x05`\xedY,\xec\x02`\xd5\x06\xc0\xfa_\x05\xb0F\xec\xa8m8j'\xa5\x05\x17\x04w\xa2 '\xa1^s\x83q\xd6k\xf8\xe0\x07\xaeYc\x87\xf5Z\xc6k\xfb\x1a\xc9I\xb7\xcc\xa72\xde\xdeM\xedy\x8f\x9e\xf1j\x07L\x82~\x81\x18Q\x14\xff\xed\xb9i\x94\xff\xf6\xa8\xf1 A\xe0_\xf7\x05\xc0\xbf\x9e\xe3\xc0\xbf\x1d\x03\xfe\x05\xfem\x0d\xf8W\x02\xff\xba\x0d\xf8\xb76\xe0_\xe0_\xe0\xdf\xc8Y\x12\xf0oc\xc0\xbf]\x03\xfe\x05\xfeu\x18\xf0/\xf0\xef\x98\xf3\x81\x7f\xbd\xd7\x00\xff\xf6\x0c\xf8\x17\xf8\x17\xf8\x17\xf8\xb7g\xb1(\x0e\xf8W\x1b\xf0\xef\xa7\x84\x7f\x8f\xe2\x02'\xf2\xdfI\xa0w\xcf\xd3*g+\xbb\xbf\xb3\xf0\x03\xde\xef\xf5\x89v\xd1\xaeh\xbf\x87\x9c\xe7\xa6U\xdcfBj\n\xa2\xcf\xab7\x8cn\xa2%\xb3\x19o\xff\xbeOjw\x81\x1a_8w\xfc\x08t2\xe7\x03\x82\xf6\xfe\xf2\x02\x8b\xe8\x1c\x17`\x11\x9d\xe78H]\xc7@\xea@\xeaZ\x03\xa9\x93 un\x03\xa9\xab\x0d\xa4\x0e\xa4\x0e\xa4.r\x96\x04R\xd7\x18H]\xd7@\xea@\xea\x1c\x06R\x07R7\xe6|\x90:\xef5 u=\x03\xa9\x03\xa9\x03\xa9\x03\xa9\xebY,5\x01\xa9\xd3\x06R\xf7_\x85\xd4\x9d\xb2\xa0\xed\xfc7\xd5\x1e\x03\x1b\x97\xf6\xa8\xdc\x9b;U\xbd\x9b\xc5m\xea \xf6\xd7\xb3\x91\xac\xd8p5\xda\xda\x9fU\xe26E\xff\xaa5\x93\xaa=\xed\xb1/]\xf3\xf10\x0f\xda\n\x83\xad0\xd6\x1a\x8d\xe8\xc4\x84D\x16\x07Zq8k\x0e\xcc\nC\xabY\xc8J\xdf\xc2\x93\xe0(\xb0Z\x00W\xcd\x84U\xde\x10\x7f\x1c\xaa: T\xcd\xc2T\x84\xe6\xb9\xcf\x8bq\x90j\x0e\xa2\n\x05\x8e\xa3\x00\xd5\xc2x*\nN-\x88\xa6F\xc1\xd4BX\xea\x14(5\x19I-\x00\xa4\x16\xc6Q#0jq\x14u? jq\x0c\x15\x0f\xa1\xe6!\xa8\x80\xd3\xc7\x00\xd4b\xf8)\x0e>MBO\x0b\x83\xa71\xect\"t\n \xa7\xd1\xe9\xc9(n\x8a\x9b\xbf,\x8b\x9a\xc6@\xd3x\x9e\xe6A\xa6\xbagw$8\x86\x98\x16\x04L'\xe0%7\x14\x0e\xc1\xa5e\xd1R\x18,-\x81\x95\xa2\xb8\xc8\x08R\x8a\x06J\xfe\xf8\xe6t\x98\xe4O\xcb\x19eX\x04#MqV,B\x1a\xf7I4>\x9a\x01\x8f|A\xed1p\xb4\x1c6:\x1d\x1a\x05\x9f\xf7\x89\xc0(\n\x17\x8d\xc3\xa2\x18T\x14t\xf6TL\x14\x0b\x89<\x88h\x01@4\x01\x0fM\x87C\xd1h(@T\xbc\xd9 \\\x13\x8b\x84\x96\x01B\xc1\xcc;\x8e\xccBA5\xf6q\xa4\xe7\x01A\x0bc ?\x04\x9a\x8b\x80t|\xc4\x95q7\x00Z\x16\xff\xf8^\x83\xc7\xd0\x8f\x17\xfc,\x8b}\xe6C\x1f\x0f\xe0\x99\x85wFQ\xce4\x90\x13\x8dq&B\x9c)\x08\xc7\x0bp\xfc\xb9\x89\x0d\xa4\xc7\xc1\x9b\x89\xe8f\x02\xb8q\x16mYh\xe3C6'\x00\x1bgt\xc6\x8bk\xe6\xc1\x9a\x10\x98Y\x1e\xcb\x9c^\x93\xa2\x91L,\x909m\xe1\x94\x81 \x0b\xad\x9e\xb2\x9c\xa6\xbb\x84\xaa\xcd\x17\xd6F\xf5\x0ck\xa3\xc6*kk\x0b\xa3\xa4X\x984\x0f'y\x13\xc3\xda(\xac\x8djm\x0ex\xf2&\x86\xb5Q\xc7\xb6\x10\x84:\x0dC\xcd\x00Q\x8b\xa0\xa8\xc5a\xd4(\x8e\xba\x07 u_H\xea\x1e\xa0\xd4\x14,5\x17L\x05\xfb\xf014\xb5 \x9c\x8a\xc5S\x13\x01\xd5\xe2\x88j\x1cR\x9d\x8c\xa9\xb06j4g\xf3\xb0\x953)\xac\x8d\x9a\x03\xb0\xc6\x10\xd62\x10+\x92\xcc\x8c\x82\xac (kta\xc7D\x9c\x85\xb5QX\x1b\x85\xb5Q\x1d\x9b\x01\xbd\xe2\xb1\x17\xd6FY\xc3\xda(\xac\x8d\xc2\xda\xa8c\x9b\x8f\xc9\x9c\xc9am\x94\xf3\x82(\xb0\x86\xb5Q\xcba6\xac\x8d:\x19\xc2-S\xe7\xa2A\\<\x8a\x8b\xfb\xc0Xgq\x12!\x0f\xfbY1\x9d\xad\xc0\xd7\xc4.\xf5q\xf2k\xc5\xca\x8c\x99\xaf\x88\xb5%\xa9{\xbd\xde\x8a\xaa\xd7\x95\xdc\x99\xab\x9e\xd4y\x7f\xa4\x0b\xa9\xbae\xefZ/3\xe6$\x13\x85\xb6\x83T\xeb\x80z\x0c2\x8b\xcc\x8e\x07\x81 P\x0b\xe3\xb4=\xbd]\xed\xd9\x9e\xaf\x1a\xfa\x13\xa0nQ\xea\xe7*+\xe4\x1f\xbfr\x9c\"oW\"\xdb\xae\xf2l\x9f9V\x95\x91\xe5\xee\xf1w\xb6J\xb8\x90\xab\x03+W\xeb;y\xaa\x9c\xdb{3U\x9akVf\x9b;s?\x96~\xf1\xf5\xd7\x9f\xff\xcf\x87\xba\x9d`\xc9\xe1\x8b\xaf\xffx\xf5\xf9\xf27\x8c\x80\xf9\xa6\xedE\xf1{K\xecm\x1b\x7f\x7fy1H\x0f\xc8\x1e\xc8~4^\x1d\x13\xf2%@\xf6@\xf6\xde3\x81\xec\xb5\x01\xd9\x1f\x1b\x90=\x90\xbd\xcf\x80\xec\x81\xec\xb5\x01\xd9\x03\xd9\x03\xd9\x03\xd9\x1b\x03\xb2\x9fC\xbd\x81\xec\x81\xec[\x03\xb2?6 { { { { { { \xfbO\x01\xd9\xc7\x80\xf4\xbf7$}[\xd2B\x06H\xfa{\xbbWi\x9e \x1d\x18\xfe\xe5u%w\xbc\xcc\xfen\xe2\xeb\xcf\x89N\xc0D\xf6\xd4#4\x7f25\xc4\xb6\x7f\x96N\xe4\xfe\x9d\xbe\xb5=\xf2hq{\xd7A]\xfb\x18\xdc\x8bv}\x1f\x8e\xfcx\xefA\"\xeeC\"\x18\x1b\x89\x0b2\x91\xc8XMmSy[01w\xd0%0s_\x9a\xbb\x91q\xf6Ff\xf0\xb7p\x01\xea}[c\x18\x1cY\x8a\xc3\x91\x99,.\x98\xa0rn4\x8f#\xa7392\x99\xcb\x05\x93j\xf7v\x8dgsdi>G&2:2\x95\xd3\x85kv\xc3\xf0bY\x1dY\x9a\xd7\x918fG\x96\xe4v\xe4dvG\xe6\xf1;\xb2\x14\xc3#\xb38^\xb89P\xc1\xd2q\x96G\xee\x87\xe7\x91{dz\xe4~\xb8\x1e\x99\xc8\xf6\xc8<\xbe7\xd6\x05\xc71>\xb2,\xe7#\x13X\x1f\x99\xce\xfb\xc8\x0c\xe6\x17\xd1e~\x16\xc1\xfd\xc8\x12\xec\x8f\x8c\xf1?\x12?=\x8b\xe0\x80d\xe2,n2\x0f\x0c\xa6\xa6Ya\x04\x13$\x13r\xb9 \x1b$\x93\xf8 Y\x9a\x11\x92\x99\x9c0\\\xaf\xc48+$\xf3y\xa17=u\xc71fH\x16\xe3\x86$\x1e\x7f\x91\x18~H\xa61D2\x16\xd8\x9e\xc9\x12ID\xba\x81\xa8\xdaB\\\x91\xccrn<_$\x11\xa5\x9c\xc1\x19\xc9\\\xd6H\xc2@%\x8a9\x92\x85\xb9#Y\x88=\x92\xb8\x1as2\x83$\xf1\x1c\x92D\xb2H\x12\xcd#I\\\x85\x9a\xce%\xc9$6IB|\x92,\xc5(\xc9TNIf\xb2J2\x8dW\x92\x88\x870\xd2\xcc\xc6\xaf\x8f\xe7\x97dA\x86Ib\xb2\x16he\xcb\xf1L\x12\xc34\xc9 \\\xd3\x9b\xa0:1\xc46\xc9\xd2|\x93\x8c2N2\x97szS3\xef\xf6\xe10\xc78\xef$a\xe6IfqOoRA\x1eJ\xe62Qoj\x81]\x80\x8d-\xc7FI\x14\x1f%3\x18)\x99\xc6I\xc9\x1cVJ&\xf3R\x12\xeeE\xc8\x08\xc3\"\x138V,;%s\xf8)\x99\xcaPI\xb8\xe0sX\xaa7\xb1\x0e\xa9\x8cm2qL5\xd8 \x8am\x98\xab\x92e\xd9*\x19\xe3\xab$\xccX\xbd\xd7\xcce\xafd\xc1\xba;\x81\xc1\x92I\x1c\x96x'(\xec\xf6\x90\x95\x11\xec.J\xb5\x9dR\xc9^\xc8l\xef\xf3\xb2\xccd\xce\x82!\x10u1\xb9\xd9\xb1\xa2%\xb5\xa6:\xea|2\xdd\n\xea\xeay(\xab\x82\xa5g\xe4\x9d\xff\xd5\xbd\xa8\xf2\\\xd5\xf1nz\xfeG\x99r&\x8a\xa7\xd2Dx\xa9\xc9K\xeb\x1f\xf2\xcc\x04\xe5\x12^\xa46\xc2\x1fZ\x85\xf0K\x0f\x8c\x06*\xeb\x9e\xde\x11z8\xe4:j\x9c\x15:8E%k3\xec\x9a\xc8\xf6BJ\xffp\xfbS\xb3l\xb2\xcd\xae\x99 \x07V\xee3!t\xae%'\xec\x96%\x95'\xb2\xa6\xeekgqv\xdacF\xc6\x8e'\x94g\x8e\x07\xb6\xf10W\xcf%Bc\x8b\x06\xe2\x1b\xa6\xdd\xa0{\xd5d[n\xefHk@\xf1k;\xd0mVx\xea\xf3`5z}b\xb3\"\x9d\x16\xdd_\xeb\x95\xbd.\x8eo,H\xb5\xc3<\xbb`\xb7ru\xc5\xeeN\\\xd7\x1c\xf7\x19.O\xfdhsQ/mV\xff\xb4\x84\x81\na\x90\xca%\xdd\xb2\xf7\xec\xd7\x8a yf\x8e{\x12\xfb\xb5b\xa5\x11X\xa8d\x95'\x19\xd9s! \xd3qz\x1d\xe0?#\xefdgx9\xc8;\x92\x05>J\xaa\x1a|\xc9H\xc1\xc9\x9e\x97\xac\x06:\xae)\x95\xe4\x92\xce\xfd\xe4\xea\xe8\xaa\xf4\xf1\x8eK\xdf^{Q\xff\xa3\xa8\xf6k\x13F\xae\xd7\x92u\x16.\xf9\xca\xdbu\xb4\xde\xf1}\xa5\x13\xf3u\x1c7T\x10\xc1\xe4s\x92IQ\xe35A\xaa\xc2T\xe6\xd4\x10\x84\x9bL\xf4\xebG\xc4\xaaw#\x81\x89Z\xf5\xee\xba\xfc\xfcu\xbf\x91c\xc3zkX\xfd\x8e\xd5\xef\xada\xf5;V\xbf\xb7\xb6\xa8\xbaf\x8a\xb2f\x92\xaa\x06\xab\xdfOU\xd0\xccP\xcf,\xa2\x9c\x99\xae\x9a\xc1\xea\xf7ST2S\x1423\xd41X\xfd\x8e\xd5\xefX\xfd\x1e\xabnYT\xd92G\xd5\x82\xd5\xef\xbe\xd3F\xd5+\x13\x94+1\xeb\xa6\xa7(V\xb0\xfa}\xce\x02\xf21E\nV\xbf\xc7+O\"U'1\x8a\x938\xb5 V\xbf\x93\x99\x8a\x92 j\x12\xac~_@-2\xaa\x14\x99\xab\x12\xf1\x8e\x9bX\xfd~dX\xfd\x8e\xd5\xef\x03[b%r\xac\x82c\xb2zc\x92r\x03\xab\xdfg*4\xb0\xfa\xbd\xb6\x98\x0d\xeb-\xc6\xee\xa4\x91\x15\xaf\x0cK\xed\xfc\xd6nZ\xbf\xa1y\x0f\xe99\xa3\n\xfd\xc4\xd9\xfd$\xbe\x17\xdbU\x8d}:\xd7\x84\xc2\x00?\xda\xf8\xf1\xf3\xde\xc5\xcf\x8d\xe0C\xc3L]\xa1\x0dI\xd6\x83\xa9U\x05\xec\xa9Lv\xc3\x8a\xbd\xcd\xaeY\xa1R:\nI,X\xcaV\x10pv\xc5\xee|\xe5\x1c\x10v\x8b\xd4\xa9\x1d\xe2J\xbd_\x81\x0e{Z\xcakQf\xc3\xdfu\xb0r;\x88\xea\xe9\x12\xa8ny\x8c\xa9\xff\xa8<\xc5\x0b\x1d\xcd\xe0\x9b\x8d`R\xbdI\xf5\xb3K:\xb0E0\xb9\xb0\xb7<\xa1+\x87\x13M\xfe\"\xeb\x8b-\x8cveQ\xedY\x99%\xf5o\xba7Lh\xa1\xcac\xe2v\xaa\x0eY\xc7WE\x13*\x1d\xbcU\xbc\xd3\xa9\xe5L\x88\xd6\x85&\xb8X \xe5\xea+6\xd1\x9f\xfd\xe4\xef\xd9\xb9\x03\x85\x82\xc3\xbd\xfa\xcb\x03\x91\xde\xd5\xe7\xd6|\xdf'\\0a\xf4n\x0d\xb6j\x80*\x1f\xe0u\x134\xeb\xfe\xf4nCr\xb6\x91\xb5\xd0\xc3*?\xea\xa9\xbb&\x00\xa6\x81\x98\x9b(?\xaf\xef\x08\xa3\xc9\x8e\xd0\xc3\xe1#z\xb1+\xbfh\xaf\x0f\xf9\xb2s\x85\xf2\xa8\xae\xa1\\\x7fa\x84\x18YW\x9a%F\xd4eX\xa0\xf5\xa0>\xd1V\xa4nrY\x91\xe4U:\x98\x98Ss\x97\x06\xc6\x0e\x9e\x98F\xfb\x1dF\xa0\x86\xd6\x8e\x9ci\xd0\xb9\xfc\xfcN\x0c\x9e\xd6\xa0\x08\xba\xfb-\x99\xb0\"\x0c\xdd\xbc\xda\xf6\xa8\x9a\xdc\x99mM\xd9\xb6\xe0\xe5\x80\xb0\xd4\xad\xb1\x7f\x0b\xe3\x99S\x1f\xec\x9a\xf3\x9cu\xd6\xf8;\x1e`\xc9\xaeY\xd9\xbb4\xf4\xf0\xec\xd9\xc3\x07\x97u\xe4;%s\xb7\x84^:\xea\x1e\xac\xd0\xec\x99\x97)+\x87\xefM?eE\xc2^\x11\xb3\xe7\xcd\x0b\x91^\x91\x97g_}\xb9\xa87\xe6l\xb4sn\xa7 \xe7\xbf\xd9\x7f\xfc\xd3\xa4\xe0\xdaz\xe7;s\x86\xd1\x08YgtU|\xbf\xe8#\xfd\xfdxT\xa3\xb6)\xd7\x8f\xbe\xf74\x9e:\xfd\xf2\xc7\xa7\xf6\xdc\xe3\xfdy\xea\xfb?\xa9=\x84mzF\x05:v\x9e9\x1bN\xd9\x078\xfbzl\x13\x84m\x82\xb0MP\xc0N\x14/\x91\xc9\x02\xa6`R\xd8&\x08\xdb\x04\xcd\x159\x91yB'\xb2\x94\xd8\x89\xcc\x12<\x85\x9b\x03\xb6 \x9a&\x80\"\x13EPd\x9e\x10j\xac\x0b\x8e\x13C\x91e\x05Qd\x82(\x8aL\x17F\x91\x19\xe2\xa8\x88.\x13\xdb\x04\x19\x9b,\x9c\n\xa6\x86m\x82\xb0M\xd0\xc0\x96\x11X\x91x\x9d\x10\x89\x11Z\x91ib+2\xa6\x00\x98)\xba\"\x11\xe9Fl\xfar\xa2\x00\x8b\xccrn\xbc\x10\x8bD\x94r\x86 \x8b\xcc\x15e\x91\xd1\xfdK\xc6\xc5Yda\x81\x16YH\xa4E\xe2j\xcc\xc9b-\x12/\xd8\"\x91\xa2-\x12-\xdc\"q\x15j\xba\x80\x8bL\x12q\x11l\x134\xbe\x97N\xf0\xf0\xe8\xf5\xf1B/\xb2\xa0\xd8\x8b\xc4d\x0d\xdb\x04-+\x04#\xa3b02W\x10\xe6M\x0d\xdb\x04a\x9b \x8fM\x16\x95\x91\xc9\xc22\x82m\x82\x9c6Gt\xe6M\x0c\xdb\x04\xd5\x86m\x82\x1c\xf6\x91\xb7 \n\xef\xb4qL\x97 \xbb\x95\xacH\x05\xa1\xcdnArG\xd6\\\xeet\xd5\xa1iZ2!<\x8b\xaf\xecHP\xef3\xa3\xdaN\xb3\xad\x8c\xf3\x82w\x8d\xf8AU\xc4-+\x98\xc8\x84y$\xfaj\x0d\xef\xcd\xdfG\xd7\xf7\xc2;V\xd7\x16\xda\x01\xa7\xff\xf1\x9a\xe1\x00\x81}n\xb4a\x9f\x9b\xf6P\xac3\xb1\xcfM\xbb\xcfM-%\x99\xbf\xddM_\x11\x83\xddn\xaca\xb7\x1b\xecv\xd3\x1av\xbb\xc1n7\xad-*\x12\x99\"\x10\x99$\x0e\xc1n7\xa7\nAf\x88@\x16\x11\x80L\x17\x7f`\xb7\x9bS\xc4\x1eS\x84\x1e3D\x1e\xd8\xed\x06\xbb\xdd`\xb7\x9bX\x91\xc6\xa2\x02\x8d9\xe2\x0c\xecv\xe3;mT\x841A\x80\x11\xb3O\xca\x14\xe1\x05v\xbb\x99\xb3a\xcc\x98\xb0\x02\xbb\xdd\xc4\x0b(\"\xc5\x131\xc2\x898\xd1\x04v\xbb!3\x85\x11\x13D\x11\xd8\xedf\x01\xd1\xc3\xa8\xe0a\xae\xd8\xc1;nb\xb7\x9b#\xc3n7\xd8\xedf`K\xec<\x12+D\x98,B\x98$@\xc0n73\x85\x06\xd8\xed\xa6\xb6\xf8\xddn\xba\x9e\xcc4\xa2\xeeu\\\xed\x8awYV\xa3\xfb:`\xa3\x96y\xbb``\xa3\x96{t\xee\xf8\x16#\xd8\xa8e /b\xa3\x16l\xd4\xf2\xc9m\xd4R\xd6\x1b\xb5\x94\xa3\x1b\xb5\x94\x83\x8dZB\xdb\xb4\xd5\x06|\xda\x1e\x8au&\xf0\xe9\xff\xcf\xde\x9bw\xc7q#\xf9\xa2\xff\xfbS\xc4\xf0\x9d\xd3\xa4\xdcT\xd1Ro\xefj\xc6sZ\xd6b\xb3[\x968\x12\xd5s\xef\xf1\xf1#QY\xa8\xaa\xbc\xccJ\x94s!U\xf6\xf8\xbb\xbf\x83-\xb7\xc2\x9e\xc9E6\xe2\x8f\xb6\x9a\x95\x19 \x04\x80@ \xe2\x17\x01fhv\x0c\x9a\xe6\\\xda]!\xf4\xa8\xd9\x1cP\x99Cf\xdf\x04\x92D\x9f\xe5\xe5\xb5\xf6\xd6\xb4e5\xc7\xc3\xeb\xe0\xd7xx\xbd\xe3\xc3\xab\x8f\xbf\x97\x9f\x0c\xbb\xab\xa4=0\xca\xed\xa497v\x0fXto\x1e.\x9b\xdb:\xed\xc6\x08\xac\xfd\xe8\x0d1\x02+\xe8\x96\x85k\x8f\x1d\xc6\x08\xec\x14R\x8c\x11\xd8\x18\x81\xfd<#\xb0\xfe^\xd0\xf2B\x06F\xf5\x0e\xd0\xff\x198@\xcb\xef\xc5+\xbdxc\x921m*\xd95~\xd1\x02\xaf\xd2\xb2\xc2\xf4\xbcO7\xf8\x86Uw\xa3/\x95\xf1\xc7\xfe\xc7\xc4\x13\x0f\xd6S(;\xfe@L\xc7\xae\x0c\x94\x0f8\xd8\x7f\xdc\xf9Y\xe7\xa9\xearWN\xa6\xaeq\xd2v\x90\x93\x83c\xcf\xdeYNV\xe7\x9eC\x97%\xb9\xb8\x9e\xbaOS[\xb6\xf16\xf1\x05\xc1\xbf\xd2\xab\xb4\xb8J\xaf\xb1\xf92F\xc9\x8b\n\x9dU>\x84\x1aUd\xf3H\xed4\xe5\x84?mI\x8e\xcd\x0eI\xdb1\xaaK\x9d#\x95\xe6l/\xc9OJ\xb2\x9d]Am\xc9\x0d\xdf\xbf\x9e|\xd5\xfe\xce\x9d\xcb\xb9\xde\xe7\xc8iS\xdb.m\x05(P*\n7\xccQ)\xc1%lK\xe6J\x9a\xfe\x1b\xffT\xa3\xcc\xe8\xe3\xe4\xc4F\x8fk\xa5\x8fyZ\x1d\x96\xe2\xbccy\xed\x89\x18\xd2\xaf\xe1\xc9W\xff_\xd3\xc7\xb69\xb6\xf7Y\xfdK\xe9\xf1\xed\xf4\x82,\xf9\xdch\x0b9&\x05\xa6V\x86\xf9\xc6Jh{@Y\x1cR\x16\x87\x0e\xb7\xf7u\xc6\xefk\xf8\xeb1T\xeb\xba|\x06O\x80\xbe\xcf\xfb\xf6W\x87\xb9\x8a\xb2\x14\x95\xe6e\xec\xa2T8YT\x0b'\xe7%osXI\x12]\x80^Ms\xb1\xd8\xe5o\x12\x7f\xe0\xbc\xe0\xb5\xcf\xb8y%\xa17\xac\x9d\xf5\x85\x847|X*\x0dY\x9b\xd6;\x88\xd7b\xb6\x88\x85\x94&\xd2\xed\xac~\xd7.\xca\xce\xd62\xd4\x9bR\xa4\xdd\x85\xc6\x8c -3\xbe0{\xd6E\x97\xe8\x9a \xde\x03\xdd\x95\x1c\xfd\xcc\xb0/\xeco|\xb9\x1e\xb5'p\xfaK\xd3;-?\xb6\xe2;k\xee+\xcd\xc2Z\xa4\xe56C\x1a\xb7\xb8\x7f\x0f\x0dsL|\xa99\xcf\x88}\xae^\xadpIO B\xbb\xd2\x99f\xbf\x1d\xf9\x87\xda\x03>m\xa3\xf8\x9b\xac\x7f\\\xae\xc9M\x0e\xecn Q\xd1T\xcb\x8d\xf5\xee\xf9\xf9\xbb\xef\x1f\x89\xc2\xd8\x89\xe9f 1\xc7KV\x16\x897@\x0c\xb7\xb16\xa8\xed\x80\xd4R]\xa4w \xc2\x8f\xefO\xb9\x9fbA\x92\x9a\x15\xe7>\"\xd4n\xa0'\xe1\xc7\xc9\x1a\xa5\xf9#\xe1\x89\x12\x01?-\xa7N\x05\xa24\xe7\xf6\x15=\xa8\xc2\xbb-\xff\xab\xb7X\x861mA\ncp\xc2b\xf7\x81\xb5{\x9c\xac\x11O\x07\x13\x0e\xac\xc7\x96\xe1\xb3\x1e\xb1NKp\x03X\x05v\xd7H\xa7K\x9c\xd3|\x18h\xc95\xc6\xe9#\x99i\xe3\x9b\xf6\xe8\xa6Wl\xd3\x1a\xef\x01\xdf\xc8\xe6\xb8\xb8\xe6\xc4Q\xcd\xb0\x98\xe6\xf8\x88\xa6C<\xd3\xa6(89\xc42\x1d\x17\xb3\xcd\x99\xc2i\xda(\xa6i\x99\xbb\xf9\xca&\x8e_\x86G/m\xe2\x0b\x89\\\x1a\x1b\xab\x89[\xea\xa3\x96\xd6y\xe0\xa6\xb4\xa6\x8dW\xbaE+\x8d\xb1J\xbf~ig\xd2\x84QJ\xd7\x18\xa5>B\xe9\xd7'\xaf\xe8\xe4\xd4\xb1ISd\xd2\xaf\x1b\xda)\x17\x14\x93d\xad\xd70t\x8cH\x86\xc4#\xad\xe7\x0bI\xdaX\xe4DB\x9b*\n\x19\x1e\x83t\x0e\x95\x99\xe3\x8f\xd3\xc9c\xba\xc8\xa3o\xdcq\\\xd4\xd1Q\x90v=7.\xdeh\x886\xba\x060&\x8a_\xc4\xf0E\x0c_|>\xe1\x8b\xa1\x95\xdb\x9b~\xdc\xac0\xd4>\xa9:U\xc8&NX\x1b\xe3\xa8\xba\x98\xef.X\x03/8K\xce\xe7^\x1dV\xdf\xecX\x07>t\xbb\x18\xbdW=\x8a\xde\xab\x96\xdc\xcc\x06\xf9l\xf4^\xa9)z\xaf\xa2\xf7JA6E\xc1)z\xaf\xa2\xf7\xaaG\xd1{\xb5Gn3)z\xaf\xa2\xf7j@\xd1{\x15\xbdWjf\xd1{5\xce{\xd5;hZ]Y\x03vUS_\xd8\xd5\x95\x05\xa7\x0b\x9cWi\x822\xbe\xe1\x18\xdci\xf3\x9a\x1a\x12 N\xaf\xf7d\xc0w\x00$\x0b|\n\xab'\xcd\x99\xc7\x00\x97U\xf4\x98E\x8f\xd9\xef\xc3c\xe6\x8b\xee\n\xf7\x99\xb1>\x8a\xc7U\xae\xb13\xf6{\xcf%\xd6\x8a\x85\xaa\xf6O\x8c\x9f(\xd0\xab\xf4\x80}\x83\xf2+\xce\xe6\x0b\xd9\x9b\x07\xea\xf1\xea\n\xa3K\xbd\xc6\xf0\x87\xfa\xe9H}\x91p\x8b}O(-\x8d\xf0\x9f\x958_\\\xe0\x1c\xcd3\xbc0m\xe7\xbf\x05\x07\x98\xb1\x9b\x9c8\x9f!\xd4\xb3On\xe6\x0b\xc0\x07\x9c/^\xf1O\xc2\x06m\xcb\xc1\xcaE=\xd9CY\xa1\xaa6\xa4\x95\xde\xac1\xab\\\x8d\x1am\xa0\xf7yP\xc6\x94\xab.\x0f\xda\xa9\x03/\xa9\xc9A\x0fV\x8bg\xf0\x91Wc\xec\xf6(\xcd\xe5\xccMKX4\xcf\xcet\xadzM\nX\xe1\x1c\x97iyL-1~\x84\xc17\xd9\x8eZ\xacT\x00]i\x88B\xbb\xfb`\xd7\x96\x0431\xb9\xb4\xdf\xfdP\x91\x02\xad\xf01d\x84\\\xd5\xdbcVBv\x83\xf2t[g\xdcm\xc0V\x18\xab\xd8\xdd&\xff\xa5\xba\x91\xc8\xc9\x8dD\xa3_a\xbc\xddG\xdb\xb6\xf4\x9c-\xde\xbe\x11\xf87Qr\x9c\xc1\x9c\xf1\xa7\xb4\xac\xb8\xeb`\x8e\x92\xab\x1bT,t\x9fM\xc8f\x8b\xaat\x9efi\xb5\xa3le\xef\x97i\x86\x95gUa\xd2\\\xb8.p\xd5\x9cw\xb0\x12\xb9\"V\xd6\xf2\xdc\x8fp6\xa9%\\\xc9\xab\xb4%Sz\xd10\x8b\x86\xd9]\x1af^\x16\xce\xfe\x82R\xd99]U\xd9\xbd\x00\xa1\xfbw\x9cW\xf4\xefr\x9e\xeaV\xdby{G\x81\xc8\x8e\xa8\xea\"/{\xbe\xcf\x92\x9f\x06\xd7\xe8\x1aC\xb9\xc5I\xbaL\x93\xee\xb7\x1af%\xae\xaa4_u\xb30\x9e\xe7\xbb\xbe\x1f\x95\x1f, .!'\x82'j\xb9\n\x0e<\xabF(\xf2\xe1zm\x99\xf3=b\xa6\xd2F\\\x1536\xf4;\xdd,\x87\xf9\xaes3\x83\xf5\xea\x84\xbf\x89\x9f{V\xe2~\xe7\x1f\xac\x99hV\xd1\xf7\xb1H\x8d\xf6\x96u\x8dY\xec,\x9b\x8d\xe5b\x9eLf[9\xdbUZ\x9b\xca9\xd1_\xd9\x15\xff\xec\x7f\xae\x0f\x98\x81\xa4\xe0'l\x0bU\x1f\xb6\x84\x99<\xd4v\xeb\x14\xc7/{\xb6\x96t\x8dP>,\x7fn\xd2\xc3F,6\x10\x8b\x0d\x0c\xe8\xa1\x14\x1b\xe8(\x14\xc7\xc2\xf4\xed\x1b\x03~>5\xe9\xff\xd6<\x14-\xdd\xc1\xaf\xd1\xd2\xbd\x05K\xd7\xea\x82\xd4\xde\xa76X6b\xef\x10*\xb41\x0e\xc5\x9fw\xa4\x86\x1b\x94W\xec\xd0\x0d\xf5v\x06o05#\xb9\xf2\xab\x085\x99{\xecP\x96\x0d\xcda\x08\xf4]\x0e\x07Y1\xbc\x1a\xd9%$\xcbpB\xbb\xfbZHnSgU\xba'\xa8X\x9c\xc1\xee4\x86X\x9cA\xd0-\x0b\xd7^V \x16g\x98B\x8a\xb18C,\xce\xf0;(\xcePn\xc59\xf7b\xff~m\xbd\xb7\xab#\xbc\x0f\x92\xc17\xf2\x06\xd3n\xac\xafa\xdf\xbbu;\xcb\xd8\xf9}X\xbd\x96\xdf\xbc\xdd\xcakp\x05\xb7n\xf8>\xf7K?\xf7$(\x1ez\xb0\xfe+9S\x1e\x86\xd9=\xcewe\xbe\xb1\xd2\xf2\xba\xdd\xdd3\xf5-\x95A7T\xeao'7\xddO\x1er3eO \xcd\x95\xc6\xa9F\x17\x94R\x19H\x98C,\xaa\x19\xfd\\\x10\xfd\\\x93\xfa\xb9\x86\x9b\x8b\xd2\xdb\xb5\xea\xb9\xbb\x9akb\x07\x0c\xbb!\xddaG\xda;d\x0fK\xc5Jwt\x8f\xc5+\x1b\xa3{\xec\xa1\xb8\xc7\x84\x15\xac\x9b\x80\xf2\x86b\xa1l\x9b\xeb\xbf%DO\xb1\xdbM\x9b\xda\x1a\xfdS\xa1\x87\xff\xe8\x9f\xbaE\xe1\xda=+\xd1?5\x85\x14\xa3\x7f*\xfa\xa7~\xe7\xfe\xa9\x93\xf9\xee\xa2s\xfa\xf7tT}\xc3\x13L\x1c\xdcU\xc215\xc0\xec/I\xd1qU\xc9g~{>+5\xdaJ-L\xf1\xe8C\xf7\\\xe9\x0c\xe2\xa0\xc3\xbf\xc1\xffd1JM\xbe'\xe3\xabv\xbf\xd3\x94^\xa7\x89}Nz\x8f\x93\x9f\xbf)\xe0\xf0+f\xa9\xfd\x08<`\xd6\x1c\x88\xfb\x8b\x9eSc\x02\x9b\x8f\xc0\"c\xbc\x1f9w<\x16G\xd4H<\x16\xffF\x8e\xc5\xb7~\x18\x1e\x97Xgj\x9e\xaf\xd5\xd3k\xa0\x9f\xd1So\xb7\xd9No\xd5\x9cS\x03\xf8\x03{\xa8g\xbep\xc3\x98\xbf\xdd\x0b\xb4}N\xe6\x88\xe0\xd0\xb56:\xfd\x15??X\x0b\xa3;t]\xba\x0f\xd5\x12#c\xe1V\xca\xd4\x911\x11s\x10kSF\xc4\x9a\x95\xdaD\xc0\x06/:\x07\xc0\x94Q\xa1\x80\xa8\x98\x82\x8b\xf5H\xc8i\x84 \x1d\xe3g1~6\xa0;\x89\x9f\xe9:\xc26\xe7\xce\xa6c-\x80\xb1\xe7f\x91\xb5\\\xbb;\xb5\xb6\xfcE\xf3\xc7h\xdd\xef\xc9'Z\xf7wj\xdd\xc7P\x92\xdd\x94\x87\x18J\x12t\xcb\xc2\xb5\x07Ab(i\n)\xc6PR\x0c%\xfd\x1eBI\xcc\x0cs\x08\x1aq{\xed\xdd\xb2\x1f\x1aj\xbd*2\xd6C\x0fl\x9f\xb9gEvU\xfc\xf6`\xdd*:g\xc4\x88Cg\x8c\xdb\xf8yD\xee2n#f\xa5\xd3\xb9K\x9c\xb4\x063Y\xd2\xfb\xb3\x17\xf1\xbe\x0c\x88\xc7\xac\x87u\xcc\xfal\x83\x14%>\xa9p\xbe\xc0\xc5&\xcd\xabfgE\xf3$\xe5We\xe87\xd5\xceJ\x7f\xfe\xcd\x8bS\xc6\xba\xa3\xe9x\xcf\xd6(_d\xb8\x10U\x9c\xeb\xed\x96\x14U\xc9\x9eo\xf6\xe2E*\xb6\xb4\x8e\xeb\x8dZ&\xcd\xffA\xdbmF\xad\xcf\x94\xe4\xc70\xdfmQ\xc9\x8e:\xe7M\xb3Yq\xad\x0cW\x98\x1e&\xa9zl\xf8\xefxu~\xc9I\x14\xde\xed\xa2<\xaeQ\x96.\x98\xf2\x15\xad\xc3\x0b\x16\xb6:\x166,\x8b\x03o\xb7\xc7B\x8d\x1e\xc3\xf6\xa9(AVV\xa4\xc0JkA]\x1d\xfa\xaf\xb2\x96so\xbfnD'~|\xb0\x1b\xf6H\x15\xb5\xe7y\xcc\x88\xa2X\xb4aa\xa6\xf9\x92x\xbe\xb0\xc0\x9f\xbc\xde07X\xe9\xcev\xe2\xa6pck\xd4S(\xbbmA\xc8\xf2\x82l\xb5\xda;\xc8\xa0R\xf2\x03\xcb\x8e\x00\xa6]\x01l\x0d\xe2d\xdb\x1d@\xb2\xd1\xfe\xea\xa4\xe35c\xda\x92\x13\x0f\x87p\x05%\xf5\xc59-M\xf7-\xbbQ\xca\xe9\x8cN\x9aw\xdbVg\xe7\xadj\xe2>)j\x90%(KX\xa1\xc5|\x05\xdf\xe3\xe2j\xafZJK\x05!\x15W\xc0\xac\x8cm\xb2\xef_\xea\xd2\x1c\x03*\xe6iU\xa0b'\xbau,\x8a\xa8\xb2+j0Uj\xf47Y\x13W\xcb \x7fBT\xffC\x8e\xd3\xd5zN\xea\x82\xbdO\x86\xfe\x87.\xadQ\xb9\xd6\x17~\x04xK*\xfc\x8c\x17jb\xa6)s\xe1-j\xbe\x115E\xfb\xa5\x04\x99Q\xcc\x1e\xd4\x0f\xbf\x88[\xa4yg\xe3\xda\x0f\xf5\xd8\xc7N|\x93\x012\xf8x\xf0\xd5\xdf|a\xce\xa3T\xf2\x8e\x0b\xf9\xbc\xe6H\xe1\xd3\xcf\xd2\xdcQ\xa7.\xae\xe9\x18i\xcf}\x01j\x99\xeeK\xe5\x16\xe91\x80\n\x9ef)7[\xb2\xb9(f\x0fC\xc6~\x1a\xee\xe5\x92\x18\x12\x8d\x99#\xfb\x83\xe06\x00\xb2%\xdc\xc8\xd2\x8eB;\x02\xc3\xcf\xa8\x06$\x9e\x9a\x06\xbf\xc6S\x93mi\xb4\xf4\x1c>\xbe\x7fsR\xe0\x92\xd4E\"\xae2aF~\x9d\xa7?\xd58\xdbA\xcan\x00X6P&:\xbb\x89.:\xcc\xef\x18(q\x91\xa2,\xfd\x19\x1b\xb6\x0d6\xf9\x13\x92\xc1\xbc^.q!\x07MT\xd5\xe3}cV\xbf\xb4\xf6\x01\xe9\xcc\x0c\x80\x0c#\xd3\xe5]$\xc7ppr\x00\xc9\x1a\x15(\xa9p\xc1w\xb7\x0c\x95\x15\x94x\xc5\xee\x96\x10+\xf4\xe3\xfb7\x87\xe5\x10\xf0\xd6'\xd6\xa8\xe6\x1e\x08\xfdW)\xbbe\x9d1(\x18\xca\xa8\x04\x17\xfd\xabb\xa8$\x8fP\xa9X\xe6-]\xd2\xa6\x9c\xac\x08Yex\xc6d6\xaf\x97\xb3\x975\xdf\xde/\x1f\xf1\x9e0\xb6m`My\xbf\x11'\x04 \xcaI\xcent\xa0kH\xffeva\xd81\x15-\xdb\xc7\x0ff\x07T\xa9\xe5\xa4\x02\x94$x[\xe1\xc5#\xd3\xce{\x9a\xc3\x96\n;M\xf01T\x18m\xca\xe6\xca\x99m\x81\xe9I/\xcdhK\xa9\x06\\c\x98\xa79\xdaS\xb8-\xb1d\xf4\xdd\x16\x97M\xe4BYY\x91\x13\xd7u\x902\x17z]b\x19-\xa2\x13 \x7fbC\xfd<\xdf\xcd\xe0;r\x83\xafqql4J>\xbe\x7fS\n\x87\x9c\xac\xb1\xaa}\x96iP\x0c\x97\xeb\xaa\xda^\x1e\xf3\xff\x96\x97\xc7@\n\xc8\x89\xf8\xb5\xbdg\x8d\xb0\xd5I%\xa2g\x88+\xa8\xb7\x80\xf8&ax\xac\xb8\x96\x87sV\x84\x93M-\xd6\xf2\x8a\xc8\x95\xc5w\x15v#M H_\xe0|I\xb2\x8c\xdc\x94\xcf\x0cc\xfb%\x9c.\xdb\x1e\xd1i!\x8a\xe6/\x9aN\xb3\x0d\xb0,\xeb\x8d\xa1\x129e\xf4<\x87\xef\xce\xcf\xcf\xe0\xdbW\xe7@r\xb9\x04\xf9\x1a\xdb1\xb7\xa8\xfe\x1e\xba\x1f\x86\xcb\xe2|\xb7\xc5?\xfe\xf0\xa3\xf6\x05\x90\x08\x94\\\xcc\xb7\xc6^%\x05\xed\xc2\xa2N05\x9f\xd9\x16\xa6\xc2\xefp\xfa\x12\x9e\xb7\xae\x0c\x1e\x94ATf\x1c\x89\x94\xa0\x84\xea\x16V\xe4\xbc \xdc\xccQ\x89UUB9\x11Syu\xe0\x93\x90\xb5\x91\x95\x00\xae\xd6x\xd3YC\x0b\xbe\x88\x90\xec\x12\xfd\xf75a\xce\x10\xfd\xc4\x02\xd1@\xa6>\n\xbc$\x05>\x96\x0c\xfa%\xces\x8c\x172\xfc\xcaT^qm\xe8 \xeb\x8b\xbcGJ\x187\xe5\x0c\x8e>\x96\x18\xaeqQ\xa6\x84\xda5lzR\x9d\xc5\xe7'\xca\xd1\xca\xd4\xfby\x81\xd1\x15\xd5A\x82\xf1\xec\x91\xcd\xe0g\xb1\x9be\x9d'|\x85\xd1~\x08\xdd\x95\xd4E\xc1\xe0\n]\xac\x93^]\xd2\xf9HX\x80^\x0fq\x12{\xd9\xbc^B\x81\xe9N\x84\xb9c\x89\x07\xb5\xe9G\x9bCX\xb3.\xb5\xac\x18\xfc\"\xe7e\x9dM\xb7)RN3>\xff\xd16-g\x89*g\xa1\xa5\x0fl\xa5\x96\x1cn\xc5\x81\x06\x03-\x05G\xc2\xfa\xe5Qr\xbe\xb4\x1f\xe97A\x16\x12\x9b\x1b\x94\x12GC\xa4U'\x90\xc1\x8f\xa4\x9d\x02\xd6\x1b\x94Wi\xa2\x84\xca\xdd\x8a\xebwH\xaeV\xd2\xf7T\x1d\xd1\x83\xae\xf03\xb6\x06\xce\x9e\x1d#6w4'\xd7\xfa9-D \x96\x82\xaa\xfb.-\xbb|\x9e\xef.\x9b[\xc8X\xd4\xa99\x88\xeb[\xa8d%\xf7\x08\x94\x111\xf5\x00\xa9\x87\x96j\xe7\xc1\xdd\x90\x1d\xb3p`\xfe5V\x9dfj\x9e\xc9\x85\x93\xa5s\xd6\xec\xe6\xf2\x15\xe1\xc5\xa5\xfaa\x8b\x92\xab\x93:\xa7\xffa%\xd2\xd9\xbcP\xaf \xb1\xd1\xeb\x0d\x1b\xb2\x84\xba\xe2\x8aM\xaa\x87\x92*\xd6\xce]m+\x9c\xe3\x82Ug\xe6\xe1)y\xf3\x8b\x92\x1fm\x0f\x1fB\xf5\xf7^ \x97\xc6\x93gpF\xdbO\xf5\x82\xe8\nj\x84\x9e\xe6\xf0\xe2\x8f\x7f4l\x93\xaf \x81%!\xf05\xccf\xb3\x7f\xd7>F\x1b\x83\xf2\x9d\xfe\x01\x94\xeff\xb4\x19\xaf\x0b\xb29Z\x12\xf2H\xff\xe8l\xa6\xdf\xff\xd2%\x1cQV\x1fYG\xce\xc9\xd1\x1f(\xafG\xf0\x8bA\x87\x9b\xf8\xfdj\x96\xddS\x8b\xec\xfe\x81\xae\xd1d\xc2\x83\xaf\x99mH\xbf2\x81\x84\xd2\xf2\xe85!\xb3$Cei\x11\x10o\"}\x89\xf7\xb1\xf3\xa2\xbe\x0d\xbfj\x7f99\xa1\xd3\xda\xad\x8d\x1f\xd0\x06S\xd3\xe99o\xed\nW/\xb9K\xe14/+\x94'\xf8\xe8QH\xe3\x95|L}1\xce\x82?Yf\xc1\xd9\xaeZ\x93\xdc0\x0fx\x1b_\x13r4\x9b\xcd\xf4\x1b[3\x07\x8e\x8c\xcf\xb0u\xc4fH\xe8\x04\xa1LN\xb9\xc4_\xbe\xfa\xf0\xe2\xfd\xe9\xd9\xf9\xbb\xf7\x8fL\xae\xe5v\xcd\x99?\xcc?m\x94\xe6\x9f-\xd2\xfc\x96\xe8\x05\xc9$\xf9\xeck\xf8\xc3v>{M\xc8/\xb3\xd9L?\x0fi\xa3\x8f\xa9AM\xdf@\xf9n;\x9f\xbd\xc57\x96\xf6\xa7K\xf6\xc6\xbf}\x0dy\x9a\x19'\x9eQ\xc8\x86\xe5a~o\xd0A\x03\x1b\xd1R\xde\xb7\xd9\xc7|\x83\x8ar\x8d\xb2s\xc2\x95\xc7T\xddP\xfev\xce\xe0E\xc9U\xb3O\xc9C\x18\xccw\xadI*wV\x9e\xce\xa0>\x11H(d]j\xec\xb9C\x85\xb9y\xb2\xac\xb3l\xc6~\xa0\xa6\xfc\xa1\xbc\xe8U\xda\xb8ln\xe9\xf6M>\xe7\xd4\x1fk\xb6\xdd<\xdb5\x17T\x0d\x1d)\xcd\x11\x02\xd0\xb2\xc2*\x9c?'\xe6\xe39<9T\x7fJ\xd8\x0b\xb2\xc9\xcc\x13\xd0\x84!\x0e\x96\x84\xcc\xe6\xa8`\x9d\xfdt\xb2\x9b\xfd|\xc0\xa5\xb8\xd3\\\xf9\x00\x86c:k\xea\x01\xe5\xa13\x15\xfe\xf1\xe1\xdd[\xcdOt\xa4\xe9\xcf\xad\xd7\x89[\xd2\x84j\x11a\x06\xf2\x93m]6\xee\xedU\x9d\xa1\xbd\x9chN\xfbl*v\x0bEk\xb8\x1d\x03\xde\xcc1\xbb\x0eLh\x85c~ Q\xb1\xd3\xdd\x03\xdc1\xaa8\xc2\xe9\xf2\xefT@\x97\xc2\x9d\xd2\x18\xae\xdd!P/\x03\xa1\xb6\x9e\x19\x8e`(\xb9\xa2\xba\xabu ,\xd3\x0c\xebw\x1b\xa9\xeb\xcepQ\x92\xdc\xb88\x85/r\x99\x16eu\xc1\xc6\xf1kx\xa2\xe7\xdc\xbc@\xa7\x9e|\xfe\xa9\xf7\xbeG\xc9\xd4\xaa\x03&\xcb\x83gp\xa0Z\x9b}1\xccx/\x0f\x8eM\xfcX\xff\xde\xa2\x0d\xe5\xf9\x1f\xbc\x0b\xffi|\x81\xf6o\xf0\xbco'O\x97\xe2\xc8\xd9\x9fkM\x08\xe5\x06g\xd9\xe3\xab\x9c\xdcp\\\xdd\x1a\x95\x80L\xa9\x81|\x0d\xa9~\xe9O\xf9c~\x84\x19\xac\x836\xe3K4\x87N`]\x12\xa6\xb8\xf8E\xf9\xe3%[\x8cr\x9e\xafI\xb6\xe8B\xf8\xf8RN\xf3f}\x00\xf7\x81\xaaY\xf1%\xa3\xfe\x0ek\xc2\xac\xd9\xd4\x8f\xa8\xf6\x92\"\xdcs\x8eI\x9f\xf1\x8f?\xfc\xf8\xc8\xb0\x90\xa6\x98s\xfd\x0f\x9a\xa7\x1d\x13\x15e\xf9d\xf6\xf4\xc9\xd3\xf2\xc00\x85\xf8\x7f\x8d\xf0-Tu\xdd\x85\xa3qW`\xcf(\xe9\xe9\xc4 >(9\xf3\x00\xeb\xb4\xbcu\x11\xd8\xa67E\xdfi\x11\xf2I3\x0e\xfc\x03.\xae\xd3\x04;@\xd7\xe6\x19I\xae\xca\x93\x0cU\xb8\x14\xb1M\x15z\xed[\\\xbda\x8f|C\x9fo\xaedc\x91s\xf6w`\x8c\x94\x18\xeb\xfe\xbb_\xc8\xfe=P\xe0\x16\xeb\xc7E\xaa\xbd\x98,\x08\x1a4\xe2\xf2x\x8b{m\x8b\x8a\xea\xa2\xc4\xd5\xc5\x1a\xa3\x05V\x04\x84\xc1\xd6r\xb0\xb6\x9e\x92!\xa5\x16\xacQdI&`\x82$\xbd\xa8\xc0E\\`\x17Y\x93\xf7z\x86\x8a\xaa\xc4\xd5wLr\xfb\xc3\xcd\x1fb\x93\xf6\xf4\xa5j\x96(\xa6\x08\x7f\xe7\xb0{\x97\xec\x96\xf9\xaa\x99\x85}Y.\xae.\xd8\xab\x97\x90\xe6e\x85\xd1\xe2p\xd2iv\xbbs@D\x16\x0c\xa3\xc3\xbb\xcfo\xe1g\xfdd8D\xcbh\x1a\xb1m.\xed\x02\xfd\x80t\xc9i\xee\x80[\n8'\xb4\xdd\xde\xed']\xdc\xd5\x9c^P\xf5\x98\x97u \xda\xf2\xdc\x04\x11\x9b\x15\x7f.\xeaL\\\xd1\xb9-\x08\xd5\xab\xe6&\xa2f\xe1\xce\xfb\xd0\xec\x98w\xf4=\xb4\xdd\xde\xd1\x97\xd8\xfa\x10\xc8\x99;\xfa$\xbeN\x178O\xf0\x1d}\xae\x99\x7f\xad\xd9c\xb0G\xa9\xa2&%..D\xd1\xbe\xdbn_\xcf\x98\xe3\n\xaf\x07\x9dn\x11\xd3,\xe9\x9ak\x12\xbe5)\xa1\x0c\xda\x8c \xebVe\xdf\xa2\xaaOVq\xe8\xf3[\xc0\x96\xe3\x02\xae2u\x90*x\x99\xc9\xe7\x9f\x04\xd4Q:%\x99e\xc9c;\xdcv\xfc\xbb\xf0l|\xc7\x8c\xba?>1\x84>e\xca1\x03of\x19\x15\x1a4e\xab\x98\xe2\x9a\x01\xfc7>,0\xfc\xdf\xba\xac\x00\xad\n\x8c\xcd\xdd\x15X=V_\x80\xbb\xc6\x8d\xdfg\xa0\xde\x0dF\xf2~|\xde\xf4\xe7\xdb\xedw\xa8\\\xb7W\xdc\x8bz\x13\x94\xf5^\xad\xd7.U\x9f4\x98![\x05\xac\x97<\xa1\xa5\x13x`UU\x96\xdc\x12G\x02\x10\"\x9a\xa1,\xae\xd0\x92nK\x90\xba\xe4\xd6\xe6\xbc\xf9\x030\xed\xc4\xb7\x1a\x92\xf6\xf6rj\x92!.\xaeI\x85/\xec\x9d\xe0\xe4\xd8\n\xf0h %\xd6\x06c\"\x97$\x8f\x06\x80g#@\xb2wz\xd2Y\x15u \xe7\xb5\xb6\xd2\xe4>=\x86\x0f\xa7\xdf\xbe}\xf5\xf2\xe2\xfb\x0f\xdf^\x9c\xff\x9f\xb3W\x17\x1f\xdf\xfe\xf3\xed\xbb\xff~;\x82\xc3\xd9\xfbW\xffzw\xfej\x1c\x87\x17\xef\xbe\xff\xfe\xf4|\x14\x8fwg\xef><\x7f\xe3\xc8B\xe6\xd4\x8c\x94\x87\xbb\xbe\xef\xd3\x87t\x95\xe3\xc5\xf7\xe5\xea\xbc\xc9%\xaa\x04\xc0\xaed?9s\xea`:zn\x16\xa3\xb6\x1e\x90vL\x9f\xc1\xbfHet\x8b\x0cH?.\xcf\xe0\x8cY9(scgse\xf4)`\xe1\xf8\x1cO9\x15\xa4\xce\x0d\x1e\x88>\xf9\x9d\x959\x99r\x9e\xd4d\xf7\x8b\xf4\xc9S\xd7A\x80\xbe\x03\xe7\xe3|K\x01\xc3\x07\xae&\xd9\x90\xbc|-}\n\x90\x1e\x04J\x90\x92\xa3W\xa6O!\xf3N\x92\xff\x92\x90\xe4;\xe0\x10>\xe8\x10:\xf0\x9e\x9e\x9e>9\xf9}\xfaT\xa5\x1b\\Vhc\xf1\xd4\xb7\x14 \x10W'j\x9f\x1aW\x86\xfd\xc0\xd9\xa7\x11-t\x1e\xaa\xb6q\x9a\xc2\x10j\n\x99\xf7\xfe\xfa\xb6)\xb8\xe4\xd7\xac\xdb\x95X\xb8\x19Bw\xf7\xb6O2#\xbd\x19\x01Q\xe3\xcc\x94e\xd4'\xaa[\xd3$\xdd2t}\x9aw\xbc\x1f\xb2T\xaf3+T\x96$I\x19\xa3^\x80\xdfL\xf8S\x85ss\xa8\xb0O\x9f\xc1\xf84}\xea\xe1?\xcd\xf9d}\xea\x04\xadD\xd1Q\x9e\xe5\xc2cp\x98{\xaa\xdd\x87F\x98\x9c\x9a\x13\xfa\x90\x9a\xe6_\xfc\x16\x17O;8\xc3e\xe4\xccgo\xb9\x0d\x97\x91\xfb\xc8\xec\xad7\xc52rf\xa6\x9b(^\xe3\x1f\"\\&\xd8\x06\xbaG\xcfF\xdb\x02\xd3\xf3<\xf4\x9aA\xff\xe2\xc4\x8f9\xfa[\xf7=(\xae\x12RS\xe70e{\x94\xb9\x1b\xe6.\x13\xdb\xd3\x88\xf45\x1e\xa3\xbba@\xd1\xdd\x10\xdd\x0dv\x8a\xee\x06\xdb\xd3\x10\xdd\x0d\xfe\xb6Et7\x18\xc8\x7fIH\xf2\x1dp\x08\x1ft\x08\x1d\xf8\xe8n\x90\x14\xdd\x0d\x9c\xfc\xf5\xedo\xf1\xc4\x14\xdd\x0d\x0f{|\xa2\xbb\xe1\xb3\x18\x9c\xe8nPQ\x88p?Gw\x03\xb3\xd5.\xaeI\x95\xe6\xab\x8b-\xb9q3,='\xb8\x9f}\xd6n\xa4\x0f\xa3=^\xf6P`K\\\xed \xdfi\xf9RBi\xe8\xdc|%\x804-\xacIBk\x18<\xcf\xca\xac]\xf0\xfc\xac\x0f\xd5\x0d\xa1\xbc\x96Y\x9a\xb0j\xc1tf[\xe6\\FO\xc7\x17I\x96\xe2\xbc\xba@U\x85\x92\xab\xfb\x06\xf8tzp\xe1\x90\x83\xc3\xc9\xa3-\xe0\xd9\x1e\x10\xf6\x1a^x\x1e\xf5<\xdb\x04\x01\xed\x02K\x8a\x96\x9a\x02\x1a\x06\x81\x8d\x03\x97$/5\xf9\xa6~\xa9)\xb0\xaf0\xa2\xbf\xe0\x96<\xa6&O\x855$\xa9\xc0\xac\x89fj\xb2\xa6\x9f\xa9\xe9>\x1b\xed\xab\x82\x87\xe4\x96\xd6\xe6\xcd\xb6\x9f\x067Hv\xf3\xe6\xe6\x98\x1c\xa7&\xd7\x949o\xc6\xbd\x14;\xefD:5\xf9\xa6\xd7\xa9\xc9\x9et\xa7\xa6\xe0\x89\xec\xe7f\x96\x14\xfc9_\x9b\xa9K\xe6\x14?5M\xd0PW\x93\xaaO\x8eI\x82j\xba'\xdd\x1f\xe2\xc4\x84qB\x86\xb0#kK#\xbc\xd9\x92FH\x1bFJ\x1cB\xbd\xdc\x92B\xbc~C\n_\x91\x92B'\x0e\x8c\x9f<0v\x02\x8d\xf2\x8aK\n\xf0\x8eKrO\xcdT\xd3\x08\xf9\x8d\x90\x9b\x7fr\xa7\x9a\x1cR>\xd5t\x1f\xddvN\xb8T\xd3}4\xd9\x9e\x9f\xa4'\xd7LUo\xc6\xa6\xccV5\xf9\xe5\xbb\xaa\xe9>\xc4\xef\x9a1\xab\xa6\xfbh\xb1=\xe7VM\xf7\xd1V\x8f\xac]5\xddG\xa3\x1d\xf3~\xd5t\x1f\x0d\xf6\xcb\x1cV\x93{>\xb1\x9a\xee\xbe\xdfcN\xe7\x8e \xcc^<\xf5\xc9\xcej\xe2\x16\x85\x8f\x9c\x03\xcd\xe0P\xf3\xf73:xz\xe1\x9e$\x8d\xb1\xcc\xfd\xe3\xf2\x92\xe2\x89\xd3\x85\x02u\x02\xa7x\xe2\x0c\x9e\xd7\x92\xc2\x97\xa2\xa4\xd0\x89\x03\xe3'\x0f\x8c\x9d@\xf7}\xe2l\xefh\xf7\x95 \x97\x9c9\xc9_M\xd6\xd4\x7f5\x8dZ(\xe3\x96\x89\xd4\xa4\x17\xcb\x0c)\xee\x1bv\xa1\xd1\x13\xcd\x0f\xdb\xde\xa7\xc7\xf0\xcd\x9bw/\xfeyq\xfa\xf2\xe2\xf5\x9b\xe7\xdfz\xe2\xba\x874\xe4\xf6\xfc\x9b\x0f\xaf\xde\xba\xc3\xd5\xfb4d\xe6\x89}\xef\xd3\x90\xd9\xdbSW\x08|\x9f\x1a@\xfctb\x0b?zs\xe2\x8b{\xf1:C+H\xf3\x05\x8b\xbf\xcb\x9b\xe1\xc4\xc2\x0f\n\xcapj\xf1:)\x87\x84\xd8^\xd8\xa7`\x1ce\x9fF\xaf\x93\xd1\xea\xd8\x03\x98\xb1O\x935?,\xd2\xc0\xc9\x1b[\xd6\xa7\xc9\xfa\x104\x04c\x0e[\x9c^\xb0\xe3\xce\x87t\xc5sI\xa8\x8d&\xe3z\x0cM%\xeb\xeb\x04\xb0Ns@\x82\xbf\xfb\xf1k\\\x9f\xf8\xd7\xfaU\x83\x1a\x88\x0d\xabf\xe4\xe7e\xe5\xce\xd9\x1bT\x8aca\xc5!\x94H\x94\"\xf2\xe2\xd5z\xe1\xdc\xa4\xd1\xea\x88\x12;\x1f\xf7\x02\xf6\xfd\x90\xdd\xbe\xed\x8b\xfb;\xa1VP\x80\x05\x14 \x05N!\xb2\xe0\x14\xac\xc7G)\x90\x11\xcac[\xcf/,w\xf1\xab)X\xb80J\xc0\x94\xf0\xe2\xe9_\xfe\xf2\xe4\x7f\x85\xbc:R\xd00N\xd8\xc0n~M\xb6O\xff\xf2\xd7\xab'\x9fc\xf3\xc7Xdg\xf5.\x17W\xf0\xd5\xec\xcf\x7f\x8b7\xd5\xda6\x19{\xbb\xc0\xad\xd8\x80\xf3\n\x91\xeb\xc3\x9a\x8bo-\x150\xf5'\xdd\x16\x008\xa7\xf4C\xbc\xa9\xb6O\xf6\xa4y\x87!\xbd\xb3CR\xbc\xa9\xd6\xdeAp\xdf\xf0\xe2Y\xc9*r\xf0\x11;\xb8\x8b\xfe6\xceJ\xee\xe9\xd0N=r\xea\x89\x7f2\xb3C\xda\xf2T\xcds\xcez\x9d\xea\x83CyX\xf3\x7f\xe3M\xb5\x0eY\xb3S}\xc9#\xe7u\xaaO:f\xacN\xf59\xbf|S\xf7\xccR\xa7\xf6\xb9\xdbj\xc3\x0f\xd33\x14\xbf\x9f4]\xa59\x12\x86S\xf3\x98\x81\x93`p,\x84CO5\x88\x9e\xc7\xbe\xc1\xc9\xfaOOE\x8b\x8du+Os8\xc7\xf9\x02\x17\x9b4\xaf\x8e\xa1Z\xd3\xb6\x88\xc2\xfa\x97T\xd4\xe5\xe51\xcc\xebJ\x1a\x82\x1f^\xfe\xf3\xd8\xc0\xee\x86\x99\x9c\xd7\xb8\xa8 \xad\xa0\"\xc3\xb6\x98\x9aBm\xd39\xae*\\\xc0\xc7\xff\xedp \xb4\xe7\xca\xb6=\x8b\xf7\xfe2rZC\xee\x139\xde\xfbk\xb2q\xe2\xbd\xbf\xf1\xde\xdf}rm \xc4{\x7f5\x14/\xe2\x11\x14/\xe2\xe9P\xbc\x88\xc7\xe9\x1d\xaf\x82\x14~\x9e\x07N.1\xf8>\xd9\xbdL}\xf2\xd4u\x10\xa0\xef\xc0\xd99\xd2R\xc0\xf0\x81\xabI6$/\xcfU\x9f\x02\xa4\x07\x81\x12\xa4\xe4\xe8\xe3\xeaS\xc8\xbc\x93\xe4\xbf$$\xf9\x0e8\x84\x0f:\x84\x0e\xbc\xa7\xdf\xacON^\xb4>9\x07D%\x05\x08\xc4\xd5%\xdd'\xefx\xb1\xa4\x11-t\x1e\xaax\x11\x8f\xaf\xc4\xc2\xcd\x90x\x11\xcfg0>\xf1\"\x9e\xcfbp\xe2E<*\n\x11\xee\xe7x\x11O\xbc\xf7WE\xd1\xdd (\xba\x1b:\x14\xdd\x0dN\xefDw\x83\xedYI\xbe\xa7\xcf\x80\xe1\x830\xdb\"\xba\x1b\x0c\xe4\xbf$$\xf9\x0e8\x84\x0f:\x84\x0e|t7H\x8a\xee\x06N\xfe\xfa\xf6\xb7xb\x8a\xee\x86\x87=>\xd1\xdd\xf0Y\x0cNt7\xa8(D\xb8\x9f\xa3\xbb\xe1\x01f\xb2\xc7{\x7f\xf5\xe4;-\xe3\xbd\xbf6\xa6\xf1\xde_\x9fvA\xbc\xf7\xd7B\x81}\x85\x11\xfd\x05\xb7T<5y*\xac!I\x05fM\xdbS\x935\x99OM\xf7\xd9h_\x15<$\xb7$Ao\xb6\xf1\xde_[Z\xa2\x9a|\x93\x15\xd5dOaTS\xf0D\xf6s3K\n\xfe\x9c\xaf\xcd\xd4\xa5x\xef\xaf\x03\x8d\xd1\xfd!NL\x18'd\x08;\xb2\xb64\xc2\x9b-i\x84\xb4a\xa4\xc4!\xd4\xcb-)\xc4\xeb7\xa4\xf0\x15))t\xe2\xc0\xf8\xc9\x03c'\xd0(\xaf\xb8\xa4\x00\xef\xb8$\xf7DW5\x8d\x90\xdf\x08\xb9\xf9\xa7\xca\xaa\xc9!\x81VM\xf7\xd1m\xe7\xf4U5\xddG\x93\xed\xf9Izr\xcd\xfb\xf5fl\xca\x13V\x93_\xf6\xb0\x9a\xeeC\xfc\xae\xf9\xc7j\xba\x8f\x16\xdb3\x98\xd5t\x1fm\xf5\xc8\x81V\xd3}4\xda1\x8bZM\xf7\xd1`\xbfM\xd6\x87\xa0!\x18s\xd8\xe2\xe4Z\xc28\x80u\xbc\xf7\xb7G\xf1\xde\xdf0+(\xc0\x02\n\x90\x02\xa7\x10Yp\n\xd6\xe3\xa3\x14\xc8\x08\xe5\xe1}K\x96\xa4`\xe1\xc2(\x01C\xe8\xedY\x92F \x1a\xc6 \x1b\xc2o\xd5\x92t\xbf\xcd\x1fc\x91\xdd\xc2\xad[\x92\xc2o\xdf\x92\xe4\x0b\xbc\xed\xd3\xa8A\x19s\x98\xdf\x86\xdf\xce%\xe9\x1e\xda\xbe\x8d\xf7\xfe\xeeS\xf0\xba\x0c\xd4\xe0\x81\x02\x85\x11B\x85q\xba{\x84pa\x8c\x80a\xac\xd6\xbe\xbf\x86\x87\xeb\xeb[\xd3\xd6cu\xf5\x18M=b \xc24\x1dL\xa1\xa3\xef\xbc\xd5a\xb9(\x92\x02\x9b\xeb\xd7\xd4x\xef\xaf\x91\xbc\x95\xbb\xbfJ\xf7\xde!=G\x80S\x80\xee\xf3\xde\x0f\xbd\x85\x05A\x02\x83\xd0\xdd/Hp\x10&<\x08\xdf\xeb\xee\xb6\x99!;\xdb-\xeci\xe1\xbbY\x98z\x0d\x12\xb2\x9f2\xe34b\xd7\xba\x836\x86\xedP\x9e\x0d\xf3l\x92\x8f\x13<\xb0%\xae\x0en_\xdfi\xbc\xf7\xd7\xa8\xc9mV\x86\xd3h\xba\xcc\xa6x\xef\xafe98n\x15^\x10\x13\xa7\x9e\x82so\x01\x9c\x01\"n\xe3)\xc9e\x02I\xb2\x8b\x1c|\xc4\x0e\xee\xa2\xf7\x04g8\xc10\\\x00\x17.\xa6\xb4\xd5\x80v\x9c\n\xae\x13\xc1\x0b\x02\xe11\x18n\xb0\x86P\x00C T!\x10\x94\xe0\x0f?\x18\x054p7\x1b\xa7\x02\x0fx\xc1\x04\xbc\x01\x01\x1e\xb3\xc6c\x01;Z2\x01\x1fw\xb3`\x9c\x83\xf1\x01-\xb0t\xdf\xc7tr\x0d\x9a\xffV\xef\xfdui\xdb7<\xfb\xb9\x84\n7\xd7O\xd1Q\xe3?\x1c\xf3\xc3\x13m\xac\x00}o\xf5\xf7|\x89%\xa1J-^\xa68[\xc8\xcb\xb6\xf0\x82\x9a\x98\xf3\xfe\xad_\xdd\xa7\xcd\xad\xfe\x16Wo\xe8Z\xafX\x0b\xdf\xe3rK\xf2\x12\xcbk\xc9\n\xf9\xffY'dU\xaa>\x87\xff\xaaq\xb1;\xe9\xf3\x81\xf7g/`\x83\xab5Y\xb4\x8d\x91\xaa\xac\xf3~\xafm\xcfs\xa8s\xfci\x8b\x13\xda)\\\x14\xa4h\x1a\xd0\xedR\x99\xac\xf1fp5\x8ev/\xd3\xef^\xec\x03\xfbK\xce\xb0\xc8\x12\xb2P\xacQ\xb3]c\xb2OEe \xaf6,p\x85\xd2L\xa1)M&\x81\xd6\x14\xb0\x98\x00\xb6\xad\x9f\xbe~Q\x17Z\xe3\xcfAa\xd9\xd7\x14\xa7\xe7\xf0\xf1\xfd\x9b\x93\x02\x97\xa4.\x12\x0c9\xda\x88\x85^\xe7\xe9O5\xcev@W\x7f\x95.S\xe1\xe8\xa8x\x81X-C~\xb7V\x91\xa2,\xfd\x19/\xf4\x19\xfc\xdb\x82T$!\x19\xcc\xeb\xe5\x12\x17r\xd0f\xfc\xca0\xde7\xd8\xd4e\xa3\x8d\x00\xe9\xad\xa9\x0c\xa3\xd2P:\x8c\xe4\x18\x0eN\x0e Y\xa3\x02%\x15.\xe8W0;\xf5A\x89W\x1b\x9c7*\xf7\xe3\xfb7\x87%lQ\xb5\xd6rc\x8dj\nC\xe9\xbfJ\xd9-\xeb,\xdb\xc1O5\xca\xa8\x04\x17\\\xbe\xe2SL\x92G\xa84\xd6\xd6\xba\xa4M9Y\x11\xb2\xca\xf0\x8c\xc9l^/g/\xeb\x82\x95H\xb8|\xc4{\xc2\xd8\x96kRg\x0b\x98\xd3-C\xcb\x0fA\x82r\x92\xa7 \xca\xd8\x1a\xd2\x7f\xf9\x08\xcfV\xb3c*ZV\xfc\xe1`v@\xb5\x17\xbbJ.I\xf0\xb6\xc2\x8bG\xb3/\xf4\xaf\x9f\xe6\xb0\xa5\xc2N\x13|\x0c\x15F\x9b\x12\xea\xb2FT\x1c\xbcx\xd66\xcdhK+\xc2\x841OsT\xe8\x8dnv{\xddn\x8b\xc55r\xac\x1c\xa0\xf6a\xae\xeb\xc4m\x89u\xd9\xadJ\\\xe1Ol\xa8\x9f\xe7\xbb\x19|Gn\xf05.\x8e\x8d\x06\xd5\xc7\xf7o\xa4\xc1FY\x19\xab\x072\x0d\x8a\xe1r]U\xdb\xcbc\xfe\xdf\xf2\xf2\x18H\x019\x11\xbf\x1e\xb3\xd9\x98\xa0\x1c\x08[\x9dT\"z\x86\xb8\x82z+\xca2\x1b\xbe\x8b\x8bk\\p\xd1l\xd0V\\7\xc9Z^\x91\xa663sW\xa6\xfc\xa6;\xa4w0.I\x96\x91\x9b\xf2\x99al\xbf\x84\xd3e\xdb#:-dM\xc0\xa6\xd3\xcc\x98)\xcbz\x83\x17\x86bo_\xd2\xcd\xe9\xbb\xf3\xf33\xf8\xf6\xd5\xb9\xbc[\xf0\xe3\xfb7|\x8d\xed\xd8~\xac\xb7y~\x18.\x8b\xf3\xdd\x16\xff\xf8\xc3\x8f\xda\x17\x98i\\\xb3\xf9\xc0\xe7\x9b\xd8F\x8eyI7\xb2\xa8\x13\x0c(\xe7[\x98\x1eX\xf7%F\x1b\x83\xf2\x9d\xfe\x01\x94\xeff\xb4\x19\xaf\x0b\xb29Z\x12\xf2H\xff\xe8l\xa6\xdf\xff\xd2%\x1cQV\x1fYG\xce\xc9\xd1\x1f(\xafG\xf0\x8bA\x87\x9b\xf8\xfdj\x96\xddS\x8b\xec\xfe\x81\xae\xd1d\xc2\x83\xaf\x99mH\xbf2\x81\x84\xd2\xf2\xe85!\xb3$Cei\x11\x10o\"}\x89\xf7\xb1\xf3\xa2\xbe\x0d\xbfj\x7f99\xa1\xd3\xda\xad\x8d\x1f\xd0\x06S\xd3\xe99o\xed\nW/\xb9K\xe14/+\x94'\xf8\xe8QH\xe3\x95|L}1\xce\x82?Yf\xc1\xd9\xaeZ\x93\xdc0\x0fx\x1b_\x13r4\x9b\xcd\xf4\x1b[3\x07\x8e\x8c\xcf\xb0u\xc4fH\xe8\x04\xa1LN\xb9\xc4_\xbe\xfa\xf0\xe2\xfd\xe9\xd9\xf9\xbb\xf7\x8fL\xbe\xcav\xcd\x99?\xcc?m\x94\xe6\x9f-\xd2\xfc\x96\x18j\xefQI>\xfb\x1a\xfe\xb0\x9d\xcf^\x13\xf2\xcbl6\xd3\xcfC\xda\xe8cjP\xd37P\xbe\xdb\xcego\xf1\x8d\xa5\xfd\xe9\x92\xbd\xf1o_C\x9ef\xc6\x89g\x14\xb2ay\x98\xdf\x1bt\xd0\xc0F\xb4\x94\xf7m\xf61\xdf\xa0\xa2\\\xa3\xec\x9cp\xe51U7\x94\xbf\xd1\x83?\x1b9\xb9Ou\x0b\xb3o\x87;+\xbfO^}\"\x10\x1eDj\xb2\xa9?u\xa807O\x96u\x96\xcd\xd8\x0f\xd4\x94?\x04\xd4\xb1\x04\xa8\x95 \xea;*\x19\xf29\xa7\xfeX\xb3\xed\xe6\xd9N\x9e\xb9\xf7\x1c)\xcd\x11\x02\xd0\xb2\xc2*\xff)'\xe6\xe39<9T\x7fJ\xd8\x0b\xb2\xc9\xcc\x13\x00X\xac\x91\x83%!\xb39*Xg?\x9d\xecf?\x1fp)\xb2s\xa9\x92\x9f\xfe\x98\xce\x9az@y\xe8L\x85\x7f|x\xf7V\xf3\x13\x1di\xfas\xebu\xe2\x964\xa1ZD\x98\x81\xfcd[\x97Xz\x98Wu\x864\x15\xc6\xf7\xd9\xd0W\x16\xb85\xdc\x8e\x01o\xe6x\xb1hM8\xeedW\xb2C\x1a\xffU\xc7\xa8\xe2\xae\xf5\xcb\xbfS\x01]\nwJ/\xca \x87@\xbd\x0c\x84\xdazf8\x82\xa1\xe4\x8a\xea\xae\xd6%\xb0L3\xac\xdfm\xa4\xae;\xc3EIr\xe3\xe2\x14\xbe\xc8eZ\x94\xd5\x05\x1b\xc7\xaf\xe1\x89\x9es\xf3\x02\x03\x95\x88\xe7\x9fz\xef{\x94L\xad:`\xb22,\xa4)\xe6\\\xff\x83\xe6i\xc7DEY>\x99=}\xf2\xb4<0L!\xfe\xdf\n\xad:a\x93\xc7\xf0\x01\x17\xd7iB\xa5w\x92\x90rC\xca\x939*\xf1I\x1b)<\xb9~2\xc7\x15zr\xc2\"\x97\xe5\xc9/\x1c\x89\xf5+g\xb2j\xf3a\xcbz\xb3A\xc5\xee\x19|\x8by\xb8\xed\x9b\xddw\xecQ\xf8\xa9\xc6E\x8aK\x11\xfb\xa4b^\xa5\xd78\x17\x98.\xa9\xb3\xc8\x16\xf3\x1e\x9f.\xf6y\x88gd\xe0\xad\xd3\x85\xc3\xa7_}u\xa8\x8f\xdeAY' .\xcbe\x9d\xddf\xd8N\x0f\xe62\x06\xb3\xcc\xa1,=\x82\xc8\xea\xbf\xb1xo\x9c\xc0Y\xc6\x96\x83\xb5\xf5`\x07aUN\xe0+\x17\xd0\x95\x19le\x15\x17\xd8E\xe6\x08\xaa2\x82\xa94\x85\xe9\xc5;\x87/\xa9BMP\x85\x17\xcf`\xcb\\\xa1\xcc\x80\xbb,\x17W\xbc\x0c\xf3%\xa4yYa\xb48\x9ct\x9a\xdd\xee\x1c\xb0\xde@\xe0{\xd7\x80\xb5M\xe0\xd4.p\xbb)\xc0i\xee@g\xfeX\x0b\xe9[\xeb\xfcO\xfdI\x17o('\xb7z\xfc\xd0\xaf\xafo\xeaj\xaf\xf2\xbek%}\xd7\x9a\xf9\xfd\x1a\xf8\x06\x86\xbe\xd5\xf1}\xeb\xe0\xdb+\xde;\x0c\xe9\x9d!\x9c\xcd5\xe8\xbd>c\x83\x929V\x90\x9fpE\xdbQ\xb7N\x1d\x04\x97\x0d\x81\x93\xd3^*\xc9\xa9\xa7\xe0\xdc[\xb0\xef\xb1\xcdcN{\xad$\x97y$\xc9.r\xf0\x11;\xb8\x8b\xdeqO\x1e\xce\xb7\x140|\xe0j\x92\x0d\xc9\xcb\xd7\xd2\xa7\x00\xe9A\xa0\x04)9ze\xfa\x142\xef$\xf9/ I\xbe\x03\x0e\xe1\x83\x0e\xa1\x03\xef\xe9\xe9\xe9\x93\x93\xdf\xa7O\xce\xf9\xb7\x92\x02\x04\xe2\xeaD\xed\x93wz\xb2\xa4\x11-t\x1e\xaa\xb6qi\xbe\xc0\x9f\xfc\x9a\xe67\xef\xfd\xf5\xadsF\xb3\xa4\xbb\x90X\xb8\x19\xc2\xd2\x9b\xdb\xcc\xf6\xf9\x8e\xd9\x10\xed\xbd\xf4)\x0bz\xb8\x145\xe3Duk\x9a\xa4[\x06\xdeN\xf3\x8e\xf7Cf\xd8:\xb3BeI\x92\x941\xe2gI\xa77\xf1\xa7\n\xe7>\x97\x95\x7f\x06\xe3\xd3\xf4\xa9\x07/t\xa9Y \xa9\x13\xb4\x9a\xc1\xbb<\xdb\x89$\n\x1e\x83\xc3\xdcS\xed>4\xc2\xe4t,|\xde4\xff\xe2\xb7\xb8x\xda\xc1\x19.#g>{\xcbm\xb8\x8c\xdcGfo\xbd)\x96\x9133\xddD\xf1\x1a\xff\x10\xe12\xc16\xc80V\x92\xa1\xc0\xf4<\x0f\xbdf\xd0\xbf8\xf1c\x8e\xfeN\x0d\xab%\xd1\xa02\x87\xd49L\xd9\x1ee\xee\x86\xb9\xcb\xc4\xf64\"}\x8d\xc7\xe8n\x18Pt7Dw\x83\x9d\xa2\xbb\xc1\xf64Dw\x83\xbfm\x11\xdd\x0d\x06\xf2_\x12\x92|\x07\x1c\xc2\x07\x1dB\x07>\xba\x1b$Ew\x03'\x7f}\xfb[<1Ew\xc3\xc3\x1e\x9f\xe8n\xf8,\x06'\xba\x1bT\x14\"\xdc\xcf\xd1\xdd\xf0\x00\x0b\xa7\xb7\x1b\xe9\xc3h\x8f\x97=\x14\xd8\x12W;\xc8wZ\xbe\x94P\x1a:7\xc7\x16qo\x17\xef\xfd\xd0[X\x10$0\x08\xdd\xfd\x82\x04\x07a\xc2\x83\xf0\xbd\xeen\x9b\x19\xb2\xb3\xdd\xc2\x9e\x16\xbe\x9b\x85\xa9\xd7 !\xfb)3N#v\xad;hc\xd8\x0e\xe5\xd90\xcf&\xf98\xc1\x03[\xe2\xea\xe0\xf6\xf5\x9d\xbe\xa1\xbb\xe8\x0b\x96\x0b\xf8\x9c\xa5\x02\x8e\xcdP\x14%\xda;9\xb3\xa8\xaa\xf0f\xcb\xb2\x13+\x02\x9b\xb4\xcc0Z\x00\xe2y\x88V~\xa6\x93k\xd0\x9c\x85\xc0\x1d8\xa9\x03\xc2n-r\x08yk\xc2\xd8\x1a\x86h\xdf\x88\x1b\xb6\xaf\xb9\x82v\x7f\x98\xe4\xed\xb5\x1f\xd2b\x07w\xd1\xdf\xc6Y\xc9=\x1d\xda\xa9GN=\xf1OfvH[\x9e\xaay\xceY\xafS}p(\x0fk\xfeo\xbc\xa9\xd6!kv\xaa/y\xe4\xbcN\xf5I\xc7\x8c\xd5\xa9>\xe7\x97o\xea\x9eY\xea\xd4>w[m\xf8az\x86\xe2\xf7\x93\xa6\xab4G\xc2pj\x1e3p\x12\x0c\x8e\x85p\xe8\xa9\x06\xd1\xf3\xd878Y\xff\xe9\xa9h\xb1\xb1n\xe5i\x0e\xe78_\xe0b\x93\xe6\xd51Tk\xda\x16QX\xff\x92\x8a\xba\xbc<\x86y]IC\xf0\xc3\xcb\x7f\x1e\x1b\xd8\xdd0\x93\xf3\x1a\x17\x15\xa4\x15Td\xd8\x16SS\xa8m:\xc7U\x85\x0b\xf8\xf8\xbf\x1d\x0e\x84\xf6\\\xd9\xb6g\xf1\xde_FNk\xc8}\"\xc7{\x7fM6N\xbc\xf77\xde\xfb\xbbO\xae-\x81x\xef\xaf\x86\xe2E<\x82\xe2E<\x1d\x8a\x17\xf18\xbd\xe3U\x90\xc2\xcf\xf3\xc0\xc9%\x06\xdf'\xbb\x97\xa9O\x9e\xba\x0e\x02\xf4\x1d8;GZ\n\x18>p5\xc9\x86\xe4\xe5\xb9\xeaS\x80\xf4 P\x82\x94\x1c}\\}\n\x99w\x92\xfc\x97\x84$\xdf\x01\x87\xf0A\x87\xd0\x81\xf7\xf4\x9b\xf5\xc9\xc9\x8b\xd6'\xe7\x80\xa8\xa4\x00\x81\xb8\xba\xa4\xfb\xe4\x1d/\x964\xa2\x85\xceC\x15/\xe2\xf1\x95X\xb8\x19\x12/\xe2\xf9\x0c\xc6'^\xc4\xf3Y\x0cN\xbc\x88GE!\xc2\xfd\x1c/\xe2\x89\xf7\xfe\xaa(\xba\x1b\x04EwC\x87\xa2\xbb\xc1\xe9\x9d\xe8n\xb0=+\xc9\xf7\xf4\x190|\x10f[Dw\x83\x81\xfc\x97\x84$\xdf\x01\x87\xf0A\x87\xd0\x81\x8f\xee\x06I\xd1\xdd\xc0\xc9_\xdf\xfe\x16OL\xd1\xdd\xf0\xb0\xc7'\xba\x1b>\x8b\xc1\x89\xee\x06\x15\x85\x08\xf7st7<\xc0L\xf6x\xef\xaf\x9e|\xa7e\xbc\xf7\xd7\xc64\xde\xfb\xeb\xd3.\x88\xf7\xfeZ(\xb0\xaf0\xa2\xbf\xe0\x96\x8a\xa7&O\x855$\xa9\xc0\xaci{j\xb2&\xf3\xa9\xe9>\x1b\xed\xab\x82\x87\xe4\x96$\xe8\xcd6\xde\xfbkKKT\x93o\xb2\xa2\x9a\xec)\x8cj\n\x9e\xc8~nfI\xc1\x9f\xf3\xb5\x99\xba\x14\xef\xfdu\xa01\xba?\xc4\x89 \xe3\x84\x0caG\xd6\x96Fx\xb3%\x8d\x906\x8c\x948\x84z\xb9%\x85x\xfd\x86\x14\xbe\"%\x85N\x1c\x18?y`\xec\x04\x1a\xe5\x15\x97\x14\xe0\x1d\x97\xe4\x9e\xe8\xaa\xa6\x11\xf2\x1b!7\xffTY59$\xd0\xaa\xe9>\xba\xed\x9c\xbe\xaa\xa6\xfbh\xb2=?IO\xaey\xbf\xde\x8cMy\xc2j\xf2\xcb\x1eV\xd3}\x88\xdf5\xffXM\xf7\xd1b{\x06\xb3\x9a\xee\xa3\xad\x1e9\xd0j\xba\x8fF;fQ\xab\xe9>\x1a\xec\x97\x87\xad&\xf7\xecl5\xdd}\xbf\xc7\x9c\xce\xed\xb9\xcc\xfe\x1a0\xde\xfb\xcbh\x82\x89\xe0o\xe6z\xe1\x9e$\x8d\xb1\xcc\xfd\xe3\xf2\x92\xe2\x89\xd3\x85\x02u\x02\xa7x\xe2\x0c\x9e\xd7\x92\xc2\x97\xa2\xa4\xd0\x89\x03\xe3'\x0f\x8c\x9d@\xf7}\xe2t)C\xab&.9\xd7{\x1e\xbadM\xfdW\xd3\xa8\x852n\x99HM\xeaT\xf4VM\xa3'\x9a\x1f\xb6\xbdO\xa1es\xd5\x14XLWM\x81%v\xd5\xe4_xWM\xa3\xca\xf1\xaa)\xfc\xe8\xcdi\xaa\xd2\xbdj\xf2*\xe8\xab\xa6`\x1ce\x9fF\xaf\x93\xd1\xea\xd8\x03\x98\xb1O\x935?,\xd2\xc0\xc9\x1b[\xd6\xa7\xc9\xfa\x104\x04c\x0e[\x9c\\K\x18\x07\xb0\x8e\xf7\xfe\xf6(\xde\xfb\x1bf\x05\x05X@\x01R\xe0\x14\"\x0bN\xc1z|\x94\x02\x19\xa1<\xbco\xc9\x92\x14,\\\x18%`\x08\xbd=K\xd2(A\xc38aC\xf8\xadZ\x92\xee\xb7\xf9c,\xb2[\xb8uKR\xf8\xed[\x92|\x81\xb7}\x1a5(c\x0e\xf3\xdb\xf0\xdb\xb9$\xddC\xdb\xb7\xf1\xde\xdf}\n^\x97\x81\x1a\xa0\x05\x96\xee\xfb\x98N\xaeA\xf3\xdf\xea\xbd\xbf.m\xfb\x86g?\x97P\xe1\xe6\xfa):j\xfc\x87c~x\xa2\x8d\x15\xa0\xef\xad\xfe\x9e/\xb1$T\xa9\xc5\xcb\x14g\x0by\xd9\x16^P\x13s\xde\xbf\xf5\xab\xfb\xb4\xb9\xd5\xdf\xe2\x8a\xb5\xed\x9b\x1d\xbf\xa7\xe9=.\xb7$/\xb1\xbc\x98\xac\x90\xff\x9fuC\xd6\xa5\xea\xf3\xf8\xaf\x1a\x17\xbb\x93!'x\x7f\xf6\x026\xb8Z\x93E\xdb \xa9\xce:\x1cz\xed{\x9eC\x9d\xe3O[\x9c\xd0\x8e\xe1\xa2 E\xd3\x84n\xb7\xcad\x8d7\x83\xebq\xb4\xfb\x99~\x07c\x1f\xd8_v\x86\x85\x96\x90\x85b\x9d\x9am\x1b\x93\x8d*\xaa\x03y\xb5a\x81+\x94f\nmi2\x0b\xb4\xe6\x80\xc5\x0c\xb0m\xff\xf4\xf5\x8b\xba\xd0\x1a\x80\x0eJ\xcb\xbe\xae8=\x87\x8f\xef\xdf\x9c\x14\xb8$u\x91`\xc8\xd1F,\xf6:O\x7f\xaaq\xb6\x03\xaa\x01\xaat\x99\ngG\xc5\x8b\xc4j\x19\xf2\xfb\xb5\x8a\x14e\xe9\xcfx\xa1\xcf\xe2\xdf\x16\xa4\" \xc9`^/\x97\xb8\x90\x836\xe3\xd7\x86\xf1\xbe\xc1\xa6.\x1b\x8d\x04HoQe\x18\x95\x86\xf2a$\xc7ppr\x00\xc9\x1a\x15(\xa9pA\xbf\x82\xd9\xc9\x0fJ\xbc\xda\xe0\xbcQ\xbb\x1f\xdf\xbf9,a\x8b\xaa\xb5\x96\x1bkTS\x1cJ\xffU\xcanYg\xd9\x0e~\xaaQF%\xb8\xe0\xf2\x15\x9fb\x92\xbe\x7f#\x8d6\xca\xcaXA\x90iP\x0c\x97\xeb\xaa\xda^\x1e\xf3\xff\x96\x97\xc7@\n\xc8\x89\xf8\xf5\x98\xcd\xc6\x04\xe5@\xd8\xea\xa4\x12\xd13\xc4\x15\xd4[Q\x9a\xd9\xf0]\\\\\xe3\x82\x8bf\x83\xb6\xe2\xcaI\xd6\xf2\x8a4\xf5\x99\x99\xcb2\xe5\xb7\xdd!\xbd\x93qI\xb2\x8c\xdc\x94\xcf\x0cc\xfb%\x9c.\xdb\x1e\xd1i!\xeb\x026\x9df\x06MY\xd6\x1b\xbc0\x14|\xfb\x92nN\xdf\x9d\x9f\x9f\xc1\xb7\xaf\xce\xe5\xfd\x82\x1f\xdf\xbf\xe1kl\xc7\xf6d\xbd\xdd\xf3\xc3pY\x9c\xef\xb6\xf8\xc7\x1f~\xd4\xbe\xc0\xcc\xe3\x9a\xcd\x07>\xdf\xc46r\xcc\xcb\xba\x91E\x9d`@9\xdf\xc2\xf4\xe0\xba/\xe1y[\xa9\xa4d\x17*\"*3n6$(\xa1\xba\x85\x90\xabz\x0b\"7\x12\xe6\xa84@\x1f\x89\xad\xb4\xcb\xc7\xf7oX\x1b\xd7\xe8\x9aM\xc1Mg\x0d-\xf8\"B\xb2K\xf4\xdf\xd7$]\x00\xcaM1!\xde@\xa6>\n\xbc$\x05>\x96\x0c(_T\xa5\xf34K\xab\x1d\xe4\x18/Jn\x0e\x01Sy\xc5\xb5\x11\xc4Ir\xaaf\xf3\x15f/\xb15;\x83\xa3\x8f%\x96\xc5\x9c\xa8\x94\xe8\xf4\xa4:\x8b\xcfO\x94\xa3\x95\xa9\xf7\xf3\x02\xa3+\xaa\x83\x04\xe3\xd9#\xfd\x8czK*\xfc\x8c\xdf\xbb\xba\xac\xf3\x84\xaf0\xda\x0f\xa1\xbb\x92\xba(p^e\xbb\x8e\xc3\xde\xa0.\xd9}\x97\xcbe\x9a\xa4(\xb3\xece\xf3z \x05\xa6;\x11>f\xf5m\xd2J~\xb4.1\xaf`\xd8\xacK-\xab9^\xa5yN;K\xedZ\xc3\xe6\xb2\xdb\xe2\x19\x9f\xffh\x9b\x96\xb3\x84lL\xda\xf8\x03[\xa9%\x90j\xcd\x15E>\xd4Rp$\xea5\xe2\xcd\xb6\xda\x89\xa5\xfdH\xbf 2stnPJ\xac\xd3\xcc8O7\xdb\x0c\xd3M\x96-\x18(\xb78I\x97i\x02%\xde\xa0\xbcJ\x13\x0d\x8e\x95\xad\xd5\x11&\x90\xc3y\xcd\xd5J\xfa\x9e\xaa\xa39\x06$\xaaQ\xb6\x06\xce\x9e\x1d#k\x19\xcd\xc9\xb5~N\x0b\x11\x88\xa5\xa0\xbc@\xd7\xa1e\x97\xcf\xf3\xdde{`C9\xa0b\x9eV\x05]\xc4\xfa\x16*Y\xc9=\x02eDL=@\xea\xa1\xa5\xda\x99m4\xbc\x85\xf3\xbeY80\xff\x1a\xabN35\xcf\xe4\xc2\xc9\xd29k\xb6\xd8GJ(\xeb\xed\x96\x14l\x07\xdf\xa2\xe4\xea\xa4\xce\xe9\x7f\xe8\xbe\xcd\xe7\x85z\x05\x89\x8d^o\xd8\x90%\xd4\x15WlR=\x94T\xb1\xa2\xc5\"\xe5\xba\x02V8\xc7\x05+W\xca\x0fZ\xb2<\x95\x92\x1fm\x0f\x1fB\xf5\xf7^}Bt\xf2\xc3\x93gpF\xdbO\xf5\x82\xe8\n\xea^\x9c\xf0\xe2\x8f\x7f4l\x93\xaf \x81%!\xf05\xccf\xb3\x7f\xd7>F\x1b\x83\xf2\x9d\xfe\x01\x94\xeff\xb4\x19\xaf\x0b\xb29Z\x12\xf2H\xff\xe8l\xa6\xdf\xff\xd2%\x1cQV\x1fYG\xce\xc9\xd1\x1f(\xafG\xf0\x8bA\x87\x9b\xf8\xfdj\x96\xddS\x8b\xec\xfe\x81\xae\xd1d\xc2\x83\xaf\x99mH\xbf2\x81\x84\xd2\xf2\xe85!\xb3$Cei\x11\x10o\"}\x89\xf7\xb1\xf3\xa2\xbe\x0d\xbfj\x7f99\xa1\xd3\xda\xad\x8d\x1f\xd0\x06S\xd3\xe99o\xed\nW/\xb9K\xe14/+\x94'\xf8\xe8QH\xe3\x95|L}1\xce\x82?Yf\xc1\xd9\xaeZ\x93\xdc0\x0fx\x1b_\x13r4\x9b\xcd\xf4\x1b[3\x07\x8e\x8c\xcf\xb0u\xc4fH\xe8\x04\xa1LN\xb9\xc4_\xbe\xfa\xf0\xe2\xfd\xe9\xd9\xf9\xbb\xf7\x8fL\xfe\xcav\xcd\x99?\xcc?m\x94\xe6\x9f-\xd2\xfc\x96\x18\xea\xefQI>\xfb\x1a\xfe\xb0\x9d\xcf^\x13\xf2\xcbl6\xd3\xcfC\xda\xe8cjP\xd37P\xbe\xdb\xcego\xf1\x8d\xa5\xfd\xe9\x92\xbd\xf1o_C\x9ef\xc6\x89g\x14\xb2ay\x98\xdf\x1bt\xd0\xc0F\xb4\x94\xf7m\xf61\xdf\xa0\xa2\\\xa3\xec\x9cp\xe51U7\x94\xbf\xd1\x83?\x1b9\xb9Ou\x8b\xb3o\x87;+\xbfS^}\"\x10\x1eDj\xb2\xa9?u\xa807O\x96u\x96\xcd\xd8\x0f\xd4\x94?\x04\xd4\xb1\x04\xa8\x95 j<*\x19\xf29\xa7\xfeX\xb3\xed\xe6\xd9N\x9e\xb9\xf7\x1c)\xcd\x11\x02\xd0\xb2\xc2*\x0f*'\xe6\xe39<9T\x7fJ\xd8\x0b\xb2\xc9\xcc\x13\x00X\xac\x91\x83%!\xb39*Xg?\x9d\xecf?\x1fp)\xb2s\xa9\x92\x9f\xfe\x98\xce\x9az@y\xe8L\x85\x7f|x\xf7V\xf3\x13\x1di\xfas\xebu\xe2\x964\xa1ZD\x98\x81\xfcd[\x97X\xfa\x98Wu\x864U\xc6\xf7\xd9\xd0W\x16\xb85\xdc\x8e\x01o\xe6x\xb1hM8\xeehW\xb2C\x1a\xffU\xc7\xa8\xe2\xee\xf5\xcb\xbfS\x01]\nwJ/\xd2 \x87@\xbd\x0c\x84\xdazf8\x82\xa1\xe4\x8a\xea\xae\xd6%\xb0L3\xac\xdfm\xa4\xae;\xc3EIr\xe3\xe2\x14\xbe\xc8eZ\x94\xd5\x05\x1b\xc7\xaf\xe1\x89\x9es\xf3\x02\x03\x96\x88\xe7\x9fz\xef{\x94L\xad:`\xb22,\xa4)\xe6\\\xff\x83\xe6i\xc7DEY>\x99=}\xf2\xb4<0L!\xfe\xdf-*\xd0\x06W\xb8\x0b\x90~\xcc\xf4\xeb3\x81\xb3\xea\xb0H\xf3gCg~\x81\x7f\xaa\xd3\x02/\x9eAU\xd4]\xa1k\\\n*\xd4L\x85V\xbd\xaf\x7f\xc0\xc5u\x9aPf' )7\xa4<\x99\xa3\x12\x9f\xb4\x11\xcb\x93\xeb's\\\xa1''9Y\xe0\x8b4_\x12\xfe\xfa\xaa\xcd\xc8-\xeb\xcd\x06\x15\xbbg\xf0-\xae\xde\x92\x05>\xcd\x97\x04~\xaaq!#/\xc2u\x05\x94\x05+\x00&u%\xd9b.\xe9\xd3E\xef\xed/d\x87y\xac\xaf\xd3\xe2\xc3\xa7_}u\xa8\x0f\x18BY' .\xcbe\x9d\xddf\xa4P\x98\x1d\x17\x03\x99t\xc9\x18H3\x87\xd1\xa4\xdb\xe3\xc2XD\xde\xf8\x01\xb0~\x84=\xf1\xd4\x80sp\xf0S\xb5S\xccX\xc5\xdcR\x17~\xba\x0f\x19+\xb9O\xf3\x99\xfe\xc8k@\x84\x96OeiY\xe1\x9c\xc1\\\x82\xde\xcfquC\n\x8dD-\xef:L)\xed\xbb\xc9\x1a\xe59V\x85\x9a\x1d^\xb6z57$O\xaft\x80E\x0bs\xe6\x1c\xbe\xb5eR}\xb2]\xa7f\xed;@\xb1M\xec\xc0&\x03\x9fN\x89y\xbd^\x18\xa1t\xd86\x14\"{\xb4\xdd^\x04\xbf.\x17W\xf0\xd5\xec\xcf\x7f:\xdc{\xa7geu\xda\xb8\xd7~\xfa\x7f:\x86\\\x03 k\xc2)Z\xae*0\xda\x1e\x1b\x13\x0e\xadE\x9e\x0d\xccHI\x11\x82&(B\xd0\"\x04\xad\xa5\x08A\x8b\x10\xb4\x96\"\x04\xad\x8a\x1045E\x08\x9a\xa4\x08A\x8b\x10\xb4\x08As\xb4\x92\"\x04\xad\xa1\x08A\xebR\x84\xa0E\x08\x9a\x82\"\x04-B\xd0l\xc2\x8f\x104\xed;\x11\x82\xd6\xa3\x08A\x8b\x10\xb4\x08A\x8b\x10\xb4\x1e\xb9\xc2\x81\"\x04\x8dQ\x84\xa0\xfdV h\xe1\xf0\xafr\x97'i.J\xf9h\xc0_\x1f\xf83\x0d\xf6\x8b\xe1\xbd\xc4\x8b:\xc8\x97xG\xfc\xfa`\x11_\xbd\xeew\x89\xf3\x9a\x13\x92a\xd4w\x85Y\xa3\x9b\xa2\xeb\x9e\xc1\xcd\xbe\xc0$\xc5\xd8\xa6\xa0\x18\xdb\x8c\xb1\xcd\x96bl3\xc66[\x8a\xb1\xcd*\xc66\xd5\x14c\x9b\x92bl3\xc66cl\xd3\xd1J\x8a\xb1\xcd\x86bl\xb3K1\xb6\x19c\x9b\n\x8a\xb1\xcd\x18\xdb\xb4 ?\xc66\xb5\xef\xc4\xd8f\x8fbl3\xc66cl3\xc66{\xe4\x1ag\x8a\xb1MF1\xb6\x19c\x9bm\x99\x7f\\\x95'\x19\xaapY\x19\x03\x9do\xd8#\xcd\xbdg\x1fp\xd5\xc4<\xf9\xdb\xed\xcd\x01\x8fK\\\xe9b\x9f\xfbl\xc4\x83\x0f6\x0c\xca\xafu\xd1]\ne\xf4\xbd\x98\xee\xf01]\x1dY\xddC\x9c\xcd\x92\xa8o\xf51Y\xeea\xb4\xb4\x0e\x1cZ\x08\x0e\xd1@pi*'\x17\xaf\x92$\xdf\xc8\xa0\x91\x99\xda=d8cL\x1d!\x04{\x94\x10\x02\"\x85\xe6\x0e\xa0j\xed\x1c-\x84\xa9\"\x86\x10\x18542\xa4\xc2u\x8e\x1c\xc2\xf8\xe8!xG\x10\x8d\xacDd\xc3+\x8a\x08SG\x12\xc13\x9a\x08\xbe\x11E\xf3\xccn\xa2\x8d\xaeQE\x98:\xb2\x08n\xd1E\x982\xc2\x08\xa3\xa3\x8c\x10\x16i\x84\xa9\xa2\x8d\x10\x14q4/\x07T\xe2\x85=\xea\x08\xb7\x13y\x84[\x8c>\xc2\xedD \xc13\n a\x91H\x9b\nv\x8bF\xc2\xb4\x11I\xf0\x88J\x82\x7fd\x12\x02\xa2\x93\x0e*\xf3\x91C\x84\x12\xa6\x88R\x82-R \xee\xe6\x99C\xc4\x12<\xad8\xef\xc8\xa5\x91\x1b\x8bj:D/\xc1\xa3\x95\x13F1\xc1+\x92 SG3!0\xa2i\x9eW\xa5=\xaa \xe1\x91M-?\xfaE[t\x13&\x8bp\x82{\xa0\x0e\\\"\x9d\xe0\x17\xed\x04\x9b\x0b>0\xea \x0e|\x0d\xfe\xbf\x89\"\xa0\x10$\\\xf7H(8\xf42 \"\n\xa1QQ0\x87~\x9c\xa2\xa30q\x84\x14&\x8a\x92\x82\xdb\x8c\x19\x1d-\x05\xf7\x88)8FM\xc19r\nn\x13\xca?\x82\n^QT0ERa\xaah*\xf8FT!0\xaa\n~\x91Up\x18\x04\xcb2\xb3\xbf\xef\x1ei\x85 \xa3\xad\xe0\xd24\xc3*\x9b.\xf2\n.\xd1W\x18\x11\x81\xd52\xa4\x0f\x9a\xa2\xb00u$\x16\xac\xd1X\x08\x8d\xc8j\xb9\xf1\xb3\xbd\xd9\xcda\x8f\xcc\x829:\x0bA\x11Z-+c\xe4\x16B\xa3\xb7Zn\xdcB6\xf8\x13\xa7\x8b\xe2\x82S$\x17\x02\xa2\xb9\xe0\x17\xd1\x85\x90\xa8.xGv\xc1\xacE\xc0\x12m\x03\x8f\x88\x9bk\x94\x17B\"\xbd\xe0\x1b\xed\x05s\xc7C\xa2\xbeZf\x9d\x98\xaa\xeb\x92q\x8b\xfe\x1a\x17D\xbe2G\x80a\xda(0\xd8\"\xc1`\x8e\x06k\xdf \x8d\x12\xc3\x84s\xd7#Z\x0c^\x11c\xd0\x1a(\xd7\xa4J\xf3\xd5\xc5\x96\xdc\xe8\xea\x89;\xf9lL\xb1NN\xf2\xae\xf7\x8bm\x91\x92\"\xad,\xb1\xc2Q_\xeb\x17\xef\x95\xa1Ve\xe9^e\xd8Z\xd2\x16\xad\xd2\x9c\x8d\xc5~c{\xdfh\x1f\xe4\x11\x00\xcc\xbc7\x9d\xbf\xca\xcf\xa9\"\xd5\x9c*S\x88\xd4R\xc9\x1c\x7f\xaa\xf4\xd1W\xab<\xad\xbe\xb6^W\xffG\xe7\xbf\x92\xad\x90b\xa6\xff\x14\xeejT\x96\xdc?\x7f\x86V\xf8=\xfe\xa9\xc6e5\xe3\xbfk\x98\xfdT\xe3b\xc7\xd8P\xb6T\x92\x186\xa4\xac\x003\xa7/\xf3\x16\xcf\xe0\xb4\xea\xe8\xaam\xb5\x83T\xe7\xc5\xa9\xd6\xb8\xc0,Z\x90\x13\xd8\x90\x02\xcb\xe8\x80j\x7f\xaeH\x8541fga\x1a\xaem\x10\xa5\xa8\xb5\x8e@\xf6y&E\xf6\x8f\xbc\xde\xcc\xb9OR\xa6Pu\xf2ut\xfd\xed\n:!u^]0f:5v\x83J(qu\x0ciU\xcaXM u\xce'\xf3\x82\xbb\xa3o\xd2\xb2??\xac\xf9\xde\xfbp\x0f\xa7\xd4\xef\x01\xa3&\x11\xbc\xcb\xe8\x9b\xddw\x0c\x93\x11\xf3\xc0%\xc5<\xf0\x98\x07\xdeR\xcc\x03\x8fy\xe0-M\x8a\xde\xf0Anx\xa16b\x1e\xf8X\x84F\x00:c\x12d\x86?*#\xe6\x81\x8fAa\xf8 0\x02\xd0\x171\x0f<\xe6\x81\xc7H\x0d\xa4Ib\xffz\xb8\xa6\xb2*\xea\xa4\xaa\x8b\x16s(&\xc7\xea\xfd\xd9\x8b\x01?6\x91#\x8a)\xa2\x98\xb4!\xbc[\x08\x00\x86\xe8\xbf\xb2BU]\xea\xf5\xdf\x07\xf6\xfb\x9e\xfe\xa3<\x80\xbf\xabTz\xfc5\xf1\xcb\x83Uz\x18\x15Y\x8a\xcb\xea\xa2\xacH\x81\xc7\x15\x87R\xe2D\xa7\xe7X\xa5\x1b\\Vh\xb3\x0dd\xba@\x15~L\x99\x0c\x9e@\xdb\xed\xc5\x1a\x95\xeb@\xb6\x8a0t\x03\xc8\x9e\x94\xafY\x8d\xd3i\x87}\xb58\x9f\xc6\xcc\xdf8`GgyT\xe2Q\x89?,%\xbeH)\xcfyMg]\xc7\x8e\xddl\xea<\xadv\x17[B2\xbd>\x7f!\x9f;#$k\xd4:\x07\x10\x8a_\x80r\x80\x84\xa4\xb9Z\xb7\xf7X\x88\x07\x1e\xac\x8ao\xa5\xd1\xa5\xfb\x98l\x0b\x9c\x93M\xf0\\A\x1bzB\x0d|\xdd\x05o\xf3\x12'/H\xdaI{\x81\x8a\\\xe1\\\xc0ex\xeb\xe5q\x1a\xe5\x0b\xf6\xa7$\xdd u\xa6*o\xae.\x1a\xf4\xf6\xdd\xf9\xabg,\xf0\xc3\x9f\x13\x11\x94\x94\xc1|^\xe2D\xf8\x96\x1bhU\xd7\xc1\xacd\xc8\xa3j\xea\x8f\x95\xe9*GT\xe1\x97\xcdq\x12\xe6;X\x91\x15a\xde\xdc\xfd\xa0L?#\x88.\x06)\x94\xfe\x1a9,\xfb\xabD\xf1\xf6\x9e\xb0Y\x06Do\x05\x85\xe7Q\xf4\x17\xe2\xe0\x91\x98L!(\xee`\xf7\xbc\x83\xfd\x97p\xea\x18\xf7\xaf\x05\xce\xf0\x8a\xd5Q=\xf9\xa5\xf9\xf7\x85\xa8f\xfa\xebI\x81oP\xb10\x9cS:A\x88\x97\xfc\xf5\x94\xe4\xe7\xa4B\xd9{\xfejo\xaf\xe3\x8e>\xc1\x14P\x92\x145\xd7\n\x18%m8\xa5\xb1`\x95\xdb\xa0\xfa3\xe2\xc9\x07\xbb\x1f\xf6\x04\xd9\xa5\xfb\x98\xbd\xed\x11al\xd9Z\xde-\xf3\xeb\xea\xbeq\xd2\xf6\x90\x93\xa5\x9f\x9cl\xbd\xe5d4\x038Y{\xcb\xc9l\x12prb\xe5b\x1ep\xf26\x12\x8c\x82`\xe6\x83\xc5T\xe0\x14d0\x18\xf8\x89X\xb5\xc9l\xe0\xe4o<\x98\x83\xa3\x92Z\xe5\xf1R*;\xae@\xda\xb0=\xd7T\xed\xa4R\xf2\xa1\x87Vh\xf4\xe5a)\xffM\x07\x80\xaf \x8by#u`3\xa2Y&\xac\x90=\xdd\xd8\xf9\xd0\x90\xa9&\xd1\xf6>tJ4\xb3\x1b\nZ5\xf7df\xf3\x1d\xb9\xeb\xb1)\xeb\x0d\x9b\xde\xfd i\xb0\xb5\xf7\x96\x1a3<\xd4\xdbt\xb8\xd1\xad\xb1.\xa2\xb9-(\x9a\xdbwln\x9b C{\x96\xb4n*\xee=\xd8[\x8a\xcd\xaf\xf2z\x01\xa8\x88\xa8\xec\xb0\xeco\x06#!I\xb7xt8\xf9e\xcf\xda4\\\x9c\xd1\xaer\xaf\xe3\x03\xea\xec\xbf\x96CC\xe9\xd7\x9aa5\xccQ\x89/\xb6\xb2\x90\xb6 \xbc`]V\xf6C\x0b0\xd7\xe4\xb6\xc0 \xaa\xe8L>_ce\x03Z\x17\xe2\xa2yZ\xc3\x8eU\x80+!'\x90\x91|\x85\x0b\x96\x12\xa7\x8b\xa3\x8b\xb4\xc9O'\x8a\xe9zX\nO lp\xb2FyZnT!\xf59\xc9\xeb\xf2~\x05\xa6j\xc1\x03\x96X\xcfR\xb9\xc09\x9ag\xd8(\xb1ab!XE\xc5\xf4\x1bW'N6\x89\xb0B\x84F\xdb\xcf\x99\x8a\x16H\xb4@\xee\xde\x02 \xda\xb5[\x87\x8f_X\xb1\xb3\x86\x1a\x97Kws>\xcd\x97d\xffr~\xb6\xe1\xa4e)\xe2F\x0d\x8b\x12g\xcb\xc7{\x80\x1f\x9e\xa4\xd5\xbc,\x9e\xee\xd9\x03\xdao\x8b\x87\x1f\xacY@D\xda\xed\x14g\xb9!/\x8dkY>&\xad\xc7\xa1\xb2\xa5\x83p1'\xf9\xe2\"\x86J9\xb9l\xb01T\xdaPO\\{\xb3\xa9\x0f\x89\xc2\xd9\xb2\x13$-\xd5\xa0(\xe8\xe8\x8b8\x19\xe3d\x0c\x9e\x8c\x9dm\xa7;\x0b;\x7f\xee\xab\xca\x02'8\xbd\xc6\x0b\x83\xabKmDj\xf7#\xab]9\xe0\xd6Z\x99\xfa\xed5:\xbb\x04ES\xf3\x8eMM\x93\xb3\xebw\x11\x127\x9b\xcd'\xc3mKeA7\xeb\xfaE\xab\x85\xa4\xc1\x8c\x92\xa4\xde\xd4\x19+o\xddQR\xd4\x1cF\x96d\x1e\x05\xdb/\xa4P\x1e\xa8-l\xda\xe4oA\x8d\x83mM\xda}f\xba\xd6\x82EG\x80-A\xc7\xa2+\xc0\xda:N\xd6\xd4\x1c\x87eo3W\xc0\x8d\x8d\x8b\xd9\x02!\xa6\x8b\xa1\xf3\xae\xe98A&\x8c\x96\x9bc*\x8e\x9f)#\xaa \xa9\x03k\x8a\xb5n\xb53\xb415\x95>j-\x8c\xe6\x95h`\x0c~\x8d\x06F40\xda\x1f\xee\xc8\xc0 uUV\x88\x15\xa9\xbb\xb0f\x147+\xfb]\xfb\xd60\x19@\x1e\xd2\x19|bO4fKc\x9f\xed\x17RJ\x0f\xd4\xe2\xb08\xb8\x82\xec\x02-O\x88F\xc1\x90\xa2Q0 ?\xa3\x00\x9cDhZ\xf6\x9d\xdc\xdc\x8e*Q09\xaa\xf3\xc72\x02\x97?\x92\x93\\\xd5\x91\xc1\xe1\x04Rf\x05\xe4ez\x8dy-N\x94\\\x1d\xf3\x1b\xd8J(\x99\xf8\xa0DyZ\xa9VD\xb2\xc6\xc9\x95\x7f9\x12C\x97\xad\x86\xd1\x80\x9f\xe2\x06\xc1\x81\x9d\xa4\x10k\xf4\xc8\x08\x8a\x06S4\x98\x1e\x94\xc1Tf\xa8\\c\x17#\xe9\x03\x7f\xb2\xb1\x8c\xd8\x9b\x80\xaf\xb9\xb2\\\xba;`\x04\xa3/\xa4\x00\x1e\xa8-\xd4\x93L\x97\xeeci\xb5#\xb7\xc5EJ,uP\x9c\x16\x89\xe1\xda\xf3%\xbb\xf9V\xe7\xc8\xb1~\xc5\xbe\x05\xc3`6\xbc\xa2\xb3\xa8\xbb\xf9v7\xcc\xceD\xd3\\\x0b%n\x17OKf}\xa4 \xab\xc5^\xad\x05\xc8\x86\x95\xfed\xa5\xef\xd5o\xb3\x1b\x9b\xd3\x92]\x15*\xef@\xcd\x12\xe6e\x04\xb4\xa5#S\xa4\xec\xdf\x1bY\x9f\xbc\xac\xd8\x85\x9eJn\xcc\x10S\x1a\x02\xdc\x14\xe8\x06\xf7\xb8\xc5\x84\n\xdc\x80yrq\x1f\x10\x12\xbd^kn\xba% \xbb \xd4V\xfbC\xcc\xe1~\x88Q\xfc\xcd\xcd%\xd8V\x1d\xdf\x9f\x0c\x03\xa8^S\x8b\xbd\x0f\xd7\xeb\x94h\xef\x19\x18\x93:\x1f\xe5U\x13\xa6S\x86aU\x18\x8a\x9cr\xeauUS\xf1\xa5m\x85\xb4\xa5\x9a\xbb/`\x8b\xca\x92\xcf\xad\xeeu\xff\xfcw\x0d3\xbe\x83T\x96\xcb1N\xab\xce\xbd/\xec\x1e\x02\xdd\xdd\xe6\xd5\x1a\x17\x98M\xb6\x9c\xc0\x86. Q\xfe]\x05.\xd3\x94{\x01\x1fa\x1a\x14\x8c\xf0\xdeiO8M\x99~\xdd\xbd\x0d\x9d\xdbou\xfd\xed\n\xba{\xe3\x81\xe6\xf1\x1b\xc4\xca\xe3\x1fCZ\x95 \xeeY.\xa1\xce\xf9d^\xf0\xabgo\xd2\xd2P\xac\xd6\xe2\x8c\x14\xfb\x9e\xd5\xe0\xb6{\"\xe5V\x1c\xcdjA\xd1\xac\x8efu\xb0Y\xdd\xb6\xbc\xacPQ\xa5\xf9\xeab\xef\"&\x93I3x\xab\xd7 yI~\xf3\x90(\x18\xde\xf6e\xb8\xd8\xc5\xf6<\xec\x9f\xef\xbd\x19{\x03\xaa\xd1\xca\xb2\xeb\xfcb\x8f[\xe8\xb8\xb81\xe4\x81v;\xde\x7f\xe5'\xc6x\xff\xd5-\n\xd7>G\xe3\xfdWSH1\xde\x7f\x15\xef\xbf\xfam\xdc\x7f5\xf4\x00&t\xdf\xc9\xcb\xba<\xb9\xf6N<\xac\xf6\x92\xeb>\xb5\xfcL\xb9\x87/\xe4C\xbf\xa1\xc4C\xe5\xc9Td#\xb2\xd9BW(\xce\x17\xb8\xd8\xa4y\x05\xad\x9c\xc43\xcc\xe7\xa4\x9cE\x9c\xf6\x05\xabx\xe8,\xc3\xa8\xa4\xc7u\xa9Y.9\xf7\x19\x9d\xcf)\xc9/y\xbeY\x05[\xb2\x15\xa08\xf6\xc1T\xe53\x92\x12\xa5\x07\\H\x95\x0e*\x16\x8a\xc2\x0b(1\xfdN\x85\xb3]\x9b\xa7VoW\x05Z\xdcJ\xb2\xe5<#\xc9\x95\xc9\xd7`\x88\xf0\xda\xceN\x00\x1b\xf4\xe9\x82Z-\x86\x00\xb0\xc3\x11\xa8w\xc4\xd485\x00\xf4\xb0\xa4.}\x8f>\xf1>C\x99\xfeL\xc7#gf\x95\xd2\x0f#\xe9-\xa9\xf03\xd8\xd4eE\xb5\xd4\xaa\xc0\x88\xdf\x1a\x8er\xf8\xca\xd0\xf1\x15zX\xdd^\xa1\x12\xb6\xb8\xe0\xdd\xf7\xef/)\x00\xffT\xa3\x8c*\xeb\xc7O\x94\xaf\xf7V\xf17\xf43B\xcd5\xd7u3\xbb\x88n\x80lf\xb7\x03\xa1j\x0e\xbeN\x178W]\x95\x07\xd3\xcdN\xb4\xc2\x17y\xbd\xb9`M\xb9\x9b\xf1\xb2\xeb:It\xd4\xe8\xb1\x84,\x1ba\xf0\x19\xcb\x1ak\xae\xe9-\xd2\x90\xd3\x84\xb5\xaa\xce\x103Z\xa4s\x9d\x1f}\x98\xeb]\xdfg\xd6\x80\xe7+,/c\x86\x13\xf8\x05]\xe3\x826\x895\xc1\xf4\xfd*\xdd\xe0_u\xb3LJ~!8\x8f\x94\xfbx\x89\xd2\xd6\x9a\xe5y*\x8dIHH\xc1\xf5\xf9B@>rjR\x1f\x96pP\xe7s\xc2m\x14\x1e(\xd2_H\x0dt91\xaf&\x94\xe9&\xd5\xde\xb6\xcf\xa9IEfc\xb8F\xf9\"\xa3\x1f\xf9\xe1-\xa9\xd6i\xbez\xfc\xbcz\xfc\xa1BW{\xd8\x80.\xa1\xaaB\xc9U\xf9\xe3\xd1\xba\xaa\xb6\xe5\xb3\x93\x93UZ\xad\xeb9\xbb}\x1b3\xf7t\xbd9\xb9I\xafR\xfe?g\x05!\xcb\xc7d\xc9\x19?~\xfd\xfc\xbf\xfe\x9f\x9b5\xaa\x1e\xa7\xe5\xe3j\x8d\x1f\xe7\xe2\xcb\xa8z\\\xb2\x07\xb6\x05\x99gx\xf3\x18\xe5\x8b\xc7kr\xf38A\xf9\xe3\xb4z<\xc7\x8f\x97\xe9'\xbcxd\x9a w\xbeC\x18\xa7\x08\x8bH\x95X\xa4\x06m\xd0\xa7tSo\x98\x92b\xa7\x03f\xc3\xcb\xb9\xd3l\x1f\xa6\x85\xd09M3\x98v%l\x05\x04\xf4X\x9ca\xa9\x90M\x83\x97/\xe4\xec[\xa2,\xa3|\x96\xa4\xa8\xd0<\xdb1/y!\xdb*T\xaa\xd8\xd2\x0c\x1c_\x8a\x93bZ\xc2\x93\xaf\xfe\xfc\xff\xfe\xe5o\x7f\xa53\xf2\xc9\xf7\xdf\xd8\x15\xbbVz\xaf\x84T\xced\xe1\x88\x8aYh\x18\xd6\xe4\x06n0\x9f\xb8\xb8\x15\x1e\xd1E\x0f6([bT\xa2\xc5>\xfd\x0b\x17\xe9rG?\xf6\xaa\x19L:\xb1V\xe95\xce\x8dV\xf9\xfew+B\x85\xcc\xbd\x8a\xbc\x00\x0f\x9d\xd7HX\xf8zVb%\x9d\x15x\x8b\n|\xc6\xdeD\x99\xda\xces[\xf3TI\xb6\xca\x93/nX\xd6y\xc2\xa3Yi\xb5\x93+-\x11\x1d\xd11\xeat\x8f\x1dC\x935\x9d\xfe\xa7y\x85\x8b%\x1a\x1a\x15\x0e\x10\xdeA\x19\x9e~\xa5\xf5!\x82@\xc6\x96\x06\x8c\xba\x0e\xbd\xd6\xd5\x17\xb1\x03\x11;p\x97\xd8\x01\x9b\x13[\x1a\xe7\x0d\x84\xb5\xef\x85Q\xb9\xb2\x9fg\x99\xb4\xfc\xdb\\\xe1\xac=$)\xfd\xd6\x9d\x97\xc4\xcf\x0f\xd6g\xad\xf7C}\x96\x93\xca\xa6\xf0Zz\x0e\x1f\xdf\xbf9)pI\xea\"\xc1\xcc\x92\xe7\x06G\x9d\xa7?\xd5\xccC\xbd\xc0yE-\x1f\x11\xe8\xa4*P{\xaa\xe3\xf5#J\\\xa4(K\x7f\xd6\x97gc2\xa8HB2\x98\xd7\xcb%.\xa4&\x98\x89\xb39\xeb\x1b\xf7OJ\xcb\x06\xe9\xcd\x9f\x0c\xa3\xd2`e\x90\x1c\xc3\xc1\xc9\x01$kT\xa0\xa4\xc2\xc5\x8c\xb9\xce2TVP\xe2\xd5\x06\xb7Q\xc1\x8f\xef\xdf\x1c\x96C\xb0K\x9fX\xa3\x1a(\xad\xfe\xab\xccb\xad\xb3l\x07?\xd5(c\xb6#\x97\xaf\x0c@RI\x1e\xa1\x92\x9a\x01Z&\x97\xb4)'+BV\x19\x9e1\x99\xcd\xeb\xe5Lz\xeb.\x1f\xf1\x9e0\xb6-@\xc1`W z\xea#y\x9a\xa0\x8c\xa9\x0e\xfd\x97\x8f\xf0l5;\xa6\xa2e\xde\xae\x83\xd9\x81\x8c\x86H;\xed\x91\xc9\x16;\xa5\x96\x06J\xaa4\xc1\xc7Pa\xba\xe1\xd7e\x8d\xa88\xb8\x8d\xbbM3\xdaRa\xad\xcc\xd3\x1c\x15\xfa\x136\xbb\xc2\x8c\x9dje\x04x\xa7\xff4\xdf@!\xad\xa4\xdd#\x82,t\"\xe1Ol\xa8\x9f\xe7\xbb\x19|Gn\xf05.\x8ea? \xa7\xa5\x8f\xef\xdfH\x1c1e\xa5\xc8\xcei\x89)#\x0c\x97\xeb\xaa\xda^\x1e\xf3\xff\x96\x97\xc7\xd4\xb6\xcd\x89\xf8\xf5\x98\xcdFz\xf4\x96\x08\x9eL\xdf\xed\x12WPo\x01\xb1\xbe\x1b\xbe\x8b\x8bk\x1e\xad\xa8`\x83\xb6%\x9fZ\xac\xe5\x15\x91+\x8b[4i\xc5,a\x0d\xea\x19\xd8\x86\xc22\xa5\x9e\x19\xc6\xf6K8]\xb6=\xa2\xd3b[\x10\xaaA\x17M\xa7\x19\xe8\xa4,\xeb\x0d^\x18|T_R\x8b\xe7\xbb\xf3\xf33\xf8\xf6\xd5\xb94\xf4?\xbe\x7f\xc3\xd7\xd8\x8e\xe5\xbf\xe9S\xeb~\x18.\x8b\xf3\xdd\x16\xff\xf8\xc3\x8f\xda\x17@\xe2Ns1\xdf\xc4\xee\xc9Fh[\x90E\x9d`@9\xb7\x8b\xf4\xd1\x93/\xbb\xc6'\x0fW\xb2\xec2\x89mO\xa8n!\xe4\xaa\xde6\x01\xf09*\x0d'G\xa2\x8bbJ\xfa\xf8\xfe\x0dk\xe3\x1a]\xb3)\xb8\xe9\xac\xa1\x05_DHv\x89\xfe\xfb\x9a\xa4\x0b@\xb9~b\x81h S\x1f\x05^\x92\x02\x1fK\x06\x94/\xaa\xd2y\xca\xac\xf1\x1c\xe3\x85\x84\xb10\x95W\\\x1b\xcf\xc0$\xa7j6g\x07W\xc2\xd7\xec\x0c\x8e>\x96X\xbaC\xa8\x94\xe8\xf4dN#6?Q\x8eV\xa6\xde\xcf\x0b\xcc\xd2\x01$\xe3\xd9#\xfd\x8c\xe2q-v^\xed\x9f*\x84\xeeb\xa8\xfe\xbc\xcav]\x84\xb3^]2\xa4\x1d\x03:\xe9\x81\xcdb/\x9b\xd7K(0\x8b(s\x0f\x00\x07\x07\xd1\x8f\xb2\x03.\x03\x1e\xcbu\xa9e\xc5`l9s_\xa4\x95\xc1{A9\xcd\xf8\xfcG\xdb\xb4\x9c%dc\xd2\xc6\x1f\xd8J-E8\x82\x855\x07Z\n\x8eD\x89Q\x8e6\xe2K\xfb\x91~\x13d\x9e\x96\xb9A)qTYZu2V\xf9i\xad9\xdf\x95x\x83\xf2*M4\x81\xd9[\xb0\x8c\x87\xe4j%}/\xe2\xa4\"k\xa6c\xe0\xec\xd91bsGsr\xad\x9f\xd3\x8d3\x89\x8f\xa3\xe29\x97\x96]>\xcfw\x97\xad\x0f\x12\xe5\x80\x8ayZ\x15t\x11\xeb[\xa8d%\xf7\x08\x94\x111\xf5@\xe35\xa2\xda\x99{\xa4X\x0b\xe7}\xb3p`\xfe5V\x9dfj\x9e\xc9\x85\x93\xa5s\xd6l\xb1\x8f\x94P\xd6\xdb-)\xd8\x0e\xbeE\xc9\xd5I\x9d\xd3\xff\xd0}\x9b\xcf\x0b\xf5\n\x12\x1b\xbd\xde\xb0!K\xa8+\xae\xd8\xa4z(\x81#\xa0S\xae+`\x85sz\x86a\x8d\xaf\xd6d!\xcb`+\xf9\xd1\xf6\xf0!T\x7f\xef\xd5'\xc4\xf2\x8d\x9f<\x833\xda~\xaa\x17DWP#\xf44\x87\x17\x7f\xfc\xa3a\x9b|M\x08, \x81\xafa6\x9b\xfd\xbb\xf61\xda\x18\x94\xef\xf4\x0f\xa0|7\xa3\xcdx]\x90\xcd\xd1\x92\x90G\xfaGg3\xfd\xfe\x97.\xe1\x88\xb2\xfa\xc8:rN\x8e\xfe@y=\x82_\x0c:\xdc\xc4\xefW\xb3\xec\x9eZd\xf7\x0ft\x8d&\x13\x1e|\xcdlC\xfa\x95 $\x94\x96G\xaf \x99%\x19*K\x8b\x80x\x13\xe9K\xbc\x8f\x9d\x17\xf5m\xf8U\xfb\xcb\xc9 \x9d\xd6nm\xfc\x806\x98\x9aN\xcfykW\xb8\x12\x91\xc3\xd3\xbc\xacP\x9e\xe0\xa3G!\x8dW\xf21\xf5\xc58\x0b\xfed\x99\x05g\xbbjMr\xc3<\xe0m|M\xc8\xd1l6\xd3ol\xcd\x1c82>\xc3\xd6\x11\x9b!\xa1\x13\x8429\xe5\x12\x7f\xf9\xea\xc3\x8b\xf7\xa7g\xe7\xef\xde?2E\x11\xdb5g\xfe0\xff\xb4Q\x9a\x7f\xb6H\xf3[b\xf00SI>\xfb\x1a\xfe\xb0\x9d\xcf^\x13\xf2\xcbl6\xd3\xcfC\xda\xe8cjP\xd37P\xbe\xdb\xcego\xf1\x8d\xa5\xfd\xe9\x92\xbd\xf1o_C\x9ef\xc6\x89g\x14\xb2ay\x98\xdf\x1bt\xd0\xc0F\xb4\x94\xf7m\xf61\xdf\xa0\xa2\\\xa3\xec\x9cp\xe51U7\x94\xbf\x9d3\xd4'\x02 )\xafK\x8d=w\xa807O\x96u\x96\xcd\xd8\x0f\xd4\x94?\x04\xd4\xb1\x04\xa8\x95@\xe7\x96n\xdf\xe4sN\xfd\xb1f\xdb\xcd\xb3\x9d\xff\xd4{\xdf\xa3dj\xd5\x01\x93\xe5\xc138P\xad\xcd\xbe\x18f\xbc\x97\x07\xc7&~\xac\x7fo\xd1\x86\xf2\xfc\x0f\xde\x85\xff4\xbe@\xfb7x\xde\xb7\x93\xa7Kq\xe4\xec\xcf5>\x1b\xd2\x12np\x96=\xbe\xca\xc9\x0d\x0f}\xaeQ \xc8T\xc9\x99\xaf!\xd5/\xfd)\x7f\xcc\x8f0\x83u\xd0\xe6y\x8b\xe6\xd0 \xac9^\">\xa5\xd5\x1f\xbbd\x8bQ\xce\xf35\xc9\x16\xdd\x1a\xd4|)\xa7y\xb3>L\x81N\xb1d\xd4\xdfaM\x985\x9b\xfa\x11\xd5^R\x84{\xce1\xe93\xfe\xf1\x87\x1f\x1f\x19\x16\xd2\x14s\xae\xffA\xf3\xb4c\xa2\xa2,\x9f\xcc\x9e>yZ\xea\xe1\x94\xfb\xbbp\xef\x8c\xdc \xcex\x86I?<\xb5\xe7a\x88U\x17\x18\xc5\xaa\x0b\xedO\xae\xc2\xfc\xddU]P\xc3%:\xc1\xdd\xf0\x82\x0b\xdd\xb0\xf2\xfb\xb3\x17\xc3N\xc4\xd2\x0b\x11>au\xf3\xbaxJ!F\xbac\xa4[\xfbd\x8ct3\x8a\x91\xee}\x8a\x91\xee\x18\xe9\xd6Q\x8ct\xc7H7\xa3\x18\xe9\x8e\x91\xee\x18\xe9\x8e\x91nN1\xd2\x1d\x12,\x8e\x91\xee\x18\xe9n)F\xba\xf7)F\xbac\xa4;F\xbac\xa4;F\xbac\xa4;F\xba\x7f\x0f\x91nS\x0d\xe8XW\xd7\xafhi\xac\xab{\x8b\xc2\xb5W\x84\x8duu\xa7\x90b\xac\xab\x1b\xeb\xea\xfe6\xeb\xeajK\x12\x9c\xfc\xb2F\xe5\xfaW}e\x82\xbd\xb2\x04\x0d\x10\x8cE\xa2\x80\xe4\xed_(+9\xca\xbdJ\x05\xbf\x952\x05A \xb3\xca\x88\xc1\xb0\x86\x1f\\\xfc\xf7\x93\xa3/\xdc\xb0\x17!\xc8\x0b3\xc2\"\x08_\xc1>\xa1ahEWL\x80\xad\x08DVh\xe3\xd1n\xb8\x8aQ\xa8\x8a L\x05\xab\xb7\xa5\xe6W\xb9!*B\xf0\x14\xa6(\xa7\x13\x9abb,\x85\x13\x92bB\x1c\x85\x15E1\x11\x86b\x0c\x82\xc2\x1b?1\x01zbb\xec\x84\x05919n\xe2vP\x13\x93c&\xdc\x11\x13ax \x83\xd0mh\x89\xc9\xb0\x12nH \x85\xa3B\xaf_'FI\xd80\x12#\x11\x12\x06|\x84\xd5<\xb1b#\xdc\xec\x97iq\x116T\x84\xbdMa\x88\x08\xa9\xd9\x15\x0cmx\x88 \xd1\x10#\xb0\x10j\x04\x93 1-\x0e\xc2\x8c\x82\x98\x02\x03\xe1\x14\xc4\xb7\xe0\x1f\x9c\xd1\x0f\xfa`\x9c?\xf2A\xcfK\xe9\x12\x9f\x04\xf3\xe0#,W\xbc\x83]&\xceX\x87\x00\xa4\x83.\x02kC9L\x87q\x18\x8fp0\x8e\xf7Ht\x83\x13\xb6\xc1\x8elp\xc15\x18\x85\xed\x8bipE4h\xf0\x0c\x13\xa0\x19<\xb0\x0c\xfeH\x06g\x1c\x83!\xfc\xafm\x8e\xe1\x1dW\xfc\xc24\xe8\x05c\xe3\x15\xbf\x04\xe1\x16\xa4#Z\xc1O\x83Z\x98\x18\xb3\xa0G,\x84\xe2\x15\x98\x7fD\xd5p5ZaZ\xac\x82\xee\x18l\xc3)hQ\n\xd3b\x14\xc2\x11\n\x1a4B\x10\x16\xc1\x8a;\xf0C\x1d8c\x0e<\x11\x07>x\x03-\xda@\xdf\x1a\xd7\xa8\xaf\x1b\xd2\xc0\x13g\xe0\x812PvmZ\x84\x81\x0e_0\x02]\xa0\xf4\xceh\xb1\x05a\xc8\x02\x13\x8a`z\x0c\xc1\xf8\x99\xe4\x8c\x1fpE\x0f\xf4w@\x87<^\xaf$^\x91\xb6;\x08\x97H\x8a\xb7\xa5\x0b\x8a)\xbb1e\xb7\xa5\x98\xb2\x1bSv[\n 1i\x99\xc5\x94\xdd}\x9a(\xdc4.\xe0\x14\x10r\x9a$\xe84y\xd8\xc9\x1ax\xba\x85\xd0\xd3m\x05\x9fn!\xfc\xe4\x13\x80\n\x0dA\x19u\xb8-\x085a\x18\xca5\x10\xe5\x19\x8a\x9a<\x18e\x0fG\x8d\x0eH\xc5\x94]k\xcb\xc2\x02TJV1e7$Te\x0bVM\x13\xaer\x8c\xc1XCV\x1eA+k\xbe\xa1g\xe0*\xa6\xec\xc6\x94\xdd\x98\xb2\xdb\xa1\x80\xf0\x96{\x80+\xa6\xec\n\x8a)\xbb1e7\xa6\xec\xeeSx@L\xc9.\xa6\xec*_p\n\xa1\xc5\x94\xdd\xe9\x02j1ewt\xb8m\x9a9\xe7\x1crs\x0f\xba\xb9\xa5\xec\xaeQ\xd9UQ\xa6D]\xfah\xaf\xdet/\x85I\xea\xc4\x82\x97\x01\xc6\x8b\xce5\xac=6\xca\xc4\xae\xbfu\x1eIY\x85\xeb\x9e\xe6l\xf3\xba\xaa\xa2\xb6f/\xca\xbe\xc9\x06\\xt\xb2\xf7N\xaf\xb7\xb6Nv\xb9\xbc\xa4\xcb$\xa1G\xe2g\xf0\xb1\xe4\xef\x1e\x03\x82\xef^\xfdo\xc0yB\xe8R\xe1\x8d>\x864/+\x8c\x16c\x13\xfd\\\x92\x8cm oK\x8cW\x05\xca\xab&\xe1\x8d9i\x11\xcbxc?\xe0\xe2W\xf9/lH\x7f{._k\xea\x9e\xf3w\x16\x80\xb2\x8c\xff \x82\x18\x82\x97\xb8\xf4\\\xfc\xdfB\x99\x0e\xd70\xfdB\n\xe4\x81\xe6\xc35B\xdb?\x99\xf4\xda\xd3<\xc7s\xb6\xdb\xff+\x85E\x95SG@\x03\xe1\xb4\xa4m#X#\xa7\x82g \x8c\xdd\xc5\xe5\xd6|C\xc6\xf0\xd1bQ\xe0R\xfa\x88\xa8\xfd%z\xc9\xd0\x18y+\x07\x0d;\xfe^Z\xc0\xb2\xce\x17JG\xa8\x90\xd9\x1dt\n\x9b:5\xc7\xb4G\xcd\xcc\xd7\xb9\xcc\xdbqg\xc6)\xf77S\x06\x87\xa5\xbe\x8b\x869\x06\xce}h\xbf,j\x03\xd0\x93\xd5D4tDCCDC\xb7\x14\xd1\xd0!\x80\xe2\x88\x86\x8eh\xe8\x96\"\x1az\x9f\"\x1a:\xa2\xa1#\x1a:\xa2\xa1#\x1a:\xa2\xa1#\x1a\xfa\xf7\x8e\x86\x16P\xc5\x0e\x0f\xd39:\x14\xd8\xd8@\x18{\xdc\xf6\xb0~\x93\xe1\xa0\x05V\xd1\xabW^\xc8\xc6^\xd7z\xcclx\xc6\x91}\x0c\x074\x97^8\xe6\xb2\x012\xb3@\x82D*\x97M \xaaUz\x8d\xf3FtBff\x18\xb3\xf4@<|\x1c\xf3\x03\x89j\x1a\xb1\xcaN\x1e=\x17\xa7\x18\x8cX\xd8Z\x86v\xcc\xb2\x05\xb5|\x0b\xdd\xf3Z\xe1Z^A\xe8e+~\xd9\xbd/\x13b\x98\xad(f\xeb\x0c\x06\x87Y\x0c\x0e\xf1yp\x1bo\xf0\x90\x13\x04\xc4\xea\x8d\xcc\xd4\x0e[\xc3\xa9\x7f\xea\x98=\xd8\xe3\xf6\x10\x10\xbb7w@^\x9c\xe3\x12\xbf\x87\xa9b\xf8\x10\x18\xc772\xf4D8\x8f\x8e\xe7\x83wL\xdf\xc8\xaa\xbd\\\xc7=\xae\x0fS\xc7\xf6\xc13\xbe\x0f\xbe1~\xf3\xcc\x0e\xc0;O\x1c\xeb\x07\xb7x?L\x19\xf3\x87\xd1q\x7f\x08\x8b\xfd\xc3T\xf1\x7f\x08\xc2\x00\x98\x97\x83+\xfe\xf9V\xb0\x00p\x8bx\x00\xb8\x1dL\x00x\xe2\x02 \x0c\x1b`S\xc1n\xf8\x00\x98\x16#\x00\x1e8\x01\xf0\xc7\n@\x00^\xc0Ae\xba\xa1\xa2'\xc0\x0d\x80\x0d;\x00\xee\xe6\x99\x03\x86\x00<\xad8o,\x81\x91\x9b\x1bF\xda\x8c\x92\x9e\x18'\xadFJ\x836}\xb6\xa3=\xe9\xff=,=\x13h\xdb\xabP\xf7\x07\xbc\xf7\xc5\xce\x05\xb121\x1c\xe5\xdd\xbfJo\x80\xeaP\xce\xc9x\x800\x1f\x1d\xe4\xfd\xd7z\xc8\xef\x84WN\xfd\x8fn\x0e6\xb7p\x8b\xc3cs!7lQY\xf2\xdd\x8b_\xdb\xcd2\xe4g\xfcw\x0d3\x96\xe3\xce\xd8\x98n\xec>\xad:\x9eUv9\xb2\xe1\x02N:\x13\nL\x0d\x8d\x0d\x9dyb\xefT\xcehR\xa1\xd0\xebE5\xb7#w\xc9\xbc`\xc4\xe7\x99\x145\x97Iw\xf0e\xba\xfev\x05\xdd\xbd\x86Y\xf3\xf8\x0dbw\xf6\x1eCZ\x95\xd2\x92)\xa1\xce\xf9d^pe}\x93\x96\xfd\xf9\xe1\x93\xa2PN\x90\xa3P\xc6$\x05I1Ia\x1a\x87\x97\xaf\xe3C:7\xb4\x0c]\x9d\x1e\x93:1\xb9\x8cQL.\xfb\xfd$\x97u\x8f\xb81\xb9,&\x97\xc5\xe4\xb2\x98\\\x16&\xc5\x98\\\x16\x93\xcb~\x9b\xc9e+r}r\xfd\xe4$!yY\xa5U]5\xd80U:\xd9\x8b\xceS\xac]\x12\x0c\x90\xacQ\x9a\x1f\x96\xd0e#G\xb5\x97\x12\xd6\xe5\xf0\x85\xec\xcf\x03\xcd\x05\xdb\x97I\x97\xb4\x81\x07\x1d\x1c\x8aI\xbe\xdb\xffp\xe0Po\x1cZ\xc4P\xf3lD\x02\x0d~\x8dH \xb7H\x12D$PD\x02i\x9f\x8cH F\x11 \xb4O\x11 \x14\x91@:\x8aH\xa0\x88\x04b\x14\x91@\x11 \x14\x91@\x11 \xc4)\"\x81B\xc04\x11 \x14\x91@-E$\xd0>E$PD\x02E$PD\x02E$PD\x02E$\xd0\xef\x01 \xe4\x18\xe3d\x80\xa1\xf2\xe4\x17\xfe\xdf\x0b\xda`C\xe9\xcc3\xf6T\x13\xe5DY\xd6A\x1cI\x05\xb9\"\xd7\xb0!\x8b:\xc3\xcah\xe7\xb7\xe4\x9a\xb3\x11?>\xd8P\xe75\xa9\xd2|u\xc1%\xb3op\xda\x0bf\xbc\xa4\xeb&\xa1g\xe4gpV\xe0%\xdd\x7f\xb9\xa7\xfd\x923\xbd\x844/+\x8c\x16*u\xde\xfb|Sq\xa4b\xd6L#\xf2\x02g\xec\x0c^\x11\xf1\xfc>'c\x90\xcd\x1cb\x93M`\xb5\x13\xf518\xa3\x83\xa9'&9\xd7\xe5T\xe1\x1f\x10\xc5\x19\x87M_\xe0-)\xd3\xea\xde\x06\xa0\xff}\x87\x11\x10/L:\x04\x9b4\xbf\x10|M\x03\xa0\x0e\xbc\x82)\xf8\n\xb6\x86q\xb2\x05a\x81I*'\x1b\xd3\x91\xcc:K(\xa1\x0d\xa9sM/99\xb0qq\x08RzA\xd2N\x19\x1f\xa8\xc8\x15\xce\x85C\x8fwG\"\x82\xe8\x86\x8ar\xd18\x93\xef\xf8\xed\xbb\xf3W\xcf\x98\x0d\xca\x9f\x15\xc6\\\xca<\x8e\xa7y%\xb6\xb9\xc6\xcbk\xae\xac)\xf6@\x81a\xd0>V\xa6\xab\x1cUu\x81\xcb\x06\x02\xc3\xae\xc3'+\xc26\x18\xb5\x9d\xd8\x13\xd2\xf7i\x9en\xea\x8d\x9c\xbd\xcc\xb6Gl\xd8I\x892:\xaf1+\xc2b\\\xab\x946\xe8\xd3E\xb3f&S\x19\xda1\xfc\x1e}b\xed\xe6\x9fb\xcd~NEF\xed\x08\xba0\xdb\x05 t\x18\x9b\x1e\xe9N\x90\xa7yZ\xa5(\x13\xfetx\xaa\x13\xfa\x86\xe4\xd5z\xcf\x17_\xa1,\xdb\xdd\x9b\xaa\xea~\xddAQ\xb1\xc7'US?\xd5\xa4\xa85*`\xaa\xf1\x16\xf3t\x8b\x8b\x84\xda\xa2+\xeeHgH\xbc\xb2BW\x98\xc5\xe0\x9a\xbd\x90\x83\x85tQQ\x01,d\xf1:\xdd@'$/\xd3\x05\xa6K\x8a\x853\x94\x82_\x17\xb8\xa43\xeen\xbaN\xa7p!7\xd0\xff\x83K\xd6\xd1\x92\x83\x18;\x0bv\x8bJmI;\xe1k\x94\xd3\xfc\xab\xd9_\x94\xc6\x07\xae\xc8\xc5\xddv\x8e\x9f\xcc\xc9\x12\xfe\x85\xc5\x08\xb25|\xce\x06\x98\xff_f<\x18`\x08]\x19\xe8\xc7\x95\xf6\x0d/fCI<9\xf9\xd3P\x12\xe1\xcby\xb0\x14eYy\xf6g$\x8d\xe5O']SY\xc1E \x85\xfc\xdb\x94\xeb6\x9a\x17\x1dr`\xe36\xa5\xa3y\x11\xcd\x8b!\x8d3/\xe0\xdeOc\xf0\xb9\xef\xf2\xeaG\xe2.\x7f\xb7\x9d\x9b~\x97W?\xe4\xb1\xcb\x83\xd8\x07S\xbeB\x1b%\xc3\xdaq\xabB\xa1\xda\x9c\xf7\xb6q\xb1\xcaL\xb6\xfe$\xe0q\x07\xaemXG4\x0c9\xb4Q\xa0p\xb6(]\x00\xaaZy\x95\xf5|\x93\x96e'\x0d\xa1K\xf2\xb1\x8b\x04\xe5 \xce\xee\xa8\xfb\xfccB\n|\x0bc\xfe\xe5\x9cT\xbdD\x929J\xaeL\x0e\xe0\xc6]C\x8a\x92\xe7\xd5t6\x99\xb4\x14\xdf\xc9\xb0\xa2\x82\xa8$\x95\xb5\xf5\x97\xaf\x1c$\xb5\xc0\xa5\xd1z\x9aDP\xf2r\x96\x8e\x8c\n\x9c\xe0\xf4\x1a\xc3\x91r\xe8\xe0K\xb3\xa0\x1e\xb5\xf2\x11\x7f\x19\xe6:\xb5t\xba\xe4x\xb7c6\x13u\xdf\xdb\xe7lnA\xd9\x84\x12\xe6l\x90'\x18\x1a\xfci\x8b\x17i\x85\x17\x17\x93\xef\x96\xda\x9a\xc8\xc6mT\x04\x1f\x9bvu\xec\x84\xe9\xfaz\xb7*\xfcV\xf6\xa7\xbf\xfem\xd2\xd1\x8f\xe7\x9a\x0e9\xb0q\x9b\x01\xf1\\\xe3 $\xb9L\xda%\xefv\xf4\xd1M$\xad5N\x95&Us\xf8\xc2n\x97\x0f\xb3A{O\xf0\xdc<\xca\xae\xd5\xcc\xe9\xb2\xdb\xd4\x05\xc1\x1c\xa2\xbd\xc1\xb8\x12\xc7\x00]\x8b\x9a\xcd\xa19\xac\x15\x98\xb6r\xea\xe65VR\xaf\x81\x8a\xc3\xa4Qt\xd4L\x9c\xbae\\>|Y\xb03J\xc5P8\x84}\x8c\xce\xec\x0dV\xa9\x8d\x8e\xce\xba#\xe3kR\xdbs#\xe6}\xcf\x06\xdd\xe0\x8a[c\x1b\x9e\x9a\x80\xda \x99\x86\xcd\xde\xce\xf0\xd5\x93\x19|\x8fQ\xce[\x87\xe42b\xd9\xb5\x12\x82\xadf\xd5\x11(\xed\xc8\x93\xaf\xbeb'\xc8\xe3\xb6\x15\xec\xcf\xfcXy#\xef\xca\xd20\x93zb\xd46e\x1e\x1a\x16\xa2\xe7\xb1q\xa74X\x91\xf8*\x82\xf2\xef\xcf^\x0c\xf8\xc9\x92\xf9\xed\xd7c\x06l\x8fb\x06\xacmJ\xb6\x143`c\x06\xac\x9ab\x06,\xa3\x98\x01\xbbO1\x036f\xc0\xea(f\xc0\xc6\x0cXF1\x036f\xc0\xc6\x0c\xd8\x98\x01\xcb)f\xc0\x86$\x91\xc6\x0c\xd8\x98\x01\xdbR\xcc\x80\xdd\xa7\x98\x01\x1b3`c\x06l\xcc\x80\x8d\x19\xb01\x036f\xc0\xfe\x1e2`M\xb5\xf0;\xe9\xae\x1d>\xa6\xb3t\xe7\x8d\x06\x00\xc1\x87\xad\x93cS\x11q\xa9\xf9\x92\x14\xc7\xb2\xf0:\xaf\x91\xdecv\xc0\x03\xd4\x07\xc7}\xf1\x1e\xb0\xc4\x1c\xfa\x03\xb5\xc9\x0fD\x90\xf2\xa0\xab\xeaF\x96\xecw\xcd\n\x16qu\xf1\xac2\x15X>\xd2\xcf\x06n\xfe\xca\x1c\x99@rX\xa5\xd78\x87\xb2BU\xdd\xf8oz \xc1\x0d\xa7/d\x7f\x1ehB\xf0@*]\xaa\xee!\xf8\x97j\xe0^^>/\xc3\x15\xf6\x03)\xa7\x8b^f\x19\x0f\xfb\xd1\xbf\x92>\x16C\xbd1\x0bmc\x81T\xe9\xf1X\x16D\x96U\x98\x9cl\"\xe5TY\xa2\xaa\xedSVp\x168z\xe8Z\xf2\x8d\xb3Z\xd8\xa9\xddm\x863\x1b#\xef\x98\xab\x85\x1f\xaal\x91WN\xbe\xf1W[7P\xb5v\x8e\xc2r\x9a$\x16\xcb\xc9;\"k\xe1\xc7\xe2\xb5\x1eqYN#\xa3\xb3\x9c\xfe\x7f\xf6\xfe\xb7In\xdc\xc8\xf7G\x9f\xcf\xab\xc8\xb8{#4>!u\xcf\xd8\x1e{wN\xec\x8d\xd0H\xb2\xb7\xef\x8eG\xfaI\x1a;\xce\xa3\nv\x15\xba\x9b\xab*\xb2L\xa2\xfa\xcf\x99\xf5{\xff\x05\x91\x00 \xb2\xf0'\x81BK=\xeb\xcc\x07\xf6\xa8\x8b\x04\x81$\x08\x82\xc8O~\x91\x16\xa3\x8d\xb5\x03\xa3GI\x91Z\xb4\xd4xm\xa4\xb8a\x16\x94\x12\xb5EK\x8a\xdd\xc6\xfa\xfb\x18\xd9\xa5Fp\xd1\x92\xe3\xb8\xb1\xe7\xb3\xa7Ds\xd1\x8a\xc5tMq\xa7Dv\xd12\xe2\xbbhE\xa2\xbch\xe9\xb1\xde\xd8cb&P\xf1'\xeaQ\xe2\xbeh\x8f\x15\xfdE{\x84\x180ZJ$\x18\x8d\x1c\x0f\x8e=JV\xb4\x98\x18\x15F+\x18\x1bF\xa3F\x88\xd1\x1c\x1fj\xf1\xf7Bj\xb486\xaca,\x99\x103F;9r\x8c\x16\x8c\x1f\xa3\x91'{\x84X2Z\xda\xac09\xae\x1c\xeb\xa5\x97\xed\xad D\x97\xd1\xe8u-\x18iF\xa3\xc7\x9b\xd1\x8aF\x9d\xd1rb\xcf\xb1\xde\xd6\xc7#\xd0h9q\xe8pq\xc3Uc\xd1h\xb421i4bp\x15-\x1a\x9fFK\x88R\xa3\x05\x83'\xcar\"\xd6h\xf1\xb2\x03\xeb\xb7\xc5b\xd8h9\xce\xa6\xc7\xb3\xd1\xe2\xed\xcd\x88m\xa3eE\xb8\xd1\x02\x118e\xf1h7Z\xc9\x987Z\x89\xc87\x1a\xa9\x1f\x9d\x1c\x05G#\xc6\xc2\xd1(\x11\xf1\xf1HB\\\x1c\x8dt\xb3\xd2c\xe4h\xf4H9\x9a7^\x8eV$j\x8e\x96\x14;G\xcb\x89\xa0\xa3%\xc4\xd1\xd1\xe27%\xfa(R\xca\xa0\xc7\xd7\xd1JE\xd9\xd1\x08\x15\x0c>\x8b\xe5\xe2\xeeh\xd1\xe8;ZN\x0c>P\x9c\x8e\xce\x07#\xf1h9\xf1\xf8@q\xd2\xac\xfcy\xa3\xf2hY\xb1\xf9@y\xb8\xe6\x10[\x86\x89\xc7\xe9\xd1\x02\xd1z\xb4\xf4\x98}\xa0\xb0`4\xdf\x1c\x92\x11\xd3\x0f\x94\x87s\xf2\xe0jh\xb9\xf8>Z<\xca\x8f\x96\x1a\xebGK\x88\xf8\xa3%\xc7\xfdg\xa7\x11\xa3\xffh\xc1\xf1\x06\"QY4jl\x96\xca\x03\xe8RS\xa9\x00}Z\n\x1b\x80\x16tA\x0e'\x10(\xce\x8a\xc3\xd3\x1f)\x1a3\x10y\\T\xael\x80\x1c@+\xc8\x0f\xe8\x02C\x14\x01Z\x80%\x08\x9c\x95K\x19\xa0\x95\xeb\xd5 \xc4\x81.\x98\xcc\x1d\xa0\xf9\xe6(\xd45\x14\x13(\xc5\xdd\x94o\x84\xb5\x802\xfe\x84\xcb\xac\xe2^\xac\x0f\xc3g\x7f\x1dN\xb2\x1c\x93\xe4\xf7U\xdf\x0b\xcfJ\x18\xc6\xe7}\x13\xe6Y\xe5\xf1\xd0\xb9\xcc\xe8(14\x0b\xf3/\x8d\xb0\x8a&\x1a\x9f\x90\x01(`\xe1\xdd\xfb\xb7\xef\xde~x\xf9\xe3\xea\xc3\xc7\x97\x1f\x7f\xfe\xb0\xfa\xf9\xa7\x0f\xef\xde\xbc\xba\xf8\xd3\xc5\x9b\xd7 g\xbd~\xf3\xee\xed\x87\x8b\x8f\xabwo\xde_\xbcM9\xf1\xafo?^\xfc\xf4\xe7\xf4\xf3\xde\xbd\xfc\xf0!\xa9\x86\xef\xdf\xfc\xff\xdf\xbc\xfa\x98t\xca\x9f^^\xfc\xe8=\xc1\xe4~';\xf0\xaan\xaa\xed\n\x05f1pA\xea$\x81\x1e~\\\xa2\xc9rW\xbf\xa0:\xad\xd1n\x8b\xacf\x8e\xd0\x01\xfc\xedF\x04\xe6 \x8a\xca\xc1Au\xec\xab\xb7u\x05\xd7\xef\xdf\xbdz\xaeW\xfd\x8d\xeeH\xd3\x06\x00\x82v\x7f@\x19\xddC#\xebm8^h\xae\xf4\xac_h\x02\x0d\xaf\x1d\xd1l\x84S\xd6\x03h0\x03\x05ex\x10\xfdj]@\x1d\x06\x96ww,\xd8\xdc\xb9i\x83\xfd\x87Q\x0f\x88$\x8b\x08P]\xf6\xc3\xec\xefq*\x1aYX\x9f]\xfb\xb8-\xfag\xab=\xc1\xd2\xe2mm\xda\xc7i\xa6)\xf7\xb8 M\x9bv7\x9av5L\xe8\x95T\xc9\xe3\xd45rK\x8e+\xe0l\x14\x8a\xab\x08\xd9\x06\x0b#7]I\xe3\xc9\x95\xacw%\x12 7\x95\x14/\x86\xb2(#\xa5ui\xd3R\xf5\xdf\xed\x95\xf5Z\x0d*\xf7\x8d\x82j+\xd1l\xbeH\x1b\x96\xd77\x0d\x11\xcd\x06\x1b3L\x12\xf5A\xdeF(\x91\xcf\xb0j\xd7\xd3\xe2\xc4\xa2\xfa]$\x87\x03I\xc3\x8bX\x14\xfdIKT\xf2\x8aV>\xbc\nRV\xe5\x8b\xac\xf3\x95\xab\xf4\xb5p\xe4\xacg\x8e\x0f\xa9\x92,\xb54\x80e\x14\x82\xd4\x9a\x84\xbd\xac\xba/3\xd6\x04z\xc4Q\xddL;\xd5_\x94\xf8\xd2\xf0G\xa9ew\x83/C\x92\x17\xbe\xd4X\xb5\xb8\xfc\xd1P\xd5^\x99\xd9\x1a\xe1\xbd\xb1\x13\xb2\xdaT\xb2:\xa1\x11ZE,\xf8I\x88\x17\xc1\xc7\xe5a\xf6E\xa8\x7f\xa9\xa4\xac\xd67zw\x07\xca|\xd9\xff\xccH\x95\x14\xb4nw;5E\xd5N6\xeb\x84v]\xf03\xf4\xaa=4\xfe\xd5\x8c\x1b\xd1\x85\xd6\xe9\x14$\xf2\xfd\xf9\xf9\xa6]\x0f_\xea\xfd\xae\xed\xcf\x1a!\xef\xda\xee\xd3\xf9\xed7g\xbf\xff\xe39\xca\xe3+2\xfd_L\xed_\xfc\xceY z2\xffN\xcc\xba\xc93\xb7\xf8\xfe\xb3\xf0]T\xff7\xbd\xc6\x87\x7f,\xf0h\xe7\xf9\x86\xaa\xff\xa2u\xd7\x95P\xbd\x0c\xfa\x9b\xb6\x93\xe3\x9f(m\xc0\x1f\x85C\xd1\x0b\xed\xf34\xc2\xd4\xc2\xdc\x03#\x9b\xbbh\xc1\xd0\xb2\xcbZ\xfa\x02\x10\xa3vc\xb81!q@Jk\xbe\xfb&\xd2\x1a[C\x12\xdf\xd4K\xe1\xc3\xba\x9f\x0er\x96uU\xd5[\xb1Yu\xa2\xea\xdb\xe6Q\xefM\xb45\xb3\xaa\xcc\xd6\x8f\xf4\x9f\xeen\x1e\xe6\xad\xc33\x1c\xa5R\xdej\xefFqH\xebJ\xeb\xb6\x13z\xf2\xb1\x13\xc3\xf7\x84\xea\x1a\x15\\\xb7\xb7\xa2k\xaaf\xed\x1e;\xfdo\x81YM\xa6\xf4\x97\xe5\xce\x1f\xc3\xe4C\xf4\xc3\x9d\x9c\xae4\x1d\xbe,v_]\xeb\xe9\xd7\xf1\x1d\x9b_p\xa1\xa6\x94':3\x90\xd0\x13\x9bi\xe0\x8cV\xbd\xd8\x87\xff\x98\xbe\xb7\x8d8\x95\xc5\xb6\xfa\xdak;Z}\xbd\xafTa\xbe\x19\xc0]\xd5C/\xe4s\xa8eoh\xec\x1e\x0e\x0dv\xe6\x0d\x82\xa5wu?\xef\x1f\xe1\xa7\x1fe4\xcd\xa3ER\xd2t\x95p>e\xb8\xbd\x7f\xf7j\xd9\x00\xd6\xd6dm\xcd\xb4w&kk\xa6\xe5v\xb1\xb6\xe6\xe9\xd9[iy[\xac\xad\xe9.\x90\x96\x99\x95\x9c\x93\xc5\xda\x9a\xa7d]\xa5\xe7[\xb1\xb6\xe6)yU)\x19U\xe4\\*\xd6\xd6dmM\xf2,)9\x07\x8a\xb55IYN9\xf9M\xac\xad\xe9;,\x9a\xbb\x94\x90\xb5DQeL\xc9Tbm\xcd\x1cy\xcaX\xe6\x11kk\xd2\xb3\x8a\x88\xf9D\x94L\"Z\x0e\x11kkBffPBN\x10kk\x16\xc8\xf1\x89f\xf7\xe4\xe4\xf5\xb0\xb6\xa6m\xf1\x9c\x1d\xd6\xd6dm\xcd\x85\x95\xd09\xa4\xe6\xd2$g\xd1$\xe5\xcf\xb0\xb6\xa6\xcc\xcb\x8damMc$mM\x1d7[a2\x88UV(\x9e\xbb8k\x16\xce\xd6\x7fZ0\x1cG\xdb\x15\x07\xb3C\x82\x99\x0f\xb3\xab\x99\x17q8\xa9%\x96Tr|\xbd\xf9\xef\x16{\xb9\xb8\x10l\x0e\x9d\xd9\x8aQ\xe3\x85sO\xb9v\x04\x8d\xa4\xaa\x1c\xd7f\xf63\xad2\x8e}J\x89u\xc1\xf4\x97\xe3J\xe0\xdf\x03Wog\xdb\x90\xaa\xf1\xe2f\xb1l\x8eA\xfeh\x15LB\xcdq%\xcc/\xa7U\xe3R\x88\x06:\xf1_*\xc0\x1b\xad\x0d\xe6\xea\x1c\xd7\x05\xff~ZM\x10\x9a\xb1\xabP7\xdf#\xd8`\xfdmR\x8d\xbd\xaa\xb6}D6\x16\x9c\x99Y\xf4l\xac\xd8\xc3\x129\xd8\x9fuE\xca\xb4\"fW\x112\xaa\x92\xb2\xa8\xccxx\xdb\xce1\xb3%\x8d*\xba\xd9\xf0\x83\x7f1\xdc\x9a\xd9\xea\xd3\x89\n\x15\xb8\xaf\xa6\x92\xe3\xee\xf9\xbe\x8a\x8e\x07,\xc6J\xc4\x9fuuE\x0fW]\xbb\xfb,5\x9e\x18\xa7\xb3O\xe2\xc1W\xed\xc5[FcB\x95\x9e\xa9wB\xaa\x9d\xe7\xd5\xda\x85\"W4\x9112E*\xe6r\xbd\x08N\x8c\xd9d2\xc2 \xbd\x1d\xbe\x9eP\xff\x19\xda\xab\xab^Hh;\x98W\x17\xac\x98q/daoyV\xe0\x1dN\xc4\xfa\xf9\xfc\xb8X\xfd\xd6\x8dQ\xael\x0e;\xd1\xd5k\xf375&i\xe9k\x0c?\xdc\x88\xc68\xfe\xd0\x8c\x11\x9f\xc5\xdb\xfbB\x95\xb6\x1d\xfa\xfc\xe8B\x8c\x91\x1c\xfa\xc1\xd5\x9fD\xa2?\xe7\xc5?\xb2s\x17\xd4\x95\xc3\xbd\xdbzWS\xbd\xab\x8e\x9d\xe7\x19\x1c\xc3X\x18\x0d\xb4{0~r\x0e\xbf\xceJ\xdb\xe3\xda\xbf\xfd\xa7\x8b+\xd8\x8a+i\xe05M\xb3\x99\x89\x8f\nd\xe2\x03\x82\x17\x19\xfc|\xf9\x00\xa2Z\xdf@\xb5\xdf\x7fA/\xdaH\xd9t~\xc8\x97\xd6\x19\x83GU\x0fm\x95R:\x0c\xffQ7\x9bz]I1\"\x0d&\xf1t8\xd0!\xcb[7\xeb\xeda\xb3X_\xa8\xf0*#S\xb2\xb8c\x8aP\xb2B\x9d\xc3\x98>#4g\x85\xfd|\xb1\x9c\xd8.\x9a\xa0\x96d:\xd1k\x96L=^\xd3\xf381\xfdh\x88\x9b\xc0\xdd\xce\xbct\x8a\x8c~XD_\x06 I\x88%F\x06]\x87\x16\x03&\x81\x00M\x02\xc5\xa5h\x94\xe0\xbb\xb1T\x802X\x98;\x8a\x1e\x08\xc5\x94\x06)!\x0eSB\x06P\x19n@\xaaT\xbe+\x1e\x90\x0cVB&\\\x19,0Y$\xffD\xc8\x12\x92A\xcb`Q\xb9\xf2\xf8E\x81KH\x84.!\x15\xbc\x0c\xf7\xec\x11\xca\xa4\xc2\x97P\x1a\xc0\x04\x1a\x84 %AL8\x19\xc6\x84< \x13JA\x99\x90\x05f\x86\x1f\x07\xba\x0c\xfe#\x00\x9a\xf0\x88\x90&<\x0e\xa8 \x89\xb0&\xe4\x01\x9b\xb1!X\x92\xa0M(\x0bnB\x02\xbc \xe9\x00'd@\x9c\x84!\x93*x\x7f2\xcc 1\xa0\x13\xe8\xd33\x02\xd8 \x89\xb3\xb8d\xc03XZ\x8a\xc4=\xb5\x96\x05aOH\x02>\xa14\xf4 \x99\xe0g\xb8_\x11e\xed3\x01Poy\x92(i_\x06\x04\x05:\xcf\x08\x14 \x14\xd2\xa0P\x88\x91J\x99p(\x10\xca\x0d`\x12\x85@Q\xc8r.\x1d\x18\x05B+3\xc0Q\xc8\x85G!\xaa\x94\x1d\x87H\xa10H\n\x85`R\xa0\xf5\x98\x93\xa1R\xa0\x83\xa5@\x84K\x81\x0c\x98\x02\xadC\xa5\x83\xa6\x90\x04\x9bBL\x9c\xbe\x08t\n\xa9\xe0)d\xc2\xa7\x90\x06\xa0\x02\xe1&\xc4\x04\xe9\xa3\xe7\xd3\x81T(\x08\xa5\x02\xa5j\x81\xa7\xac\x1c\xa0\n\x14H\x15N\x00U\xbd\x05J\x82\xfc|Q`\x15\xa2\xd0*\xe4\x82\xab\xde\xd2(\xb2\xf3q\x80\x15\xe2\x92\xf3\xe9 \xab\xb7\xa8\xa8\xdc|\x16\xe4\xea--*5_\x0ev\x05\x12\xf0\n\x19\xd0+\xa4\x81\xaf\x90\x03\xbfB2\x00\x0b1e\xf5\xb8\x087\x15L\xa4\xc2\xb0\x90\x03\xc4B*\x14\x0b\xe1\x86\xe7\xc0\xb1\xde\xc2Hr\xf29\x90l\xf0\x81\xa0H\xc9\x17\x84e!\x06\xccB\xa6\x88|.L\x0b\x05\xfbn\x02T\x0bI`-x'(\xb4\xb5\x89,\xd9\xf8\xc0=\x1c\xa3\xc8~\xd1\xf8\x90d\xfc\xac\xd2\xb9\x82\xf1\xd1\x95\xa8\x90X<\x1dN\x0c\x9dC\x12\x8aO\x01\x16Cg\x05E\xe2\x89\x10c\xe8\x84\x80@|\x12\xd88\x19U\x1c\x9e\xd6\x87\xcb \xc3\x8fA\xf4\xa0,|\xa2(\xfc$\xfe\xee)/* o\xae\x92*\x08\x1f\x0d\xce\xc7C\xf3\x04)\xf8\xe8\xe3\x06\xcb;YN\x06\x9e(\x02\x9f^\xc5\xe0\x92sI\xf9\xf7X\x0b\xe3\xd2\xef\xe9\x8d+%\xfb\x9e\"\xfa\x9e^\xcb\xe0-H\x95{\xc7f\x05\n\x8c68*\xf5\x1em!Mvx\xfe\nsR\x19\x91v\xa2D{\xf4\x0ef\xb5\xc17\xa0\x15\x14a\x0fJ\xb0\x17\x14`\x0f\xc8\xafG=?\xeb\x10I\xca\xdf\xa7\x08\xaf\x07e\xd7\x1f\xbf\xce' \xae\xe3O>\xb9\xf5\xc7\xaf\xbc\xb9>\x9c \xb4\x1e\x91Y\x97\xce\xa4\x02\xdb\xe2\xad\xf0\x89\x92\x97\x12X'\xc8\xab\x17\xb8\x17\x91V\x14\x13V\x8f\xbf\x8f\xca\x89\xaa\xbb\xc7\xf1p\x0df\xd2\xce$e\xe7\x85\x96\xf3\xa2\xbc\xf7\xef^\xb1\x923\xb0\x92s\xb1\xe9xj\"\x02\xf6UVr&$\x1d\xc8\x12 \x079\xc9\x06\xac\xe4\\0\xb1 %\xa9 )\xa1\x80\x95\x9cOM\x1e\xc8H\x1c(\x924\x90\x9e0\xc0J\xce\xa7$\x08\xa4$\x07d$\x06\xb0\x923+9GfI\xc9\xa0?+9\x93\xa0\xfe\x1c\xa0\x9f\x95\x9c}\x87E\xc1\xfd\x04h\x9f\xa2\x01\x9c\x02\xeb\xb3\x92s\x8e\x18r\x0c\xc6g%g:tO\x04\xee)\xb0=\x0d\xb4g%g\xc8\x84\xe9\x13@zVr.\x00\xcaG!\xf9\\@\xde\xfb\xded%\xe7#c%gVr^X U]*\xbc\x9e\x0c\xae'A\xeb\xac\xe4,\xf3\xe0tVr6\x96\xa4\xe4\\\xdb\xe3\xf3\xec[\xda:$]\xd7\xaaV;\x18\xcf\x86\xc1ITMv\x87cM\xb5\xa3\x15\n\xa7\xfc\xd6iZk\xe7\x1a\x17\xd2E\xb8D\xd7^\xeb#F\xd1\xb5j;RF:\xf6\xd9\xd7\xcd\xf5\xf6\xb8\xd93\xc55S\xccW\xa6\xedOTqm\xee\x10\xdb\xe4\x17\x08\xe7Y\xf7\xaa\xc0rV@\xb7\xaddW\xb7\xcb\xd4B\xba'T\x9e\xb2\x9c\x05\xf6\xb5\x88\xa2\xbd\xde\x82\xc6G\xc5\xdd\xa60\xf2\x18\xea$hA\xb83\xdaa\xd0b\xdd\x06-\x8ax\x92\xfc\x0f\xd16\xa3\x91\x8a\xa2\xde\xccd\xd83Z\xf9\xb0\xd6MY\x10\x94\x8c\x82\xe6\xc2\xa0\x0bG\xea:c\xa4E\xf7x,g|(r\x17\x8a\xf5\xb0=\xdd \x83\xd5\xce\xaf3\xfcy\x8dH\xbb\x81\xa3<\xdb\xce\xab#e}\xeb\xf9\xd8\xf1\x8f'.N\xbb_\x00@j/v\x058\xe1\xcf\xcbR&q\xd6\xe3\xbe<\x1f\xff&\xc9\xdaY*\x97\xadd\x0b6\x88s\\\xdf\xe0\x83\x1c~\x80\x8d\"\xb7\x1f\xf1 q\xa9\xde\xe8\xc5\xac\xa9\xff\xed{\nG]p\xcd\x1c\x8d\x12\xe1z\x1b\x82\xe1\x1f\xf6\x16\xf8\xf8\xbb\xa70\x95\x7f\xa4\x8a i\x88_Hk&\xad\xe4\x9a}\xb4\x88\xbc\x11\x9dP\xf1\xd3\xa6\x85]\xdb\x19-c\xe7\xa0\xad\xc8\xe8\x13\x9d\x19xw\xc6P\xdaQ\xcd\xd8'om\xc5\x13}\xed\xb5\x1dm\x0bC{\x0e\xbf\xab\x94\x8a\xf0s\x18\x9e\x11\x1d\xb9\xee\xe1\xd0`g\xde`0\xef\xae\xee\xe7\xfd\x83\x00\xa4\x99i\\\n\x90\xb6\x98\xfa\x19c M\x1b\x03ief\x80\x0c\xa41\x90\xe66\x06\xd2\x941\x90vl\x0c\xa41\x90\xe63\x06\xd2\x18HS\xc6@\x1a\x03i\x0c\xa41\x90\x86\xc6@Z\x0e\xd3\xc5@\x1a\x03i\x931\x90vl\x0c\xa41\x90\xc6@\x1a\x03i\x0c\xa41\x90\xc6@\x1a\x03i\xbfN \x8dw\xad\xce\xdd\x12\x98w\xad~D\xe7\xc6\xfb(\xefZ]\xc2\x8b\xbck5\xefZ\xfd\xcf\xb8k\xf5HR\x9f\xff2Bw\x81\xad\xac-7\x1a\xc4\xce\xf0\xd5\x9a\xa6\x1e\xd5\x1d\x1b|\xf8\x86\x8e8n\x10i\xae|\xf1z\x9a\x90\xe8\x13^n6]\x88\xc0\xd6?=u\x00\xdbG\xafd\x01uQ\x8c:\x1a\x82!``\xe5\xa6fS\x89A|:ZiJ\xe0\xa5\x188\x1d\xc4\xa6C\x00\xb1\x8c \xd3\xac\x86\xeb\xb4D@\x9a\x80A\x97\x85\xa0\x89\x08t\x1e\x00}:\xfe\x1cwsa\xf49\x08>\xbbG\x01:\x8f\x99\x81c.Jc\x1aS\x1b\xd3\x98e\xc6'\xa61\x99\xc6t\x1b\xd3\x98\xca\x98\xc6<6\xa61\x99\xc6\xf4\x19\xd3\x98Lc*c\x1a\x93iL\xa61\x99\xc6Dc\x1a3\x07hd\x1a\x93i\xcc\xc9\x98\xc6<6\xa61\x99\xc6d\x1a\x93iL\xa61\x99\xc6d\x1a\x93i\xcc_;\x8d9\xc6B}\xf5O\xe5\x00\xdc\x11\xff\x13\x1br\"\x84\xa3\xb6M\xf7S7\x1f\x87\x9f\xdf#>fp\x1b\xf5\x8eP\xd1\x03\xa5eh\x8aS\xfb\x8b:9\x1a\xab\x90\xafL\x03\x9f(Kc\xb9\xc3\xb6Y]\xb0\xedn\x1d-\xf5\xdb\xf1\x8b\xd3[\x13\x88\x86 #{\xb3G\x17\xdffU/\xb3';a?\xf6\xb4jy\x97\xfbJ\xed\xc1\x1ejMx\xef\xf5\xb4\x86\x94\xd8s\x9d\xba\xdfzZ\xcd\xbc.\xce\xdbc\x1dZ\xdfB\xbd\xafq\x044\xc3\x1a'R\xf0\x8c\x8f\x8e\xb8\x1d\xc3\x19\xda\x18\xce`8c2\x863\x18\xce\x98\x8c\xe1\x0c\xc9p\x86\xdb\x18\xce0\xc6p\x06\xc3\x19\x0cg\x10gI\x0cg\x8c\xc6p\x86m\x0cg0\x9c\xe10\x863\x18\xce\x889\x9f\xe1\x0c\xef9\x0cg\xcc\x8c\xe1\x0c\x863\x18\xce`8cf\xd4@9\xc3\x19\xca\x18\xce`8\xe3\xe9\xc2\x19'\xc2\x0e*t\xe9\x87\x1d\xfe\xaa\"\x9b\x06s\xd0q\xce+\xa8\xe0\xba\xbe\x15\xcdQCg\x8c\x83:\xf7+\xd3\xd4'J7X\xed\xb7M~\x81\xd0]T`$i\xe9\xea\xb3\xef\xd38x\xb2\xd8\x1e\x8d\xaa0\x13\xe9\xc6\x7f\x18a\x04Re0@\x12Q\xfcx\x1a;,bUCG\xd0\x96\xf4&\xc3\x12g\xf7\x12\xd7\x1e\x07G\x1a\xd7<\x87Zb\xac\xa4i\xfdM@3a\xd4\xcd\x01c\x17bVR\xe0\xf3\x83v\xe7\xd1Ds\x88l49\x0co\x7f}\xfb\xf1\xcd\xea\xed\xbb\x8f\x17o\x7fZ\xfd\xfc\xd3\x87wo^]\xfc\xe9\xe2\xcd\xeb\xa4\xf3\xfe\xcf\x9b\x0fI\xc7\xbf\xfc\xe1\xc3\xc7\x97\x17?%\x9d\xf3\xd3\xdb\xc4\xc3W\x7f\xbb\xf8\xf8\x1f\xab\xbf\xbe\xf9\x18>\xd1\x10\x1b\x19\x8e\xb8\x13\xf5\xf5M\x89\x0d8!\xb9G\xe2\xa5\xed\xe7\xd9\xfc\xa9\xea\xfbv]\xab5S\xb5tl~'uq\x7f\xcf\xa3W\xefo\xaa\x1eb3\xbc\xad\xde\xce\x1f\x9cj\x18\x02U\xccW\xd5x\x98\"E\xaa\xd6\xef\xb7\xb5\xf4\xd5jV'\xfd\xec\x18\x97\xdc\xe9Z\x10\x1e\xac\x9d\x90\xd5\xa6\x92\xd5 Cml\xb3\xc1\xe9\"(\xdc\xf3`E\x07\xc6_*)\xab\xf5\x0d\x06.\xcd]\x0b\xac\xa1\xe1\x97\xe5\xba\xdd\xedD\xb3\xc1\x98\xd6\xae\x1a\xd9 \xfbz\x180\xbcj\x0f\x8d?Xx#:o|\x07@\x85\xa5\xbe??\xdf\xb4\xeba~9\xcc\x83\xce\x1a!\xef\xda\xee\xd3\xf9\xed7g\xbf\xff\xe3\xf9\xae\xdd\x1c\xb6B\xcd\x8e\xfee\xa8\xf8\x8b\xef\x1c\x85Q:\xd1\xd0m\xac\x0e\x83\xb7\xaf\x19&H\xed\xad\xe8\x9a\xaaY\xdb\xaf*g\x11/\xb1\x90u\xdb\xf4uo\xb6\xc3\x1e\x11\xd2\x8b\xd7\xcf\xa7\x97\xe0s\xb32\xe2\xef\x88\xbe'\xe3\xe8\xf5:\xdf\xf7\x14\xa7x\xd8\xffx\xcbS\xb7kgM\xe5-OI\xce\xe4-O\xd5\x07\x99\xfa\x16J!8\xf1\xc3\xeb\xfd\xbbW\x8b\xd2\x98\xe0d\x823\xfa~\xa7\xbc\xb8\x80 N&8\xbdG2\xc1\xa9\x8c \xcecc\x82\x93 N\x9f1\xc1\xc9\x04\xa72&8\x99\xe0d\x82\x93 N4&8s H&8\x99\xe0\x9c\x8c \xcecc\x82\x93 N&8\x99\xe0d\x82\x93 N&8\x99\xe0\xfcu\x12\x9c\xbc\xd9i\xeeN\x92\xbc\xd9\xe9#:7\xdeGy\xb3\xd3\x12^\xe4\xcdNy\xb3\xd3\x7f\xca\xcdN\x15jv\xfe\x8b\x02\xdb\x02\xbb\x9c*8\xce\xce@\xd8D\xb73EX\xce\xbb\x89\xe9_'v\xeeI\xe7%\xf8x\x94,8.\x9a]\x10\x0d\xaa\x10\x90\xaer\x93-c\x81\xac\x82h\x85\x0bf\x14\x04\xf3 d$\x9b\xe0sl>\x1a\xcf\"\xa0\x04\x95\x8c\x15\xce \xc8\xcf\x1f\x88\xdec\xb4x\xee@^\xe6@Z\xde@z\xd6@R\xce@V\xc6@v\xbe@<[\x80xoR\xfa]\xe1<\x81p\x96\x00\xb5b\x053\x04\x02\xf9\x01E\xb2\x03\xc2\xb9\x01\xd1\x1b\x16#rKg\x05\xc8\x829\x01*#\xa0\x0c\xf9\x1f\xef\x18'S\xff%\x99\x7fW/'\"\xc9\xa9D2\x03\xc9\x0c$;\x7fg \xd92\x06\x92\x19H\x9e\x8c\x81d\xc9@\xb2\xdb\x18H6\xc6@2\x03\xc9\x0c$\x13gI\x0c$\x8f\xc6@\xb2m\x0c$3\x90\xec0\x06\x92\x19H\x8e9\x9f\x81d\xef9\x0c$\xcf\x8c\x81d\x06\x92\x19Hf yfT8\x94\x81de\x0c$3\x90|:#\xf3\xf8@\xb2\n@\xfa\xea\x8e\x10\xcd\x8c\x11\x99a5&|8\xf2_\x05\xeb\x1eC\xcfvu#\xcfo\xbf\xbd\x14\xb2\xfa\xf6\xbcj\x9aC\xb5]\xa9 I?a<.\xd8\xec\xa5:\xf4\xddx\xa4Y\xa1\x83\xa1\xc0a\x18\xc5\xb2`*\x0b_uN\xcelY\xd8W\xa6\x9dO\x949\xf3\xf8\xc9\xb6\xe0BWp\x89+\xbe\x84tty\x13\x95\x8e\xde\x03Ga\xb3\xbb\x82\x16\x96oS=hy\xc7H\xf1qWA\xe7G\x1d\x89\xb7_\xd5\xc6\xb1\xf2\xd0B\xf1#,3'\x8d\x95us\xb5\xb5\x94\x1e]c\xe4\x859D\xf3\xc9\xee\x87t,(0@\x8e%\xe9\x1f\x9f\xec\xc8\xb8\xf0\x8am\x85F\xc4\xc9]\x9eA\xcf\xe3OGQn\xdcg\xf4u\xfe\x986\xdd\xf8\xf7\xef^-\xe7l<\xb6\xf1\xd8\xf6\xc4\xc765W\x0fL\xfe\xde\xa9\xdfg\xa3\x1af\xa8\xa8\xa4\xac\xab\xf1Q\x9c\xe6\xfc\xceQ\xed/u#\xb1(\xfd\xeb\x93\x1d\xd6l\x87\xd86\xffDA\xaf\xcc\xf5|\x8d\x03FVSQ\x95\xc7\xcb%\xc1.\x17\xeep\x83\xb7W\x1b\xd1\xb4\x1e\xb2;\xdaa4\xcd*u,p\xdd\xd6\xea\xdbv(\xd7q\xfc8\xbe\xae\xbaJ\x8a\x15\x06\xf7O\xbb\xf2\xae\xba\xafw\x87\x9d\x99\xafb\x91\xc3\xa7\xf64\x96\x0f\xd7\nVfW\xdd\x97\xa9D\xca5kO\"\x01\xf9\x9auC\xbb\xe6u[mW\x97m\xb3\x11\xb9I)\xfa\x8aCA\xc3M\xde\x8bn=\xbc5\xb1L\xa8d\xbbs}\x1d\\n\xdb\xf5\xa7~\xb5\x17\xdd\xeaAT\xb9\xf9%\x84\x84\x18]\xbd\xf1=\x87\x17\x1e\xaa \xc3\x85g\xe7\x10^\xe28\xac\x90\xde\xe0\xfa\x9d\xad\xc74\xe6v\xf9}\xed\xfa\xfd\xa9\xbd\xaf\xf1eC~c[_\xf1\xba\xa3\x9bD\xc1j\x02{\xc6\xb7\x15R\xf6\xf8\xaaz\xaew0\xaae\x0f\xfd\xe1\xb2\xdfW\n\xb6\x9b\x16\xea>\x89\x07\xe7\xdb\xfdW\xf4f\xa7\xbc\xd8\x9d\x9b\x00\x8c\x1e+\xfaB7n\xce\x1amse\xfd\x03}\xd8{f\xd6@\xcc\x830\xf0 \xec>\xfd\xa9\x0d\xc2\xa1\x98\x85yH}=p\x1c+\xedq\x03\x87\xd4ar=\xedW1\x8d\xbaWsz9'\xef|\xd1BS\xd9\x80H\xca'\xf10\xab\xe2\xf0o\x13J\x19k\xa6\x03\xee\xa6MEk\x99\xf8\xa63u\x08\xbc\xec\xac\x91\xe8\x839z|\xdf\x0d\x03N\xb5\x1d\xde)\xd7u/E'6c\xb3z\x15\xad\x1c~\xfc$\x1e\xf4\x91cI\xcb\xb6\xcf\x9c\xf8\xcc)\"\xf0\x87g\xfa\xd8\xd9{q\xac\x92\xfe\xf1\xc9\xbe\x1a\x17\x9e\xb6\xedK\x0c\x10\xe1\xb7\"\xe1\x11\x1fnj\xf8\xe4\x93\xf7\xb9\xf3^=\x1e\xd4\x99\xfa\xaa\x95/9=\x81\xe3p\x82\xf0\x8c\xee\xa7\xfa\x81uS\xb5*V.\xee\xeb^\xaaL\x19\xcf1\xf6S\xed>\xc6\xdd\xb7g\x87\x12&\x02c\xb7\x1f\xe7\x02\xf6\xa83\x9b\x14\xe0\xa37\n-\x1d\xa7\xf9T\xdb#\xaa\x9f\xf88\x07\x1a\x1bi&\xcf8\x16\xbf\xf2\x8c\xe3\x11f\x1c\xb1\x97a\xbf\xad\xfa\x9b\xba\xb9&\x7f\xf8-\xbe\xf6\x8e\x17%M\x89zn\xa2\xcf\x9f\xbf\xb1\xf4!\xbf\xa2/:o\x17\xcb\xfb \xab\xaf\x1b\xb1Y\xe9\xc5\xb0\xbb\xba\xd9\xb4w\xfe>EZ\n\xf3\xad\x84\xed\xeaf\xa5/\xb7\x17]\x99ky2i6\xed]#\xeb\x9dX\xfdWUoW\x1b\x8d\xfdd]Ku\xa2\xd5\x95J\x1cm\x9b\xd5\xa6=\\n\x85jGVq\xd1\xaa\x1f]\x0f[\xf2\x18\x17\x8b\xbf\xb9\xc7h\x88\xa6\xd2\x8e\x9e\xb21\x8f\xec\x12g\xfc\xe6\x91s\xdd~Gx\xc0'6\xf18\x0b\x9d\xe3\x1f\xf9\x85w\xe4\x1f~\xe1}\xf9\x17\xde0\xa8\xd4\xcd\xf5\xaan\xae\xda\xc0{\xef\x03\x1ev1\x1c5\xbe\xfd\xf4\xb9J\x16M\xadqn\xb7\x98\x19X\xc9\xb63/\xb6\xf9\xab\xcf*F\xff\xfed_|C\xab\x9eFG\xd3`cvO\xe9e\xd5\xc9\xd5MPX)ZH\xfc]\x0b\x81\xc1u\xb2\xff\xd0\xbaJRs\xc1c\x87Q\x9b`*\xfc\x1a\xe5\x196\xc3\x9f\x05\xbc}?\xfc\xe0-\xee\xd0\xbc\x18\xde\xb7\x9ed\xec\xba\xd9\x88\xfb\x15*:>r\xcb\xe3/6\xb4\x8b\xa1J\xba\xedu\x0fu\xb3\xeeTV\xf00\xe8\xdf\xaaE\xacz7\xa6\xd8*\xbf\xd4\x81\xc5\xbf\xd1 \x81\xf1\xf2\x01\xf7\x95\xf6\x16\x86\x12\x1c\x87\xa6\x11\xc3\x0b\xbb\xea\x02r5\x9d\xa86\xbdY\x19'>\xe4\x946\xfd\xd5\xdc{k\xeeaK\xa8\x99\x9f\x9f-\xe63>5\x9c]\xdb\xd4\xb2\xed\xb4dy\xed\xe9\x11\xe3\x839|R\xdd\xd6\xf2\xc1\x11\xd1\xc4W\xa5\xba\x98\xfe\xce M\xa8\x8c\x856G?\xe1\xe3\x9c73\xe7\xcd\xcc\x17\xf6Y63\x07\xd2\xf3l\xef,0\xe93\x8e\xa9ju\x03\xd7\xef\xdf\xbd\x9a>\xd8\xf5Gf\x0fw\xc3=s\xdd\x1e\xf7\xd4e\xddvX\x86R\xfd\xea\xb0\xf1cV\xd9\xf0\x1aSC\x9f\xed\x19\xa7;\xcc\x19\x1f\xda\xddT\xef`\x0et'\xf6B\xe9n\xfcPu\xe3M\x8a\xa4Z\xce\xdd\xa2\xfa\xb7/\xd9r\x9e\xc5\x1d\\\x0b\xb1?\xd6H+\"\xaeB\xceg_\x8e^~{\xfc#/\x93\x1c\xf9\x87\x97I\x8a/\x93\x04\xb3'y3\x94(d\x00\xbe7=o\x86R\xd6\xb9\xf1m}5>\xde\x96\xb2+\xf1\x94ux\xfa*\xbc\xb3\xc2\xcbW\xbfo\x99^/\x0f\x8a\xcdp\x86\x9a\xfb8\n\x9b\xcf\x86\xd0\xa8\xcboEV\xdfx\xf1\x8d\x17\xdf\x9c\xbf?\xa5\xc57\xfbk\xc4\xd7\x0b\xedc\xcc\x13a\xfe9\xa6\x02-\x9eQ\xab\xacGV\x00\xeb\xa5R\xe9\x1f?\xb76b+\xae\xd5K\xac?\xffE\xff\xa3\xedT\xfd\x03\x9f[\xd6\x90\xf0\xda\x9c\xf3z*iJ7U\xcb+\xd3\xdfU\xa6)~\x83\x8d\xd7\x1aK\xd2Nr\xa6\xdcX\x17\xfc\xdb\xf0%\xbf\xae\xd4\x0b\xff\xaakwP5(\x98o2X\xd5\xbe\x02\xe8f\x14\xc0\x1f\xee\xc8A\xcdyo\xea\xeb\x1b\xa8v\xc3\xfbj,\xaf\xbd\x9a\x86\x9d\xeb\xaa\x1f\xbe\xb2\x91\xe8\x1cW*P\x17\x13\xe7\xd2m\xd7\x89\xb5\xdc>\xd8\xeb\x06\xb3oG\x97?\xf4qO\xf6#r\xbaE+G\x1d\x8d}\x89\x01b\xaaY\xf8!\xf7^\x00\x08\x17\x81\xe9B\xba\xeb\x07p6\xa0\x0d,@\x9as\xd8\xc7.\xaeo\x86\x0e\xd1\x0co\x8d\xcdbWNZYn\xbc\x03p\xdc\xc4\xd9\xcc\x17j\xee\xd1\xf5Oh\xeeX\x96\xbf\xb9\xfdM\xd5\x85\xee~^\x1b\xb1T=GT\xb5\x9f\xba\xab\xf9\xb1\x13kQ\xdf\x8a\x8d\xafnT\xa7M\xa3\xc9\x12=\x1f>\xd2\xf5\xb7r\xfbI4=\xdc\x0c\xa3\xd5\xe5C\x08\"\xaa\xd6j\xce\xaeg\xe5~\xea\xa5\xbdkP\xa9\xbam\xc4\xd4\xad\xf4\xce)\xbdk\xf7I\x7f\x8fkQ$\xa8\xbd\xc3/\x85\xb6 @y\x91[zYm\xab&\x96\x1bX`H\xf0\x8a\xec\xa0\x91\xfa\x0c\xbemN,\x86\xdaK^\xb5\xb5\xbd\x0b\xa7\xea\x10z\xa3\x10l\x8ey\xa5\xa9\\\xb9FW.\xb4'\xcdOo?\xbe\xf9^i[\xe3\xb1\xd3\xcb\xb0j\xe0\xa21\x0bk\xe3\xee1}\xb0\x13hm]=\xaf\xf7?\xae\xf5uS\xc9\x03>?8\xf7\x19:\xe1u{\xdd*\xe1\xda\\\xd8jz\x88\xecO\x16\xf5%_mU\xe0\xad\xb5\x1f4q\xbf\x16{\x8c\xec9\x8b\xab\xa5\xb5\xaf\x8b\xbb5\xba\xa7.\x85\x84\xf5\xe00.\xd2)J\xa7?\xd4\xd2\x04J\x9c\x85\xad\xb7*:8\xbe\xa2s\xber]\xaf\xfa\xa9\xc7\xe8$Sk\xca\xf6l\xa2\xbd\xfc\xa5\x1d?\xa7!\xfakVIk\x9a5\x97\xd2\xb2\xe2D\xb3\x8fJ\xc77r\xfe\x027\xd3dL\x93-\xec\xb3\xd0d\xe1~\xa1\xbe\xd9\\\xdf\x11Qa\x15WA\xe7\xce/4\xd6\xdd\xd5\xc6\xeb+e\xa6\x1e\xbcG-\xefQ\xeb6\xde\xa3V\x19\xefQ{l\xbcG-\xefQ\xeb3\xde\xa3\x96\xf7\xa8U\xc6{\xd4\xfa\xfb4\xefQ\x8b\xc6{\xd4\xf2\x1e\xb5\xd1\xddIy\x8f\xda\x80\xe7|\xbf\xf0\x1e\xb5K\xe3=jy\x8f\xda\xc9x\x8fZ\xcbx\x8fZ\xde\xa3\x96\xf7\xa8\xf5\x99^\x8b\xe4=j\x17'\xf0\x1e\xb5\xbcG\xed\x13\xdb\xa3v\x8ecYE\xcd>\xa7\xe7G\xcd\x02\xd8\xe3O\xc7\xec\xa7C\xf8\xfd\x04\xe0\x933\xc3s\xd3n93\xfc\x11\x9d\x1b\xcfi\xe6\xcc\xf0\x12^\xe4\xccp\xce\x0c\xff\x1f\x9a\x19\xee\xceTh\xbb\xe3D\x85\xf3NX\xc8\x1a\x16\xeaJ[xo\x1f6&)\xccN\x9e\x92\xc4\xffg\xa4#\xcc\x9a\xac\x0fx\xb2y\x08\xf6\x9dxj\x99\x08v\xdd\x1e\x1d<~\xa2\xb9\x08\x97b}\xf3\xbb\xdf\xbe8f\xf4\x83\xc5\xcd\xa6\xc3\x94\x94\x84\xbe[\x7f\xa1\x96;\xeb`Z?\xa5\x01\xdb}!X\x9e\x86\xa1\xf0\x89\x9c\xbe\x05(N\xd8\xf4\xf2\x8b;\xc1\xaa\xc3 N\xd8\x88^\x9a\xb1\x8b\xee \xd1\xc8.\xf8\x94\x84\x87\x81\xc9\"[\xf9\x00\xed\xb9E\xa3<\xbdh\xebN\xe00\x16\xd6\xb5\x9e\x8cx#\xd1\xe2\xb9\xdb\xb6\xa5\xdc|\xb4E\xeda\xf6i\xab\xff6j\x0d\x10\xca\xb3\xfb\n\xc8\xb6\xfd\x04\xfb\xedbg1\x97\xad\xdb\xdd~+TE\xfc\x1b>\xd8\x96\xe5\xc4\x98t\xf2d\x19\x8e\x9c\xb7`\xe6\xc7CS\xdf\xa3\x18G\x08\x1b\x9bl\xe6\xc4\xa9\xe0\x98\x13\x15\xaaUmW\x91\xa4\x99\xc9\x92\x9c\x98\xee\x92E}f.\xd1\xbf\x99\xb4 Bij\xf6>\xf3\x8c\x12\x9e\xf1'\\\x19\xc3\x14\x8ca\x88\xfb\xe2\x1e\x99\xaabFY\x9dk\x13y\xb1\xa2Y\xc3\xeb\x8bit\xd6\x19&\xeaAV\x81\x1cBI\xb6\x1bc\xee;4\x97\xa8>\xba\xaa\xbd\xaa\xdd\x93%9\x90\x90\x08`[,)\xc0\xb6\x0b#\x86\xa3r\xaf7!@9 k?\xd9\xf0\x92\x8ayv\xf2\xd40\x9e\xb6\xdb\xcd\xaa\x13W\xa8\xdd\xf1H\x8e+\xef\xb7\x0f\xb2\xab\xd5g\xc6\xbe\xedkY\xdf\n\xfc,\xa9{\xf4\xc0\xb3~j%\xa1\xb4Q\xc2\xa5\x97\xed~\x8faFq/E\xd7T[\xfd\xd9\x14v~\xda#f\x7f\x02\xbd\x19\xaake\xc8\xcdF\x0e\xc2\x04@\xab\x12ub+n\xabF\xc2N\xc8jS\xc9*\xf4\xb8\xccj\xab\xa75\xf8\x99\xae\x16W\xac\n\xe8\x1f}\x85Q\x9b\xfd~\xfe\xa2\xb0\x82c\xdb\xba\x97\x98\x84\xbf\xaf:Y\xafUd\xcfW\xcc8g\x7ff\x7f#7\xd7*\xe34\x904\x8a_\xc1\xd6\x15\xcc4x\x1a\x9d\xd4\x82\x1a\xa9\n\xd3\xd41\x92\x13\x1a\x99/\xc6\xe7\x8a\xa4-\x1f#]\x846?\x9c}\xe6\xaa\x07\x88\xa7\xa7\x84n=\x19OO\x9d\x96\xe1H\x9e\x9e.\x8d\xa7\xa7K\xe3\xe9\xe9\xccxz:Y\x96\xe3\xca\xfb\x8d\xa7\xa7\xa3\xa5OOI\x03/\xe9F\xd3\xdb}\xd4f\xbf\x1e\x83?k\xcb\xe5:K\xb2\x01\xea@J%X\xd9\x0e)\"\x0d\x81\x02m\xf9\x06-\xd5\x10\xba~@\xc5\x81\xe6I\xbb\xf1\x01\xf7\xcd\xbf\x06\xd0?\xce\xf2\xb4\xcfz3\x93vW~\xcc\xa1=\xd9kd\x7fy=\xc5\"\x13\xcaBx\xcfd,2\x01\xb4\x97w\xec\xc5\xf3\xeb\x14\x998j\x8e\n\xb7\xcf\xa2\xc3y\xea\x12\xf3\x98\xbaW\xc4s\xba\x91\xac2q\xe4 V\x99\xa0\xbc\xf0\x80U&Xe\xc2{$\xabL(c\x95\x89cc\x95 V\x99\xf0\x19\xabL\xb0\xca\x842V\x99`\x95 V\x99`\x95 4V\x99\xc8\x11j`\x95 V\x99\x98\x8cU&\x8e\x8dU&Xe\x82U&Xe\x82U&Xe\x82U&Xe\xc2N\xb4\xb3\x8a\x9a}N\xcf\x8f\xfa\xd2*\x13}\xb7^\xcdw\xef\xf1\xd5\xfb\xf8\xc8Y\xdd'\x18\xcc\xaa\xfb\x08\xbc\x08\x85\x11/[\x90\x9aq\xeci\xc3\xa6\x97\xc46\x1c\x1f\x99\xd4\x86\xf9V%\x05[\xc0Z\x1f\x14o\xb1\xd6\x07\xda#;7\xaeR\xc1Z\x1f%\xbc\xc8Z\x1f\xac\xf5\xc1Z\x1f\x13\xb0l\x81GX8u\xab\xd2\x9fM\x11\xbe=K\xc7k\x1c\xed^:\x16\xa6DB&G\x1e\xcd\xc4Lw\xf2\xdd\xe1'\xae\x1b\x12\xf4\x95>\xe1\xc9\xea\x88L]\xe4\x89\x89\x88\xcc\xfbr@\xda\x81\x10/\xa4\x84\xdc\xc0uM\xc8\xdbjs,\xc7\x1b\xfe\xa4\xed(Z\xb0i\xa5v\x11\xfd\x9f\x93Z\x98\x94\xd7G\xb8\x13h\xf4\xcc\x0d\xea\x9dC[\xe6\xf1\xd5\xee\x0c>r\xf6\x06-u/)m/\xd9G\xb4t\xbdD?-\xd2\xf4jG\x86\x1e\xd9I\xb4\xd4\xbc\xa4\xb4<\xb2\x93\xd2\x9a\x1dJ\xc5\xd3{\xdd\xeaC\x02L\x1a\xda\xf0b\x19^\xab\x1b\xfc@W{\xf2\xc2\xf0\xa9Fr\xc6\x97tB\xa0\xf1\xb3\xa6\x14\xb9\xeb\xf4\xb49rk \xc4\xbd\xb1\x18yo\xacd\x9a\\,E.;=.\xd9A\xe5\xfc\x93\x90\x0e\x077\x01\xb4\x12-;\x15\x8e\xde\xcf\x1ds\xccE&\\cU9\x9a\x07\x97\x96\x037\xab\xe6R\x9e\xc1\xf5!\x10\x92i\xa0\xb4\xd9\xd1\xda\xc1\xbf\x9d\xfe\xf6P\xf2\x0c}\xdd\\o\x85-\xc1\xe0,j\xaa^@\x93ax9\x8c%N+\x96u3\xb8ux}\xbcP\x9f\x85b\xa3\xe4!\x96\xad\xe2$+e\x9cd5\xfdDu&'Y\xa9u\x8e\xe5\xf3N\xdf\xd2wQ\x9a\x03\xe6\xc7\x1c\xac\xe0\x15x\xab_c\x9c\x84U\xe6\xb3\x9b\x93\xb08 \xcbm\x9c\x84\xa5\x8c\x93\xb0\x8e\x8d\x93\xb08 \xcbg\x9c\x84\xc5IX\xca8 \x8b\x93\xb08 \x8b\x93\xb0\xd08 +'\x8f\x89\x93\xb08 k2N\xc2:6N\xc2\xe2$,N\xc2\xe2$,N\xc2\xe2$,N\xc2\xe2$\xac__\x12\x16\xa7\xff\xa4\xe5Vp\xfa\xcf#:7\x9e\xb8\xc2\xe9?%\xbc\xc8\xe9?\x9c\xfe\xc3\xe9?#\xc0\x16\xc8\xf9\xf9oG\xce\xcf_\xc7\xf3f\x99>SqP7W\xad\xea\x9f\xb8\xff\xefx\xe1\xb1\xac\xff\x19\x99=\x1f\xd0\xd9\x0e\xc7\xe8\xa3\x9flZ\xcf\xf2\xd6\xdb&\xbf\x00rc63\xfd\x8c\x19/\xcbK\xce&\xa2\xf3l\x97\xc9]\x1ex\xd4.\xef\x7f\xab\xbd}\xc7\xbc\x99\xbaQ\x1f\x1c\xee\x0f\xeb\xa1\xb7\x8a\xa6?\xf4\xab\xfd\xe1\xd2\x8b\\F\xbd\x0b\x04\x0f\x03\x01l\x02\x9a\x87!\xc1\xcb\x90\x019\x05\x0bsG\xba\x02\xcb\xa5\xa5a'\x88\x03O\x90\x01=\x85\x1bP\xc9\x1b2\xf8\x04\xa5\xe0'\xc8\x04\xa0\x82\x05\xaa\x0d/\xa8\x10\x14\x9c\x0eBA2\x0c\x15,JC\x1aI@\x14\x94\x86\xa2 \x11\x8c\x82T8*\xdc\xb3Gp\x8a\nHAiH\nh\xa0\x14\x94\x84\xa5\xe0d`\n\xf2\xa0)(\x05NA\x16<\x15~\x1c\xaa\xe1\xd3<\nP\xc1\xe3@T\xf0\x88 \x15<\x0eL\x05\x89@\x15\xe4AU\xb1!\x98\x06VAY\xb8\n\x12\x00+H\x87\xac \x03\xb4\"\x0c\x99\xbf!\xc0VP\x02\xb8\x82\x18t\x05\xf4\xe9\x19\x01\xbe\x82\xc4Y\\2\x84\x15,M\x01Z\x04\x10\x0b\x12jY\x10\xc8\x82$(\x0bJ\x83Y\x90 g\x85\xfbU\x1f\x07\xb4 \x1f\xd2\xf2\x967\\1\x06jA1X\x0b\xe8\xcc\x11P\xa0-H\x03\xb7 F\x13d\x02\\@(7\x10\xca,\x04sA\x96s\xe9P\x17\x10Z\x99\x01wA.\xe0\x05a\x8a\x85\x04zAa\xd8\x0b\n\x01_@\xeb1'\x83_@\x87\xbf\x80\x08\x80\x01\x19\x02\x03Z\x87J\x87\xc1 \x08\x83\x10\x14\x06\xa5\xc00H\x85\xc3 \x13\x10\x834H\x0c\x087!\xf2\x98\xc5\xcf\xa7CcP\x10\x1c\x03J\xd5\x02OY9\x88\x0c( \x19\x9c\x00\x93y\x0b\x94*\xb9\xdf\x0f\x94Ai\xa8\x0c\xa2`\x19\xe4\xc2e\xde\xd2\xf0\xdb>\xbc\xcc\x11\x87\xcc \x0c\x9aA\x16l\xe6-*\x08\xa1A.\x88\xe6-\x0dg\xc8\x81\xf5\xc4r@\x1a\x90\xa04\xc8\x00\xd3 \x0dN\x83\x1c@\x0d\x92!5\x08\x8f\"\x10\x01\x87 \x01\x1e\xa2\x02k\x90\x03\xadA*\xb8\x06\xe1\x86\xe7\x00l\xde\xc2,<\x8c\xfa\xc8\xd0@\xb6\xe0\x03\xd1\\\x87a6(\x0b\xb4A\x0cj\x830\xd8\xe6='\x17x\x83\x82}7\x01|\x83$\xf8\x0d\xbc\x13\x94\xff\xaa\xea\xad\xf0\n\x1e\xed\xbf\xc3]\xbbSB7b\x03\xbd\xac\xe4\xa1\xc7@\xc0\x91f\x0d\x1a\x1e\xe2k%\xb5\x05\xfaB\xf5R\xf0\x1b\xff\xee=\xedk\xac\xe7\xa4V\xaa\xffK\x05~\xdc\xa7\x10V\xc9Ds\xd8\xf9'\xf8/\xe0\x87\xb7?\xbd^}\xf8\xf8\xf2\xe3\xcf\x1fV?\xff\xf4\xe1\xdd\x9bW\x17\x7f\xbax\xf3\x9a|\xc6\xf0\xaf\xc4\xc3/~\xfa3\xf1\xf8`\xe1F\x90$\xa9 \xa8\x83\xf6\x19\xc2\xeeZp\x0d\xbb1X\xd0\xa7\x8a@\xa8\xdf\xbe\xae\x9b\xf5\xd6\xff\xe2\xef\xc5\xf6\xea\xc5\xa4!\xe5\xe9\x04\x13\xec\x82\xdb\xe8\x7f\x86\xa6-/9\x11\x05\x8a\xb9\xd2\x7f\xac\xfb\xfe\x80\xd1\x16\xff\xab\xc8\xe2\x0d\xa6R=\xcb\xc6v\xedNn\xc0x\xdc\x02\xcb\x9d\xfe.E\xb7\xeb\xc1\xbd\x8d\xf9d\x11\x19\xd0bD\xc3\xaem\xeaO\xc2\xa1w3\x19\xe1\x06C\x82\x8f`\xba\xea\xa4\xa9\x067\x87]\xd5\xbc\xe8D\xb5Qh\x9e\x9a\xd1\xc5|\x04\x14?\x81f#\xa4\x97\x0d\x81\xc7i\xa3\xb9\xac-\x1cg\"\xbf\xd3\x8f}}\xddT\xf2\xd0 \xf8Z\xdc\x87?\x83\x7f~\xd7v\x8a\xb3\xfdO\xf1pY\xf5\xc2;x\x03\xdc\x89\xcb\xbe\x96%\xe2 \xb3\x16\xebb\x9d-2\xbfm\xeb\xe6Sh\xe8Y\x1f\xbaZ>\xac\xd4\xb7\xca:\xa8[\x98S\xc3\xc8=Y^\xde\xd9\x12\xb1\xab\xeam\x14\x1f0E\x81.\xca\xdff\xaf4\xd3d9M\xd5\xc5\x9a\x17\x01\x06\xec\xc6F\xe8_\xdd\xb5\x9a\x84$\xc3\xd2\xbc\x84jQ\x14#\xa9whY-sw\x9eC}5\xfd\xf8\\\x8d\xa8\xfa\x88\x00fd${\xeb\xfehzw}\xb04\x1cc.\n\xe9\xf2&8(\xa6\xc5\x9b\xee$\xa5\xb6\x1bp\xd1\xaenFE^oq\xf3\x89\xa4l\x8d8\xab\x889h\xdd\xeevu\xdfS_\x9a\xd3\xe1\xb3\x17\xa3\xf5\xe7)/\xe6\x91_y\xd35W]%\xc3\x1a\xd6\xd4\xbb\x02\x8erg\x0d\xd5\xe2\xc0\xd6A\xc1\xb2\xb0\x00\x84-F@\x00%\xaa\xd5\xf7.\xe1\xb5G\xf2\x17\x10}\x06\xbaN\xb1\x15}\xc2\x03a,\xc5\xb5\xa0/o>}\xacn\xa3\xfe\xbc\xbe\xa9\xbak5'\x8c\x163\xcd\x06\x9f\x83J\xc7\xbbR`[X\x8b\x18`W\xdd\xaf\xbe\xb0\x03L\x15f\xfdjW\xdd\xd7\xbb\xc3n\xe9\x91ha8:NO\xfe\xbaj@\xdc\x8aN\xbb2\xd97H\xe2<\x05\x17Y5qzjS\xd5Q\x89n\x95_\xd2\x89\xaa\x17G\x00\xb3\xe5itR\xb4\xa8\xb8\x13\x0f\xfb\xe1\xed\x10U\x80':\x8e\xfa\xc6\x81D\x07[\xb54\xcf\xa1\n\"\xa8?\xb8\x9e\xca\xbb\x08\x80\x88wj\xe3\xf6\xcb\xaenV\xc3\x87\xaa\xb5\xb3\xca oaj;\x1dW=Zny\xd6\xab/h\xd8\x88\xf5\xb6Z\xa6\xf5,\nS=N\x1fm\n\x0c\xea\\\xb9\x12`\xfe\xe0<\x1eu\x92\x94yD\xa9T\x9e\x1ec\x8fJ\x98Go%\x90\xbd\x02\x05\xc5\xcb\xa3\x1a\xaeq\xe1\xf2\xc2-+,YN\x16,\x8f\xca\x95\xa7\xb7\xf3T\xa9r\xbaPyz\xdd\x82\xf7\xa0\x98D9U\xa0<*O\x9e\xde\xc0lir\x9a0y\xb4Bq\x11K\xda\xfd()H~\x8a\x1c9E\x8c\x9c\xec\x94\xb0,l\xaacRD\xc8)o K\x90\xc7\x04\xc8g-9]~\xbc\xc0\x8b\x8a.#\xa1\xaa\xe6\xcb\xea\x06\x86\xbd\x83#\xc0\xbe\x13\xb7\x9fy\x00\xb8\xa9\xfa\x9b\xc2\x0fcP\xbcL\xcdu\xe4\xaa\x17r\x15\x1av\x8d\x91Z\n\xe4\xd6\x0e\x16\xd8x~vX\x10\xd5Y\x1a\xa5\xdb\x19\x8b\xbb\x1cR\xdc\x0et\xd7\x8f\x1d\xed]\xd5\xc9^\xc8\xffPw \xd4u\x15\x14-W\xe1*\x93\xaaJ\xaa\xa2\xae\xdep9\xa1b\x14\xf80\x0c\xc3\x9e\xe7\x9c\xe1\xa7\xcfT\xbdI;\xfc3]p\xe9\x8f\xab\xae\xdd\x99q\x1c\xda\x83\xdc\x1f\xe4\xf4\xb7i\xec\xf0\x94\xa66\xe6\xf8\xecm\x98$\xad?\xcf\xf5\xaa\xfd\xfe3]I=\x1f\x9a\x85\xf8L\x97\x14\xb7\xf5F4k\xf1\x99.7\xf6\xbfi\xfa\x13x-\x0d#p\xdb\x8b\x88R;\x14\xab\xdflR\x87#\xd9\xec+b\x9c&\xa9%E=\x92\xe0;\xc75\x8d\xb9\xad\xb6\xbd\x08\xe6\"\x9c\x04\xe2\x07_a\x94\x97\x17M\x08\x1f\x8d\xe4\xe0\x94iq\x924~\xb0\x1c;\xb3\"] \x1f\x8d&\x93\x8fF\xf0>\x10\xef\x00\xe8\xe2\xc2\xc2\xf9\xd3q\x84;\x00\x89w\x012\xe8\xd6h\x81\xd2\x899\x84>\x0f\xd0\xc8\xb4k\xb4\xa4\x89\x86\x8dQ\xaf\xc6R\xe9\xd7h\x81\xfbJ\xde\x90)Xc\xae N2\x0dk\x8cN\xc5F\x8b\xb2\xa9\xd9\x04:\xd6\xd8\x89\x94\xac\xb14Z6Z\x9c&\xf9\x92\xa8Yc\xa9\xf4l\xb4\xc0\xab\xb6K\xa2h\x8d%\xd1\xb4\xd1\xd2rD\xfa\xd1Htm\xb4\x949}K\xa1l\x8d\x15\xa3m\xa7\x02O\xa1n\x8de\xd0\xb7\xc6\x8aP\xb8\xc6\xe84n\xb4\xa8\x19\xad\x1b\xa7r\x8d=\x02\x9dk\xec\xb1(]c\x8f@\xeb\x1aK\xa1v\x8d\x91\xe9\xddhI6\xdd\xab\xfaw\x9c\xe25\x96D\xf3FKS\xe3\x04\x95\xea5&\xd3\xe8^c\xa9\x94o\xb4\xc0\x94m\x01\xd0N\xa6~\x8dE\xb6\x08@K\x98:F\xbf\x91&K\x9de&\xd1\xc1\xd1\xd2\xa4\xa1\x87 \x94\xb0\xb1\x94\x1a'R\xc3\xc1\xb2\xe6\xb3Y\x02=l,\x89\"\x0e\x96\x14\xddt\x00-\x874\x8e\xf7O\xd2\x06\x04h9\xe4q\xac@I\xda\x8c\x00\xad\x0c\x89l\x8c\x08\xd5\x1a\x8b\x92\xc9\xc6\x12\x08ec\x11\xedke9\xc4\xb21J\xf9Ai\xddb$\xb3\xb1<\xe7\xd3\xc9fc\x94\x96g\x90\xce\xc6\xb2\x88gcAaueq\x02\xdaXI\x12\xdaX \"\xda\x18\xb1w\x9dLH\x1b#\x92\xd2\xc6(\xc4\xb4u,\x81\x9c6F\xbcy\xe9$\xb51:Qm,\xb0]\x02Z\x11\xc2\xdaX\x12im,\x87\xb86\x96@^\x1b\xa3\xdc$\xc2\xe3J+\x87Nf\x1b+Eh\x1b#U3\xf2\xc4\xa6\x93\xdb\xc1\xe2.\x1f\xe2\x04\xb7\xb1\x1c\x92;X\xa0\xc1*\xc2\x1b1\xa0\xe5\x90\xdd\xc1\x02\xa5Y\xc7\x0cl\xca\x80\x96Jz\x07\x0b\x9b(p\xc2\x12R\x9c\xfc6\x16\xdc\xac\x01-\x9d\x04\x0f\x16\x17\xd9\xce\xc1\x1cD\xa7\xc5#\xb7\xdf\"\xc9\x03[;\xa0\xa5\xd2\xe3\xc1\xc2~~\xff\xe3\x19\x81\"7\x96J\x93\x1bK\xa0\xca\x8d%\xd3\xe5\x8b\x13\x89\x94\xb9\xb1\xc8\xc8\x04Q\xf9}4* L\xa5\xcf\xc7rS)\xf4\xf1\xc4\x14\x1a\xddX\xc4\x199tz\xb0@\xc2v\x11h9\xb4z\xf4a\x8ao\x1d\x81\x96N\xafG\xc7\xe8\xc86\x12h\x01\x9a=x^.\xe9n\xacd\x7fO \xdf\xc7\xa2\xc9\x04\xbc1\xff\xac'\xb4\x0d\x05\x1a\xae\x98\x856\xa3@KYQ\xca\xd9\x98\"\xdc\x13\xbavG\xde\x9e\x02-\xb4I\x05ZJ\x8b\xb26\xac@K\xde\xb6\x02\x8d\xb8\x92\x19\xda\xc2\x02-u#\x0b\xf7Y\xc1\xed,\xfc\xa7\xf87\xb5p\x9d\x13\xbdH\xc6\x06\x17h\xa1m.\xf4\x114\x7f\xa7t\x9aS7\xbe@\xa3l\x7f\x81F\xdb\x04\x03\xed\x11\x9a[j[\x0c4\xfa\xe6\x18hvM\x8b5h<\xf6\xa4\xed2\xd0\x08Z\xdb\xc5\x89\x9b\xe86\x1ah\xc4\xce\x00\x89\xfe\x83\x82\x1bk\xa0\x91|H\xd9d\x03\xed\x11\xdb\x9d\xb8\xedF\xb4\xbc\xaf\xc5\xfd\x19}\xf3\x0d\xb4\xe8\x16\x1ch\xb9^8u;\x0e4\xfa\xa6\x1ch\xb9\xb5%\xdc\xb3b\xdbt\xcc\x8b\x8bm\xd6\x81\x16\xdd\xb2\x03-\xb7\xf9\xd9\xdbw\xa0\xd16\xf1@#V\x91J\xfd\xa7\xdc\xc5\xf4\xcd=\x82\xc5U\xf2\xa4->\xd0(\x1b}\xa0%:.\x96>\x03\xd9\xce\xa3n\x00\x12,N\x8f\xe99\xdb\x80\xa0\xc56\x03A\x9b\xb5\xf0\xf4-A\xd0\n\xbf\x86\xe9\x9b\x84\xa0\xa5\xdc5H\xdf0$Z\x1e\x16r\xd2\xb6!hD?B\x82/\x81\xb4\x91\x08\x1a\xf1\x812\x96\xeav o-B*\xca\xda~\x84\xb6g\xc4d\xb4mF\xd0>\x83SR6\x1e!\x15\x88\xa3pd\xfb\x11RIi>%oT\x82\xf6\x99\\K\xda\xba\x84T\x9a\xd9\xde$\xbe\x81 \xa98\x9asI[\x9d\xa0%84\xe5\xad\x08\x19\xceO\xdd\x02%Z\xe0]\xd5\x876BA#o\x87\x82F\xf4WJ\xdb\x0bn\x902\x16\x98\xb6M\n\x1ay\xb3\x14\xb4\xe4-S\xd0\x88\x0e\xa4\xce]c;\x80\xa0\xf5\xe9[\xa9\x04\xcbS\xab\xaai\x1b\xaa\xa0\x11\xb6UA\x93\x91\x9c.\xb4`f\x17\x1a\xd1\xdfd\xb1\x02\xaa\xcb\x8bm\xbd\x82\x96\xb2\x01\x0b\x1a\xf5\x11\xcc\xdb\x8c\xc5[\xdc\xb4%G0\xe3\"}c\x16oQ\xb8a\x0bu{\x16\xb4\xe4MZ\xfcW\x9f6o o\xd5\x82\x96\xb5aK\xb8\xe9\xa4m[\xd0R7o\xf1\x16d\x0d\xd5\x84-\\\xd0\xb26r\xf1\xd7\xa0\x1e\xf1\x15\x19\xde\xce\x05-oS\x97`c\xc4&\xb0\xb5\x0bZ\xde\x06/GO\xab\x92=\x9a+\x0b\x8d\x9b\xbb\xd4}\xc2\xfe.\x0b\xb5\xa3\xf7\xef^-\xeb\xce[\xbd\xcc\xdf\xbe\xbc\xd5\x8b\xc3\xa8\xef\x96\xd4dX\xec\xc0\xbc\xd5\x0b!\xc9\xd5\xc5\xb1%'\xb7\xd2\x93Zy\xab\x17c\xa9\xc9\xaa\xc1\x95\xfc\x94$\xd5\xa4\xe4T\xde\xea\xe5\xd4\xa4\xd3\x8cd\xd3\"I\xa6\xf4\xe4R\xde\xea\xa5D\xf2hJ\xd2(9Y\x94\xb7z\xe1\xad^\xc8\xb3\xa4\xa4dN\xfc\\\xe2\xad^x\xab\x97R \x96\xc4\xdc\xbehBeB\"%e\x93\x90\x94\xc4I\xde\xea%g\xb7\x94X\xe2#o\xf5BOd$&0R\x12\x17i \x8b\xbc\xd5\x0bd&\x1e&$\x1c\xf2V/ \x83\xbc\xd5\xcb\xc2R\x13\x00y\xab\x17Wq\xbc\xd5\x8b\xf3\x04b\x12\x1eo\xf5\x92\x96L\xc7[\xbd\x8c\xc6[\xbdh3\xdb\xa6\x1c\xf1\xbc\xb3\xcf\xe89\x0f<\x91\xbd\xfa\xef\xe3\x06)\xf2x\x0b\x0d{X:q\xc3\x14\xf0\xb0#\xa9\x1b\xa9(?\xe83\\\xdb\xa6\xbc\x1b\xfd4\xdb2E\x17\xe3\x80`g\x9b\xa4|\xc0\xc3T!\xe6[\xfb\xc9\xee\x91b\xbb\xc2\xb6Ye\xf0 \xfd4\xaax\x82\x9a?\x8dN2\xd4\x06\x022\xc7\xef\xa1`L/\x1c\xd1\xa3\xe0\xdf\xd1\x05\xadYc\x16\x9c\xb6\x86\xb1\x90\xd9\xd6\x8f\xdd\x0cmq\xbdVw\xd5\xbd%g\x1e\xaaUH\xc4?\x8eA\xcd*>\xbf\xa8\xa9\xb8\xa1\x16GF\xc1\xd2\x8a\xf7U]4\xb2\x0bFP\x8b\xd6\xdb\xbb8hU\xc5j\x0d\x98?\xa9 e\xadV]\xc7\x9b\xe1)\xc9\"6T\x84\xde\xfa\xf7\xd7{\xd1\xc1\xbe\xaa\xbbs\xd9\xd5\xad3\xe5\xc7\xdaW\xe9\x89x\xe6\xb8F\xc6A\xd3m\xb6\x86Ys\x8c\x97#\xda\x8b\xae\xaf{g\n\xcd\xe0\xd8\xd5F4\xad'\x0f6\xed\xe1\x9aJ\x9b\xa1\xb5\xc3\x9fU\xbc`\xdd\xd6\x0d\xa8\xdf\xebFs\x8b\xc7%\xee\xeaf\xb5`\xf23\xeb\x16\xa3\xd9\x1cW\x1ai\xf4\x9b\xaan^\xdc\xd5\x1b1\"\x97\xd1\x14\x00\x84\xb9\x86\xe9Q\xb5\xa0\xad\x11\xb4\x06\x84\xbf&\x02jV\x0e\x81\x92\xc1wJ\x94\x8e\xd1<\x0c\x1e\xad8\x98yY\x8c\xc10\x06\x13\x8d\x01\xd1F*\xc6`\x18\x83\xf1\x1d\xc9\x18\x8c2\xc6`\x8e\x8d1\x18\xc6`|\xc6\x18\x0cc0\xca\x18\x83a\x0c\x861\x18\xc6`\xd0\x18\x83\xc9!I\x18\x83a\x0cf2\xc6`\x8e\x8d1\x18\xc6`\x18\x83a\x0c\x861\x18\xc6`\x18\x83\xf9g\xc0`\x92q\x91\xb6\xdd\x06`\x91\xb6\xdd\xce0\x91\xe1\xf0\x19\xf92\xa3C\x86\xc3\xf5\xdf\x9f.\x1426\xd8\xb69\x1224\xd2\x0e\xf1\x1e\xb5z\xb2`,+\x1c\xc9jZ\xb9B5\x82UH\x838\xb2\x96sJ \xb3Vc\x10\xb6m\xb7\xe4\x10\xec\xe0\x95\xf7\xef^q\xc8\x158\xe4\x1a]o\xa4,\xd9\x01\x87\\9\xe4\xea=\x92C\xae\xca8\xe4zl\x1cr\xe5\x90\xab\xcf8\xe4\xca!We\x1cr\xe5\x90+\x87\\9\xe4\x8a\xc6!\xd7\x9c\xa8%\x87\\9\xe4:\x19\x87\\\x8f\x8dC\xae\x1cr\xe5\x90+\x87\\9\xe4\xca!W\x0e\xb9r\xc8\xf58\xe4\xbaL\xaev\x05^\xff:\xe5B\x9b\xf0k\xb5\xddZ\xe9\xcffmU\xaeQ\xdb\xff\xba\xbeU;;T\xf20\xae^\xf8>\xd9\xffv#\x1aXW\xdb\xad\xd8\xe0\xf6\xb9U\x83\xcb0\x98\xe3\xfe\x1cW\xabP\xf4\x00\x97U\xd6m\xd3\x1f\x86W\x1b\xdc\xd4\xd77Z\xf4},\xcf\xd6\x8e\xbf\xaez\xdc\xa2b\x98\n\\\xebDX=\xda\xd6=\xd4\x8d\x96\xe5\xdf>@/\xa43\x8a<\xb5]\xff\xfadc\xc9\xa14\xf9/\x11\xa6C7\xb6\xdd\xaa\xdal:\xd1{\x8e\"\xadUQ\x96{\xc0q\xc9Y\xdc\xdc\xfcm\xb9\x85\xd03\xffr\xa3)\xef\x7f\xc3\xa5X\xdf\x80h\xd6\xedF\xad(\xabA\xca\xfd2\x1ez\xa7h\xfaC\xbf\xda\x1f.? \xef\xde\x9e\x11\xef\x02\xc1\xc3@\x08\x86\x02\xcd\xc3\x90\xe0e\xc8\x08\x8c\x06\x0bs\xaf\x8e\x05>\xb1J\x07H!\x1e$\x85\x8c@i\xb8\x01\x95\xbc!\x07K\xa1T\xc0\x142\x83\xa6\xc1\x02\x07\xe7\x92\x03\xa7pz\xf0\x14\x92\x03\xa8\xc1\xa2t`')\x88\n\xa5\x03\xa9\x90\x18L\x85\xd4\x80j\xb8g\x8f\xc1VjP\x15J\x07V\x81\x16\\\x85\x92\x01V89\xc8\ny\x81V(\x15l\x85\xac\x80k\xf8q\xb0v\xd4\x894\xe1\x11\x02\xaf\xf0\x88\xc1Wx\x9c\x00,$\x06a!/\x10\x1b\x1b\x82i\xc1X(\x1b\x90\x85\x84\xa0,\xa4\x07f!#8K\x182\x7fC\x08\xd0B\x89 -\xc4\x02\xb5@\x9f\x9e\x11\x02\xb6\x908\x8bK\x0e\xdc\x06KSA]B\xf0\x16\x12jY0\x88\x0bI\x81\\(\x1d\xcc\x85\xcc\x80n\xb8_\xf5\xf1\xa0.\xe4\x07v\xbd\xe5\x0dW\x8c\x05w\xa1X\x80\x17\xe8qJ\xa0\x04z!-\xd8\x0b\xb1\x08Df\xd0\x17\x08\xe5\x06\x96?\x0b\x05\x80!\xcb\xb9\xf4@0\x10Z\x99\x11\x10\x86\xdc\xa00\x84#_\xa4\xe00\x14\x0e\x10C\xa1 1\xd0z\xcc\xc9\xc1b\xa0\x07\x8c\x81\x184\x06r\xe0\x18h\x1d*=\x80\x0cIAd\x08\x05\x92\xa1T0\x19R\x03\xca\x90\x19T\x86\xb4\xc02\x10nB\xe41\x8b\x9fO\x0f4C\xc1`3P\xaa\x16x\xca\xca\x05\x9e\x81\x12|\x86\x13\x02\xd0\xde\x02\x87\x03CAh(\x1d\x88\x86h0\x1ar\x03\xd2\xde\xd2\xf0\xdb>\xbc\xcc\x11\x0fLC88\x0dY\x01joQ\xc1\xc05\xe4\x06\xaf\xbd\xa5\xe1\x0c9\xb4\x03r\xb1 6\x90\x02\xd9\x90\x11\xcc\x86\xb4\x806\xe4\x04\xb5!9\xb0\x0d\xe1Q\x04\"\xc1FH\x088R\x83\xdc\x90\x13\xe8\x86\xd4`7\x84\x1b\x9e\x13\xf4\xf6\x16f\x85\x94\xa9\x8f\x0c-\xf8\x1d| \x9a\xebp\x00\x1c\xca\x06\xc1!\x16\x08\x87p0\xdc{Nn\x90\x1c\n\xf6\xdd\x84`9$\x05\xcc\xc1;A\xf9\xaf\xaa\xde\x8aM8nw\xd9\xb6[\xe1]T\xa7\xaen\xe0\x95t\x94r\x03w7B\xafq\xd9\xfb\xa9\x0f=\xfcR\x88F\x1f\xed\xbf\xc3]\xbb\x1b7\x14W\xa1w\x0c\x048\xc5\xa8A\x1f\xe2k%\xb5\x05\xfaBZ\xcay\xaa4\xfe\xdd{\xda\xd7X\xcf\xf3Qn\\\xff\x97\n\xfc\xb8O!\xac\x92\x89\xe6\xe0\xd1\xd6\x06\xc5B\xfc\xf0\xf6\xa7\xd7\xab\x0f\x1f_~\xfc\xf9\xc3\xea\xe7\x9f>\xbc{\xf3\xea\xe2O\x17o^\x93\xcf\x18\xfe\x95x\xf8\xc5O\x7f&\x1e\x1f,\xdc$1'5!\x94\x85M\xf2'\xb5\x13\xe0\x85t7\xd6\xf3\x0d\xbd\xf1\xbe\xf9\xed\xeb\xbaYo\xfd/\xfe^l\xaf^LZ\xf2\x9eN0\xcay\xafp\xc3\xfc\xcf\xd0\xb4\xe5%'\xa2\xa0\x95\xd5Vo\xdc\x0fu\xdf\x1f0\xda\xe2\x7f\x15Y\xbc\x81\xa5K\xeek\xe8T\xbb\x93\x1b0\x1e7\xa3!\xec\xbfK\xd1\xedzpo\xf8?\xd9\xd8\x80\xf0\x13z2\xd1\xb0k\x9b\xfa\x93p\xe4\xc8OF\xb8\xc1\x90\xe0#\x98\xae:m\xbc\x027\x87]\xd5\xbc\xe8D\x85\x82\xfajF\x17\xf3\x11P\xfc\x04\x9a\x8d\x90^6\x04\x1e\xa7\x8d\xe6\xb2S#\xa74\xdb\xe9\xc7\xbe\xben*y\xe8\x04|-\xee\xc3\x9f\xc1?\xbfk;9\xbce\xfeS<\\V\xbd\xf0\x0e\xde\x00w\xe2\xb2\xaf}\xdb\x0b\xa0\xe5\xb4X\x17\xebl\x91\xf9m[7\x9fBC\xcf\xfa\xd0\xd5\xf2a\xa5\xbeU\xd6\xb2t\x0d#\xf7dyygK\xc4\xae\xaa\xb7Q|\xc0\x14\x05\xba(\x7f\x9b\xbdr\x0e\x93\xe54U\x17k^\x04\x18\xb0\x1b\x1b\xa1\x7fu\xd7j\xda+\x067::ah\x8fo\x0dB\xbfC\xcbj\x99\xbb\xf3\x1cjk\xe3\x9a\xe7jD\xd5G\x040#\x9c\xeb\xab\xa0\xefrzw}h\xc2\x1b\xe1\xd06\xe8Ir\xd0\xa6\x92\xe2\xc5PV1'\xe1\xde>~\x17\xed\xea\x06\xf7\xff u\xe5\xf9DR\xb6*\xe8\xbf\x15R\xc4\x1c4\xed\x1aBziN\x87\xcf^\x8c\xd6\x9f\x8f\xb7\x9fZZ\xa1W\xdebg\x94\xe0\x83I\xbd+\xe0(w\xd6P\x05\xe5T\xdb\xf8f+hX\x00\xc2\x16# \xb0\xeeD%\xf1{\x97\xf0\xda#\xf9\x0b\x88>\x03]\xa7\xd8\x8a>\xe1\x810\x96\xe2Z0\xbb\xd0\xd4G\xddF\xfd\x19\xf7\xa1\xd9\xf8w\n\x9al\x9a\x0d>\x07\x85\xf0_)\xb0\xcd\xbde\xcfd\xbb\xea>\xb0c\xcfd\x8f\xe8\x00S\x85Y\xbf2\xfbd-<\x12-\x0cG\xc7\xf9n>\xe2Vt\xda\x95\xc9\xbeA\x12\xe7)\xb8\xc8\xaa\x89\xd3S\x9b\xaa\x0e\xa8\x9c\x18\xab\x9b\xe1i\xeb\xc5\x11\xc0ly\x1a\x9d\x14-*\xee\xc4\xc3~x;\x04\xdf4@w\x1c\xf5\x8d\x03\x89\x0e\xb6ji\x9eC\x15DP\x7fp=\x95w\x11\x00\x11\xef\xd4\xc6\xed\x97]\xdd\xac\x86\x0f\xd5\xd5\xf4\xa1z\xc2[\x98\xdaN\xc7U\x8f\x96[\x9e\xf5\xea\x0b\x1a6b\xbd\xad\xba\xc0\x1a\x91\xd9`K\x1fm\n\x0cjc\xd4\xcdZ\x0co\xcb~\xd7\xf6/\xfa\xcd'\xf8\xe6\xec\xf7\x7fp\x1e>M\x04\xdafu\xd3n7\xabN\\\xad\xd6\xed\xa1y\xec\xf9\\l\xfb1\\\x9cW\x89\x1e\xfb\xb6\xafe}+01\xc4\x9e\x8a=\xeb\xa7\x16\x8c\xabn\x81\x02\xdb\xfd\x1e\x83z\xe2^\x8an\x98\xe2b\xca\x8a\xbb\x8bM\xce\xa97\x91\x95\x0bw\x9e\x06\x9a7[\x03\x8d\xe0\xcf\xc9\xa3\x87\xd3\\\xba\xad{9\xdb\xc0\x11\xeaM\xff\x1cD\xb5\xbe9N\x03\x18\xe6\x08~gNE\xb4\xcb\xbb\xe28\x87\xf2\xe8\x8cy;\xd6\x17\xfdX\xe6s\x90\xed5\xae\xb5\xaa\x08\x97\x8aN\xb5\xb2r\xc7\n1\xc1\xc8\x10p\xe1\xab=\xeb\xd5\x12\xacY\x18\xd2I\xbeu\x07\xe2\x1e\xc7\x16\xbdu]\xab6\xe8\xf3\xcc+?l\xab\xfefp\x86\xd1G\xf2\x11\xfd\xd5\xf0\xc4\xe3KA\x87Fg\x97y\x8e\x1c\xb0\xc2R1\xd1\xc9Y\xca\xba\xda\xae\x0f\xdb1^xu\x18>\xfe\xdd\x17<4\xd3\xa0\xd1+\xdf\xb5\x079\xf4\xc9\x0e\xa7\x81\xed\xad\xb0w\xdd;\xd3\xd9]CS\xdd\x0d\xe8\xe6k\x85\xee\xab\xce;\xc4\xf3\xc5\xdb\xaf\xee\x87i\xe8\xa6\x96\x86\xd5\xac\xac\x91\xcdY\xde\xddM\xdb[\x1b<\xba/j\xdf\xc6\xba\x9fQ\xd1V\x8fPM\x9b\x9a\xe0,iS\x8f\xe1\x7f\x8c\xf0(\xb4\xd7}\xd5\xd9\xfd;\x83\xbf\xb6\xca\xad\xfb\xf6N\xe0\x84\xe8R\x8c\xb7KlTH\xdf\xdbmM(@5\xc1}\xb5\xdda+\xeb\xfd\xb66\xc3\x98}\xed\xa3\x13fO\x9d\x95\xfb7\xc1\x99z\xbfZ\xcc\x11\xdc\x80\x7f{\xd4)\x19\xefx$\x9b]\xc6\xca\xda\x9bI\xa0N\x7f\xd6\xfd\xde\x95W\x87\x16\xfc\xe4\x88h\xa2\x8a{\xb9\xf2\xa6pE\x87\xda(\xb0;k\xea\x7f\xfb\x06ZS\x0b\xf3\xd6\x1f\xfeS3\xefU\xdf\xe3\xb2\xf3\xbb\xeaZ\xbc\x17\x7f?\x88^\x9e\xe1\xef\x9e\xc2\xa6\xcd\xa3\x87b\x07G\n\xd8\xb5\xbd\x04\xa1\xc8q\x85\x9c\x9f\xc1\x85\xb4\x02\x9e{\xf9\x00\xb5\x0f\x05\x1d\xc6P\xa1\x1e\xe3\xa6\x85]\xdb 3f\xb9F6\xd5WOtf\xe0\x9d\x15{c\xe1\x92}m\xd6\xee\xa7\x0d^\xcd0ki\x9e\xf9\xdak;ZMlV\xf8\x00z\x0e\xbf\xab\x86\x99\x99|\x0e\xb5\xecM\xc2G\xafFQ\x8c\xf8\xa9%\xb2\xbb\xba\x9f\xf7\x0f_CT.\xef\x94\x90J\x95\xc6=Ja56\xc9\xe5\x8e?\xb0Z\xee\xe2WV\xcb\xa5\xcd\xb7 #)\x14;+\xab\xe5\x12\x12@e\x89\xe4\xcf\x9c\xc4OV\xcb-\x98\xe4\x99\x92\xe0\x99\x94\xdc\xc9j\xb9\xa7&rf$q\x16I\xe0LO\xded\xb5\xdcS\x925S\x1253\x924Y-\x97\xd5r#\xb3\xa4\xe4\xa4KV\xcb%%X\xe6$W\xb2Z\xae\xef\xb0h\x12eB\x02%Eg5%q\x92\xd5rs\x04gc\x89\x91\xac\x96KO\x80$&?R\x12\x1fiI\x8f\xac\x96\x0b\x99\x89\x8d I\x8d\xac\x96[ i1\x9a\xb0\x98\x9b\xac\xe8}o\xb2Z\xee\x91\xb1Z.\xab\xe5.\xac\x84r)5\x9109\x890)\x81\x90\xd5re^\xa2 \xab\xe5\x1a3o\xe1\x89\xf0\x9d\xe6J/\xd4\xf8\xfa\xfdq\n\xdb\xec3Z'\xbe\x89\xa6\xba\xdc\xe2\xd2\x13\x86V\x07\xb7Y\xc1q\xa5\x89\x8b\x80\xacK\x14\x17\xd4{\xe3{<\xd7\xfa['\xfe~\xa8;\xb1\xf9\x1e\xae\xaa\xed,:\xe8\\\xab0U\x9e\xe2\xe2g\x9f\xc4\x83\xaf\xea\x8bH\xb3\x0e-Wz\xd4\xef\x84 \xecV\xed\xf7_\xd0\x8b6\x860\x9d\x1f\xf2\xa5u\xc6\xe0Q\xd5C[\x90\xddA\xc0\xf0\x1fu\xb3\xa9\xd7\x8aR\xd3\xe11\xedAu\xa0\xeeHvqu\xb3\xde\x1e6\x8b\xb9j\x85W\x19\xe3\x93\x8b;\xa6\xa2\xdd\xd6\xb2\xf90l\xce\xa8\x9eYa?_\xf4\x8b\xbb\xb5h\x82\x9a\xdew\xa2\xd7\\\x82z\xbc\xa6\xe7qx\xe4\xce\xf4\xd3T_7\xed\x92\x905O\xe3\xfc\x12\xe8\x99So\xec2Q\xdcq\x03;q+\xba\xd9\xa9\xa1\x9b\xa7\x8f^\xde\xb8\xda\xc2X:\xe1~\x12f\xe5\x0c\xd7\x10\x9a\xb9\xec6\xa2[~J8\xb9\xdf\xdf\x15\xf5F\xbeV\xfd\xf9/\xe3\x7f+\xad\xef\x7f`1A\xf1\xfaQ\xbb\xdeB\x07\x9b\xabVu=|7O?h\xadps\xf3\xdd\x8a\xf0_\x996?uAx\x1f\x88\x92\x05\xc5\xd1d\xdd\xa3!\x15JL\xa2\xb4\xa0{\xba\x9c;M\xcc=\xe8M\x88z\x14\x08\x94\x0e\xc1\xa3@\xf6*\xe4\xb2:\x81\xf2\x92\xe4\xdb\x8b\xf2:Qb\xa74\xb3C\xa7v\nq;y\xe4N\xa0\xb8D\xc1\xf6\x13\xe9\x9d\xd2\xfcN\"\xc1S\x98\xe1I\xa3x\x129\x9eP\x1f\x1e \x1f*\xc9S\x98\xe5!\xd1<\x05y\x9eS\x89\x9e,\xa6\xa7\x10\xd5\x93\xc3\xf5\x04\n#K\xb2?\x02\xdb\xf3xt\xcf\xa3\xf0=i\x84Oq\xc6\x87J\xf9\x14\xe5|\xe8\xa4O2\xeb\x93N\xfbD\x87B\x9a\xf8\xfa\xc9\xc4OTx\x9d4\xa1\"p?)\xb3\xaed\xf6'\xf4\x12$\xcb\xad\xd3\xeaW\x90\x00Ja\x80\nS@y\x1cP\xa8\x07\x91$\xd63Y Oi\x92$\xaf^\x86\x07\"C-\x04&(\x89\n\x8a\xa9\xec\xe6\x90A\xb12\xbd\xf1\xb1B|P\xba3\xe9\x8cP\xacm\x19\x9cP&)\x14Vv\x8e\xd3Bey\xa12\xc4\x10\xa1o\x9cL\x0d\x91\xb9!\x1a9De\x87\x08\x1d'\x9d\x1fJ!\x88\x82B\xe9E(\xa2D\x8e(\x8f$Jb\x89bN\x0f\x8b\xa3G\xce\xa53E\xe5\xa8\xa2h\xa5\xbc\xcfO9\xb6\x88@\x17\xe5\xf3E\x9e\xe2dT\n\xbd(c\x14\xa3\x8c29#OYq \xf48k\x14\x91?/\xcd\x1b\x15'\x8e\xfc\xccQI\xea\x88\xc2\x1d\xa5\x93GI\xecQ\x06}\x94\xca\x1fE$\xcd\xc3\xb5\xa3\x12!T\n)\x83CJ$\x91\x02\xcd\xcd\xa1\x91k\xc9\xe9\xa2\xe0\x05^Tt9p\xda]\x80t)p\x94\xfb\x0e\x94w\x92\x10x\xd4G@\xf2\x13\x90$\xc0\xa3\x1d\xde\x18\xdd\x99@\x16\xff\xb6\xc5\xbd#\x05\x92\xe5\xadi\xc2\xdf\x8f\xd4\xec\x14\xc9o\x1c\xcb\"\x05\x96\x10\xfcN\x92\xfb~D\xc7\x90\x84\xbeG!\xefH\x81Q\x99\xef\xa8kH\"\xde$w\xd0\xde \x90\xe4\xb4\xc2\xe2\xdd\x01\xe9n\xb2pw\xd4\x17\xb4\xd6\x15\x94\xecN\x16\xec&\xcbu'\x8buG\x9d\x13\x9fM\xc5\x14:\xfb\xb2\"\xddi\x12\xdd\x04\x81nt\x81_\x9e;(\xce\x1d\xf5_\x11\x91\xd3b\xa2\xdc)\x92\xdc\xf1\xc7\"O\x8e[\x0b-;\xca\xf3\x8bq\x97\x94\xe2&\nq'\xcbp\xdb\x92\xdb\xee\xc6\xf9E\xb8\xcbJpS\x04\xb8\xcb\xcao\x13\xc4\xb7\xb3\xa4\xb7\x8d\xcc\xb6\xab\xbc\xa8\xf0v\x9e\xec\xb6^\xdcv\x94\xe7\x17\xdd&Kn\xd3D\x80\x935\x80\x17\xa5\xb1\x040\x1aK\x00\x87\xdfL\xf1\x11\x1e-+\xad\x88%\x80)\xc9D.\xaa$9\x95('\x91\x88%\x80\x0b\xa6\x0f\xa5$\x0f%\xa5\x0e\xb1\x04\xf0\xa9 C\x19\xe9BE\x92\x85\xd2S\x85X\x02\xf8\x94\x14\xa1\x94\x04\xa1\xc2\xe9A\x92\x94\x1cT05\x88\x9a\x18$\xd3\xd2\x82R\x93\x82X\x02xf\xc9i@,\x01LJ\xfe\xc9I\xfd\x01\x96\x00\xf6X4\xdd'!\xd9\x87\"\x1e\x9b\x92\xe8\xc3\x12\xc09*\xba\xb1\xc4\x1e\x96\x00\xa6'\xf3\x10Sy(\x89<\xb44\x1e\x96\x00\x86\xcc\xc4\x9d\x84\xb4\x1d\x96\x00.\x90\xa6\x13M\xd2\xc9M\xd1\xf1\xbe7Y\x02\xf8\xc8X\x02\x98%\x80\x17VB\x8e\x95\x9a|\x93\x9cz\x93\x94x\xc3\x12\xc02/\xd9\x86%\x80\x8dQ$\x80\xe7\"\x83VQ\xb3\xcf\xe9\xf9Q3\xf0\xe7HQp&\x14l\x0fN\xb5\xda\xedv6\"Nb\x8a\xb2;D$C\x0bJ)\x9e[\xf1e,2(\xab\xf8\xda\x8aF\x1b\x85E\x13\x94\xf5\n,\x9a\x96\xfb\x96%0f]mMr\x11T\x0d.5!\xbe\xf1\x1cW\xe4\xd0\x91\xb8t\xb4n\x9b\xfe0\xbc\xbe\xe1\xa6\xbe\xbeY\x82\x03v\x9c\xf9\xba\xea\x11+\x99\xed#\x8co\x94\xba\x87\xba\xd1Az\x14\xda25uK@Z\x8d\xd7\xc7=Y5\xc8\xe9\xae\xae\x1cu4&\xbf@x2FeE/\x00\x84\x8b\xc0,\xc7&\xa8]\x89FX\x11\x04\xe2\xc2\xdat\xec\xe2\xfa\x86\n3J\x94sEKZY\xfe\x89\xfe\xfc\xb9\xfe\xfc\xcd=\xba\xfe \xcd%@\xc5\xa1$-\xb4\x9c6\xce\xb2\xb1\xf4\xbcv\x84\xfa\xf4\x8f\x9dX\x8b\xfa\xd6\xcd\x1e\x1e\x15\x18p\xda4\x9aLS \xf4\x98\"b\x90\x8d\xc2\xe4\xb6\x9ba\xb4\xba|\xf0\xe3[\x00\xd5Z\xc1|Z\xf8\xd8\xff\x86n\xef\x1a\xfc\xc6k\x1b1u+\x1dsPQ\xb7v]W#\xde\x13\xbaS\xb767\xd3^\x0d%\xfa\xaf\x1b\xb9\xa5\x97\xd5\xb6j\xd6\x91\x05\xfb\x02CB\xd3z\xd35\x81\xdag\xf0msb1\xd4^\xf2\xaa\xad\x1b\x8b\xa2S\x1db\"\xaf\x9avg^i\xc3\x0d\xac\x1a]\xb9P4\xe7\xa7\xb7\x1f\xdf|\xaf\xbe\n5]5\xbe\x0c\xab\x06.\x1a\xa9'\x9ec\xdc\xa5\x0fv\x02=+\xd5T\x91\xffq5\xd9a\xfd8\xd1\x19:\xe1u{\xdd\xaa)_n\x14cz\x88l6j\xb8\xc2m\xb5U\x02\xfa\xad\xfd\xa0\x89\xfb\xb5\xd8\xa3B\xbf\xb3\xb8ZZ\x11\x11wktO]N\xc1\xf5\xe0\xa0}\xd7\xe3\xee\xf8\xfd\xa1\x96F\xf0\xdcY\xd8z\xabT\xfe\xc7W\xf4\xd2\x0d\xd3\x94\xe5\xb8\xbb\xcd\xdcc\xcdm\xec\x19\xe9Ld]\x7f\xda\x1f\xcf9\xd0\x82\xcfX\xf8\xe92\x9bE\xf8\x81$\x12J\xec\x8d\xb5\xcd\x9a\xfa\xdf\xbe\x87e\xdc\xb2B\xbfx\xc6\xdd+`_\xf5=\xc6\xd7\xed\x1d\xfd\xf1wOa8\xdb\x94\x91\xed-.\xa4\xf5\xdd\xa7v\x12\x08\x88\xbcuBE\xfb\x9b\x16;\x87\x8e\xee\xbbz\xbe\xe2\x0dOt\xe6 T\xf1(\xb4\xef\xdby\xc1\x8a~\xfb\xdak;\xda\xde\xb3\xc0s\xf8]\xa5\x04\xee\x9fC-{\xc3Y\xf4\x8a~Ee\x02\xf5=pW/\xd2(tC\x8ez\xc4\x9c\x9a\xb4\xa6\xedQ\x80\xd2U\xd0\xb9\xf3\xeb\x87YJ4f)\xcb\xbc\xe8\x99\xa5d\x96\xd2m\xccR*c\x96\xf2\xd8\x98\xa5d\x96\xd2g\xccR2K\xa9\x8cYJf)\x99\xa5d\x96\x12\x8dY\xca\x1c\x1c\x91YJf)'c\x96\xf2\xd8\x98\xa5d\x96\x92YJf)\x99\xa5d\x96\x92YJf)\x7f-,\xa5s\x93\xee\xf9\x86\xfa\xa1\xf0\xb3\x8e7\x9b\xed\xe2\xed=\xb81\x04\xaa\xc3{cpZ-\xe0]/V\xbaT\xc3\x86\xa1*\x16pN\xd9\xff\xff\xb1\xb7\xfc\x9f-\xe78\x9c\x88\xf5\xf3\xf9q\xb1\x942\xed\xdf^As\xd8\x89\xae^\x9b\xbf\xa9\x11B\xeb\xf2\xe0Z\x96\xde\xc1\x1dC\xc4\xe3\xf2\xe1r\x8b\x7fU\xdav\xe8:\xa3\x0bq\xc1\xed\xd0\x0f\xae\xfe$\x12\xfd9/\xfe\x91\x9d\xbb\x08\xdf;\xdc\xbb\xadw5\xd5\xbb\xeaX\xc3E\xf8\xa2\xfa\xce]\xe4\xf5\xaf\xb3\xd2\xf6\xb8\x90d\xff\xe9\xe2\n\xb6\xe2J\x1a\nBc\x11f:\xabV\xc5\xf1\x01\xc1\x8b\x0c~\xbe|@\x9d\xb2j\xbf\xff\x82^\xb4\xd9\x84\xe9\xfc\x90/\xad3`\xb1-\xff\xf0\x1fu\xb3\xa9\xd7JjL\xc7\xc7\xb4\x07\xd5\x81\xba#\xd9\xc5\xd5\xcdz{\xd8,&\xab\x15^e\x0cP.\xee\x98\nw[\xeb\xe6\xc3\xebf\x86\xfa\xcc\n\xfb\xf9\xa2_\xdc\xadE\x13\xd4\xfc\xbe\x13\xbd\x06\x13\xd4\xe35=\x8f\xc3#\xa7\xb1B\xa8\xaf\x9bv)_h\x9e\xc6\xf9%\xd03\xa7\xde\xd8\xe5\x0e\x17\x8e\x1b\xd8\x89[\xd1\xcdN\x0d\xdd<}\xf4\xf2\xc6\xd5\x16\xdb\xd2 \xf7\x930+g\xb8\x86\xd0\x82y\xddFt\xcbo \xa70\xe3\xef\x8az\xe3\x91\x92\x00\xce\x7f\x99\x83\xcb\xff\xc0k\xb8\xb2\x02,\xb0\x8e\x9c\x0b01\xa7\xb0\xaf\xea\xce \xdc\xbf^*\xca\xfd\x9a0{\x1f\xb8\x92\x05\xd6\xc5`\xf9`\xd1\x10-\x1e\xd20yB\xa8\x87\x16/1G\x96\x02\xe4\xa3x|\x02\x1c_\xb8\x91\xe5\xb0\xf8(\x14\x1fC\xe2\xd3[v:\x0eOsTI\x14\x9e\x06\xc2\xa7c\xf0\x1aw\xf7\x94G\x81\xe0\x8370\x08\xc0\x17y\xcc\x83\xe8;\xa1o\xc4\xb0\xf7h\x11\xb4\xbeP\x1ax/\x89\xbb\x93`\xf7t\xd4=\xee\x98|\xcc\x1djW\x8f C\xee\x05\x11\xf70\xe0\x1en\xb8\x9a\xd0\xb8[\x1e\x12?=\x9a=\x18\x9b\x88\xdd\xa9\x16\x8c\xec.~ed7\xd6-'cd\x97\x91]\xb71\xb2\xab\x8c\x91\xddccd\x97\x91]\x9f1\xb2\xcb\xc8\xae2Fv\x19\xd9ed\x97\x91]4Fvs\xa8WFv\x19\xd9\x9d\x8c\x91\xddccd\x97\x91]Fv\x19\xd9ed\x97\x91]Fv\x19\xd9\xfd\xf5!\xbbs\x84\xc4W\xe7\xf9Q\xb3:O4\xd2#\xd7\xf9s\xd1Z\xe7\xd3\xc6\xb6Kx\xc8\x85pY4\xf3\xcf\xe6D\x07\xd6e\xed/\x1b\xe5\xba\xc6\x02\xbd|\x97\xe3J\xfa\xb0'\x0bz\xa1\x03\x1e\x83\xed\x8a1I\xd1\xc5\xba@W\x8f\xe2Far\x8aHM\xa5\xd50\x11\x88\nS3\xa2\x91]0\x12|\xe2\xfe\xcd'+N\xae;\x81x\xe0\x8d\xa8\xafoN\x15\x8d\x04\xa0\xec\xbb\x8dFY\x045\xb6\xa8\xa5\xb9#\xfa_\xf8&\x1e\xfe0\x0e\x03\xc1\xd2d\xdb~\x82\xfd\xb6Z;\x17g\xd1\xd6\xed\xf0\xd6U\xd7\x0coX\x9f\xec\x97\xf8\xa6\xf5\x89\xbe\x99\xd7\xd4\xf8\xe6\xd0\xd4\xf7\xb8y\xfd0\x18\xd2\x1c3\x15\x15X\xdchjYW\xdbUD\x10\x15\xe8\x8eIi\xec\xe2\xea\xb3W\xa5\x06\xf0\xf4!\x81\xc0+\xe8aws\xd8bTO#\x82PI\x92\x0b\x1e\xa9\xe9\x816\xa5\xd7\xd1\xde>\xbe@E \xa2\x8dhZ\xf1\xf0\xa2Yw**\x84[\xbe\x87\xa8\x93\xbaW\xa3\xa4\xffvMM\x19\x06\x80v\xbbYu\xe2j\xb5.\xa0q\x0b \xc3UL\x93\x12\xed\x83\xecj\xa5\xd5\xbeo\xfbZ\x0e\xf7\xab\xbe\xb2\xda\xf8\xcc\x9e\xa9\x0c\x1f<\x97B\xf8\xe3\x93\xa0>7\xdb\xfd\xde\xec\xce-E7|o\xa3\xea\xbc/\xccH}\x9c\x1c\x93\x9c7C\x1d'\xb6\xb1\xb1w\xdd\x0f\xbdh\x00\x83J\x9d\xd8\x8a\xdb\xaa\x91\xb0\x13\xb2\xdaT\xb2\" \xb7\xfa\x05\x89Y\x0d\xf6\x08n\x93\xbc\xfa\xa0\x1c0\xd15i\xece\xab\xb6\xe0\xdfn\xd5\"\x0b\xf4us\xbd\xb5\xa6\x1a\xcf\\\xae\x9d*6\xfc\xbf\x93\xdb\x1d\x06\xda\xb1\xb4i\xe29|\x0c6j(~\xa1R1\xc4\x06\xb6u/\x1f\x934t\x9d~\xee\x9a\xd5.\x0ed\x02Q\x1b\x13\x88L N\xc6\x04\"\x13\x88\x931\x81(\x99@t\x1b\x13\x88\xc6\x98@d\x02\x91 D\xe2,\x89 \xc4\xd1\x98@\xb4\x8d D&\x10\x1d\xc6\x04\"\x13\x881\xe73\x81\xe8=\x87 \xc4\x991\x81\xc8\x04\"\x13\x88L \xce\x8cJ\x831\x81\xa8\x8c D&\x10\x99@<\xad\xce% D\x17d\xa8\x0bwQ\x86\xd6\n\xc8\xb8\x97\xa2#\\\xda;xC\xab|\xf5\xc2\x1c\x0b:\xe2\xc2|k.\xbf\x96\xdd\xe5]\x0e\xd1'\x06\x1f\xc6hX\x7f\xd6\xd4\xa3\x9d\xfd\x8d\x8d\xdbi\xe87\xf4\xb8\xb3\x06\xec\xab\xbe\xc7\xb7\x0f\xee\xbf\xf1\xf7\x83\xe8\xe5\x19\xfe\xee)\x0c\xbf\xfddd\xeb\x8d\x0bi-1\xa9]\x0e|\x18\xe5\xf0u)T\xcfnZTI\xd5 \x91\xab#+\x15\xfe\x13\x9d\x19\x18\xf2cC\xd9\xb8 \x80oW\x08\x0b\xb4\xf1\xb5\xd7v\xb4\xbd\x9f\x82\xe7\xf0\xbbJ\x89\xef?\x87Z\xf6\x06\xe9\x1aFJ\xec\xcc\x1b\xa4\\\xee\xea\xfeXq?Bp\x07?\xa5\x83P\xf7\xa24\x07&\x88\x8cwx\xf5\x82\xf1nm\x8cw\x97\xf9\xecf\xbc\x9b\xf1n\xb71\xde\xad\x8c\xf1\xeecc\xbc\x9b\xf1n\x9f1\xde\xcdx\xb72\xc6\xbb\x19\xeff\xbc\x9b\xf1n4\xc6\xbbs\x08i\xc6\xbb\x19\xef\x9e\x8c\xf1\xeecc\xbc\x9b\xf1n\xc6\xbb\x19\xeff\xbc\x9b\xf1n\xc6\xbb\x19\xef\xfe\xf5\xe1\xdd\xd6F\xe3\x9f\xc4\x83\xaf\xce\x8b0\xb5\x8eK\x9b-\xef\xed}\xc41T\xaa\xc3{c\x10[-\xe0]/V\xbaT\xc3\x86\xa1*\x16\x98~;\xbc\x8a\xdbF}\xe1\xebm\xdb\xdb\x0e\xe6\xd5\x05+\x00Q`_\xf6\xa3\xa5\x1d\xe7r\x8e\xc3\x89X?\x9f\x1f\x17K)\xd3\x1e\xf4\x154\x87\x9d\xe8\xea\xb5\xf9\x9b\x1a!\xd6U3\xb4\x07\xd7\xb2\xf4.\xf4\x18J\x1e\x97\x0f\x173m\xdc\xc5~;t\x9d\xd1\x85\xb8\xe0v\xe8\x07W\x7f\x12\x89\xfe\x9c\x17\xff\xc8\xce]\x84\xf9\x1d\xee\xdd\xd6\xbb\x9a\xea]u\xac\xe1'|\xd1\x7f\xe7N\xf8\xfa\xd7Yi{\\H\xb2\xfftq\x05[q%\x0d-\xa1\xf1 3\x9dU\xab\xe2\xf8\x80\xe0E\x06?_>\x80\xa8\xd67P\xed\xf7_\xd0\x8b6\xc30\x9d\x1f\xf2\xa5u\xc6\xe0Q\xd5C[5\xd0\xc0\xf0\x1fu\xb3\xa9\xd7\x95\x14c|L{P\x1d\xa8;\x92]\\\xdd\xac\xb7\x87\xcdb\xb2Z\xe1U\xc6\x00\xe5\xe2\x8e\xa9p\xb7\xb5n~\xa5v\xd8\xb7\x90\xa0Ya?_\xf4\x8b\xbb\xb5h\x82\x9a\xdfw\xa2\xd7`\x82z\xbc\xa6\xe7qx\xe4\xf4\x0e\xdbP_7m\xb7\x88:\x98\xa7q~ \xf4\xcc\xa97\xf6\xb2m\xb7\xc2\xda\xfe\xdbq\x03;q+\xba\xd9\xa9\xa1\x9b\xa7\x8f^\xde\xb8\xdab`:\xe1~\x12f\xe5\x0c\xd7\x10\x9a\x9c\xeb6\xa2[~K|\xa8\x9b\xb5\xf8\x1e0\xdd\xe6E\xbf\xf9\x04\xdf\x9c\xfd\xfewE\xbd\x11\xcb\xf19\xec\xaf\xbbj#\xc6\x1c\x9fj\xbf\xdf\xd6b\xb3\xdao\xab\xe6\xfc\x97\xc1\x8f\xff\xc0\xd3]Y\xd4\xff\xc3$\x9a\xfb.\xdc\x89j}3\xbc\x92pR=]WUX\xdc\xd7G\xbb\xd7\x80\"\x0d\xb2\x9f,\xda\xa6n\xb4\xe7\xef\xf5\xf0\x9e]WRl\xbe\xc7\x16\xabp\xc8\x08\x97`XC\xdd\xac\xcdx\xe4\x99:\xd2S\xe0\xec|\xd8\xb6\xd7\xf5\xda\xe7\xb8\xb1\x1ftb\xd7\xde\x9a\x1dG\x07\x17~x\xfd\x9f\xde\xe5\x82\x0b\xbdk\xd4\xb8qh\xd3j\xd9\x94\xe7c\x80h\x1c-\xe4M\xd7\xde97\x17\x0bmEH\xbe\x03\xfe\xaddf\xde\xff8m\x1f8\xd3&0^\xda\xe95\xec\xbd\xe8\x86\x92\xdd\xcf|\xdd\\\xb5\x99\xd5\x8d\xedk\xa3\x16\xd8\xa6\xb8\xd9\x14\x06\x18G\xa3\xe6\xaa\xd5\x81&-\xb7\xe2\x8b3\xb5\xcd\x8b\xf5M\xe5\x0f\x9b\xf7\x87\xf5\x0d\xa8\xb9\xe2u\xad6\xba\xdb\xd5Z\xa0h\xdaB\x17\xd6*Z^\x1dd\xbb\xabd\xbd\x0e\xc4aM\x05\x9d\xdb\x15\x99\x17\xc1j\xbd\xad\x87iF/+\x19|\xe6\x02{x\xc5\xb8\x908\x19B\xb8O@~l!\x97\x0f \x94w\x14\"\x08\xac3\x95eD\xa2\x94HiN\x84N\x8a\x14bE\xf2h\x91@q\x83C\xc9\xbc\xc8\xc9\xc4Hif$\x91\x1a)\xcc\x8d\xa4\x91#\x89\xecH\xa8\x0f\x8fT \x95\x1e)\xcc\x8f\x90\x08\x92\x82\x0c\xc9\xa9\x14I\x16GR\x88$\xc9aI\x02\x85\xe1\xb4(J\x93<\nO\xf2xD\xc9\xa30%iTIq\xae\x84J\x96\x14eK\xe8tI2_\x92N\x98D\x87\xc2\xdf\x10\x18\x93\x02\x94I\x843!N\xa8\x08\xacI\xca\xac+\x997 \xbd\x04/\xdb[A N\xa8\xf5+H\x9d\xa4p'\x85\xc9\x93<\xf6$\xd4\x83\xfa8}\x92\xcd\x9fxJ\x1b\xae\x16#PJ1(d\x90\x82\xc0\xa1$\x91(\x91\xe0h\x16\x8d\x12+\xd3\x1b\x93)\xc4\xa4\xa4;\x93\xce\xa5\xc4\xda\x96\xc1\xa6d\xd2)\xc1\x00<\x81P)\xcb\xa8\x94\xa1T\x08}\xe3dR\x85\xcc\xaa\xd0h\x15*\xafB\xe88\xe9\xccJ\n\xb5\x12\xe0V\n\x91+\x89\xecJ\x1e\xbd\x92\xc4\xaf\xc4\x9c\x1e|\x84b\xe7\xd29\x96r$K\xb4R\xde\xe7\xa7\x1c\xcfB Z\xf2\x99\x16Oqj\xa95@\xb5\x14\xe6ZbdK&\xdb\xe2)\x0b\xbf\xa1C\xcb\x08q\xbe%H\xb8\x94g\\\x8aS.~\xce\xa5$\xe9Ba]\xd2i\x97$\xde%\x83xIe^\x82\xd4K\x98A\xa0S\x08T\xf2%\x83}I\xa4_\x02\xcd\xcd!`\xf3\x83\xfb\x8b\xe7|q\xcc\xfbw\xaf\xc6\xf8\xfe\xf2\xb7\x88S\x19\x03X\xfc\xca\x18@\xaccO\xc6\x18\x00c\x00nc\x0c@\x19c\x00\xc7\xc6\x18\x00c\x00>c\x0c\x801\x00e\x8c\x010\x06\xc0\x18\x00c\x00h\x8c\x01\xe4D\xd2\x19\x03`\x0c`2\xc6\x00\x8e\x8d1\x00\xc6\x00\x18\x03`\x0c\x801\x00\xc6\x00\x18\x03\xf8g\xc0\x00B\x1b\x8e\xeb\xa8a\x13\xd8w|\x11 \xb5\xce\xc0\x18#\x8eT\xe3\xc6\xe3\xd5\xb4\\\xe1\x88\xb4\x1eGf-0\x00~\x14\xd5\xed0\x10\xa8\xd5(\\V9\x12\x83\xb8\x12R\x0b\n\x0fo\xb8\x04\xde\x00\x00\xb7A\xff\xbb\xa6 \x8cM\xfb\xa0_U\xdb\xde\xae\xaec\xc9$\x15\xa9\x98TyM\xc3Q\x98\xf7\xfc\x175\xd8\xa1N\xf2?\xfc\xa4\x85\xb5\x90\xf1\xb3.\xea\x95)\xe9\xc3P\xd0|\x93\x80\xd1\xbb\xea\"\xf8\xcc\xaa\x87T\xadBN}X\x0d\x0b\xb2;\xf4\xc3W\xfb'\xd15b;\xca\xd17\xe2^\xce\xe3\xe6u\x0fJ\xe6\xf8\x0c.tqj\xa6a\xafe\xf5\xb2\xed\x86\xe7\x1f\xc5\xc8\xd5\x1cBk@\xcfK\xf8*\xd6\x9c\xf7\xef^\xa9\x15@\xbd\x9caV\xc4\xb6\xe2\xbaZ?\xe8\xc6Z/i\x15\xfb\xea\xf6\xeb\xa1+N\x9a\xdd\xd0\xb4w\xd8\xf8\x8b\x1f^\xa9A\xb0\x96=\x0c\x83b'\xf6\xdbj\xad\xd6\xd6\xa6B\xbeV\x0bz\xdf\x9f\x9f_\xd7\xf2\xe6p\xa9\x9eM}?\xeb\xcb\xf5\x8b\xeb\xf6\xfcr\xdb^\x9e\xffv\xfd\xaf\xff\xfaM\xf5\xdb\xdf\x8a\x7f\xbb\xfa\xb7\xf5\xfa\x8f\xdf]\xfd\xe1\xb7\x97\xdf\xfd\xf6\x8f\xeb\xea\xdf~_U\x7f\xfcn-\xbe\xfd\xf6\x9b?|\xf3\xcd\xb7\xe7\xea\x81\x1eN=_\xb7\x9d8GA\xe6\xf3\xdbo\xcfU\xd7\xc3\xe7\xfd_~\xfc\xee\xf7fB?\xa3[\xdc~\xd1G>Y\xca\xc5\xd7\xcf\x93B\xca\x91\x15H\x0dwDP!4\x02\xa6\xe0vt>\xae\xe0\xb9q\x8bcml\xc1\xfc\x8dy\x84\xc5\xaf\xcc#\xc4z\xf0d\xcc#0\x8f\xe06\xe6\x11\x941\x8fpl\xcc#0\x8f\xe03\xe6\x11\x98GP\xc6<\x02\xf3\x08\xcc#0\x8f\x80\xc6\x85\x14UdyJ\x1d\xc5\x7fJ+s\x14>\x88\xee\xb6^\x8b\xb3E\x88\xd4\xd8L\xd5z\xfe\x93;\xfe\xaa\x0fZ\x86\x87\xf5eB\x01\xe2\xf3jW7-!L\xfcr8n\x8c\x15W\x0d\xe0\x1f,ga\xb6\xbdh\x86#6\x80n\x95\xadz>\x8b\xc5\x92\xd5E\xf5\x01\x9f'\xa0\x9c\xd1k\x95KW\xff\xd5\xbb\x94\xee\xbd\xfd6\xbcD5k\x7fNv\xf2\xb2\xc7\xa1#C\xfd.\xa5\xe3q\xd8\x9c\xc3\xe6\x0e\xa3,\xbb\x02\x87\xcd9l\xee=\x92\xc3\xe6\xca8l~l\x1c6\xe7\xb0\xb9\xcf8l\xcease\x1c6\xe7\xb09\x87\xcd9l\x8e\xc6a\xf3\x9c\xc83\x87\xcd9l>\x19\x87\xcd\x8f\x8d\xc3\xe6\x1c6\xe7\xb09\x87\xcd9l\xceas\x0e\x9bs\xd8\xfcK\x87\xcd1\x00\x89+iI\x01\xa8\xc0zER|2\x1a\x01_\x9c\xfe\xb8\xd1\xc9\xa4\xb08\xc6\xaf\x83\x01\xf17\xea\x10\x1d\xe9~\x8c\xbci\xbc\x80\xfe\xed\xc9\x86\xb9?;\x9ca\xd0\x02\x9b9P\x07\xa4a\x1a\xe8\xdd\xd3\x82\xe8\xba\x0b\xe4@\x1a\x1c+\xe7X\xb9\xc3(k\xad\xc0\xb1r\x8e\x95{\x8f\xe4X\xb92\x8e\x95\x1f\x1b\xc7\xca9V\xee3\x8e\x95s\xac\\\x19\xc7\xca9V\xce\xb1r\x8e\x95\xa3q\xac<'\xdc\xcc\xb1r\x8e\x95O\xc6\xb1\xf2c\xe3X9\xc7\xca9V\xce\xb1r\x8e\x95s\xac\x9cc\xe5\x1c+/\x1a+'\xab?\x9b\x18\xa0\x8aL\x9b(lF\x9c\x98\x90>\x8d\x97\xc2li\x132\xf6\xa7O\xab\xae&\xdby\x1au\xb1\x90\xf2\xaf(}\xfa\xf3\xd2\x0b\x96{J\x04\x86\xcb\xf2\x0b\x1c1\xe6\x88\xb1\xc3(+\x8e\xc0\x11c\x8e\x18{\x8f\xe4\x88\xb12\x8e\x18\x1f\x1bG\x8c9b\xec3\x8e\x18s\xc4X\x19G\x8c9b\xcc\x11c\x8e\x18\xa3q\xc48'\xe8\xca\x11c\x8e\x18O\xc6\x11\xe3c\xe3\x881G\x8c9b\xcc\x11c\x8e\x18s\xc4\x98#\xc6\x1c1.\x1a1\xf6\x86qb\xf1\xc9\xc2\xf2\xce\xb3\x00d~\xfa\xf4c\x84\x1f\x93\xc2\xe2}\xbd;l+\x19J\xa0\xfe\xa0\x0f\x01sl\x0f\xe2^\xac\x0fr\x18Q\xabyH|xW\xf7\xb2\xdeU\xea\xc7\xeb\xaa\x87\x03.6`\x99\xb3 \xb7)W\xff\xf6d\xe3\xdb\xd7U\xbf\xaa\x9b\xab\xf6\xb8\xf7\xcc\xaac\x0e3\xfd`\xf8\xefn\x87\xc3Xu\xd9\x1e\xa4v\x87Z\x1d\xc6E\x19t\xc0\x91n=\xc4\xc2\x95\xe1`\xe5P\x91\xbb\xaa\x91b\xe3\x0fe\x06\xd7\xe9\xcc*\xdd\xc1\xde\xca|n\x94\xb50\x80?W\xfd\xdfTE\x8cOv\xd5}\xbd;\xec\xe0\xd0\xd4R-\xe2\xdc\xb5\xdd'\xb8\xd3\x8b\xf5\xb8F,\xefA\xb6\x9e\x02\xf7\xa2\x1b*\xe7\x9a\x91\x0c\xad\x1e\x9c\xfb\x99\xda\xfc\xe7\xaa\xff\xb9\x9f\x1aV\xed\xda\x03F,\x87\x9b\\\xad%\x86\xd5\xd6m\xa3\xe3-\xf3\xa20\x06\x11\xe9Px\x90\x855\x0c\xff2\xeby\x8f\xd3u6\x95\xacNt\xa0wi\x97\xd6e^W\xb2R\x81\xaa\xe6A\xd5\x06:!\x0f]#6\x88\xdb\x98W\xa9\n\xbc4\x9b\xadg\xed\x14\xcc\x08\xd56gp!\xe1/?\x7f\xf8\x18X\x19\xdf\x8a\xe6Z\xde\xc0\xbe\x13W\xf5=>\x9fm\xb7\x19>aZ\xe8\xc5\xf0v\x93\x02k\x83\x958le\xbd\xdf\xfa\xd6\x92M\x1d\xc7*\xf4\xde%\x90\xd7\xc3lg]I\xb1\xd1Av\x9c\x94\xabh\xfb0\xf3\xd9\xb7{5Dn\x9e\xc3\xe5A\xaa\nz[\xbc\xeb\xafW#\xfbR7\xbd\x14\x957\xd6\x7f)\xd6\x95\x8a\xc2J\xa8\xb6};\x9f\xf7\xff\xa5\xbf\x9eC4\x9eo\x80m{\x9d\xd9Wh]\xe1\xc7\xf6z^\xb1m{=\x1bUs{\x84\xe3\x00q+\x1a\x19@?|\xb8 \x84\x90\x13\x88=\x8ch1\xf4\x04L1\xde_ .\x1f\xac\x92\xb2\xab/\x0fN \x90\xc9b\xcdE\x0b6\x1a\x8d\xd0t4\x8a\x03\xd0> \x07a\xb64\x92/\xd0\x82\xf1\xac\xc9\x12J\xac\x9b\x8d\xb8\xa7\x96x\xd9\xb6[Q\xf9C\x9d@~V\x8c\xbd\x19\xfa\xf1Ks\x9f\xd5@\n}\xdd\\o\xc5\xe0\xbb\x17\xb8\"\xb1\xaf\xea.\xf4\x010X\xd5\xf7\xed\xbaV1\x17\x0c=5\xf8\x8c\xf8\xd6\xc4\xa8\xd5T\x15\xc4\xd7}\x0f\xd5\x14\xb3\x87\x8d\xb8\x15\xdb\xa1\x1f\xa8\x00t%e\xb5\xbe\xb1\x96+\xbc\x05\xda\x03\x82\x0c,\x91\x1aL\xf0Ou\xa3\xd6S~\xd8\xb6z\xb1\xd5\xfc\xf2\xeaF\xac?}\xbc\x0f\xacW\xffXI\xd1=\xb7g\xbc=\xec\xaa\x87\xe1\x03\xf5\xef\x07\xd1\xd5b\x03\x87\xc1\xdb\xc3h\xd5\x0b=\xa8\xb8=F\xf3\x97\xf2Vo\xc5\x13\xa1\xdf\xd6k\x15\xd5CG\xe2\xd3\xa5\x11\x9c;\xd1\x0d_\xca\xb5\x94^\x1c`s@\x88\x0b\x07M_K\xa7\xb14x\x86\xd8=\xa0?\xe2\xb4\xdb\x86\x96\xca\xf1E\x07\xd3\xe3`n \"P\x9a\xe7\x838\xd3\x07\x19\\_\xb8\x01\x95\xbc!\xb3}P\x8a\xef\x83L\xc6/X\xe0\xe0\\2\xe7\x07\xa7\xb3~\x90\xcc\xfb\x05\x8b\xd2\x1cR\x12\xf3\x07\xa5\xb9?Hd\xff \x95\xff\x0b\xf7\xec\x91\x0d\xa42\x80P\x9a\x03\x04\x1a\x0b\x08%y@8\x99 \x84<.\x10J\xb1\x81\x90\xc5\x07\x86\x1f\x87j\xf8\xf6\x8f2\x82\xf08\x9c <\"+\x08\x8f\xc3\x0bB\"3\x08y\xdc`l\x08\xa6\xb1\x83P\x96\x1f\x84\x04\x86\x10\xd29B\xc8` C\xe6o\x08\xbc\xcc\x11\xe7(!\xccRB\x16O\xe9-*\xc8YB.k\xe9-M\x87G\xfc\x97+\xc7\\\x02\x89\xbb\x84\x0c\xf6\x12\xd2\xf8K\xc8a0!\x99\xc3\x84\xf0(\x02\x116\x0e\x12\xf88*\x93 9\\&\xa4\xb2\x99\x10nx\x0e\xa3\xe9-\xcc\" \xa9\x8f\x0c\x8d\xd5\x0c>\x10\n\x1d\x0b\xf0\x9aP\x96\xd9\x84\x18\xb7 av\xd3{N.\xd3 \x05\xfbn\x02\xdb I|'x'(\xb4\xb5\x89Y|\xf0\x18211\xc6\xe9\x10\xf5\xa2q\x975\x8ch\x88\xe6\xbcl\x1ez\xff\x9b\xc6\x89F\xfeavpx\xc3\x11\x83%\x9e\xa2+3\x96a1\x9c\xd3\xd5Y\x1bff\xac\x0dC}\x9e\xd2c\xcaf!\xce[ 5\x9e\\4\x96\xcc\xda0\xac\x0d3Y\xd1\x18qJ|8)6\xcc\xda0\xa7\xc6\x813b\xc0E\xe2\xbf\xe9\xb1_\xd6\x869%\xd6\x9b\x12\xe7\xcd\x88\xf1\xb26\x0ck\xc3\xb06\x0c5F[4>\x9b\x13\x9bem\x18\xdfa\xd1\x18lB\xfc\x95\xa2*\x92\x12wem\x98\x1cy\x95X\\\x95\xb5a\xe8\xf1Sb\xec\x94\x127\xa5\xc5LY\x1b\x062\xe3\xa2 1Q\xd6\x86)\x10\xf3\x8c\xc6;sc\x9d\xde\xf7&k\xc3\x1c\x19k\xc3\xb06\xcc\xc2J\xe8tP\xe3\x90\xc91\xc8\xa4\xf8#k\xc3d\xc6\x19Y\x1b\xc6\xd8\x17\xd0\x86!\xee&2\x05\xf8\xf2w\x13\x91\xf7\xfa\xd8kq,\x98\xf2g!?\xde\xf7\x98\xa0y%\xe4\xfaf\x18\xe4\xef\xfb\xe1=?\xcb\xa1\x9d\xa9\xa1X'\xe9\x9f?\x8f \n\xd1iV\xf5L`\xf4\xd9WS-8\xa493\x0ei\xd2\x96\xc4\x80C\x9a\x1c\xd2\xf4\x1e\xc9!Me\x1c\xd2<6\x0eirH\xd3g\x1c\xd2\xe4\x90\xa62\x0eirH\x93C\x9a\x1c\xd2D\xe3\x90fNT\x90C\x9a\x1c\xd2\x9c\x8cC\x9a\xc7\xc6!M\x0eirH\x93C\x9a\x1c\xd2\xe4\x90&\x874\xff\xd9C\x9a\xa8\xf9j\x15\x11\xfa\x8c\xc6\x83M\x82\xe1\xb6\xee1\x08`m\xa8\xa0\x8e0\xdfw\xf6\xa9\x93r\xb8\xda\xb4\x01n\xbf9\xfb\xfd\x1f\xcf\xee\xbfW\xaf\xab\xbf\x1fD\xf7`4\xc0\x9f\xebN\xa0\x17\xe7\xc7X\xc6\xac8\xb5\xa8\xf0\x95\xabr\xaa,{L\xac\x9b\xef\xf1\x8f\xd6\xdf\xa60\xedU\xb5\xed\xed~\xe4\x0e^9\xc2V\x9e\xe5\x94u\xbb\xdd\n\xe5\x8b?\xe9\xc5\x14\xa5\xbe~\xe4\xf7}u]7(\x88\xffI<\xf8\xfc\xbfH\xf6\xfc$\x1eP\"\x19_]\xa3\xd4\xfc0\x99\xaf\xae\xc7\x0c\xd0\xb3F\xdc\xcb\xd5p\xb0Z\x84\xbc^\xac\xd6)gh\xd5_\x18\x0e\x1d*#`7\xdc\x16\xa1V\xee\xd4r\xdf\x19\xbc\x1d\xa6\x13m\xa3V)\xda\xab\xab^\xc8\xe1\x0bi^]\xb0\x82(\xbd\x90\xa7:\xfe\xc8\x9f\xce%)\x87\x13\xb1~\xc4~\xac\x1b\xa3\\\xd9\x1cv\xa2\xab\xd7\xe6oj\x94[W\xcd\xd0\x1e\\\x8f\xbb\x11\x8dq\xfc\xa1\x19\x97@\x17\xdd\xfbB\x95\xb6\x15}?\xb9\x10\x17\x0dQ`\xf9\x93H\xf4\xe7\xbc\xf8Gv\xeeb\x13 \x87{\xb7\xf5\xae\xa6zW\x1dk\x06 \xd9\xcaj;8\xf9\x12W\xfa\xcc\xf2>.\x8f\xdb=X\x8e\x9bF\xccJ\xdb\xe3b\x98\xfd\xa7\x8b+\xd8\x8a+\xa9\xd7]k\x89\xaf!3%W+\xfb\xf8\x80\xe0E\x06?_>\x80P\x02\xdd\xfb\xfd\x17\xf4\xe2\xba=4r\xa5\\B\xf4\xa5u\x86\xdaeA\xa8\xf6\xc9\xee `\xf8\x8f\xba\xd9\xd4\xc3\xa0:\xc6\xf8\xcc\xb6\x1b\xc3\x81\xba#\xd9\xc5\xd5\xcdz{\xd8,&\xdc\x15^e\x0c\xb2.\xee\x98\x1a\xfb\xac\xb5\xff\xe1\x959\xb5i\x19\n\xf8\xf9b\xb9{\xc4\xa2 \xea\x1b\xa5\x13\xbd\x86+\xd4\xe35=\x8f\xc3#w\xa6\x9f\xa6\xfa\xbai\xbbE\xe4\xc4<\x8d\xf3K\xa0gN\xbd\xb1Ku{\xc7\x0d\xec\xc4\xad\xe8f\xa7\x86n\x9e>zy\xe3\xea\xe9)\xa8:\xe1~\x12f\xe5\x0c\xd7\x10\x8d\x8a)\xabm>\x96\xdfCN \x81\xdf=\x927T\x0dV\x97\xfeW\xd6o\x17K\xef/\xe0\xed\xfb\xd7o\xde\xaf~\xf8?\xab\x9f\x7f\xfa\xf0\xee\xcd\xab\x8b?]\xbcy\xfd\xbd\xf3\xaf\xe32\xbfZ\x9b?48\x91\xed\xdbNN\x8d\x87\xb7\xc3\xff\xfd\xf0`\x1e\xf8\xf9\xba\xb6l\xe1\xe5\x87W\xe8\xc5\xba\x87u\xd5/\x83\x05V}^~x\xf5\xfd\xec_\x18\xf1\x1d\xae>\xf7\xb8\xb7\x84\xd7ofE\x0c\xff\x1c\xcbX\xde\xb6\x13o\xc8\xd1\xb8#\x9a\xc3n>'q\xbb\xdaw\xc8\xcb\x0f\xaf|?\x0d\xed\x98\xdd`\xe4\xa5\xc2\xc5[\xcf\x8b\xf7 YLh\xd4\xc4C\xbf)\xd4\x7f\xebaG\xb6\xe8\x9e\xe7\xd0\xcb\xaa\x1b\x1e\x14 \xdf\x9ea\x0c]Z\xa1\xf3#-(\xeb%\xa0\xbe\xce\xf4\xebc:\xa0\x88\xe7##>\xbf,\xb3]\xb7,?\xe4:\xfcj0O\x9b\xf2\xdf\xd1\x97\x08\x1e\xa3\xde\x8e\xc8\\\xdc\xab\xa5\xb0\xf9~]\x1fE\xb3\x11\xdd\xaen\xe4\xb3~\xee\xbc\x8f\xf7\x1fD\xd5\xado\xec\xcd\xed\xd4\xda\x12\x96\xbb\xd3AN\xf55\xe2\x1c\x95\xe7\x83\xf2w\xdf\x94t\xa7\x1f\x00\xf5l\x8c\xf7C\xd7V\x9bu\xd5\xcb\x8f\xf7pi\xfe\xdbv\x9a\x13\xf4\xb4\xce\xfa\xca\xd4\xf2s\x80\x9e2\x1d\xa4\x94\xf7\xa3|\x8f\x0fK\xcc\xdaf\xecF\xd4\xd77\x8e\xed\xcf\x80\x12V\xb7\xb8K\xcfFm\xb2\x96[\xf1\xbd\xeaW\x97j\x97\x17\xbc\x9e\xe3Xy\x7fS\xf57\x99\x15\x99\xdd\x92\x8f\x8b\xc7e(\xd7\xb5\x92\xb8n7\xa2\xdfWk\x0fV\x10\xbd\xa8n\xdbO\xd5\x0e\x8b1BD\xf0\xaa\xdd\xb8\xd6o\xdcd+@\x8cn\x05\x92\xa7g.\x18\x05\x93\x86k:\x89\x82\xfc\xdd\xe5\x96\x17\x1a\xc6\xda\xe1\x13\xb6\x7fn\x02Y\x8e\xd3\xba\xean\xf5\xd8\x9b\x94\x0d\xf7\xbd=\xc8\xfda\x9c\xef[\x9b\x1a=\xeba\xdb^_\x8b\x0e\xbe\xee\xaa;}\xb1\xdf\x9c\xc1_\xbc[k\xf9q\x96\xa6m^l\x84T\xe3j\xdd\xcbz\xedj\xf1\xb6\xbd~\xc2\xfb\xf0\xec\xfa\xebUt\x7f\xacx\xb7D\x8bwN\x08\xedQ\x87\x16\xed\x04\x10\xd9\x1b\x0e-\xe6\\\xb4/\xb3e\x9a*2r\x0c\xd1\x11h\xb4]\xe4\xd0h\x8eA#\xb8\x07\x8d\xec$4\xba\xab\xd0H{\xcc\xa1%x\x0d-\xba\xcf\x81m\x89\xa5\xd3\xc6\xab\xb9M;\xc5\x8d\x1fj\xcdt\x83\xe1\xae\xab\xf6{\xd1\xc1\xdd\x8d\xe8Bx\xe4d\xc3\x00\xf8I<\xa8X N\x83\xab.\xb2\x81\x841lho\x96\xad\xd5|\xbd\xba\xc3Q>\x10\x9aNn\xf9\x07u\x1d\xcc\xce1\xad\x16\xcdl?\xb5\xa4\x86+0|\x18\xf7\xc7\xe7\"\xd6^\xb3\x04\xffI<\x9cO;\xf2i\xb0\xbc\xea\xc4\xd2\x15\x91\xe2\xa8\x8eJqS\xfa\xc6s\xc1\xe2\xf4\xa6tf\xfb\xb9\xbe\xddE:Ep\xdb9Hh\xcc\xcb\x1f^]\xfc\x05\x03R?\xb6\xd7S7\x1f||X\xcbC'L#\x95$i\x83\x1b8\x06\xf8by\xaf\xca\x1c\xa3\\\xdb\xf6\xda]GZ\x0d\xa9\xf3\x87a0\xd8\xe0\xd4\xc1\xbf\xd5\x18i\x8e\xe0\xde\xca\x1a(\x03\xce\xfc#d\x8a\xad[{0\x9a\x1a\xd2\xeaRl\xabj\xe2\x14\xf5\xe5l\x9bf\xbdS\xbb!\xa3\x8f\xbf\xdbl+\xb4\xbftVE\xcd6\xd2p\xf9\x10\xab\xa6\xf4L\xae\xa2/\xcd\xf8kRF\xb7Q\x8cz\x01\xc8\xcf\x05\xe4f\x86\x05\xcaK\xda>\xb1hvX4?\xact\x86\x18=G\xacP\x96X^\x9eX\xa0\xb8\xc4\x0d\x13O\xcc\x15+\x9d-\x96\x98/V8c,-g,1k,\xd4\x87\xc7|2j\xdeX\xe1\xcc1R\xeeX\xc1\xec\xb1S\xf3\xc7\xb22\xc8\n\xe5\x90\xe5d\x91\x05\n#o\x89\xf8\x08\x99d\x8f\x97K\xf6(\xd9di\xf9d\xc53\xca\xa89eE\xb3\xca\xe8ye8\x8dH\xc8,K\xcf-\x8b\x0e\x85\xb4\xcd\x0fO\xce/\x8b.\x08\x90&T\x84,\xb3\x94YWr\xa6Y\xe8%H\xde\xee\x90V\xbf\x82\xf9f)\x19g\x85s\xce\xf2\xb2\xceB=\x88\xb4\xc5af\xe6\x99\xa74I\xda\xde\xb0L\xf6\x199\x85\x8a\x90\x81\x96\x94\x83\x16\xdb\xe5*'\x0f-V\xa6\x97\xc6.\x94\x8d\x96\xeeLzFZ\xacm\x19Yi\x99yi\xe1\x9d\xd5\xe2\xb9ie\xb3\xd3\xca\xe4\xa7\x11\xfa\xc6\xc99j\xe4,5Z\x9e\x1a5S\x8d\xd0q\xd2\xb3\xd5R\xf2\xd5\x82\x1b\x15\x16\xc9YK\xccZ\xcb\xcb[K\xca\\\x8b9=\xbc9a\xe4\\z\x06[\xb9\x1c\xb6h\xa5\xbc\xcfO\xb9L6B.[~6\x9b\xa78\x19\xdd\x8a\xb0hF[,\xa7-3\xab\xcdSV|\x0b\xc2xf[d\xfb\xc1\xd2\xd9m\xc5\xf3\xdb\xfc\x19n%s\xdc(Yn\xe9ynI\x99n\x19\xb9n\xa9\xd9n\x91-\x05\xc3\xb5\xa3\xe6\x1fQs\xde2\xb2\xde\x12\xf3\xde\x02\xcd\xcd\xc9}\xf3\x14E\xd8D0'\xff-\xd0\xe5\xe3\x1b\x08\x16\xcc\x81\x8bn\x1e\xf8\x18yp\xa5\xfabB.\\J6\x9c{z \xeb\x9d\xe8e\xb5\xdbg\xc6\xc9h\xeb\x00\x1f\xeb)<\xb1\xef\xc4m\xdd\x1ezd\xfd\xce\xe0Om\xa7\x81\xbf\x1e\xfe\x7f\xf0\xeds\xa8\xe5\xb3>pg\xef\xd4\xb1\xaa\xfbo\xeaj\x18\xab}\xb7D\x8d\xa0\xa6}F\x94E\xaf\x92\xdc\xb6r\xfa\n\xc7\x9a\xfcX\xf5\xf2U\xbb\xdb\xd5\xd27\xdcNU\x85\x7f\xffw\xf8\xf6\xb9\xf7u:\xb4`\xf86\xef\xeb^\xd5\xc0U`\x08S\x92O\x80\xfe\x92\x11\x10)\xda5\x80\x0c\x1f\xc5\x9a\x8bF\x00\x8e\x08MG\xa38\x00\x8d\x84\x17\x91|\x81FD\x8a\x12J\x8c\"zhX\xe22\xad\xc5e\xb4g\xda\x98\xe2K&0I%\x15\xf6us\xbdUd\xd1\x8b \x98\x89\xedsZ\xf5}\xbb\xae\xd5j\x96\xde\xa3y.\xbf\xbb4j5\x11\x80Q\x91\x92\xde\xa65`#n\xc5v\xe8\x07*\x0cPI\xa9\xa0\xffqz\xe6-\xd0\xc2'@\x06>!\x0d`\xfb\xa7\xbaQs\xc8\x1f\x14\xdc<\xbc\x9a\xcd/\xafn\xc4\xfa\xd3\xc7\xfb\xc0\xf7\xfd\x8f\x95\x14\xdds\x9b\"\xe8a\x87\xc4\xc6\xdf\x0f\xa2\x1b>\x030\xc3R\xde\x88^\xe8A\xe5\x94%[M\x12\x8d\xe0\x8d\xa6\xa5tv\xb1\x01\x83\xf0+k-zum\xdf,\xc3f\x1fTT\xc4;b\xda\xb57Yz o\xda\xe1\x8f\xeeKb\xbd<\xc5\xe9Wy\xaf\x15EZ\xff\x97\x9d)\xfd\xaakw\xaa\xa1U#\xc5\x19\xfc\xedFt\xa2\xea\xe1\xc7\xf6z\xb1\x11.\xd6\xd1\xd7\x97C\xa1\x12k\xe2\xbf\x13\xb2\xdaT\xb2z>^_}\xe8\xcd\x9b\x18o^\xe2\xae\xba\xbf=\xfb\xf6\xdb\xe7\xc3\x7f\xfc\xfe\xec;\xf5\xff\xdf\x1d\x9d\x1d\xef#\x1f\xefGn<\x02gub+n\xabF\x82\xbcW(\xb9\xe7\x83\xd8\xf8B\x05\x03]\xed\x91\xd5uoav\xf8\xed\xab\xa5b`\xdb^\x0fC\x8e\x9a\x1cn\xc4\xba\xdd\x88\xcd\xbc\xf7\x87\xd2\xaf\xc0N\xee8e\xff`;\xb3\x84\xf7\x0ff\xb1\xed\xe8\xbb;\xfe\x9c\xa1e!U,\xb6M\x01\xa9\x8a`T9\x10\x15\x8bm\x17D\xa7R\xc0\xa9$l\x8a\xc5\xb6O\x85\xa52P\xa9\"\xa0T:&\xc5b\xdb\xa7\xe0Q)pTa4\x8a\x06F\x15\xc4\xa2\xa8P\x94c\x85\x8f\xc5\xb6\xe7F\xc0\xa0\xa8\xb3\xa4d\x04\x8a\xc5\xb6I\xe0S\x0e\xf6\xc4b\xdb\xbe\xc3\xa2\xa8S\x02\xe8D\x91iN\x81\x9cXl;G\xaf:\x065\xb1\xd86\x1dd\"bL\x14\x88\x89\x860\xb1\xd86dBK \xc8\x12\x8bm\x17@\x94\xa2\x80R.\x9e\xe4}o\xb2\xd8\xf6\x91\xb1\xd86\x8bm/\xac\x84\xf01\x15\xf9\x0f<\xd5\xb3\x19\xbb\xe2\xa4\xfeV\xcb\x9b\x8f\xf7\xfd\xb8!{\xa5\xb5!\xd5\xe2\xa7&=@\xde\x8f=n\xe6\xa7gN\xfe\xe5\xbb\xb3\xdf\x9a=\xd0\x97[\xb9\xdb\x97\xd4\x87|\x1e\x95O\xfav\xeev\x15yKweL\x990e2\x19S&L\x99L\xc6\x94\x89d\xca\xc4mL\x99\x18c\xca\x84)\x13\xa6L\x88\xb3$\xa6LFc\xca\xc46\xa6L\x982q\x18S&L\x99\xc4\x9c\xcf\x94\x89\xf7\x1c\xa6Lf\xc6\x94 S&L\x990e23j\xc4\x9f)\x13eL\x99\xfc3P&G\xbb\xc7\xcd>\xa3\xb5~\x8b\x8e\x92\xea\x7f\xe9\xc1\x0f#\x8cf\xf3M{\x14\xaa\x9b\xef\x97\xf1\x00/\xaa\xe2Y\x95p\xef(\xc1\xfb\xa1\xd37|\x04\xdfz\x0e\xef\x87^\xd6\xb9\xf1\x9d\xbcy\x8b\xd7\x12^\xe4\xfd\xd0y?\xf4_\xe7~\xe8\xc9\xf8\xcf/7U\x7f\x13\xc6~>\xde[\xb0\x8f\xbc\x1f\x9eQ{W\xd6%\xb2\xf3\x99\xb7\xe3\xa5\x83:\x93\x94\x0c\xe39\x8c\xe70\x9e\xa3\x8d\xf1\x1c\xc6s&cl\xd5Xb?\x8e\xbd.q\xd4\x0d\xf1\xf5\xf8E\xbdg5\xb4\xbb\xf9\xc2c\xe3=\xde\xd5\xcd\xea\xba\xeaW\xaagG\nw=M\xb3\xf3\xc7\x86\xab\xfbV7\xe3}\xc3_'\xf5\x1e\x8c\xff\xab\xf7\x9e\x98\x0d:\xf6~M\x8b\x1a\xfa\xbb\xa0\xbb\x9a\xff\xed\xaa\xa6\xa7\x8bYUUK\xbb\x18\x12X\xdfT\xdd\xf5, [\xe8E\xb3\x11\x9d\x8ez@\xdbL\xfd\xf2+\xeb\xe28\xa4\xcd\xfc\xf1\xe6\xaf\x7f\x81]\xbb9l\x855\xcc\xfb\x07\xc5\xffg\x18\xbb\x7f\xa8z\xf1'1\x02\x89\xe4!\x92\xd8[te\xc7~R\x8fC\xe1l$T\xc7\xcfz\x96\xabr\xa3$\x8f\xab\x88\xb3XC\x87N\xf9\xe7\xaaOn\xe9u\xd5g=\xca\xba\xe9\xc3\xcd\x1b\x85\x7f49\x84\x0f\xeb\xb5\x0e#:\xda\xbd\xa8\xeb\xd8\xf0\xf1\xc4)(R\xc1u}+\x1a\xfd\xe8\xc7\xbc\x80\xbd&\xd9\x07{\xeb\xfdyT\xe5\xbd\xdd\x13qFz\xbb;\xee\x88g\x0b'.\xf8\x0e7\xd5\xe1|\x13\x83\xf7m\x0c\x9e1\x04\n\xbf\x95a\xf9f\x06\xea\xdb\x19\xbc\xaf5\xf0\xf6$\x88F4N{[/\x1b\x86\xef\xee\xe5%\x9c/p\x88\xbf\xc4\xe1QZ|\xdaK}\xd96\xf5X-^\xec\xb0x\xb9\x83\xff\x05\x0f\xa1\x90Zv\x0b3_\xf8\xc7\xdd\xd4\xbc\xfe\x1d/}p\x0e\xe5\x10jO\xf2\x04\x00\xfc\x93\x80\xe0\x85|\x0f\xf2\xa9\x13\x82\xa5\x9f\xe5\x8dkR\x00\x91\x89\x01\x10\xaa~\xb4\xa9]\xa1I\x02\x90&\n\x905Y\xf0uK\xc7\xebcV\xde\xf1\xa6|c\xf6\xc2\xfd\xb9\xb85+\x0e\xf3\xf7\xc1\xf2\xa3\xf7e\xf3@~'\xc9#\xcc/>_\x9d\xf5\xa5\\xo\xb1\xda\xe0\xc6\xf5r\x00\xbdc\x10/\x0b\xbd\x0b v\xae\xb5`\x02T\x97\x89\xd1\xd9\xb8\x9cU\xda2\xbe\x9c\x8c\xcae\xc1q\x0b\x08n\xee\x94\xd9\xc0\x9f\x03\xc0-@\xb7y\xe9v\xe1\xb9\x90\x9b\x1ff\xcb\xc1\xd7\xdc\x98\xda `\x1a E\xa3!g\x99\x90Y.V\xe6\xc2\xc7\x8a\x00c\xe5\x10\xb1\"PX\x18\x03\xcb\x03\xbf\xd4]v\x01^\xe9HW\x00\xdd\x921X+\x17\xcfrbX\x19\xe0\xd5\x02\xb5\n~#\xcep*\xff\xbb)\x13\x99\x9a\xd0\xa8\xa5\xff\xbe\xf2_/\x0f\x84r@O\xba\xbc\x11}:\x11v:\x01or\xa1L'\xc0K\x0eP)\x17M\xf2\xf24\x0e\xfc(\x08\x1c\xcdc\xde4\xa8h~\xce?\x96mIF\x85b\x8d \xe1@\xee\xfa\x07\x91\x1f\"\xe4c\x03\x07.\x90\xe74t'\x0f\xd69\xf2u\x06\x90\xe3Ep\xdc\xd0\x8d\x0f\xb39r\x06\x05\xa5 \xc13\x16.\x93 \xc8D\x90\x18\x1a\x04\x13\xc4^\x16\x84\xc8\xac\xf8\xc5o!|%\x1fX9\xaa\x80\xfeW\x16\x86\xe2BNN\x81L\x16@I.Br\x84\x8b\x9c\x00\x88\xcc\xa6\xb9.\xfcc\x06|\x9c\x8ex\xe4C\x1d\x16\xc0\x91\x85l8\xf1\x8c8\x90\x11D0\x08\xd0E\x0c\xb3\x981\x07\xf3\xd2\xa9\x81l?\xed*ysv\xd1\x98\xd0\x8cV\x16\xd4\xff\xaa\x1b5k\x87\xf6\n\xfe\xd7e}=\x1cw\xe6\xfa\xf2x\xd3\xcbzWI\xf1\xb8\xa9\xb9\x07on\xae\x9dS,t]6cn\xee\xf0aJ\xcd\xe4\x9f\xc5\x82\\\x8fO'\xe4Q*\xf0\xa6\x92\x15\\u\xedN%\xcd\x9a8\x04|\xadw\x87h;E\xfe\x18\xf1L\xd2\x1a6\x97\\\xad\x14\xe6\xf3:\xcccvw,^?\xcepm\x87B\xafY\xdd\x8d\xee)OwUoU\xf5\x1c\xb2\xf5\xdd_\xe0\xaa3\x01$P\xd5#\xae\x8c\x8cPh\xd9SH\x00 3\x91\x17\xcazK\xf5;;\xa9cG^\xbe:{\xa2*\xbb(T\x82\xe3\xcf\xe5\x8b#\xc4\x81\xe0'\xaf\x8d\x08:o<\xa5\x99\x1a\xa2\xb0\xf65y\x99p#\xa2s\xc4\xab(z8\xd5\xad\xc7UO}\\\x17\xb1i\xa1n\x15\xbe\xa9n\xe7i\xb6b\xb7\xa3f\xa7\x91\xd4\xd1E\xad\xbe\x94\xe9WL\xb6CU\xfaL\x9a\xef\xc3I7~\x92\x9d\x19n\xf3\x0d6\xb3\x82\xed\xf2k\xb6\xea\xf7\xd3\xb7\x83\x98\x1d\xd6\n\x81X4\xf5\"\x8b\x88\x97\xe0\xfd\xdd\x08~\xc2\xf9\x1f\xe7\xa3\xf2\x11\xa1\x84_\xb5\xbb1\\\x05\xcb\x8bM\x92\xa5\xa5|\x18\x06\xfe3?\xc8P\x9a}r\x07IU\xb1\xac\xb1\xff\xa5\xa5\xb2@\xa7k\xb8\xcb\x0fP\xb0%K;\xbe\xf7m\xbe\xe9X3\xaa\xcb\"?l.\x85\x0dr\xcbU\x9f\xd6\x03e\xf8\xb4\xde\xe6\x9b\xc6\xb0)<\xf0\xb5\x7fCG\xadl[R\x98\x7f\xae|\xe9*\x03\xbc>\xa9z\x1c\x9c\x18\x82q\x89H\x98Rq1\x19\xac\xd3\xb07u\xcc\xdf~\xf8Q\xc9\x08a\x96-\xab\xbc`\xab\xa7b1\x9bc^\x07~icS\xe3Xx\xff\xe1\xe2\xb4f\xa9'\x9asqT\x82\xbd\xf0>\xf9\x05\x9ae\xe5A\x11\xb3\x94\xf1q\x05+\xabn\xb0\xa1\xfc\xabF\xcc[\xaeX\x91^\xb3\xd5 \xa436\xe3\x14\x95!Az\xec\xc2\xecu\x02\x8bC%BWJ\xb6<\x14rfu\x97\xa8\x8e\xf1\xae\xdchz^\xdc\x92e\x0c\xc6mIE+*4\xb4\x13=b\xe0\x0c\x18\x990\xa8\xd3\x1c\xd29]@\xe7d\xe1\x9c\xc6`\xce*<\x94s\xaa@N{\x18gP\x10\xe7\xb4!\x9c\xc6\x00\xcei\xc37\x0d\xc1\x9b#C7\x07\xe4\xae\x90\xc0\xcdi\xc36G\x06mN\x1c\xb29\"`s\xeap\xcd\xc9\x825\xa7\x0d\xd5\x9c,P\xd3\x1d\xa69Y\x90\xa6)DsL\x80&\x1a\x90YQ\xc21\xc7\x05c\"\xc1\x97\x81\xa1\x97H\xe0\xa5QP\x1a\x83.\xed\x1240\xe0\x12\xcd\xa5\x06M\xdf\xdf\xb8\xfb\x9e8\xd4r\x18h9A\x98\xe5\xa4A\x96}a82\xc0R\x11\xba\x8dqLH\xa55\xa6\xd0\x10N\xe9\x0c\xa6\x1c\xc66\xd1\x03)\x87m\xff\x8a\xcd5(\x84\x922YW\xf8\xa4yn\xce\xd0I\x8f\xc0\xc9~\xc0\x99)hr|\xc8dx\xc0$\xba.\x81\xc1\x92\xd6PIs\xa0\xa4-L\x12%\x165D\xd2\x15 \xd9\x0b\x8f\x1c\x11\x1cI\x08\x8d\xa4\x07F:\xc3\"\x91\xa8\xc3Aw\xc87\xaep\xc8q\xc1\x90\xe8\xa0Z\xbfL\x1a\x069q\x10\xe4\xa4!\x90S\x06@\x9a\xc2\x1f\x07\xc1\x8f\xd3\x84>N\x16\xf88m\xd8#-\xe8\xd1\x19\xf2\xa8\xee\xfa\xae\x80G\xf5\x995\xdcq\x10\xec8\xec\x8d\x1a\xf8f\x0ft$\x869\x12\x82\x1c;C\x9e2\xc0q\xe2\xf0\xc6\xe9\x82\x1b\xa7\x0bm\x0c_]gX\xa3+\xa8\xb1\xe1\xd2mOG\xcaU\xd4\x8c3\xa1\x96)\\\xfcE\x9d\xd9\xda\xc6\xda\xfa@a*\xd3\xbf\x0c\\\xb3\xd2[Q\xff\xa8o#\xab\xfc\xb0\xd8\x0e|-\x1cA\xedFS\xd5\xf1\xcb*/8]\xc5\xdf\x10\xd7\xc0\xa37\xa7\x1f?\x9d\xbe~yq\xfa\xa6\x8e(\xe4[d\xc9\x15d\x0f\xff@\xdb3\xd0s=\\\xb2[5\xf0a\x07\xeb\"\xdfY;p~\xe0\xe1\x0b\x15.OE\x1f\xfe\xb1P\xfcu\x18 \x94\xe9\x86/\x9c\xb22+3\xa4v\xe3)\xf3H\xdb\xe6\xb5\xbcd\xcb\xab\xaeY3\xd9p\xe6)K\xa3\xea\x96\xca\xbc,;\x17\xd7\xa3t\x93%\xd5\xa1`\xf0\xe8\xe7\x13\xf8t\x02\xe7\x8f\x95\x7f\xbb_\xb6\x8f-\xf7\xcf\xbf\xfb\xfd\xd53`\xdb-\xbf\xed-\xf9\xc5\xbf\xf6\x0c\x14\xc9\xcd\x08\xc2\x14\xc9M\xed\x17Nn\x1ar\x88\xbdc\xda\xa3\x9d{g\xc7\xc0\xcd\xf7[\xb2/\x0f\xdb\x84\xe3I2t\x9f\x8b\x88\x8c\x0c\xce\xdf\xfc\xb1\xb9\x18\xba,\xe7\xde\xfey\xfa\x96\xed\xec\x8d\xf6\xfe\xc5\xe6\xdf\xdd\xc8jw\x88F\xab\x94_\xa1K\xb1\xc0-\x84\xbd\xc5\xbc\x10uS\xf94\xa1\xbcL\x9e\x7f\xf7{\xe3\x89\x11K1\x83s\xd6i\x8f\x04\xb0V5\xca\xf6\x7f\xaa@\xd6\xdf\x7f\xf7\xed? \x05\xa7`kV\xb0\xac.%\xbd\xcd7a\xfeer\x95\x89\x81\x9f\xbc\x8d\x051\xb1\x8c\xf5\x99+\x1c=\xcfy\xbbS\xec-x\xc3K\xf0\x96QN\xe5QW\xd8:\x9e\x1eg\xe7\x96\xe4\xdf\xc9<\xed\x12p\x7f\xbb\xea\xca=\xc0\xc3\xb0\xe6\xf4\xc4\x1ex\x85\xb2\xef\x87W?;w\x19\xcd'_w\xd2sZ;{\xa1\xd0\xc1\xd3W/\x01\xf3\xd8+\xac\xce9O\xe1\xbd\x97p\x0crP\xbc\xfa\x12\x06\xbe}\x85\x07\xf5\xf0Kp\xa5\xc6O\xe0\xed\xd7\x88\x82}\xfe\x08.\x11\x030\xf0\xfcK\xb0\xf9\xff%\xd8&=:\x16\xa0\x83\xad\x1f\x17 aDt@\x07O7R\xa0\x15# \xa1\x1aD\nH\x980^@B7j@\xc2\x98\xd8\x81> \x9b8\x02 \xe67\x92\xf8\x8e\xe8]\xd3{\x0c\xac6\xa7\x88e}\xd2ZS\xad\xd7\xf4\xd0\xe9nc\xd4\xa15\xeaP\x84~\xce\x0f\xe50\xb4\xc8+\x84I#\xa9]=%\\\xe67\xb0;,/El(\xe79|G\x1cv\xcd \x19\xde\x15\xc9\xe1[\xb6%S\x0c\xbe%\x0f\xc4\xfe\xe1Z\xe3\x7f\x95y\xf6\xa4\xd8/\x95\xcb^\xb44k\xffhq\xfew\xe5\xe6i\xeb\x82\xd0\xa9\xd5\x8f\xea\xfd\x9e\x0f\xa6\xb1\xeb\x9d|s\xc4A\x01\xf3Y\xaa1\xb4\xf9\xa1\xa0w~\xc52\xa8\x1f4\xe1\xdbT\xbf\x8dP\x1c\xa4l:\xfd\xf9\x1d\x94U\xd2Q\xc6\xc42I\xcf\xbf>S\xeaA\x8de\xc1\x92*\xe8]\xb7\x0e\x02\xa8\xf2\xcdf\xcbJ\xd9s\xbb?\x15\x9e\xa3,\xa4\xd7\xbb\xd9k\xd1\xa0\x85H\x1f\xb8\xde\xc0\x92\xed\xe01\x03\xc3\xb0Z-|\xc6\xc1?\xef\xf7}[\x15\xc9\x9c\xa5\xfb\xb0\x8b\xc8@\xcf\xc0_;\xd1\xc3\xae;\xeb\xec\xce\x96!\xf4\xf4\xecc)\x9d\xddj\xc8\"\xfc\\\xe1\x11\xc2~\xbele\xa9\xb6p\xb7\xff8x\xe8B\xfc\x11\xe4\x1f\x95\x99\xa9\xff\xea\x05`;\x1d\x8cW+c\xf2+\xd8t0m\xa0\x19\x9d\x04\x0b\x96DX\xca\x08\x06\xca\xd7\xd8\xa4\xd8\x1e:5\x0bt\xb8\x83\xe4X\xb0\xaa\x8d\xce\x11\x07'\xca\xf6\x10vf\xd8>\xf6h\xc2,\x84Pyt\xf2,L\x92@\xeb^,4\x91\x16FL90\xa9\xb6\x87L\xfc\xd5\x92X\x0b\xc6\xe4Z \x8c\xdd#\xc9\x16\x8c\x89\xb6\xf4\x8e\\ \xb7`K\xba\xa5t3X\x8b\xd1 \xb8\x83\xe5\x18&\xe1\x823\x11\x17B\x86>:)\xb7\x87\xcf\x92,\x07\xd6\xe4\\\x08\x19}X\xd2n\x0fI/\x85\xb7\xf5WS\x16/\x84\x8cu\xd2\x8c^@\xb2z\xc1\x91\xd9\x0b!\xa3\x1e\x97\xe5\xdbCFH\x02\x05c\xb6/\x84\x0c\x7f\xc2\xcc_\x18d\xff\x821\x03\x18B\xc6:a60\x0c2\x82\xc1\x95\x15\x0c!C\x9e2C\x18\xe8\x1b\xc4\x96)\x0c!\xf3\x18\x9b5\x1c6\x0d{\xf60\x84Ld\\&q\x0f\x99\xca+\xeeg\x13\x839\xa3\x18\x08c\x9e\"\xb3\x18L\xd9\xc5\x94\x01\x8c\xcd2\x06S\xa61\xa5\xf3q\x19\xc7`\xb5{\x8e\xca8\xad}sp\xff\x88&Y\x13\"\xa2\xc3\x85\x86\xe4\xf8\x9f\xce\xceh\xcf\x88\xb2-\xf8\xf7\x1e{\xe2\xb5xi8\x94\x81\xcaw\x8a\xe7\xb4\x02\x07=r\xb5[\xea\x89\xe9w\x8f\xbb\xf1\x1c\x8a\xebh\xce\xa6Y\x0fq\xc9l\xcc\xad\xe6b4\xfe\x06\xfa\x83)\xaa\ntQ\xf5F\xd0\x8e\xdf\xb3\xb0\x0dt\xf5\xac\xbb\xa4\xdd\xfai\xa7\xb9\xd6F>}|\xed\xdc5\xbf\xb6\x97\xf9\x11\x97\x0f\xd8\xf4J\xbb\xef\x7f\xa4\xfb\xa7\x87M:\x83z?\"\x1e!0{\x85\xc0\xa8\x06\x82\xe5Z3\x99\x87\x08\x86^\"0y\x8a`\xd4P\xfd]H\x84a\"N%\xa8G9\x8c\x00C\xe3\xbf\x8c;\xc9\xe4d\x02\x98\xca\xd1\x04FgS\xab\x8f)\x1cN`:s`\x89\xe9s8\x9f\xc0N\xbb\x89\x9dP\xe0pD\x01q4H4\xd0(\xa7\x14\x82\xad=3\xe3\x14P\xe7\x14XO\x18Pg\x11\xe4\xa8B\x10V\xb2\xc6+\xea\xac\x02\xab\xc3\n\xc6\xac\xc6$\xce+\x18\xeb\xc0\xf2\\X\xa3#\x0b& \xc54N- :\xb6\xc0\xea\xdc\x02\xe2|<\x9d\\`ut\x81W\xa7\x14\x87\x17\xb8\x9c^@\xec\x12]\xb7`\x07\x18\x82\xabe\xfaB\x9d`@r\x84\xc1\x98\xe9\x04;\xc5\x10\\D[08\x9dc0fF\x938\xca\xc0\xea,\x03\x87\xc3\x0c\xc6\x8c?\xd0yf\xdf^\x98\x03\x0d\x08N4\x183\x93I\x1dj\xe0\xb7\xc1\xcc\x8e5\x183\xa5QN6\x04\x1f?\xf9\x03G\x1bX\x9dm0f\xfc\xa3\x1co\xf8\xf8\x87\xce7\xa08\xe0`\xcc4\xc69\xe3\x10\x84\xa8\xb6j\xdc\\.\xa7\x1c\x8c\x99\xdb(\x07\xdd\xe8\xa9\xb9\x1du0fr\x93:\xed\xc0\xee\xb8\x03\xbb\xf3\x0e\x88\xf3\x98\xca\x89\x076G\x1e\x10\x073\x85C\x0flN= \x0ed\xbcs\x0f\x9c\x16\x9d\xa9\x9c|\xe0v\xf4\x81\xdd\xd9\x07n\x87\x1f\x80\xed\x82gv\xfc\x19Q\x07:\xff`\xbc\x03\x10 \xc4 h5\x89vM\x93\x1d|C\x83\xa8\xc8\x7f\xe17\x98\xdb\xa7\xecZ\xa77tm\x8d\xb8\x01\xf4\\fG{[@{\x15\xa4\xd0\xfdo\xde\xaa2\x99\xb8=\xa5:K[\xd0V\xfe]\xe6r\x94e\xbeLE\xb6\x8c\xc8\x82\xe0\x1fo\xd2k\xd6\xde,W\x0c\xab\xfd\xd9u?\xf4&J\xf1@\xa8&\x1eN\x88\x8b\"Y2q\xad\xf3&\xe8\x14U\x86\xfbsj\xd5\xa1JUZ\xedoZm\x0cC\xae\xd7\xa5\xf9\x93\xb5\x82t\x83\xe6u\xb2\xdd\xfe\xba&\xde\x1eqw\xde\xed\xbf\xd8g\x1d\x90\xa2\xfd7\x9d3\x92\xad\xa2~w/\xf3\xcf\xc96]%U^\x84:\xda\xb4\xb3(\xc0\xd3\xd6kJr\xb5 R\xb0\xe5\xe5\xb7\xcf\x15A\xa3\xefm\xc0\x19MkJw\xbf\xf51\xb8\\o\xf2\x80\xf9\xbd{V\xf16.b)\xaa\xc8oej\xba*\xce\xf2_\xc9u\")\xa0\xfe\xaa\xd1\xa6;\x96\x1f\\i\x7f\x98~\xaeZB~\xcd\x8aB\x14\xef\xabDE\"Y\x15\xaa\xfe\xeb\x1a\xbe\x83\x92-\x85\xf9|\x9d\xb7\x95\xed\x7fK\xae\x93s1\xa4'\xb2\x1a(\x1f\x18\xef\xb5\xf5\xcd2\xd9n\x9b7\x11\xb8\"2j\xbbH\x14\x1d\xc1\xdb\xe4\xa2\x8b\x9b\x85\xf2\xff\xd5\x04\xbcI\xb7[Q\x99#\x87M\x0e\x8b\xa46\x05\xaf\xd2R\xb8\xb2\xca*\x19\xbejbH\xa0\xea\xb4Q\x8a\xb0t\x80-\xaf`\x99\xec\xabC\xc1\x06\xe8\x85\x0c\xf6\xee@i\x13M\x17\xf2\x87^'lq\xd8PQ\xf3o\xb5F\xa8\x9d\xa1\xfb\"\xcd*\xc8\x0f\xd5\xfeP\xc1\xeaP\x08\x1b\xb2\xec\x02X\x9d\xc9\xbbMw\xe9`\x87\xa5Y\xc56Ha\x9b4\xab\xbe}\xde\xef\\`\xe8,\xdb.\xb9Mw\x87\x1dlY\xb6\xa9DN\xbb\x1c\x85\xcc\xb5\xfd\x0b+r\xd8\xb1$+\xe1\x90\x89\xc6u:i\xbd]_\xf4;i6ro\x96J\xff\x85D\xee\x0bU\xabe}\x10\xd3\x14\x17\xd0\xe2\xb0e1\xa1k\x9c\xef\x8c\x98#\x14\x13\xba&\xf2\x89\x8d\xf2\x87\x11\x17+&t\xb9}]1\xa1+&t\x11G?\x89\x9f*&tYF=\xa9\xff\x89hC\x8f ]\xfe~\xa5\x98\xd0\xd5\x02\xefy\x8c\xf2\x17\x05O\xc3\xed'\xf2\x9e\xc8\xa4\xbe\xa1\x98\xd0\x15\x13\xba\xfc\x12\xbaT4\xeb\x8e\xed\xf2\xe2\x8ex\x8f\xee\xb4i.\xe8\xea\xdf\xdd\xfb\xb9\xfaVfP\xcc1\xa3\xa9\xbd\x93V\xc3\xa6'a3Tw\xf4|\xad\xd23\x84IUa\x91\xc6\x8f\xf9\x7f\x959R\xf6\xc4iuj\xb7\xabCQY\xc7\xac\"\xef\xcf\x89,\x18\xdc\xc1%\xbc\x1fs\xec\x8an\xb3\xf58\x8bQUl\xb7\xcf\xe5\x0b\x18\xd2u\x95\xaf\xd2u\xfd\\M\x95\xc3\x8f\xac\xba\x844\x83\xbc\xe0\x97\x87*\x872\xdd\x89J\xa6b\xd8l\xbdf\xcb\xaa\xadG\xc9\xaa\xb1\"\x8cY\xfd*X\xcf$#\x97\xbc\xb61F\xc8\x7f\xeb\xa7\x92d\x1d\xb2\xba\xb8oR\x8aBM\x02G\xe7\xa4\xb4L\x8c\xaaR\xb3\x88Nn\x9f\x83*W\xf6\x8c\xfa\x99\x0c\xbe\xaf\xa59y\xb6HJ6\x93U\xe5\xae\x9f-X\x95<\x9b}\x14\xee\xa3_\x0e\xacT\x97\xee\x81\x9dch\xe3\xb8b\x83sA!\x85\xd9\xf7y\xc5\xee\xa4]S\xba\xc8\xeaz]i\x06\x1f[\xee\xadY\xc6n\xab9\xffX<\xea\xb3I\xdb\xeaB\xed,\x14W{N\xd5}\xb2\xe1\xbb\xa2\xac\xf8Z\xa7\xcbT<\xad3\x83\x0f\xfc\x9e\x98g\xe2\x9c\xe4\xebu\xc9D\x91\xb2+\xd6\xbe\xc04Ov\x95\xacf\x0c\xf2c\xe2\xccm\xb6\xf5\xce\xdc\xd5\x10\xc4\xf4\xb3\xc3\x8e\x15\xe9R\xff&\"\xe6\xdbf\xab\x9bK\x96ib\x1d\xb2\xfa\x91\xa0\xb6w\xfaL\xa0\xda\xb2\xb2lf-\xdf\xe4\x91\x07\xf4\x8a\xd9H\xa0&\xde\xc2\xd7%\x01j\xf4\x0b\xa0@\xe7 K;\xa0\xae\xdb\x99W\xc9\xb6e\xbf\xd5OK\xc9g\x9c\xda;CY\xf1\x0f\xdbN\xf1Z\xf9,M\xf3\xc3\xd9\x1a\xb6l]\xa9\x97\x87\xd2J\x96F\xaf\x0d\xday\xbd\xe9d\x07\x9c\x14\x8b;`\xc9\xf2\x12\x92\xfd\xbe\xc9\x10=d\xd5\\\x8c\xcd\xc5\xac\xcd\xf3l!\x11\xa5\\Y%O\xeb\x81\x01\xff\x8f4[q\xee\xc5\xea\x17\xd7\xd4\xec\xc4\x87\x83uQE\xde:e\xaae\x0fu\xf5\xd1\x1e%EfD\xebe\xa9u^pr\xe9T\x984\x83\xcfge\x87v\xbd\x01\x0b\x03K\xc1\xca\xbd\x0c=\x10\x9b\xb1\xd9\xbd|\x83\xce\xd4\xf6K7Y^\xa8O\xba\xc7\xbc#\x83\xcb\xf6\xd6\x12\x85\x00K\xa7M\xdcL^\x85\xa0O\xda\xb4\xd9CI\xc1\x0c\xfb\x88ce\xd9\xaa\xabB\x08\xb9\xd1\xadAy\x9efK\xa6\xd3\xe3\x9e\x94\xab+\xf8f\xf6\xbbo\x7f3\x18X}\xc2u\xfd\xfb\xf3|\xa7\xd9\xec\xb0\xba\xfd\x0fy\x0ee\xbec\xf3\x9a\x8f\xa3/%\xb4Xu{\xe1\xda\xcf%\xc8\xea\xf5J\xe6\xd4\x83h7L\xf5Q\xaa\x9f\x06H3\xd8|\xfa\xf8\x1a\n\xf5\x85\x1a\xb2Li\xa9y\x88B\xd5\xf4;\x83SQ0\xd6%Z<]\xa9\x9a\xc5\x13\x99\x0cQ\xc0\xd4\x82Cq\x99Z\x86\xc0>)\x95C\xa0E\xa5\x99\xfc{\x0b\x81\x98\x99S\xb4\x9cU\xad\x97\x17\x04\xbfY\xb7p\x08\x0dVl\xc2,\x87]^\xe8\x03^\xe7\x90\xa1\xfc\x85\xc6]\xfbK^\xa3\x93\x0b\x8e\xf3\xd4\xd6+s\xeb\xce\xf4[\x07\xbf\x85\xef&\x11'\xeb\x04\xd2\xaa\xa9\x9c\x0f\x87L\xaa\xe9+\xf9\xfe\xdbM\x8a\x95\x95\xecm\xc5\x96+\xd6\xb4\x17\xd5'\xf5f\xbc\x11\xc4k\x0c\xf3\x8d\x13\x82K\xb5\xde\xde\x15\x0fh\x08\x89\xd9\x9eU}\x90\xbb\x87R\xf548\x95\x05\xdb3\x11\xa1\xf3*)j\x92\x99\xcf\xa5B#vF\xffH\xaeog\xacX>\xfffv\xfdl\xf6\xe1&\xd3\x1e\xdf\xc1\x02\xb3\xecP\xe7@>\x81\x0f\xff\xfe\xfe\xf4\xd3\xfc\xf3\xfb\xf3\x8f\xa7\xaf\xcf~8;}\xd3\xfb\xcb\xbb\x0fo>\xbf=\xed\xfdx\xfa\x1f\x17\xa7\x9f\xde\xbf|\xab\xd6@\x88\xb9\x17\x06T\xf8\x12\x89\x01\x8a\xa1\x88z\xbe\xf2\xc0\xe4\xfc\xc7\xf22\xdd\xf3\xfd\x93\xc0\xe9\xa7\xd7\xcf\xbfiU@\xd7\x93E\x06\x8dt\xde\xd4\x1c\xe6bG\xbc\xa4\xf7\xb4\xb5\x8dxW\xb3>F9\xd9\x17\x9d\x7f\x81 \xaa\x10M7YSVU\xfe\xaaB\xd3z\xd9\xc9\x03:\xbd\x00\xfd_\x08\xb6$\xe3\n6+\xb2d\xdbF\xd4^N\xdf\xea\xa6\xf2\x0e'\x9a\x87\x8b\xbaFNT\xb9B)f\x9e\xf2\xf5(\xd86\x11\x8ap\xbe\x06\x99B\x0c\xcb<\xcdJ\xf8\xe7'O\xfeE\xae\\\x87I\\\xb1A]Sv\xbd\x9b_\xe6\xb9\xd3\x03nf\xb8\xa6\x11\x9e\xfe\xfc\x0e8f\xfe\xf32\xcf\xaeYQ\x89g%\xc4~\x92 \xbaB'\x93\x03o!|\x9d\xab\xfa\xcbE\x92\x95k~\x8dR\xaa\xfe\x85\x98@\xabxv\xf7\x01\x0b\xf9\\M\x0b\xd1;\xb1/^\xaa\xc0\x9aS4\xe1\x1f ],\xe7^Q\x14\x9d \x0b\x95h\xb1\xd4\xf1\x12\xbfi}\x87\x04Rv\xf6\xab\xcc\xb3\xeem2Y\xa3c\x9b&\xe5\x1b\x96\xe5;o\xa1\xea\xaa\xa7k\x89\xa3\x19\xf6J 2lZ\xa1q\x86\x83\xb9\x89OE#\xe6\x9f\xb7\x9e\xc8v\xfd\xf9\xf9\x16\x9d\xb5D\xadb\xc3\xa3\x90\xa1\xddN\xe1\xe3\xe4p\xd3c\xa2\x0c\xfeA\x13\xbc\x19\x18\x19\x13\x18\x8f>X\x19\x14L\xcb\xa4`\xc0\xa8\xc0\xc6\xac\xe0\x08\xa3&2\xae\x1e6\xc5\xc6\x06\xbf\x8e\xe2e=l4\x86\x06&\xa6\x06&\xc6\x06\x1e\xcc\x0d\x02\x18\x9c\x95\xed\xf4\xe2\xc4 gM\xf5Kb7\x82\xce\x1f\x93\xb4\xf0>ab\xa5\xe7\xfb$\x1d\x04\xed\xd1N\x19\x1f\xc60L\x14\x08k\xd0\n\x05\xedj_rL\xad&>\xa54\xb4;A\x1eAQ\xc1\xa7S C\xea\xe7\xbbd\xbf\x17\x97\xa4\xc1\xe9[QO]\xed8\xc9oJu^8V\xbe\xf3\xd5)+\xab\xa4:t^\xe2R\x13\x9c\xe7\x8d\xca\xdcC78\xbe\x924\xa2AM\xb1\xd3\xf7\x9f\xdf\xc1\xa3o\xb4\xaay\x02\xcf\xf4\x99\x91*\xdd <\xaf\xd5\xbc\x1e:\x85\xe21\x8d\x98m\xf5]\x83Y\x8d\xef\x7f\xd1Q\xe7\xfb\x7f\xec\xa8\xf5\x1a\x1c\xea}\xf3\x99-\xe7d\x8c\xba\xafaz\xb5\xbf\x8fy*\xf5\xbf\x8fw\xcc5@\x82Y\x9c\xd4\\\xa6;q\xf94\xb0~\xb6q\x99\x17\xab\x128C\x11!KyV\xa6e\xa5\x04c[\x9a\x0c% ?\xa1\xd7L\n\x93$[\xf5\xa5\x11\xb5\x82\xd5\x80\x17R\x98m35?~\xeb\xaf\xd24\x0c7L\xc1#?ofa\xcd\x96#\x1f\xc0\x9eQ\x06M\xe9\"\x80I\x1b\xd8\xb4\x8dQ\x07\xb1j;\xb36\xb3\xeb\xc9\x19\xb6\x81e[\xc9\x8b\xb1m\n\xe3v\xb0n\x07\xf3&\xb3o\x17\x03\x9f\x86\x85\x1f\x93\x89\x1f\x8f\x8dO\xc9\xc8\xed7\x83I\x999~1\xf0a\xe8mK|\xb3w;\x13h\xb9\x08\xda\xcax\xd7\xe5\xd3f\xf4\x0d)<4\xda\xa1\xbd\x1el\xa7\xcd\xf8\xde\xa1}\x8f\x8f\xb6\xdf\xc3D6|\x0eN;\xbe\xf8\xa8k\xcb\x07\nQ\x90\xc7\xf4L\x8c\xd3\xcb\xb6\xdfkk\xb2\xf4\xf7>\x9b\xc2\xdco\x90\xfe^*\x86\xfbNW\x7fJ\xd6*\x0c\xc2\x1e]!/\x01\xef\xb2\xb4A\xb08\x1f\x08r\\\x84{\no\x93\xd8\xc6\xf6\xdd\x84\xa2z \xa4QB\xf5\x05\xb3]$\x1b\x85\xb1Q\x0c\x13\x04\xb0\x99-\x8d\x15\xba\xc7\x11\xb7\xc7\x10\xb4\xd3\x88X\x9c\x92\xe3\xc5j\xd7U@\x97\xa1\xeb\xdb\xd9.\xdd\xf0\xa5\x13\x8fS\xcb\xff\xfc$\xfa\"\xb3\x11\xe7+\xe6Un\xfd\xf3%K7\x97.\x07C\xbfBew\xe0\x82Y\xaa\xd1\xbf\xbed\xcb+J\x0e\xb3\x19\x85$\x80\xf7-m\x9d\x1f2'k\xea\xec\x80\xcb\xa4\x045\x06\x11\xa7\xf1\xe4_\xf4?W'\xb0N\xb6%\xff%\xcb\xab\xfaW\xbd%w\xc3\x95\x1a \xef|\xd3\xd1~\xf8\xfft\xb7rc\x05i=\xdd\x85\x07\xb3poo\x00\xcbg\xfd\x8d`\xf9t\xb8!\xda\x11\x18:\xf6\x82\x1f\x00\xf2\xea\xb9\x85V\xb2\xe3{\xca\xf2 ~\xba\xc51\xac\x0f\xb6:\x83\xa2\xe0E\xd2\x15y\xea\xa8\xcanj>)\xdf{\xbd\xb8d\xea\x0f\xfaq]\xc1$\xce\xb2J?\x8b\xdd\xcd\x91S\xb9\xd1RUP\x98\xea\xc7\xf9K\x11*\x90\xca\xe7Za\x93or\xf1\x9c\xaab\x08\x9b\"\xb9N\xab\xbb\xd9\xb2\xc8\xcbR\xd4]\xe5\xe7\xe3U\x91\xae6Lp*2I\xab\xe6k\x03I\xddD_^&Y\xc6\xb6\xf3t\xe1\xca\x8fV\xd2\xfa\xe1\x1b\xb6/\xd8\x92\x9f\x96\x17*D\xfe\xb0\xdf\x14\xc9\x8a\xc1\xf5\xb72sL}\xd9\x9a\x92{\xe6u\"\xa6\xa6\x84\xcep\xe7u\x04b&2\xd5\xae\xd3\xd5!\xd9\x8aM#_O\xd3\x82\xa6\xca\xe1\xf4\xe2'\xd2\xce\xbe\xf5\xbbC-\xf8\xd7a\xa7\xaci>\x82K\xb4\xab\xe8\x1eW\x1e\xa4\x86x\x0d_%\xa9\x7f\xa4\x1d\xb8\xf0\xe3\xedh\xd4;\xea\xed\xaf\x07\xf3\x05\xcb\x9c\xc1\"\x07\xc1N\x01\x93o\xbd\x91O\xde\x13-F\x1at\xca\xb1;\xaea\xd6}k\xaf\xe5\xd3\xbe\xd5\x17\x0c{\x15\xecO\x0e\xff\xaf\xbb\xf6\xd1\xc2\x9d\xbaVb\xcb\x87]k\xb1\xe5\xc3ix\xbdWn\xac\x11\x0dnM\x0e\xc3\x85Z\x96\xfdP\xd1\x0f\xf0\xb98JcN\xf0\x919\xbb\xa7=\x0b;\xef\x96\xcf\xb13o>\xf5\x86so=\xf9\xf6\xb3o?\xfd\x8e\xf3o\xe3\x00\x8e\xa6\x93s\x81!\x1f\xb0\x8c`\xc8\x0b,\x1f\x0f\xf9\x81\xe5\xe3)\xf5\x00\x8c3\x84\"3\xf3\x87P\x8cF.\xe1\x87\x90\xca)t\x04T\xa0\xc4\xbf\x1f-\x90\xac\xe04p\xefj\xdb\xe8\x15k\xc0G\x03dY~\xd8\\\xce\xd1(\xcd\xe6\xd2J\xdd\x0d\xfe\xd7\x80(0\x90\x06Q`t;\x89\x02\xa3\x86\xafV`p\xc0\xf2P\xd1\x1dm0\xd2\xc4\xfc\xd1\x98?\xaa\xc0\xbc\x86\x93\x95\x8d\x84\x91\xa5#\x81\\>\x12|JH\x82\xb3\x8c$4\xa5$\xddR\x99\xff\xf66-\xfd\x1f\xb2l\x94\xa60\xc1\\oN\xd20\xf34{u\x17V\xd1nY\xe77\xa1\x0d\xf0F\x10=D\x04\x0f\x11e\xe9d\xa12\xefUS\x8a\xdf}\x84TZ\xc2R0\x9d\xc2\xab\"\x0b\x9a\x98\xe5h\xe3\x93\xa4\xd5\xf9\x9e\x98\xaa%\x16\xa7\xef\x01\xf2^\xa0\xc6\xe5\x13t\xb8F\xd9\xa94\x0c\"\xd1\xc1\xb0E`b\xdb+\x1a\x9d\x0e\xf6E\x05\xbb\xf8\x05\xc2\xed\x10H\xdb\x06)\x9d3*j}\x80\xad\x9d\n\xa7a\n\x1b&6\xfe\xb1\xd1\xec-TM\\{\xeb\xc7\xf1\xc1\xed-d2\xcc\xbd\xf5\xc3\xd1b\xdd\x9bZ\xa3\x17\xb98\xf0\xde\xe7\xd7\x9evj\xef\xf8mRV\xa7\xfc^ ^5\xfcI,\xfd\xab\xbb\x97\xabU\x80ExD<5q\x90\xc2\xf4\x148\xbcc\x84k\xd7\xa3\xfb\xb0(Yq\xcdV-*\xfa\x0f\xb0\x1b\xf6\x14FH8\xfaB\xb4\xe4\x8cP\x93\xfd\x15\x82F\xde\x1cY\x1d\x98\xe4\xaa+\x01\x95Of u\x0c\xb3\x8fQR9e\x95SZ\xd1\xe4\x95\xa3\x1f\xb3\xcc\x9aZj\xe1r\x0b\x97\\a\x0b\x8e\xcfeB f\x90a\x13K1D\x8e\x1d[\x92q\x16\xf1Q\x86F\x89\xb0\x11\xc5%\x02\x99\xf6\xa2\xc9\x15@[\xe0\xad\xc0\x947\x00\x01\xaa\x8c1\x87 \x0c\x19\x9eO\x00\x16^2\xa5\xb6;\xcc1\x00\xd7\xb1v2\x0f\xdc\xdc\x0e.\xbc\xb6\xbc\x03gc\xf4\xa2\x07.\xfe\xea\xe2\xb0.\xd3\xba\x93Rv\xf3\xba\xb3\xf9\x11L\xec\x1c\x90\xfc\x04\x88\xa4BHe\x96`cS\x1a\x06\x08\x9b\x14\x07\x80\xb0xC\x8f7W\x8d\x07\x18K}0bB\xeftS\xa4At\x08\xe1J\x85\x18\x08\x99V(K\x98\x88\x89~\xc9a\x83 \x055\xfa%\x1d\x1fG\xbf\xe41\xfd\x92d\x96\xd1\xbf\xc1\x062\x8ex\x8d\x0d\xe2\x12\xf1\x1a\xdb@\xbc\xc6~\xad\xd7XI\xa3@\x9e\xd0g\x07\xa4\x0b\xab\xa9\\\x13\x98\xd7\xfe\xderN\x8ce\x9c,m\xf0rN\x96\x06\xcd>6F4\x98K;\x01R\xde \xea\xbe\x86O\x1e\xd8\xca<\x81eRX\xb9'\xcb\xf7\xc39Q\xb6]S\x0f\xcd{\x03\xfe\xcdS\xa7\xeemO\xfe\x0d\xf2\xa0\xfa\xabS~\xdd\xc1\xb0\x13\xea\x0d\xf7\x1e$\xeb\x13\xd9*\x81\x1c\xfaK\\c\xa5\x1cz\xafm\xf4\xa6\x0f\x7fv\xa8\\N\xc5\xce\xb5\x8d\xc0\xdeC\xf4\xa6\xff\xef\xf2\xa6K\xda\x84:&\x8f\xcc\x95mz\x9eek\xdc;\x07\xb6\xea|6\xcem\xd4\xfbH\xc2\x07c\x00$\xed\x0f\xd7\xfft\x9f\xf8\x9b\xa0v\x1d\xd06I\x93\x1e\x180\xc7\x8e\x01KmAaK\x93\x07o\xbb\x15g\xe1\x97\x03+R\xb6\xd2\x1f\xb8c\xf6z\xa6Y\xef\xc3\x10]o\xd3\x8a\xc6\xe8z\xfb_\xe7O\x8a\xae72\xa9\xa2\xeb\xcd\x86\xe9+r\xbd\xf5\xba\x0d\xd0\xb2\x16\xb2]_\xb4L\xabe\x19e\x10I@c7`\xb3$\nEi\x96Gf\x89t\x0c\x8b<.\x99\x9c|\xc0)\x9dl\xf2\xc9\x89\xdd%\xa3\x9c\x08\x8cr\xca\xc9~]\xf4\x02\x02\x0bv\x0e\x0f\x9cl\x98\x80\xe2(\xac\x18\xccr+\x92\xceE:\x9b\xf7h\x94$CwxO\x96\x85\x97.\x1aJ\xb4P\xa6f\x92kF|\x06\x1f\xd5\x18\xe9\xd6\xc1\xd4h\x02$\xf9&Kmz\x0b\xb5}\xabB'\xda\x04o\x06\x86j\x9d`\xa6\x97\xadj\xa7\xa5\x99e\xd1\\\x15<\xc3\xb0\x92\xaay\x86\xa16T\xf6\x0cDf\xa8\xf2I\xc2\xd6\xcbH\xa6\x15\xcf\x1b\xd7\x07\xa9\xfa' \xf1\x80\x14\x03\xfb\x17X4\x11\xcb\xdd\x18\xe9\xd3\xb32(8\xaa\x83\x82M\x14\x99E\x10\x9a\xf1g\xe5t&9clb{NzDnh\x0f\xcf\x98\x04\xd1\x1e*\x95.\xda\xfb\x95\x923\xaa\xc1RY\x14(\xfb\x10w!\x1a\xaa\x8c\x920\x1a\xbc\x92\xd6\x8a\xa3a\x88\xc9\xd5G\x1b\xf4\x98)\x92R%\xb4\xd3\xa1\xb5\x12\xe94}\x99w\xf2\xe8\xca\xa4-\\\xca\x9c\xdb\xaaN\n\xa6\n\xa5\xad\xc1\xd3\x18\xad[\xd8K\xca\x9d\xde\xb2\xe5\xa1b\xaf\xb7I\x1a\xe0q\xe7\xad\x8e|\x9b\xe5\x9f\xcf\x0f\xc5\x96\xccn]|\x08\xe0%|\xfe\xf4\xf6i\xc1\xca\xfcP,\x19d\xc9N\xbd\xbc+\x15\xe0\xed]\xa3\x02\xabGT\xef\xf6\xda13@V\xb2\"M\xb6\xe9_\xd8\x80\x8f\x889U\xf92\xdf\xc2\xe2\xb0^\xb3B{\x8cfpq\x99\x96j\xec\xb0;\x94\x95\xb6yCR\xc1\x96%e5\xc4\x95g\x0c\x1e<}\xc0\xf7\x1d\x97\xd7\xac\x98 \x1e\xb8M\xca\nJ\xb6\xe1\x9cN\xfb\x8e>\x7fz\xfb\xb0\x84}R]\n\xe4\x03T\xb5B9\xec\x857_\x1f\xb6\xdb;\xf8\xe5\x90l9\x05V\x92>\n\xb5\xa0\xc4\xa3\xa4\x844\x1b6\xfe\xc2\xbb|\xba\xc9\xf3\xcd\x96\xcd\xc4\xdc\x17\x87\xf5\xec\xcd\xa1\x10|\xfd\xcbc9b\x81\xae\xbc\xcc\x0f\xdb\x15,\x18\xf0I\x0f0-\x93,\xcf\xd2e\xb2\x15\xdcg\xd8\xd3#6\xdb\xccN8\xa9DI\x8b\x07\xb3\x07\xfc\xb8\xf0c\x9c,\x97l_\xb1\xd5\xe3\xa1\xe0\x008\xcb`/\x94\x9d%;\x81\x8a%\xbb\x12\x0e\xe5!\xe1\xd3\xe5\xfc \xdf\xed\xd3-\x1fQ\x95\x8b\xc9.\xd2,)\xee\xa4\x1b\xe2n\xcfJ\x84ZI\xc5\xbf\xbc\x1bv\xc5n\xf7lYAZq\xe5\xfbP\x8ay\n9\x94g\x15\xbb\x15K\xf52\xbb\x9b\xc1O\xf9\x0d\xbbf\xc5\x89\xb8j}\xfe\xf4\xb6\x94\xe2k\x80\x8f\xa3\xe0\xdbo\xb8\xff\x96\x97l\xc7\xe0\xcbeU\xed\xbf\x9c\xc8\xff/\xbf\x9c@^@\x96\xab\xbf\x9e\x88\xdd\xb3L2\xc8\xc5\xa9\x103.Y\x05\x87\xfd\x00_\"\xe6\x8a\xf4\xc3\x8akV\xc8)\xef\x92})\xb7\x82\x18q\x95\xd7%B\x84|O\xe5\xa5$)a\x9do\xb7\xf9M\xf9\x02Y\x8b\x7f\xe4\xac\xb4\x1e!_\xbe}\x91_\xa7+\xb6\xaa'!dzY\x1evl5\xc3\x10\xbc\xcc\xe0\xa7\x8b\x8b\x8f\xf0\xe3\xe9\x05\xe4\x99\xde\xfa\xf2@\xdd \xa5 \x81?\xf5\xb7\xe3\xc5\xdd\x9e\xfd\xf9O\x7f\x1e\xa0\x03]\xb2%\xd3\xeb.\x05\x9f\xa0\xe4\xbe\xc8W\x87%\x13\xae\xe0\xa2\xc8\x8b\xe1\xe5\xf7\x1f\xe1\xe5~\xbfM\x97\x89\x9a{\xc1\xf8\xbe\xc9o\xd4\xcba\xc9\x92\x9f\xd5<\xbf:\xec\xeb\xba(\x8b\xa4d+5pd8\x9f?\xbd\x15}_&\xd7b\xe9w\xad=\xba\x92\x9b4\xd1C\xe5\xff}\x9d\xa7\\o\xc2n\xcb\xb2cq\xfc\n\xb6\xce\x0bv\xa2\x1br|I\x95.\xd2-\xbf'f\x8c\xadt\xad\x19\xc1\"\x8ak\x86\xc5n\xe6\x99\x12\x7f\xe2cq6f\xf0\xe8s\xc9\xe0\x9a\x15e\x9ag|\xd6|{\x88\xc2*b\x7f$Y\xb2\xc1f\xb9(Xr%^9\x97\x08g\x8f\x87+\xfd>\xaf\xd8\x0b\xa88\xcf\\\x1f\xb2\xa5\xdc\xc1|\xbc\xea\xcc/\xa5\xb4\xdd\xde\xb5\x8b\xf8\xe0d\xcdE\xe5\xa2a\xed\x1e\xc5\xab\x17\x875\x14\x8cs`v\xa2\x9e\xba\xd3\x9d\x08\xcf>?\xa4\xcd\xbe_\xb0M\x9ae\x98\x95\x85\xab\xb5\x08s\xbd\xdb\xb3\x99\xdc\x8f\xc9>-g\xcb|\x87q\xa9sq\"JY/\x88\x1f\xb8\xac\x7f\xba\xe1\x11\x1f\xc7\xa5.\xb8$\x8f\xd0c\xd8\x0d\xdc\xc2\x1c\x16\xc8a\x16\x93\x11\xbaw\xad&K\xdd\xbb\xdc\xb3e\xbaN\x97P\xb2]\x92U\xe9\xb2\xecnuqF\xea\x8d\xbbM\x17bx\x8a\x8f\x96P\x1e\xf6\xfb\xbc\x10\x12h\x9f,\xaf\x9e\x1e2\xfe\x7f\\\xee\xc8u,\xb1S2\x14\xb8\xf9\x1a\x0e\x95d\x10\xfa\xf8\x95\x9c1%\xabU*\xcf\"lX\xc6\xc4\xa3\xf5\xeaJU\xea\xe1\xbf\xec\xf1#\xb9\x04]\xfc\xa7\xb7 \xdf\x84\xf0\xec\x05|\xe4\xe3\xe3\xe7N\x0d5\xa9 \x9af\xf0\xfa\xb7\xbfE\xc4\xc0\x0fy\x0e\xeb<\x87\xefa6\x9b\x0d\xebL\xf1\xc9&\xd9\xdd\xf0\x0fIv7\xe3\xdd\xfdP\xe4\xbbG\xeb<\x7f<\xfcd6\x1b\xf2\xf9t\x0d\x8fx\xd3\xcfb\x80\x17\xf9\xa3\x7f\xe0m\x1f\xa3\xe5\xb0\xb0\xf6\x7f\xc5\xe7\xfe\xdc1\xf7\x7fK\xae\x93\xe0\xc9\xc3\xf7B\xd7\xe0X\x03f\x9a\x96\x8f~\xc8\xf3\xd9r\x9b\x94\xa5a\xa2r\x08\xfcc9\xf6V\x83a_\x7f\x1d\xfc\xf2\xf4)\xdfN\xf61\x9c';\xc6E\xf7K9\x9a\x0d\xab\xde\xb0ur\xd8VgYY%\xd9\x92=z\xec38\xb4=6Vt\xb5\xbeu\xac\xd6\xc7\xbb\xea2\xcf\x90\xf5\x92c\xf9!\xcf\x1f\xcdf\xb3\xc7\xd8\x9e\x94k\xf5\x08\xfd\x9b\xd8\xafb\x05\xa9\x0b\xc8\x1b\x9dI\x8a\xbd9=\x7f\xfd\xe9\xec\xe3\xc5\x87O\x8f\x87&\x1d\x89^\xeei\xbc\x03\xd9\x05J\x8d\xdf9\xa8\xf1c>$\x84\xa0\xc4\x8b\xef\xe1\x1f\xf6\x8b\xd9\x0fy\xfe\xdf\xb3\xd9l\xb8/\xf8\xa0N\xb8\xc2\xc5\xbfL\xb2\xbb\xfdb\xf6\x9e\xdd\x18\xc6\x97\xae\xc5\x97\xff\xe7{\xc8\xd2-^\x9d\x0e#\x12\xb2\x1d\xf1\xefz\x03F\x9a\xa9\x11\xc8\xb1\xce>g\xbb\xa4(/\x93\xedE.\x0f]\xe8\xf0:\xbf\xf1\x0b\x94\xa0\xb0\xe6\xb3Zi\x86\xc5]\xa3\xc2hI \xeb2\xdeq\xad\x9cou.\xf6\xbb\xe8\x1e\"*\xc9S~\xff\x9b\x89?p\xf5\xed!\xd7\xe3k\xa9\xc4%\x16_g\xfe\x83\\\xeb.\xc2\x9a\xfdg\xdb;}g\x19\\(k\xd5P\x99A+}\x8f}\xf8\xf4a\x17\x9d\xba4\xe9\xae\xe5-\x89\xa9}\xf7`\x9d\xe7\xb3ER\x88A\xdf>\xbd\x9b\xfd\xe5\x81\x9c\xb1\xd4\xfd\x87\xd7\x18\xd1\xe5\x03\xfe]_\x04\xfd\xdb\xf9\x87\xf7\xbf\x19R\x9a\xff\xdc\xdc\x96\xa5\x86\x94\xf3S\xa5\xd4\x03yc8\x94Jn\x17ls\xd8&\xbdl\xa0as\xfe\xe9\x8a5\x82\xfd\xa4\xa9\xeb\xa8N\xcd\x89\xd2\x16zw\xec\x96\xc0\x956\xcf/\xff\xca'\xf9EY\xa6/\x10\x957Y^\xf13\xda\\\x91\xd6\xe9\x96\x0d\xb9\xa0>\xcb\x1fYQ\xe6\x19\xbay\x95-c\x9d\x16e%\x02\xd1MU\x1f\xd5\x87|\xb9\xf5w\xcf\x9d|\x97\x03\xd6\xeb\x031\xff\x07/\xe0\x01\xb6\x8f\xbb\xd3\x9a\xc9\xd1?8\xc1\xf0\x88q\xbfOv\x1c\xd7?\xcb!\xfe\x0b\xfa!\x1fw\xef;\xd7\xe0\xcf\xd6JU\xef\xae\xb1\\\xa1\xb4\x84\x1b\xb6\xdd>\xb9\xca\xf2\x1bi\xf9\xbeLJHt=C\xb9/\xdb\xd8\xba\xdb\xe9D\xaa\x8f\xbd=\xd6\x94cU]\xf2\x8d\x93m \x91\xdb\xa6\x8b\xf0\x8b\xd8\xc4z\x0f]\xe6\xdbU\xa7\xa2\xa28\x02iV\xef=P\xb6\x11\xb5\xf5\xba\xb8\x04\xfaz\xc7\xc1#~Z\xf5t\x07\x17qm\x17\xfa\xf3\x9f\xfe\xfc\x18\xd9\x9cc\xd6\xbb\xdb\x01\xbe\xe4b\xda\x1c\xd5\xb3\xd9\xf3g\xcf\xcb\x07\xc82\xca\xff\x8f\xf5~c\xbd\xdfX\xef\xf7+\xa9\xf7\xfb\xb1\xc8\xf9\x99c+\x11\x1aq!=d\x81E\xe7\xc6=\x1fi\x1f\xa7\x08\xa8\xb9\xc8\xc3j\xfd\xf6\\\xb5\xbd\xf1\xacog\xc9\xa1\xba\xe4]\xbd\xce\xb3kVT/e\xa8\x98w?\xae\x87\xcd\xf9\x14\xf3k\xd1\x91\x10\x06\x9eO\xb1\xae\xd8>/\xd3j.\xb8\xb0\x83\xbc\xd81\xfe!/\xe0\xf4\xc7\x1fd| \xabXQ\x9e\xc0\x0d\x17w\xca\xc5\xc5wP\xbe\xd6\xdd\xf0SS\xbbk\xab\x1cXVu\x92\x91\x9a#r\x9dWi\xb6\x99\xefY\x91\xe6\xae\x87\xe3;'V\x0b\x14\xad\xc4ID \x11i\xde\xf6\xcb!/\x0e\xe6\xd5C\xd0v\x18\xc1\xbb4Kw\x87]o\x8e\x92\x89\x95Ur\xc5\x84\x91VN\xf1:\xaf\x98\x0c\xd1RgO\xb2\x8d\x0e'\xc8\xcat\xc58I\x84\x11m\xd6YUUB\xb7YZ\xef\x1d4\"\xf4\xc7\xb0;\xc0&\x07L\xcc~\xd4N\xe9\xe1\x12\xfb\xa6\xc7P\x0d;\x06lc\xf5\xdf9\x80\xec\x1ez\x17\x03\xa2\x8c\xddI=tC32\xb6\xb9L\x832n5\xad\xb0\xd4\x92M\xa8\xc5ke\xdf\x16\xcd\x9e\xb6\xdb)|\x9f>\xbe\xd6\xc3\x91WNdg\x9f\xdf\xa4\xd5\xf2\xf2o\xb0\xb3\xd3R\xc4)4\xee\x9a#\x84\x15\xe9Nv\xe5f\xce?\x99\xb4\x0b\x9c= \xa2\x9e\xfe\xf8\x83\xff\x02\xd6\x8d\xc4\xbaIl\xd8\xb2\xb5W\x8c\xbcRVrctp\x95\xf2\x07;yCP\xa6\x8b\xe5,i\xf9\x07g:\x8a\x8d\xcfZ\x16@.\x92\xa5\xcf\xee\xac\x06\xf9i6\x11\xd3a\x0e\"0@\x07b\x89\xab\x9e\xc8\x9a\xcd\xd7\xb0\xcf\x8b\xea\xa9*\xf6\xde\n\x03.[\xce\xaf\"Yv7b\xcf)\xadb*\x14\x9f[\x1f\xb2M\xcau\xecN\xc8\xf0\")\xd9\xdc\xae\xe4H\xe8\xcc\x81\xb7\xea\x06\x8a\xa9N\n\xb6M\xee\xf8\xf8\x90\xcep*4\x14\xef\x1aM\x86]\xf09\x9f\xbd>\x7f\xfeM\x0f{; \xbaE\x015{E%H3\xa96rL\x9c\xea3\xd7V\xf0\xdc\xfa\"\xf4JFE\x0d\x14\x99~\xf8\x93y?\xb4\xb1\xa8\x18+\xe1\xdfQg@\xe6a\n\x1d\xf7\x89\xdc)2tO\x8f\xbb\xec\xc7\x1dW\x97i\xd9\xde\x12R3V?\x142@z\xfc\xa8{\x88\x82\x06\xde\x11r\x96a\xe3\xa3P,\xad}\x92J&\";\xce^\xbd\xae{i)%\xf5-K\x850\xe6\xb0/D\x010H\xa0L\xb3\x8d\xde\\2\xf8}\xc1\xf8\x16\xd2h\n\xb6:\x11\xe8[\xbbM\x07\xd3\x97\xa7\x8a\x06uW\xc2JS\x1c\x98\xb6\xd5f\xba),\x92\xec\nv\xf9\xea\xb0e\x0f\xb50=g\xd9J\xa1\xf8M\xcd`4&\xcd\xc9;\xc7\xa2\xcaa\x9dlK\xe6\xdc\xd0M\x85\xf7\x9f\x92\xd2?\x11\xf72)\xbd\xf8\x1c\xff\x1e\x1e\xa5\x19\\\xb2[ue{\xdc\x98\\\xdb\x13\x10\x87\xbfu>\x91\x85\xee\n\xbe\xc1$(\x82\xafn\x84\n>\"\xe5\x04\xa3\xf2&\x9d\x98\xee\xbcj\xc4\n\xda\x0eo\x0b\x03\x11\x03\xe1z\xe8\x08q\xd3\xc3\xa4\xd9*\x12\x07E\x11;`\x10=@\x9e[\x90\x08\x1a`\xe9Ph\x02Q\xd4\xc2\xa6\x8e;\"\x90m\"\xc9\xbd\xef;[\x90\xbc\xf1\xe5\xb4\xc6\xee|\x7f\xdd\xbd\xb5\xf5\xc3\xf46rp\xea\xf0\x90X\xb6\x92\xeb\xa0LyT\xac\x87\x85~\\\xcc\x07\x86>\xcf\xe0Cc\xa7\xd7\xb4\x07\x07=:\xc4\xc33\x18i{\xffA\xc1\xaaC\xa1\x8aY\xb4\x87U\x9ad\x10\xeeq\xe8t\xd0|\xd0\xd9-\xad\x9f\x95\xe3T\x1f\xd1Y\xef\x14\x90$@\xf4\\D\xcf\x058,:y\x961\x19\x11\x16&\x1d\xac\xf6\x1c\xb7\x948-\x97E~\x13j\xfff\xa2\xf50\xd3\x1a]M\xb5\\|\x12\xb2\x1d$KAbmFw\xd1\n\x1d+N-\xc5 ;-\x02\xe5\xe8D\xe6\xaf\x1e\xfb\x19\\|\x9aK\x8e\x1e\xbc\xbcc\x041\x1e\xfcZ\x0b\xc6K\"8E\xeb\xd8+n\x0f\x9d\xb8\x9f\xf5\xef\x8b\xd0\xbf\xea\x82\xed\xba\x0b#f\x13|\xf5\xeds\x9a\xd6E\xd85\x9d\xce\x88\x90\x9dE9\xf6\x8d\x0d\xd0k\x0b_p\x16&\xcf\xc2\x0fy\x11\xe6R\xeb\xe72z\xecF\xfam\x81\\!\xd6,\x11\x83\x93$\x1b\x14c\xf2#\xc3\x1e\xd0\xb4\xb2=\xcb\xea\x19\xf7\x8cj\x8f4\xedm\x9ee^\xee\xf2R\xfbC\x17\xacJ\x9e\xcd\x14\xbf|uW\xb1\xf2\"?\x17\x94\xf7\xdf/\x12\xc9\\.\x9cE4\xe03\xb7\x8d\xc1|RT+\xf99\x14\xfb\xa5\xc2\xa6\xe7\xabW\xf9<\xcd\x96\xec\x85\x9a\xfc\x93ru\x05\xdf\xcc~\xf7{;9$\xd2\x8b\\\x0c)\x98\x1c\\\xb7s \xca\x81\x1eh%\x11:.'\x89\xc4\xd7SQ\xe8UR\xb2\x97R\x96\xfb\x12\xc4J\x8a\xfda\xd1U\x9f=\x98N\x85f=\x1a\xd5L\xbb\xbc\x980\xdf\xd1\x9c\xed8]\xae\xe3d\x99\x8e\xc6<\xc7*<\xcbq\xaa\x1cG{\x86cP~\xe3\xb4\xd9\x8d\xc6\xdc\xc6i3\x1b\x0dy\x8d#\xb3\x1a\x07\xe4\xae\x90\x9c\xc6i3\x1aG\xe63N\x9c\xcd8\"\x97q\xeaL\xc6\xc9\xf2\x18\xa7\xcdb\x9c,\x87\xd1\x9d\xc18Y\xfe\xa2){qL\xee\"\x9a\xabXQ2\x15\xc7\xe5)\"\x01%\x81Y\x89HN\xa2QP\xd2\x8cT\xc3X\x9a\xb0\\\xc4&\xf7\x10\xa3\xefo\xdc}O\x9c\x858\xccA\x9c \x03q\xd2\xfc\xc3\xbe0\x1c\x99{\xa8\x08\xdd\xc68&\xdb\xd0\x9ang\xc84t\xe6\x19\x0e\xd3~\xe89\x86\xc3\xb6\x7f\xc5\xe6\x1a\x94]H\x99\xac+\xb3\xd0<7gV\xa1GNa?\x17\xcb\x94O8>\x9b0<\x97\x10]\x97\xc0\x9d\x91\xb1%_\x89B\xdf\xa6\xc5Z\xd5~\x1e\xbeR\x8b\xa4L\x975\xa6\xce\xfdt&\xd4<\xb5!\xda}i\xd3\x16\xbb\xadX+\x0c\xb6q U\xda^\xdbfP\x9d\xab\xaf\xb0p\xc15+\xab4\xdb<6\xd9\xf2_\xb1\xe5\xe5\xb7\xcf?\x16l\x9d\xdez\x1b\xad\x17\xa2\xf1|/ZSM\xf8\xb57\x06\xeb\xdal\x97n\x7f\x0d\xc5~\xd9X\xa4%6/\x83\xb4g\x14\xf0.\xb9\x9d\xef\xd8.\x9f\xd7\x06S\xaa\x89\xbe\xb3o\xab\xdby\x99n\xfa\xa5!=\xdb\xff\x85\xcd\x97yY\xcd\xf7\xac\x10\xce\x82\x10D|\x14\xd7\xacH\xd7w\x12\x17[=\xff\xee\xbbg\xff4\x05\xaa\x92-\xf7\xcf\xbf\xfb\xfd\xd53\x7fd\x9d]\x82\x84\xfe\xb6<\xe0\xda\xeb\xc9\x17\xb5\xe5\x07\xc7\x96Z\xb8\xc8\xd4\xe9\xae}\x1bgo\xbc\xf7\xbaf[n\xbfDg\x1e\x0f\xf1}9{.Ka\xf6CT\x1c\xa3u\xf9\xf3\x86-[G\x85@\xa0\xb3l\x9d{S&\xcd\xd6\xad\xf4\xb2\xce\xec\xf9\x9f\xf4\x985{\x13\xbf)\x0fi\xd9\x88W\xa9>\xb7XqP`\x83\xcf\x1b\x8f\x03\xef\x11\x98\xfa\x02K\x80\xa2\xc9\x93\x046#\x198\xeda0\xadW \x1cu4\xa7\xf4.\xc1\x94\x1e&\xb0W\xd3\x1c\xe5i\x82 \xbdM\xe0\xf48A\xa8\xd7 \xc6x\x9e0\x8a\xdd\xed\xc5~1V\xd6\x1c\xe1\x81Bp\xc9\xa3n\xac\xae9\xce\x13\x85\xa0;\xec\x8d\x156\xa7\xf6H\xc1x\xaf\x14L\xef\x99\x82q\xde)\x18\xe7\xa1\xc2\x8f(:\xc8\xc9\xfcV0\xb9\xef\n\xa6\xf4_\x01\xc9\x87\x05S\xfa\xb1\xc0Z\x89s\x9c?\x0b;\xe3h5N\xa2\x97\x0bF{\xba\x10\x84XM\xce`\xff\x17\x98\xear:D\xbc\xa56'E\xfe\x07\xfa\xc40\xb6g\xac\xd0\xe9\x1a\xc78\xffX\x0f\x99\xf0\x96\xa1u:'\xf1\x93\xc1\xd4\xbe2@\xabu\x8e\xf6\x99\xf5\xb0UH\xc5\xceq^4p9\x97\xc0V\xb7\x93\xe0Q\x03S1=\x0f\xcf\x9a\x19\xc7\xc0&9\xca\xcb\x06\x1e\xc4py\xdb\xc09o\xa7\xd7\x0d\xfc\xbeK\x94\x95\xb2\x96\xa9g\xe2\x9e'.Oi&\xd4\xe12-%Q\xc4\xf7\xa2\x9c\xb3\xfc\xb7\xc9f*B_\x7f\x94=\x89\xff\xf3\x0f\xcb\x16\xa3:r\x81\x8d\x81}\xb6\x8d\x05\xb9\xed\x0dl\xb5\x8e\xef\x0dv\xdbv\xab\xc1X\xc12^0Zr\x9b\xbf\x19\xb2\x91\xc1y'\x950\xa1mW\x82\xadH\x08Lj\xe7\x950\x99\xb5W\x82\xa5`\x08\x8c\xb3\xfcJ\x98\xca\xfe+\xc1U<\x04Bm\xc1\x12\x82-\xc28\xed\xee\xf6b\x0f\x19\x0b\x89\xc0\x18\xeb0\x8aM\n'cA\x11\x18i)F\x11\x1e\xf6\xc6\xc2\"\x10h5F\x11Y\n\x8e\xc0x{\xb2FB\xb0*\xa3-\xc9\x96f #\xec\xcd\x12FX\x9dM\x07\xdd0\xd4\xc9\xec\xd1\x12\xa6\xb5JK\x98\xcc6-\xc1m\xa1\x960\x99\x9dZ\x82\xb9\x80 \x8c\xb4Y\xe3\xbc\x02-d\x02Tk\xb6\x84P\x9b6\x8a\xccd\xe7\x96\x10h\xed\x96\x80\x167\x01\xb7Ja)r\x02D\x8d#\xd0\x16\x8e3Sc\xc1\x13 \x8cf\x9cu|\x80NX\xcb\xd1\xe2'0\x8d\xa5\\\xc28{\xf9\x00\x9d\xd0hP\xe5a\xa4\xed|\xd8\x13R\x10\x05FZ\xd4%8j\x83\x80\xad8\nPl\xec\x12\xd0\xaa\x05^\xf6v &v\xfb2$ \x13\x9a\xd2\xaf!a\x94wc\x80\x0d)\x1e\x03\x93\xfa\xc3\xbde~\xeaG\x02\xf1\xc1\x1f 6\xa7\x1b\xf9\xf1\x1f \x15\xfd \xa4\xef\xce\xac\xec\xdeP\xbe\xfb\xb5_vq\x17\xbd\xa2\xd1+\xda\xfa\xfd\xd7\xe6\x15\xa5\xb9C\x95#\xf4e\xf7\x90|\xfa\xf8Z\xe1\x1b\xf8C\x17IvU\xbbC\xdf\xb0,\xdf}\xb8\xc9t\xde\xe3`\x1b\x0f\xb7\xb0\n\x8a\xe8\xbbA{\x8b\xd4=\xc1\xb2I}\xa8\xaa&\xb6BJ\xd9\xfc&\xe3\xa7z\x9f\x14U\xba\xe4\n\"\xac\xf8\xc0\xd4\xb1\xd3\x9bd\x91l\xf9\x15\xb9\xdf3\xe9\xd0 |\xa4\xcd\x95\xec\xf8\x02\x13>5\x9f\xbf\xd7y\xda\xe2 P\xe5W,S\xbajgbB\x86$\x99\xea\xb2sg}\xff\xe1\xe2\xf4\x85\xd0\xb0\xe5\x1f\x95\x1a\x9b\n\x8et\xc6E\x91P j\xbbmG\x8b\x90k\xde\xc2V\xa6\x9b,\xa9\x0e\x05+\xa1`\xbf\x1c\xd2B\xde\xaa6\xf9&\x172{6\xdc\x90\xf5\x84\x9a-RO\xa9\xac\x8a\xc3\x92\xa3k\xd4#\xa1\x04e\x90,\xc5\xf1h\xadj^(-G\xabH\xd8\"\x0bvt\xc52\xc1K:\xca\xb9F\xa8\xb7\x8b\xa0\x98\xfc\xad\xbb+\x9a+C\x1f\xa7&\xeby\xca7\x8f:\x06O\xca\xd5\x15|3\xfb\xdd\xefm\x07\xe3s\x96V\xe4s\xd1\xdba\xee-#\x1a4\x14\x94\xf3UJ~\xdb!\xcc\xc5l\xa6\xbe>di%\xdc\xb1pH\xaa|\xf7X\x1f\x0dv\xbb\xcf3\xd6\xde\xb6\xb2\xff4\xab\xd8\x86\x15\xf5\xaf\x9aov\xd9\xa6\xd9\xca\xad\xf1\xb6\x87\xb9\xcfo$\xe3|\xf6M\xf3w\xb9\xe0\x19\x93n\xf1\x16\x86\"I\xd5\x1dx\x91\x94l.\xa7!\xd4\x0f\xc8\x8b\x15\xbf\xfa\xe6\xc0\xf8\xc5\xb85\xd7\x9a\xf8\x0fK9\xef6\xc2g\x8a\x14\xdf\xc3\xb3o\xfe\xbf\xba\xff\x06y\xfb[\xe1\xb8\xd6'\xaf\xd5\x7f\xbe\x96\xf4k\xbc\xb2\xcb\x82qM(i\xfa\xe6\x1f=\xe4\x1f=l!\xec{x\xea\xfe\xbf\x87\xdf\xf3\x1b\xc3\xa1|\x01\xcf\x80\xb7\x92\xe3\xfb}o\x9d\x92m\x9a\x94,,\x86\xa4\xb7\x97\x94\x9cS\x18\xbbj\x91\xdaE\xfaoZT\xb4v\x92\xeb\xc0\x0b\n\xb4\x16=Q\x87\xbe\xef\x80H$\xd2\xf6\x19\xd0\xcc\xed\xa0\x88\xa8\xd6>]\xea\xf3\x88\x9f\xb8w\xacJVI\x95x\x1c\xb8f\xf4\xb6c'\x065\xe7\xa3 \xa3;9v\x07\x911\xd6\xbb\x89\xcb\xb94\x8aA\x0c\xb0u7\xa2\x84!\xdb\x90\x803\x0f 8\x0b\x91\xe0\x9a\xd1xv\"a$S\xc1)=\xec\xc6\x87\xd5H\x18\xc9p\x06\xf8$\x0328\x96}\x99\x8f\x84\x01\x0b\x92\x80\x1d\x08 \x83c\xd1n\x80n\xec X\x93\x04\xdb\x15g\x04\x9b\xd2\xc8i\xcc\xaa3\xa7\x163\xe9\x9fL=\xc3\xb6\xf4\xe2\xd3S}\xc32\xaf\xef\xec|g\xf8\xa8\n\x9d\xa3\xc4\x1b\xf7\xfb\x16\xbf\xc9\xad\xf6\xa8 \xfa\xe2\x7fi\xc8\xa4\xaf\xdcb\xcf\xb4\xf0}\x0f\xdf\xd4[d\x95\x96\xfbmr\xe73\xb6\xce\xb2\xa8\xf6\x90f\xabt\x99TJ\xd7/\x0f\x9b\x0d+\xb9F\xa6N*_\x9cz\x98\xc3\xe62`z\xb9\xe5\x17\xcc\xfa\x8a\xc89\x9e\xcf\xb8\x1e\xa2\xfa\xde\xb7\x0f\xfb+\xfaP\xb0\xd2\xf6\xd5\xa4\x13\x8d't\xf7Gl\xf3\x02^\x0bD\xf0\x92\x1f)\x8d\xa5\xbc\xdb-\xf2\xad\xcf\xb0:K)\x9b\xeb\xfb\x9d\xecK\xfd\xa6\xa3\xe4\xca\xcb\xfc&\x03\x11\xaa\xae\x03r\xc4h^^|x\xf7X\x86<\xb6\x10.\xbb\xc6p\xb5\x07J\xe1h\x90\x9d(\x12w\xcd\xfc8\xa9\xd4\x07\x87\"\x0d\x9e\xe0\xe7Og\"\x82 V\xf9\xf2 \x02)\x1f\xe5\x9cGC\xbe^?Y^&i\xf6X\xee\x86&\x84\xa2\xb6\xdc\xb7\xd0\xa4\x99\x94:\xfc2\x08\x1fT\x00\x1da\n\xbfo\xa60\xbfL\xca\xcb1\xf3\xf8))/%++/\x93\xe7\xdf\xfd\x1e8B\xe1\xebh&\xb7\xcfS\x1d\x95\xff\xf9\xd3\x19\xbf\xcd\xbe\xd6\x83\xb4\xfbC\x04\x02\xd58\x94e\xf69&\xe94 \x8c\xd0\xb0\xea\xd1?\x81\xec\x94\xde\x92Qv\x89jBv\x95\x89V\xe26\xad\x95\xe8Ww\xe2\xb7sAv\xef\xdd\xb2\xeb\xd8;\xd1Fx\xc3>)\xdc;\xc1`\x03\x05\x83P\x07\x93\xd1\xc7 \xdc\xc1\x91\x7f\x88\ny\xb0\xf15\xdd\xcenM\x04\x08\xb7\x91\xa2\xc8\x10\xc7J\x03&[)\xd4\x13\xc1\xed\xa5\xe0\xb0\x99\x02q\xa6S\xd9N!\xcc~\x8a\xe2\xb1:j\x1a\xf0\xb7\xa3\xc2H[*\x8a\xb0v\xe8X\x12u\xc2l\xaa`\xb6\xab\x82\xe5\x90I0\xd8W\xc1}@&\xb3\xb3\x82S\x8f\x9a\xc0\xde\n\xe0ks\x05\x98\xd8\xee\n\x03\xdb+\xd8\xa8l?\x96c\xec\xb0=T\xad]\xf7Mgk\x0d\xec\xb1@\x1e\xef` G\xdaf[(P\xfb,\x0cl\xb4@\x1e\xab\xd3V\x0b0\x8d\xbd\x16\x10\x9b-\x90\x879\xd8\x02\xa3\xed\xb7=|\"\x81}9\x0ch\xa6\xdaq\xc1e\xcb\x85\xbe=\x17\xc2'?\x91m\x17h\xf6]p\xd9x\x01\xb5\xf3\xc2\xa8\xf9\x8d\xb2\xf9\xf6\xd0U\xb9\xc9\xee\x0b\x10b\xfb\x057A\xcc\xfc\xc0\xdf\x0e\x0c\x98-\xd8\xaa\x93\xbbuez\x9d\x8f\x0e.\xe4:\x07g\xa2\xc4\xc42\xd9J\x85a8\x80\xba\xcf\xc5\x81K\xb0%\x13\xc1\xab\x92\xe7\xd5\xe9\xf1\xf2\xa2\xafDg\x9a\x89\xcb\x08\xbf\xec\x92\xaf\x04\xf1\x16\x10o\x01\xf1\x16\x10o\x01\xf1\x16\x10o\x01\xf1\x16P\x03m\xac\xf1\x16 !\xde\x02\xe2-\xe0\xef\xf3\x160\xbd\xe2\xef\xd4\xccE\xe6\x82\xbf\xfb[J\x9a\\4\xee\xeb\xe6\xd3\xba\xc0\x07\xf94m,\xa8\xd0\xefP{\xa2\xdc\x1a \x03\x0fV{,\xf7\xa4\xf1\xe3N~G3\x97\xea\x1c\xec\xf1\x1a`\x1a\xe3\xf8\x1a S\x8e\xb0\xc1\xef4\x7f\x98\x04\xdb\xd4G\xe7\xeet\xb0\xe9<\x9e\xce\x8f\xa3\xd3y\xba\x87A\xa5\xf6`\xbb\x12,\x19>\x9d\xef\xad\xfc0F?\xc4\xe8\x87_G\xf4\x03\"\xbe:;\xf2\xd3\xc7\xd7\x8d\x00\x15\xdaH\xabE\xcb\xad-\xcbL\xd7g\xc4+\x0d\xae\x19H9\xda\xc4ud9j4\x86YU?\x83A\xccv[\xb7\xe6C\xa0B\xd2.&-\x82\xd2y\xf7wK>\xfd\xd5\x84\x062\x87\x89\xccn$s\x9b\xc9\xdc\x862\xea\xac\xa74\x96Mg.#\x1b\xccBMf!F3\xd7HIf\xb31\x863\xab\xe9\xcce<\xb3\x9a\xcf\x08\x87hR\x13\x9aK(\xc3Tf\xb4\x10C\xda\x11Li\x981m\x94\xb2>\xa1I\xcdbT3\x98\xd5\xe8#G\x16v\x02\xe3\x9a\xdb\xbc\x86\x19\xd8\xe8\xa3&\x19\xd9\xa63\xb3\xe1\x866\xfap\x91\xed\x11nn\x1b\xa0j%Qa\x067?\x93\x1b\xc1\xe8\x86\x98\xddF\x91bB\xe3\x1b\xd9\xfc\xe6\xb47\x81\xd1\x047v\xaeS\x1a\xe2\\\xa6\xb8Pc\x1c\x81<6.\x12f\x92C\x8dr\x83\xae:D\xd5Z9\xd4\xb5\x7f\x85\x9dB\xb0\x9bN\x86\x8d\xe0\xfc*\x8f\xa0`\x9b\xb4\xacX\xd1\xa1\xa6\xe82f\x17\xc4\xfb\xf5\xaf\xf1~=\xb8\xd6z\x9a\xa6\xcb@\xdb\xb4L\xf4\xf2\xbeK\xef[\x89\x96\x83\xe9\xa9\x14\xbe\xce\x81ne\x8f\xd5\xaaa'yL\x82\xc7\xc9\xc2\xf3\xda\xc0\xa2\xa3\xff\xed\xa3H\x0c\x89\x9dM\xbbar'\x10D\xd2\x94I\x9eP\xdf\xd2\xfb\x89\x9e\x80'{\x82s\x80\x13$}\xc2\xd4\x89\x9f\x80'\x7f\xc2\xf8\x04\xd0\xfe\xfe\x12\xecx\x98\x04\n\xa1\x89\xa0=\x1c\xfd\xb4P<\x19\x14\xc4\"\xd9\x12B\x01\xdd\x83\x16\xb6\xd5\xe5\x1c\x1d\x19:\xe4YB\xb6\xf0\xeb\xeb\xedS~\xee\xdb\\D0\x05+\x8fjm\x16oF\x15S\xbc\xbdN?~\xf2\x07\xa7\xde\xa9\\u4\x14\x7fMK\xde\x84j\x8f\x16?\x0bm|\xb98\x89\x9cu\xb4<1e\xf7\xc8\xab\x90I\xde\\\xe8)A2&joQ{\x03\xe3\xfa\x99\x98\x93\xc3;\xd2\xb4\xa8]\"\x12\x1fza\xfb\x83\x953\xee\xd5\xc9TI\x84\xaf\xa42\xe9\xcd%c\xc6(\xcdq~\x84\x8cQ\xc7\x12v\xf6\xd2\xa6\xb3\x99j\x0f\xbaB\xb7\xce\xebz\xf6\xb5\xb8m\xdc\xe9\x0fK(uW\xb5'[ZS\xebW\x96\x04\x05\x1d\x1e:\xaf\xfd\xe8\x7f\xb1\x88\xe5\x1e~\xa5\xe5\x1e\x06\x9b+\x16~\x10\x10\x85{\x7f\x0c_\xb5p\xb73g\xfc\xbac`\xcb\x82!Kd\x9a\x1f\xeb\x81\xda\xd9r9&H\xe2\xfc\xb0\xdfo\xef>\xac\xbd9o\x9f\xcby\x9c\xa4\xa8\x02\xb8\x19\xa8m\x97\xf5\x96\xccj\xfaSF?\xdd\xc6\xafl\xc4\x05?-\xb2\xa9\xf7\xfe(E\xb3(\x97\xbf>\xb9\xac8\xad\\\xa0Z\x1e\xcb\x7f)c\xab\x90\xbf\xaa\x81S\xfc\x8e\xbc\xbc\xb7\xc9\xe2\xf0Dz\xf0\x98(\xad\xa3\xb4\x06d\xa0&\xbeFa\xa2\xadf\n\xdb\xc0yb\xe0\xa6\xad[?\x99\x81\xf6\x98\x1b\xb2J\xbeU\xfa\xea\xed;\xd2\x04\xd8\x98\xfd$\xba\x8e\xbd\xaf\x9e~\xc9f\x15\xcbV\xac\xd8\xa5YUS\xe2\xe5\xab\xd7g\x82\x9a\xde\x02e\x99\xaf\x06\x16\x07\xca;\x01\xdb|c\xa5b\x9a\xads\xc7\x07+vk\xfd\x02\xef\xb8\xc3}\xac\xadZ\\\xa7\xf7<1\xb5\xd9\xbe\xc8\xf3\xf5<\xdf\x0f.\xc2$f\xd9i\x07\x06a\x0d\x13\xbb\xc4D\xb3\xc1\xaf\x16v\x04}\x9a\x12\xdb8\xden\xee\xa6\xb17\x10\x8e\xd3\xe5\x7f\xfb\xc8\x17\xeb\xc3\xbe\xfdX\x13'\x93\n\x87\xd3\xafw/\x93\xedRx\x90\xb2\x0d\xbcc\xc5\xd5\x96A\x91\xe7\xd50\x04\x91\xeb\x10\xc2\x95\xbb\xcc\x0f\xd8\xdbm\x0b\xd6z\xddY\x0e\xfbDy[E\x1c-[\xb2\xb2\xe4\x7f\x13HZo2\x0e0e,\xdd\\.\xf2C!\xda\xe5+\xe4E\xc6\xcb\xa4\xbcD\xf3O\xc4\x0b\xe9\xc2N_\xa9\xa7\xee\x12X\x1d\xe4\xc3\xf5ud\x96\xa6\x8c\xd0X\xe4\x87\x8a\xad\x0f\x10\xa6\x19\\4\xec\xa5\xfe\xb3\x99\xf6\n\xb7\xb0@(z\x8aS\xa3{\xe0\xdaR\xd5\n#\xd4\xdfwg\xe35\x8f\x12\x99H\xd7\xe57\x9c\xc2%\xa7\xf1\xe0^E`7\x9c?\x96\xfbdh\x96m\xb5\xc5\xa93\xe0\xc9\xb8w\xaesS\x15\x7f\xaa\x1b\x8a;\xad\xc2\xd6\x8b\xdb\xa7\x11L\xf7,\xb1\xe1TS\x08\xbb$s\x88\x9bW\xdb|yE\x161\x97,Y\xe9'\xa5\xd0&x3\x90\xb5\xb1\xcbtP\xcfB*\x1f2\xc4i\xc1\x87\"\xa4M\xf7\x1b\x13\xf74\xf3\xceE3\xa96X\x19\x96E\x97\x03H\xf6\xfb\xe9\xd0\xd9\xb9\xdfk\xbe\xcaYy(a\x99\xec\xe5uE^8\xf4\xcf\xc5a\xab\xc2\x95\xf7E\xce9\x93\xb0K\xd7\xd4\xeb\xa1\xe3m\xc5\x9fD\xd4\xe0I\x9f\xef\xa4\xd9r{\x90/]r\xd5\xb9\xfeP\xb2\xbazC\x97\xfa\xb5\\\xd5\xbb\xdc\x94C\"\x89=\x9b\xe6\xd9\xc3A\xa8\x03\xd7\x91\x18TE\x92\x95\xf2\x01\xcc]\xb2\xbcL\xb3\xce\xc3\xfc\xa2\xe7y\x8a:\xd1\x07d\xee\xb3\x01\xcb\xa7\xe6\xc4\x83*%g\xb4k\x14\xd8\x83\x93\xe2\xe9VA<\xc3\xe8\xbdv/\x16_I\xdcm\x88\xac\xdd'E5/Y5\xef\x9f]\x0d\x16\xed\xc4\x95\xdf\x82\xdc\x95\xea?\xa1\xeag\x1b\\\xc9 8\x19\xc0E\np\xa93\x8a\xe7|L\x8a\xaad\xd5O\x82*\xbfA>\x10\x9c\xf1\xecM\x7f\x99\x97\xf9n\x97V>y\xe8\xc6\xd1\xa8\x8e8*y\xa6\xe4\x19\xe6G\xaf\xf5\x1d\xff\xe7\x04\xdd\xa9GA\xf3\xa2\x9c\x00Y\x7f\xec\xebB\x84\xbf3\xce\x03 ?T\xfbC\xd5\xfc\xb6/\xd8\xb5\x9cZ\x0b\x830\x0cL:\xa6\x9aCN\x80+\xd9\xef'\xc0\"\xf6\x8b\xba\xd7O\x80\x8e]\xa7+\x96-\xd9\x04\xa8\xea\xf5k\xc4JO\xee\xf2\x83\x9f\x97\xac\x98\xa3i\xec\xc6\xfe\xec\xb2\xad\x8fT\xdb\x14\xf2\"\xdd\xa4Y\xa2\x04P\xfd\x99\xce&>Q\xd3\xa8\x06Z\xaex\xfc\xf9\x15[^~\xfb\\\x8df\x10}v\xd6V\x83U,\x98\xd6\xb3\xbep\xb2\x94_ND\xed0ev;\x7f\xf3\xc7\x13\xb8\x11\x02\xf7\x9a\x15\x15\x0cr\xe5\xc4\xfd\xbf\xd3g\xbfK\x11^\xc6\xaa\x8a\x15\xf0\xf9?\x0c\x9a\xb7\xe4;\x1d=\xb2Q\x1fEXC3jE\x16\xc9\xc05\xbe\xe0\xe2b\xd5\xed\xf8\xbb,\xca{i&\xc2\xc1\xa6\xb8\xb8-e\x00\xbc\xb6\xde =B^7\xa4\xd6\xf0\xaf\x92\x00\xb3\x9f\x84\xc8\xff\xed\xb3\xc1\x1aKSq\x96W\xd2?z[Bm\xe9\x13,f\x06\xf0\xef\xeca\xc1\xe0\xbf\x0ee\x05\xc9\xa6`\x8c\xab\xe8G(\xe9;\x96dj\xc4rX/\xf7{\x91\xc0\xb0\xcaY)\x06!\x95*\x11OY2>\x9c\x81i\xf9\x8d\xbc\x8d\xb6\x12\xe8K&s\xbc\xb8\x82\x94,+\xf9\"\xb2\xc4S\x87`\xb5y\xa8f\x06A[`\xd8\x18\xc2\xf6\x81\xb7M\xa3\xbe\xd7\xcc\xaf\xf3\x8a\xcd\xf1\x81H\xb0\xea%.\xcd\x04@\xe0G\xed\x16\xe0F\x0e\x84\x0e@\xa31\xfe\x95\xa0\xa9H`\xd9\xc1\x90&\xac\xe1 \x9c\x9f\xfd\xf8\xfe\xf4\xcd\xfc\xdd\xf9\x8f\xf3\x8b\xff\xfcx:\xff\xfc\xfe\x8f\xef?\xfc\xfb{\xcfV\x1f?\x9d\xfe\xfc\xe1\xe2\xd4\xbf\xd5\xeb\x0f\xef\xde\x9d]x\xb7\xfb\xf0\xf1\xc3\xf9\xcb\xb7\x96f*\x88\xf6E\xc0\xfc\\V\xa46\x9c\xa7\x9b\x8c\xad\xde\x95\x9b\x8b\xfa\x8a-\x84@\xbe\x16~!\xb6\xaa\x1f\xd7\x1f\xbc83\x84Zh\x0e\x18D\x0f\x8c\xf4\x7f\x01?\xe7\x15\x1b\xbeW\xe8l-\xe9\xf9\x02>\n\x11\x99l\xcd(\xb0\xfbQ\x17\x88\x9b\xd3\xa5\xa7K(\xf2C\x86\xc6\xe1kp_\x08$\xb4\xba\xfb\xf6\xb9\xf1;\xfc\xb2\xd5\x05\xc2\x19\x07\xe29\x07\xeb}\xa4\x01\"I\xc1uGi\x83\xf3\x02\xd7\x05\xe2\xac\xc1c\xe6\x00\xd6\xab^\xefC\xe2:k\xa0m/\x0d\x94E\x00\xbf\x85\x00\x9f\xc5 \\\x1f\xd1\xcf\x87\x97\xc9\xfeg;VV\xc9\x0e13\xb5>\xa2M\xcaf\xa9\xe8B}\xff\xc2\xb5\xfc.x\xf6n%e\xd3q\xcfw4\x04\xea~\xa2\xf1\x8d:\x08\xc0\xdd\xe543\xf5\x13S\\*4c\xd4\x06\xf7\x9aZ*>\xffN\x15gJ\xf7\xc9\xf0J\xd4\x854k]\xf1t\xb2\x9b\xb5ER\x96\xf92\x15\xd9\x00R\xbd5~\xcdn+\x96\x0dm\xba]\xf8\x1b\xd3\xb2\x1e\xa3\xf2\xe74^\x8c\x96\xb5r\x06\x1f\xba \x11C\x10K\xa0\x8c\xaeL\x9a\x80\xecdT\xeaDI \xdf\xfc\xd7\xb0)\x1bB\xba\xb7\xa7\x15[{\xeb\xb6\x9c\x168\x0c\xf6.\xb2=\xad\x08\xf8\xc2b\x8b\xe7\\\x1f*\x81\x04q:9\xdd\xfb\x82\xf1\xbb\x07t\xba\x13\xbf\xac\x0b\xa4\xa6\x88\x86\xc6\x16\x06\xad\xc0\xf3!\xb4\x94O\xec\xcf\xe2\xda\xb3\x88\xd7\x9ex\xed\x81x\xedA\x81\xb89izi\xbc\xf6\x00\x9d\xa4@\x97O\xf1\xda\xd3\x01\xca\"\x80\xdfB\x80\xcfb\xc4k\x0f\xb5\xf7x\xedQ\xe0#\xa6\xe2\xb5gbZ\xc6k\x0f\x0e#\x08\xe9\xde\x9eVl\xf1\xda\x83\xc3D\xd7\x1e!\xa7\xe7\xd7y\x95f\x9b\xb9(\x05j\xbf\x02Y7\x94[67\x8c\xfc\xf8}9e\xa4G/6\xd9HY\xfa7\xda}\xc7\xd7\xffT9\xef\x1aG\xa6v\xe7I\x07vM$\x14\x95\xba\x7fT79o\xbf\xde\xa6K\x11\xc8\xcbw\x0c\xb2\xc6[\xae\xd5\xcfe\x15\xb3yRU\xc9\xf2\xea\x98\xce\xc3\xd6\x88\xe6\x86`B \x04\xb5\xd3\xd5\x17\xd4\xc4 \xa8\xba\x84\xfe\x80\xd8' \xf1\x9c8\x10;\x05\x8f\x8e\xc1\x14\x11\x8a\x03%N\xd4\xd0\x92>v\xf0\x1c?\x98#Mq \x1c\xd4>\xe8\x83\x8bF\xa5\xe2\x80\xc6\xaa\xe2p\x1f\x03\xa2\xb0\x95>\xd0c`I\xe8\xd08YWd,\x0e>\xf1\xb2$\x84\xfd\x98Z{\x14-\x0e\x94\xd8Z\x1c\xf0\x88[\x1c\xbc6\x8b\xdb\x0c\xa3\xc1\x0b-E^\xb6a\x18\xdfk\xf8.l\x10\xee\xab\xa6\x06K\x840\x0eG\xe6[T\x83\x02\xf8\x13\x07\xe8\xeax\x03\x9e\xd6\x1e\x0d\x9eT\x82\x00J\x01xX\x814Po\xef}\xf0\xdb\xdd\x1a|\x16\x13\xc2\x16\x14B\x16\xd5\xdbj\xd4k\xe6\xb2\x1ei\xb0\xc7e\xe3\xe0I\x03\xcf\xb9\xd3\"\xbbq0\xc4{\xe3p\xcciX\xa3\xb3q8\xe6p\xcc9\xd58PC\xd3I\xc8\xfa\xe1\xeb8\xb8\x83\xdaq8&\xd9la\xf18\x1cs4x`=\x0e\xc7\x1c\x87#4\x1f\x87c\x0e\xc8\x12\xdc\x8f\xc31\x07\xe3N\x0f\xc0\xc1\x9e4\x80\xc3\xf1\xe6\xe1\x19o\x8f\x05\xd9\xe3 E\x8dkr\x1e\xba\x89\x8fN\xf2\x95h\xd6N\xc7\xa7\x06_U\x88\xe6\xd0\xd0\x10Uj#D\x95Z\x80\xdf\xb6\xd6\xe0\xb3\x98\x10\xb6\xa0\x10\xb2\xa8\xf7\xa5R7\xc5\x92(T\x90\xb37?\xe2\xd4\x05\xeb\x93N]\xf0\xde\x8c\xfe[Qs\x90\xf9z\x9b /\xc9\x98 h\xc1\xdd\x01O]x\x02\xaf\xde~x\xfd\xc7\xf9\xd9\x9b\xf9\x0fo_\xfeH\x08\x0e\xeaC\x1f\xc3\xcbW\xe7\xa7\xef\xed\xf1L]\xe8# \x04Du\xa1\x8f\xe0\xfd\x99-.\xaa\x0bu\x94\xd482\xf8\xdd\x1b$\xc8\x83\xb2\xfaa\x9blZ\xaf>\xc9\x92c\xea\x109\x03\xa6\xba\xd08\x10S\xba\xe9\xd23X\xa1\x0bA{4\x88%\x11\xa28\xba0jht\xb3\x9b\x04\x92\xa3\xb9\x0b\xa3\xc6G&]\x88m\x1c\xe0\xb5P?\xcf\xd3\x8d\x0c\xe8\xe3r^\x1b\x8f\x85[V\xa7\x0d\x12\xd1\xa5\x19$\n\xa7\xcb`\xec;^\x89\xb5\x9b\xe8X\xfb\x08E\x06\xa5V\xbbo\x12GT`\xadv\xab7\xa0\x12\x9d1\xd9\\\xb7\xcd\xa3o\xceP\xc9\x08\xb1\x81NyC\x952\xcd\xd8\\;\x8f.A\x89\xd2\x938\x13 \xd4\xf9H\xf0\xe2C\xde\x07\xc9\xf3\x10\xed\x0f\x8ba\x15C\x13x\x11\x05\xbc \xc3\x81\xad\x9e\x7f\xf7\xdd\xb3\x7f\xa2~\x1e@ \xf0'\x12\x88\x1at\xcb\xfd\xf3\xef~\x7f\xf5\xeck\x1b\x9a\xaft\xfexXl\xd3\xe5\x1f\xd9]\xe72\x7f\xc5\xee\xda\xb5\x13\xe9\xf2\xf5P2Y\x9a\xf4\xe7\xfa\xb0\x12ZR\"M\xba\xe0ML\xdf\x8bKm|\xd9\x17i^\xa4\x95\xd7\x998\xca\xb8\xf4\x88\\\x03\xf18\x96>\x07\xd2\x83Oy\x12\xc1k\x8f{p(\x0fB\x80'1\xc0\x9f7y\x12\x05| \x03!\\\xe9\xf8\x83\xf2\xe3GTn\xc4\xf9\x0c \xa1//\xf2\xe5D\x9e\x04\xa4\x9fv\x08\xe5AG\x1b\x11=(\xb0nA\x1f\x8a{\x18\\_\xcd\xb3\xb9\xdd`K\xe8\xd1\xdd\xd3\xe2\xee/IV\xa5\x19\x9b\xbb5N\xb7\xa6\xe9\xd00IL\x8a\xc6\x9aH\x1c\x9a@! \xc4sN\xe2\xc7\xa4I\x02y\xa2\xe0\xc3}\xc9\x13\x06\xfa\xa4\xc1\x8f\xd7\x1eg\x08T\xce\xea\xc3S\xf1\xc7\xc1\xbb@\xe2\xa6t6A&\x8e\xfb\xe0J\xf0\xe4\x9a\x13\xf6O\xe7\x90\x84N \xdd\xb9\x0cE\x1e\xbd\x8c\x0de~\xcb\xb9\xf2k\x11P\xfcR\xc4\x13\xbb\xc2\x99\xa5\xbd\x01\xc5\xd5\nbO\xaa\x8a\xed\xf6\"\x94\xb9\xcaa\x97\x96[\x96\xac \x91\x01\xcc\xea\x19fm\xa8h\xc5\xad4\x04A9\x0f\xcee&)\x81\x898\xf2$\x0e\xcc\xd5br\xce\xc5\xda\x97\x9d?\x19\xe9\xa7\xc1uT\xbe\xbe\xda\x97&\x87\x90I\x9d\x98\xb2h\x98\xd3E\xe3 \x8a\xd9\xed\xe2\xe3`\xf1p\xa5x8Mh\xee\x11oGHg\x1d\x9d^\x0c\xb7o\x82\xe4\x85p,\x83cgZD\x03\x11\xb1Y$X=\x00D\xec\xc8\xb0;r\x86j\x96\xc7\x0d\xeef\x91\xe5eD\xc7\x8d\xe4-l}s9\xfe\xfe\xc5+\x19$_BS1\\\x90I\xfe\xe1D^R\xf9@TX\xcd\xbeW\xb1S\xa1\x91/\xf6\xa8J\x9a\xf2\xb1\x97E\xb7X\xa7\xb3>\xf9\x8f\xac\x12}\xbe\xba\x93\xd5\x1f\xbd_\xc5\x18\x8a&\x1f ;\xba\xd2\xaaU\x04\x05\x08H\x83\xd8\xb1\x8b\x1c\x9b\xb8\x99R\xe2Z\xc5\x0b*Zz\xf93\xea\x9b\x87\xed\x17\xce\xf7[\x96\x94L\xe8\xfa_\xca\xd5\x95\x8c\xa2\xff\x02iVV,Y=\x0cZ\xd6i\xd6\xc2\x98\xc0DMW\x1a\xa1~X\x12\x8f\xc8*\x821\x87\xc7\x98B4\x16\xb5[1\xa7\xa7\xfe i=\x08>Z\xa2\x8fOZ\xcf e\x07'\xa0=\x89\x87\x9a\xb2cN\xd0\xb1,\x85\xc9\xe2D:\xd4\xd8\xc2\xe1i4$t&\x99\xecH\x88\x19q2\x8e\xa5;\x13\xae\x13\xe0\x1a98G\x0ff\x1e_\xff\xd9y\xbd\x00\xc2\x15\x03\x9cQnNr\x81\x9bd\x84+\x07\x98d\x83\x06wz\x07i'\xda.D\x84D\x0dKZFh\xf7\xceL\x81P\xc4\xfdy9s P\xf6I\xcbf\x08\x1d\xa3+/!\x14\xaf9\xc3 \x14#!W \x14\xb5#\xea?\x14--~\xdf\x1d\xad\x1f\xd6\xffDq\xf7\xc3g\xc7\x02T\xb4A\xb1{\xa8\xf1\xe0.\x10\xa3\xf3#\xfc\x96HQ{&(\x82\x0f\x13\x17\xc2\x07G1|\x98\xa4 >4\x9bu|Q|p\xd4\xb6\xf7\xda:\xe6\xf2\x12#\xf6OpE\n\x8f\xc2\xf9\xe0\xee\x0d\x08=\x82\xb3\x88>\xd0:\x02bg\xa0\xd1Y\xbfp\x9e\xc46\xd0\x02\xae\xc3\xaaL\xe2-)\x95&\x8d-\x89\xc1\xd5A\x15'a\\\xd5I \xb1\xb1.LZ}\x12|*P\xc2\xe8*\x94&\x0c\xf4J\x94@N\xd6\xf2\xd8\xd0\x14\xad^\x02)A\x8bv\x95\x90`\xf2\xfd\x0c\x81\x9a\x94E\xe4\x1d\xe0\xc1?\xc0y\xabi\xc0\x83\xec\xe0\x92\xf0} ]\x15\xbb\xe0A\x0d\xf0\xa4\x08\x07\xaf\x84+\x9f}\xa1\x81\xbe55P\x17\n\xfc\x17\x0b|\x17\x8cxQE\x9bP\x92\xaa\x9c\xae\xef\xfaC\xfaD]6\x96.\x90\\8m\x08\x18\x89\x93\xd4\x1e\x150\xc1s\x1f\xd2\xf9\x139\x1f\xe4\x18\x14\xf0\x17\xa3\xc4\xea\x98N<\xbd\x12\x84\xbe\x152\xc1\xabJ&P+e\xc2\xd7E\xe7\xa9*gBH\xf5L U\xd0\x04\xff*\x9a\xf0\xb5\x12\xd9\xba\xad\x9d\xc8\x06Ea\x9d\x955a\x8a\xea\x9a0\xa6\xc2&x\x12m\xb2J\x9b\xe0Qm\x13\xdc\x157\xc1\xf9\xd8\x00\xd0\x95\x1a\xaa2\x13\xaf\x87\xf1zh\x86x=\xa4\xeb\xe0\xf1z\xe8\x02\x0f\xb2\x83\x9f\xcc\x8c\xd7CR\x1b\xeaB\x81\xffb\x81\xef\x82\xc5\xeb\xe1\x00\x02F\xe2$u\xbc\x1e\xfa\x8b\xd1x=l\xc1\xb1\xe9\x1c\xaf\x87\xf7J\xe4x=t\x11\xedk\xbe\x1e\xd2\xb3\x8b\x80\xbe\x01iz\x04\xf1\x81\x06\x98\xba_\x92\x1c\xf7\xec\xd1%\xbf\xa9\xdbe\xc2\xc7\x1b\xc0\xfb\x01\x07\x08x\xc4\x01hj/E\xd5%?\xe8\x00\xb4>\x81\xd8/\xf8<\xee\x00\xf4\xbe\xc1\xa3\x7f ?\xf4\x00~\x03\x00\xcfA\x80\xdf\xa3\x0f\x00\xf4Hj\x1c<\xe7\x02\x01\xf3\x01\xdfG \x80\xce\x00\xfa\xa0\x19\x02\xf9\xed\x05 \x1e\x0fB\xc0=\x0f\x8e\xca\xba\xfa@\x8b\x12'\xa3\xc3\xa3\xc9\xa9f'\x0d\x8e\x18s\x1c\xa8\x91\xe7d\x84X\x84\xba;\x1e\x1d\x07j\x94:\x0e>\x8fK@\xc8\xc6\xa3\x99\xcf4x\xa3\xa7\xca\xfc6P\x1f\x9c\x80q\x03r\xa9\x04]\xf0~|\x02\xee\x8fw\xfa\x18y \x8ch\xe0wei \xc0J\xa7!\x80z\x10HA\x00O\xeb\x9d\x06\x1f\xebI\x1f\xfcO\x86\x06\xdf\x05\x87\xf0E\x87\xd0\x85\x0f\xb2\xf6i\xf0\xb0\xfaipg8\xe0\x10@\x97\x00z\xd0s$p\xf0z\xd0\x02\xeeiZ\xce\xbc\x06\x1c\xeech\xf4B)\x0dP\x13=\xc8\x08M\xf9tC\xa0\xa5\x89\xe0p\x1f\xe4t%\x9a\xe0p\x1f#\xf3y\x0c\x03\xeeiL\x84d\x17\x1c\xeecp\xde\x8fd\xc0=\x0d\x8c\x96p\x83\x83;\x0d\x07\x87\xe3\xcf+\xe4vF\xcc\xf7!\xe1\xa2\xbc\xc5\x01\xe4\xf78\xc0_-\xf3U\xc7\xbe\xc2\x0b \xc9\xcf\xaf!D#\xa4\xfb\xd54\xc4\x9b\x88\xc7\x19\x94\x10o\"F\xf0?\x12\x1a|\x17\x1c\xc2\x17\x1dB\x17\xfe\xbeo\"~\xef~@M\x11J\xe5r\x0d\xc4\n\xe6\x1a\x826p\xd8\xf6\xd5\x9c\xc9\xf3-\x10\x18\xb31h1\x88]\xf0)[e\x06\x8f\x82Vf\xf0(ue\x06Z\x11,3x\x97\xc72\x83\xff\xd5K\x02\xb1\xd2\x96'Vg].3x\xc7\xf3t!x?\x07\xb39\x82\xe3t\x08\xa3\x87\xe9gI\x95@\x8e\xa9\xe8\xc2\xe8\xb1z\x914Dy\x97@-d\xe6\x81\xd2\xe3\x8d\x11\x08\x1c;\xb9L\x1a \x9b\xb1\x94\x1a\xe9\xbd\x11\xf0ys\x04\xfcd\x9c\x8fdsW\x83n\x83\x9f$\xf7\x90\xe2\x1e\xb3\x93\xe03G \xde<.\xe80\x06\x1cDR\xb5\xe96x\x13\x0b\x82\x08\x06>\x15\xa9\xdb\x10D8\x08#\x1e\xf8U\xadn\xc3\xfd\x0e3Dk\xa0V\xb9\xf6@\x19\xf6\x96 xU\xbfnC\x10\x91C.l{\xbf\n\xd9m\xb8\x871\xee\x89\xef\x9c\x80\xff\xf1\xf6=\xd8\x9e|0\x808\xde\xe7\xc3\x93\x03z\x12\x08\x02\x88\x04a\xbc/\x80X\x10B0\x08\xe5z\xf77@\x7f~79\xb7\x0b\xe5u!\x9c.\x80\xb0~\x1c\x04\xc6\xf0\xb8\xa3\x8f\xce/\x8e\xb7n\xe57,\xda\x90Ho\xaa\x00\xbdwZ\xaf>\xef\xab\x00Y\x93&h\xd0dfHg\x81d A\xa4\xa0\x04\x0f\x1eB\x96\x07\xe4\xc9\x83\x17\x01\xc0\x97\xfb{\x11\x02\xfc\x88\x01\xfe\xbc\xfe\xb8\xc3\xf1\xe1\xecT\x9eN|\xfb\xca\x8f\x9b\xfb\xb1#/\xa2\xd1\x98\x82\x84\x00\xae}\x84\xb1\xf8qh\xe2\x00\x88]S\x0cw\x9e=\xba\x8crT\xfb\xd0\x94o\xbc@\xf8;/`z\xeb\x05l\\\xce\xcc\xd1&\xaf\xeflp\x12K|\x84\xa2\xf2\x03\xc7o,\xec\x8cB,\xec\xdc\x01\x9b\xb3\xd1\xa6B\x1d\xab\xc6&\xc9\xfdG \x9e\xdd\xa5\xe7\xeb\xbc\xf3t\xd3y:\xe4\xe8\xae\xb7 '\xdb\xd4\xef\xd0\x80\x8fg\x8b\xb0T\x84]~?O\x96\x11\xbcJ\x1e=\x19\xa63\xe1{5\x03t\x031Lv\xc8\x18\x9c-=t\xa8\xeb\xa5~\x0f\xa4\xa1\x99~B\xe4<\xcd\x96\" \xaf\xdc\xe5\xe5\x93ru\x05\xdf\xcc~\xf7\x87\xf8\\\xc8\x00\x9c\xdbJo\xaa\xf8\\H\xf3\x15-i+>\x17\xd2\xfe\x95\x82.>\x17\xd2\x07\x97\xd2\x12\xb5Jl\xab\xc4\xe7B\xfa\x7f\xf4\x98\x973\x8b$>\x17b\xc1H\xc8\xa0\x08E\xfdk~.\xc4-\xcb\xfb\x1d\x88\xf7\x07/\x19\xe4E\xbaI\xb3D \xda\xfa3m\xc9>AP\xc9\xc9rm2\xe1\xba\xed\xab\xee\xa3\x83H\x83\xb3\x0c.\x98~|\xf0\x04\xaaK\xde\xb7*K\xf8\x85\x93\xac\xfcr\x02\x8bC\xa5\x15\x84\xf37\x7f<\x81\x1b\x8c\x85\xa9\xd7\x0e!\xad\xa0\xca\xfb}c]s\xddd\xc1\xaa\x8a\x15\xf0\xf9?,\n\xb6;\xb3\xa2\x99A|T\x05\xe2\xa3*\xf1Q\x15\x97\xee\x14\x1fU\xe9~\xe3\xd2\xde$\xd0\"\xd6c\xd5\\\xda|\xddl\xac\x0b\xb1j\xae\xdb\xf9\x0f~\x1b\x9ar\xf7\x91@\xca\xa6\xa3]\xb8$\xd8\x9c(]\xa0f\xcd\x11y\x07x\xf0\x0fp\xde\xfd\x1a\xf0 ;\xb8$|\x1fH\x17\xea.xP\x03<)\xc2\xc1+\xdb\xcdg_h\xa0oM\x0d\xd4\x85\x02\xff\xc5\x02\xdf\x05#^\xe7\xd1&\x94\xac5\xa7q\xbe\xfe\x90>Q\x97%\xaa\x0bd_\x84\x86\x80\x918I\x1d\xab\xe6\xfa\x8b\xd1X5\xb7\x05\xc7\xa6s\xac\x9a{\xafD\x8eUs]D\xfb\x9a\xab\xe6\xc6GU|[\xc6\xeba\x03\xf1z\x18\xaf\x876 \xf2\x0e\xf0\xe0\x1f\xe0q\xeb\xf0 ;\xf8\xc9\xccx=$\xb5\xa1.\x14\xf8/\x16\xf8.X\xbc\x1e\x0e `$NR\xc7\xeb\xa1\xbf\x18\x8d\xd7\xc3\x16\x1c\x9b\xce\xf1zx\xafD\x8e\xd7C\x17\xd1\xbe\xe6\xeb\xe1\xdf0\xd5'>\xaa2\x84\xf8\xa8J|T\xc5\xf5\x9d\xd7\x00\xc0s\x10\x10\x1fU\x91@d\x00}\xd0\x0c\xc1\xeb\xdd\x92\xf8\xa8\x8a\x1b\xe2\xa3*8Pc\xf9q\x88\x8f\xaa\xd8a\xc4\x80\\*A\x17\xe2\xa3*>W\x96\x06\x02\xact\x1a\x02\xa8\x07\x81\x14\x04\xf0\xb4\xdei\xf0\xb1\x9e\xf4\xc1\xffdh\xf0]p\x08_t\x08]\xf8 k\x9f\x06\x0f\xab\x9f\x06w\x1e\x08\x0e\x01t \xa0\x07=\x93\x04\x87\xf8\xa8\x8a\xdf\xd0\xfc*\x9bH\xa0\xa6\xc3\x90\x11\xd2\xeb\x8f\xd2\x92ip\xb8\x0fr\xba\xd2qp\xb8\x8f\x91\xc5GU<\x07\x17\x1fUi\xc1\xf1\xe7\x15r;s\xa7\xfe\xd09K|T\xa5\x0f\xfej\x17\xc9\xcf\xaf!D#\xa4\xfb\xd54\xc4\x9b\x88\xc7\x19\x94\x10o\"F\xf0?\x12\x1a|\x17\x1c\xc2\x17\x1dB\x17\xfe\xbeo\"\xf1Q\x15gU%\x1c\x827\x06-\x06\xb1\x0b\xbeu\x99p\xf0\xac\xd6\x84\x83g\x0d'\x1c\xe8\x95\x9dp\x08\xaa\xf7\x84\x83\xff\xd5K\x02\xb1l\x94'VR\x91)\x1c\xbc\xe3y\xba\x10\xbc\x9f\x83\xd9\x1c\xc1q:\x84\xd1\xc3\xf4\xb3\xa4J \xc7Tta\xf4X\xbdH\x1a\xa2\xbcK\xa0V\xdb\xf2@\x19\x1fU\xb1}\xea%\xe3|$\x1b\xad\x04\xb4\x06?I\xee!\xc5=f'\xc1g\x8e\x12\xbcy\\\xd0a\x0c8\x88\xe4\x12\xd2\x1a\xbc\x89\x05A\x04\x03\xdf\xd2\xd2\x1a\x82\x08\x07a\xc4\x03\xff\x92\xd3\x1a\xeew\x98!Z\x03\xb5$\xb5\x07\xca\xd0\x87\x06|KTk\x08\"r\xc8\x85m\xef_\xbaZ\xc3=\x8cq\x1f\x1fU\xb1\x80'\x07\xf4$\x10\x04\x10 \xc2x_\x00\xb1 \x84`\x10\xca\xf5\xeeo\x80\xfe\xfcnrn\x17\xca\xebB8]\x00a\xfd8\x08\x8c\xe1qG\x1f\x9d_\x1co\xdd\xcaoX\xb4!\xc5GUp\xa0\xb3@\xb2\x84 RP\x82\x07\x0f!\xcb\x03\xf2\xe4\xc1\x8b\x00\xe0\xcb\xfd\xbd\x08\x01~\xc4\x00\x7f^\x7f\xdc\xe1\xf8pv*O\x8f\x8f\xaat\xe0\x08c\xf1\xe3\xd0\xc4\x01\x10\xbb\xa6\x18\xee<{t\x19\xe5\xa8\xf6\xa1\xf8\xa8J\x03\xb6\xd5\x8c\x8f\xaa\x10\xdc\xabNq\xe4\x16A\xb1\xfcu\x07\xe2\xa3*\x14/\x95\xa7\x9b\xce\xd3!Gw\xbd\x059\xd9\xe2\xa3*d\xb1\xe6\xf4*y\xf4d\x98\xce\xdf\xdd\xa3*\xbd1\xfcO{\x0c\xafd\x0eO \x15\xabkMs\x12\xca?\x9cHu\x93\x0fJ\x85\xac\xed{\xc5\xba[\xa8\xd6)\xdb\xaet\xb9l\xb6\xe2\x12\x7f\xd1\xad\xd3=\x18JM\x8e\x1fY%:|u'+7\x7fb\xe5>\xcfJ\xa6K\x86\x17\xfa\xdfbl:\xd5^\xb6\xfd\xbf\x07V\xdc=\xedc\x80O\x1f_\xc3\x8eU\x97\xf9\x8aw,\x9f\x8d\x99-\x92\x92\xcd\x9a\xa9\xce\xae\x9f-X\x95<\x9b\xfd\xc8\xaa\xb7\xfc\xb4I\x1c\xbaw\xb9\xc7\x06\xfcr\xc8!\x87\x92\x1ce\xb28k\x1d\x8a!\xe3\x1e6\xec\\\xabd\x0eP\x9d\x0c\x12\x98\xac\xe9\x0c$\xee\x94\xe5\xed\xad\x12\x15\x95\xa4\xbd\xccC\xfd\xa0\xd0\x1b\xb6/\x18\xe7\xb1\xab\x17\xb0\xdf\xb2\xa4d\xc2\\\xf6\xa5~\x83\xe8\x0b\xa4YY\xb1d\x15\x1f\x19\x1a\x80\x93\xcd\xea\xf5\x8b\x8f\x0c5_\xd1\x92\x18\xe3#C\xed_)\xe8\xe2#C}p)\xf1\xf1\x96\x85m\x95\xf8\xc8P\xff\x8f\x1e\xf3rfU\xa1\xec\x93\x96\x17\x15:FWVS(\xde\xf8\xc8\x10\x00-\x9b\xc7\x9d\xb7\x13\xd6\xbf\xe7K:\xf2\xc4\xc5\xe7s\xe2\xf39\xf1\xf9\x1c\xb3V\x10\x9f\xcf\xe9~\xe3\xd2K$\xd0r\x13b}d\xda|\xddl\xac\x0b\xb1>\xb2;\xcc\x03\xfc64E\xab\x97@\xca\x9b\xa4]%$\xd8\xdce]\xa0\xe6G\x12y\x07x\xf0\x0fp\xdej\x1a\xf0 ;\xb8$|\x1fHW\xc5.xP\x03<)\xc2\xc1+\xaf\xd1g_h\xa0oM\x0d\xd4\x85\x02\xff\xc5\x02\xdf\x05#^T\xd1&\x94\xfcD\xa7\x1b\xa6\xfe\x90>Q\x97\x8d\xa5\x0bd\xaf\x93\x86\x80\x918I\x1d\xeb#\xfb\x8b\xd1X\x1f\xb9\x05\xc7\xa6s\xac\x8f|\xafD\x8e\xf5\x91]D\xfb\x9a\xeb#\xc7\xe7s|[\xc6\xeba\x03\xf1z\x18\xaf\x876 \xf2\x0e\xf0\xe0\x1f\xe0q\xeb\xf0 ;\xf8\xc9\xccx=$\xb5\xa1.\x14\xf8/\x16\xf8.X\xbc\x1e\x0e `$NR\xc7\xeb\xa1\xbf\x18\x8d\xd7\xc3\x16\x1c\x9b\xce\xf1zx\xafD\x8e\xd7C\x17\xd1\xbe\xe6\xeb\xe1\xdf0\xa9+>\x9f3\x84\xf8|N|>\xc7\xf5\x9d\xd7\x00\xc0s\x10\x10\x9f\xcf\x91@d\x00}\xd0\x0c\xc1\xeb\x85\x9a\xf8|\x8e\x1b\xe2\xf398P\xa3\xd4q\x88\xcf\xe7\xd8a\xc4\x80\\*A\x17\xe2\xf39>W\x96\x06\x02\xact\x1a\x02\xa8\x07\x81\x14\x04\xf0\xb4\xdei\xf0\xb1\x9e\xf4\xc1\xffdh\xf0]p\x08_t\x08]\xf8 k\x9f\x06\x0f\xab\x9f\x06w\x86\x03\x0e\x01t \xa0\x07=G\x02\x87\xf8|\x8e\xdf\xd0\xfcj\xd8H\xa0&z\x90\x11\x9a\xf2\xe9\x86@K\x13\xc1\xe1>\xc8\xe9J4\xc1\xe1>F\x16\x9f\xcf\xf1\x1c\\|>\xa7\x05\xc7\x9fW\xc8\xed\x8c\x98\xefC\xc2\x15\x9f\xcf\xe9\x83\xbf\xdaE\xf2\xf3k\x08\xd1\x08\xe9~5\x0d\xf1&\xe2q\x06%\xc4\x9b\x88\x11\xfc\x8f\x84\x06\xdf\x05\x87\xf0E\x87\xd0\x85\xbf\xef\x9bH|>\xc7Y?\x0b\x87\xe0\x8dA\x8bA\xec\x82o\x05.\x1c<\xebr\xe1\xe0Y\xad\x0b\x07z\x0d/\x1c\x82*{\xe1\xe0\x7f\xf5\x92@,\x10\xe6\x89\x95TN\x0c\x07\xefx\x9e.\x04\xef\xe7`6Gp\x9c\x0ea\xf40\xfd,\xa9\x12\xc81\x15]\x18=V/\x92\x86(\xef\x12\xa8u\xd5\xee\x812\xf4I \xdfb\xe4\x1a\x82\x88\x1cra\xdb\xfb\x17)\xd7p\x0fc\xdc\xc7\xe7s,\xe0\xc9\x01= \x04\x01D\x820\xde\x17@,\x08!\x18\x84r\xbd\xfb\x1b\xa0?\xbf\x9b\x9c\xdb\x85\xf2\xba\x10N\x17@X?\x0e\x02cx\xdc\xd1G\xe7\x17\xc7[\xb7\xf2\x1b\x16mH\xf1\xf9\x1c\x1c\xe8,\x90,!\x88\x14\x94\xe0\xc1C\xc8\xf2\x80\x9c\x9d\xca\xd3\xe3\xf39\x1d8\xc2X\xfc84q\x00\xc4\xae)\x86;\xcf\x1e]F9\xaa}(>\x9f\xd3\x80m5\xe3\xf39\x04\xf7\xaaS\x1c\xb9EP,\xec\xdc\x81\xf8|\x0e\xc5K\xe5\xe9\xa6\xf3t\xc8\xd1]oAN\xb6\xf8|\x0eY\xac9\xbdJ\x1e=\x19\xa6\xf3w\xf7|N\xfd\x1eHC3\xfd\x84\xc8y\x9a-E@^\xb9\xcb\xcb'\xe5\xea\n\xbe\x99\xfd\xee\x0f\xf1\xb9\x90\x018\xb7\x95\xdeT\xf1\xb9\x90\xe6+Z\xd2V|.\xa4\xfd+\x05]|.\xa4\x0f.\xa5%j\x95\xd8V\x89\xcf\x85\xf4\xff\xe81/g\x16I|.\xc4\x82\x91\x90A\x11\x8a\xfa\xd7\xfc\\\x88[\x96\xf7;\xd0\x0f\x0c\xe6E\xbaI\xb3D \xda\xfa3m\xc9>AP\xc9\xc9rm2\xe1\xba\xed\xab\xee[\x87H\x83\xb3\x0c.\x98~z\xf0\x04\xaaK\xde\xb7*K\xf8\x85\x93\xac\xfcr\x02\x8bC\xa5\x15\x84\xf37\x7f<\x81\x1b\x8c\x85\xa9G\x16!\xad\xa0\xca\xfb}c]s\xddd\xc1\xaa\x8a\x15\xf0\xf9?,\n\xb6;\xb3\xa2\x99A|T\x05\xe2\xa3*\xf1Q\x15\x97\xee\x14\x1fU\xe9~\xe3\xd2\xde$\xd0\"\xd6c\xd5\\\xda|\xddl\xac\x0b\xb1j\xae\xdb\xf9\x0f~\x1b\x9ar\xf7\x91@\xca\xa6\xa3]\xb8$\xd8\x9c(]\xa0f\xcd\x11y\x07x\xf0\x0fp\xde\xfd\x1a\xf0 ;\xb8$|\x1fH\x17\xea.xP\x03<)\xc2\xc1+\xdb\xcdg_h\xa0oM\x0d\xd4\x85\x02\xff\xc5\x02\xdf\x05#^\xe7\xd1&\x94\xac5\xa7q\xbe\xfe\x90>Q\x97%\xaa\x0bd_\x84\x86\x80\x918I\x1d\xab\xe6\xfa\x8b\xd1X5\xb7\x05\xc7\xa6s\xac\x9a{\xafD\x8eUs]D\xfb\x9a\xab\xe6\xc6GU|[\xc6\xeba\x03\xf1z\x18\xaf\x876 \xf2\x0e\xf0\xe0\x1f\xe0q\xeb\xf0 ;\xf8\xc9\xccx=$\xb5\xa1.\x14\xf8/\x16\xf8.X\xbc\x1e\x0e `$NR\xc7\xeb\xa1\xbf\x18\x8d\xd7\xc3\x16\x1c\x9b\xce\xf1zx\xafD\x8e\xd7C\x17\xd1\xbe\xe6\xeb\xe1\xdf0\xd5'>\xaa2\x84\xf8\xa8J|T\xc5\xf5\x9d\xd7\x00\xc0s\x10\x10\x1fU\x91@d\x00}\xd0\x0c\xc1\xeb\xdd\x92\xf8\xa8\x8a\x1b\xe2\xa3*8Pc\xf9q\x88\x8f\xaa\xd8a\xc4\x80\\*A\x17\xe2\xa3*>W\x96\x06\x02\xact\x1a\x02\xa8\x07\x81\x14\x04\xf0\xb4\xdei\xf0\xb1\x9e\xf4\xc1\xffdh\xf0]p\x08_t\x08]\xf8 k\x9f\x06\x0f\xab\x9f\x06w\x1e\x08\x0e\x01t \xa0\x07=\x93\x04\x87\xf8\xa8\x8a\xdf\xd0\xfc*\x9bH\xa0\xa6\xc3\x90\x11\xd2\xeb\x8f\xd2\x92ip\xb8\x0fr\xba\xd2qp\xb8\x8f\x91\xc5GU<\x07\x17\x1fUi\xc1\xf1\xe7\x15r;s\xa7\xfe\xd09K|T\xa5\x0f\xfej\x17\xc9\xcf\xaf!D#\xa4\xfb\xd54\xc4\x9b\x88\xc7\x19\x94\x10o\"F\xf0?\x12\x1a|\x17\x1c\xc2\x17\x1dB\x17\xfe\xbeo\"\xf1Q\x15gU%\x1c\x827\x06-\x06\xb1\x0b\xbeu\x99p\xf0\xac\xd6\x84\x83g\x0d'\x1c\xe8\x95\x9dp\x08\xaa\xf7\x84\x83\xff\xd5K\x02\xb1l\x94'VR\x91)\x1c\xbc\xe3y\xba\x10\xbc\x9f\x83\xd9\x1c\xc1q:\x84\xd1\xc3\xf4\xb3\xa4J \xc7Tta\xf4X\xbdH\x1a\xa2\xbcK\xa0V\xdb\xf2@\x19\x1fU\xb1}\xea%\xe3|$\x1b\xad\x04\xb4\x06?I\xee!\xc5=f'\xc1g\x8e\x12\xbcy\\\xd0a\x0c8\x88\xe4\x12\xd2\x1a\xbc\x89\x05A\x04\x03\xdf\xd2\xd2\x1a\x82\x08\x07a\xc4\x03\xff\x92\xd3\x1a\xeew\x98!Z\x03\xb5$\xb5\x07\xca\xd0\x87\x06|KTk\x08\"r\xc8\x85m\xef_\xbaZ\xc3=\x8cq\x1f\x1fU\xb1\x80'\x07\xf4$\x10\x04\x10 \xc2x_\x00\xb1 \x84`\x10\xca\xf5\xeeo\x80\xfe\xfcnrn\x17\xca\xebB8]\x00a\xfd8\x08\x8c\xe1qG\x1f\x9d_\x1co\xdd\xcaoX\xb4!\xc5GUp\xa0\xb3@\xb2\x84 RP\x82\x07\x0f!\xcb\x03\xf2\xe4\xc1\x8b\x00\xe0\xcb\xfd\xbd\x08\x01~\xc4\x00\x7f^\x7f\xdc\xe1\xf8pv*O\x8f\x8f\xaat\xe0\x08c\xf1\xe3\xd0\xc4\x01\x10\xbb\xa6\x18\xee<{t\x19\xe5\xa8\xf6\xa1\xf8\xa8J\x03\xb6\xd5\x8c\x8f\xaa\x10\xdc\xabNq\xe4\x16A\xb1\xfcu\x07\xe2\xa3*\x14/\x95\xa7\x9b\xce\xd3!Gw\xbd\x059\xd9\xe2\xa3*d\xb1\xe6\xf4*y\xf4d\x98\xce\xdf\xdd\xa3*\xbd1\xfcO{\x0c\xafd\x0eO \x15\xabkMs\x12\xca?\x9cHu\x93\x0fJ\x85\xac\xed{\xc5\xba[\xa8\xd6)\xdb\xaet\xb9l\xb6\xe2\x12\x7f\xd1\xad\xd3=\x18JM\x8e\x1fY\xf5\x96\xef\xf6Jt\xfb\x89\x95\xfb<+\x99.\x18^\xe8\x7f\x8b\x91\xe9\x84\xe3\xff{`\xc5\xdd\xd3nK\x85\xee\xd3\xc7\xd7\xb0c\xd5e\xbe\xe2\x9d\xca'cf\x8b\xa4d\xb3f\x9a\xb3\xebg\x0bV%\xcff5\x86Z\xab>g\x95\x1e\x82\xdcf\x03\x969d\x92\x92-\xf6\x95\x0et7b\xb2 \xbb2c\xdc}\xc0\xd5\x0d\xdc\xdc\xc4\xc5\x0d\xcc\xc0xj\x0c\xf7P\x8b\x0c\xb1\xc9\x0f\xdel~(P\xe9\xee8\xb8\x14m\xf6%|\xfe\xf4\xf6i\xc1\xca\xfcP,\x19d\xc9N\x9d\xa1C\x96\xfer`\xdb;\xe0\x07\xabJ\xd7\xa9\xba\x85U\xaa\x92\x92)\xe6\xa0dE\x9al\xd3\xbf\xb0\x15\x9e\x0e\xb6/\xf2*_\xe6[X\x1c\xd6kV\xe8\xbc\xf5\x99,\xf9-\xe7\x02\xbbCY\x1fpH*\xd8\xb2\xa44\xd40\xc83\x06\x0f\x9e>\x80\xe5eR$\xcb\x8a\x15\x1c\x13\x13j1\x94l\xb3cY\xcd}>\x7fz\xfb\xb0\x84}R]\x8a\x0ePtu\xc6;\xde\x1bG\xb3>l\xb7w\xf0\xcb!\xd9r\xaa\xac$\xcdT\x17\x82:\x8f\x92\xd2X\x10\xe0\x0b\xef\xfe\xe9&\xcf7[6\x13\xb4X\x1c\xd6\xb37\x87B\xe4\xd0}y,G/P\x96\x97\xf9a\xbb\x82\x85(S\x85gD,\x93,\xcf\xd2e\xb2\x15\x07\x04\xef\xf1\x11\x9bmf'\x9c\x84\"\x1b\xf0\xc1\xec\x01\xe7\x11\xa2\x94\xfbr\xc9\xf6\x15[=\x9e\xfd\x06oz\x96\xc1\x9e\x135]\xb2\x13\xa8X\xb2+\xe1P\x1e\x12>}Y\x01`\x9fn\xf9\xe8\xaa\\L~\x91fIq\x07\xc9v\x8b\xd3\xeen\xcfT9wQ7\x04\xfd\x88\xdd\xee\xd9R\xbf\x1cp(u\x89.\xb1\x19\xd8\xadX\xca\x97\xd9\xdd\x0c~\xcao\xd85+N\x04k\xfb\xfc\xe9-~\xab\x97\x8a\x00Gc,3R./\xd9\x8e\xc1\x97\xcb\xaa\xda\x7f9\x91\xff_~9\x81\xbc\x80,W\x7f=\x11\xbbl\x99d\x90\x8b\xd3$(0\x94$\x12\x0e{Uo\xcc\xd0\x1f+\xaeY!\xc9\xb0K\xf6\xea\x89\x05>\x03q\xdfS\x85\xc9\x84\xdd#\x95\x85\xe9\x13|n\xeb|\xbb\xcdo\xca\x17\x86\xb5\xfbG8[73\xe0K\xae\x0b\x8b\xd4\x93\x14\xf2\xb9,\x0f;\xb62T\x9e\xf8Gx\x99\xc1O\x17\x17\x1f\xe1\xc7\xd3\x0bU\xcd\x9f\x8fU\x1e\xd0;!\xbd\xf0\x9d\xf9\xa7\xfe\x16\xbf\xb8\xdb\xb3?\xff\xe9\xcf\xe8\xc7\x82\x97\x1f\xc4Z\xab=$\xf9\xfd\x89\xac5\x91\xaf\x0eK\x06I\x06\xac(rC\xd8\xf6?\xc2\xcb&\x15\xb5\x14\x0f\x13$\x9c>R\xa8.\x93%\xe7 y~u\xd8\x83JB\x00.\xdcV\x90g\xa6\x83n\x18\xea\xe7Oo\xc5\xb8.\x93k\xb1\xadv\xad\xb3\xb0\x92\x87!\xd1\xd3\xe0\xff}\x9d\xa7+H2\x93\xc1V\x0eJ\x1c\xfb\x82\xad\xf3\x82\x9d\xe8\xc6\x1cgR\xa5\x8bt\x9bVw\x901\xb6*\xa5\x82\x00\x82E\x15\xd7\xc6H\x99<\xe3\xec0\xdb0\xd1@\x9c\xbb\x19<\xfa\\2\x9d%\xcf\xa9\xc2\xb7\x1d\xe73r\xdf%Y\xb21\xcdxQ\xb0\xe4\x8a\xf3\x0e\x85t\xf6\x18\xdf-\xef\xf3\x8a\xbd\x90\xef\x86\xac\x0f\xd9R\x9e\x14>v\xc5o\x96\x87\xa2`Y\xb5\xbdkY\xf1,\xa9\xd0\xf9z\x9d.\xd3dk\x91#\x8b\xc3\x1a\n\xc6\xa5\x03;\x11 \xcai\xa5;;\xf0\xc5\x15zO}\xbe\x16l\x93f\x99I\xc9\xe5j\x9b\x81\xe9\xdf\xed\xd9L\xee\xe7d\x9f\x96\xb3e\xbe3q\xccsq\xdaJ\xc8\xabKy\xc8\xb3>g\x81GJ\x17c\xbb}u\xa7\x8e\xe7c\x14\xd9N\x98|\x16\x06F\"&(t\xcdt\xb7\xdf2.\xe8\xc4\xe6\x87r\xcf\x96\xe9:]B\xc9vIV\xa5K$\xa0H\x9c\xb7\x00\x95\xc2\xe7\x1e`\xd08\xdeq\xd6\xb1`\xba\x14HKa\x18\xe8\x06:\xc9|\x91_\x1b\x94\x0d9U\xb5\x9d\xfb\xd3t\x8d\xe6\xcb\xcb\xec\xeeKs\x8fH2H\x8aEZ\x15\xfc\xf0YF\xa5x\xf4\x00]\xb2\xcd\xb3\x8d\\\x91d\xb8d\x9ck\n\xa6/G\xb5\x18\xaaS\xed>\xb5V\x84l\xb3\x8fz\xe3o\xd3\x85\x18\xaa\xe2\xeb%\x94\x87\xfd>/\x84\xe4\xdc'\xcb\xab\xa7\x87\x8c\xff\x1f\x97\x97r\xbd\x85V\xd2G'4\x1aTy\xc8\xd7p\xa8$\xf3\xd1\xc7\xb9\xe4\x8c/Y\xadRy\xb6a\xc32V\x88\xfaE\xf2\xeaP\xd7\x05x\x89\xf0;\xb9D\xc3~No\x13\xbe\x81\xe1\xd9\x0b\xf8\xc8\xc7\xcb\xcf\xb1\x1az\xd2\xae\xd4\xf9\xfa\xb7\xbf5\x88\xa9\x1f\xf2\x1c\xd6y\x0e\xdf\xc3l6\xfb\x7f\xd1O8\x11\x92\xec\x0e\xffc\x92\xdd\xcdx\xd7?\x14\xf9\xee\xd1:\xcf\x1f\xe3\x9f\xcdf\xb8\xecI\xd7\xf0\x88\xa3\xf8,\x06}\x91?\xfa\x07\x8e\xe31\xfc\xb7\x81\x9f\x9a\xf0\xfc\xd5L\x9b\xe7\x0e\xda\xfc[r\x9d\x8c&\x0e|/t+\x8e}\x04\x15\xd2\xf2\xd1\x0fy>[n\x93\xb2\xb4\x10A\x0e\x897\x90\xf3i5\xc2\xfb\xfd+\xfa\xeb\xd3\xa7|K\xba\xc7t\x9e\xec\x18WA^\xca\xd1mX\xf5F\x9a\x9d\xce\xb2\xb2J\xb2%{\xf4\xd8w\xb0(\x0e\xd3\xd8\x8d+\xfb\xadce?\xdeU\x97yfX[9\xae\x1f\xf2\xfc\xd1l6\xc3\x85H\xbd\xae\x8f\x8c\x7f\x17{_\xac\xb8\xef\x82\xf3\xc6g\x92\xa2oN\xcf_\x7f:\xfbx\xf1\xe1\xd3c\x93\x9d\xa99#\xe6\xcedwFj\xfd\xceA\xad\x1fsC\x11\x12N\xa9\x17\xdf\xc3?\xec\x17\xb3\x1f\xf2\xfc\xbfg\xb3\x19\xbe\x9f\xf8 O\xb8\xa2\xc9\xbfN\xb2\xbb\xfdb\xf6\x9e\xddX\xc6\x9b\xae\xc5\xd7\xff\xe7{\xc8\xd2\xadq\x03\x19\x89h\xd8\xd6\xe6\xef{\x1314W\xa3\x92s\x98}\xcevIQ^&\xdb\x8b\\\x1e\xec\xb1C\x1e\xfc\xce/\xadb5\xb4\x1chW1\xdc\xf7%\x96|\x8b\xecN[~\x07\xd8\x0e%\xa2\xf3\x13\x7f\xe0\xaa\xecCHZR\x95K\\U\xb4f\xd8\x83\xd8;\xc3Nj1\x96m\xef\xf4\xbdqp\xe1\xafUgH\xd6\x15\x93\xda\xdc6A\x0c\n\x0f\x9f>\x1cv\xa1.\xb4z\x88\xf2\x06\xcb\xd4\xfe~\xb0\xce\xf3\xd9\")\xc4\xe4n\x9f\xde\xcd\xfe\xf2@RK\xde\xb5\xf0k\xa5\x18\xca\x03\xfe-&^\xff\xed\xfc\xc3{\xe4g\xbeb\xfcO\x8d\xc5Cj\x8f9?\xd5J5\x92\xb7\xb2C\xc9\xb4Mqs\xd8&H\xf9\xbe!\n\xfe\xf9\x8a5\n\xcd \xb0\xdd\x82\xadV\x8dj\xa3\xec\xa4 b'i)\x18\xd2@\xfa\xe5_\xf9\xc4\xbf\xa8\xeb|\xc7\xf0\xab\xc98\xd3,\xe2\x85\xe1\xba\x90,\xaf8\x8fh\xae\xa5\xebt\xcbpn\xad\xf9\xc9GV\x94yf< \xcaV%\x1e\xb1\x9b\x8b5\xf8\x1e\x9e\xe1\x18\xeb\x8f\x85\xb7V}\xfb\x9c,+8\x98F\xf1@\xd0\xe6\xc1\x0bx\x80\x9d\x8f\xeetgrF\x0f\xb0\xe7\"\x05.1\x97\xf7\xc9\x8e\xe3\xfbg9\xe4\x7f1~\xcc\xe7\xd2\xfb\x96:\xa1\xb3\xb5\xba\x02u\xf7\x84\\\xcd\xb4\x84\x1b\xb6\xdd>\xb9\xca\xf2\x9bL\x9c\xe0K\xf1\x82\xe5\xf2PV\xf9N\xed\xe7>\xc6\xee\x16<\x91\xaavo_\xea'\x10\xebn\xf9F\xcb6\x88\x05Cl\xbba'_\xc4\x81\xd0\xfb\xf02\xdf\xaeTy\xb0fd\xc2V\xa7\xf6/(\xbb\x98\xda\xbeC|\xa2\x9bz\xe7\xc2#\xce 4)\x06\x06\x14m#\xfc\xf3\x9f\xfe\xfc\xd8\xb0\xc9\xc7\xee\x91nG\xe6m\"\xc8\xc0\xd1=\x9b=\x7f\xf6\xbc|`X\xf6\xf6\xbfl!$\x96;\xa7\xd9'\xed\x8c\x8f \xc0\xda\xb90\xfe\xdcT\x84m\xb1\x1a\xedI\xa9\x9d\x0fOJV{\xaf\xf6\xc9&\xcd\x04\xed\x9a\xc1tp6\x1f\xd4\x91MI\xd6\xfeU\xa3\xd7\xee\x9bF\x02W\x98\xfb\x00w\x1c\x88\xc2)\x03\x0f\x84\x91\x1e\xc6;\xbd\xd9\x05\x06\xad^4y\xf8\x7f*\xf3TR\x96\xd2\xee\xf61\xd9\xb0O\xec\x97\x03+\xab\x99\xfc{\x0f\xc9/\x07V\xc8\x02\xbc\x1c\x1d\xa7\x04\x83]^V\xc0\x84\xf1GX\x8bfpV\xb5\xce\xee\xbe\xba\x1b\xd6\xe8\xad\xea\xe7H\xb3\x1cvy\xc1\xb4\x95\xaf\xad\xc2 Q\x12N\xa2 U\x07M\x91l\x02\xbd\xa0\x86\xf8\x8f\xec\xb0[H\x1b\x8668\xb6\xac^\xfd\xf1\xb7 \xb5\xcc\x0fY5\x17H\xfa\xc7\xfc&)\xa1d\xd5 \xa4U\xa9m\xa6%\x1c2\xb9\x99V\xd2\xect\x93\xaa\xa88\x87\xdf\x10\xf3\xddY\xdd\x87\nA\xedDl#xu'\xdf\x8f\xf5\xf6#\xbe\xcfW\xec,[\xe7\xde\xdeC\xa5<\xce\xb3|\xc5\xe6i\xb6\xce\xfb^@\xd2Y\xd1\xc6\x9d9Z?\x14EdF&\xfe\xf2\x1c\xf1\xe8[\xadj\x96\xadf,\x01\x1a\x8e\x10-\xda\x19\x86\xae\xbb\x02+\xd2\xc9\xda\xa6e\xc52\x11`A\xfa>c\xd5M^\\\x91\xbe\xb5,\xe1\xe0\xdb\xe5e\x92el[\x92>6\xf2\xc8]\x9e\xa5W}\x81f@\"\xce\xe6\xe8\xedU\xdd\x9a^0\xb0\xaca\xb1_z\xbdX\xde\xaa\xea9<\x17\x1e\x87\x8b+\xba$\xda$\xfb\xfd\x9c\xfc\xb1\xcf2oR[p\xe4\xe0\xf3\xc5!\xdd\xae\xe6U\xb2\xa1\xed\x8bMnc\x1b\x06\xec+\xb6G\xb1\x0fC\xd2\xd0p4\xe3\x9e\xb1\x87\x11\xec\x93\n\x0d\xdc\xb3\x9e\xfcZ\xd6\xed\xf2\xd5a\xcb\x04\x92\xc1G\x96\xc2\xcb^\xc8\x15\x9e\xc1w%\x1e\xf3F\xc3\xbd\xbcd\xcb\xab\xf2\xd0\xafN\xaf\xfe\xfaN\xf6\xdc\xd7\xef~\x96#9\xeb\x16\xda\x92\xa2l^\xae\xae\xbc\x16\xbd\xee\xec\xe1y\x9a-E%/\x8e\xe7I\xb9\xba\x82of\xbf\xfb\xf6a\xfdmW\xfbl\xc6\x80\xea\x9f\x88\xe4l\x9c\x06\x03lm\xe1?hF\x8b\x18\xd2\xcd\xb8\x80W\xc8|\xc4\xfc\xf9]\xb6L\xb3\x8d\xb7\x94/e\xbb>\xfbY\xe4\xf9\x96%\x99}\xa6\xbd>\x89\x13U\xad\x02\xe7\x89\xe9D\xde\x93\x8e\x81Q\xbaE\x0c\x8c\x8a\x81Q10\nb`T\x0c\x8c\x8a\x81Q10JB\x0c\x8c\x8a\x81Q\x82R10\xaa\x0d10j\x00\xf4\xd8\x9f\x18\x18\x85}\x12\x03\xa3b`T\x0c\x8c\x92\x10\x03\xa34\xc4\xc0\xa8\x18\x18\x15\x03\xa3b`\x94\xe9\xe3\x18\x18\x15\x03\xa3b`T\x0c\x8c\x8a\x81Q\xea\xf7_M`\x94\xcd{w\xcf\xa1Q?\xb5*\x06\x0d\xb6\xf8p{\x0f\xc34\x1c\x0f\x1c{\x1c\x1b$\x06\xc9\x7f{\x0c\xe2\x8e|Q\x98\x8dV\xb4G{\x81\xfa\x18\xaf\xe1\xb9]\xea\x83\xba\xe8C\xb9]B\xe0O\xe6\xba\x1e\xc5\x1d>{\x8b\x900\xd8i\xdc}`\xd6\xda\xac_n\xc6\xf0\x0c\xac\xc7\x0e\x1b\x96\x95r\xee\x8e\x1eS\xb6V\xdaBG\x02\xf68+\xbc\xa2\x96\xc4D\xa8\\6\x88\xbb\xc3+gYd\xb1E\xfeX+d\xa1\x95\xb1\xcc\x0f\x81ZW\xba\xd3\xb3\xfb\xb9N\xe4AN*z\xe3;\x8fT\x04\xfd\xf19_\xac\xec<\xda`\x7fk\x92:\x06\xd3\x8b\x90\xd4\xf6\xc3w\x1b\xa9--\xaf+RQ\x18\xde@\xa46\xb7\xbfT\xb87\xbeE\x88\xe27\xf3\xfa>\"-\x95\xf3\"\xe5\xba\xa2b\xcc\xd0\xaf\xb9t\xa2\x86\\\xf1\xcbM\xdbm\x9c\xc0\xabn\xc1\xa5\xd6\xdf\xce2\xb8\xa8\x05\xf3\x89\xf4\xdf\xe9\x8b\xd8\x17>\xf5\xf2\xcb ,\x0e\x95\xb6\\\x9c\xbf\xf9\xe3 \xdc0]\xcfI\xfa\xea\xcd}\xb5\xbb\xe2\xb2i\xc1\xaa\x8a\x15\xf0\xf9?\x90\x00.\xf7\xeb\x87\xcdH\x15 \x9aG\x0e\x1d\x9a\x86\x8c\x82#k\x1a\xddHBt\xf9\x8cQ\x83\x86`Rk\xf3n\\`'\x1a\xd0\xd6\xba\x13\xf9\xe7\x13\xef\xe7\xa0\xd6\xc7\"\xcf\xd7\x1f\xf6dr\x89Ol#\xee\xdcG\xa8\xa7\x8dsZ\xdfV\xf8\xa1R\xf3i_\xbb\xf8\x14\xe4\xad\xab\xf6\x15/\x93\xed\xf2\xb0MDY\xd2w\xac\xb8\xda2(\xf2\xbc\x92A9- \xb0\xcc\x0f\x8d}`\xc1Z~C\x1d\xb8 \xed\x9f\x1cO\xc6\xb8*\xc6\xff&4\xa8\xb6\xb5/\xe3Z\xcc\"?\xb4&\x94\xe5\xab\xda\xc2\xc79Tc\xd1\x93\xde\xf5\x8b\xf6\xe9L`u\x90ZV\xedC\xd4\xf3\x14\xb7y\xf9\xa1\xbe\x1c\xd4\xce\xbf\xe6\x0c\x11\x8e\x8dBX\x92wB\xbe?r<^w\xab\xb5Q \n\x861\x10\xcfj\x18\x18^\x85;\x1b1\x14\x8f\xcd!=~\x83\x0e\x06\xdc\xdd\xa6\x12\x827k\x07K{\xe3v\xb6\xac\x84\xee\xc6\x950\xdd\xf6\x95\xd0\xdd\xc4\x8ec/\xe4\xa7\xa2\xd7\x9e\xffTc]H\xeb\xc36-El\x99\xfe>\xf0\xd8\x95\xd3\x9d\xbb\xfajM>x\x14\x9dc\x10\x9b\x8a\x9e=\xfc\xe4Uh$\xaa\xf1\x14\xd8\xa3/&\x8c;5G\x9cN\x17k:Y\x94\xa91\xbe\x14s4\x11#K\xa7\x8a)\xb5G\x93\x06\xc5\x91\x06G\x90\x8a\xf9\xf6\x03\x1f\x8d\xb1\xa3\xc1Q\xa3\xd2\x94\xdf\xc3f\x88\x17\x1d\x13)*\xa2B\xfb\xb3A\x9cy!\xd1\xa1\xe6H\xd0\x911\xa0\xa4\xe8Oz\xa4\xe7\x88\x18\xcf\x11\xd1\x9d\x08\xc3\x980\x86s\xda\xe8\xcd\xc9\xe26\xdd\x11\x9b\x93\xc5j\x9a\xa24\xc7\xc4g\xa2\xb1\x98\x15%\n34\xfe\xd2\x18k\x19\x18e\x89\xc4W\x1a\x05%\xcd\xff2\x90\xa0\x81q\x94M\xcc$F\xdf\xdf\xb8\xfb\x1e\x175)\xa3$[\xe8\x86\xf1\x92\x13DJ\x8e\x8b\x91\xec\xed\xf2\xbe0\x1c\x19\x17\xa9\x08\xdd\xc68&\x02\xd2\x1a\xdeg\x88zt\xc6;\x0eC\x7f\xe81\x8e\xc3\xb6\x7f\xc5\xe6\x1a\x14\xd1H\x99\xac+\x8a\xd1<7g\xe4\xa2G\xccb?.\xcb\x14\xa78>B1<6\x11]\x97\xc0xDk$\xa29\x06\xd1\x16}\x88\x12\x8b\x1aq\xe8\x8a5\xecE\x19\x8e\x88/$D\x16\xd2c\n\x9d\xd1\x84HP\xde\xa0;\xe4\x1bW\xd4\xe0\xb8xAtP\xad_FE\x07\xf6\xa3\x01\xc7\xc4\x01\"q\x7f\xa3\"\xfe\xfa\x11~S\xc6\xf6\x99\xa2\xfa\x06\xf1|\xd3D\xf2M\x16\xc37m\xf4\x1e-n\xcf\x19\xb1\xa7\xee\xfa\xaeX=\xf5\x995Jo\x10\xce6\xec\x8d\x1aoe\x8f\xc9#F\xe3\x11\xe2\xf0:C\x9e2\xf6nT\xd4\xdd0\xcan\xba\xf8\xba\xe9\"\xeb\xc2W\xd7\x19M\xe7\x8a\xa3\xd3\\\x1a\x8f\x9dC\xef\x13\x98k\xde\x12)G\xc41&.\xcee\xe6l\x9cRdCg\xb7\x84\n2\x87a\x9d\x15\xe4#\x8a\x93\x0e\xab\xab\x82|\x86\xd5S\xc1\xb0!uT\x8c\xd8\xba\xf5S\xaa#\xf8Q\xb0Z)\xc6K\xaa\xb3F\x8a\xa1>\n\x19!V\x17\x05\xa9\x89\xe2\xc6\x87\xd4B\xf1\xf1\x8b\x82\xa3\x06\n:\x00J\xed\x93)\xeb\x9e\xb4\x0e\xd2\xb2\xb8\xdbW\xf9\xac~K\x94|\x8a\x06o\xb8Z\x99A\xcb8\x81\xbc\xb7Jk\xaa\xe3y<\x9e=E\x1e5m\xcd}\xff|?S\xd7\x1cM-\xf2\xf4\xcd\x15\xd1\xd0cd(\xab\xd6\xaf\x82f\xdc\x9e\xc6\x80\xc1\xaf!\xea\xd0X\xe1\x0cA\x83V6C\xbe\x1bT4\x0bd\xc1\xc3\nf\xb4\xcd\x86T-C\x1a\xf6\xaa\x95y,=^\xa1\xcc@wce\xb2\xde\xf7\xf6\xbd\xfd\xa1\x19,a\x83\x0f\x07\x88\x0c\x0e\x1d\x98}P\x1f\xd5\xc1\xf9\xb9\xbdx\x84\xf1t\xce\x8au\x0d;{\xb3w>\xe8\x0d;g\x82\xd6\xac5\xd3J\x18\xdf_5\x9d\x13f\xd8\x8f\xc9\xf4\xd8Mx\xa9-Gl\xb3\xb1\x0f\xb0\xc6|~\xcd\xb5\x16]F\xef\xb11\xd0=t\xc2\xe7\x88\xc7A\xc3\x84\xb1\xd0`\x8b\x87\x06BL4\xa0q\xd1`&3\xf6\xc4\xb1S&\xf4\x17\xa3\x1b+MB\x81=\xd1i\x88\x9b\x86\xb0\xdd;e\x801\xe1\xe5b\xe3\x08\xc1:J\xd1\xd4\xfcZ\xb1\xc4j{\xa9\xd8\xb4&\x1a\x8e\xf5\x98\xb3\xf3Ub\xe3\x8b\xc4\xe6\xd8k\xa0\xec\x1cS\xf4\xb7%\x0e\x1b\xf0Xl\x08\xe8\xce\x18\x13\x1d\x82l\\\x8c68\xe3\xb4!`L\xa6\x98\xed\x10\\\xc3\xf8\xed\x10,\x96X\xee\x10t\x86\xb8\xee\x10T\xf6\x18o\xb0\xc6y\x83w\x7f\x9e\x01\xd0\xfd\xa8g0\x84\xc9\x92\xd4\x8e\xea\x16\x1d\xbaW\x8dV\x94\xd3\x04\xfa\xb4/nU\x818m4\x14RS\xfa \xa4\x8c\xfcWI\x80\x99\xcc5\xfb\xed\xb3\x81#\xea\xfd\x87\x8b\xd3\x172,i\xbb\xe5\x13\x84:5P\x1c\xa8\x19\xc0\xbf\xb3\x87\x05\x83\xff:\x94\x15$\x9b\x821.\xe0\xd1@\x91\xbc\xe0\x8b!\xcc\xb0\x83~D\x08\xd9\x8e%\x99\x1a\xb1\x1c\xd6\xcb\xfd\xfe\xa7\xa4\xbc\x84U\xced\x98\x83z\x05\x9a#/\x19\x1fN+\xa3Sn\xb272R\xb3e\x15/\x99\x0c&\xe3\xea@\xa2\xfc\xcb\xed\xd7\xa4k\xadE\xa1\xd2[?h\x0b\x0c\x1bC\xd8>\xf0\xaelY\x07Q\xce\xaf\xf3\x8a\xcd\xf1\x81H\xb0Ja\x97\x1c\x16\x06T6\x1f\xc4\xefjp \x07B\x07\xa0\xd1\x18\xffJ\x90\xcb\x12\xec\x8f\xdf\x83xr\xfe\xfc\xec\xc7\xf7\xa7o\xe6\xef\xce\x7f\x9c_\xfc\xe7\xc7S\xe7\x13\xf8x\xab\x8f\x9fN\x7f\xfepq\xea\xdf\xca\xf1$\xbe\xa9\xdd\x87\x8f\x1f\xce_\x9a^\xc7\x87\xc6\x0c\xf1\"`~\xaeR_m8O7\x19[\xbd+7\x17u\na\x94l\xcd(\xb0\xdb@\x17\x88\x9b\xd3\xa5\x95J(\xf2C\xb6r\xf7fS\x7f%\xb4\xba\xfb\xf6\xb9\xf1;\xfcj\xd1\x05\xc2\x19\x07\xe29\x07\xab\xf6\xdd\x00\x91\xa4\xe0\xd2\xc8\xdb\xe0\xbc\xaet\x818k\xf0\x989\x07\xcb\xc5\xa6\xf7!q\x9d5\xd0\xb6\x97\x06\xca\"\x80\xdfB\x80\xcfb\x10.K\xe8\xe7\xc3\xabS\xff\xb3\x1d+\xabd\x87\x18UZ\x1f\xd1&e\xbb\x97w\xa1\xbem\x98\x9fPh\xc0\xb3w+)\x9b\x8e\x0d/>4@\xddO4\xbe\xc1\x99}\xc2\x15kw\x97\xd3\xcc\xd4OLq\xa9\xd0\x8cQ'\xaa\\7\xdeWae\xba\x13T\x02 \xe2\xd4\xd1/\\\xaf\xdc\x17\x8c\xdf=\xa0\xd3\x9d\xf8e]\xe4\xfd\xd7:\x1ah,?|\xa4\xe6Y\xb5\x94O\xec\xcf\xe2\xda\xb3\x88\xd7\x9ex\xed\x81x\xedA\x81\xb89izi\xbc\xf6\x00\x9d\xa4@\x97O\xf1\xda\xd3\x01\xca\"\x80\xdfB\x80\xcfb\xc4k\x0f\xb5\xf7x\xedQ\xe0#\xa6\xe2\xb5gbZ\xc6k\x0f\x0e#\x08\xe9\xde\x9eVl\xf1\xda\x83\xc3D\xd7\x1e!\xa7\xe7\xb6\x82\xb3\xf5\x97\xee\x0d\xe5\x96\xcd\x0d#?~_N\x19\xe9\xd1\x8bM6R\x96\xfe\x8dv\xdf\xf1\xf5?U\xce\xbb\xc6\x91\xa9\xddy\xd2k]\x13 E\xa5\xee\x1f\xd5M\xce\xdb\xaf\xb7\xe9R\x14\xb8\xe1;\x06Y\xe3-\xd7\xea\xe7\xcbm\xca\xb2j\x9eTU\xb2\xbc:\xa6\xf3\xb05\xa2\xb9!tN\x02A\xedt\xf5\x0551\x08\xaa.\xa1? \xf6 H\xf4\"\x0e\xc4N\xc1\xa3c\xb0\xbf\xae\xda\x07JT\xa4\xa1%}\xec\xe09~0\xc7U\xe2@8\xa8}\xd0\x07\x17\x8d\xc1\xc4\x01\x8d\xcc\xc4\xe1>\x06Da+}\xa0G|\x92\xd0\x19+\xe3\xda\xe2@q\xf0\x89\x0e%!\xecG\x90\xdacFq\xa0D\x92\xe2\x80\xc7\x97\xe2\xe0\xb5Y\xdcf\x18\x0d^h)\xf2\xb2\x0d\xc3hV\xc3wa\x83p_55X\xe2aq82\xdf\xa2\x1a\x14\xc0\x9f8@W\xc7\x1b\xf0\xb4\xf6h\xf0\xa4\x12\x04P\n\xc0\xc3\n\xa4\x81z{\xef\x83\xdf\xee\xd6\xe0\xb3\x98\x10\xb6\xa0\x10\xb2\xa8\xdeV\xa3^3\x97\xf5H\x83=\n\x19\x07O\x1ax\xce\x9d\x16\xc7\x8c\x83!\xba\x19\x87cN\xc3\x1a\x8b\x8c\xc31\x87\x03\xc6G\x18p\xa0\x06b\x93\x90\xf5\x83\xb5qp\x87p\xe3pL\xb2\xd9\x82\xc0q8\xe6h\xf00r\x1c\x8e9\x0eG :\x0e\xc7\x1c\x90%\x94\x1d\x87c\x0e\xc6\x1d\x0c\x8f\x83=D\x1e\x87\xe3\xcdc\x82 {\x1c\xfa\xd5\x01p\xf0\xd0M|t\x92\xafD\xb3v:>5\xf8\xaaB4\x87\x86\x86\xa8R\x1b!\xaa\xd4\x02\xfc\xb6\xb5\x06\x9f\xc5\x84\xb0\x05\x85\x90E\xbd/\x95\xba\xf6v\x90\x96T\xce~\x989\x82\x03\x9aO\x82\x83\xf7f\xf4\xdf\x8a\x9a\x83\xcc\xd7\xdbdCm\x14\xb8\xe0\xee\x80\xa7.<\x81Wo?\xbc\xfe\xe3\xfc\xec\xcd\xfc\x87\xb7/\x7f$\x04\x07\xf5\xa1\x8f\xe1\xe5\xab\xf3\xd3\xf7\xf6x\xa6.\xf4\x11\x10\x02\xa2\xba\xd0G\xf0\xfe\xcc\x16\x17\xd5\x85:Jj\x1c\x19\xfc\xee\x0d\x12\xe4AY\xfd\xb0M6\x90f+\xe1\xf4P\x95\xa3\xf5!r\x06Lu\xa1q \xa6t\xd3\xa5g\xb0B\x17\x82\xf6h\x10K\"Dqta\xd4\xd0\xe8f7 $Gs\x17F\x8d\x8fL\xba\x10\xdb8\xc0k\xa1~\x9e\xa7\x1b\x19\xd0\xc7\xe5\xbc6\x1e\x0b\xb7\xacN\x1b$\xa2K3H\x14N\x97\xc1\xd8w\xbc\x12k7\xd1\xb1\xf6\x11\x8a\x0cJ\xadv\xdf$\x8e\xa8\xc0Z\xed\xaed,C\xa23&\x9b\xeb\xb6y\xf4\xcd\x19*\x19!6\xd0)o\xa8R\xa6\x19\x9bk\xe7\xd1%(Qz\x12g\"\x81:\x1f ^|\xc8\xfb y\x1e\xa2\xc1\xe3\x166\xf0\"\nx\x13\x06\xb0\n[.\xf0&\x10\xf8\x13 \xf0\n^.\xb8\x9f\xa1\xf9Jgj)1\":\xbc\xe0\x98\x0b(\x91&]\xf0&\xa6\xef\xc5e\xefz\x1c\x19\x87#\x8eK\x8f\xc85\x10\x8fc\xe9s =\xf8\x94'\x11\xbc\xf6\xb8\x07\x87\xf2 \x04x\x12\x03\xfcy\x93'Q\xc0\x970\x10\xc2\x95\x8e?(?~D\xe5F\xa2\xa2\xb5\x0b\x19\xe8\xb7\x11o\xc6M\xef\xca\xa4\x10\xbb\xde|\xd1:T\xf9\x14\x7f\xd7_\x01\x82.\xa7\xfa\xde\xf6T{H\x92W!\xcay \xb3\xdc\n3dW\xdf7\xb1\xfa\x0c\xbe\x18x\x92\xc8\x87\x89O\x1e\xf8\x91\xb0L\xe6\x93\x05 \x08$\xb2@z\xbc/\x01\x8f \xf3B\xac\xe7\x10\xed=\x84\xe5_\x88\xce\xb7~br0D\x017\xa2\xd3\x05\xf1)#\xc8\xc5\x10\x92\x8d\xc1/\x1fC\xac\x8b!9\x19\xe2\xb22P\xe9#C\x0f\xca\xcd\x10]\xc3\xd0\x99 D\xd5\xcd\xedmL\xca\x84\xf925B\x89T# &\x8f\x05\xea\x01\xdc\xfb,\xe4\x90\xb7!$sC\x00\xd3?*{\xc3\xe7\x9d\x82\xc4-\x81\x10\xc4q\xf9)\":\xf2Y\x82\x9c\x0e\xd1\xcb?\x9f\xbc\x0e>0}\xacr\xd8*\xf1\xad\x12\xdf*\xf1Y\xcf*\xf1\xad\x12\x9f\xfa\x89\xb2\x95W\x89\x0fb\x0bE\xbc\xe8\x13\xaf\xf7U\xe2[%\xbeU\xe2\xd3\x0f*\xf1\xc5\xb2\x7f\xbd+\xe9c\xef^\xab\xed,j\xf9\x9cQ\xfe\x8d\x95\xcb\xa2\x0b>\xab.\x90\x8b\x17\xa1w7~_G\xca\x13\xcd\x90\xda\xbbp\x01\xa2%\x12\xd1\xfd\x8a+\xd1\"B\xa9\xa5\x83\xa2}\x02R\xbf\x80V\x1c\x88$\xe6\x80\xb1\xb9\xa3uw\xa2\xe5\x7fr7\x19\xe7\xda\xfa\xa1\x97\xf5\x81\xb1dOh\xa8\xc3zBO/\xe6\x93R\xc2G\xd0\x15\xbd\n\x10L-\xdc\x93Z\xae'^\xa4\x87\xb0\xa41\xd8p\x02 \x9aX\x1f.\xb9\x93\xd4L\x0c\xe7\x93XT'\xe3\x89\x8e\xc3B\x93\x06\x081Ih|Hj\x9f~H#\x05\xf2h!\xae\x0e\x0e\xaf\x91\xd4B\xfdP\xf6\x91~\xe2S\x0e)\xd3\x0e\xf4\xa9'\xaa\x8f\x93\x97\xc3\x08\xdb\xf4R5\xa4\x11\x91F\x92^\x8c\x86P\x82&W\xf7F\xa9\xf5358\x9d\x8fh}\x98!W\x05{\xd2*\xbe\xe4\x1a\x03\xb5\xa6K\xae\xf6\xe2U[r\xb5\x94P\x97%W\x93\xc4\xca+\xb9\x9a\x83\xa4\xda*'rE\x95<\xfd\xb3\x84\xb9\xe55SB\x95R\xa2\x97U\xfc\x92\xfalBM\xa4\xda \xed\xf6\x0b\x19\xd6\xf4\xb3J3\xe3C\x1a)\x90G\x0b\xab4\x93[\x9a\xf1\x81B\x99\x8f\x1cK\x18\xd9<\x8aiN\xdc\n\xd4\x8d\x10\x05\x942\x9f\x84\xc5\xa0\xd5\xf7\x88g\xae\xd3\xbe#\xd6\xf2\x88f\xb9\xd3>\x8b\xd7\xed f\xc4\xe3\x0f\x15\x1b2_e\x8e(\xe6\x95\xf9\x10\xdc5\xf6\x93\xb0k\x12\x0e0\xb1\xce\xc6\x8c\xc6c\xba\xb6|\x828Z\xe63\xa3\x07\x91\xe1\xd3\xcdL\xf4\n\x19\x02e\x80@ \xb7\xcc\xd0z4\x1f~\xc3C\x90P\xf9b\xdc\xadh\xbd\x8b 7\x0d\xf3\xd0\xb1\xcd\x90P\xe7\xe7\xf6ANO\xe0\xf2\x14\x0eO8\xa1\xc4\xedI\xda\x9a\x04\x05\xab9D\xb7x|sG\xcf-i \x84\xdd\x14=\xb1\xd1\xc1\x00i@@=\xab\xa4\x81\x01mp@?\xa5y\x9b\xa5\x9c\xcf\x9c\xa73z6i'\x934 \xb1\xb3\x01ig2K\x9b1\xef\xfd\xf0^\xac1_C\x81\xfa\x05^\x9a>Z\xf1\n\x05>\xc9!'\x90\xf0=a\xd7\x06\xf8I\x84\x93\xc4xH\x84{D\x97\x96pt\xa3\xbcby#\xda\xf0\x90z\xf8CG<\xb6\xef\x89\xeb\x89\x1f.\xd2Q\x9e\xd9B\xec\xd8&\x1f\xad\xcf\x11&3\x13,\xdfP\x17\x0cbT\x88|oB\xe4\xf7eG\x07\x89\xf5\x05\xda\x90\x00\xe0\x9c\x83\xeb;\xb0\xd1\xd4\xcb \xd5\x10e\xf0$c\xcag!\x7f\x11\x9f\xcf?\xf7a{WJ\xf8\xbe\xef\x0b\x7f\x10\x7f\xe0\x8b\x88\x85+!\xa0_>\xc9a\xfd\xfa3\x8a} =\xc4\xdfK(\x12\xfa/\x9f9 \x00\xfe/ci\x00\xf2\xf9\x0c%\x90\x82\x1e\x1a\xd9B\xd8\x9e\x1f\xf7\xce\xc4|3\x04\xad!v\x1e\x81\xe0\" L\x17\xc4\xefd\xf9$\xf8c\x08\xa3\x03\xe2\x08\x01\x88\x9e\x18\xca\xba\xe9'\xbeE\xf4\x13\x9b`\xa0O2P':\xc9\xfbB\xf0\xbdDM\xc1\x84\x01\xd0L\xbfd\xcbwB\x8b\xde\xa9\x8a\xa6.\xc8\x87\xb2/\xe2\xe79j\xcc\xce1\"\xfa5\x90/\xc9A>\xa4T\x07\xf9\xc4\x12\x1e\xe4\x13H{\x90\xcf/0_\xc9\xe9\x10^rV\xc4\xbe\x7f\xaa|\xa9\x11\xf2!%H\xc8\xe7\x17\x9d\xac\xf86\xf3R\x9an?\xfa\xfe\xa3%Q\xc8'1\x95B>\x94\xc9X\x90V\x81\xd2;4->\n4\xe3B>X\xa6\xad|Vq~\x15\xe7\x87g\x15\xe7\x83-,\xbd\xfeWq~\x15\xe7\x91\x874\xd1\xab8\x0f\x94\xa9Z\xc5\xf9\xa8\x9c\xb5\x8a\xf3\xeaY\xc5\xf9\xf9\x93\x15\xdff^J\xab8o=s\xc4\xf9\x98GG\xbd\x15\xde \xe1\xfb.\x98X-\x9fE\xf4\xef\xb3\xfafl\x19\x17\xa5`\xbb#\xb9m\xfc\x89\xd8\xf2\xa1\xa5c+r~1)$\x1aE\x12\xb4\xe5\xb3P\xd9\x8b\xa4l\xcb\x87 \xe6\xc5\xda\x81H\x12\xb7|\x08\x0d\x01\xb11\xa0\xa4u\xcb'5\xb9[}E\xeb+$\xf4\x17h\xe9\xde\xf2!\xdc\x15\xe6\xa3\x0fX4\xf5[>\xd1\x04p\xf9\xdcg'bG~\xfa\xd0\x13\xc3\xa3\xa4\xc6\xc4\xf1\x99\xe9\xe1\xf2IM\x12\x8f\x12\x94#HM\x15\x97Oj\xc2\xb8|\xe2i\xe3\xf2!o\x84X\xb6\x95|\xc8\xe4bw\x92\xf9\x84\x93\xca\xd5;\xe9\x0d\xd3\x82\xde\x89i\xe6\xf2\xb9'\xdeBQr!m\x12\x80&\x92\x8eO\x82uA? \xb3\x01\x893\x02@\xb4:\xe8\x87\xa2eN\x1f\xfa\x0e\xd5\x0fu\xa1 }\xb1 u\xc1\x92\xac\x14\x93O\xc2\x89_\xf2\xa1'\xb3\xcb'a\xbc \xe3LOo\x97\x0f!\xc9]>\xf7\xd1mr\xca\xb8|\xee\xa3\x0by\x13\xe1\xe5\x93\x96\x0e/\x9f\xfb\x18\x1b5A^>\xf7\xd1\x83x\xca\xbc|\xee\xa3\xed\x84$z\xf9\xdcG'\x88i\xf5\xf2\xb9\x8f\x0e\xa4%\xda\xcb\x87\x9en/\x9f\xfc\xfd\xce\x9c\x80/\x9fP\x1a\xbe|\x88\x175\xf5\x82\xfe\x05E\xc5H\xaa\xbe|Rd\x81\xb8\xe5Y?\xab\x8c\xb8\xca\x88\xb1\xb7!a\xa1 }\xb1 u\xc1\xee[F\xa4@\x04\xc8G\x8e4\x0c\x14 \x9f(\\\x80|\x926V\xda\xb6J\x02\x10\x90O\xf2B\xd2\xc0\x04\xe43\x17R@>3\x81\x05\xe43\x13^@>\xe9 \x03\xf2Y\x045 \x1fJ\xba\x9a\xf9\xe4\x82\x1d\x90O\x12\xf8\x80|\xc8\x9e[\xfbI\xdew\xc9\xec\x83\x08J \x9f\xd9\xdd\xa1\xd9j\xe4\x13\xf5\xd6\xd9\xcf\xec>\x91\xa6(\xd5\x18\x9a\x13\xbe\xc0\xa4\x17\xb2\x16\xa6\xf41 \xd0 H\xc9\x04;\xa0\xc0\x1a\xc8'\x02n \x1f\x02\xef\xa7p\xfc\x18\xdc\x81|h7\x17\xe1\xd6\"\xf4Z>\x94\xbe\xcb\x87\xcc+\x92\x0eA\xc2\x01\x88&[\xeb\x87\x0b[\xc3]]\x10\xdb\x9a\xe1My\x8f\xbaS\xe4DE\xcfS\xfc4E\xcfRt\x00\x10\x1f\x04\xd0NQ\x9e\xa6b\xe7'\xd7\xe9 \x9e\x9d\xf8\xc9\x89\x0e6vj\x88gfQ;1\x8f\x1b\xc4\x1a\xc0\x88{@\x01P:\xd8\xf7\xe1\xb4\x7f\xecf]Z\xc7\xdds\xc2\x03#\xf7\xeeR\xcfy\x0e\x9c\xe4\xd0\x19\x0e\x9c\xde\xc8\xba\x07\x8fQ\xf0\xac\xce'\x9c\xdb\x81\x1d\xda\x97\x84\xb5q7|\xf4H%R\x0d\x1d\x1f\xf2vGT\x8b\xe0\xb7\xb6\xda\x80\x0b\xd833\xd1\xdd:I\xb3\xf3\xcf/\x8a\xb6\x7f\xa7\xcd\x12rd\xce\x19pw\xfe\xc4p#\xbf\x98\x1ai\xb0I\x9c\x93t\xe81\xa08C\x91\xa5=\x13G\xb2 \xcf\x0f\xf5\xc1S|\xef^&\xe3g1\x1e\x1f;\x89\xe7\xa3\xcen\xd4\x97>\x97\\,\xfap\x96\xaf|\x98\xbd \xb9\x88\x8f|\xb6o\x1cI\xb6\x0b\xfa\xc4)\xbep\xdc\x07\xee\x99f\xcc\x04\xee]\x11\x1f\xf3t}\xdbQ\x12\x98}#\xe0\xc3\x9e\xb1{\xf3\xe6\x9fD-\xd5Aq<,\x8a\x07,\xd28\x933\x9f\x98\xa4x_\x9e\xa6\xa8\x85\xd9kY\x0e\xfb\x8e\xa3;\xc7\xe9\x0d\xcdG\xec\xf1\x0d\xa76\x17\xf4\xa7\xa6\x12[\xee\xeb\x8d\xfbxS\xfb\x14\xf2\xe5\xa6\xd2\xc2}\xb6\xa9T\"\xbe\xd9Tr\x01\x1fl*\xa9\xb8\xaf5\xeccMk/\x83/u\xeaCM\x10<\xb2\\\x14\x88O\xd4\xcf\xe1\x0c\"\x96\x0ft\xbd!\xac\x9f\xfe\x13\xde\x10>\x9f\xa3\xec\xcf\xfd&eD}\x89\x91I\xf1\xfb\x0eS|\x86 \xbe\xc2\x04\x1f!\xcd7\x98\xec\x13\xcc\x9d\xe4Er\xe4E\x96!\xb23\xef\x0f\x07.\xe2\x98#RG\xba\x9d\xd1\x01\x17\x82;\x9b\xefps\x11\xeblG\x9bGw\xfecw\xf5\x9eO\x8a\xf8\xce\x99\x1e\xf38=\x85w\xaf\xbf\xfd\xe1\xd5\xd7\x97\x7f|\xf7\xed\xe5\xfb\xff{\xf1j\xb2'\xdd\xdf/\xde\xbe\xfa\xe9\xcd\xfbW\xa1\xdf\xad\xe3\x82\xbd\xf1\xe6\xe2\xcd\xbb\x17\xf2\x9c\x0c'#\xd4\x0fkr\xffCO\xae5V\xb9h|\xac|\xd1d\xdc\xbf\xae{\xad#\xb2\x8d\xea\xd2zF\xbd\xe3{.\x16\xbd\x0b\xbd'G\xf1\x1c.\x84@RT\x1d\xb6 \x83\xa9\xcd\\\x8c\xa0%c&\xe4\x12b\nM\x10EP\xc3gT\x16\x99\x1c)\x8f\x993\x8dL>\xa3\xe6B;a\xc0xI\xa2\xe1\xdf\n\xef\xb43\x9c\xb0\x1bV\x93\xfcj\x92\xff5\x9b\xe4]\x0fp\x02\xd7\xc9\xa0\xc1y\xb6\x9bw\xb3\xf9\xb7\x9aw\xa3\x05wC`/\x04\xb6\xd8<\x92y7W\x86\xbc?\xfdD6U\x12\xbd\xc5>\x1e\x97\xef6==\xef\xb0\x1f\xe4&o\x83Su$&C\xe1\xef\xd8r\x94\xf7\x1dG\xf5\x88\xc8S@\x95\xa9\xc0+WA&\xd9\xca;&D\xbe\xf2\xbd\x8b\xc9X\xb0\x047wb.\x91\xdf\x05<^\x83\x99\xc45\x91$0\xba\xe5v\xb1\x150w\xf2\xa3m\xe2X\xe6\xd4\x0d\xea\xc7A:F\xd7G\x12e\xbdg\x9f\xe6\xec1D\xcd\xa5\xb6\x1e\xd2@\x85\xfa:\x9a\x08\xb6w\xe2\xc4\x0e\xfd\x85Rh\xb9wb\x8f\x95\xbb\xf2T\xf4R\xcb\x1dM\xb0\xb6I\xa1\xbff\xe6!/\xba\xae\xd9\x95\xe2#qH\xb4R\xcc>\xf5\xac\x9e\xa0\x9c\xcf\x1b\xcd\x7f8\xa3\x19h\xf3-\xce\x95\xe9\xbd\x1e\x96\xe1\xeb\xdb\xc0\x9b\xba\xba\x93\x03\x05\xe9\x96dR\xbf6\xc8)>\xd69\xbd\xbe\xcc\xb7\x1a\xa1\xfe\xa7\xaf\x8bA\xcbZ!9|\xcfb\xf0\xc77\x1b\x939\xc0\xbb.\xba\xdd\xb2S\xcb:V\xf7\xc2B\xd2\xb2\x1b\xfeG\x8b\x94\xf8\x8bp\xb0\x18\xa8\xfa\xe3\xf61\xae \xeb\xa6V>\xf8\xcd\xe0c&_\xd8(8\x80g\x85,\x97\xb7\xe59\xa7~\x86\x1f\xb2\xa5\x9eq\xc3e\x8dx\xc4sx\xc2Q\x0fx\xc8\xf3\xbdk\xbac\xd3m\xb6E\xc76u\xb3g\x9b\x9b/\xb7\xac/\xbe\xe4+t(\xaf\xde\xb2\xee\xc4GG^\xa6cY\x97\xc7\xf3\xf1\xf2\xaa\xe8\xb8\x94\xb8\x0b\x1f\xaaS{\xae\xb9\xfc\xf7\x91\xb1\xd3e\xcbv\xac\x8e\xdd\xf5\xeaVP\x1fB\xc7z.@v\x13z\x9c \xb77n\xc8\x8bAlb\x134\x07k\xc9\xdb\xad\xfe\xe3\xe8#\xd2gP~\x05Wo/^\xc2\xcfg\xd6\xde\x05'\xf4]_\xf4\xe7.yBY\xd1V%\xeb\xfa\xcb\xaeoZ\x96\x16\xfdg\x9d\x83\xf9_.\xbdt\xe7\xe3\xa7\x8fw\xed\x9c\xef\xad%\xe6\xd3\xcfRW\xb8\x13k&\x9d\x82b1'\x0b\xac\xd7\xf6k\xb6{\xd9\x945yQ\xf7\xacn\x8e\xc1\xe1\x14\xc7\xe6\x1c<\x0c8\xf7V\x1d\x19\xc6W@\xdf|d\xb5T\x0f\x0b\xd9nY\x0b\xfe \xd8\x08\xff\xd3\xae<\x16\x95jp\x90\xea\x7f\x10\xb2\xfb{~\xd3\x88\x1f\xe0P\xb2j/4\x84\x9a\xb7\xa2\x9c\x13\xe5\xf1T\xb1\xa3\xb8(\x04'\xbe\x92\xd7\n7Y\x7f\x93\x06\"CO\xf7B\xf0u\xbf@\x92qw\xc8'\xdf\x1e\x91\x0fe\xa7\xf87\xbeg\x97\x98\xb2\x8c\x8c\x05\xd1K\xa2\xbe\x14\x87{\xaf?z\xd8\xe9\xff\xe6\x93 \xf7Bl\x87^\x14mq\xa4K2\\\x82:\xd7e\x7fw\xd9\x17\x8e\xfa`\xad'\xe71\x97\x83\xd1\x05\xdf\x98\x93\x0d\xe0\xd7\x0e\xbe\xe6\xf3\xb0\xe3\x12\xa3\\3\x8c\xf8\xb8\x82\xfb\xe1m\xb1\x13\xca\x0ej38\xa3j\xea+&,O{\xbb\x18\x8f\x98\xe3O\xcf\xccy\x82c\xb3?W\xeca\xa7\xa6\x13\x8elw]\xd4ew\xd4B\xeb\xb6\xa9\xcf\xdd\xfd\x0d\x14\xa3\xfe\x0b\x8d\x94\x9f\xb4}[\xdc\nNt\xc9\xeab[1g\xa4\xdb\xa6\xa9XQ\xbb\xbb]n4;rE\x06\x18\x9f\xe4/\xfa\xdeB:\x15\xdb\xc4\xff\x87\x0b0/\xf5\xd6\xbch\x9a*YT95\x8d#q\xad|\xf3\xd7\xc27\x9dA\xf2\xe5\x1a\x8640%\xf1\xe7\x87\xfc\x0fe\x8d)\x8a\xc3Q\xf3o\x18>\x12K\xb0\xe2S\xae\xf7\xa6\xf9\xf53\xebs=I\\\x9c\x96\xa3$\xed\xd9\x91\xf3K\x86\x9f.b\xcb\xc3z\xcf\x8e\xb7u\xebf\xdc\xbaj\xc5&b\xbc\xfc[\xb1\xdb\xb5g\x1dW1\xde\xe5!\xe1!\xbc\x8f\xe8\xdb\xd9!1\x7f/\xbfo\xfa\xa2\xfaUo\xe8h\xa8\x91wsO\xefw\xf3u,\xb5\xdb\x93\xd8\xed\xe9\xaf|B\xaef\xcfa\x94\x8f\xb7\xd7\xf2\xc1\x0f&\xe1\xd3x\xc6\xfe\xec\xa3\xea\xed\xe6\xe6\x0b\x0c\x18p\xc9\x19F\xc8\xa9S\x8d\xfcB?\xdc1\x1e6W\xb6\x97\x0fM\xc2G\xfa1e3EUEYM3D\x0c\xa3IWy\xcf\xe0z\xa9d\xbcT\xc4z\xd9\xc2\xf5\xf9(6\x8f\xbd\xec 7 \xc6\xc5\xe7\\'&\x9d\x99wJ\xd3\x8e\xd1\x01\xc9\x17\xca\xc2\xe8\xa4\x90\xeaf\xb8\x0f\xcc\xa97\xfel\x1c-\xa9\xaf\xc9Y\xa9\xaf\xf8\xa4Q\x17\x03\x1b~\xf2J\x98Df/\xc3\x9f\x94\n\xf8B\xde\x9a\xc9ka\xa9\x901c\xd6dj\xa6\xdfZS>\xce\xb2\xfe\xb5o\xa4];m\xa2=\x03\x9c1\xdb\x13J\xa9S.\xd5\xe5\xe4 >\x19\xe6\x1cg\xcc'W\x05\x17\x7fb=k\xb5/\xc6\xd0\xb8\xcd\x85!E\x10x\x8cC\xe0g\xd4a#Q\xe0\xc3\x98L\x92\xd5`\x04~S\n\xcc7\xa7@\xdcx\x04\x19' \xd1\x904!W7\xf74\x03\x11\xa3\x12\x0c3\xe05,!\xc7%x\\\xd5AU\xf6\xa8\xc4c9\xf0P\x111\xdfuB]J<\xa3\xbb\xe1S\xcf9\x1d_\xb0\xce\xaa\xf1g\xeb\x96\x81\x96\xedXy\xc3\xf6\xb3\x0f\xed\xb47\x10Pir&\xddxU\x99\xa06\xe2Wc\x02\x9f\xc5T\x98\xd9b\xa1\xa7{\x98\xfa\xb2DVt\x88\xf9T\x17\x9a\x00\xa9\\\xd1\xf6-\x18\xd8\xdc\xf4\x0b\x10!b\x1c\xb2\xa43\xf6\xb5\xf1\xca\xeb\xfa\xd0$\x9f4\xfeo\xb2\xefl\xb2G\xa6\xdf\xe2\x12\xde\xf0\x9a\x96;\xf4\x19\xecXu\xb8\xdc6\xf5\xfe\xf2\xb3\x184Ve*\xa32\xe5\xac\xdd\xc4kQ\x1d\x0c-\xbc\xb3U+\x9c\xa1\xaeK\xfe+_\xf2eWn\xc0\xc9\x10ef38\xeb\x94\xd4l!\xe6\xcd\xb9\xef\xfa\xa2\xde\x97\xf5Ufs-I\xf4p\xbe\x85U\xee \x1f'O\xf7~\xe5r\x07\x04\xa7$\xb01Msi3\xfe\n\x8f\xce\xf5S\xadC\xd4\x8f\xdd\xcdev\x94\x1f\xaa\xc2\x8c]\xad\xd9\xa7\x13\xab\xbb\xf2\x86A\xdf@\xdf\x16\xbb\x8fO\xa0\xa8\xaa\xe6\xb6\x83NL\x07t\x85p,\xee\xae\xd9\xeec\xdczF8Y3\xce;2\x1bsO\xfc\xbbJ@\x8e$\x1f\xf3N~w\xbf7\xda\xe8\x959\xb1\xb6l<^\x16\xf4\x98\xa1\xb1\x7f\xea\xa7\xb6\xd8\xf5\x8ez3\xeb\xee\xb3\xa7\xf1\xd5\x0d\xab{;\xdcx\xdc[b\xc2\x80\xdd(,\xb4\xf1\xf9N\x842\xf2]\xc07X\xb9+{q\xd6\x95\n-\x02%\xe1#\xbb\xb3?z\x7f\xcd\xdf\xef\xa0fl\xcf\xf6|\xb3\xee\x8ajw\xae\x8a^\x04\x93\xb7\xcd\xa9-\xc5\x7f\xcb\xf3\xdd\x1c\xa0\xeb\x8b\x8f\x12\xa1\xed#\xabmm\x9e\xef5S~\x91\xa7\xbfh\xd9\xa0\x8c\xd7P\x1cz\xc6\x0f\x8b\x1c\xc6u\xd1A\xb3\xdb\x9d\xdb\x96\xf9\xdc\x0dj\x83\xd8\x92\x92\xfa[X[=\x15W\x8a\xc1=\xc7I\x8f/LLW\xc3\x9f\xd5\xe4\xe9#5K\x0f\x16\x90:\x9e\x1c=d\xcby\xf3BB\xfbglEs\x01\xfe\x9f}\x03[>\x9c\xae\x93K{Q\\\xb1\xb7\xec\xe73\xeb\xfa\x8d\xfc}BD\xda5\xf9\xe7\x9c\x1c\x9f\x08\x06\xc7\xa6\xeb\x81\x1d\x0e\xe5\xaedu_\xddm\xe05\xdfXU\xc5i\xb3\xe3\xa9\xbf\x83rZ\x92\xab\xbff-\x13\x0b_7p\xe4\x1bO\xc1\xed\x98\x9b\x0fI\xc2\x89N\nr\n}\x08\xad\xd2q\xc1gC\xfcG}>nY\xcb7\xb0\xea\x8a\x91.\xe8\xf4\xdf\x9c\xa8\x1d\xdf\xf8\x97\x82\xc8\xf4n\xba-:\xe8X\xff\x04\xca\xbe\xe3\xfb\xf0,x\xf0\xb9\x96\x9bi\x0f\x0d\x9f\x87\xdb\xb2C\x02o=\xdc}\xc2Eg\xb0tE!\x81\x8f\x0f\x9f\xbe\xd8\xed\xceGq\xf4\xf7/'\xaa\x06\x81\x91\xaf\xda\xc9\xaf_;\xc1\x07\x18\xde\x00\xd6=4\xbe`\xac\xb7\"3\x15\x82>\xb2S\x0f\x05\x9f\xa9\xf6\\\x8b\xbc\x04q\x94X\xfb\x04vE\xcd\xb9\x87q+\xf4P\xd4w\"\xa6\x9e\xbc]]\xe1\x85\xbcWW\xcb\xc9\xdf\xf6F\x9d+\xc5\x0f\xb2\xbb\xa4\x97El'\xed\xd5Q\xac#\xefQ\xbf\xcc\x8an\n\xf4\x86t%T\xe7\xdb\xc8L\xcf\x92G\x13%\xd1L2\xe8r\xe9S-\xe5\x98\xa6ws\x8f>SK`Q\x0eT\xdeY>Ecn\xa0\x91F\xa7\xde\x11\xd3\xb7w2\xcf\x0db\xda\xd1j\xfc\xe9\xa2bE\xc7\xa5\xb1^\xa1.}\x90\xd4t\xea\xe1\x07\xe9\x9a\xec\xe1\xd4\x9c\x14\x7f\x17\x0d\x94\xdd {<1\xc8\x95|qM\xfa\xe2\xa8\xb0=t\x8c\xd3\xedYu7\xba\xee\xce\xa7\xab\xb6\xd8/\xf2\xff\"\xc0\xc1^\x03\x8d\xdf]r\xa9\x1a\xb1\xdb\x04\xcd3\xa1\xc4o\xd7\xe1a>\x7f,>\xa94\xc7\xae\xfc7\xf6\x84\xcf\x89\xe8\xc0\x06y\xf7\x87\xa6g\xcf\xe1x\xeez~5^\xb5\xac\xe0[\xb5\xbf.j\xf8\x0d2\x90\xab\xe2\xf3\x0e\xe3\xaa\xe8\xe0\xc4Z7\xafV?x\xff\x9b\x16\xd8\xcf\xe7\xa2\xe2\xa7\xfa\xe9\x97\xd6g\xd6i\x10 \xed\xcas:\x80\x85U\xe5\x91K\xd6\x8dQRXL\xa4\xd9<\xb3jk\xebg\xe6\xee(\xae\xd8e}>J\xcc\xe0\xbc\xf3\x1b3\xd7\xc9Y\xe6\nWs\x18\x06%w\x8c\xe8\x0c\x1e\xb5\xa8\"\x10\xca\x9dh\xfd\\\x15\x82\x0bj\xf6)X\xa4d\xae\xcf9\xf9\x17W\xec\xebs+\xaf\xfeg\x08\xb5\x7f/nX\xcb\xbb Qa\x917\xb8\x80\xf6\xd7\xe9\xea\xeb\x99\xdb+\xda\x89\xf36\x7ff\xa4\xb8\x88\xf5\xf3u\x0f\xddus\xae\xb8\x98\xdaJ\x0e\xb6W\x12P\xcd\xef\x94\x87\x1d<8\xd7\xdbF\n \xf2\x82}\xc07\xabP\xd9\x10\x82]y,\xab\xa2\xc5\xda\x1a\xa2\x0f\xc4\xdc_\x17\xf5\xbe\xe2D\xff\xfcC\xc3\xaf\xbc\xab\xa7/\xfa\xa7\xef\xfa\xe2#\xc3\xbe-\x04^~\xf7\x97G\xd7}\x7f\xea\x9e?{vU\xf6\xd7\xe7\xedf\xd7\x1c\x9f1\xa1E\x9f\x8f\xcfn\xcb\x8f\xa5\xfc\x9f\x8b\xb6i\x0eO\x9b\x83$\xf8\xf4\x9b\x17\xff\xe7\xbf\xdf^\x17\xfd\xd3\xb2{\xda_\xb3\xa7\xb5j\xb1\xe8\x9fv\xe2\x85S\xdbl+v|Z\xd4\xfb\xa7\xd7\xcd\xed\xd3]Q?-\xfb\xa7[\xf6\xf4P~b\xfb\xc7\xd8J\xde\x1b\x87D\x97V\xdc\xfd\x1dSb\xe3\xb1\xf8T\x1e\xcfGq\xc8E\xd8\x90P\xdd\x07\xbc@\xcd>\xe5\x15\xb6+\xa6\xa0\xea\xfc\xd92\x03EP\x80\x15ve}U1\xcd\xb8\xb0E\xa8\xf7z\xb7\x1c\x8a\xaa\xe2\xdf\x1f\x9a\xb6/\xb6\xd5\x9dP\xe6[\xdd7\xc5\x82\x14\x0bG(}-\xb1g\xf8e\xfa\xe5o\xfe\xf1\xff\xfb\xa7\x7f\xf9g\xbe\xa7\xbe\xfc\xe3W~\xc6\xa7k%\x0cYL\xbd\xb8\xf8\x19\\7\xb7p\xcb\xe4~bV\x01\x85cQ\x1dX\xd1\x15\xf5\xce\xe2\x84\x83H\xb6\x98\x15*P\xa9K\xfe\xa9w+\xcc*7\x86\xec\x9f\xb0Yk\x10D\xd5\xfc\xb4\x8c\x93\xd8\xf5\xd2P'\xb0\xa0\xa4\xa9\x8bw\xd5\x8c\x8f\xe4*\xe6\xb9sj\xbaKu\xe6\xdc\xb1\x0e^|\xf5\xf25'\xc1?\xaf\x8bcY_=\x11\"\xd0\x8bcY7\xfc/\xf6=\x8d\x17JH\x9f\xdc\xfb\xabY\xf0\x93\xec\xe1\xf4\x16\xe53%\xc6j\xc0 \xe8\xd1\x98\x03,\xb6\xbbr\xf1\xe8n\x9a\x9e]\x0e\xf8\x1e\x9d\x8a\xbbr\x12\xf4\xf5C\x1a\xf7\xdc\x0b5\xd8\x17>?\x87\xf2j\x80\xab8\x94m\xd7+8\x00\x84\xd6\xfe\xcc\xbb(u\n\xec\xe4\xdfX\xb8&\xddh \x95qg\x1b\xf8Z\x12\x10\xd7qwb\xbb\xf2P\xb2\xbdj\xef\x89\x87) \xfd\xb4r\xcc\x8e\xfc\xe9\xce\xdb\x8e\xfd|\xe6z\x99\xa4\xd1=A M$\xa3\xdc7b_\xab\x0d\x81u\x9e\x1f\x1b\x03\x95E \xdd#\xef\xe9Aq\xa5\xa3\xdc3\xa9\x86\x88\x8f7p\xd1\x96M+\xb4f>B5.1-\x08\xa1\xe9D\xd5M\x8f\xb5\xb7e\"(\x90\xf3\xd0b\xb7c'\x05\x0ck\x9cr%\x1a\xd6\xac\xbfm\xda\x8f\xb8,\xf0\x86\xb3M\xb5\x0eO\xbc\x0b\xb5\x13\x02\xab\x06\xd2\xc1\x16\xc48=e\x0d\xaf8\x89\xfdOM\xcf\x9c\xe2\x1d \x14:mt\xefmX\x1e\xb1\xa8j\x04\x92\x14\xf2\xf5O\xac-\x0fw\x9c\xf8\xabaQ\xf8\x86\xb8*oX\x8d\xcaen;}#!\xf0\xae\x99\x80 :5\x16\xec\x8a\xdc\xcf\x08\xa5\x8b\x96\xabpLC\x8em\xfc\xec\xc69s\x9c\xc9\x8c\xccG\x1e.8\x9cka\x82(\xaa\xb2\xbf\xd3;\x7f\xa7;\xfcb\xec\xf0\x84\xd8W#\xd2\xcb\xeb\xbag\xed\xa1\xd0\xb7] &b\x12\xac\x89\xe2Y\x0c&t\xe1\xec\xe0s\xf2\xe9\xd9T\x8b\x1e\x83\x977\x18\xa6\xde8P\xb2)\x80\xc8\x17\x83\xa6\x1d\x9b\x0f\xfa\xd7b6\xdf\xf3r\xb9e\xdcM\xf32\x83\xe0\x84\xab\xcd\xe7f\xf2(\x19\xa4\xfc\\l\x1e\xf7\x9a\x0e\xdb 8\xe1Z\xcb\xb8\xd5\x1c.5\xe1I\x065\x0fwJ\xe0J>\x1edPs\xb8\xd1r.\x84r\x1f|\xa7/\xe36\x06\x7fQ\xf4,.\xe3\x1cy\xc3>A>\xf3\x886\x95p\xbe1\x83\x0c\xc5\x9eD\xb0#9\xf6\xa3\x0c\xdd\xf2\xda\x87\xc8v\xa1e\xf6 g\xc5\x06X\xb2\xc4UC!\xd5HVJ\x8f\xf6\xec\x95q\xfd\xf2\xad\xcf\x18GY\x7f\xa0\xed\x01\xf0\xd9\x113w7h7$\xef\x0dX\xbc?\x00\xb5\x15&\xaen\xc8>8c\xde\xc2\xe2T\xaa=0\x9f-0l\x07tl\x80a\xfb\x1fM\xf1'\x8f\x1e\xb7\xf9e\xb5\xf7yl}s\xed|\xbf\"\x1b_v\x0e\xe5,\xdb2{\x1el\xa7\x9aW\x8a-/\x8f\x1d/n\xc3\xbb\x07\xfb\x1db\xbbK`M\x01{\x9d\xcfV\x17\x08z\x9e\xec\x03\xbf}.\xa7mn\x9e]\xce\xb1\xc9%L\x9ac\x87\x8b\x9e\x82s@\x01[`{\xb3\xedn # \xea\x94@\x19[\xea\xe5\xb4T\xc7\x9c\x90C\xedj\xcb\xb5\xce A\x8f=-\xa3\xf6 A\x0d\x14rh\xa1\x18=\xc4~\xb6L\x1b\x85\x0c\x1a\xe9\x84\\\xd8f\xb6P3\x9dP\xf3\xda\xca\x96k\xa8\x10\xb2\x91\xf9\xcf\xcc2m\xd5 D\xb4\x8b\x0d\x8cz\xa2\x06\x8d\xaci\x0c,\xd9\xb5e_\xee\x8a\xca\xcc\xd9\x97\x9b}\xb8\xccF\x93\xa8X\n\xde]]\x17\x157\x91\xd9\xd7\"Y\xf9\n \xd9 J\xaa\x7f\x1dR\x84\xea\x05\x02\xf5 B\x1b\xe4\x1ca\xda\x12\xa4\xfdBt\xfcV&\x8d\xd0\x15\x9c\x97 \xcd\x98\x98\xd8<\xd0\x11\xb4Z\xda~\x8cy\xa3_s\x19\xb3\xd8\xf5%\xbf\x94{\xc6\x8f\xd1\xb9;\x17|\xb8R\xe38\x95\x15\xef\x91\x12\x01\xb7e]\xb4w\x12j\x8d\x9f|d\xb6\n\xc1\x80\xee\xdc\xa6\xd8\xa7\x13\xdb\xf5P\xf6Z\xc2\x1d#\x86{\xf6I,\xd5\x8b\xfan\x03\xdf5\xb7\xec\x86\xb5O\xc4\x95\xfd\xe3\xdb\xefU\xe0\xb4C\x8f\x93\x98\xd4\xbe\x91O\xb7\xbbfG\x06\x1f\xf8\xfd\xfd\xe1\x89\xfc\xff\xee\xc3\x13~m\xd4\x8d\xfa\xf5\x89\xd8=\x9c\x136')\xf1Vw\x02\xa5\xf9|r\xe8\xc9b[H;\xac\xbd\x91V\xec\x1e\x8e\xc5\xa9\x93[A\xf4\xb8o\x86\x8a\\\xc2\xe7+\nztPtphD\xf4\xfesd-\xfe\x1e^\x1f\xc6\x1e\xf2\xe5\xd3\xd5t\x86A\x884\x87\xae;\x1f\xd9\x1e\x89\xf7\xfa{xQ\xc3w\xef\xdf_\xc0\xb7\xaf\xdeku\xea\xc7\xb7\xdf\xcb\x03u'\xf2$\n\xf8\xf3t;\xbe\xbf;\xb1\xbf\xfc\xf9/\x0e9\xd0)d\xb5^w\xc9\x8f\x9f\xc8\x1a3\xcd\xfe\xbcc\\2cm;\xc2)Z\xbd\x19\xd9\xaf\x0c%\x17\x99\x0b:\xa2~\xc7\xcfj\xd3|<\x9f\x86\x0c\xb8m!4\xc4\x1ae+\xc0\x87\"\xda\xbe.n\xc4\xd2\x1f\x8d=\xba\x97\x9b\xb4\xd0]\xe5\xff}\xd3\x94{(j7(\x0cT\xc3\xe2\xf8\xb5\xec\xd0\xb4\xec\x89\xfe\x90\xd3+\xfar[\n\x1d\xa8fl\xdf\xe9\xbcE\xce\"\xda\x1b6\xd5\xafA\xf0\"\xce\x86j\xa1\x967\xf2ll\xe0\xd1\x8f\x1d\xd3\xf7\x0e\x1f5\xdf\x1e\xe2\x12\x15\xfb\xa3\xa8mq\\?\xdb\x96\xc9d\x02Ep\xf3\xd8]i\xe9\xa7\x10\xd2\xbe\xad\xb3\xa93/R\x08\xea\xbe\xba3\x93\n\xf1imD&\xa5\x9bK\xa8x\xf5\xf6|\x80\x96\x89h}\xe97\x17\xa1\xf6\xa2\x11\xa1\xce\x8b\xdc\xbfa\xdfo\xd9U)R\xab\x1cb\\\x8cG\x98\xeb\xdd\x89m\xe4~,Ne\xc7el\x8cK\xbd\x13'\xa2Sr\xbep\x1bMN7>;\xd7\xfc\xff\xf8\xbd#\xd7\xb1\xc3N\x89{\xe16\x078\xf7\x92A\xe8\xe3\xd7\x81DF*\xe5Y\x84+V\xb3V\x18\xa2d\xce\xd9\x80:\xf8b\xc2\x8f\xe4\x12\xd8\xf4_}*Dn\xd7\x97\xcf\xe1\x82\xf7\x8f\x9f;\xd5\xd5\xc2,\xf5\xf8\xf2\x1f\xfe\x01\xb9\x06\xbei\x1a84\x0d\xfc\x1e6\x9b\xcd\xffp~\xe6\x83-\xea;\xf7\x87\xa2\xbe\xdb\xf0\xe6\xbei\x9b\xe3\xa3C\xd3_\x1e\xe0\x11\xff\xf4G\xd1\xc1\xf7\xcd\xa3\xbf\xe3\xdf>\x86\x7fGx\x1b\xf6\xfd_\xf1\xb1\xff62\xf6?\x147\xc5\xec\xc1\xc3\xef\x85\xac\xc1\xa9\xce\x18i\xd9=\xfa\xa6i6\xbb\xaa\xe8:\xcf@e\x17\xf8\xcb\xb2\xef\xc6\x07n[\x7fu\xfe\xf2\xec\x19\xdfN\xe1>\xbc+\x8e\x8c_\xdd/do\xaeX\xafT\xe5\xd7u\xd7s\x85\xf6\xd1\xe3\x94\xce\xa1\xdfc}EW\xebw\x91\xd5\xba\xb8\xeb\xaf\xb9\xf2\xe5\xd0\x93}\xf9\xa6i\x1em6\x9b\xc7\xd8\x9e\x94k\xf5\x08\xfdM\xecW\xb1\x82\xd4\x05\xe4\x1f\xbd\x963\xf6\xf5\xabw/\xdf\xbe\xbex\xff\xe6\xed\xe3)\xff\x06E^\xeei\xbc\x01\xd9\x04:\x1b\xff\x18\x99\x8do\x1bw\"\xc4L<\xff=\xfc\xddi\xbb\xf9\xa6i\xfe}\xb3\xd9\xb8\xfb\x82w\xea \x17\xb8\xf8\x9bE}w\xdan~`\xb7\x9e\xfe\x95\x07\xf1\xe6\x7f\xfb=\xd4e\x85n\x04t\x92\x90\xed\x88\xbf7\xe90\xf2\x99\xea\x81\xec\xeb\xe6\xc7\xfaX\xb4\xdduQ\xbdo\xe4\xa1\x9b\xdb=\xebo\xef\x05@\xc6\xee\xe3\xc0g\xcd\x12\x94\xa7\xe9M \xbd\x04w\xba(/\xbf\xf6mr\x0f\x11\x91\xe4\x19\xd7\xff\x84\xa9c\xc3\xc5\xb7\x87\\\x8e\x1fn%~c\xe9R\x7fr\xadm\x82\x03\xfb\xaf\xab;\xad\xb38\n\xe5 \x1a\xaa\x84\xd0^\xeb\xb1\x0f\x9f=\xb4\xc9)\xa5I7-\xb5$\xa6\xf6\xdd\x83C\xd3l\xb6E+:\xfd\xe9\xd9\xdd\xe6\xdf\x1e\xc8\x11K\xd9\xdfUcD\x93\x0f\xf8{\xd3+\xe8\x0f\xef\xde\xfc\xf0\x85;\xd3\xfc\xcf\xa3\xb6,%\xa4\x86\x9f*%\x1eH\x8dA\x18\x93z\x11\xe4zuv\"\x17\xdc\xcf{\x81k<^\xecO\x80\x1d\xb7l\xbf\x1f\xaf\xf8'\xda\x0el\x932.\\\x99\x06\xfe\xe1\x7f\xf1A~P\xb9\xb6\x96EHO\xd9F\x1f\xd3\xe7\x88\xc8[\xec>\xf23:\xaaH\x87\xb2b.\x17\xd4g\xf9\x82\xb5]S\xa3\x9bW\xd92\x84\xab\xf1R\xcc\xf3\xef\xe1K\x97\xd2\xf0\"_n\xfd\xdeo\xa3|\x97?X\xab\x0f\xc4\xf8\x1f<\x87\x07\xd8>\xb6\x87\xb5\x91\xbd\x7f\x80E\xfb?\x10\xfd\xfe\xa18rZ\xffSv\xf1_\xd1\x17y\xbf'\xef\xc5:\xff\xfa\xa0Du{\x8d\xe5\n\x95\x1d\xdc\xb2\xaaz\xfa\xb1nne\x90\xf9\xb5\xc0lP\x19\xfcr_\x9a\xd4\xec\xed\xf4D\x8a\x8f\x93=6\xc2\xc3\xa8&\xf9\xc6\x11^5\xb1ml\x82\x1f\xc4&\xd6{\xe8\xba\xa9\xf6\x16\x86\x808\x02e=\xec=\xed\x1eS[\xcf\xa6%\xc8\x0f;\x0e\x1e\xf1\xd3\xaa\x87\xeb(\xe2\xda.\xf4\x97?\xff\xe51\xb29\x97\xac\xb7\xdd\x00\xbe\xe4b\xd8\x9c\xd4\x97\x9b\xdf~\xf9\xdb\xee\x01\xb2\x8c\xfa\xbf,=a\xb0\xa7\xb7\xac?\xb7\xb5,\xc0\xa0\xff8hK+\xf8\xd1\n~\xf4k\x05?\xb2\x936\x10\x0f\x00\x05f\xdb\xf8LQ{{\xf1Rw\xd2A>\xc2\x9d\x0f\xd9=\x0f\xa43\xd1\xa3\x0e\x05\xef\xf2G\x92n\xf2\xb9\x12\xfc\x8e\x84|n\x84lN\x04\xaf\x0ba\x81\x03!\x97\xfb \xec<\x98\xe5:\xc8\xeb8\xf0\xba\x0d\xf2:\x0d<.\x83\x85\x0e\x03g\xba]9;\xb7\xb3`\xa1\xab \xb3\xa3`\x81\x9b \xb7\x93 \x9b\x8b \xaf\x83 \x9b{ \xee\x1c\xc8\xe6\x1a\xf09\x06\x96\xb8\x05P7\x00\"\xb9\xba\xfcf\x99\x0b\x001\xf9\xcf4\xf8#\xe6\xfe\xa8\x9c\x14\x16\x1e\xddL\x83yf\xfe\xd1\xac\x8f\xcd\xef\x17\xf1\xb63\x1b\xf8]\xf3~\x06\xe3~V\xd3\xfe\xf42\\h\xd6GL\xf9K\x0c\xf9AK\xb6\xc7\x88\x1f5\xe1\xbb\x165\xba\xf9\xde\xfd\xf6\xaf\xd8Xg\x19\xee)\x83\x8d\x19\xed\xfdc\x8b\x1a\xec\x13\xcc\xf5S3\xa7\xcfT\xbf\xdcP?\xdfL\x8f\xae\xcbL\x13}\xd0@\xef7\xcf\x87\x8c\xf3\xe8dQ\x0d\xf31\xb3\xfc\xc4(\xbf\xc0$O0\xc8\xd3\xcd\xf1Qc\x7fu\xa3\xc6\xf4\x98)]r\xe9\x80 r\x8e\xfdQ\x7f#\xcc\x8e\x92\x96cu<0v\xd5\x16u?X\x1d\xbf\xe5\xff\"[\x19\xc5\xb7\xcc\xc9 %\xa7\x82\xa8\xef\xf5ht\xbd1\xc5\x92\xce\x1dk\xe5+b\x17\xd5\xd2\x12P\xa8H\xfd\xfe\x9a\x95fb\xf4\xe1\\\x8f\x95\xa8$a\xc7\xfa\x99\xd81\x16\xea\xd8\x96\xf1^\xc9\x17\xf7\xd3\xde\x19\xa4\x8aZ\xaa\xa8\xfc\xa3\x87\x9d\xdd\xcd\xe1\x13\x8f\x0bd$\xa9\x00\xc9\xb9|\xd5\x1cd\xd2\xcf\x13\x95\xf1\xc2\xffK\xdbH\x0e\x8c\x8d\x1f\xcd\xf2\x87\xf4\xab\xedw\xb5\xfd\xae\xb6\xdf\xd5\xf6\xbb\xda~\x87g\xb5\xfd\xae\xb6\xdf\xfft\xb6_\xe5\x99\x17\x02\x1f\x94S\xd8\xfe\xff\xfd\xd3;Q\x05\xa1o\x80\x9f\x99\x96\xf3\x00!\xeb\xc8i\xe2w\x98\xe6\xbb\x01iR\xbb\xcf\xa5<\x92\xec\xc4\xa6\x8bG\x9c\xbf\x19\xff\xd4R\x19\xdfyZ\x94\xdb\xdeiqs\x96\\\xe4\x88\xba0_,\xca)\xf6\xc2T\xf4\x05L\xfc\x85\xa5\x9d\xcd\"\nCD\x1c\x06|\xcd\xe1\xbe\xc4b\xf0m\x01\x08d[\xfa\xf3-\x83i\x1e\xb1i\x86\xbc\xe22D\xf2.s\x8a\xcd\x90St\x86p\xf6\xe5\"\x11\x1a2\x8a\xd1\x10\x15\xa5a\xae8\x0dKDjl\xc6D\xc2w \x13s\x81h\x8d\xd0\x926\x1do6\xe62\x11\x1b!\xc7\x85nT\xcc\x86\xec\xa26,\x17\xb7!\xbf\xc8\x0d\xcb\xc4nX&z\xe3G\x14\xedd6\x81\x1c\xb2\x0b\xe5\x90S0\x07\x92p\x0e9\x05t\x08fn.\x13\xd4\xb13\x8efo\x12\xc5wX,\xc2#\x04\xb1\x1c\xce\xd9\x82=\xf8\xf28#W| \x97\x93r\xff\xcf\x14\xf61\xb6\xe7\xc9\xe8\xcc)\xf4\xc7bfm\xa1\x9fb\xb1\x1e>J2Y\xdb\xedu_\xdd}+\xc5\xeb\xf9\xea\xc6<\x80\x162^\x07\xaaJ\x04wVl\xeb,P(\xdc\x0d\xce\x15\x0cW.\xf7(\x15\x19\xba\x9dM\xb5\x88+\x17^\xf5\xe2\x1e\x15\x8c\x80\x8a\x11R2BjF\x84\x0b\xc5'\x1e\xf2+\x1b1u#\xb7\xc2\x91Y\xe5\x88(\x1d\x8b\xd5\x8e\xbc\x8a\x07E\xf5X\xa0|\xe4U?H\nH^\x15\x84\xa0\x84dWC\"\x8a\xc8\x14\x98\xcc*\x0cU\x89\xc9\xac\xc6\x84\x15\x99\xec\xaa\x8c_\x99IPg\xe6+4(1\x9f\x9fB>\x0b\x94\x1a\xafZ\x13\x15)\x82\xaa\x0dM\xe2\xc8\xa7\xde\x84 k\xf2\xaa8\xe0\x15\x0d\xd5\x85&\x98\xc1\x96\xb1\x1a\xca\xae;\x8f8\xc3\x13_\xc3\x9cl\xd7\xa26\xff\xaaU\xa55\xdbu\xcdv\xbd\xe7lW\x9f&\x1d\xd4\xe1M\x1a\xcf\x10\"\\\xa7\x1f\xb4y\xdd\xfbw%W\xc5\x94j\xff\xb4\xdb\x7f\x84\xdfl\xfe\xf1\x9f\xe9\xca\xfe\xaa\xe3\xaf:\xfe\xaa\xe3\xaf:\xfe\xaa\xe3\xaf:>\xf6\xca\xaa\xe3\xaf:>\xf2\xac:\xfe\xf8\xac:\xfe\xaa\xe3\xabg\xd5\xf1\x1d\x1d\x7f`5\xfc\x9f\x0f;bd\xe1\xaa\xed\xaf\xda\xfe\xdf\x9a\xb6OR\xf2\x1d\xf5>\xe4\xa9\xbfjn67_n\xbef\xa7\xa6+\xe9Ie'U\xb5\xea\xb2\xdcOu\xf4\xc9\xfaP\xea\xde\x19\xd4,\x189\xa9\x01A\xb9\xd7|\xe84)\x96\xb5\x97\xddv+\x1e\x86\x92\xc8\x86\x8f\xac\xb6\xd4_\xb5\xf2\xcb:8\xb4\xcd\xd1juL ;\xf2U\xbf_\xe3\xc4\x9e\xd5\xcd\x91\xac\xe3O{\x14|=\xc4*^6\xa5\xc1\xee\xa0o>\xb2Z\xe5\x15\xcb.i\xe6\xc7\xef\xfa\xa2V\x0dO\x84WY\x9d\x86\xabQ\xf2g\x95z\\\n\x06\xfa\x9a\xf3x\xa1\x15\x0c\xb7\xa6\x95W*\xb7\xa8E\xaf+\xaf\xea\xa2\x17\x95\x00[\xf6\xf3\xb9l\xa5 \xf7\xaa\xb9j\xc4\x85\xb5\xc1\x17Z5.\xf9\x9cZ_\xf9\xe5\xb0\x056\xee\xd9\x1b&D\x9d \x93\xf9+\x8a\x16-\xfe\xe7\x9d`\x03\x83\xe1\x84\x0b\x9d\xfc\xaf}9\xdc\x9a\xe6\xceE\x8f^b\x1d\x9ecY_\xee\xcdC\x0b\xeb>\xfc\xb5\xee\xc3?\x96\xb5\xa8\xda\xa5Y\x8c\xa8 9\xec\x08\xbe[\x98\xb0\x1a\xde4\xc20(\xadZ\x9a\xd6\xb1\xf8\xa4\x17\xfaR\xfe\x92\xc2\xeb\xa6E\xddD?$\x19\xd1\x8d\x17|\xa4\xd7M\xb5\x17\xe5\xfa\x9a\xa1\x8b|b\xc7=\x0b\xaf\xb9&\\\x98F\x05)\xbe\xc2o\xcd ?6u\x7f\xdd!G\xca\xda\xe2\x13\xa0P\xf1\xa7\x83`\xc6\xe2%QR\xf2\xaa\xb9am-\x0c\x7f\x16\xf3\xb5O\xcezd\xd6#\xf3\x9f\xe8\xc8\x80\x1a\xcd\x8c>\x0f5#\x95\x9c\x84N\xcb\xcf\xe7\xa6=\x1fS\xc8Z\x1bL/\xc9\x89\xb5;\xae\xe9^\x19\x15\x08E\x95Da \x91\xaa\x84\xa8\xf3*\xd7L\xca\xd3\xf2\x126w\x86Q\xbaV\x16\xaeU?\xf6\xd7-\xeb\xf8\xf4\xa6t\xf4_\xd1\x8e\xf2\xb5h\xf5\xb4\xfc_\xd6\x89nIfc\xee$\xae\x01m\x86\x92\x85\x8e^\xfe\x9b\xcd?\x0d\xeb\xc3\xfa\xe6rV\x07\xd1\x99\x94:As\x80\x9f\x98\x9a3\xb1\xa1\xde\x8b)\x95\xff\x14\xcb\xea\xf4\xd8\x9eI\xde+Q\xc8\xd8\x1a\x01|\xf9\xecw\xc3\x81(\xeb\xcbR\xee\xc7\xe1`\x08\xca)C\xb0\xe6\x983\x08\xd9\xb7\xc1\\_\x8aR\xa6l2\xed\xa6h-\xc7+\xed\xae\xb6\xf5_\xe8\xa1\xe5\x1e\x8a~\x1cgw\xde\x1e\xcb\xce\xacq=\xa8 ;~3T\x19\x86 \xa9\x91H\xce\xa6K!\xf3>Ill\xce\xb1\x8a\xddGP6\xf6Av4\x8d\xc2\xa2\xf0\xaf\xc1\xa0\xcaN\xd1\xae\xd8\xde\xb6Ta\xde\xd4\x7f\xfa\x8dg\x84{\xd69wU\xd2\x00\xb5Dj\x8c\xade;V\xde0x\x84N'\xfc\xbd\x1e\xa0i\x11\x1b\xc6\xa5/i\xeb\xd6x}\x90\x9a\xfe\x131?Q\xba.5\xd11{;l\xc5\xc4'L\x1d\xfbtb{.\x93_\xce\xe6\xa2\xd6!\x0d\xb2T\x90hNC\x9b\x86x\x9f\xde\xdfY\x0c\xe5~9\xde?\xff\xcb\xac\x99_%\xac\xbf= k\xdc\xc3\xb3d-~N/E\x1d\x7f\\\xbc\xd86M\xc5\x8a\xd1\xc3\xa3\xecq\xfc\xb3\xf1\xf8\x97\x07\xb3\xc1}\xc3\xa4\x03\xe1\xc8X\xaf\xa4\x16\xb3\xb5\x81\xbf\x0c2^\xcbx\x0f\xe66m\x9ax\xc6\xc6\x911;C\xe67\xef\xdcV\xe5\xb8\xe4\xee\x11\xe2R/\xdcA\x8d \xcaw\xc3q\xf0n\x1a\xc7*\xc3\x9d7\xf3\xda>\xca\xfdb\x9eY}\x91s~}d\xbd\xbc\x04\x8f\xd2QU\xe8\xcf\xd1\xba\xd0JD\xf9\xcd\xe67_n\xe0\x8f\xac\xa8e/\n\xbd\xf9dizu\xb2\x8c\xe1\xdb\xb1&_\xfe\xe67B\xf0|2\xb6\xc6\xfb\xfe\xa5\x94Fo\x95\xef\xdel_\x1f\x102w\xc3\xb9\x81O\x91\x95U\xef\xb5\x19\xf6\xd3\xb3\xab\xe6\x06\x8e\xcd\xfe\\\xb1M0\x98\xea_\\\xd5V\xedG\xb2r\x9b\xc5\x0e\x9bj~U\xbe\xf2{\x0e\xd3\xea\xd7\xd2\xc9\xe2\xc9\x18g\xb3\x96NN\x8d\xa7\x11\xe3^K'\xa7\xc6\xcd\xac\xa5\x93)\xf1/([\xc9\x1a\xe7\x92;\xc6%c|\x0b%\xb6%c\\\xcbZ:Y<\xb3cW\xd6\xd2\xc9\xf3*+\xac\xa5\x93\xe5\xd3\xaf\xa5\x93\xd1\xb1\xcf\xaa\xc0@\x1d|\xac\n\xc3Z:y-\x9d\x1c\xab\xd1\xb0\x96N^K'G\xeb7d\xae\xe0\x90\xb7\x86\xc3Z:\x19&\x0f\xad\x9e\x03\xa1\xa2\x03\xb9\xa6\x03\xad\xaa\xc3Z:y-\x9d\xbch\xbd\xa3\xd5\x1e\xe2\xf5\x1e\xbc\xa5\x93-=A\x9b@\x85\xbe/T\x90AI\x18~\x92\xea4\xfb\xc4vg. O\\\x0e\x061\x11\x8b=\xe8[]_\xf4g\xc3\x16juB\xfeh\x9b\xa0\x07\xcf\xb9\xf8m\xbcJP\xed\x8c\xd5g\xcb\x83\xf6\x14.\xde\xbe\xb9x\xf3\xee\xc5\xf7\x97\xef\xde\xbfx\xff\xe3\xbb\xcb\x1f\x7fxw\xf1\xea\xe5\xebo^\xbf\xfa:\xf8\xde\xd7\xaf.\xde\xbc{\xfd\xfe\xf2\xe2\xd5\xdb\xd7o\xc2\xaf\xfe\xf4\xe6\xfd\xeb\x1f\xbe\xa5\xbcy\xf1\xe2\xdd\xbbH\xbbo_\xfd\xe1\xd5\xcb\xf7\x91\x97\xbey\xf1\xfa{\xe3\x15u\x0f>'\x0c\xf6P\xd6Eu\xd9\x17Uuw)\x0d6\x9e\xa5\xb0\x9c\x84\xeeW:V[\xfc\x02\xe2\x17\x1d\x1435\xab\xc3\x9f\xae\x99\x99\x0c%\x02\xee\xe5\xb9\x1d\x16\xf7\xa6,\xe0\xea\xed\xc5\xcb'\xca\x1c\xa2\x9d\x87u\xd3\xc3\xa99\x9d+\xa1\x84\x9d\xeb\xbe\xac&\x9a\x9d&\xf1\xb0\x9b8\xb39\xc3a\xf5\x9e\xed\xa7[\x86\x94\xc0p\xc7\xba\xcb\x9d\xeb`\xf5\x9a\x04\xac\xb9\x1b>\xd6\xb34\x06\xe2\xdf\x0d\xeek;\xb2\xca Vl;~\xdf\xcdo\xde\"\xe0vA\xfd\x1c\xebF\xdd\xcc\xef\x81\xfe\xd6m\xbcn\x08\xedr)Ax\x0c\xe7\xf7\xc01\xbc\xb8d\xd1\xceI\xcf\xe5\x18\xb9\xd4\xb8f\xfci\xa7EHO\x7f\xd9\x97\xc7X\xd5\x17m5\xda\x17={\xca\xdf\xc7\x8f\x9eAP\xf7Q\xfcws\x80@\x1c\x91\xf6\xa5\xb2z\x9f\xb1/S\xaa\xbaC\x8c\x0b\xcb\xfc\xdfF\x90\xab\xd1\x19\x11@\xb7FM\xfc\x8dDMX\xab5l9\x11\xb0g\xc4\x81\xf6\x88\xafTE%u}\xd1\xe6<\x01\x0eY\xdd)\xf1\x17\xe1V\xe7\x7fT\xa7\x14\xe7%\x8aF\xde\xe30!\xea\x9c\x86\xe6\xa0o!\xb4OG\xd6\x17\xfb\xa2/\"\x9dQ\xd1\x15\xffa\x8bd\xf2S\xb99\xee,\x89L\xfdR\xf4}\xb1\xbb\x96\x9e\x19l\xb1@9B\x85\xbb\xe5(\xeeF5n}g\x9b\x8dH\xf9\xee\xd0\x9c\xb9\xf0\xceZ\xcb:.\xcc\xf5\xcf\x9f=\xdb7;.\xa3\n\x1f\x7f\xcd\xfa\xdb\xa6\xfd\xf8\xec\xe67\x9b\x7f\xfc\x97g2@\xa0{v\xd5\xdc\xfcw\xdd\x8f\xa7\xbf\xfb\xc2\x1c_x\x0e\xaci\x7f\x88\x07\x18<\x9c\xce\x98\xf8\xbf\x91g\xf2\x7f4\xa8\\\xda\x9d\x8f\xc7\xa2\xbd\xbb\x8f>(\xd2b\x9d\xa0\xbbn\xda~\xf8\x13\xde\x17\xf9\xcf\xb4Zf\xd4\xceh\xda\x80\x83\xa0\x18\xd7\xc9q[\xf6=\xd3\xf5\x1d\x86\xf8\xa9i\xa7\xa6\x81@\xf1^\xfd\xd3o\x9c^\x99\xd1Y\x92\x81N\x03\x96\xcan|I}}(\xca\x8a\xed/[Vtfr\xeb\xcc\xb9Bze5`\xe9 \xeaO\xb7\xd7wv/\xe5\x17_8-^\x0cqW\x06\x91]\xd32\xc5\xdf\x8f\\\x83m\xc5*\x14XV\xc8\xc6\x1b9\xf3\xce\xd0\x9e\x9c\x91\x9b\xca\x0fE\xf1!*=4\x85'\xa2\xecD\x15\x9d\xa0\x92CVp<\x91M\xd6\xec\x89y\x12n\x1d\xb90\xca\x0d'~cjQ\xc6\x95\xd0\xbb$8\xa1\xc1\x8eM\x122\xa5\xc9\xd2\xa7\xd6\xc6\xd6\xc4m\xc9\xfe\xdd\x10I&M\xc0\xfe\xdc\xea\xb08u\xabk\x06d\xc5>\xc6\xd6\xdb\xed\x81\xf53\xad\x03\xf2\x92\xa4\xb6/w\x92\xdb\xb0\xfc{\xa0Ek-5j\x9e\x8ew\x919\xe2\x81f\xf5\x0eu\x1b\xd6\xbf\xccmZ\xa0\xf6\xb5\x8cK\xb8\xc1\x1e\xc8#\xe0\xb6/\xff>\xb7u\xc9\xb6\\\xac_6u\xd7\x97\xfd\x99\x1f\xa1d\x8c\xb3\x9d\xf1q\x80EO\xd3\xd7\xbd\x0dS2\xc2\xcd\xef\x14\xbd\x11\xef\x0d\x1f\xa3\xca\xdcK\x1e\x9eG\x9f!\x19\x14\xf4bX\xb9\xe5\x10RU\x02\xf9\xff\x16\x9b3(\xa7\x05:\xc28\xa4fVy\xa9\xe1\xe3\xd99\xe7\xe0Q\xc90E\x110e\x11\xfc\n#\x04\x94F\xf0)\x8e\x10\x1a@Yw=+\xf6\xe6f\xb0\x9a\xf1\xe5\x80\xb5L\xfaa\xfbF\xbd?\xeb \xfb\x7f\xbd\xce\xe4\xb3^g\xff5\xaf3\xf8l\xd20\xfc\xdao\x1b\xfb\x0f\xebmC\xebt\xbe\xdb\xc6\xfe\x03\xe1\xb6\x01\x1a\x02\x1b\xcc\x1f\xe4\x02X\x97\xfe\xba\x98\xae\x8d\x86t! \xb2\x81i\xe5\xc6Q\xd9`\xd9\xb0\xb2!\xb4A\x12J\x1b\xc4@\xaf\x00\x19\xb9\x8d\xd6\x06\xcb\x06\x9e \xb9\x0d\x8c~\x1af\xc7\xc9\x1b\x8b\x11\xdc\xa6\x13\xad\x8cn\x18\x8a\x1bP\xa66\x8a\xe6\x06\xe4\xd9u\xec\x8f\x19\x90\xdd m\x0c\xf7\xc3\xd2\xb2\xf2\xe1)\xe2\x1b\xa4\x8dp\x95O\xe5\xf3_O>]\x88\x1f\x07A\x0c9\x18Vc\x1aM)~Y\x84%\x07t<\xb9y\xdd\xe8\x13q\xe5 \x80-7\xaf\x07 \x18s\x10\xc6\x99\x83\xf9\xecj\x81p\xe2b\xce\x89~\xa4\xe3\xceA\x06\xec\xb9 \xb9\xe60\x03\x7f\x0e\xbc\x18t\x90\x80C\x878I(n\x18\x85Zg\x96\xf8\xc4\xdd/j\xcf&;`\xf4f\x1f\xb7M\x82\x85#{\xb0\xd7\x9c\xa0\x08\x17\xd0\x0e>\xd3\x1d\xd6\xafE&\xd7\"\x93k\x91\xc9(8\x1eJm-29\x1fD\x0f\xa8@z\xe8\x97 \xe0z\xb0\x14`\x0f\x96\x81\xec\xf9\x0e\xba\xa7\xab\x19\xc1\xf7\xe0\x1e\x00\xf8 /\x08\x1f\x10\x81\xf8 /\x18\x1f\xacE&\xd7\"\x93\x10\x04\xef\x83 \x80\x1f\x10z\xb3\x0c\xc8\xcf!'\x80\xfdP0?\xc8\x05\xe8\x07\x8bA\xfd\x1crB\xa2A\x85\x87\x9c\xe0~\xa0\x8f\x112\xa0e \x7f\x10\xc7\xba\x83\x10\xd8\x1f\xd0\x00\xff\xc0\x87\xc2\x95\x08\xfc\x07\x01:\x08\xb4\xd1B\x10@H\x9a\x9c8\x18 \x10f\x81\x00\n\x08\xa9\xc0\x80\x80\xa3\xb1\x05\x01\x02!\x13H ,\x04\n\x84\xf0\xca\xce\x06\x0c\x848h D\x80\x03!\n\x1e\x08\xe1\x05\xa7\x83\x08\x02 H\x1000AX\n(\x08TPAH\x04\x16\x04\x1a\xb8 \x04&\xd1\xb3\xad\xfd\xef\xc7\xc1\x06!\x03\xe0 \x84\xbb\xec\xfc}\x11\xf8\xa0C\xcd\x01#\x84\x85\x80\x84n\x0b\x08@!,\x05)t\xbb<\x05-\x84\xec\xc0\x85\x10\x04/\x04\x1c\xc0\x102\x82\x18B^ C\xb8\x070C\x00:\xa0!\xd0@\x0d!\x05\xd8\x10\xc8\xe0\x86\x80\x9f.\xf0\x80\xdeA\x02\xf0]\x0c\xe8\x10R\xc0\x0e\x81\nx\x08\xf8\x80\xf2\x02\x1f\xc2R\xf0C\x87\x1a\x02\x86\x08\x99\x01\x11!3(\"d\xd8#\x04pD \x01$\x82s\xb1\x85u\xb1\xac`\x89\x00S\xc0D@@\x13a\xda\xa9\x14\xe0D\x08i\xcaS\x00E\x88A_D\xdf\xf5\x02)\xe2\xaf\xfb\xc0\x14\xf1\xb7\x1d@E\xfc5\x04T\x11\x7fq\x02\xac\x08b\x9e\x89\xd8#\xf2 \x01,Bt/e\x00Z\x9cP\\\x88\xb68\xa1\x86X\xa25U\n\x00#\x84\\I~G\x92\x07\x8c\x11b&\x1fk\xae\x97\x812B\x18\x98\x11\x92\xba\x92\x07\xa0\x11\xbc \x8d\x90\xd4\x9b%`\x8d@\x00l\x84\xa4\xde\xa0\x86\xb7|\xe0\x8d\x80f\xb9z@\x1c\x81\xe2\xb1u\x11\xe3\xc0\xe1\xce\xb3\x00\x1d%\x19\x19\xb8\xe0\xa2\xd8A\xa6\xbeM[\x00\x1a\xc0\xa3h\x1e\x07y\x84\xcf\xe4\\^\x03\xa4~\x81\x00\xa9\xf9P\x91\x10\x86\x8b\x84L\xfb9\x07t$\x84\xe0#!oG\xe7BI\x02\n' \xa1\xcea\xb0\x92\x90\x0fZ\x12 \x17\xbc$,\x87\x98\x04p`&!47\xd6\xd2D\xd1\x15G\xeat\xc8I\xc0`'\xe1^\xfa\x94\x0cA \xc3\xad\xc8f\x01A\xa5tN\xb7\x03\x89\x90\x94\x80\xc3R\x02\x84b\x08\xe3\xbd4\x81 \x01\x96AT\x82\x1f\xa6\x12\x96\xcd\xa5\xa7\x97\x8b +\x9d\x96s\xc0V\xfa\xeeJ4\x06\x8f\x14\xdf\xa7;E\x85YP\xef\xa7#-\xe8a\xdc3~\xd2=\xc1&\xcd \x0c\xf4\x85\x06\xfa\xe5\xb7\xfb\x80)\xea\x03A\x82Q\x9f~\\6\x93\xcf\xdcPA\x0f\xb9\xde\xf2x{\xdc6\x90;\\0{\xc0`4d0C\xd0`\xee\xb0AZ\xe0\xe0\xa2\xd0\xc1\xdc\xc1\x83\xc4\xf0\xc1\xdc\x01\x84\xa4\x10\xc2\xf9A\x84>r\xa2\xfen0\x8c0c a4\x940S0\xe1\x92p\xc2\xe4\x80\xc2\x0c!\x85\xf3\x83\n\xbd\x9c\x07\xfca\x85\xd9\x03\x0b\xef'\xb40{p!=\xbc0{\x80a,\xc4pN\x90\xa1\x87\xd0\x10z\x18\x083L\n4\xcc\x1cj\x18\x0b6\\\x18n\x18\x088$\x88'\x91\xa0C\xaa\xfc\x923\xf00\x16zH\xe9S\xe6\xf0\xc3X\x00b\xc6\x10\xc4\xecA\x88\xa10\xc4E\x81\x88\x085\xde\x93\xde\x13\x8a\x98#\x18\x91\x14q\x17 H$\x87$\x06\xa2t\x92\xc3\x12C\xb4\xd0\xa0\x84\x0c\xc1\x89i\x93E\x0bP\xa4\xcc 1HqF\x98\xa27\xa2+\x12\xaa\x98/Xqy\xb8bd\xbd\x17\x85,\x92\x82\x16\xe3a\x8b\x94\xc0\xc5\xc8FH\x0b^\xa4\x86/z\x02\x183\x840&\x041\xa6\x871\x92\x03\x19C\x93\xea\xdd\xfa\xa1oh\x01\x8dyB\x1a#\x9dG~\xc9\x1b\xd8\xe8 m\xcc\x1c\xdc\xe8\x0fo\xcc\x1d\xe0\xe8 q\\\x14\xe4\x88P\xf3\xa9\xc1\xe1\xc0Go\xe8c\xde\xe0\xc7\xec\xe1\x8f\xf7\x13\x00\x99\x16\x02I\x0e\x82L\x0c\x83L \x84\xf4\x86B\xfa\x03\xdd\xe8\xa1n\x94p\xc8\xc4\x80\xc8\x84\x90H\xcf\xd0\x16\x84Ezw\xbf\xfb\xf7\xbc\xa1\x92\xde`\xc9\xfc\xe1\x92\xf9\x03&s\xec$b\xd0$5l\xd2\xbdDc\x9a\xe4\xec\xe0I\x87\xd2\xe0\xe2r\xc3'\xf1\x00\xca\x85!\x94A\xdd\x1f\x0b\xa3L\x0b\xa4L\x0e\xa5L\x0d\xa6$\x87S&\x04T\x12C*\x93\x83*\xe3a\x95\xf1\x9d\xb6(\xb4\xd2\xa1\x86\x85Z\xe6\x0e\xb6D\xc3-\xd3\x03.g\x07X\x05\xc2.\xa3\x86\xaf\xcc\xa1\x97\xd1\xe0\xcb\xb4\x0e\xe5\x0b\xc0\x0c\x85`\xa6\xf5ii\x18&-\x103\xadO\x1esd\xdepL< 3\x10\x92I\xf2\x98\xe3\x11X\xd9\x023c\xa1\x99\xf9\xfa\xb8 @3\x18\xa2\xf9y\x9d\xfck-\xa2\x94\xc0\xcd{\xabE\xb4,|3\x1a\xc0\x99o\xd7\xe7\n\xe3\x8c\x04rf\xef\xf0\x92pN_@g\xb0\x93\xbe\xa0\xce\xaca\x9d9\x03;\xb3\x84v\xa2\xc1\x9d\xc1y\x8a\xc7\xd8M\xe3\x15\xe7\x85xz\x82<\xef\xabo\xb3B=}\xc1\x9e\xf7\xd5\xc9%!\x9f\xde\xa0\xcfP\xd8'\xa5\xb7\xd3\x90\xca\xe5\xa1\x9f\xc1\xe0\xcf\x85s\xeb\xed\xed\xe2\x10\xd0{ \x02u\xc8\x0e\xc1\x95N\xd5\x89\xb1~\x1cBm\xad%\xd7\xaf\xb5\xe4~\xed\xb5\xe4\xfe\x03\x0drNC1\x1d\x8e\x071\xcc\xf9}QUwo\xc5\xe8\x93\x03\x9d\x85\xa5\xc3s\x8c\xa4\x15\x04\xaf\xef8\xbf\xd0\x91\xc7\x92\xe0\xdd\"\x19\xad\x07\x01\xbb\x01\xad\xf9<\xb6\x02\xdcJ@\xeb\xc1\x12\xcb@\xcc&@\xeb\x81s \xf3Y\x00\xecN\xe3\xad\xfav<\xe5d\x89\xcf\xa8\xa7\xea\xa7\xa6g\xc9\xc7\xc9F\xd5N8\x15z\xe8\xbf\xb2\x92\xf0|<\xb3\xb2\x80\xc4\x87zM\xe4?<\x92\x9e\xd9\x9c\x0c(\xfe\x05\xc0\x89e\xc3\x98a!n9\xd0_[\xb3+#\xf3\xa4>*\x07\xc5o\x13\x19\x1f,\"<\xa5\xeb\x13%\xb7?\xcbX]f}\x8f\xb9\xfb#\xe6\x12\xdc\xf3\x00\xc24\xff\xd3\x9b\xf7\xaf.\xdf\\\xbc\x7f\xfd\xe6\x87\xa0\xe7\xc1}\xfb\xff\xbezGx\xeb\xc5W\xef\xde\xbfx\xfd\x03\xe1\xcd\x1f\xde\x90^\xba\xfc\xd3\xeb\xf7\xdf]\xfe\xf4\xea=\xf6\xfa\xe0C\xa0\x0e\xeb\x96\x95W\xd7\x8bm\xa2\x92\x8a\xb9\xcd\xf5\x9f\x8a\xaekv\xa50\xe7\x0b\xc67\xfc.W3h\x98\xf9\x93 \xc1\xf6\x9c\x03\xbd\xb1\xb7V\xc1\x8fm\xaf\x0c\x08\x92\xbd\x89\xff\xe8N\x95YF\xd4!\xa9\xf6\x90\xee\xe9\xadj\xc1\xbb\xc1\xe6e\x93\"p(\xc9f\x07\xde#'\xec\xa8\xcffqH\xb37\xf0\xce<\xfd\xa7\x81\x84_R\xe7Ke,\xd2h\x87\njE\x00/\xe4\x97\xa2\xc4U\xd7+Mj\xd0\xce^\x7f\xfdd\xe4\x9fOt\x98\x8c\xbb\x8f\xac~9\x97\x17\xe5f\x14\xbd\x88\xe2\xe6\xf3\xb7\xd2s\xe9\xc4u?\xbd\x14\xf3\xe6\xd1yoO\x92M/\x9eP\xb7\xe8\x0eEoQ\xba `\xdeM\xea\xb9K\xfd\xb7\xe9}\x18\xfa\xfd\xb7*\xed^\xcd~\xb3\xa6\xdc\xad\xd1\x9b t\xbf\xa6\xde\xb0\xd4;6\xe5\x96%\xde\xb3\x897\xed\x8c\xbb6t\xdb\x12f\xf9~n\xdc{\xb9s\x17\xde\xbaK\x8c\xfeh\x97\xf3\x8d\xd8\x1e\x03v\xbc\xc9\xe5\x86k\xd7h\x1dou\xae\xb1:d\xa8&\xb5:\xd7\x1e\x1d\xb2@\x1b\xdb\xc3\x901\xba\xbe\xa8\xf7E\xab\x1c\"\x8acx\xc4\x0d{\xbb\xfd4\x98\x8a \xfb\x0cUp\xd1\xa9\xf0\\@y\xd4\xd9\x89\"\x1b_\x8bt\xe5\xd5Q[\xef\xc3^\x80+\xa61\x954\xa32JSC\x03R\xbf/\xa8\x9c\xaa\x93\xc5\xd5M\x9a\xa2\x19U1\xc9\xcae\x92Z\x89+\x94T\x93J\x16%2\xb3\xfa8[qtUFt\x1a0\xe93\x87\x82\x98G5\x9c\xad\x14\xe2B\xca\x1cE0\x87\n\xe8r\xf87\x06\xa7q\xd6\xc5<\xc4\xb1\xa3\xeb;\xb0\xa1c\xea9\x9c\x91#I:\x888\xaf4\xb6?\x1f\x9b@2\xf01J}W\x967\xcc\x94\xd0\x14\xa5qu\xf4.\xf1N\x90\xb7\xa3\xc6\x0e\xa8\x9b\xa7\xcd =\xc9\xce\xbc>\x9f\xfe\xc1 \xa3\xc5\xb30\x11\xb5\x08\xcf\xb1?\x8e\xc4jK\xea\nS\xfc\xe1\xcd\xf3\xc9\xbf\xad\xb1\x91(\x8c\xab<\xa55\xfebS\xb5%\xa4\xd06/\xeb\xabDU\xceS\xf4>.Q\x04k\xdb#b\x9b\xd9;\x9f\xc60\x06\xe3\xd24\x05\x97\xdb\x93\xc7=\x95<\xfc2\xc7|ic\x94.\x0cr\xb8\x9c\x81\xce\xf7T\xb6\x88\xb1&\xf7\x1d[\x9e\x88I\x12\x01\x19\x82 =\x90\xd8\x95+1\xc4w\xdaB)!\x9b|\xa0\xf6\xde\xb1\xac\xfb\xcd\xcd\x97[\xd6\x17_n\x12O\x1b\xff\xf6r\x92v\x11\x92\x12z\x85\xa4\xb3kJ\x91\xcd\xca\xbfW\xef\x94\xf5\xa1\x12\x07\xf0\x923\xf7K uE\xa3z,> \xb3AQ\xd7\xe7\xa2R(YP\xd6#Mh\xc7M;6t,>\xa55\x10\xa3W\xd6Dz\xca\xce\x81\xd2\xbbj\x8a\xear\xdbp\xa1\x87F\x8d\x7f\xc0'U\x99\x9f@~\x0bE\xdf\x1c5\xda\xd6\xb6jv\x1f;\xce\x15/\xefX\x11\xd3\xb4<\xaa\x9e\x11\xba\xbc\xe3[T\x12\xe5\xcd\x02'\xeanN\x1fsd=k\xbb\xc1\xb0\xf7\xe9\x19\xdf\x05 \xe50\xdf\xbe\x14\xd6\xbf\x17b}/\xda\xe6\xa6\xec8\xbbI\xf6\x18\xcb\x0dry\x1a(\x10'\xc2\xb2D\xdb\xf6\x8f)E}\xac\x15\xd2\x9a\xd8\xe1\"YS\xeeM\xe3Ea\x8eB\x8e\xb4\x1d\xe9\xe9\x1bs\xd0Xj\x12x6\xa5\x80[O\xdd\xd9~\xad7g\xf24\x0f\xdbz\xf1\xf4\x8e\x07\xc43\xad\xe3\x0b\xb4\xe9t\x06E1:\x0f\x1f\x85B\xfc\xdc \x94\xdb?y\xf6N\x06\x0bvFs\n\x1e)\xad\x1c\x0dG\xc9\x9c|\x92\xab\x06c\xe8\x10\xd2\x80\xe3\x8c\x1d\xe2\xcc\x9d\xd2B\x1a\x93\x07?\xa3Oi\x8cB\xbb\xa4\"pS\x98?\xf8.\x00\ne\xc2E\x00\xa1\xcb \xd8F\xdc\x01E\xbf\x18\x90\xe3A9\x87\xea>A\xf9\x97<\x18\xb6\x1c\xf3\xd2\xd8f\x84\x83\xd7\x9d\xb7\xdd\xa9\xd8\x85\x85\x0e\xcb\x8d\x89\xfc>\xf1\x928o\xe0\xbc\xc9\xe8\xae\xa9\xc8\x95\xf5\xbe\xbc)\xf7\xe2\xe2\xd0\xa7\\\xed| \x18$\xe1{M\"\xfc\x15I\xe8\xc2\xb5\x10O&i1\x97\n1)\xd4;=\x8cb\x16sr\x17\x08\xfc;\x96\xeaoFp7\xc3\x8b\xe6\xd9\xbc\x996\xae\xf8\xe0\x9d\x1ah\xfa\xb2\xe8)\xbag;7\xbe\x12\x01\xee\xf1\x91\xdd\xe5\x8a\x18s\xa8\x87\xcc\xebz&\x0d\xadh\x95]\xcf\x97\xd6v\x83\xf3\x0f4\xa9i\xde6\x9a\xc2\xf8\xcf\xee\xa6\xb2\xa5\x14g\xfd\xc1N\x961v\x9a\x94\xa3\x07L\x10a\xfb\x1a\x10\xc2[vUv\xbdp%\x0f\x1bc\x18\xa7\x18\xa3\xb4\x95\x19\xbd\x8ft\x1b\xdf\xb4\xef\xac\xed\x90\xb0Mc\xacv\xde6\x8e\xb2\xdb\xa5\xbb\xc2\xd8 \xaa]{\x0b\xa8V\"\x93\xd8UEw]\xd6Ws\x95\xef\xae\xbc\xaa\xd9\xfeR]\xe7\xb7e\xbdon\x83\x13:^\xe2\xe6\x1d~,\xebKE\x8a\x8b\x04It\x0c\xc9}\xdf\xdc\xd6}yd\x97\xff\xaf(\xab\xcb\xbd\xb2\xa6\x05\xe9\x88 \xb8<\x08\x0c\xfc\xa6\xbe\xdc7\xe7m\xc5D_\xd2\x9bwh\xc9\xde\xa4\x12\xc2\xf4\xd7\x01\xf9\xcb\x91\xb7\x07t\xeb\xad\x8c\x19\xd2+\xea*\xb3\xceZ/\xbe{\x9d\xa3A\xbbB\x83{\x06(\x02\xe0T\xfe\x8b\xec\x1f\x12\xcdI\xa8Wl/\x05hR\xf6T\xe0so\x97\xa2\xfb+\x9dh\xf6\xbd6H\xe2\xb9\xe4\xeb\xd8\xfe}W^\xd5e}\xf5\xba>4\xc9\x9b\xf8\xa6\xa8\xc4\xb2\x94\xf5\xd5eY\x1f\x9aY\xdbY\xf9\xfcI\xab a>\xae\x11\x07ot\xd9\xbc*\xcfw\xcan\xab\x91W\x84!\xbd\xe8\x9bVD\xc6 lD(`W\xd4{\xfeg\x06o\xde\x8a\x1f\xce\xf5\xd3\xff7M\x90/\xeb=\xfbt\xd9\x1c\x0e\x1d[\xde\xbdp\xc4\xc1k\xde\x94\xc6\x8a\xe9\xa0\xacw\xad\x80\x8ba{`7\"\xfe\xb1<\x0e(\xf0b4e\xa7\x95I\xa4d\x8a`&\xfc\xa2\x9cF\x07^\x1e\x8b\xbbKY\xadA2\x08\xe1\xf8dOw\xcd\xf1X\xf6\xb2\xf6G\xaf\n\xd5\x945\xec\x9a\xfa\xff)\xf4rY\x04\xc0\xa6\x86\xe0\x94a\xdcl\xd0>z\xd6\x1e\x07\x99I\xcc\xae\x0ef=\x96\x9d[\x83B\x8eb[\xf6\xc7\xe2d\xba\xe3\xe5B]\n\xec\xb4\xc4u!\x14\xe8s\xd6\xe6}yd]_\x1cO\x12\xadM\xad\xd2\xe0\xa4\xd1\xab!{\x05\xfb\xb3\x80\xa7\xa9\xca\x1bV\xb3nZ[A3)s8}s\xdcv}S\xcf,o\xe6\xf4\xf7O\xd7L\x94W\x90\x8bim\x9a\xeb\xa2\x83-c\xb5\xd1&<\xfaXV\xbc\xe3\xcd\xb9w\x0b\x1f\x0d\x9f:\xeb\xcc\xfa\xc7\"\xea\xb6\x14\xe1\xa6\xd0\xd4;6\x99\x13\xb9\xa7\x84\xd6\xcc~>\x977\xcdNy\xf3ZCL\xd3OQ\xdf\xc9\xd0\xd4iC\xbb\xa6>\x94Wg.0\x1f\xcbn\xcb\xae\x8b\x9b\xd2\xae~\"\xf7\x8e\xder\"\n\x8c\x9c\xc8:\xf7\xbc\xbe\x00\xd5\x0e4\x07\xd5\x01xt\xae\xe5\xee\x7f\xac\xcc-z~\xce*\xd4YT?\x99\x10:\xd75\xdb\xb1\xae+Z\xa7:P\xcb\x8a}g\x1f\x10\xcf\x91\xf0\xf7\xf5'\xbd\x1a\xc6\xbd`FK\xe8\x9f\x1fv\xa08?p\xce/n\xa1cS\x97}3\x99\xb2\xfe\x9a\x95\xd6\x1a\xe9\x8d\x0e\xfc\x1a\xbe){\x13)@r\xe4\xe9\xb5\xa2\xef=\xabA\x11\x03\xad\x11\x07n\x8aJ\x04g\xe8\xcb\xe4\x0b\x83\x9a\x9d\x1d\x8e\\w\x94k\xd5\xf8LQ{{\xf1R\x8f*\xf9\xa2M\x17\x17\xb1\xdb\x95\xa4G\x91\xcd\x01\xe85\x1c8\x08\xfe\xab8\xf0Q\xe8\xfc\xdc\xc7\x85\x1c\xba\x92gw3\x16\n\x98\xf9j\x0e\\\xce\xb9\xafg\x0f\x90h\xce+\xda\x7fI\x87\xaei\xd2Z\x91\xe0\xd7\x90\xf5\xcay]\xe3\x17\xb6\xff\xca\x0e]\xda\xf1\x9e\xe7\xbc\xb8\x03W\xf7\xc2\xcb\xdb\xa1&\x0cV\xbe\xeb\x9br\x81\x93\xaep\xd2\x9e\x99s\xbe\xb3]\xe5\xc1\xcb<\xe5:\x0f\xf7y\xc1\x95n\xcf\xf9p\xbd\xbb\x97:\xe5Z\x0f]\xe5EU\x8d\x1d\xd1\x87\nK}KP,\xd7\x94\xb55eM\x7f\xe1_C\xd9\xa4! 6VI\x80\xb2\x16\xa0\xdc\xa3p8\xa0\xcd\xdf\x8a\xb9\xb6\x11\xe6wM+_\x14u\x04\x94|:\x80\xf7s\x9e,\xf8\x819Lkl\xfa\xcdw\xcdq\xec\x14\x8a\xde\xdf\xb2\x13\x13Af_\x15\xed0\xb3\xbe\x9a\x14\xd6\x18\xc5\xe6\x9a\xd6\xa3\x90p\xfc1\x899\xc9\x12e~\xa7\xe8\xa5\xc8\xcc\x18\xd7\"\x8b\xcb\x8e0\x8blp\\\x80EO\x02~[\xe4\x15WqA5\xa1;\xfe+`\xa9@*o\x1d\x83\xe0D\x14](\x84N\x85\xceE\xe2\xa6\xd3W\xfb\xae\xc4E\xcc\xe0,\xbbb\xa5\x7f\xa6s\x89\x92S!\x12\x13\x1fq\xc1\xd1\xdf\xb7\\\xc2\"*&.\x12\x10\xb5@h\xd0sD\xc3\xb0P\x18\x11\x07\xe7\x9e\"\xeb\xa2\x98/\xf6Yb\xdeH\x90&\xdf\xe1\x0b\xba@\xa6s\xcd4\x964\x87\xcaq\x9aI\xf7\xa2\x86\xed\xc0\xa3\xbfj\xea\xfd;\xa3b\x8a3\xcfv\x12\xcbWo~\xf8\xda_\xbfc\xfa;\xffW\xf0\xc7\xd7?|\x8b\xfej|8\xc4\x7f\x87\x9a\xc6\x97|\x1c\xdb \xb3\xca\x7f\x89\xdc\x9fa\x82\xcd\x1c\x14O#\xcf\x01\xcd;\xa9\xa1\xacU\xd0\xfepF&\xf5c\xf0)\xe1\xf4\xe4\x7fa+.\x9d\xdb\xaan\x88d\xe2Az\xaf\x7f\xf8V\x13|\xfd\xc3\xb7A\x8a\xe7z+%\x1b\x0fA\xdd=B\xe7\xc6\x8ey\xb6\xd6K\xce-D5\x05\xf2\xa5\xbf\x1b>\x11\x11\x8a\xbe\xf0K\x8b)N\xbf\xb1\x824DMqaY\xd4/\x81JZ\x122\xa2\xf6\xe6\x99\xe4ZV\xc8Pas\x87\xe8_\x13t\x17\xde\x0eQD\xb7\x06\xc7\xbf\x1b\xe2l\xedn\xc3\xee\xbah\xaf$[\xda\xb3\x8a] U\xeb \x88\xfaZ\xda)j\x99\xc9\x8bO\x97s\xfb\xe1\xa2\xbd)b\xd6\x04\xeb\x10\xcdiO\xa7\x82\xd4\xce\xb1\x8cp\xb9E\x0d(2\x02\x19j\x97w \x06Mt<\xfb\xa2\xac\xee\xa4\x9cUt\x1a\x04~Bgr1\x8a\xd1{\x86r>q\x19\xe42!\x16\"\"\xb3\x18\x04\xf5f\xa9\x8a\xaeW\xa5\x12\x90\xad\xc3\x05V9h,\x8dj<\xab\xc3l\x18\x04&\xe9\x02:\xab\xcf:\x1fQ&\xf0v<\xd0\x04N`/6:S\xf7rj\xdc\x13\x13o\xdbN\xba]xJ\xc4\xb90\xf9Q\xe8\x84xO\xc7\x8cN\xcf:\x11\x86(it9|\x1a\xf0nL6\xca\x02.\xae9\xb8\xbe\xd6\x0b\xd2F\xfdZ\xee\x8c\x94\xdbj\xd8L\x97\x14eu2p\xe7c\xbd{Y\xbdkT%C\x13Hax_\xaf\xfd0\xa89\xad;\x1fGZw\xae\xc2\xee\xbah\xdd\xf0\xd6P\x93\xf2\x0b\xb5\xae\xe6\x90\xf8r\xaa\x1f[\xb6c\xe5\x0d\xca\xa1\x06\xa9n\\\xa8i\x98\x0e\x97H\x94:\xda|du\x07\xd7\xac\x12\x05s\x8a\x1a\x8a\x9d\x10\xfd\x95p\xafH5\xb7\xb5\xac\xa8\xd3\xd4\xc6\x04\xcb\xf4\xef\xb2\xf3\xe5\x01\x8a|\xd4\xe6Vj\x11M\xcd\xa6\xebA\xdad\xc9\xee\xc3\xfdd\x7f\xa2\x9f\xe1\x9fBx\xaf\x02\xf9&]\xbcg!\xbco\xe9=Y\xbc\x7f\x01\xd9\xc3\xf4\xe6\xd3\xf7\xb2C\xc2RL3\xeei\xc8\xbd\xafa\xba\xb7\xf9\xb3-\xaa\xa2v\x03\x87\x89[\x91\x9a\xd7\x84\xd5\x03\x8b3\x1akfg\xd7\xfd\x1aI,)\xf75\x1aI\xf5C\xab\xe9\x15c}\xa6\x15W\x98b\x8a\x8a\xd5\x02\xc4\xcc\xd8J\xec\xd3\x8e\x9dz\xa5\xb0\xf5c9\xe6\xc2^\xc4im[\xb5\x7f\x07c\xa3pBt\xe7\xb2\x17\x06\x7f.\x00\xee\xaa\x92\xb7\xa6M\xc7]\x90\xe3\x8d\x03\xa1\xb2\xbacS\x97\x1f\xa3\xc6\x1fk\x8a\xd4'\xc6J_\x9f\x8fE\xfd\xb4e\xc5^t[D\x91k\xeb\xb6\xb3\x9d\xcb=\xab\xfb\xb2\x0f\xe7\x14\x85\x04(M\xc0\xb4\x0d\xc8l\xf1\xa2\x1a\x7f\x1c\xd6\x1e\x1e\xb1O\x1b\xf8\xf1\xa2i{\xdb\xbb\xfa\xbf\xd9\xdd\xb6\xe8\xd8c\xdd\xb1[\xb6\xed\xca4\xc1N}\x82\xf6D\xffV\x95\xf5\xc7\xe1&g\xbbs[\xf6w\x97b\x7f\xecb\x96k\x9b\x0fN\xbeE\x1be\xc7\xa2\xac\xc4\xdc\xeb\xd7A\xbd\xae\xbb\xb0g}QVI\xd2\x84\xfaD\xb3\xe0F\xdaEu\x93\xeaW\xe4,\x19\xfb\x11\xb5n\x18/\x07v\xf5we\xd77m\xb9+\xaa$\x9f\xc65+\xf6\xee\xbe&1\xcd\x1b\xd6v\xa5\x13|-\xdd\x17\xdb\xa2+w\xca\xeeX\x8e\xe1M\x816 \x10E\xa4\xc2;\xa6\x7f\x0c\\\x8d\x10\x03\xdb.N\xa7|\xe4\xc2\xba\xfdK\xce\x90\xea\xee\xdc\xc1\xae8I6+UB\xfd\xe7\xf6\\\x8d\x18\x8b;\xd6u\xd2\xd6\xa3goBN\\\xc1\xfc\xa7\xdduQ\xd6O\xa6^\xcc\xb2\xdeUgYp\xbc\xaa\x8c\x17A\x80\"u}{\xde\xc9>h@!\xd9:jM(N\x12\xd5\xa3l\xea\x87\x9d\x13z\xd9s\xb5\xaco\x8bZ\x96\xfe\x84c\xb1\xbb.k+DE\xb4L-0\x92%\x00{F\xe8=\x16\xe1#j\xec\x8b\xc9s{\xaf\xab\xca\xb1\x9b\x8c\x1b\xfc\xba\xe8\xaegnH'\xb4@\xe4\x81\xf4\x97\x1d\xeb/\xa7\xc7[?\xde\x1eB\xb0\x97\xe2S\xd7\xd1?\xfc$\xa8\x96u\xcf\xae\x98\x1b\xa0\x03\x91\x08\x19\xf0N\x03\xc4\xa6\x02\xc2\xd31,\xdaE\xd1\xf6\x1d\xeb\xbf\x13\xb32]n\xe9J\xbat\xbb\x10\xddAN\x93\xaa9NJ\x9e-\xb9Q\xf8\x114\xde\xe3\xff\xcc\xd0\xdc\x18\xe1\x92\x81\xd8\xb4\xef\x87\xb69\n6Q\x9cN\xd0\x9c\xfb\xd3\xb9\x1f\xff6\x9e\x01\x83\x82\x08]\xc9\xda\xa7\x81Sf\xa0U\x9cN\x19\xa8\x88\xfd\xa2\xe2#2\x90c7\\\x1e\xdb\xb1\x0c\xa4\x86\xf5\x1b\xaf\x97 {:\x89\xeco\x96\xaa\xeb\xc6\x13\x95\xe4\xa9\xb2\xacd\xc3u#\xfd[\xf2\x14H\x9ed\xd8\x8c\x90\xd8\x84\xbcQ\xc8\xfc\xaf~\xf5>\xc8[\xc2W\xbbK\xda\x1a\xbeO\xe3\x7f\xe8\x06xj:\xff\x03\xb6lw=\xd8\x0c\xca\x1a\xfe\xf0\xee\xcd\x0f\x1b\xeb\xfd\xf1<\x9c\xce['\x14-\xc8\xdcC\xac\x9d\x7fvynQ\xde\x1e\xe1\xbe\xb1Y\x02\xe1\xe9\xfe\xf1\xed\xf7\xcfZ\xd65\xe7V\xe7\xd0\n=Pb\xc0VwJ)9\x94j\xf6z\x85\x1c\xe2\xca%\xf2\xe9X[\x16U\xf9o\x0c-T-\xc6\xda7\xbb\xa6\x82\xed\xf9p`\xad\x0e\x83R!#r,\x12\xc9L\xa3\x98\x15=T\xac\xe8z\x9c^S3x\xf0\xec\x810\x7f\x17\xbb\x9e\xb5\x1b\xa1\x81\x0b\x1fG\xc7\xae\xb8\x9e\xadW\xfa\xc7\xb7\xdf?\xec\xe0T\xf4\xd7\xa2\x01\x94\xdc`U\xc1[\xe3d\x0e\xe7\xaa\xba\x83\x9f\xcfE\xc5ge/\xe7L5!f\xe7Q\xc1\x8f7N\xe0\x03o\xfe\xd9U\xd3\\Ul#\xe6b{>l4\x98\xdd\x87\xc7\xb2\xf7\x82dw\xdd\x9c\xab=l\x19\x1e)\xce\x9f]Q75\xd7.\x04#\xc0[|\xc46W\x9b'|\n\x85\xfc\xf9`\xf3@{\x8c\x8b\x1dW\xfb\xd9\xfe1^\xbd\x1c\xe0u\x0d'a\x91\xdf\xb1'\xd0\xb3\xe2\xd8\xc1\xb9;\x0b\x80\xe3\x93\xc0\xfa<\x95\x15\xef\x9d\xc2\x04\xdd\x96u\xd1\xde\x19\xf9\xec\xf6\xd3\x8b\xf4w\xb1\xb9\xfak\x86\x04\xc1\x82*\xec\xbb\x13V\x88\xbeQp\x19Z.\xef\xd9'\xb1\x94/\xea\xbb\x0d|\xd7\xdc\xb2\x1b\xd6JX\x8d\x1f\xdf~\xef\x9e]\xfeH\xd3\x04'\x83\x06\xbb\xf3\xa7\xdb]\xb3#\x83\x0f\xd7}\x7f\xfa\xf0D\xfe\x7f\xf7\xe1\x89\x0c\x9dQ\xbf>\x11\xbblg\xe8\xaa\xd5\x1dt\x0c\xdfA\xe7\x13\x14b\xac\x9e\xf6X{\xc3\x94s\xfcX\x9c:\xb9e\xf8\x08\x04\x0e\x8f\n\n\x14\xfcJ\x08\xf0\x1d\x14\xf8\xd8\x0eMU5\xb7\xdds\xcf\xda\xfd=\xbc>\x8c#\xe0K.\xb0\xac\xf6l?\x0cR\x99\xf8\xceG\xb6Gj}H\"/j\xf8\xee\xfd\xfb\x0b\xf8\xf6\xd5{]\x05\xfe\xc7\xb7\xdf\xcb\x03z'\xcc[\xf8\xce\xfc\xf3t\x8b\xbf\xbf;\xb1\xbf\xfc\xf9/\xe8\xcb\n\xd5\x83\xaf\xb5\xdaC\xf2^\x13\xabpj\x9b\xfdy\xc7D,Q\xdbN\x83\xc3\xf5\xf3\xf7\xf0bT\x8b:\x11\x16[\xf0\xf9\x91\xde\xbc]\xb1\xe3<\xa1i>\x9eOC\x04\xe5\xb6\xe8\xd8\x1e\x1a\xbcB\x90\x8f\xbd\x01\x1f\xbe\xe8\x97\x88\x81\xeb\xaf\xd9\xd18\x0b{y\x18\n=\x8c!*\xc8\x8ex2\x1f\xd9)q\xec[vhZ\xf6D\x7f\xcci\x16}\xb9-\xab\xb2\xbf\x13% \xb4\x1fK\xb0\xa8\xf6\x06I\xb8\x90OS+\x0f\xae\xf8@\x9c\xbb\x0d<\xfa\xb1c\xda:\xc0g\x85o;\xceg\xe4\xbe+\xea\xe2\xca7\xe2m\xcb\x84UC\x13\xdd<\xc6w\xcb\x0fM\xcf\x9eC\xcf\xf9\xf8A\x05\xfd\x15\xa2\xef\x8a\xdf(0\xb0\xea\xce\x0c\x0b\xae\xbdS\xdd\x88xh7\"X>zcA\xcb\xf8\xed\xc0\x94\xd1z\x08\x87\x19\xf2\xaf\xc7\xf3\xb5eWe]\xfb4\x15\x91#\xe3e\\\x1b\xb9\x9f\x8bS\xd9mv\xcd\xd1\xc71\xdf\x89\xd3\xd6)3S\x7f]\xd4S\xce\x02\x8f\x94mQ\x86u\xcb\xe3\xf9\x18%v\x14\xc1\xa6[\x0f#\x11\x03\x14\x06\xea\xc1\xa0\xac\xdc\n'\xb6+\x0f\xe5\x0e:v,\xea\xbe\xdc!e\xad\x10\x14\x1d\xf9DD\x8a\xa0:G\x938\xfe\xc8Y\xc7v\x88A5\x04\x06G6P\x97j\xb1mn<\xc2\x86\x1c\xaa\xda\xce\xd3a\xc6z\xf3\xe1E}\xf7\xc1\xb0v\xd7\x06\xf0u\xa0W\x8aG;\xe4\x8a\xaa\xa9\xaf\x94\xcb\xc0]2\xce5\x05\xd3\x97\xbd\xda\xba\xe2\x94\xd9\xa6\x96\x8a\x90mv\xa17~UnEW\x15_\xef\xa0;\x9fNM\xdb\xcbR \xbb\x8f\xcf\xce5\xff?~_\xca\xf5\xee\\\xb3\x95\x92hP\xe1\xa19\xc0\xb9\x97\xccG\x1f\xe7\x8e3>\xed\x02(*\xb8b\xb5\xc0v\xde+\xf7\xc5 T\xbf@\xf8\x9d\\\"\xb7\x9dW\x9f\n\xbe\x81\xe1\xcb\xe7pQ\xc8\xe47P]/\x86\x0b\xb1\xac\xe1\xe5?\xfc\x83\xe7\x9a\xfa\xa6i\xe0\xd04\xf0{\xd8l6hT\xbc\x98\x84\xa2\xbe\xc3\x7f,\xea\xbb\x0do\xfa\x9b\xb69>:4\xcdc\xfc\xb5\xcd\x06\xbf{\xca\x03<\xe2$~\x14\x9d~\xdf<\xfa;N\xe31\x1e\xcc\x1f\xa0\xf3W\xff\xdc\xfc627\x7f(n\x8a\xc5\x93\x03\xbf\x17\xb2\x15\xa7\xbe`\x16\xca\xee\xd17M\xb3\xd9UE\xd7\x05&Av\x89\x7f \xc7c|\x84\xb7\xfbW\xf4\xaf\xcf\x9e\xf1-\x19\xef\xd3\xbb\xe2\xc8\xb8\x08\xf2B\xf6\xee\x8a\xf5\xaa\xcc\xcc\xeb\xba\xeb\x8bz\xc7\x1e=N\xed,J\xc3\xd7w\xef\xca\xfe.\xb2\xb2\x17w\xfduS{\xd6V\xf6\xeb\x9b\xa6y\xb4\xd9l\xf0KdX\xd7G\xde\xdf\xc5\xde\x17+\x9e\xba\xe0\xfc\xe3\xd7rF\xbf~\xf5\xee\xe5\xdb\xd7\x17\xef\xdf\xbc}\x8c\x9b\neS\xf2\x8c\xf8\x1b\x93\xcdyg\xeb\x1f#\xb3\xf5m\x83O\x94\x98\xa9\xe7\xbf\x87\xbf;m7\xdf4\xcd\xbfo6\x1b|?\xf1N>\xe1\x82&\x7f\xbb\xa8\xefN\xdb\xcd\x0f\xec6\xd0\xdf\xf2 \xde\xfeo\xbf\x87\xba\xac\xbc\x1b\xc8;\x89\x9em\xed\x7f\x7f2\x10\xcf\xe7\xaaWr\x0c\x9b\x1f\xebc\xd1v\xd7E\xf5\xbe\x91\x07{i\x97\x9d\xbf\xbf\x17\xe07\xbb\x8f\xc3=\xa0\x95\x0d\xd8\xde\x8d\xa2\x9a\xbe\xb1df\xdb\x9d\x0e\xd9v\xa8\x9d;D\xe6y\x88\x88a\xcf\xb8.\xbe\x11?pQ\xf6!\x14\xc6\xad\xcao\\\xe5Nq[\x10{\xc7md\xb8\xc6\xea\xeaN\xeb\x8d\x8e\xc2?\x88\xceP\x1cz&\xa5\xb9\xaa@\x0c\n\x0f\x9f=t\x9bP\n\xad\xee\xa2\xd4`\x99\xda\xdf\x0f\x0eM\xb3\xd9\x16\xad\x18\xdc\xa7gw\x9b\x7f{ gK\xeaZ\xb8Z)\xba\xf2\x80\xbf\x8b]\xaf\x7fx\xf7\xe6\x07\xe4\xcf|\xc5\xf8O\xa3\xc5C\xa5h\xf0S\xadD#\xa9\x95\x9d\xbb\x01\xc8\xee\xea\\\x15H\x16\xafKBF\xba\x8c\x02\xcd\x931\xcbN\x9d\xd6'JRB\xec$\x86\x80!#(>\xfc/>\xf0\x0fJ\x9d\x1f\x046s\x1a7\x9aE<\xf7\xa8\x0b\xc5\xee#\xe7\x11\xa3Zz(+\x86sk\xcdO.X\xdb5\xb5\xf7\x80([\x95\xc8\xfa\xba\x14k\xe0\xcb\xc9\x1b_\x16&j\xf5\xeeo\xc9w\x05\x7f|\xbdx \xe6\xe6\xc1sx\x80\x9d\x0f{\xb8\x1b9\xa2\x07O|\xb4\xc4X~(\x8e\x9c\xde\xff\x94]\xfeW\xef\xcb|,\x93w\xa9\x03z}P*\x90\xbd'\xe4j\x96\x1d\xdc\xb2\xaaz\xfa\xb1nne\xb8\xcd\xb5\x08\x0eU\x812r?O)\xda[\xf0\x89\x14\xb5'\xfbrL\xa8U\xcd\xf2\x8dV_!\x16\x0c\xb1\xed\xdcF>\x88\x03\xa1\xf7\xe1uS\xed\xad\x10\x1eq\x9c&12\xfcg\xb5}]z\xa2\x99a\xe7\xc2#\x91\xb1\xa3\xa6\xc21\xa0h\x1b\xe1_\xfe\xfc\x97\xc7\x9eM\xbet\x8f\xd8\x0d\xf9\xb7\x89\x98\x06N\xee\xcb\xcdo\xbf\xfcm\xf7\xc0\xb3\xec\xe6\xbfd\x1a\x1cn\x13\x9f\x07\x88\xa0\x13\xebT\x1e\xf0\xadJy\xb3L\xfac\xb6\x9bz[8\xc9dB\x8aCP\xe7\xfc\xc8\x14\xc6/\xdc\x9f\xa6\xbd\xb7#\\\xac\xfc\xa1i\x9a\x0f<\x92\x8d>\x1b\xf2j\xd4\x7f \xeb\xabM6\xa0\x82\xfb\xaa}\x85\xb3\xad\xfcoZyW\xe1\xd7\xc6\x0c,\xdf{(1RV\x96~d\xe4\xe2\\?\x90\x8a{tc-\x85\x0dP\xfc\xf6\xa8\xacw\xd5\x06:V\x1d\x9e\x8e\x81\x98\x93\x15\x18\x83W\xb1\xb8Oz\x7f\x90=;%=\xfa\xa5d\xf1Q\xf9\xc7\xb2\xeb\xce*\xa50\xe8\x9d\x1as\x14\xa6\x03\x98\x84\xd2\xe1?\x99\xff\xb0\x1cd\xe6\xdf{\xd6\x1e;\x7f<\x9c~\xfay\xce-'\x80o|\"\x86\xa8\x9cA}\xe3\xe3\x86\xf7\x8dOJ\x87<\xa6\xaf\xf9\xc1\x7f(\xb9\xa6u\xc2\x00\xc7\xc7 \x08\x1c\x9f\x94\x91\xa4\x06 \x8e\x8f?\\p|Rz\xe2\x99\xd3\x99\x91\x85(\xadI\xb4\xe1\xf88q\x87\xe3\x932\x84\x84XD\xfd\x0c\xf7E^\xf8\xad\xd8\xccN\x9b\xd5\xb3\xfa\x84k\x96\xc3\x8f\xb2\x14\xde\xf5\x04\x14\xa1\xbf.]^5\xbd\x92\xaf\xce5\x92c:i\xdb\x0d\x1b#\x0dx.8\x94\xddph\xc8G\xae\xc4\x95\xc7i\x01\x97\xf11\xb2`\x1b\xe1\xc8\xa9X\xcf|\x03\xdeM\xf2_\xc7\xc7\xea\xf1\xceM\xbd\xeb\xed$\xb61\xfd.\x13\x7f\xf6\xa7\xd9\x8eOlV1: I[(\xbd\xc1\xb9\x13N\xc2\x1d\x9f\xc0\xf8!\x1a[\x87\xa5\xe8\x8eO\x84\x01\x00q\x8a@53#7\xd1K\x0f\xcb\x93\x1d\x1f<\xe7w|2\x0e,=\xd7\xd1K\xca\xcd\x81\x8c\xe7\x06\x8fO0Kx|2\x0f=9c\xd2K\xadwa6B\xd9\xc4\xe3\x83\xe6\x15\x1btin?\x1fg\x05\xe2\x84\xccIF\xc6\x19\x8a\x99\xa0\xac\x1f\x81l\xce\xaa\xc3%\x96\x02'\x9f\x05\xb2;B\xdd\xd1\xf6\x1evB\xb7\x80=\xdbU\x85\xc4/\x11\xc5\x83\x1cb\xea-M\x08\xb3\xdb\x05JQ\xe8g\xbc\xb0\x9a\xfa\xf2\xba\xa9\xf6\x97-;L\x0b\xa5\xcb\x87pm\x06`:\x91\xe9\xe0\xa4v}u\x07\xa7\xa6+\xfb\xf2\x86\xf1kR\xf8\xfe\xcd\xd9\x18z8j\xe2]\xdf\x9cN\x18V\xe4\x1d\xb0O=k\xb9(\xa4\x8a\xfcz\x06[\xee=:\xd9\xf2\xda$\xf2 \xe6(\xf8\xa7\xa4*;\x11\xa04\x0e\xba\xdcwO\x80\x15\xbbk7\x9cN\xd4\x983^E\x0e\xbd=\x9b\xc6\xcf\xa1\xad\xfa\x93\x91\xa1\xe2d\xad<\x81\xbe\xb9\x92v\x92!\xa1O\xaa\x9e*cM\x05\xf6\xe1\x14\x1fJ,\x0f\xad\xa6*\xdbz\xd9\x02\xfb\xa4\xca{\x893+$\x9e\xb2\xee6\xf0N\x01}Y\xe4t\xf8\xcd4B\xae\xe0\xa7F2@e\"\xb7\xc8>\x91\xf1<\"\x0c\xa5i[\xb6\xebaWT\xbbs\xa5m\xce\x16\xb1\xc3\x99+P_L6\xd0x\xe0:1\xfe\xe6\xdc\xf3\xfd\xd1J\x11\xa2\xb9\x11*\xe4\xa0S\xc3\x9f\xaeY-\x87\x02Ek\xb3<\xd3\xb2`\xb7b/\xda\x93 \xc7.;.\xb2\xec\xcb!\xa5\xb20\x13Bo\xaf\x9b\xceng@\xd4\xb3\x1b1\x97\xa1\x1c#\x99Dc\xe3J\xca\xae\x8f]\x15\xc5\xa9\xa4Kf*\xb3\xaa\xd0\x1c\xbb\x15k\xfe7\xaa\x82\xae\xca\xfc\xe4\x97\xef\x96\x0dK\xc0\xf6\xc2\xf5\"\xb6\x92B\x13\x93\xdd\xb3)\x1e\xcfU_\x9e\xaaRv\xc2\xa6/^\xc4w\xb6\x9dE5:\x00d\xcc\xb2\xd8\x88\xc6\x14\xd7\xf2\xf8\xf2 5@(\x14)\x11\xec<8\x18\x15\x88U\xdf\xb4r\x00\xa7\xa2\x153\xa7\xd2\xb8\x14\x1f\xe2\\\xbd\x17[P*8'\xd6\xca\xd2\xe0\xc2\xb8[\x7fP\xc4\x8e\xcd\x18\xa3\xda2Q\xd1\xcd\xee\xb8\xfe\xf1\xd1\x87\xfa\x83\x06\xcf\xd2\xd5!\xa6\x0d~\xb8\x1e>\xbddu\xdf\x96\xac\xfb0\xca\xf7B\xdf\xf7\xa4\x9c%V\xa5\xf1i[(\x83\xb4\x96g\xa2.\xa9\xbbP\xaaNFqfG\xe9\xe1\x12\xd1\x98\x890mq\x9a\xa7B\x80\xee\xb2 \xea\x8eh\xe1j\x04\xa5\x1c\xdf1\xbb\xa2f7C?\x1c\xa4\x0cE\xda\xe8\x11\xe8? \xa7_)8\xf1x\x07\x18\xac\xc0\xe2\xf7-3~ytb-\x9c\x8a\xb2}\xd6\xb7e3X~\xdc\xfd\x92aD.Q=\x96qV\xc7w\x86\xc1\xf5\x8d>#\xbaw|\x84\xa4\xc2\xc3V\xf3\xe3W\x96\xd8\xcc\xff,\xccz;\x99\xb3=&g\x0f\xebZ\xd6\x97\x13\x9d3\xd2.v\xab#T\x06\xed\xec\xba(\xeb\xa7\xb7\xe5\x9e\x0d\xf5!\xa7\xa2\xab\xf0@\x99\xba\x99\xad\xb9H\xa5E]\xa0\xe3\xad\xf3\x853 \xd4\xaa\xbc6\x0b 1\x88\xa6\xa9\xc8\xec\xa1nzU\xdb\xf2rj\x9dG\xe6\x91\xfa\xa65\xc0\xb1\xaab\xd3\x080\xd91t\xb3-vbL\xeaJ\xe1\x8c\xben\xfa\xa7\xea\x9f2G\xbf;\x9fN\xd5\x9dv:\xf3\x9f\x14\xb9\xe9\xc6\xf0L\x87@0\xcd\x82\xb7q\xd9Z\xdf\xa2\xdf\xe34l:\xb6\xb4\xea5]\xf8\x8d\x16\x11\x0c\x0f\x88\xc9\xbf\x13\xa3e\x06,\x0f\x88\xe3y@R\xaf\xb2\xe0z\x80\x07\xdb\x03\x92\xba2\x0f\xe3\xc3!\xe3(\x14\x8b\xb1>&\xf4J'Yx9\xfc\xc7\x94`\xed\x84\xa7\xa0\x13\xef\xa0\x82\xc0\xdc\x8d\xee \x84@x\xed0\xa4\x90\xe0'\xe15\x9a\x8d\x1a2\xa1\xb3\x04:dBJ\x01\x89L\xb79 M\x04\x82\x03\xce\x83*b\x10\xb4\xc2\xa4\x17\x82\x8c\x18\x94,\xb8\x11\xdf\x80\x11I0\x0e\xf5\x14\x17\x13\xe43\xe9\x8d\x9eU\xf5\xaf\xb1\x16\xcah\xdc\xee\x9b\xe6\xa3\x87\xd8\xa9\x12u\xf8\xdd\x1fT\xe4\x14o\xc7\x17\xb9\x900\xe6P\xf4\xc2d\xdc\x93\x86\xf5\xf0\xceu\xf9i\x0c\xfc\x1a\xc76\xbe\x8e\x8dB\x058]z$G\xf9DGA[\x97I[\xd6\xb5\xacDo\xf5J%\x93\xcf\xf7\xe7Jz1qzJ\x15\x80\xa2\x8f\x0c2\xe3\xe0\x02}\xef\x1bz\x8f\xcc\x80\x81\x99\xdd\n\x06\x02\xc8G\xdd\x9e\xafu\xa1%\xe9\xf6\x0fa\xe8p\xe9\xb2\xee[,\x045!\xa0C\xb5N\x1dAt\x00\xde\x1d\xf5\xce\x1b\xe8!F\x81\x06yxH\xa9\xd0\x8fh\xa8\x07\x90\xb6;r\xd3\xbe\xe2=2#\x80\x8d\xf8\n\xc1s\xf1J\xa8 @$n\x8a\xba\xe7\xb7}\xb1/\xfa\"\xa8\xfaj?W!\x8b\xc2\xe1\x1e<\xf5\x12U\x0dAF#\x1d\xd3Rl\x17\x02zW\xd6W\x95qg\x9aso\x11\xe3\x7f\x9bh\xce\xd2\x15\xae(\x98\xder>M\x9c\xa5=m\xda=\xe3JTe\xf8\xedV\x0d`\xd5\x00\xfe64\x80\xe9\xf9Y\xa0\n\x04I\xcd\xd1 \x86\x08\xaadE`8\xa8S\xf1\x9ftl\xc2\x08{\xde\x9d\x12f\xbd3\xb1\xf5F,\xbd \xbd\x18\xb2^\x18W\xcf+P\xfb\x85\xe9\xde\x8b\xa8\x17\xbcM\xe3\x17Rf,\xbd0\x92^^\x1c\xbd\xac(zA\x0c\xbd~\x19\x82^N\xfc\xbc8z\xdel\xec\xbc\x9c\xc8y}\x1c7/'j^\x143/3b^\x10/o\x0eZ^\x18\x19/\x03.\x1e \x15/\x0d\x01o!\xfe]^\xf4;\x1f [V\xe4\xbb\xfc\xb8wYQ\xefh\x98wY\x11\xefBxw\x99\xd1\xee|Xw=\x15\xe9n.\xce\x9d\xc4\xb4C\x08\xe2(w\x0b0\xee<\x08w\xc1+>\x88n\x17\xbf\xff\xf3!\xdb\x85p\xed\xc2\xfd\xc8\x8ai\x17B\xb4\xcb\x84g\xb7\x0c\xcd\x0e9I\xd8U\x9e\x17\xc9\xaeGq\xec\x96\xa2\xd8Ea\xda\x02\x08v$\xfc:\x1c\xce)\x0d\xbb\x0e\xa7\xe1\x00\xbc,F\xad\xa3N\x06\x05\xb1.\xbe\x9b\x9d\xef\xab\x1f\x1f\xba\x9b\x17\xdb\x8d\xde\xff\xb9\xb8nqT7z\x1f\xd09\xcc\x87\xe7\xe6As\xf3b\xb9\xd1;\x9e\x8c\xe3\x16Fq\xf36\xec\x0f\xde \xcfcf\xf4\xb6\xe9\xa5\xe9\xc5n\x0b!\xb7E\x07\x89G\xe7Q\x07\xba\x10\xb1m\x1cb\x14\xaf\xcd\x87\xd66\x8d\x1f\x9c\x89\xd56\x83\xb3\xc6Q\xda\xe2\xc7./B[\">\x9bw\xcc\x10\x8d\x8a\xf5\xa3x\x05\x8f3\x90&\x05\xb2c\xb2\x85\xd0\xc9\xc2xl\x99\x86\x93\x0d\x89\xcdF3H\xc3a#\xa1\xb0e\x1cp2\xfe\x9a\xc7C\x07\xf6\xb8\xa9\xe8kA\xec\xb5\xe00\xe3\x91\xcb\xd6$\xcc\x81W\xc3\xa0\xd4\xa2@j3\xc5\xe0%\x10j\xe2\xaf\x13z#\x19\xd7P\x15\x85O#\xc7\xdaFo.z@]\x97\x174-\x1cG\x1b\x00L\x93Cr\xf3\x16\xd0\xac\x85\xc0\x0e\x9d\x11S\x98\x17$\xcd\x03\x91\xe6\xdf\x86\xb9\xe1\xd1\xb2\x82\xa3\xe1\xd0h\x19\x81\xd1\\X\xb4|\xa0h\xa6\xb2m\xb6\x90\x13\x10\x0d\x85C\xdb\xe6\x05CC\xa0\xd0r\x03\xa1\xa5\xc1\xa0y2\xdd\x9c\xa0RBd\xab\xfb\xf1\xa2p\xd6\xf4\xc4\xb6a\xe1\xef9\x9f-\x1c\xf9\x1a\xe4i1\xb1bf\xfc\xab\x97\xceZ[\x9a\x18\x0f\x1b\x8b\x88\xcd\x1d\x13\x9b9*v\xad-m=9#d\xe5n\x8d\xc4\xc8\xe6\x8d\x92%\xc4\xc9f\x8f\x94]kK\xcb')\xb2vqlm\xee\xe8\xda\xb5\xb6\xb4\xf9\xd0\xe2l3G\xda\xae\xb5\xa5\xd7\xda\xd2km\xe9\xb5\xb6t<*\x97\x10\x8a\xba\xd6\x96\xa6L\x0e%R7>\x0b\xa4h\xdd\xe4x\xdd\xb5\xb64F7\x1a\xbd\x1b\x8b\xdf\x8dG\xf0\xae\xb5\xa5\xd7\xda\xd2\x93g\xad-\xbd\xd6\x96\xb6\x9e\xac\x11\xc1\xf7\x11\x13\x9c\x12\x15L\x8c\x0bN\x8a\x0c\xa6\xc7\x06\xaf\xb5\xa5\xe7D\n\xe7\x8d\x15^kK\x87\xa2\x86iq\xc3km\xe9\x99q\xc4A\x15|\xad-=\xa5\x9e=\xb6\xd8\x0d\x04\x9e\xdb\x1fd\xcf\xe6\x8c1\x06O\x941\xf8\xe3\x8c\x9d\x10\xc9L\x91\xc6\xb3\x9d[kmib\xec1Jn\xad-\x9d5\x16y\xad-=>\x99\xa3\x93\x13\xe2\x93\xd7\xda\xd2\xc6\x93)^y6\x7f\x8eG-\xc7g\x15\xa3\xb3,r99v98~\x88\xc6/\xaf\xb5\xa5\x97\x0e,[D\xf3\xb2\x98fbTs\xf6\xa1'\xc76{\xa9\xf5kmi\xf1\xac\xb5\xa5!%<\x9atm\xa6\x15R\xce\x1c&\x1d\x0b\x94^kK\x1b?\x87\xb6j\xee\xe0\xe9\xcc\xe1\xd3km\xe9\x84P\xea\xffz\xb5\xa5a\xba\xbb\xc7`d\xeb\xe6\x1c\xff\xbc\x16\xc7\xd1\xcf\n\x8d=\xed\xc3\xdf\x104v p\x9f\x06\x88\x8d\x10H\xc8\x1b\xb0\x8b\xa0'\xa7\x0c\\\x97]\xef9a\xfc'\xebl\x19\xb5\xa8\xc5\xc9\x95\xe1\xc0\xb2\x00\xbc\xb2%\xcc:d\xb2\xd0<\xb6\x9b\x92\x12uU\x84$\"1\xc8]\xb6-\xbar'K\xd4\x8b\xfe\xbb\xef\x85T\xcd\xb0\xa2)\xa8\xe2:IT#\x89\x96\xc1(N\xa7\xfb!\x1d\x13\x9c\x01^\xea\xd4\x08\xd8\x15'Y\x0eN\n\xfb\xfa\xcf-\x97\xf6\xc4\xb6>\xb5\xcd\x8eu\x9dT\xe9\xc5| \xf4\x14O\x16?\x8b*\xdfO0\x7fXY\xef\xaa\xb3t\xf0qV5\xbc\xcc\xb5\x98\x82\x8f\xf7\xbc\x93}Q\x82\x8c\xea\x857\xb7\xa1\x18\x03\x8c\x1f\"%\x0f\xa5\x97\x88A\xdf\x16u'\xfd\x7f\xc7bw]\xd6N\\\xa2\xe8\x05Z\xf0$\xb0\x14\xbe\x8aB$A\x16\x97c\xb3\xa7\xba\n\xef\xb6\x98h|t\xf2\x04\x9dZvsO\x07\xe8\xba\xe8\xae\x17nrOd\xeb\xa9h\xfb\xcb\x8e\xf5\x97\x18\x9b\xd1O\xc4\xca\x14\xeb=\xe0W\xa2\xf5\xb3h\xa1\xac{v\x85T\xc9\xd4O\xbc\xa0Lh\xaa\x802]\x10\x9f\xb2a\xc1/\x8a\xb6\xefX\xff\x9d\x989l\xcb\x08\xad\xbf\xbf\xc4\xbbD\xda\x91h\x17T\xf3\x9c\xac<\xd7r\xd3\xf1\xe3?y\x97\xff)s\xf3\xa3\x84\x9a\x99\xf0t\\\xc2\xa5-\x04\xff\xd3 \x9as\x7f:\xf7\xe3\xdf\xc6\xb36\xa1\"\x84\xc5{\xeb\xe3\x98\x0b\x97\x97nq:e\xa6(\xf6\x9f\x92\x073\x93f\\\xdb\xaaw,3\xd9a\xfd\xc7\xeb\x13a\xa3\x9c\xd34\x1d\x9b[\xc7\x9f\xa6\x82\xc8\x13mIw\xc3\xb5*52y\xe2$\xcf4\xaf\xc1\x9b\xa2\xea\x18\x9a\xc3\x9f\x94\xf0\x9e\xec\xd0\x88\xe5\x9cBlb(\xe2N\xbe\xfcSH\xccA\x05B\x1e*\xc4/\xaa\xd85\xd5\x07rR!>\x83@\x9cEX\x90\x9f\xea%\xd8[\x89\x16\x9eh\xe1\x99y\xaa^b\x81\xfcU\x98\x9b\xc3\xea\xa5&:\x15\xc9c\x05\xc8\x90\xcb\n\xf3\xf3Y\xbd\xf4\nRN+,\xcbk\x85\xb9\xb9\xad\xfenW\x95\x98\xafh~+\xcc\xccq\xf5\x12\x13\x99m\x84\x11\x8b\xb3\x0d\xf3\xe5sCjN7\x04\xf3\xbaa:\x82%\xb9\xdd\xb0\xfc\xae\xa0\xe4y\x03q\xd6aA\xbe\xb7\x97\xe0\x96\xa5\xe7|C|^\x8007\x10\xc9\xff\x86\xf8\x86\xd6\x0fu\xfa`V.x\x90\x1c!7\x1a\x089\xe1p?\x83\xcd\x98\x1f\x0e\x8bs\xc4\x81\x9e'\x0e\xf77\x1di9\xe3Ar\xd3@\xc3\x94\xbcq\x88\xe7\x8e\x03m\x12(\\\x1d\x12&*[.9\xf8\xf2\xc9\x81\x96S\x0e\xf1\xf1S\xc6\x945\xbf\x1ch9\xe6@\xcb3\x87\xb4\\s\x88OHL\xd6\xf1'Y\xc3\x82\xdcs\x0f1\x91\x8f\x1e\xcd?\x87X\x0e:\x80?\x86Y>\x9e\\t\x88\xcfW4 +6eKr\xd3Q\x82\xcdt\xc6'o\xc5\xb6\xfc\xd2\x0b\xb5\xe0E\x00\n\xd2:\xdc\xd4\x01?\x8c|\xa2\x1a7\x10\xec\x14\xf2\xa1,\x92|&\xbd\x03\x1b\x19G\xfeM\xa3\xe8\x86\x8cz\xd6F\xed\x9b\xe6#\x9c\xaab\x87fj\x80\xb4\xc7\x9f*&\x1a\x0eY\xf1\x12'%f\xc9K\x9a\x18\xbb\x87\xd6\xbc\x9c\xeb\xf2\xd3\xe8\x9e\x89n\xe3)A\xdf\xa4(?\xc4\xe5\xb6\xa8\x8az\xb7tR\xe8C\x9d\xb4\x8b\xfaF\xf4o\xb7\xd7\x1e\xab\x95|l~\xd5\x17m\x8f\xd90\xe5#uS\xce\">\xdbH\xc7&57\x1a\x15x\x83\xd9<\xf5\xd9\x90\\Z\xf2\x00I5\xda\x1c\xbco\xd0\xa6\xc1n\xe1\xb0\xa3\x068\xf9(\xe1\xf8u\xbdkEN\x994\xb5\x85r\xd6\xcbN\xf0R\x9f\xfb;\xd1\xf0*\x9f\xa4\x11\x91\x06\x14\\\xe8w^\x83\xac\x18\x19\xdd\x18+\x9f\x14\x93,\x90w\xa4)B\xbe\xe2\xdd2,\x8f\xd6A\x92\xf7\x8f?\x9e\x18D\x1e\xe5MQ\xf7\\x-\xf6E_`\xfb\xcf\xea\x95V\x03\x8bV:'\xac\x06\xd5\x8fS\"\xb1a\x99\x03\xb2\xa3\x95\xb5\xb5\xb7\x10\xb8E\xe5\xee\\\x15\x86\xc2\x84\x00M\x8c\xdd\xa9\xaf\x84\x12\x80\x18\xb1\x04\xa8\x8cEQ\x812X\x8e\xf1I\x93\xc3!w\xc8y|\xb7\x1e\xb1\xc2/R\x04\x01^g\xa1HY\xda\x82\xd8\xc0\xab\xb4\xb2J+\xe6\xb3J+\xab\xb4\xb2J+\xd8\xb3J+\x7f\xa3\xd2J\x90\xaf\x04\x17(>\x1eg,\xa6\x91\x90\xfd|.o\x8a\x8a\xd5\xbd\x14\x1f\x9c\x97\x11\x82\xec\xd3\x8e\x9dz\xb9MK\x14\xe2hD\x1d\x18\xb8\xd3$\xa3E\x1dQy\x7f \x7f\x13\xe2\x17\x05\xe8\xcee/\x8c\xe9\"\xf4\xac*=\x90J\x83Q\xd1\x9c\xdb\xd0\xcc\x98\xc3\xa4N\xc7d\xdc\xf6\xf6R\x82\x93\xdd\xb9\x01\x9b*e\x16\xac1\xdb\xe4\x90\xf1;#_A\xb7W\xd0\xed_+\xe8\xb6\xedZG\x9d\n1\xc7\x85\xf5\x91\xa2\x96\xecX\xffQ_0_;L@.\x0d\xc1\xa9!/\xa9\xe7s\xceF\xc4\x91\xe0\xdd\x0f\xd6\\z\xbd\x04\xb8{\x00w\x05\x8c\xb6\xeb\x05=q\x88Dz\x82\xaa\x9e\x01o\xf1\xfdbR\x12t\xc0\x88\x80\x14\x13\x8d\xe27\xb4\xab\xeb\x95\xb8\x96g\x88F\\\x91CIy\x94;\x82ZG\x1c'91`\xaa\xa7\x95\x98\x8a6\x8e(\xa4\x85\x11\xf4\xaf\x0c\xae\x9c\x90\xb6\xa5\xf2\xf1\xd4+\x95\xc4\xc0\xe2b\xe6\xde\x179\xdf\xb2\x1d\xe3\xe2m\xd1\x07\x87\x96iH\x81>\xf7\x0d\xb5/1\x15\x88\xb8CbQ\x929\x14\x9eDU\x87\xd8\xf3y\xe1\x9dsT\x1ao%& Tc\x8aog\xe4\x8a\x9b\xe81V\xf9\xa3\x80\x16\x13\xd1_\x82vV4\xb8\xc8\xb1\xb7\xfae\xc6C\x8a\x89\xe6\xebv\x94\xcb\xe6\xce\xdc\x0fo\xde\xbfz.\x00\x8e\x941X\"\x05\x95\xe2\xfaz]k\xc9x\x80\x10U\xe1\x8e8\x04\x8cd\xaen#C\xf69\xdf\xaf?\x9f\xcbVn\x8a\xab\xe6\xaa\x11h%T\x9b\x12~\x19\xd8\x16\xa5\xaf}\xd6$\x8b\xd2h>\xfb\x02\xdb1\xc9V$m92i\xad\x86\xa3\xd5pd\xfe\xfd\xd7f8R\x1d\xb5\xe5\xad\x90\xe4\xe3\x95\xbcL\x02\xcf0\n\x86\xe8E\x95\xbc\x92\xc5\xad\xe1\x0e\x98\xcaX\xa4C\x11.\x9cA3\xd38K>\xb3L\xc6X\x12cB/V #\\\x1a\xc3{\xed\xf9/\xbd\xde[\x08#x\xe7\xc5\xae\xaf\xf9e/\x00w\xc4\x87\x0b^\xcc)u\xe1/i1\xab\x98\x85 \x8f\x10\x0b\x96\xb1\xe8\x97\x15\xb0\x98Y\xba\x02\x05\x14\x8a\x17\xad\x98]\xaebV\xa1\n\xae\x9cb3\x16/Q1\xa78\x85\x0f2>Z\x96bnA\n\xce\xc5\x11r\xc1R\x14s\x8aP\x84\x8bMd(3A*0\x91VHba \x89\xb9\xc5#\x00\x8do\xf1\xc5\x05e-\x18\x91\xbfTD\xd6\"\x11\xb4\xf2\x10\xf3\nCx&8T\x12\"\xbd\x18\xc4X\xf4\x01;\xe3\x9e2\x10=\xb5\x00\xc4\xdc\xd2\x0f\xb2\xc4\x03B\x10/\xfa\xb0\xa0\xdc\x83\xa7\xd0C\xf0\x8a\x0f\x16w\x88\xdf\xff\xf9\n:\x84J9\x84\xfb1\xaf|\x83\xe6\xa4\x13b\xa1\xc2\x0d\x99J6,(\xd6\x80\x9f$\xec*_P\xa0\x81\xb77\xa1\xd6\xa3\xa5\x19\x96\x16e\x88V\x14\x08\x14b \x95`\xc0\xd1\xc0\xd3\xca.\xe04\x1c\x1c\xde\xc5E\x16\xa8\x93A)\xac\x10\x1e7\xa9\x98Bb\x19\x05\x0c\xda=T:!O\xd1\x84e\xe5\x12\xbck\xb8\xa0DB\xb48B\xb8,B\xac \x82w2S\x8a P\xca\x1f \x85\x0f\x16\x96< \x16;H+s@*p\xe0\xa9 \x806\xefy\x97R\xc8`y \x03oG'\x7f\x9dU\xb0\x00\x02\xc5 2\x96%\xc0\x0b\x12\xcc-E\xe0-;\xb0\xa0\xe0\x00\xaax\x85\xca\n\xa0\x05\x05\xf2\x95\x12\x98_D\x00)\x180\xabT@\xb0,\x00\xbd \x00\xa9\x14\x80\xb2\xd2P\x8a\x00\xa8W\xa3\xf0\xff(&>\xde:\x15x=\x0e\xf6\x9f\x00\xf3O\x04\xf8w\x86\xb1\x00\xd4\x1f\x05\xf0_\x00\xdd\xef\xd8\x92P\xd0\xfeyp\xfd>h\xfe\xbc\xa0\xfc\xcb\xf6\x03 \x88\x9f\x02\xc1o\xde\x1c\x18\xec\xbe\xd4\xd50\xc0\xfd\xb0\x0e4\x1bd\x1fG\x88\xf2\xc2\xebc\xc0\xfa\xb6\xaf;\x13\xa4\xbeWi\xc5`\xf4\xa9\x00\xfa$\xe8|\x1ah~\x14.?\x01(\x9f\x84b2\xd25f;\x0f,\xfe\x18\xcc\x81\xc5;\xd0z\xe2\xec\xc8)\xd1\xd1g\xe2\x81\xbf7='>Z\xde\xac\x05\x7f\xc7\x8c\x7fXn\x1b\xf3\xef$\xb0\xfb>\xdd\xed\xe2\x85\xb6\x0f\x9ad\xac\xeeg\x82\xb3\xf7\x03\xd9\xd3\xbb\x82\x1a\x80\xe6\xc0\xd6\x0f\xf0\xf4\x08=\x1f`\xbd\x17\xaa\x9e\xde\xff\xb9\xf0\xf4q`zz\x1f\xd09\xcc\x07C\xef\x01\xa0\xf7B\xcf\xd3;\x9e\x0c7?F\x9db\xe1\xe2\xde\x86\x89\xe0f\xce.\x92\xdd\x97\xa4?:\xc4\xd4[\xfe\x04HB\ndR\xc86\xe1\xda\xc4\xe4\x04\x7f\x80v\x977\x192\x96\x0e\x19L\x88\xc4\xe3\x13\xe5\x13L\x86\xf1l\xf8`\xe8\xbd\x7fJ\xf2&Gz\xd3#\xc3[5w\x8ad\xe6$I_\x9ad\xd6DI,U2g\xb2$x\xd3%\xf3&LzR&\xb3'M\xa2i\x93\xf9\x13' \xa9\x930\xdd\xddc0\xb2\x11\xa8QUb\xa4?\x9fY\xcbI\x8d\xefh\"k\xea\xc0\x9a:\xf0+J\x1d\x98v\xd4\x13\xa1ON\x0d\x16\x89\x00\x8aV,C\xd8\xac\x9d,\xa7\xdc\xd9\xc0\xde:\x81Xl>\xbaP\x13+\x87'\x0dw\xcbv\xd7\xbf\xfb\xedSj6\xee\x98>\xdb\xb5\xbb9\x1d\xb16\x06J\xcd5\xd7[u\xfeUP\xbc\xce\x020\xa8\xa9\xef\xdd\xae\xee\xbb>cW\x0dj\x91\xae\xeeY\xd7+\xd6eP\xd2=\x9f\xf6\xd7I)\xc6\xe4\xa7\xa5\xf9\x1d\x91\xa4\xe1\x99\x12iLL\x9f&\x07[\xfc\xddI\x11\xb6\xe6\x10\xcd\x12F\xf2\x83#\x99\xc1\x84\x81\xcd\xb5PMS\x83\xcd\xb1\xd9\xf9\xc1\xe6\xc0\x02d\xec\x81E\x92\x85\x17(O\xa1\xd4`m\xff\xd1\xbf\xddr\xb1+\xd8\xff\xae/\xda~\xaa\xfdIy\x83\x1f\x99\x8c\xfd\x1e\x89\xea\xf37\x8aW\xc6\x91{j\xf8\xfb\xa4T&\xb6!\xae\xe5\x98C\xf3Y>\xdd\xaca\xc2\xae\n\xa9+Ks\x84\x7fIUsN\x16\xb0\x91\xef\xeb\xd0\x0b\xa8\x99\xa1\xfd`\xde\xa4\x93d_\x9b\x8f\x18\xe9\xbeCr\xafE\xc9M\xf4\xb5\xda\x9d\xa6\xf8Z\xc4\xad\xd4^\xbc\xbbfG\xedh\x19\xad\xa1\x16p*\xda\xbe\xe4\xa2{k\xa5\xf4\x8eM\x0dkg\xe5\xf3\n\xff\xb9\xf5\xb5\xba#-\x83\xf7\x84\xfcpLl\x1b-A`\x11\xd3L\x96Z\xbc\x17\x0e\xba#\xf1\xbdh[\xdc\x97\xdd%\xf6\xdd\xe1\xbd5\x82\xbdso\x8a\xa9O`\xc6\x85\x80\\\x00^\xd6\x1f\x97]\x16\xf1\xf6)/\xc7\xb8x\xbc\x0b\xd6I]\xca\xb3m\x96\x81qk\x9cO\x07\xd7q\xc2\x9b\x17se\x12?N\xd8\xf7\x18\xf7\xcd\xc7wQ\x8ek\xad\xe0\"\xe6j1T*[I\xce\x8b6\xbbq\xc9F\xce\x84~\x8e\x93\x80\x98X\x1cU\x83S\xc1d\x17\xb2\xb0 5G\x18\x0e\x8a\xc2\xd1\xc1\x10@c\xb318\x88\xc9\xb7\xde\xde\x86'x\x11\xf7\x9b\xd0B\xe4Z\x9fT;\xb3\xb7Ky\xe3\x84\\@\x9a\xf5\xcb\xb2\xd1m\xe17\xf5\xcc\xe7\x97@\xe5\x99@\xe9!\xdd\x16\x95\x8f\x87BHr\xf5\xaf\xfa\"\xc6j\xd0\x99\xca\xacqA!.\x9cZ|\x18\x9c\xba\xe9\x05\xd2y\xa3\x80\xba\"X\x0eV\xeb\xd1@\xbc\xb8h\xba\xa2h\xd5K'\\,\x8b\xee\x94Y\xb7\xc9 \xbc/\xa9\x12\xed\x10\x99i\xb1\x83\xb8\xd5\x8e\xde)\xe7(\xcd\xb7\xe0M\x08\xf9\xacb\x10\xb7\xe4A\x8e\xee/\xb5\xeaAd\x0c(` f\xe1\x830hlz\xb8P\x1c&0`\x1c\x80\x88\x81\x00\xa2S,\x9f\xf9\"\x0fJ\xce\xd5\xe4\x8c\xa6\xe2\x18\x81\xc4\x01/\x8d\xac\x98''EH\xb9\x03&\xc0 F\x06L\x19L\xaaL\x85\x12 i\x99\xe3\xe3\xb7\x1aB\x9e\xb1\xcc\x95\xb8\xfc[[:O\xfdVD \xe0\x0f\x12w\xa5\x17{0\x8b<&\x1f\xb2T\xa6Z\xa6\xf5<\xd2q\xcfb-\x91\xd6P\x82\xb1\xa0\x96\xf8\x1e\xca%\xbf\xc9\x07\x87\x18\x9ci}t>\xf5\n\x9eiVH\x83\x88i\x8ft\x91\x05\x97Y#\x0dBN\xec\xe8gq\x90\x85\x0c\nA\x82!\xa2\xb0\xde\xc3s\xae\xa5\xf5\x1eF\x9e\xf5\x1e^\xef\xe1\xf5\x1e\x96\xcf\xe7\xb8\x87\xd3\xfc\xeeI\xbe\xca$+\x8bE\xca\xb0\xb8\x18\xb6\x16\xf9d\xb0\xb8\xd8\xf4,\xeb\x8b|,\x1b\x0c\xc5\xaaD\x1d\xeaddzC\xa8\xab\x7fbTZ0\xc2\x196%\x04\xfc\x95lR\nX\x84\xd0\x8dD\xb3\x04QM@\xa3\x95cF\xeb\xce\xc7\x91\xd6\x7f\x19\xb1\xed3\xc45\xcd\xabp\xf0\x0b\xc6*e\xaaY\xf0\xcb\x04 \xa5\xd5& \xd4\x00X\xd8\xfd\xc55\x08\xd68\xa2_s\x1c\xd1\xec\xda\x01Y\x82\x89F\xca>\xb5\xde\xfa|\x886_Z#@i\xef\x92XzA\x00\xfaE\xf9+\x8b\x19\x9a\xc3\xba?K\xa8P2\x8b^\x10\"d\x9d\x80\xd9\xac\xd8`}\x069\xb7\xa33:\xb8\x80\xe5\xae\xc1@\x89\xcc3\x1e\x0c\xf4\xaf\x01\xa63\x8fU\x12\x02\x84\x86\xec\n2\xef\xf0\x170\x88o8kng\x96+\x98\x94'0\xa7\x18/T\xe0/Q\x80\x8a\xc0\xb8\x00\xdc\xa3\x05 \xbc\x97uX0\xcbX~\xc0_x _\xc9\x81l\xc5\x06\xbce\x06\xfa\xf9\x05\x06r\x95\x16\x08\x17\x15\x98UN`v!\x011\xde\xa9\xa9\xc6[B`v\xf1\x00\x14s\xc0S6`I\xc1\x00Q\x1c`:\x1a\x04\xd3qN\x91\x00\x7fA\x80\x85\xa5\x00HE\x00\xe8\x80\xff\x0b\xa0\xfe\x17\x80\xfc#\x0c##\x94\x7f^\x10\xffl\xf0\xfdq\xe0\xfel\x90\xfd>\xb0\xfe%0\xfd($\x7fO\x01\xe3\x9f\x0b\xc3\xef\x85\xdc\x9f \xb6\x8f\xc0\xec{/JZ\xf6\xafs\x83\xce\x84\xd3\x1f\xa1\xf3\xb1\xf9\xfd\"\xde\xf62\xf0| \x96o\x90sa\xf33\x00\xe6/\x83\xca\x9f\xec\xf2\xe9e\xb8\x10\x1e_M\xb4Iq \x10~\x10\xe5\xdd\x03~\x1f\x85\xbdw\x11\xa0\xe9P\xf7\xee\xb7\x7f\xc5\xc6:\x0b\xd8\x9e2\xd8\x18\x98\xbd\x7flQ\x00\xfb\x04\xe8\xfa)<\xb7\x0f\xae~9P\xfd|\x88zt]f\xc2\xd2\x07\x01\xe9\xfdP\xf4!\x10zt\xb2\xa8\xc0\xf31\xc8\xf9 \xd8\xfc\x02\x98y\x02\xc0<\x1dZ>\n*\x8f`\xb3;\xcd!\xef\xc4\xc0\xe3\x97\xc1\xc6\xa3\x9d2\xfe\xb2\x08$~\n\n\xbf\x04\x0e\x1e\x81\x7f_\x04\xfc>\x05z\xcf \xf1\xee\x03ww`\xdd\xf3\x00\xbag\x83r\xcf\x0b\xe2N\x83o\x8f\x02\xb7+]?\x06\xd9\xae^\x0b\x82\xb5;\xa8\xe6nkT\xd8\xed04;\x11\x94\x9d\x00\xc7nu9'\x04\xfb\"\xf0u\x17l=\x1f\xccz>\x80\xf5\xf9\xab\x1b\x05U\x8f\xc1\xa9k.=\x85P\x97\x9a\xc4\x14<\xdd/\xb1g\x04LG\xa1\xd2\xa7 \xe9VOr\xc0\xa3\xa3\xaa\xd3\x14\x12\x9d\x02\x86\x1e\x85A\x8f\x03\xa0\x07\xa1\xcf\x89\xa0\xe7S\xb8st|\xd6,.\x878\x1f\x03<\xa6\xe0\xe6\xf1\xd6\xad\xdd4%4\xda\xac\xd3\xa0\xcc\x07:\xdd\xd8\xc5\xb1M\xbc#\xc6?,S\xb9\xf9\xf7(pyO7y\xa30\xe5^E\xde\xeaj\x06hr\x1c\x94\x9c\xd6\xbcc.\x98\x0fA\x0e\x93X-@\xc1\xc7Q\xd8qZ_\xe7@\x8d\x87A\xc6i\xed\xceD\x10\xc7\xd0\xc2Q\x9cpZ/\x92\xb0\xc1G\x87_.\xb7\xb5\xb5Q\xa6\xe4\xf5\x8c\xcc@\xff\x9e\xde,(\xee\xf7\xd8^>w\xb7g@}\"\xb2\xf78\x00\x83\\\x10\xd3\x1bC\xf3\x9e:\xe2g\xe0x'\xb0\xab0jw\x98?,@\xea\x16F\xd2 9\x1aF7:6\x08&9\xe0\xe8\xcd\xde\xa3\x06\xd1\x81CV\xfcm\x1f\x10\xb3\x1fs{a\xd7\xd3\x11\xb6\xd1\x9d\xad\x9f4l\xed(\xaav\x86\xc1%ch#N\n\xb0\xf1\xc3)\xe8\xd9^\xdcl\xef\x90\x12\xc0-\xe6\xc0aO\xa1\xaf\x83\xa0\xd7\x892\xdd\x12\x88k\xf1\xd7/\xcc\x81\x8eY\x11\xa62\x15\x84\xb5\xfe\x1c\x81,\xddB\xe0jB0\x8b\x17\xacZv\x9d\x14\x8e\xec\xec\xacp\xf0\x905\xc4\x85@\xd4\xde;\\\xfc\x0d\xdf>9a\xa7\x97\x03Nk\xf7\xaf\"8\xc6J,\x05\x99\x9e\x00K/\x84\x94\x1e\xb57Eo\x04\x93^\x0c#\xad`o\x15\xb9\x11@z\x9b\x0f:z\x02\x1a\x9d\x13.:\x02\x14\xadB\xb8\xce\xa7\xab\xb6\xd8\xb3!\x84\xeb\x8f\xe2\x0c\xfe$\x9d\xe4\xf2H9\xa2\x85+Rp\x0d,\xc2]\xd4!3\x03q\x8a\xd3I\x9dy\xf5\xd6\x8d\xd9\xac\x97R\xf8\x14\x0f\x01Z\x9a\x9a\xa75\xeb\x0c\x0e!\xba\xd6\xf0\x07\x07/?\x89\xf2S\xe5z\xef\xdcf\x06'\x08\xca\x9d\x7f\xe7\x9f\xf1\x8b\xaa\xc8:\xd1\xfe\xbb\xe9\x1d\xeb\xe5Md)\xcc\xba?2\x94K\xfc\xa4\x0d\x8d\xc2e/\xf7\xab~\xcd\xb22Nf\xb8k\x0e\xfd\xad\x08\x92n\xf8lW\xd2\x89(&\xb1\xa8\xe0AS?UD\x1e\x88[\xb9\x18\x83\x99E\xbf\xcfb\x18\xc6_8Ma\xb9\x85\xaf\xd8UY\x7fU5\x83\xe3\xc3\xf0\x1e(\x9a\"\xfc\xe6$\xf6\xbb\x00\xd9\xe6\xff\xac:3\xf7@\xc8\xd6&y.\x86\xf6\"\xdcQ\xd9\xf1\x8aq\x08zh\xfc\xd4]\x17\xf5\x9e/=\\\x957\xac\x1e'L\x84\x04\x99\x14uW\xe4\x07\x03\xa7\xd6\xd3:^\x83\xac\xd7\xbcS7\xf8\x04J \x0cn\x90\xb3c(Tl\xd1\x10\xba5\xf6\xb5\xec\xa09\xf7O\x9b\xc3\xd3\xbd\x14MYm\xcd\xcc{.\x0bY2\xeaw:\xb0\xda6A\x17\xbbk\xceV\x94\x87g\xa0/\xb6\x03\xfbT\x0ez\xfa=\xa9\x98_\xb3S\xcbv\x9c\xb5=\x97}\x96\x9cU\x0d\xa3\x931Fb\x02\xf7\xc3\x9b\x1b\xe3Md%\xaa\xe6\xaa\xdc\x99\x83\x1c\xd6\xa0e\xc7\xe6F[g\xf9p\xdf}\xfd\xbf7\x8eu\xbf\xec\x94\xebE\xc5\xda\x88P\x97'Ct\xd5pR\xfa\xeb\xb6\xb9\x1d\xa4\xde\\\x16\x85\xf7\xa8q`\\\xd8\xa3\n\\9\xb1\x96S\x1b%\xda\xb2>44~lA\xe1\x0b\xbf\xff\x18\x1e6F\xe6\x0cg\xac>4JS-\xeb]u\xde\x8b\x8b\xef\xe9\xee\xba(\xcd\xcc\xe5\xee\xbc\xbb\x96\xfa\xc0U\xd9K \\\xe5\x08\x0e\xf7/\xe7\xa0\xe7j\x0f\xc5\xb9o\x8eE_\xeeD|\x9fng\xc8\x19\xd2\\\xe7R&\x00^v\xbd\xa5\x1c%h\xf4\xfd\x1as\xbb\xc6\xdc\xae1\xb7k\xcc\xed\x1as;\x975\xd7F3\xd9\no\x06f\xdd\xe5#\x17a\n\xda\x9d\x11\x98H\xdf\xe0t+\xa1Z\x98\xc6g\x8a\xda\xdb\x8b\x97z\x03\xc9\x8b%:\xad\xe7\xfe\xbai\xcb>\xbd\x12L\x1c\xef\xc1\x1a\xf0C<\xe6\xe1\xa1lN\x9a\xb2\xf1\x1e\xf9gB\xcd\x82\xfe 2\xd4\x97\xd2\xa40k\x07\x9d\x06\x17\x9f30\xb1\xd8:^J61ly\xfe\xdb\xac\xe85\xdbK\x08\xf3\xed\xdcK<\x86\x13R\x98\xff\x10r\xfb\x10\x01\xf5#\xc2r_\xe2\x84ZQu\x8d\xe3O\x84\x0c>\xc5 9\xc7\xc3\x08\xcb\xbd\x8c\x13jj\xe5\xa6\x8d\xe4\xf46\x82\xcf\xe3\x08I^Gp<\x8f@1L\x11\x82\xc8\x9c}\x9f\xd1\x13 !o$$y$a\x99W\x12\x90\xbb\x0c(3\x18)\x985\xdbK \x8e\xa7\x12B\xdd\xf1\xa1\xd2-\xf3ZN\x88-u]:\xfc\xc0\xf8C\xc4\x99 >&\x0f\xc10\xde\x1eulBh&!z\x00 \xaf\x93\x13\x82\x8eN\xc8\xea\xec\x84\x9c\x0eO\x089=a\x99\xe3\x132:?!\xea\x00\x85\xb9NPX\xe2\x08\xc5f\xec\xee$\xf6\x8b\xc7\x19\nK\x1c\xa2\x08-\xc9\x8fM\xe7\xaf\xac{v\xc5Zg\x02\xcd\xe3[\xe9\x86\x00\x9fvv\xc3\xea\xfe\x9eY\x9cx\xdd\xfaK\x80\x0d\x15}\xdf\x96\xdb\xb3\x03B\x84wM>N\x07\xcd\x0f\xd0Z\xc8\xe1j\xc8\x00V\xa9\x13\xf3 \xb0O\xf0\xdb-\xa3_\xc6\xcd\x93/\xf4\xbc\x98`c\xc3d\xc1m[\x9cN\xac\x85\xdbk\xa6\xcav}dw\x82\x85\x8a.!\x04\x8b\x16\xf7\xd9\x88\x0evP\xd6]\xcf\x8a=g\x85mq+\x0e\xa5e\xa5\x0d\xb1\xf6w\x82\xc6+\xbe\xb5\x86\xde\xb2\x1a\xe4\x1ft\xcd\x1d\xab\xc3\"\x89\x90\xdf\"\xc3\xea[\x04\xb5\x13\xf4#\xbb{&U\x91SQ\xb6\xca\xadV\xb4\x8c\xd8k\x7f\x9fE\xd7:\xb3:iW\x95;q\xc5\x9a\xbdV-\xde\xf2.\xb3c\xd9\x0b\xa0\x0b\x11\x80\x03]c\x85\\\xb0Olw\xee\x07h |}m\x86`\xe0\xa0t}{\xde 4=\xd5#\x85\xb9\"\xd8\x00\xd7/?\x89o'\x86\xdf\xaa\xb9\n\xf3\x1f=\xb9d\xd6\x83T\xfc\xb16\xf0d\xbb;o\xe0\x13\xbel+\x8b\x8d+ \xc5V\xdd;\x13\xdf\x16\xdd\xeb!\x12\x830\x0fWEwy[\xd4\xbd\x0b\xa6\xea\xb9\xc3\xce\x81\xc0\xc8o\x8b\xeeO\x82\x96\xbe~4 \xd5\xb9\xe6\xe2Ns\x80\xdb\xa6\xfd\x08\xb7\xca\x0b(\x1dT\xfd'aJ\x971%\x1b\xa3[\xe7.W\xa7~\xec\xc6.\x8d\xb8.W\\\x17\xdb\xf5\xd2\xfb\xcd/\xf4\xf3\x11\x8d\xd1TS:\"m}\x1a\xcf\x80 \xa2\xbc\xd9\xc1uy+\xdc\x9b\xe4e\xd9\x17}A\x1c\xbb%T\x040\x19\x8a\xbe\x10r`}'\xa8C\xcb\xfas[\xeb0%\xad\xb4 7\xaa\x0cG\x1b\x0f:\xbc\xee\xe1\x8f?\xbe{o\x90\xb3\xfdb\x15\xab\xaf\xfak8\xb5\xff?{\xdf\xff\x1c\xb7n\xe4\xf9{\xfe\n\x9c\xefjmg\xe5q\xfc6o\xb7\xa2\xbb\x97ZY\x92\xdf\xd3\xc6_T\x96\xbc/\xa9\xad\xd4\x08\xc3\xc1\x8c\x10\xcf\x10|\x04(\xcdd/\xff\xfb\x15\xd0\x00 \x92\x00\x01~\x91\x93\xab\"~\xb15$\xf1\xa5\x014\xd0\xdd\x9f\xee&\x1bz\x80\\[*i\xa1\x9cYN2\x0c\x91\xcad\xab\xd0\x18D\xb4!\x0e\xf3N\xd9(\xaf\xdd\x85/ltV\x0d6\xc5\x85\x94\x863\x96A,\x9d\x13\xb4*\x84\xea\x08\xc9\xd5\xfd\xc2\xdc\x80\xac\xca\xf4\xa6\xfaUm8 V\xf8\x04\x01\x90\xc0\x9a\x0e\xe6\x03\xdf\xd6/R_>\xbf7\x0b5t\x0biL\x89d\x86\xb5\xbawl[CM\x87'CW<_o\xfe!\xae7\x085.\xb0\xed/\x9bQ\xa9M \xdf\x8c\xd4\x01]\x9d)J\x8a\xd3\x89B\xbf\x92\xe3\xab\xea\xbep\x820\xe7,\xa1\xb8\n\x82\xe5\x02P\xa85\xe3\xbd\xea4\xba\x00\xb7\x03\xc5\xa8y\x0d\x96\xb7&\x0fd'\xe7@a\x15\xb0\x108\xb9\xb7u\x9a\xd6r\xae\xaf\xa6\x86\xcd\xc1\xc8*\xefh\xaaT\xa8\x00\xe5\x95\xa7\xa1yr~O\x92\xaf\xb7\x87\x86T\xfc\x1e\x0b\x92\x9f \x91\xe3\x94cm4\xdd\xe3#Z\x11\xf4KArJ\xd6\xa8\x90T\x92\xfb\x8b\x13\xbdQ@?\xd7\xf7\x7fs\x8f} \xc4/n\xf0ax_\xd7H#\xa0}\xbd\x80}m\xa0\x93\x1f\xd47\x05\xa4o\x0c\xa0\xcf3[\x83\xc1|\x01(_\x17\x90\xaf\x1b\xc6\xe7!^<\x84/\x0c\xe0k\xc1\xf7F\x81\xf7\xa2\xa0{}\x80{\x11\xb0='\x16\xce\xd1\xac\xf3\xbd0\\o,X\xcf\xd3\xbd\xdao\x13\xc3\xf4\xc6\x80\xf4\x9c\xb0\xbc\x89Ay\xd3B\xf2\xfc\x80<\x07\x1co*0\xde\x84P\xbc\xa9\x81x\xb10\xbc\x08\x10^4\x04/\x0e\x80\xe7\x80\xdf\xb9Z\x8d\x85Z\x85\xa0w\xd1\xc0\xbb(\xd8]\xa3\xf3\xd3B\xeeF\x01\xee\\\x10\xbb)\x01vS\xc2\xeb\xc6\xccw\x04\xb4.\x0c\xac\xab8\xbc\xdfZ]\xd3\x83\xb6\xad0F\x7fZ\xbd\xa2&]\xee;\xb0:\x9d\xa5\xc7\xba\xe1\xa8#\xc5J\xad\x17`\x9f3F\xc2\"\xd5\xac\xa5\xd4Q+\xb1\xcb\xad\x9c\xee\xb0\xfaYp\x81h\xd3\x9f\xa8\x19]\x1c\xa2\xa0\xcb\xd0\"\x9e@Q\xec0\xa5x\x05\xd3>bl\x17\xbeb2\x03:\x94\x90\x19\xdd\xd7\x99 a\x1e\xa3\x01\x1e\xde\xc5u{\xe8\x8d_\x1b\x11\x01I\xc3\xd5n\x1b\x11\x8f\xcc\xa2=\xdcc~\xdf\xc7\x12*+\xb2L8\x92M\xdf/J\x9a\xad \xcfp\x12\xc2\xd5\xe9>\xc9\xf3C\xbd^\xe2m\xcfY\x19\xc0A\xd6\xd5\xac&\x06^\xd6\xe6\x0f`\xff\x95\xf5\x99~FX\xe9]LFM\xed\x89\x11'\xf4\xab9~\\\xf64&\xd7\xf6\x8e\xa4'+DV\x08\x0b\xb7j\xf4\xa7\xcf9\xda\xb1\xed\x96\xe4\xe8\x85\\[P\xe9\xcb\x05\xfa\xa0\xccfV-)K_\xad\x89 \xf9\x9e\xa6\x94\x0b\x9aXv\xee'f7\x0e0\xa0]Os\xce\xa0\xf8#\x9b\xd4hiW\xe4\xe0^M[\xba\xfd\xfa\xb71[\x0b\x87\xa5\xddz\xe2\xb7>\xfb\xad\xee\xf6\xe7\xaeA@\xf1\x0c\x05J\xe7\x80\xa0t\x0f\x0b\x8a\xd7&\x0f%0B(\x1d\xf6y(\x11\xb5\x84\x14\xa4\xa6\x0c=\x84\xba;\xef\x83%B \x9d\x02\xf5\x12\x1e\xc9\xe0\x13\xacs\x8d\xb9\xfa?\xfa\x80\xb3Kh`\xc3M\xf4m\x1aZ\xe8\xc6\xd6\xc3\x96\x81\x1e\x05:7\x16\xf0X\xab\xcc\\\xf15\xec1\xd4z,\xeb\x97[d\xdd\x8b\xebG\xa4\x9f\xa9u\xeb\xcc\x89\x021-\xfa\xdb\xe9\x8dB\xec8\xa9\xcfj\x00\xbf\x9c\xfcR\x10.\x8c\xa9\xa9\xbap\x0cD\x1aF7l\x00\x85*\x88^\xbbY\xd1\xc2\xbcG\x05\x04\x14s\xf2\x9b\xf1\x80\x8d9\xf9\xcd\x08\x90\xc6\x9c\xfc\xa6\x1f0c$,cbP\xc6\x08H\xc6\xd4\x80\x8c\xc9\xe0\x18\xd3\x821&\x83b\x84\x81\x18\x93\xc10\xe6\xe47s\xf2\x9b1`\x8a9\xf9\xcd8\xd0DL>\x989\xf9\x8dU\xe6\xe47\xa6\xcc\xc9o\xca2\x02\xfe\x10\x01~\x88\x87>\x04\x81\x0fs\xf2\x9b\x89a\x0e\x93\x82\x1c\xa6\x848\xf8\x00\x0es\xf2\x9b9\xf9M\xed\xb50\x8caN~3\x1c\xbc0|v\x83\xc0\x85\x10l\xc1piA\xf7\x84\x0b\xbc\xcf\xfa\xa8C\xebZZZ)\x92\xb2\x9c\xdf6\xc4^\xa3[\xcc\x97jS\xf6\x84\xc98\xe2\xa8\xfb\x92\xba\x96M4c\x82n\xb1\x16c\xf4\xdaW\x82\xb9<\x80*\xb6\xd0^tZ\xd3\xd3$\xddJ\xe1\xbe\xe4T\xb0\xa2D\xe0B\n]\x95U\xde\xe6%\x19>\x92\xa8\x16T\xbf\xcd\xe2n\xcd\x18S3*g\xd3\xf6\x8d\xa8\xf5\xee9h+Vx\x87\xd3\x84\xc85\xd3V\xa8\xe3Lr\xe3\x9cbA\xacF\x8d\xa4\x82\xc8A\xc5\xfd\x87\xc1\xa8T\xc9\xeaY\xb37\xf2U\xa3B(k\xe1Z\x00R\xa2\xc0\x06S\x93\x06V\xd0,\xe6\x1apK3\xb3\xeb\x0d\x14W~j\xe1\x0em\xd5\xb9\"\x84\xe2TT2d%>Y\x95)~\xbdhX\xdd\xedH\xb0t\x9b2\xc91\xe9\xc6\x1e*]\xa7\xcf\x85\xb9\x88\x0b\x9a\xf1\x13D\x17da\x1e\xe0u]\x95]\xbbg\xdc\xdd\xd2\xec\x82$,\xc7\x82\xe5w\xb2[Tp\x941.\xb4#r\x84\x92\xb9\x94\xe5\xe6\xa3\xbbV\xe6\xa3\xdb\x7ft+NH\xedP\x82\x82fY_\xfe\x07\xdf\x94\xb5\xaf\xd79\xe1\xa5e\xd8\x1c,\xfaT*\xf9\xafn\xd5\xadd5gB\x03\x15j\xae\xf8\x9ao\x82|T\xba\x7f\x19\x85\xbb\x92\xf9\x0d\xfe\xbe\xc1\xe7\xdb2\xdb\xdb\x9c\xe1u\x82\xb9\x88Vq\xbf\xfd\xfc\xe9\xec\xe2\xfc\xec\xe6\xd6\xaf\xe7n\xbc\xf2\xf6\xfd\xa7\xf3?\xf8\x1e\xde\xfc\xe9\xe3\xb9\xef\xd9Y\xf9\xb0\xd4W\x07Zw\xd3\xb36\xc8\x86\x8ade\x9eUz\x12\xf9\xf3\xed\xe1\x86\xe4\x0f4!\x15\x85T\x16!\xa8\xb0\xcc\x95\x82\xc2T9E\x7f%9\xd3\xb6[\x85\xcd\x90\xed\x983\xdb[\x83\"\xda)\xba\xb8\xbc\xfe|y~v+\xeb)8qQ\xcf\x1cjF{\xe2\xaa\xc8\xa8S\xf4\xc9\xa3\xdd\xa5\xb4\xdeB\x89\xbc\x0f\xbfY\xfc\xf6\xdf\x16\x07\xc4R\xa5\xc8Zx;&\x9bl\xcd\x83\xea\x87\xc5E\x0e\x15]--\xa1\xf1\xe3\x84t\xfe\xe8\x11San\x8c\x920\x18i\xfb\xaf\x15\xf7\xbd\x8c\x07\xce\xd2\xdd\xd1\xdf\xa93g\xaf\xce\x86tK\xb7\x01a\xdb9\xa2{\x85\x08\x11\x04\x9a\xef\xd8A\xb7\x87\xcfp5\x89V\xc9\x88\xc3R\xa9\x9f\xfb\x1a\xf1Ps\xa5\x9b\x8a\x0c\x13\xca\xf1\xa3\xeb\x8a\xb7w\xf8\xe87\xda\xb2\xf7:\x8a\xdb\xef\xce\xd7\xec=\xef|\xc1\xda\xf7\xce\xe7g\xb5\x17b\xf7?\xea<\xf1\xa6\xe1\x03V\x85V^1\xe4`\x0bh\x12\xd6\xe0\xace8{@\x93\xb3\x08g\x07\x9f\x86M\xa0\xde\xac\xc2\xd9\xb9\xe9\xd9\x05\xf2\xb3\x8c\xe0\xa9T2\x8er\xfb\xea?\x85\x9d\xdb\xae\xb5\x0e\xcb\xcft}\xce\x1cR>F\xd53\xa0\x898\x94\xe1\x82\x9a\x0c$\xea\xa2\xdd\x0c\x88\x82b\xb4\x1f^\xe5\x87'8\x8az\xa3\x11 \x05E\xab\x1d\xba\x02\xa5 w\xb0\x94\xce\xcac\x82\xa6\xa0V\xe0\x94\xaaJW \x0e?ejCq\x06QQo\xd5\x02\xa9\xa0h\xdat\x05TA\xae\xa0*\xf1U\xff\xdf\xa6H\x12\xebe\xdf\x1d`\x05u\xb9\xdb\xa3V\xa0\x15\xf4\x8d\x04?o\xf0\x15\xd49\xefP\xfc\xb3\x8f\xdc\x81XPH\xa2t\x07dA\x1d\xc4\x80\xd2\x11\xcd\xa4\x830P\xc2\x91LT\x15\x9eg\x81\x01A \x05kA\xc1\x01B\xe9\x0c\xda\x82b\x06\x0b%\xb8\xef\xb2\xf6\xedy\xb2\xf0Hh\xd2\x10I\xa8g\x98$\xd4\xed\xfa3*\\\x92UQ\x198\xc9\x0e\x99$\xcb\x90\xb0IQ\x90G\xdd\xed\x12\xf3\xa8\xff\x16\x16\xe8Q\x7f\xe6\x80>v\"\x1d\xdf\x91xdc\xd3\xa9\xc6\xc5\xf8\xc7\x86\xd5s\xba\xfbx\xd9\xb0\xdb\xcd\xc7\xf3z\x17\x96n\xb0k\x8f]\xc9\x18\xaf\x1e\xe3\xc5c\xd7\x17\xef\xc03\xd2\xef\xd6\xe1s\xeb\xa4\xa1\xc7\xd7\xd6\xe5\xdc8\x91\x8f\xad\xdb\xbf6\xd6\xb7\xb6\xe1W\xeb\x1c\x93\x9f_\x8c\xf6\xa5U\xae\x9d\xf6V\x18\xe0G+&\xf4\xa1u\xfb\xcf\x8e\xf2\x9d5\xde\xb2V}\x1d~\xb3-\x9fY\xe7\x8c\xb8\x96\xd3\xa4~\xb2\xc3}d\x07\xfb\xc7\xda\x1e\xb16\xad\x06\xf9\xc6\xf6\xf0\x8bu\xafn\x15\x0b\x03\xae\x13nVa\\^\xd5@\xcd\x01\xa6w\xf0\xaf*\xa6\xa1Y\x8a\xda\xc2\xda\x03\xa2\x15AC\xc9\x9bH\xa9\xad\x14\x1f$\x9b\x0dI\x04-\x0dh\xcf\xb6\x98g9M\xc8\xb3\xf2\xfa\x03l\xb2\\\xef\x90\x9e\x82\xed \xda\xd3=M\x8b\xbdn\xd6\x809*@\xc6\x9e\xec3\xc6v\xee\x93\xeeG\"\xd4\x15\xf2g*\xeeo\x0f|\x00\xae\xff\x89b\xc1\xdc\x1e<1`\xc4\x01n\x13\x0d\xba6\x04T\xfd\xad\xfacI[\xe1\x11\xe3|\x0e\xe2\x1d\x01<\xd6\xd6\x0c\xe7b\xc9\x89X\xde\x13\xbcv\xbb\x85\xf6\x83{1\x81\xbdX/\x1f\xee\xbb\x0b\xf5\xdd\x1e\"\n x^\xc3\xb2\xe6P\xd78\x17\x9c\x88\x9f\xd4\x88\x7f\xd5x\xa8\xd6\xda\xd5\x85=;\xc3\xa6f\x1azj0\x85\x83\x02\xd0\xdd\x15\xe64\xd1\x9e\"R2\xf3PjP\xdc\xe1\xc6\xe0\xed\x12\x14\xb0;\xc2{@\xc1Y\xf64U\x87\x04ayiL9Iy\xc1Q\x823\xb8\xa7 \x80o\xe9\x9f\xf3b\xa7\xc32\xd5\xc4@E\x0fG}\xf6\xb6V\x9c\xbf%\x10\xc2[\x92q\x1bi\xafz\x19$\x95R\x9e\xa9\xf86\xf4\xc2\x0bX\xac!n]\x0dr\x81\x85f@\xa0\xf4\xdc\xe3\xe4\x9e\xa6\xa4)\xc2\xaa^\xd48\x90)\x1dS\xe1\xf2v\n|\xd2\xbd\xcf\x05\xdd\x0f\x05\x90\xac\xb1 \xaf\xe4\xf7\x8d7\x94\xfa\xbe\xcd_M\x19\xb13\xdcL \x85:\x8cB\xa8\x97\x00?6e\x02\x05\x9c\x87O\x97\x8f;\xf9\xb5)\xdd\xde:P\xfc\xa4B1\xe4Ba\x92\x05\xf8z\xe3\xa5:\x7f7E-\x95D\xa9\x8b\x97S\x9e8\xa8jXV\x0b\xfb\x19\xb8\xb5\xdc\xf6\x8dw\xe5O\x137\xaf\xf4\xe3X\xb0\x9cO\\qs\\\x95\n*\xcb\x8co@\xf9[\x96\x93\x07'\xfbL\xc9A,\x9f\xac\x8f%G\x9f\xb8^\x9ce\x13\xd7\xa8\xd6\x9f\x06\x8bN\\5y\xa0k\x92&d\xe2j\xcb\xf9\xaf\x8eM\xc7\xfdC2\"\xc6I\xbe\xd41C\xa6j\xbfv\xc8\xc3\x86\xaf\x07X,\xd5\x83*\xa4\xb7\xf1\xa4\x95\xef\xd9\xc7\x9f\xcfY\xb4\xd7\x15\xad&`\x94?:\x04\x0dS\xbc\xa6\x95\x007\x1c \x98\xbc=p+h\xefJ\xfb\xec\x80\x08\x08w\x85\x7f\xd7\xa2\xc9O\xeap\xff\xe77N\x9c\x11h\xcb\x14*\x7f\xb7S\xb2\x0e\xb8\x83\xe5\xda\x18\xb7@\xe8g\xf2<'\xe8/R\x10\xc4\xdb\x9c\x90*\x12\xab\xa3>\x88_\xa9\xd4\x00\xce\xf6\x94\x87\xc5\x9e\xe0T\xf7\x1e\xbax\x96e?a~_\xc9\xdf\x95\x9a\x9dp\"\xbbU\xbf\xe6\xe8\xc5z!\xefZ5\x8d8'\xe0kQ\x97\xd3T]\xeb\xda\xcd\xce\xaa\xcel\xa9\xd1K\xc7]\x11\x1a\xb7~\xbc\xf7\x82\xd0\xad`]\xc0\x8d\x92,\x1f\x98 K\x7f\xe7\xa0\x04o!\xe1\x16eQma\xff\xf3\xa8\x86Pdc\xc8T\xd7\xf9Fp'\xda\xa5\x19N\xc4] \xb6\xf1\xe5\xc5\xf2\xc3\xcd\x8f\xcb\xdb?]_.\xbf|\xfc\xc3\xc7O?\x7f\x1c\xf0\xe5\xf5\xe7\xcb\xff\xfct{9\xec\xcb\xf3O\x1f>\\\xdd\x0e\xfa\xf6\xd3\xf5\xa7\x9b2n\xbf\xaf\xd4\xc2\xee\xf7\x1fo\x98\x8d\xd5\x8b\n\xc8\xbb\xfe\xc0\xb7\xb7\x1a\x9a\x02\xde-rKk\xad\xaa\x85\x0f\xf4\xbb\xabV\xa5<\xce\x9c\xcc\xa8Q\xbcss\x8a\xfe\x93\x89\x96\x1d/\xb2\x06\xa0\xf3)\xbaV\x87'\xdeuW\xe3\x93\xc4\xea\xa5\xc7\x82\x8e\xb9\xd5C\xc9Y\x91:\x04\xabz\x89\x13%\xa0XM\xff\xcbw\x9d\xef\xfa\xc5\xbaz\x89\xe4\x1d\xa8\x07\xff@A\xa9\xa6*=\xc8\x8eB'|\xb3D\x89\x8a\xf5\xd2\x83\x1a\xa8'Ed \x08\x95\xf5\xd2g]\x98\x12\xbf4M\x89\x9d(\xd4\x7f\xb2P\xdf \x8b\x14T\x9d\x9f\xb8\xc5\xd6\xe6\xabNT\x97\xe3\xc5\xf8\x81\x86t,\xf5RJr\xfe\xfb~\xbd\x0c\xe8I\x90\xd4U'\x02\x18\x1f(}\xd6a<\x7f*m\xc0q\xcdOK\x81\xfe\xc7\xa8<\xad\xaa>\x1b\xa3PII\x1d\x08\xb5;\x8a\x05\xd2<\x89&4\xc3`\xdf\xb1\x84C\x03w\x08Va\xc1\xa0j\x86\x12w!\x07AR\xb7\x86\xbc^\xfe\x81\xe8\\\xf6\xb9\x86\x9e\x17\xf5(\n\x0b\xf4)\xdd\x85 \x0e\xf8GPU\x13P`\x85I\\\xa1v\xba\xde*\xbb\xb9\xfc\xffq1WD\xee\\\xd6\xc1\xca\xe4\xb2o.\xeb0\x85[\xeb\xde\xb1\xac\x83\x95\xc8\x05\xe0\x9a\xe0\xa8\xf9\xebC4E\xb0Z\xb6\xab,'R.C\xb5f\xd5/\x9b\xdc\x11\xca\xd6.\x956O\xf6\xba{\x94\xd6e\xdb\xf7\x8a\x12\x0fW\xb3x\x18\xff\xe5,\x1eVe\x16\x0fg\xf1\xb0\xabD\xf2\x0e\xd4\x83\x7f\xa0\x1eRG\x0f\xb2\xa3~g\xe6,\x1eF}\x13;Q\xa8\xffd\xa1\xbe\x136\x8b\x87\xad2\xa0'AR\xcf\xe2a\xffct\x16\x0f\xad\xf2\xd4t\x9e\xc5\xc3oJ\xe4Y<\x0c\x11\xed\x1fYJ\x1e4\x8ch\xa8\x9f\xc8R\x95\x01Z:S\x06P\x0f\x0d\xa4 B=\xb5w\xa6\xf4\xd1\x9e4K\xff\x9daJ\xdf G\xc3'\x1d\x0d\x9d\xf8A\xda>Szh\xfdL {8\xb8\xcb\x00\xba\x0c\xa0G\xbc\x8f\x84\xbbtxN\xb8\xcb\xb7\x18V\xd0\xaf\xc1]\xbeE\xd7\xdc\xde\xda\xdd%\xd6\xd1#\xbaB\x9f?]\xbb\xc4\xb9\x89\xb8\xcb\xb7 g\xc8\xd1\xc4]\xbeE\xcf\xfc\xae*\xee\xf2-\xfa\x14\xe1\xec\xe2.\xdf\xa2s\x01w\x19w\xf9\x16\x1d\x8bs\xb8q\x97\xb0\x1b\x8e\xbb<\xfd\xb8\x86Hg\x91\xfe>Qu\xb5}\x82\xdc\x05N\xce\x18\xba\xf5\xbc\x96\xf5\xbd\x8e\xfd\x03\n$Qv~S\x86\xdc\x08\xe3\xedj\xa6\xcc\x92H\x8f=\x08e\x96D\xbc\xa5\xff\x960\xa5\xef\x84\xa3\xe1\x93\x8e\x86N\xfc\xb7\x96D\xaa\xf0X\xb1\x94\x01\x8at'2\xac\x97`Z\xc3z\x19\xb4\x80\x87-_\xc3\x99\x96\x9b\x1dvf\xb3\xf4\x97\xc1\x0b#\x0e\x83X/\xaf\x90J\x99\xbc\xbc\xbaX\xbe{\x7f\xf6c$>\xafY\x9a\xb5\x9c\xbd\xbd\xb9\xfc\x18\x86\x17\xd6K\xb3\x92H\x8cb\xbd4+\xf9x\x15\x82*\xd6K\x95\x9e{4Y\xfa\x8b^P`\x93\xad\xdf\xed\xf0\x16\xd1t\xad\xecl\\G]\xd2\x1b\xb0\x972\x19Je\xff\xa6`\x92\x0d}P\x95\xdex\x9ez\x19\xbc\x9e\x07\xb3\xb9\x08\xc3i\xbb\x8c\xeef?M*\x94hLE\xbd\x8c\xeek/\x92\x0e\xb9\xbcC\x81\xc8\xcc7t\x0b\x98\\y\xf70v\x04\x8560\x1e\xd8=\xaa\xa4)\xc2\xba\xde\xf0u~X\xdf\xa1\xf6fDUm\xd2\xd6q\xe8\xe2E\x8fG\x95\x83q_\x05\x84\xc5\xc6\x19\xbd\xd2tt\x8f\xa4\xda\x7f\x9c\x04E\x82\x1eg\\\x9f\x93\xad\xeak\xf8\xdd\xbe'y\x8fS\xbc\xc7\xe8\xa0\xf4\x19#\x94\xde\xf3q\x1e\x08~\x04\x03\xa9\xe5\xaf\x94\\B\xb1-7L(nd7\xaa^H\x0fnFER\x9d/\x1cf\xbf10\x9d\xad:\xb8>}\xe3\xd1\xd7uI\x9c\xd7U\x02t\x93\xc9\xb3L\xc3\xdc\x1c\xaa\xa76/\x01b\x86\xaf\xf3\x81\x97\x02\x04F|GASg\x13\xc0$N\x91\xa3\xd7\x19\xb1\xdd\x14/d\xc7U\xd2K\xf7\xe0\xc9\x81$\x85p\xe4\x11\x0fu\xf6\xec\xed\xf9\xd5\x07\x88\xeb\xf3\x9emC\x89\xb0q\n\xf9\xed\xe5}\xe7\xa0\xbemUh\xe2^\xee\xd8\xb6\x8f\xc4\x15{\x80\xc9\xcd\xb7\x1etv\xd1t\xc3\x86\x9c\xb5gU\xfar+E\xbd\xe9Aw\x9b[\xcc\x97\x8f8\x15d\x1d\xd9r\xe4]\xe5\xac\xcc\xcf\xba\xc5\xdc\xa4\xac%\x10\xaf\xc9\x93T^v\xa5\xe0O\xdb\x91\x84\xa5\xbc\xd8\xeb\xb8b\xeen\x88\x83\xab\x03\xbdT\xc8\xf2\x93e\x91{\xb3\x81z8sh' t\x86\xbe|~\xff:'\x9c\x15yBP\x8a\xf7Z\xd8/R\xfaKAvGD\xd7$\x15tC\xb5\xb9H\xe8\x90\xafn\xa6\xc5IN\xf1\x8e\xfe\xb5\x9e2\xd8\x14\x95\xb1;a;\xb4*6\x1b\x92\x9b}\xb3\x80\xbcD0\x06\xc8yk\xd8\x1a\x16hG0w\x06Zc)A\xcf^?C\xc9=\xceq\"H\x0e\xc9vw\x98\x0b\xc4\xc9vO\xd2r_}\xf9\xfc\xfe9G\x19\x16\x90R\xd7QY\x19\x92\xcb\xd5\x92\xacbS\xecvG\xf4K\x81w\x90\xbaZQJW\xafh\xf2\x02sO\xbc\xb2;\xd9\xf0\xeb-c\xdb\x1dY(\x1a\xac\x8a\xcd\xe2\xa2Pi\x81\xd3\xbb\x97\xd0oU!\xbfg\xc5n-\xf7\x98\x1c\xbc\xa3\xae\x04\xa7,\xa5 \xde\xa9\xd5\xeaj\xed\x05Yl\x17'\x92l*L\xc9\xb3\xc53)\xb6\xa9\x1cS:Y\xf0\xcbJ\x04\xb5\xcbU\x8a2IH\x9a\x90\x13$\x08\xdesT\xf0\x02\xcbaC`\xb2\x8cJ\xd1\xdc$\x1a^\xd1\x14\xe7Gy\x80\xb9(v\xcc\x88f\xf4*\x98\xa1\xe3\x15r\xc8\xe4qH\x05\x12L\xa1Ct\x82(9\xf5\xe4\xa0\xa6\xee,=.\xd0O\xec\x91<\x90\xfcDm\xf4/\x9f\xdf\xbb\x0c\x8d\xa0\x99\x94\x95x\xe2\x1e\xf2\xe4\x9e\xec \xba\xbb\x17\"\xbb;\x81\x7f\xf9\xdd b9J\x99~z\xa2VT\x82S\xc42`~\xbb\xa3C\xb1%K\x91\xe9\xe0\xc7\xce\xb6H\xfe\xa0\x12rc\x81\xf68\xe3\xb0O \x90\x1d[\x17\x89\xcaN\xafR\xd2\xbb\xae\x14\xbfFg\xd5i\x07I\x9e\xb1\xa4\x01h\xc6\x12\x9c\xc8\xbd\xcc\xd8\xd7\"+\x15D+\xcc\xc9\x1a\xd5\x92\xe3\x9b\xe2\xbbC}\xf9\xfc^\xf5H\xe5\x86\x17\xf7do\xade\x9d5\x1b\x9b\x01\xc8\xff?0\xba\x96B\xab\xb32\xe8\x8e\xda\xae\xb9J\xbf\x7fb>\x955bAWtG\xc5\x11\xa5\x84\xacMbp\xc5V\xf2\x07\xcf%\x87\xa5:\xbb\xbcz]\xed\x9a\x05z\xf1\x85\x13\x13xKRC.\x1f\xc9\x1d`\xfd\xe0\x14o\xddc]\xe5\x04\x7f\x95{^W\xb9x\xe9Z \x1f\x99 \xa7:\xd3}\x91&\xb0\xd2e\xaf5\x97H\x8a\xf7\xe0\xbb\xb3\xf4xg\xc9\x0d)\xc2\xf9\x8a\x8a\\n\xac\x8e\xfehN\xda\xa8\x0c\xefX\xba\x05\xfa\xe3\xe6\xf4H~\xa7\xd82\xf4g\xd5\xbe\xd2\xd8\xed\x99\xdbIk1]\x9b\x85\xbd\xa3+\xd5I\xcd\x8d9\xe2E\x96\xb1\\\x9dh\x19N\xbe\xbe.R\xf9\x8f<\xc7`n\xb9{'\xb9\x8er\xb6A\x85\x00vb\xb6)\x97\x8c\x0cWW\xf3-II\xae\xc2\x9c\x82f\xb9\x0c\x1fv\xd6\xe2_0%\xcd6.\x0fX.Q\xf4\xe6\x14]\xcb~\xca\xfd\xa9\xbb\x8c\xed`\xfe\xe7\xff\xfc\xcf\xceC\xe5\x1dch\xc3\x18\xfa\x01-\x16\x8b\xff\xedxA\x0e\x1c\xa7G\xd7#\x9c\x1e\x17\xb2\xd1w9\xdb\xbf\xd80\xf6\xd2\xf5\xd2b\xe1:9\xe8\x06\xbd\x90\x9f\x7fQ]\xbde/\xfeI~\xff\x12\xfd\xb7\x93+\xba\xeb\xf8\x9b\x8f\x16\xdf\x05h\xf1\x1f\xf8\x01\x8f\"\x06\xfaA\xddkd\xcd\x03\xc7M\xf9\x8bw\x8c-\x92\x1d\xe6\xdc;l\xe8\x8a|\x1dFa}\xe2j\xf1o\x8e\xdf^\xbf\x96\x0b.\xd4\x97\x1b\xbc'\xf2\x9ap\x06\xbd\xda\x12q\x01\x96\xe7\xab\x94\x0b\x9c&\xe4\xc5\xcb~\x9dt\xd6\xe0\xee\xb3g\x0e\xff%0\x87\xd7Gq/E4G\x9d\xd0\xa3w\x8c\xbdX,\x16/\xdd\xeb\x16f\xf0\x85\xe7\xa9Z\xd5jf\xfbL\xac\xfc\xf0\n(xqys\xfe\xf9\xea\xfa\xf6\xd3\xe7\x97n\xb5\\\xb5\xf6}\xcd@C\x1e\xea\xfc6@\x9d\x1f\x99S\xdf\")s\xfa\x03\xfa\xa7l\xb5x\xc7\xd8\x7f/\x16\x0b\xd7\x9a\x91\x9d;\x91\x97>\xf9.N\x8f\xd9j\xf1\x91\x03*\x80\x9c\xe2\x12\xbcT\xb3\xcf\xe4\x9b\xedc\xee?n>}l\xfd(\xe7@>\xa8$\x7f\xb8\xa51\xb9\x17\xf5\x95\x04$\x9c\x82\x13c\xfa\xdd\x16;\xdc\x8a\xb3\xdd\xae@\xbe\xbc&\xd5U\xe2\x04\x91\xfd\x8a\xac\xd7\xd5\xa5\xe2D\xdfPZ\xfa\x02\xebx\xdf\xa8\xc1\xde\xfd\xbb\x1c\xee\x9d\x16qk\xe8\x0cC\xbc\x85\xd9\xda\xa7\xcek8N\xbe\xca\x9d]\x89v\x1b\xba#.~jx\xc05\xc99K=\x8b\\kiT\x8e\xe9\xa5\xa2\xfa\x0f\xe8\x8d\xab\xb6\xf2U\x05\xa5\xd4o~\x17\xc5\xc7eq\xb7\xfeLQ\xe3\xd9)z\xe6Z\xf1\xf5!.`\x1c\xcfN\xdc5\xa9\x11|\xc4{Y\xdb\xff\x81\xae\xfe\xde\xf3\xaa\x1cA\xe3\xcd\x98a\\m\xb40Q\x9f{\x987\xca\xd1#\xd9\xed^}M\xd9c\xaa\xf6\xe2=\xe6\x08\xa3\xa4\xe0\x82\xed\xf5\x9a\xad\xd7W_h'p\x95m\xac\xbe\n\x07\xa2\x1b\x95\x0b*\xdd\xb6tIjq5\x1b\xb8S\x0b\xde\xac\xb5{\xb6[\xeb8\xbdU\x9f\x94^J\xafQ\xa45Az\x896kSM\x94k\x13\xbd\x90;\xdc\x90\xa0\xa5h0\xda\xb0?\xff\xd7\x9f_:\x97\xf1\xb8\xf5Po\xc4\xb7$\xd4\xf0eeo\x16\xdf\xbd\xf9\x8e?sNr\xf5\x7f\x0f\xd6\xcc+\xae\x05\xac\x01\xb4R(f9y\xa0\xac\xe0:\x7f\x01z\xc7r\x8d`\xe0\xe8\xf7\xe8\xcd \xa2\xe29L\xcd\xa3\xfa\xb5\xa5]\xd8\x935\xc5\x92\x175I\xa9\xf8\x86\xe9w)0\x80\xec\xa7B\xc1\xd7\xf2\xb4/\xdec.4\x94Lv\xa2Q\x19t \xfd\xf0\x03z\xd3\n\xa1\xacz(%\x14N\xb9j\xd1>\x1a]\xe6d\xf1\x0d\xac\xea\xc2c0\xee\x94\xb0\xbb\x8d\xc4\xbenCyZ\xfbw\xa7\x19\xb8sLP\x02\xa6\xdf\x88\x1a\x02i\x7f\xa0\x86\x15c;\x82]Z\xbb\xd0\x9e0E\xd9\x0f+\x83\xb1\x02@r\x9anw\xca*\xfc\xaa2|\x9e\xd8\xc9?\x94\xc6\xc8]!Na\x0d\xf65\x1d\x82!S\xe9)\xb9m\xadCk\xf2@vr\xbe\x94\x92N%K\xb8\xb7\x0e\xf3VE\x96Y\x0d \xc7\x85\xdb s\xde\xd1T\xdd!\x14\x9eL\x1d\x13\xe6\xc9\xf9=I\xbe\xde\x1e\x1cR\xcc{,H~b[\xa38\xda\x83\xe5\xce \xb7\n\x158]\xdc\x13N\xf4f\xec\xa3\xb0\xd1\x96\xde\xd2p\n6l]\x911\xea\xea\xbbl\x15\xa4\xddc\x1dCZ'\xd9\xe2 v\xef\x0c\xba\x15\x89{\xc6\x89\xaf \xdd\x0f\x93\xb3\xa5Q\x1f\xdcwY\xfb\xf6lj\xab\xa2\xb1\xa6\x82,\xd0\xcf\xf7$'\x98\xa3\xf7l\xcb\x9b\xb0X\xd9\xa7\x13\xa7J\xd2\xba\xc0\xed\x89\xc0k,\xf0I\xd9\x82\xba>\xd7;mw\xb8}uuB\x04\xbf[\xbcys\"\xff\xf3\xdb\xc5\xf7\xea\xdf\xef\xcb\xaf\xfc\xf3V\x81\x07C\x06\xef\x9c\xec\xc8\x03N\x05\x12\x07\x88j\x8fS\xfbx1\xa3Rjp\xbb\xbf\x02o\xb9\x059\x00\x99\xc0\x84\xb7\xdf1\x85[VW\x885I\xd8\x9a\xaca\x11\xd4z\\\x039v\".m\xac\xe5\xed\xa1\x84Vz\x91\x93\\\xad\xd9\x01\xf8I\x8b\xf9\xbaX}\x8b\xc1\x8fGYr3\xf0\x1d\xe5\xca\x0c\xe6\x80[r\x07\xde\xb2oO=\x07\x90\xef\xd8q{1u\x9c\x11](\xb40>\xd3\x8d\xd0\xecl\xb0\x17J\xd3\x8b\xd3\xecl\"\x16\xab\xe9Bk\x9a\x8a\xdd\xb8\xbd.j\xc5a6]\xa8\xcdxz\x85\x90\x9b\x1e\xecf|\x03-\xfcf<\x00&\x8c\xe0\x0c\xe0`\\(\xce\xae\xab\x9b\xe7\xda\xd6ye\xeb\xbe\xaeu\xe29\xbbW\x06\x94\x90\x1b\x99\x07\xd5\x19\xbc\xc5\xf9\x91\x9d\xa1\xbbm\x00\xf6\x18\xbc\xdf\x86H\x06\xc5we\xaf=\x0f!\x13cp\x9e\xe1\xe1B b=\xa3\x86\x0e%\x86\x00P\"\x10\x9f\x91\xb4\x80\x12\x85\xfa\xecQc\xe8\xe2\\/}\xb1\x9fa\xe2\xf4A\x7f\x0e\xc1\x7f\xc6\x8fp\x10\x06\xd4\xbf\xfc%S\x0c\xa2@\xa7\xc6\x81v Ac 11\x1a4\x02\x0f\xda\x81\x08\x8d\xe9\xf4\x08T\xa8\xa76?.4\xdc\x9f\xd8\xa3QtaC\x83\xa7b\x1b\x1f\x1a\x7f\x9e\x8f\xc1\x88\xfaQ\xa2\x83o\x94c\xb1\xa2>\xb4\xe8St(\x023\xdaF\x8dv\x1e+!\xa5\x97\x1b;\x1a\xe4\xef\xa1U\x8a\xa6G\x90\x860\xa4S\xa3H'\xc6\x91\x06\x90\xa4\xa3\xb1\xa4\xd3\xa2Ic\xf0\xa4#\x10\xa5\xd3bJa\xb5\x06P\xa5\xd3\xe2J#\x90\xa5\x93cK\x03\xe8\xd2a\xf8RgE\x9d\x98\xd3IP\xa7\x91\xb8S\xe7\x97\xbd\xb0\xa8\xa3\xd1\xa8S\xe3Q\xfd\x88\xd4\x891\xa9O\x81J\x9d\x18\x97\x1a\x8bL\x9d\x18\x9b\xda\x8dN\x9d\x1c\x9f\xeaG\xa8\x02\xe3\x8a\xc2\xa8\x0eG\xa9:+S\xc8U\x0fNu\x14R\xb5C\x80\x0c\\)\xfa\x84\xbc\xf0\xdc8\xa6\xc3\xacv\xa3V\xc3\xbd\x99\x14\xb9\xda\x8d]\x9d\x0c\xbd:\x16\xbf\xda\xaaN\xddh\x9c\x97\x87i1\xacz\x1b9\x064\x16\xc7\x1a\x01\xde\xec\xc4\xb2F\xa2Y\xbd\x00\xb1\x9e\x88V\x7f=\x0e$\xcdh\\k\x1f\xe2\xc4`[\xc3T\x88\xc2\xb7\xf6F\xb8z\x00\x83\x9d(\xd7\xa9p\xaec\x91\xae\x9d3;\x02\xed\x1a\x81w\x0d!^\xc3\x98\xd7\xce \xef\x83{\x8dC\xbe:\xb1\xaf\xa3\xd1\xaf\xd1\xf8\xd7\xbe\x08\xd8H\x0c\xac\x9f\x88\x9ee\xed\x7f?\x06\x0b;\x05\x1a\xb6\xb3\xcb\xad\xdfGab[\xb590\xb2\x93\xa2d}8\xd9\x91H\xd9v\x97\xdb\xc8\xd9\xe9\xb1\xb3\xdd\xe8Y\x0f~vJ\x04\xed\xc4\x18\xda\xa7@\xd1\xf6\xc1\xd1F\"i{ai\xe3\xd1\xb4\x1e<\xad\x0fA\x19\x8f\xa1\x0ccj{\xa1j\xa3q\xb5\xce\x01M\x8d\xad\x9d\x16]\xeb\xc1\xd7N\x8d\xb0\x9d\x1ac;~\x8dD\xe1l\xe3\x90\xb6\xcd\x83\xcd\x1b\xd9\xb1C\xe0\x0c\xc9o\x93bn;P\xb7\x13\xe3n\xbb\x91\xb7\x01\xec\xad\xcf\xe4/\xbe!\x1aBx\x8d\xfa\x01\xedA\xc8\x90\xef\x1f\x04\x94o\x81X\x08\x98\xea\x03#\x84\x124\xcfG\xd5\x12@\xe7\x9aZ\xba\xf0\xb9\xe1=d\xca \x8c\xae\xb76}\xb4\xbbQ\xba1\x9d\x9a\x0c\xa9\x1b\xc6\xea\x8eC\xebN\x82\xd7\x0dSd\x10f\xb7\xbd\xe7-k\xa5\x1b\xb5;\x1c\xb7\xdb\xaa\xc8\xc0b\xfd\xc8\xdd\x89\xb1\xbbS\xa3w\xfb\xe3w\xbb\xe7q2\x0co\x07\x8aw(\x8e\xb7\xd5w\x1b\x99\xeaC\xb4V\x03\x8a\x0f\x11\\\xc3\x11\x0e\x8f\x17\x8c\xd0\x85\xbc\xdb%J\xf7\x981.\xd0\xc3o\x16\xbf\xfd\xd7\xc5\xe1\x14\xa46\x08V\x0b`\x99\xea+\xe7\x111G\x19\xd6e\x8e2\xec\x882\xdc\x1a\xb1s\xb4\x9e\x91\xeaQ\xc6\x0fJ}\xe9^2\x0e\x1c|\x1c\xc4\xfe\xf6\xc0\xdf\x1e\xe1\xfc\xd0U}\xbe>\xef\x84\xdc\x7f`krUb\x8bZ\x9b\xa6\xbda\xe0\xa2p\xda\x1c\xb7\xbe?\x94R\x98u\xa7\xe0t\x9bZP\xd9\x1e\x1bs\xdf\x8e\xa3\x0b\xad\xc9\x07\x86\"\xb2z\x85#\x91\xbf\x19\xeb\x8a\xb3e\xd4\xb5\x80]\xa9\x05^\xa1\x9b\xab\x1f?.?|\xba\xb8\\~\xf9xs}y~\xf5\xee\xea\xb2\x99l\xc1~\xeb\xe2\xea\xf3\xe5y3'\x80\xfd\xc2\xed\xe5\x1fo\xbf\x9c53\x01\xb4\xabX\x9e}\xf9c\xc7K\xef/\x7f<;\xff\xd3\xf2\xec\xc3\xd5\xc7OK%%\xfb\xdf\xbd\xbc\xba^\xbe\xf9\xdd\x9b\xda\x1be\xca\x81\xf0\x00\xbb\xaf+7t\x9b\xca5\xd4\x9cykN\xc0n)8\x92\">'I\x91S\xd1\xbc\xf3o\x0b\x9c\xcb\xfb\x80\xeblV`!9=\x16J&a)\xa7k\x92\xcb\xf3\x0e\xe5dK\xb9\xc8\x8fJ\x9f\xb5\xdb!P&\xc8>\xa8\x0e\xb4\xb0\x98Z~;W\x9b\x01\x91\x84\xf1#\x17d\xbf@gY\xc65S\x14\x1a\x9d\x02|\xd9X\xdb\xdap\x17\xd5V\xb3\x81\xaai]' 'U\xe7w\xf4+\xb1\xab\xd4\xfa\x04\xeb\x1b\x17,\x96\xa4 +r\xbc\x85\xee\xb0\x8c\xa4\x92\xca{9\xda\xeb\xcf\x08o\xe5\xa5Ihs<\xdd\xa9\x06\xf0Z\xd2&%\x8f(\xc1\xed\xfb\x98RWP^\xcd\x9f\"\xb0\xb6W\xea\xfb\x12\xcd\xab^!\xce\xb4I\x93n6$w\x80\xa6\xb0\x1c\xa8\x02J`\x98\x1e.\xe4\xbd^\xa3\x10`g\xea\x89l\xdf\xad=;\xcd\xb3>K[\xb02\xe4\x16i5\xe1\xe5\xa2\x93\xb7 }\x066\xda\xca\xc9_\xd4\xbc\xb6D\x95\xf6&\xe2|\xcd\x1b\x90\xa5nj\x9e\xedi\xca@\x14\xb16&\xca\xc9\x9e=@\x1e\x14\xb0\xbd\xc8\xe5\xdb\xb9\x03\xf4Yv\xda\xfe\xc9\x9acs+\x80N\xc9;\xd2\xe5\xd55R\xef\x18\xf2\xda'@\x93\x8e\x17\x7fX\xa0\xcfds\x8a\x14\x88\xe7\xf4\xf5kB3\xbe \xea\xca\\\xec\x17,\xdf\xbe\xbe\xbc\xba\xbe\x91?\xbf\x92\xe7js\"\xce\x0d\xf4\xe9\xc4\xd1K\xca\xf5q\x05g\x97$i\x8d\x057\xb9\x05\xce)NEKv_\x15%\xf8\xa9D\x04)\xb9\x17\xae\x83\x17\x7f\xb0Ln\x0bt\xcb\x10I\xd5\xd6\xbe\xbc\xba\x96}nj{\x8f\xacP\xa03\xc7)!\x85\x93J!\x7fw{8g\xe9\x86n\xef\x80\xb1(m}\xdaD%\xb5\xd5\xaawf\x90?\xe1t\xbd#\xf9\x9d\x99\x16\xd9\x1b\xc0\xc1\xcaN\xef\xb1\xecuB\xd7\xea\x04\x03[\x9c>(\x9b5\xeao\x9bk'jW@\xe6\x0eY\xf6\xc5N\xd0\xea\xda\x17\xe9\x12j.\xcd\x8b\x0f\xf2\xf3\xca=\xd4\xdcN\xe5\xaf\xf5\x0bQ\n\xa8v\xf5\x84\xd3\xad}3\xad\xdd\xafL\xcd\x0d\xe4P\xf3\x8e[\xde\xadY\xee\xa9\xba\xfb\xb6\x0f\x1d\x8f\xbe\xf3\xaf\xa8P\x8a\xda\xd6\xad\xdf<\xb06\x1f\xf0\x00\x95\xaaR\x9epzz\xca\xde\xe1\xea|\xaa*\x8b\x97\x08\xc8A\xe4x\xb9\xa2\x82/\xb9`\xb9;`t\x9f4\x1bd\xd7R3\x07e\xdc\x9a\xe0\xef\xbf\x1e\x9fK\x06\x99\x88\xb7T\x9c)\x1aQ\xf7V\x91\x93\xa9\x1cTK\x11^\x92\x154\xe3\xb5\x8b\x92\xba\x07K\xf1U\x1fA$\xe5ENJ\x90\xb5\xba#\xae\xc9\x1a\xb4H\x02\x7f%\x1c\xf0\xc9{\x9a\xd2=\xde!\xac<\x1b\xac\n\xeb\xdb\x14:\x01Vne\x1f\x82\ni\xbau\xf6B\xb2\x1eq/\xef\x0c\x88\xe3\x8d\x81dj\x96\x94\n\x92\xae5&3a\xa9\x06\x83\xa2\x02pnP\x91\\\xcb\xea,\xeb\xeb\x0d\xdds\x93\xb6\xb6gM3S\xf5\xc2\xc8\x93 \xcbA\xc8^\x9b\x1d\xc7+\xb1\x12Ni\xfd\xa7Y\xd4Vu\xc6j-o\xfaF\xa1\xda\xdc\xa0\x99J\xee\xaa\xb6\xc8\xaf\xacn\xa9-i:\x01\x02\xaed\x04\x92\x84\xd8\xf5q\xf7\x06\xbf\xb1\xc4\xf4\x88\x1d^\x97\xb4GI\xd9\xce\xed\xd3\x94\xae\xc3\x92u\xa7T\xdd-Q\x07\xa5\xe9XI\xbaK\x8a\x8e\x94\xa0\xfd\xeca\xa8\xe4\xec\x95\x95'\x95\x93G\xc9\xc8m\xa9xZ\x89xRixZIx\xb0\x14\xfc\x8d$`\xa7\xf4\xfb\xf4\x92o\x1f\xa9\xf7\xa9%\xdeI\xa4]\xbf\xa4\x1b!\xe5\x86%\xdc'\x94n\xc7J\xb6J\x96\xb5\xeakH\xb5\x13I\xb4ai\xf6\xdbK\xb2\x83\xa5\xd8o(\xc1\x8e\x92^GI\xaeNYu\xac\x9c*%S{\xad5d\xd4I\xe4\xd3ie\xd3\x08\xb9\xb4S&m^R\xe1\"\xe7\xbb\x17\xd6\xae`\xca\xf0\x07\x8e\xb5`g\xd6\xd3Twb\x91\x87\xe1n\xc7\x1e\xa1\x86\x06\xfc\x92#^$\xf7\xf2\xb3\x1dK\xf0\x0e\xd6\x9e\x83\xf7\xda\x9e\\0D\xe7u\xf4S\xbe&\xf9\xdb\xa3}\x0d\xb5.\x86\xf6\xa5\xf0\x15\xfa\xf4\xf9\xe2\xf2\xf3\xf2\xed\x9f\x1c\xd7(\xeb\xe1\xd9\xcdy\xfb\xc7\x8bK\xfdky)\xf3V\xe6\xbe\x8f\xb9[wW\xe39zY.\xaa\x0b/\x93\xe3^ =|\xd3\xad\xf2\x82%\x18:\xbb9\x07*R\xaen$%\xbf\xa8\x8f\xf5\xb4\xf6We9\xe7 \x01\xf9D\xb5\xe4\xf8V\x92\xe4\xb4\xfeg\xf9\xb5\xa4A\xebs\xbd\xee\xac.\xabw\x15'\x82\xb1\x95/\xb7\xe7\xf9F\xad\xbf^vD\x10d\xeaf\xf7\x1e\x8a\x00\xe1t\x95\xf7\x8a\xee\xddF\xac \x1d\xe3\xfd.\xf1\xd39\xc3O\xe6\x06\xefu\x80\x17\xc3]\xdf\xa7rz\xefvw\x1f\xe4\xe8>\xd8\xc5]\x8d\xb7\xa9'\xf6:\xb7\x0fvk\x87[G\xa36\x8fC\xfb\x18Wv\xa5\x16j\x8e\xc6\xe1m0\xc4}\xdd\xef\xaa>\xd2I=\xca==\xde\x15}\x84\x13\xfa\x08\xf7s\x07\xc3\x98\xd0\xc9|Z\xf7\xf2\xc9\x1c\xcb\xc3.\xe5\x939\x93\xfb\xdc\xc8\xc78\x90;\xf1\x87\"\xc6M|\xa8\x83\xb8\xd7\x19|\xa0\x1b\xb8\x03\xa2\xdcO\xc7\x8d\x82'\xe8@G\xef\xca\xa9\xdbE\xdf_\x85\xdb\x1e\xe7\xd6\x0dn\xdcVum\x87\xee \\\xb9\xc79q7Vy\xf30\x1c\xe9\xb8\xad ]\x13`F\xb8hw\xfa\x1f{\xdc\xb2\x83\x0e\xd9m\xdf\xc4x'\xec\xf6\xb7\x7fs\x8du\x90\xcbu\xcc`Cn\xd6\xfe\xb1\x05]\xab{8U7\x1dG}\x8e\xd4\xe3]\xa8\x87;O;\xe7e\xa0\xc3t\xa7\xab\xb4\xdfI\xba\xcb=\xdaI\xacX\x97\xe8\x903t\xc3\x0dz\x84\x03t\x84\xebs\xbc\xd3s\xd0\xdd\xd9\xe15\xdcj\xce\xf1N\xc8\xady\x9cC\xb3\xb3S\xd6/\xa3\xdc\x97\x9b\xee\xcac\x1c\x95\x1d\x8e\xc9\xa3\\\x92\x9b.\xc8S:\x1f\xfb\xdc\x8e[\x0e\xc7\xd3\xb8\x1aO\xe6d<\xad{q\x9ccq\xd0\xa58\xd2\x998\xc6\x8d\xb8\xe5o\xdbn-\xd6!\xb4\xdbi8\xd2]8\xc2Q\xb8\xd6\xe5)\x9d\x83G\xb9\x05\xb7\xdd\x80\xa7s\x00\x9e\xce\xf5w\xf8\xec\x06\xdd}C\x8e\xbe\x86K\x97\x80\x89\xc1\xa8\xa9H@F\x00\x02%J<\x86A\x9e\x18\x94\x95UY\xe5qe\xd9\x97\x1dx\x8c\xaf\xe4\xf8\xdc\xe8w8\xf9\xa5 \xa9\x1dk\xde),y\xdc@\xfc\xa2\x8a\xa9\xb7DT\x98\xbf\x8d@\x94(G\x96\x13\xbd\xe0j\xa3\xaf\xb1\xe2\xd2\xa5$Qn\xc7\xa2\x91o\x00\xa8\xa2N3\x8c\xb6\xf4\x81\xa85\x9a\x13\xce\x8d}@\x8a\x91V\x85uG\xc9,W~wr\xe3\xec\xf0\x11\xbc.\xbfjq\xd2\xed\xadR)\x7f\x1bSVaU\xd4\x14yAl\x82e\xafv\xe4\x81\x18l}\x17\x82\xed\x86\xee\x8b\x1d\x16\xc6\xf9'Z\xddl\xc7h\x8d\\\xaf\xde\xc4\x0f\xb5\xf5*\x0efB\xed\x1c\x06r\xb9\xe9\x9e\xba\x1d\xd9\x16\xe8\x86\xa4ke \x17\x07m\x0co\xf8\xb0\x89\xc3R\xfd\x1e\xb9\x10\xfd\xa8\xb4F\x7f\x97\xba5}\xfa\xca\x1e\xd8\x91m\xadw\x9d\x86\xaa\x7f\xe9\\\n\xb5\xd9\xa9\x9c\x96\xe0O\xe1\xf2Y2\xdf\xe8*B\x0eKU\x13=\x13\x84l1o\xf0\xad\xda\x18\xccc\xd3g\xdb\x95\x18\xafX!T<`\xa5\x81\xd1\x17+=\xc1\xb5p\xc0\xad~\xb8\xfb\x82:\xe2*\x07U3\x0e\x17\xbbn\xe5\xcc\x8f\x98\xff\xac\x1a*\xad\x88\xf8@\xf7\xc5\x1e\x15\xa9\x02\x17m\xd0#\xcb\xbf\xa2G\xad\xc7\x04E\x9c8\xb4\xbd\x0f3\x92\xcbN,\x1a\xa3h\x87b\x1e=\x86\x1f1\xff\xc2\xab\x0e\xe3ZPf\x9c\x08\xd0\xda\x9b\xe8\xcc\xa6C\xa0n\xf5L0<\xac\x96\xa4\xfa\xab|\xb9\xb9u\xa8\x17w$\xdd\x8a{y\x02l\xe8\x01\xd6\xb92\xf9)nF2\x9ccA\xa0uhT\x1e\xa0\xf2B\xe3\x0e\x92Xv\x80\xb7\xe4s\x9b\x0d\xde\x02JK\xde\xcd\x95\x19L^\xd02\x96\xa9=\xbe>Q\x00\x02\xd9!\x92\xab\xc4\x1c\xc6\xfd\xb1Q\xa1\xe6\x9c\xcdvV$\xc1\xca\x00#\x10\xdeqV\xbf\xee\x7f\xe0\xdb\xba7\xa5\xbc\xfa[\x15\xb4\xd2tx\xe7\xb4{\xea\xde\xb3m\xbda\xe5\x98mq\x17\xcf\x0c\xfa\xc8i\xf7q\xce\xce\xd79\x04(\xe1H sv\xbe9;\xdf\xdf1;\xdf\x80\xcc\x1b:\xc7F\xa3>\xc3\x88\x1b?;O\x05\xeb\x1d\x9b\xb1\xfe\x9d\x98\xc9\x9c\xf5`\xcez\xe0\xacm\xcez\x80\xe6\xac\x07\xeevF\x02JL%\x11\xb0\x12\xe7\x97\xd1P\x13(#\x00'PF\xc0N|\x1b\xdd\xd3\xd5\xc9\x00)P\xa6\x85\xa5@\x99\x0c\x9c\x02%\x0cQ\x812\x19P\x05\xca\x9c\xf5`\xcez\x00\xfa\x8d9\xeb\x81U\xc6\x01fZ\xd5\x899\xebA\x18d\x03%\x14[?\x0c\xb8\x812g=\xe8\x07\xd0\x812g=h\x979\xebA\x18\xf4\x03%\x02\xfa\x03%\x1e\x00\x04%\x08\x03\x822g=\x98\xb3\x1e@\x99\x12x\x04e\xcez0g=\x08B\\\xe6\xac\x07s\xd6\x83\xd0\x1a \xc2\xa0tu\x03\xb2\x1et\xcbb5\x1d{\xdb\x10i\xf4\xf3\xd5+j\xa1\xc8=\xadT.\x8d\xda\xce\xd2\xa3#Pf\x87\xcf|\x08\xae\x11\x11d\xd6|\xd3\x80m\x84\xf0\x1a\xb74\x8b\x86h\x80\x99\xbf\x89w \x84\x03j\xd5\x0b\xc5gqX\x93\x94\xb5\x02\xbdzu\x02\xcd\x1eu\xbe\xee\x07\xdd t\xce\xa8\x1d\xf8Z\xb0\xaf$\xd5\xe7\x03t\xc9\xc4\xc1\x96\xdc@\xca\xe9\xaa\xe1\xc6=\xf1\xe3\xa7\xdb\xcbSu\xaei@Di7\xc7)\xbaJ\x85\xde\xb6\xa5\xb6\xa4\xb6wa\x92j\xf5q\xbaM\xb1(r\xc2M\xd8\x06u\x9b\xd9\xb2-S{\xc5\x02C\x00RO7\xdbBe\xa8s\x8af\xbf2/g\x19\xc9\x9b\xd3\xd8 \x97\x89\x97\xac\xde-k\x04\xa0Z\x03\x12\x872|T\xe7\x90\xd6+\x99\x96\xdc\xf4\xbe\xa5Y\x89\xc8\xa2Y\xa5%\xdb\x13\x81_\xd9\xb6\xbc\x92\xb8\xde}\xe3\xc2\x84E/\xe6\x15[;\x02\xa6\xb1u\x19\x00\\\x07\xa7WJB\xa5\xfc\xb7hYu\xb3A\xc5(<\x8a\x89s?\xdb\xf2\xc4l\xcb\x9bmy\xb3-o\xb6\xe5\xcd\xb6\xbc\xd9\x96W/\xb3-o\xb6\xe5\x85o\x1c\xb3-o\xb6\xe5\xd5\xcal\xcb\xd3e\xb6\xe5\xcd\xb6\xbc\xd9\x967\xdb\xf2\xd0l\xcb\x9bmy\xb3-o\xb6\xe5\xd9e\xac\x9df\xb6\xe5\xcd\xb6\xbc\xd0\x1a\xf9\xfb\xd9\xf2\xb4z\x1d\xfc\xa7L\xa6\xd4\xf2W\xd0z\x80\xa7\x0dx8\x92\xd2\xbc\xd2\xa8\xa9J(\xd1$\x11d\xe1-\xeb\x04\xcb\x91\x9a\x1f\xed\xff/W\x1axg\xb2\x8d\xcab\xa2\x93\xf86\xea9+\xc4\xbd\n\xba\xd0\xca\x82g\xc5\xde\x86\xbc\xbd\xb7\x87\xe7\xdc2 -\xd0%N\xee+\xc3\x90 \xb6\xa0M4\xad\xc4fX-\xd2\xb6\x0f\x96(\xb3\xc9\xcaSJ\x9dPr\xdf\xaal\xe7\x88\n\xc4\x92\xa4\xc8\xdb>\xa2o\x95{\xef\x03I\xcd\x0e1\xdf5;\xf4\xc2(y\xcb\xc4\xc2\xea=\xf7\x9c\xb5tA*\xaa\xf5\x86\xe49\xa8\xde\xb01\xcd\xd0\xbd\x92\xab\xab\x00\x13\x19>\xc2\xb3\x0di\x9aDMy\xbcg\xbbv\xa2=\xdb\xb7\xbe\xfayO\xf6\xcce\x9e\xe9\xed^*+2\x9e\xc1\x95B e\x82\xbcN\xd8^\x19\x14`A\x9a\xf9A\x0d\x03S\x8b\xf2?\x9f}\xfex\xf5\xf1\xc7S\xc9\x1c\x92\x1d\x85$\xcc\xb2z\x88\xe7\xb0;\"r\xd0\xd1\xe2\xc9A\x18\xc5\x7f\xcaD;\xd7^\x82w;\xc50\xf7\xcc\x99\xc2\xcaJT\x01o\xde\xc9\x8e\xdf\x19\x7f^\xf4\x82\x93f\x95&\xac\xf9\x96\x8a\xfbb\xa5X\x02\x98\xe9^W\xf6\xbb\xd7\x94\xf3\x82\xf0\xd7\xbf{\xf3\xddw/m\xaa\xcb5\xc7\n\xb1\x84\xa4\xfc\x91\xf4\x0f\xa7\xb6m\xe5\xfa\xd5\xed\x18K\xdfJ9\x1dB\xa3\xfa\x16\x06L\x19<\xed\xad\xb8\x11\x8a\xe9\xa7\xac\xb9zW\xa5\xb5\x10\xee\xa8\x8a\x8d\xdf\xe3\xdan'\x07ARNY\xba\x04\xb5\xffl\xfd\x9b\xad\x7f\xb3\xf5o\xb6\xfe\xcd\xd6\xbf\xd9\xfa7[\xff\x9ae\xb6\xfe\xcd\xd6\xbf\xf0\x8dc\xb6\xfe\xcd\xd6\xbfZ\x99\xad\x7f\xba\xcc\xd6\xbf\xd9\xfa7[\xfff\xeb\x1f\x9a\xad\x7f\xb3\xf5o\xb6\xfe\xcd\xd6?\xbb\x8c\xb5\xec\xcc\xd6\xbf\xd9\xfa\x17Z#Oh\xfd\xd3Z\xfd\x96\x14\xd6\xd2\xb0\x83\xea\xa6\x94\xc3\xcc\xafj>\x13\x9cVV\x97US\xc2P\xca\xfb\x96I\xee\xf1\x9e\xa4\x9a\x1dA\xb6 \xbb\x9d\x94 \xc4\x0b\xa5g \xa9X\xc8u)\xefK\xc0\xc08Q9\xb2\xeb\xd5y\xb4\xc3r\x95&8}\xae$[p<\\\x83\x81\xade\x89P\xd9m!a\xb4UI\xca\xd2e\x92SA\x13\xbc[\xcef\x87\xd9\xecP+\xb3\xd9a6;\xccf\x87\xd9\xec0\x9b\x1d\x1ce6;\xccf\x87\xf0\x8dc6;\xccf\x87Z\x99\xcd\x0e\xba\xccf\x87\xd9\xec0\x9b\x1df\xb3\x03\x9a\xcd\x0e\xb3\xd9a6;\xccf\x07\xbb\x8cU)\xcff\x87\xd9\xec\x10Z#\xb3\xd9ar\xb3\xc3\xb1\\ut\x9b2\xdbI\xaa&\x9d\xde\x1e\xdeZ\xc1\xd3T 5\x95D\xb4\x96vS\x92\x00\xefv\xa5c\x95\xfc\x17\xb1\x07R\xaa\xc4p!\xee\x87\xa5\xaf-=\xa9\xca\x0f]\xde\x1fe\xfdeH\xbbB\xdc\xb3\x9c\xfe\x15\xf6WNT^\xbb\x8exo\xf6\x8a2j\nP\xa6\xc2\x90N\x8cS\xd2\x9eI\x81VRuS:\xc9T\xde[\x83\x82(\xb6t\x1a\xe1\xdc\xa2\xf5\x14\xb7U<\xc1\x9ak\x9c\xf5\xbbV\xea\x8a\xe4^\x9f\x98:\xe9`\xe9\xcefUW\xf7\x8a\xab<\xd9\xea\xaek\x82\xe9\xb4\x95 KS\x92\x08\xc9\xae\xca\x06U\xd4?;I\x98U\xe1\x8e~\xad\xdd\x14\xba\xd2\xd5\xca+\x1a\xe3jm\xc0Jj,M3\xdbR\xc8Y\xe3\\_\x80J\x05\xdb*gx\x9d`\xae:W\x8fA\xe8\x8e2\xf8\xb6\x0c\x1e(\xc2\x91\x06\x8d\x97\xe0\xa09\x8f\x0e\x9c)\xd6\xaeQ\x96\xae\x11V.'[\x99\xd4\x9a5\xb5%kB+V\x8c\x05kB\xeb\x95\xdfr5\xa9\xd5\xcam\xb1r\\\xf1]\\j\xa8\xa5\n\xacR\xad\xea\\V\xaa\xc1\x16*\xa7u\xaa\xe3(\xee\xb0J\x85N\xe9\xa9\xacQ~KTW\x0f\xc6Y\xa0\xc0\xe2T\xab\xd0e}\x9a\xc4\xf24\xce\xea\xd4\xda%\xed\x03wJk\x93pX\x9a\xc6Y\x99\x02F\x14\xafu)\xc2\xb2\xe4R\xb3\xf6\xb1(\xb9\xbe\xff\x9b{\xec\x03\xadHq\x83\x0f[\x8f\xbaF\x1aa5\xeae1j\xeb\xc5\xfd\x96\xa2)\xacDc,D\x9e\xd9\x1al\x19\nX\x85\xba,B\xdd\xd6 \x0f\xf1\xe2\xad@a\x0bP\xcb\xfa3\xca\xf2\x13e\xf5\xe9c\xf1\x89\xb0\xf68\xcd&\x8ef\x9d\xef\x85\xad;c-;\x9e\xee\xd5~\x1be\xcdi[o\xc6Xn\x9c\x96\x9aQV\x9a\xb6UfZ\x8b\x8c\xdf\x1a\xe3\xb0\xc4Le\x85\x99\xd0\x023\xb5\xf5%\xd6\xf2\x12au\x89\xb6\xb8\xc4Y[\x1c\x86 W\xab\xb1\xda\xf3\x90\x85%\xda\xba\x12eYit~Z\x8b\xca(k\x8a\xcbz2\xa5\xe5dJ\xab\xc9\x98\xf9\x8e\xb0\x96\x84-%\x15\x87\xf7\xcb F\x05: $\x9b'\x08\xdb\xe0\x00l\x9e\x90kS\x86[s\x85Z\x13\xfd\xc3\xacM\x18bM\xd3\xa9\xa63\x18\x15Z\xad\x1dL\xcd\x11H\xad\x1eD\xcd)\xfdv-\x99)\x03\xa7\x8d \x9a\xa6\x83\x9f5\xfaV\x0b\x986 X\xda\xe0@i\xbe iN\xfaz\x82\xa3\xb9LcS\x06E\x0b\x05D\xeb\xf0J\x12\xb3m\xa4Vf\xdb\xc8l\x1b\x99m#\xb3md\xb6\x8d\xcc\xb6\x91\xd96\xd2x\x14:\xa5g\xdb\x88\x98m#\xb3md\xb6\x8d\xcc\xb6\x114\xdbFf\xdb\x88*\xb3md\xb6\x8d\xcc\xb6\x11Sbu\xe5\xb3md\xb6\x8d4\xab\xeaa\x1bqy\x8f\x8c\xf1\x1cq\xf8\x8aL\xe8'\xe2\xd0\xed\x8d\nK\x15\x1b\x92jV\xfe\xd6\xcb\xac\xfc\x9d\x95\xbf\xb3\xf2wV\xfe\xce\xca\xdfY\xf9;+\x7f\x1b\x8fB\xa7\xf4\xac\xfc\x9d\x95\xbf\xb3\xf2wV\xfe\xce\xca_\xf3lV\xfe\xce\xca\xdfY\xf9;+\x7fg\xe5\xaf.\xb1\xca\xc0Y\xf9;+\x7f\x9bU\xcd\xca_op\xa0\x89\x03\x03\xb9\"\xb0\\\x90\x84\xad\xc9\xd9\x9e\xa6\xec3\xf9\xa5 \\D\xc7c\xc1\xf2\xa3%\xe8/\"\xe1\xd3\xa5\xf4Y\x1bY \x9fvu\xc7\x0c8\xd7\x7f\xaa\xddj\xd0\xf37$\x7f\xa0 \xa9\x8fCW\xf6\xf9\xfa\\\x9f\x82\xe5u\xe9\x86\xa6 9E\x150\x1c\xfdf\xf1\xdb\x7f\x8b\xa1\x0c\xcfX\xcaIO\xd2\xfc\x85\xb3\xb4\x830Q4\x80\x86+\"\xe8\xbf\xbf1\x15\xfa.\x0dqX\xca\xa9nY$B\xcb\xa2E\x16SQI\x00\xfc\xd8\xf6\x90\xe8&\xe4\x90u41\xf1z\xae\x1eq\xa8\xe8\x16\x19\xb5\xeb\xf6\xf0\xdcG@3\xf0\xb5\xea\xcc\xba?\xf9\"\x96\xa0!N\x83\x8c\xa3\x88w\x99\x8e\xe4L\x03\xb7_\xbb\xdd\xc8\xa5c}8\xd1\xfa\xa9u\xa5\xe7\"z\n\xee\xec\xe8O,gz*\xe2\xf4]\x1aO\xb3\xb7jg0CDu\xad{w\xd5\xba\xdfk\x85ML\xbf\x9e\xeb\xea\xc9X;\x10\xad\xc6\x9f\xd4\xd7<\x8e\x8e\x11\xcb\xd1P\xa9A\xcfh*\n\x92\xaeI\xbe\xa7\xa9X\xe0UB\x17\x97\x0f$\xed\xb1\xf2\xe4+]D\xc3B\xe4tU8h;\xad!\xff+9F\x1b\x0e\xfa\x99\x19h\xba&\x07\xf7\xdb+\xc6v\x04\xdbq k\x13\xaaHyf\x08\x00\xee\xad\x9c\xa6\xdb\x1d\x91\xdd}\x05\xf2}\x86i~\x820\xe7,\xa1J\xc7\xad\x85sD\xe4\xd7]\xcbDU\x0fv@\x8epe\x1fDk\xf2@v\x92L\x10`Q\x08\x9c\xdc\xdb\xe2\xbd\x15R\x11\x89\x92s\xe9\xc5\xf5\x8e\xa6Jq\xf0V\xb9\xf8\xc9\xbb\xbdyr~O\x92\xaf\xb7\x07\xa3Fz\x8f\x05\xc9Oj\x11\x11\xd1\x1e\x1f\xe5u\xff\x97\x82\xe4\x94\xacQ\xc1U\xccD%F\xa8\xe1\xa8e\xef\\q%\x99\xa2\x97^m\xc6\x1d\xb3\xd7\x98e\xc7\x1b\x8d\x99m\xcf\xe9\xf4\xb3\xf9\xff\x02\x00\x00\xff\xffPK\x07\x08\x8f]SH\x16v\x02\x00m\x11$\x00PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(\xd4`4t\xc7\x01\x00\x00\xbd\x01\x00\x00\x11\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\x00\x00\x00\x00favicon-16x16.pngUT\x05\x00\x01\x80Cm8PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(6B\xc8\xd7\x7f\x04\x00\x00u\x04\x00\x00\x11\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\x0f\x02\x00\x00favicon-32x32.pngUT\x05\x00\x01\x80Cm8PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(R\xb2\xb0\x8fo\x02\x00\x00\xb6\x05\x00\x00\n\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\xd6\x06\x00\x00index.htmlUT\x05\x00\x01\x80Cm8PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(\x8f]SH\x16v\x02\x00m\x11$\x00\x0c\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\x86 \x00\x00swagger.yamlUT\x05\x00\x01\x80Cm8PK\x05\x06\x00\x00\x00\x00\x04\x00\x04\x00\x14\x01\x00\x00\xdf\x7f\x02\x00\x00\x00" fs.Register(data) } \ No newline at end of file diff --git a/docs/swagger-ui/swagger.yaml b/docs/swagger-ui/swagger.yaml index 2ec3a95c..dc866ff1 100644 --- a/docs/swagger-ui/swagger.yaml +++ b/docs/swagger-ui/swagger.yaml @@ -5357,69 +5357,67 @@ paths: - Query /fx/crosschain/v1/batch/outgoing_tx: get: - operationId: OutgoingTxBatches + operationId: OutgoingTxBatch responses: '200': description: A successful response. schema: type: object properties: - batches: - type: array - items: - type: object - properties: - batch_nonce: - type: string - format: uint64 - batch_timeout: - type: string - format: uint64 - transactions: - type: array - items: - type: object - properties: - id: - type: string - format: uint64 - sender: - type: string - dest_address: - type: string - token: - type: object - properties: - contract: - type: string - amount: - type: string - description: >- - ERC20Token unique identifier for an Ethereum ERC20 - token. - fee: - type: object - properties: - contract: - type: string - amount: - type: string - description: >- - ERC20Token unique identifier for an Ethereum ERC20 - token. - title: >- - OutgoingTransferTx represents an individual send from - gravity to ETH - token_contract: - type: string - block: - type: string - format: uint64 - feeReceive: - type: string - title: >- - OutgoingTxBatch represents a batch of transactions going - from gravity to ETH + batch: + type: object + properties: + batch_nonce: + type: string + format: uint64 + batch_timeout: + type: string + format: uint64 + transactions: + type: array + items: + type: object + properties: + id: + type: string + format: uint64 + sender: + type: string + dest_address: + type: string + token: + type: object + properties: + contract: + type: string + amount: + type: string + description: >- + ERC20Token unique identifier for an Ethereum ERC20 + token. + fee: + type: object + properties: + contract: + type: string + amount: + type: string + description: >- + ERC20Token unique identifier for an Ethereum ERC20 + token. + title: >- + OutgoingTransferTx represents an individual send from + gravity to ETH + token_contract: + type: string + block: + type: string + format: uint64 + feeReceive: + type: string + title: >- + OutgoingTxBatch represents a batch of transactions going from + gravity to ETH default: description: An unexpected error response. schema: @@ -5619,71 +5617,82 @@ paths: in: query required: false type: string + - name: token_contract + in: query + required: false + type: string + - name: nonce + in: query + required: false + type: string + format: uint64 tags: - Query - /fx/crosschain/v1/batch/request: + /fx/crosschain/v1/batch/outgoing_txs: get: - operationId: BatchRequestByNonce + operationId: OutgoingTxBatches responses: '200': description: A successful response. schema: type: object properties: - batch: - type: object - properties: - batch_nonce: - type: string - format: uint64 - batch_timeout: - type: string - format: uint64 - transactions: - type: array - items: - type: object - properties: - id: - type: string - format: uint64 - sender: - type: string - dest_address: - type: string - token: - type: object - properties: - contract: - type: string - amount: - type: string - description: >- - ERC20Token unique identifier for an Ethereum ERC20 - token. - fee: - type: object - properties: - contract: - type: string - amount: - type: string - description: >- - ERC20Token unique identifier for an Ethereum ERC20 - token. - title: >- - OutgoingTransferTx represents an individual send from - gravity to ETH - token_contract: - type: string - block: - type: string - format: uint64 - feeReceive: - type: string - title: >- - OutgoingTxBatch represents a batch of transactions going from - gravity to ETH + batches: + type: array + items: + type: object + properties: + batch_nonce: + type: string + format: uint64 + batch_timeout: + type: string + format: uint64 + transactions: + type: array + items: + type: object + properties: + id: + type: string + format: uint64 + sender: + type: string + dest_address: + type: string + token: + type: object + properties: + contract: + type: string + amount: + type: string + description: >- + ERC20Token unique identifier for an Ethereum ERC20 + token. + fee: + type: object + properties: + contract: + type: string + amount: + type: string + description: >- + ERC20Token unique identifier for an Ethereum ERC20 + token. + title: >- + OutgoingTransferTx represents an individual send from + gravity to ETH + token_contract: + type: string + block: + type: string + format: uint64 + feeReceive: + type: string + title: >- + OutgoingTxBatch represents a batch of transactions going + from gravity to ETH default: description: An unexpected error response. schema: @@ -5883,287 +5892,54 @@ paths: in: query required: false type: string - - name: token_contract - in: query - required: false - type: string - - name: nonce - in: query - required: false - type: string - format: uint64 tags: - Query - /fx/crosschain/v1/batch_fees: + /fx/crosschain/v1/bridge_call_by_nonce: get: - operationId: BatchFees + operationId: BridgeCallByNonce responses: '200': description: A successful response. schema: type: object properties: - batch_fees: - type: array - items: - type: object - properties: - token_contract: - type: string - total_fees: - type: string - total_txs: - type: string - format: uint64 - total_amount: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - error: - type: string - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - type_url: - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - value: - type: string - format: byte - description: >- - Must be a valid serialized protocol buffer of the above - specified type. - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: chain_name - in: query - required: false - type: string - tags: - - Query - /fx/crosschain/v1/bridge_call_by_nonce: - get: - operationId: BridgeCallByNonce - responses: - '200': - description: A successful response. - schema: - type: object - properties: - bridge_call: - type: object - properties: - sender: - type: string - refund: - type: string - tokens: - type: array - items: - type: object - properties: - contract: - type: string - amount: - type: string - description: >- - ERC20Token unique identifier for an Ethereum ERC20 - token. - to: - type: string - data: - type: string - memo: - type: string - nonce: - type: string - format: uint64 - timeout: - type: string - format: uint64 - block_height: - type: string - format: uint64 - event_nonce: - type: string - format: uint64 + bridge_call: + type: object + properties: + sender: + type: string + refund: + type: string + tokens: + type: array + items: + type: object + properties: + contract: + type: string + amount: + type: string + description: >- + ERC20Token unique identifier for an Ethereum ERC20 + token. + to: + type: string + data: + type: string + memo: + type: string + nonce: + type: string + format: uint64 + timeout: + type: string + format: uint64 + block_height: + type: string + format: uint64 + event_nonce: + type: string + format: uint64 default: description: An unexpected error response. schema: @@ -12106,302 +11882,18 @@ paths: type: boolean tags: - Query - /fx/crosschain/v1/pending_send_to_external: + /fx/crosschain/v1/projected_batch_timeout: get: - operationId: GetPendingSendToExternal + operationId: ProjectedBatchTimeoutHeight responses: '200': description: A successful response. schema: type: object properties: - transfers_in_batches: - type: array - items: - type: object - properties: - id: - type: string - format: uint64 - sender: - type: string - dest_address: - type: string - token: - type: object - properties: - contract: - type: string - amount: - type: string - description: >- - ERC20Token unique identifier for an Ethereum ERC20 - token. - fee: - type: object - properties: - contract: - type: string - amount: - type: string - description: >- - ERC20Token unique identifier for an Ethereum ERC20 - token. - title: >- - OutgoingTransferTx represents an individual send from - gravity to ETH - unbatched_transfers: - type: array - items: - type: object - properties: - id: - type: string - format: uint64 - sender: - type: string - dest_address: - type: string - token: - type: object - properties: - contract: - type: string - amount: - type: string - description: >- - ERC20Token unique identifier for an Ethereum ERC20 - token. - fee: - type: object - properties: - contract: - type: string - amount: - type: string - description: >- - ERC20Token unique identifier for an Ethereum ERC20 - token. - title: >- - OutgoingTransferTx represents an individual send from - gravity to ETH - default: - description: An unexpected error response. - schema: - type: object - properties: - error: - type: string - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - type_url: - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - value: - type: string - format: byte - description: >- - Must be a valid serialized protocol buffer of the above - specified type. - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: chain_name - in: query - required: false - type: string - - name: sender_address - in: query - required: false - type: string - tags: - - Query - /fx/crosschain/v1/projected_batch_timeout: - get: - operationId: ProjectedBatchTimeoutHeight - responses: - '200': - description: A successful response. - schema: - type: object - properties: - timeout_height: - type: string - format: uint64 + timeout_height: + type: string + format: uint64 default: description: An unexpected error response. schema: @@ -43674,18 +43166,6 @@ definitions: NOTE: The amount field is an Int which implements the custom method signatures required by gogoproto. - fx.gravity.crosschain.v1.BatchFees: - type: object - properties: - token_contract: - type: string - total_fees: - type: string - total_txs: - type: string - format: uint64 - total_amount: - type: string fx.gravity.crosschain.v1.BridgeToken: type: object properties: @@ -43714,13 +43194,6 @@ definitions: amount: type: string description: ERC20Token unique identifier for an Ethereum ERC20 token. - fx.gravity.crosschain.v1.MinBatchFee: - type: object - properties: - token_contract: - type: string - baseFee: - type: string fx.gravity.crosschain.v1.MsgBridgeCallConfirm: type: object properties: @@ -44027,76 +43500,6 @@ definitions: type: string chain_name: type: string - fx.gravity.crosschain.v1.QueryBatchFeeResponse: - type: object - properties: - batch_fees: - type: array - items: - type: object - properties: - token_contract: - type: string - total_fees: - type: string - total_txs: - type: string - format: uint64 - total_amount: - type: string - fx.gravity.crosschain.v1.QueryBatchRequestByNonceResponse: - type: object - properties: - batch: - type: object - properties: - batch_nonce: - type: string - format: uint64 - batch_timeout: - type: string - format: uint64 - transactions: - type: array - items: - type: object - properties: - id: - type: string - format: uint64 - sender: - type: string - dest_address: - type: string - token: - type: object - properties: - contract: - type: string - amount: - type: string - description: ERC20Token unique identifier for an Ethereum ERC20 token. - fee: - type: object - properties: - contract: - type: string - amount: - type: string - description: ERC20Token unique identifier for an Ethereum ERC20 token. - title: >- - OutgoingTransferTx represents an individual send from gravity to - ETH - token_contract: - type: string - block: - type: string - format: uint64 - feeReceive: - type: string - title: >- - OutgoingTxBatch represents a batch of transactions going from gravity - to ETH fx.gravity.crosschain.v1.QueryBridgeCallByNonceResponse: type: object properties: @@ -44644,6 +44047,59 @@ definitions: type: string format: int64 description: oracles contains all the queried oracles. + fx.gravity.crosschain.v1.QueryOutgoingTxBatchResponse: + type: object + properties: + batch: + type: object + properties: + batch_nonce: + type: string + format: uint64 + batch_timeout: + type: string + format: uint64 + transactions: + type: array + items: + type: object + properties: + id: + type: string + format: uint64 + sender: + type: string + dest_address: + type: string + token: + type: object + properties: + contract: + type: string + amount: + type: string + description: ERC20Token unique identifier for an Ethereum ERC20 token. + fee: + type: object + properties: + contract: + type: string + amount: + type: string + description: ERC20Token unique identifier for an Ethereum ERC20 token. + title: >- + OutgoingTransferTx represents an individual send from gravity to + ETH + token_contract: + type: string + block: + type: string + format: uint64 + feeReceive: + type: string + title: >- + OutgoingTxBatch represents a batch of transactions going from gravity + to ETH fx.gravity.crosschain.v1.QueryOutgoingTxBatchesResponse: type: object properties: @@ -44967,67 +44423,6 @@ definitions: repeated Bar results = 1; PageResponse page = 2; } - fx.gravity.crosschain.v1.QueryPendingSendToExternalResponse: - type: object - properties: - transfers_in_batches: - type: array - items: - type: object - properties: - id: - type: string - format: uint64 - sender: - type: string - dest_address: - type: string - token: - type: object - properties: - contract: - type: string - amount: - type: string - description: ERC20Token unique identifier for an Ethereum ERC20 token. - fee: - type: object - properties: - contract: - type: string - amount: - type: string - description: ERC20Token unique identifier for an Ethereum ERC20 token. - title: OutgoingTransferTx represents an individual send from gravity to ETH - unbatched_transfers: - type: array - items: - type: object - properties: - id: - type: string - format: uint64 - sender: - type: string - dest_address: - type: string - token: - type: object - properties: - contract: - type: string - amount: - type: string - description: ERC20Token unique identifier for an Ethereum ERC20 token. - fee: - type: object - properties: - contract: - type: string - amount: - type: string - description: ERC20Token unique identifier for an Ethereum ERC20 token. - title: OutgoingTransferTx represents an individual send from gravity to ETH fx.gravity.crosschain.v1.QueryProjectedBatchTimeoutHeightResponse: type: object properties: diff --git a/docs/swagger_test.go b/docs/swagger_test.go index 5a99c9a8..6e9c0226 100644 --- a/docs/swagger_test.go +++ b/docs/swagger_test.go @@ -57,7 +57,7 @@ func TestSwaggerConfig(t *testing.T) { assert.Equal(t, 7, handler.Value().Len()) } if handler.Key().String() == "GET" { - assert.Equal(t, 198, handler.Value().Len()) + assert.Equal(t, 196, handler.Value().Len()) } } assert.Equal(t, 31, len(route)) diff --git a/proto/fx/gravity/crosschain/v1/legacy.proto b/proto/fx/gravity/crosschain/v1/legacy.proto index 1f0fc9d8..3eba1171 100644 --- a/proto/fx/gravity/crosschain/v1/legacy.proto +++ b/proto/fx/gravity/crosschain/v1/legacy.proto @@ -60,7 +60,7 @@ message MsgAddOracleDeposit { string chain_name = 3; } -// Deprecated: Please use MsgBridgeCall +// Deprecated: Please use precompile BridgeCall message MsgSendToExternal { option (cosmos.msg.v1.signer) = "sender"; option (amino.name) = "crosschain/MsgSendToExternal"; @@ -73,7 +73,7 @@ message MsgSendToExternal { } // Deprecated: do not use -message MsgSendToExternalResponse { uint64 outgoing_tx_id = 1; } +message MsgSendToExternalResponse { uint64 batch_nonce = 1; } // Deprecated: do not use message MsgCancelSendToExternal { @@ -85,9 +85,6 @@ message MsgCancelSendToExternal { string chain_name = 3; } -// Deprecated: do not use -message MsgCancelSendToExternalResponse {} - // Deprecated: do not use message MsgRequestBatch { option (cosmos.msg.v1.signer) = "sender"; @@ -123,8 +120,6 @@ message MsgIncreaseBridgeFee { cosmos.base.v1beta1.Coin add_bridge_fee = 4 [ (gogoproto.nullable) = false ]; } -message MsgIncreaseBridgeFeeResponse { option deprecated = true; } - message MsgOracleSetConfirmResponse { option deprecated = true; } message MsgConfirmBatchResponse { option deprecated = true; } diff --git a/proto/fx/gravity/crosschain/v1/query.proto b/proto/fx/gravity/crosschain/v1/query.proto index a8ef4d65..4188e6d0 100644 --- a/proto/fx/gravity/crosschain/v1/query.proto +++ b/proto/fx/gravity/crosschain/v1/query.proto @@ -56,20 +56,17 @@ service Query { option (google.api.http).get = "/fx/crosschain/v1/oracle/event/block_height"; } - rpc BatchFees(QueryBatchFeeRequest) returns (QueryBatchFeeResponse) { - option (google.api.http).get = "/fx/crosschain/v1/batch_fees"; - } rpc LastObservedBlockHeight(QueryLastObservedBlockHeightRequest) returns (QueryLastObservedBlockHeightResponse) { option (google.api.http).get = "/fx/crosschain/v1/observed/block_height"; } rpc OutgoingTxBatches(QueryOutgoingTxBatchesRequest) returns (QueryOutgoingTxBatchesResponse) { - option (google.api.http).get = "/fx/crosschain/v1/batch/outgoing_tx"; + option (google.api.http).get = "/fx/crosschain/v1/batch/outgoing_txs"; } - rpc BatchRequestByNonce(QueryBatchRequestByNonceRequest) - returns (QueryBatchRequestByNonceResponse) { - option (google.api.http).get = "/fx/crosschain/v1/batch/request"; + rpc OutgoingTxBatch(QueryOutgoingTxBatchRequest) + returns (QueryOutgoingTxBatchResponse) { + option (google.api.http).get = "/fx/crosschain/v1/batch/outgoing_tx"; } rpc BatchConfirm(QueryBatchConfirmRequest) returns (QueryBatchConfirmResponse) { @@ -98,10 +95,6 @@ service Query { returns (QueryOracleResponse) { option (google.api.http).get = "/fx/crosschain/v1/oracle_by_bridger_addr"; } - rpc GetPendingSendToExternal(QueryPendingSendToExternalRequest) - returns (QueryPendingSendToExternalResponse) { - option (google.api.http).get = "/fx/crosschain/v1/pending_send_to_external"; - } rpc BridgeCalls(QueryBridgeCallsRequest) returns (QueryBridgeCallsResponse) { option (google.api.http).get = "/fx/crosschain/v1/bridge_calls"; @@ -211,12 +204,12 @@ message QueryLastPendingBatchRequestByAddrResponse { message QueryOutgoingTxBatchesRequest { string chain_name = 1; } message QueryOutgoingTxBatchesResponse { repeated OutgoingTxBatch batches = 1; } -message QueryBatchRequestByNonceRequest { +message QueryOutgoingTxBatchRequest { string chain_name = 1; string token_contract = 2; uint64 nonce = 3; } -message QueryBatchRequestByNonceResponse { OutgoingTxBatch batch = 1; } +message QueryOutgoingTxBatchResponse { OutgoingTxBatch batch = 1; } message QueryBatchConfirmRequest { string chain_name = 1; diff --git a/proto/fx/gravity/crosschain/v1/tx.proto b/proto/fx/gravity/crosschain/v1/tx.proto index f3ab7f09..98b36f2d 100644 --- a/proto/fx/gravity/crosschain/v1/tx.proto +++ b/proto/fx/gravity/crosschain/v1/tx.proto @@ -23,35 +23,23 @@ service Msg { rpc WithdrawReward(MsgWithdrawReward) returns (MsgWithdrawRewardResponse); rpc UnbondedOracle(MsgUnbondedOracle) returns (MsgUnbondedOracleResponse); - // Deprecated: do not use + // Deprecated: Please use Confirm rpc OracleSetConfirm(MsgOracleSetConfirm) returns (MsgOracleSetConfirmResponse); - - // Deprecated: Please use BridgeCall - rpc SendToExternal(MsgSendToExternal) returns (MsgSendToExternalResponse); - // Deprecated: do not use - rpc CancelSendToExternal(MsgCancelSendToExternal) - returns (MsgCancelSendToExternalResponse); - - // Deprecated: do not use - rpc RequestBatch(MsgRequestBatch) returns (MsgRequestBatchResponse); - // Deprecated: do not use + // Deprecated: Please use Confirm rpc ConfirmBatch(MsgConfirmBatch) returns (MsgConfirmBatchResponse); - - rpc BridgeCall(MsgBridgeCall) returns (MsgBridgeCallResponse); - - // Deprecated: do not use + // Deprecated: Please use Confirm rpc BridgeCallConfirm(MsgBridgeCallConfirm) returns (MsgBridgeCallConfirmResponse); + // Deprecated: Please use precompile BridgeCall + rpc SendToExternal(MsgSendToExternal) returns (MsgSendToExternalResponse); + rpc BridgeCall(MsgBridgeCall) returns (MsgBridgeCallResponse); + // UpdateParams defines a governance operation for updating the x/crosschain // module parameters. The authority is hard-coded to the x/gov module account. rpc UpdateParams(MsgUpdateParams) returns (MsgUpdateParamsResponse); - // Deprecated: do not use - rpc IncreaseBridgeFee(MsgIncreaseBridgeFee) - returns (MsgIncreaseBridgeFeeResponse); - rpc UpdateChainOracles(MsgUpdateChainOracles) returns (MsgUpdateChainOraclesResponse); diff --git a/solidity/contracts/bridge/ICrossChain.sol b/solidity/contracts/bridge/ICrossChain.sol index 14c6d6c1..b4072533 100644 --- a/solidity/contracts/bridge/ICrossChain.sol +++ b/solidity/contracts/bridge/ICrossChain.sol @@ -17,20 +17,6 @@ interface ICrossChain is IBridgeCall { string memory _memo ) external payable returns (bool _result); - // Deprecated: please use `IBridgeCall.bridgeCall` - function cancelSendToExternal( - string memory _chain, - uint256 _txID - ) external returns (bool _result); - - // Deprecated: please use `IBridgeCall.bridgeCall` - function increaseBridgeFee( - string memory _chain, - uint256 _txID, - address _token, - uint256 _fee - ) external payable returns (bool _result); - function bridgeCoinAmount( address _token, bytes32 _target @@ -63,22 +49,6 @@ interface ICrossChain is IBridgeCall { string memo ); - // Deprecated - event CancelSendToExternal( - address indexed sender, - string chain, - uint256 txID - ); - - // Deprecated - event IncreaseBridgeFee( - address indexed sender, - address indexed token, - string chain, - uint256 txID, - uint256 fee - ); - event BridgeCallEvent( address indexed _sender, address indexed _receiver, diff --git a/solidity/contracts/test/CrossChainTest.sol b/solidity/contracts/test/CrossChainTest.sol index 46dc91b2..88925c16 100644 --- a/solidity/contracts/test/CrossChainTest.sol +++ b/solidity/contracts/test/CrossChainTest.sol @@ -60,32 +60,6 @@ contract CrossChainTest { ); } - function cancelSendToExternal( - string memory _chain, - uint256 _txID - ) external returns (bool) { - return - ICrossChain(CROSS_CHAIN_ADDRESS).cancelSendToExternal( - _chain, - _txID - ); - } - - function increaseBridgeFee( - string memory _chain, - uint256 _txID, - address _token, - uint256 _fee - ) external payable returns (bool) { - return - ICrossChain(CROSS_CHAIN_ADDRESS).increaseBridgeFee( - _chain, - _txID, - _token, - _fee - ); - } - function bridgeCoinAmount( address _token, bytes32 _target diff --git a/tests/contract/CrossChainTest.go b/tests/contract/CrossChainTest.go index 6d5b4e8e..9bc543ee 100644 --- a/tests/contract/CrossChainTest.go +++ b/tests/contract/CrossChainTest.go @@ -31,8 +31,8 @@ var ( // CrossChainTestMetaData contains all meta data concerning the CrossChainTest contract. var CrossChainTestMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[],\"name\":\"CROSS_CHAIN_ADDRESS\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"_target\",\"type\":\"bytes32\"}],\"name\":\"bridgeCoinAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_chain\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_txID\",\"type\":\"uint256\"}],\"name\":\"cancelSendToExternal\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_receipt\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_fee\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_target\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"_memo\",\"type\":\"string\"}],\"name\":\"crossChain\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_chain\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_txID\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_fee\",\"type\":\"uint256\"}],\"name\":\"increaseBridgeFee\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"payable\",\"type\":\"function\"}]", - Bin: "0x608060405234801561001057600080fd5b50610907806100206000396000f3fe60806040526004361061004a5760003560e01c80630b56c1901461004f578063160d7c73146100845780638fefb76514610097578063c79a6b7b146100c5578063f7356475146100d8575b600080fd5b34801561005b57600080fd5b5061006f61006a3660046105fa565b610106565b60405190151581526020015b60405180910390f35b61006f61009236600461065b565b610179565b3480156100a357600080fd5b506100b76100b23660046106eb565b610469565b60405190815260200161007b565b61006f6100d3366004610715565b6104dd565b3480156100e457600080fd5b506100ee61100481565b6040516001600160a01b03909116815260200161007b565b60405162b56c1960e41b815260009061100490630b56c1909061012f90869086906004016107c1565b6020604051808303816000875af115801561014e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061017291906107e3565b9392505050565b60006001600160a01b038716156102ab576001600160a01b0387166323b872dd33306101a5888a610805565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af11580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d91906107e3565b506001600160a01b03871663095ea7b361100461023a8789610805565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610285573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102a991906107e3565b505b6001600160a01b0387161561039257604051636eb1769f60e11b815230600482015261100460248201526000906001600160a01b0389169063dd62ed3e90604401602060405180830381865afa158015610309573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061032d919061082b565b90506103398587610805565b811461038c5760405162461bcd60e51b815260206004820181905260248201527f616c6c6f77616e6365206e6f7420657175616c20616d6f756e74202b2066656560448201526064015b60405180910390fd5b506103ea565b61039c8486610805565b34146103ea5760405162461bcd60e51b815260206004820181905260248201527f6d73672e76616c7565206e6f7420657175616c20616d6f756e74202b206665656044820152606401610383565b60405163160d7c7360e01b81526110049063160d7c7390349061041b908b908b908b908b908b908b90600401610844565b60206040518083038185885af1158015610439573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061045e91906107e3565b979650505050505050565b604051638fefb76560e01b81526001600160a01b03831660048201526024810182905260009061100490638fefb76590604401602060405180830381865afa1580156104b9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610172919061082b565b60405163c79a6b7b60e01b81526000906110049063c79a6b7b9061050b908890889088908890600401610899565b6020604051808303816000875af115801561052a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061054e91906107e3565b95945050505050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261057e57600080fd5b813567ffffffffffffffff8082111561059957610599610557565b604051601f8301601f19908116603f011681019082821181831017156105c1576105c1610557565b816040528381528660208588010111156105da57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806040838503121561060d57600080fd5b823567ffffffffffffffff81111561062457600080fd5b6106308582860161056d565b95602094909401359450505050565b80356001600160a01b038116811461065657600080fd5b919050565b60008060008060008060c0878903121561067457600080fd5b61067d8761063f565b9550602087013567ffffffffffffffff8082111561069a57600080fd5b6106a68a838b0161056d565b965060408901359550606089013594506080890135935060a08901359150808211156106d157600080fd5b506106de89828a0161056d565b9150509295509295509295565b600080604083850312156106fe57600080fd5b6107078361063f565b946020939093013593505050565b6000806000806080858703121561072b57600080fd5b843567ffffffffffffffff81111561074257600080fd5b61074e8782880161056d565b945050602085013592506107646040860161063f565b9396929550929360600135925050565b6000815180845260005b8181101561079a5760208185018101518683018201520161077e565b818111156107ac576000602083870101525b50601f01601f19169290920160200192915050565b6040815260006107d46040830185610774565b90508260208301529392505050565b6000602082840312156107f557600080fd5b8151801515811461017257600080fd5b6000821982111561082657634e487b7160e01b600052601160045260246000fd5b500190565b60006020828403121561083d57600080fd5b5051919050565b6001600160a01b038716815260c06020820181905260009061086890830188610774565b86604084015285606084015284608084015282810360a084015261088c8185610774565b9998505050505050505050565b6080815260006108ac6080830187610774565b6020830195909552506001600160a01b0392909216604083015260609091015291905056fea2646970667358221220f4444562a8459561fa76aca43b6ebed5628ad0b0cf48c5991b5a424436da2a6d64736f6c634300080a0033", + ABI: "[{\"inputs\":[],\"name\":\"CROSS_CHAIN_ADDRESS\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"_target\",\"type\":\"bytes32\"}],\"name\":\"bridgeCoinAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_receipt\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_fee\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_target\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"_memo\",\"type\":\"string\"}],\"name\":\"crossChain\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"payable\",\"type\":\"function\"}]", + Bin: "0x608060405234801561001057600080fd5b506106da806100206000396000f3fe6080604052600436106100345760003560e01c8063160d7c73146100395780638fefb76514610061578063f73564751461008f575b600080fd5b61004c6100473660046104e7565b6100bd565b60405190151581526020015b60405180910390f35b34801561006d57600080fd5b5061008161007c366004610577565b6103ad565b604051908152602001610058565b34801561009b57600080fd5b506100a561100481565b6040516001600160a01b039091168152602001610058565b60006001600160a01b038716156101ef576001600160a01b0387166323b872dd33306100e9888a6105a1565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af115801561013d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061016191906105c7565b506001600160a01b03871663095ea7b361100461017e87896105a1565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af11580156101c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101ed91906105c7565b505b6001600160a01b038716156102d657604051636eb1769f60e11b815230600482015261100460248201526000906001600160a01b0389169063dd62ed3e90604401602060405180830381865afa15801561024d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061027191906105e9565b905061027d85876105a1565b81146102d05760405162461bcd60e51b815260206004820181905260248201527f616c6c6f77616e6365206e6f7420657175616c20616d6f756e74202b2066656560448201526064015b60405180910390fd5b5061032e565b6102e084866105a1565b341461032e5760405162461bcd60e51b815260206004820181905260248201527f6d73672e76616c7565206e6f7420657175616c20616d6f756e74202b2066656560448201526064016102c7565b60405163160d7c7360e01b81526110049063160d7c7390349061035f908b908b908b908b908b908b9060040161064f565b60206040518083038185885af115801561037d573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906103a291906105c7565b979650505050505050565b604051638fefb76560e01b81526001600160a01b03831660048201526024810182905260009061100490638fefb76590604401602060405180830381865afa1580156103fd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061042191906105e9565b9392505050565b80356001600160a01b038116811461043f57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261046b57600080fd5b813567ffffffffffffffff8082111561048657610486610444565b604051601f8301601f19908116603f011681019082821181831017156104ae576104ae610444565b816040528381528660208588010111156104c757600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060008060c0878903121561050057600080fd5b61050987610428565b9550602087013567ffffffffffffffff8082111561052657600080fd5b6105328a838b0161045a565b965060408901359550606089013594506080890135935060a089013591508082111561055d57600080fd5b5061056a89828a0161045a565b9150509295509295509295565b6000806040838503121561058a57600080fd5b61059383610428565b946020939093013593505050565b600082198211156105c257634e487b7160e01b600052601160045260246000fd5b500190565b6000602082840312156105d957600080fd5b8151801515811461042157600080fd5b6000602082840312156105fb57600080fd5b5051919050565b6000815180845260005b818110156106285760208185018101518683018201520161060c565b8181111561063a576000602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b038716815260c06020820181905260009061067390830188610602565b86604084015285606084015284608084015282810360a08401526106978185610602565b999850505050505050505056fea2646970667358221220a7820ef250f22731ab00f08d0d3f7a29e1d9270f6947e9ea594e944b105882e964736f6c634300080a0033", } // CrossChainTestABI is the input ABI used to generate the binding from. @@ -264,27 +264,6 @@ func (_CrossChainTest *CrossChainTestCallerSession) BridgeCoinAmount(_token comm return _CrossChainTest.Contract.BridgeCoinAmount(&_CrossChainTest.CallOpts, _token, _target) } -// CancelSendToExternal is a paid mutator transaction binding the contract method 0x0b56c190. -// -// Solidity: function cancelSendToExternal(string _chain, uint256 _txID) returns(bool) -func (_CrossChainTest *CrossChainTestTransactor) CancelSendToExternal(opts *bind.TransactOpts, _chain string, _txID *big.Int) (*types.Transaction, error) { - return _CrossChainTest.contract.Transact(opts, "cancelSendToExternal", _chain, _txID) -} - -// CancelSendToExternal is a paid mutator transaction binding the contract method 0x0b56c190. -// -// Solidity: function cancelSendToExternal(string _chain, uint256 _txID) returns(bool) -func (_CrossChainTest *CrossChainTestSession) CancelSendToExternal(_chain string, _txID *big.Int) (*types.Transaction, error) { - return _CrossChainTest.Contract.CancelSendToExternal(&_CrossChainTest.TransactOpts, _chain, _txID) -} - -// CancelSendToExternal is a paid mutator transaction binding the contract method 0x0b56c190. -// -// Solidity: function cancelSendToExternal(string _chain, uint256 _txID) returns(bool) -func (_CrossChainTest *CrossChainTestTransactorSession) CancelSendToExternal(_chain string, _txID *big.Int) (*types.Transaction, error) { - return _CrossChainTest.Contract.CancelSendToExternal(&_CrossChainTest.TransactOpts, _chain, _txID) -} - // CrossChain is a paid mutator transaction binding the contract method 0x160d7c73. // // Solidity: function crossChain(address _token, string _receipt, uint256 _amount, uint256 _fee, bytes32 _target, string _memo) payable returns(bool) @@ -305,24 +284,3 @@ func (_CrossChainTest *CrossChainTestSession) CrossChain(_token common.Address, func (_CrossChainTest *CrossChainTestTransactorSession) CrossChain(_token common.Address, _receipt string, _amount *big.Int, _fee *big.Int, _target [32]byte, _memo string) (*types.Transaction, error) { return _CrossChainTest.Contract.CrossChain(&_CrossChainTest.TransactOpts, _token, _receipt, _amount, _fee, _target, _memo) } - -// IncreaseBridgeFee is a paid mutator transaction binding the contract method 0xc79a6b7b. -// -// Solidity: function increaseBridgeFee(string _chain, uint256 _txID, address _token, uint256 _fee) payable returns(bool) -func (_CrossChainTest *CrossChainTestTransactor) IncreaseBridgeFee(opts *bind.TransactOpts, _chain string, _txID *big.Int, _token common.Address, _fee *big.Int) (*types.Transaction, error) { - return _CrossChainTest.contract.Transact(opts, "increaseBridgeFee", _chain, _txID, _token, _fee) -} - -// IncreaseBridgeFee is a paid mutator transaction binding the contract method 0xc79a6b7b. -// -// Solidity: function increaseBridgeFee(string _chain, uint256 _txID, address _token, uint256 _fee) payable returns(bool) -func (_CrossChainTest *CrossChainTestSession) IncreaseBridgeFee(_chain string, _txID *big.Int, _token common.Address, _fee *big.Int) (*types.Transaction, error) { - return _CrossChainTest.Contract.IncreaseBridgeFee(&_CrossChainTest.TransactOpts, _chain, _txID, _token, _fee) -} - -// IncreaseBridgeFee is a paid mutator transaction binding the contract method 0xc79a6b7b. -// -// Solidity: function increaseBridgeFee(string _chain, uint256 _txID, address _token, uint256 _fee) payable returns(bool) -func (_CrossChainTest *CrossChainTestTransactorSession) IncreaseBridgeFee(_chain string, _txID *big.Int, _token common.Address, _fee *big.Int) (*types.Transaction, error) { - return _CrossChainTest.Contract.IncreaseBridgeFee(&_CrossChainTest.TransactOpts, _chain, _txID, _token, _fee) -} diff --git a/tests/crosschain_suite.go b/tests/crosschain_suite.go index 3ca3e50d..e96385af 100644 --- a/tests/crosschain_suite.go +++ b/tests/crosschain_suite.go @@ -100,15 +100,6 @@ func (suite *CrosschainTestSuite) QueryParams() crosschaintypes.Params { return response.Params } -func (suite *CrosschainTestSuite) QueryPendingUnbatchedTx(sender sdk.AccAddress) []*crosschaintypes.OutgoingTransferTx { - pendingTx, err := suite.CrosschainQuery().GetPendingSendToExternal(suite.ctx, &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: suite.chainName, - SenderAddress: sender.String(), - }) - suite.NoError(err) - return pendingTx.UnbatchedTransfers -} - func (suite *CrosschainTestSuite) queryFxLastEventNonce() uint64 { lastEventNonce, err := suite.CrosschainQuery().LastEventNonceByAddr(suite.ctx, &crosschaintypes.QueryLastEventNonceByAddrRequest{ @@ -411,68 +402,6 @@ func (suite *CrosschainTestSuite) SendCancelSendToExternal(txId uint64) { }) } -func (suite *CrosschainTestSuite) SendIncreaseBridgeFee(txId uint64, bridgeFee sdk.Coin) { - suite.BroadcastTx(suite.privKey, &crosschaintypes.MsgIncreaseBridgeFee{ - ChainName: suite.chainName, - TransactionId: txId, - Sender: suite.AccAddress().String(), - AddBridgeFee: bridgeFee, - }) -} - -func (suite *CrosschainTestSuite) CheckIncreaseBridgeFee(sender sdk.AccAddress, txId uint64) { - unbatchedTxs := suite.QueryPendingUnbatchedTx(sender) - bridgeFee := sdkmath.ZeroInt() - bridgeToken := "" - for _, tx := range unbatchedTxs { - if tx.Id != txId { - continue - } - bridgeFee = tx.Fee.Amount - bridgeToken = tx.Fee.Contract - } - suite.NotEmpty(bridgeToken) - - bridgeDenom := suite.GetBridgeDenomByToken(bridgeToken) - - addBridgeFee := sdkmath.NewInt(10) - suite.SendIncreaseBridgeFee(txId, sdk.NewCoin(bridgeDenom, addBridgeFee)) - - unbatchedTxs = suite.QueryPendingUnbatchedTx(sender) - for _, tx := range unbatchedTxs { - if tx.Id == txId { - suite.Equal(tx.Fee.Amount, bridgeFee.Add(addBridgeFee)) - break - } - } -} - -func (suite *CrosschainTestSuite) SendBatchRequest(minTxs uint64) { - batchFeeResponse, err := suite.CrosschainQuery().BatchFees(suite.ctx, &crosschaintypes.QueryBatchFeeRequest{ChainName: suite.chainName}) - suite.NoError(err) - suite.True(len(batchFeeResponse.BatchFees) >= 1) - for _, batchToken := range batchFeeResponse.BatchFees { - suite.Equal(batchToken.TotalTxs, minTxs) - - denomResponse, err := suite.CrosschainQuery().TokenToDenom(suite.ctx, &crosschaintypes.QueryTokenToDenomRequest{ - Token: batchToken.TokenContract, - ChainName: suite.chainName, - }) - suite.NoError(err) - - msgList := make([]sdk.Msg, 0) - msgList = append(msgList, &crosschaintypes.MsgRequestBatch{ - Sender: suite.BridgerAddr().String(), - Denom: denomResponse.Denom, - MinimumFee: batchToken.TotalFees, - FeeReceive: suite.HexAddressString(), - ChainName: suite.chainName, - }) - suite.BroadcastTx(suite.bridgerPrivKey, msgList...) - suite.NoError(suite.network.WaitForNextBlock()) - } -} - func (suite *CrosschainTestSuite) SendConfirmBatch() { response, err := suite.CrosschainQuery().LastPendingBatchRequestByAddr( suite.ctx, @@ -516,7 +445,6 @@ func (suite *CrosschainTestSuite) SendConfirmBatch() { func (suite *CrosschainTestSuite) SendToExternalAndConfirm(coin sdk.Coin) { suite.SendToExternal(1, coin) - suite.SendBatchRequest(1) suite.SendConfirmBatch() } @@ -532,13 +460,6 @@ func (suite *CrosschainTestSuite) SelectTokenMetadata(basePrefix string) banktyp panic("no match token") } -func (suite *CrosschainTestSuite) CancelAllSendToExternal() { - pendingTxs := suite.QueryPendingUnbatchedTx(suite.AccAddress()) - for _, tx := range pendingTxs { - suite.SendCancelSendToExternal(tx.Id) - } -} - func (suite *CrosschainTestSuite) AddBridgeToken(md banktypes.Metadata) (string, crosschaintypes.BridgeToken) { bridgeTokenAddr := helpers.GenExternalAddr(suite.chainName) suite.AddBridgeTokenClaim(md.Name, md.Symbol, uint64(md.DenomUnits[1].Exponent), bridgeTokenAddr, "") diff --git a/tests/crosschain_test.go b/tests/crosschain_test.go index bd18ffcd..7f695c85 100644 --- a/tests/crosschain_test.go +++ b/tests/crosschain_test.go @@ -66,9 +66,6 @@ func (suite *IntegrationTest) CrossChainTest() { suite.True(txId > 0) chain.CheckBalance(chain.AccAddress(), sdk.NewCoin(bridgeDenom, sdkmath.NewInt(50))) - chain.CheckIncreaseBridgeFee(chain.AccAddress(), txId) - - chain.SendBatchRequest(5) chain.SendConfirmBatch() chain.SendToExternalAndCancel(sdk.NewCoin(bridgeDenom, sdkmath.NewInt(40))) @@ -210,11 +207,6 @@ func (suite *IntegrationTest) OriginalCrossChainTest() { purseAliasSupply, err = suite.GRPCClient().BankQuery().SupplyOf(suite.ctx, &banktypes.QuerySupplyOfRequest{Denom: purseNewAlias}) suite.NoError(err) suite.Equal(initAmount.Sub(sdkmath.NewInt(200)), purseAliasSupply.Amount.Amount) - - // clear send to external tx - ethChain.CancelAllSendToExternal() - bscChain.CancelAllSendToExternal() - tronChain.CancelAllSendToExternal() } // BridgeCallToFxcoreTest run after erc20 register coin diff --git a/tests/integration_test.go b/tests/integration_test.go index cf22033f..86658ece 100644 --- a/tests/integration_test.go +++ b/tests/integration_test.go @@ -71,8 +71,6 @@ func (suite *IntegrationTest) TestRun() { suite.PrecompileTransferCrossChainTest() suite.PrecompileCrossChainTest() - suite.PrecompileCancelSendToExternalTest() - suite.PrecompileIncreaseBridgeFeeTest() suite.PrecompileCrossChainConvertedDenomTest() suite.ERC20TokenOriginTest() diff --git a/tests/precompile_suite.go b/tests/precompile_suite.go index df6c9394..57007624 100644 --- a/tests/precompile_suite.go +++ b/tests/precompile_suite.go @@ -2,9 +2,7 @@ package tests import ( "math/big" - "slices" - sdkmath "cosmossdk.io/math" cryptotypes "github.com/cosmos/cosmos-sdk/crypto/types" sdk "github.com/cosmos/cosmos-sdk/types" "github.com/ethereum/go-ethereum/common" @@ -14,7 +12,6 @@ import ( "github.com/functionx/fx-core/v8/contract" "github.com/functionx/fx-core/v8/testutil/helpers" fxtypes "github.com/functionx/fx-core/v8/types" - "github.com/functionx/fx-core/v8/x/crosschain/precompile" crosschaintypes "github.com/functionx/fx-core/v8/x/crosschain/types" ) @@ -51,28 +48,6 @@ func (suite *PrecompileTestSuite) TransferCrossChain(token common.Address, recip return ethTx } -func (suite *PrecompileTestSuite) TransferCrossChainAndCheckPendingTx(token common.Address, recipient string, amount, fee *big.Int, chainName string) *ethtypes.Transaction { - pendingTxs, err := suite.GRPCClient().CrosschainQuery().GetPendingSendToExternal(suite.ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: chainName, - SenderAddress: suite.AccAddress().String(), - }) - suite.NoError(err) - ethTx := suite.TransferCrossChain(token, recipient, amount, fee, chainName) - newPendingTxs, err := suite.GRPCClient().CrosschainQuery().GetPendingSendToExternal(suite.ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: chainName, - SenderAddress: suite.AccAddress().String(), - }) - suite.NoError(err) - suite.Equal(1, len(newPendingTxs.UnbatchedTransfers)-len(pendingTxs.UnbatchedTransfers)) - tx := newPendingTxs.UnbatchedTransfers[0] - suite.Equal(tx.Token.Amount, sdkmath.NewIntFromBigInt(amount)) - suite.Equal(tx.Fee.Amount, sdkmath.NewIntFromBigInt(fee)) - suite.Equal(tx.Sender, suite.AccAddress().String()) - return ethTx -} - func (suite *PrecompileTestSuite) CrossChainAndResponse(token common.Address, recipient string, amount, fee *big.Int, target string) *ethtypes.Transaction { privateKey := suite.privKey crossChainContract := crosschaintypes.GetAddress() @@ -88,115 +63,3 @@ func (suite *PrecompileTestSuite) CrossChainAndResponse(token common.Address, re suite.Require().True(new(big.Int).Sub(beforeBalanceOf, afterBalanceOf).Cmp(new(big.Int).Add(amount, fee)) == 0) return ethTx } - -func (suite *PrecompileTestSuite) CrossChainAndCheckPendingTx(token common.Address, recipient string, amount, fee *big.Int, chainName string) (*ethtypes.Transaction, uint64) { - pendingTxs, err := suite.GRPCClient().CrosschainQuery().GetPendingSendToExternal(suite.ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: chainName, - SenderAddress: suite.AccAddress().String(), - }) - suite.NoError(err) - ethTx := suite.CrossChainAndResponse(token, recipient, amount, fee, chainName) - newPendingTxs, err := suite.GRPCClient().CrosschainQuery().GetPendingSendToExternal(suite.ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: chainName, - SenderAddress: suite.AccAddress().String(), - }) - suite.NoError(err) - suite.Equal(1, len(newPendingTxs.UnbatchedTransfers)-len(pendingTxs.UnbatchedTransfers)) - - var currentTx *crosschaintypes.OutgoingTransferTx - for _, newTx := range newPendingTxs.UnbatchedTransfers { - found := false - for _, tx := range pendingTxs.UnbatchedTransfers { - if tx.Id == newTx.Id { - found = true - break - } - } - if !found { - currentTx = newTx - break - } - } - - suite.NotEmpty(currentTx) - suite.Equal(currentTx.Token.Amount, sdkmath.NewIntFromBigInt(amount)) - suite.Equal(currentTx.Fee.Amount, sdkmath.NewIntFromBigInt(fee)) - suite.Equal(currentTx.Sender, suite.AccAddress().String()) - return ethTx, currentTx.Id -} - -func (suite *PrecompileTestSuite) CrossChain(token common.Address, recipient string, amount, fee *big.Int, chainName string) uint64 { - _, txId := suite.CrossChainAndCheckPendingTx(token, recipient, amount, fee, chainName) - return txId -} - -func (suite *PrecompileTestSuite) CancelSendToExternal(chain string, txId uint64) *ethtypes.Transaction { - privateKey := suite.privKey - crossChainContract := crosschaintypes.GetAddress() - pack, err := precompile.NewCancelSendToExternalMethod(nil).PackInput(chain, big.NewInt(int64(txId))) - suite.Require().NoError(err) - ethTx, err := client.BuildEthTransaction(suite.ctx, suite.EthClient(), privateKey, &crossChainContract, nil, pack) - suite.Require().NoError(err, chain) - suite.SendTransaction(ethTx) - return ethTx -} - -func (suite *PrecompileTestSuite) CancelSendToExternalAndCheckPendingTx(chain string, txId uint64) *ethtypes.Transaction { - txIdEqual := func(tx *crosschaintypes.OutgoingTransferTx) bool { return tx.Id == txId } - pendingTxs, err := suite.GRPCClient().CrosschainQuery().GetPendingSendToExternal(suite.ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: chain, - SenderAddress: suite.AccAddress().String(), - }) - suite.NoError(err) - suite.True(len(pendingTxs.UnbatchedTransfers) > 0) - suite.True(slices.ContainsFunc(pendingTxs.UnbatchedTransfers, txIdEqual)) - ethTx := suite.CancelSendToExternal(chain, txId) - newPendingTxs, err := suite.GRPCClient().CrosschainQuery().GetPendingSendToExternal(suite.ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: chain, - SenderAddress: suite.AccAddress().String(), - }) - suite.NoError(err) - suite.Equal(len(pendingTxs.UnbatchedTransfers)-1, len(newPendingTxs.UnbatchedTransfers)) - suite.False(slices.ContainsFunc(newPendingTxs.UnbatchedTransfers, txIdEqual)) - return ethTx -} - -func (suite *PrecompileTestSuite) IncreaseBridgeFee(chain string, txId uint64, token common.Address, fee *big.Int) *ethtypes.Transaction { - privateKey := suite.privKey - crossChainContract := crosschaintypes.GetAddress() - suite.ApproveERC20(privateKey, token, crossChainContract, fee) - pack, err := precompile.NewIncreaseBridgeFeeMethod(nil).PackInput(chain, big.NewInt(int64(txId)), token, fee) - suite.Require().NoError(err) - ethTx, err := client.BuildEthTransaction(suite.ctx, suite.EthClient(), privateKey, &crossChainContract, nil, pack) - suite.Require().NoError(err, chain) - suite.SendTransaction(ethTx) - return ethTx -} - -func (suite *PrecompileTestSuite) IncreaseBridgeFeeCheckPendingTx(chain string, txId uint64, token common.Address, fee *big.Int) *ethtypes.Transaction { - txIdEqual := func(tx *crosschaintypes.OutgoingTransferTx) bool { return tx.Id == txId } - pendingTxs, err := suite.GRPCClient().CrosschainQuery().GetPendingSendToExternal(suite.ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: chain, - SenderAddress: suite.AccAddress().String(), - }) - suite.NoError(err) - tx := pendingTxs.UnbatchedTransfers[slices.IndexFunc(pendingTxs.UnbatchedTransfers, txIdEqual)] - suite.Equal(txId, tx.Id) - - ethTx := suite.IncreaseBridgeFee(chain, txId, token, fee) - newPendingTxs, err := suite.GRPCClient().CrosschainQuery().GetPendingSendToExternal(suite.ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: chain, - SenderAddress: suite.AccAddress().String(), - }) - suite.NoError(err) - newTx := newPendingTxs.UnbatchedTransfers[slices.IndexFunc(newPendingTxs.UnbatchedTransfers, txIdEqual)] - suite.Equal(tx.Id, newTx.Id) - suite.Equal(tx.Fee.Amount.Add(sdkmath.NewIntFromBigInt(fee)), newTx.Fee.Amount) - return ethTx -} diff --git a/tests/precompile_test.go b/tests/precompile_test.go index f04e5926..00e064b9 100644 --- a/tests/precompile_test.go +++ b/tests/precompile_test.go @@ -25,11 +25,9 @@ func (suite *IntegrationTest) PrecompileTransferCrossChainTest() { chain.SendToTxClaimWithReceiver(suite.precompile.AccAddress(), bridgeToken.Token, sdkmath.NewInt(200), fxtypes.LegacyERC20Target) }) - receive := chain.FormatAddress(suite.precompile.HexAddress()) - suite.precompile.TransferCrossChainAndCheckPendingTx(tokenPair.GetERC20Contract(), receive, - big.NewInt(20), big.NewInt(30), chain.chainName) - - chain.CancelAllSendToExternal() + // receive := chain.FormatAddress(suite.precompile.HexAddress()) + // suite.precompile.TransferCrossChainAndCheckPendingTx(tokenPair.GetERC20Contract(), receive, + // big.NewInt(20), big.NewInt(30), chain.chainName) } } @@ -43,49 +41,9 @@ func (suite *IntegrationTest) PrecompileCrossChainTest() { chain.SendToTxClaimWithReceiver(suite.precompile.AccAddress(), bridgeToken.Token, sdkmath.NewInt(200), fxtypes.LegacyERC20Target) }) - receive := chain.FormatAddress(suite.precompile.HexAddress()) - suite.precompile.CrossChain(tokenPair.GetERC20Contract(), receive, - big.NewInt(20), big.NewInt(30), chain.chainName) - - chain.CancelAllSendToExternal() - } -} - -func (suite *IntegrationTest) PrecompileCancelSendToExternalTest() { - suite.Send(suite.precompile.AccAddress(), suite.NewCoin(sdkmath.NewInt(10_100).MulRaw(1e18))) - - tokenPair, bridgeTokens := suite.precompileInit() - for i, chain := range suite.crosschain { - bridgeToken := bridgeTokens[i] - suite.erc20.HandleWithCheckBalance(tokenPair.GetERC20Contract(), suite.precompile.HexAddress(), big.NewInt(200), func() { - chain.SendToTxClaimWithReceiver(suite.precompile.AccAddress(), bridgeToken.Token, sdkmath.NewInt(200), fxtypes.LegacyERC20Target) - }) - - receive := chain.FormatAddress(suite.precompile.HexAddress()) - txId := suite.precompile.CrossChain(tokenPair.GetERC20Contract(), receive, - big.NewInt(20), big.NewInt(30), chain.chainName) - - suite.precompile.CancelSendToExternalAndCheckPendingTx(chain.chainName, txId) - } -} - -func (suite *IntegrationTest) PrecompileIncreaseBridgeFeeTest() { - suite.Send(suite.precompile.AccAddress(), suite.NewCoin(sdkmath.NewInt(10_100).MulRaw(1e18))) - - tokenPair, bridgeTokens := suite.precompileInit() - for i, chain := range suite.crosschain { - bridgeToken := bridgeTokens[i] - suite.erc20.HandleWithCheckBalance(tokenPair.GetERC20Contract(), suite.precompile.HexAddress(), big.NewInt(200), func() { - chain.SendToTxClaimWithReceiver(suite.precompile.AccAddress(), bridgeToken.Token, sdkmath.NewInt(200), fxtypes.LegacyERC20Target) - }) - - receive := chain.FormatAddress(suite.precompile.HexAddress()) - txId := suite.precompile.CrossChain(tokenPair.GetERC20Contract(), receive, - big.NewInt(20), big.NewInt(30), chain.chainName) - - suite.precompile.IncreaseBridgeFeeCheckPendingTx(chain.chainName, txId, tokenPair.GetERC20Contract(), big.NewInt(50)) - - chain.CancelAllSendToExternal() + // receive := chain.FormatAddress(suite.precompile.HexAddress()) + // suite.precompile.CrossChain(tokenPair.GetERC20Contract(), receive, + // big.NewInt(20), big.NewInt(30), chain.chainName) } } @@ -110,10 +68,10 @@ func (suite *IntegrationTest) PrecompileCrossChainConvertedDenomTest() { }) // fx cross chain - suite.precompile.CrossChain(fxPair.GetERC20Contract(), - ethChain.HexAddressString(), big.NewInt(10), big.NewInt(1), ethtypes.ModuleName) - suite.precompile.CrossChain(fxPair.GetERC20Contract(), - bscChain.HexAddressString(), big.NewInt(11), big.NewInt(1), bsctypes.ModuleName) + // suite.precompile.CrossChain(fxPair.GetERC20Contract(), + // ethChain.HexAddressString(), big.NewInt(10), big.NewInt(1), ethtypes.ModuleName) + // suite.precompile.CrossChain(fxPair.GetERC20Contract(), + // bscChain.HexAddressString(), big.NewInt(11), big.NewInt(1), bsctypes.ModuleName) // purse purseMd := bscChain.SelectTokenMetadata("ibc/") @@ -129,10 +87,10 @@ func (suite *IntegrationTest) PrecompileCrossChainConvertedDenomTest() { }) // purse cross chain - suite.precompile.CrossChain(pursePair.GetERC20Contract(), - ethChain.HexAddressString(), big.NewInt(20), big.NewInt(1), ethtypes.ModuleName) - suite.precompile.CrossChain(pursePair.GetERC20Contract(), - bscChain.HexAddressString(), big.NewInt(21), big.NewInt(1), bsctypes.ModuleName) + // suite.precompile.CrossChain(pursePair.GetERC20Contract(), + // ethChain.HexAddressString(), big.NewInt(20), big.NewInt(1), ethtypes.ModuleName) + // suite.precompile.CrossChain(pursePair.GetERC20Contract(), + // bscChain.HexAddressString(), big.NewInt(21), big.NewInt(1), bsctypes.ModuleName) // pundix pundixMd := ethChain.SelectTokenMetadata("eth") @@ -148,15 +106,10 @@ func (suite *IntegrationTest) PrecompileCrossChainConvertedDenomTest() { }) // pundix cross chain - suite.precompile.CrossChain(pundixPair.GetERC20Contract(), - ethChain.HexAddressString(), big.NewInt(30), big.NewInt(1), ethtypes.ModuleName) - suite.precompile.CrossChain(pundixPair.GetERC20Contract(), - tronChain.HexAddressString(), big.NewInt(31), big.NewInt(1), trontypes.ModuleName) - - // clear send to external tx - ethChain.CancelAllSendToExternal() - bscChain.CancelAllSendToExternal() - tronChain.CancelAllSendToExternal() + // suite.precompile.CrossChain(pundixPair.GetERC20Contract(), + // ethChain.HexAddressString(), big.NewInt(30), big.NewInt(1), ethtypes.ModuleName) + // suite.precompile.CrossChain(pundixPair.GetERC20Contract(), + // tronChain.HexAddressString(), big.NewInt(31), big.NewInt(1), trontypes.ModuleName) } func (suite *IntegrationTest) precompileInit() (*erc20types.TokenPair, []crosschaintypes.BridgeToken) { diff --git a/x/crosschain/client/cli/query.go b/x/crosschain/client/cli/query.go index f7dc9628..5ff2bf81 100644 --- a/x/crosschain/client/cli/query.go +++ b/x/crosschain/client/cli/query.go @@ -62,10 +62,8 @@ func getQuerySubCmds(chainName string) []*cobra.Command { CmdBatchConfirms(chainName), // send to external - CmdBatchRequestByNonce(chainName), - CmdGetPendingSendToExternal(chainName), + CmdOutgoingTxBatch(chainName), CmdOutgoingTxBatches(chainName), - CmdGetBatchFees(chainName), CmdGetLastObservedBlockHeight(chainName), CmdProjectedBatchTimeoutHeight(chainName), @@ -510,9 +508,9 @@ func CmdBatchConfirms(chainName string) *cobra.Command { return cmd } -func CmdBatchRequestByNonce(chainName string) *cobra.Command { +func CmdOutgoingTxBatch(chainName string) *cobra.Command { cmd := &cobra.Command{ - Use: "batch-request [token-contract] [nonce]", + Use: "outgoing-tx-batch [token-contract] [nonce]", Short: "Query outgoing tx batches", Args: cobra.ExactArgs(2), RunE: func(cmd *cobra.Command, args []string) error { @@ -527,7 +525,7 @@ func CmdBatchRequestByNonce(chainName string) *cobra.Command { if err != nil { return err } - res, err := queryClient.BatchRequestByNonce(cmd.Context(), &types.QueryBatchRequestByNonceRequest{ + res, err := queryClient.OutgoingTxBatch(cmd.Context(), &types.QueryOutgoingTxBatchRequest{ ChainName: chainName, TokenContract: tokenContract, Nonce: nonce, @@ -541,32 +539,6 @@ func CmdBatchRequestByNonce(chainName string) *cobra.Command { return cmd } -func CmdGetPendingSendToExternal(chainName string) *cobra.Command { - cmd := &cobra.Command{ - Use: "pending-send-to-external [address]", - Short: "Query pending send to external txs", - Args: cobra.ExactArgs(1), - RunE: func(cmd *cobra.Command, args []string) error { - clientCtx := client.GetClientContextFromCmd(cmd) - queryClient := types.NewQueryClient(clientCtx) - - addr, err := sdk.AccAddressFromBech32(args[0]) - if err != nil { - return err - } - res, err := queryClient.GetPendingSendToExternal(cmd.Context(), &types.QueryPendingSendToExternalRequest{ - ChainName: chainName, - SenderAddress: addr.String(), - }) - if err != nil { - return err - } - return clientCtx.PrintProto(res) - }, - } - return cmd -} - func CmdOutgoingTxBatches(chainName string) *cobra.Command { cmd := &cobra.Command{ Use: "outgoing-tx-batches", @@ -588,27 +560,6 @@ func CmdOutgoingTxBatches(chainName string) *cobra.Command { return cmd } -func CmdGetBatchFees(chainName string) *cobra.Command { - cmd := &cobra.Command{ - Use: "batch-fees", - Short: "Query a list of send to external transaction fees to be processed", - Args: cobra.NoArgs, - RunE: func(cmd *cobra.Command, args []string) error { - clientCtx := client.GetClientContextFromCmd(cmd) - queryClient := types.NewQueryClient(clientCtx) - - res, err := queryClient.BatchFees(cmd.Context(), &types.QueryBatchFeeRequest{ - ChainName: chainName, - }) - if err != nil { - return err - } - return clientCtx.PrintProto(res) - }, - } - return cmd -} - func CmdGetLastObservedBlockHeight(chainName string) *cobra.Command { cmd := &cobra.Command{ Use: "last-observed-block-height", diff --git a/x/crosschain/client/cli/tx.go b/x/crosschain/client/cli/tx.go index 176a6765..8e93ac97 100644 --- a/x/crosschain/client/cli/tx.go +++ b/x/crosschain/client/cli/tx.go @@ -47,9 +47,6 @@ func getTxSubCmds(chainName string) []*cobra.Command { // send to external chain CmdSendToExternal(chainName), - CmdCancelSendToExternal(chainName), - CmdIncreaseBridgeFee(chainName), - CmdRequestBatch(chainName), CmdBridgeCall(chainName), // oracle consensus confirm @@ -243,100 +240,6 @@ func CmdBridgeCall(chainName string) *cobra.Command { return cmd } -func CmdCancelSendToExternal(chainName string) *cobra.Command { - cmd := &cobra.Command{ - Use: "cancel-send-to-external [tx-ID]", - Short: "Cancel transaction send to external", - Args: cobra.ExactArgs(1), - RunE: func(cmd *cobra.Command, args []string) error { - cliCtx, err := client.GetClientTxContext(cmd) - if err != nil { - return err - } - - txId, err := strconv.ParseUint(args[0], 10, 64) - if err != nil { - return err - } - msg := &types.MsgCancelSendToExternal{ - TransactionId: txId, - Sender: cliCtx.GetFromAddress().String(), - ChainName: chainName, - } - return tx.GenerateOrBroadcastTxCLI(cliCtx, cmd.Flags(), msg) - }, - } - return cmd -} - -func CmdIncreaseBridgeFee(chainName string) *cobra.Command { - cmd := &cobra.Command{ - Use: "increase-bridge-fee [tx-ID] [add-bridge-fee]", - Short: "Increase bridge fee for send to external transaction", - Args: cobra.ExactArgs(2), - RunE: func(cmd *cobra.Command, args []string) error { - cliCtx, err := client.GetClientTxContext(cmd) - if err != nil { - return err - } - txId, err := strconv.ParseUint(args[0], 10, 64) - if err != nil { - return err - } - addBridgeFee, err := sdk.ParseCoinNormalized(args[1]) - if err != nil { - return fmt.Errorf("amount: %w", err) - } - - msg := &types.MsgIncreaseBridgeFee{ - ChainName: chainName, - TransactionId: txId, - Sender: cliCtx.GetFromAddress().String(), - AddBridgeFee: addBridgeFee, - } - return tx.GenerateOrBroadcastTxCLI(cliCtx, cmd.Flags(), msg) - }, - } - return cmd -} - -func CmdRequestBatch(chainName string) *cobra.Command { - cmd := &cobra.Command{ - Use: "build-batch [token-denom] [minimum-fee] [external-fee-receive] [base-fee]", - Short: "Build a new batch on the fx side for pooled withdrawal transactions", - Args: cobra.RangeArgs(3, 4), - RunE: func(cmd *cobra.Command, args []string) error { - clientCtx, err := client.GetClientTxContext(cmd) - if err != nil { - return err - } - - minimumFee, ok := sdkmath.NewIntFromString(args[1]) - if !ok || minimumFee.IsNegative() { - return fmt.Errorf("miniumu fee is valid, %v", args[1]) - } - baseFee := sdkmath.ZeroInt() - if len(args) == 4 { - baseFee, ok = sdkmath.NewIntFromString(args[3]) - if !ok { - return fmt.Errorf("invalid base fee: %v", args[3]) - } - } - - msg := &types.MsgRequestBatch{ - Sender: clientCtx.GetFromAddress().String(), - Denom: args[0], - MinimumFee: minimumFee, - FeeReceive: args[2], - ChainName: chainName, - BaseFee: baseFee, - } - return tx.GenerateOrBroadcastTxCLI(clientCtx, cmd.Flags(), msg) - }, - } - return cmd -} - func CmdRequestBatchConfirm(chainName string) *cobra.Command { cmd := &cobra.Command{ Use: "request-batch-confirm [contract-address] [nonce] [private-key]", @@ -361,7 +264,7 @@ func CmdRequestBatchConfirm(chainName string) *cobra.Command { externalAddress := ethcrypto.PubkeyToAddress(privateKey.PublicKey) queryClient := types.NewQueryClient(clientCtx) - batchRequestByNonceResp, err := queryClient.BatchRequestByNonce(cmd.Context(), &types.QueryBatchRequestByNonceRequest{ + OutgoingTxBatchResp, err := queryClient.OutgoingTxBatch(cmd.Context(), &types.QueryOutgoingTxBatchRequest{ Nonce: nonce, TokenContract: tokenContract, ChainName: chainName, @@ -369,7 +272,7 @@ func CmdRequestBatchConfirm(chainName string) *cobra.Command { if err != nil { return err } - if batchRequestByNonceResp.Batch == nil { + if OutgoingTxBatchResp.Batch == nil { return fmt.Errorf("not found batch request by nonce, tokenContract: %v, nonce: %v", tokenContract, nonce) } // Determine whether it has been confirmed @@ -392,7 +295,7 @@ func CmdRequestBatchConfirm(chainName string) *cobra.Command { if err != nil { return err } - checkpoint, err := batchRequestByNonceResp.GetBatch().GetCheckpoint(paramsResp.Params.GetGravityId()) + checkpoint, err := OutgoingTxBatchResp.GetBatch().GetCheckpoint(paramsResp.Params.GetGravityId()) if err != nil { return err } diff --git a/x/crosschain/keeper/abci.go b/x/crosschain/keeper/abci.go index 7dfd0ff6..0f94005b 100644 --- a/x/crosschain/keeper/abci.go +++ b/x/crosschain/keeper/abci.go @@ -167,7 +167,7 @@ func (k Keeper) cleanupTimedOutBatches(ctx sdk.Context) { externalBlockHeight := k.GetLastObservedBlockHeight(ctx).ExternalBlockHeight k.IterateOutgoingTxBatches(ctx, func(batch *types.OutgoingTxBatch) bool { if batch.BatchTimeout < externalBlockHeight { - if err := k.CancelOutgoingTxBatch(ctx, batch.TokenContract, batch.BatchNonce); err != nil { + if err := k.RefundOutgoingTxBatch(ctx, batch.TokenContract, batch.BatchNonce); err != nil { panic(fmt.Sprintf("Failed cancel out batch %s %d while trying to execute failed: %s", batch.TokenContract, batch.BatchNonce, err)) } } diff --git a/x/crosschain/keeper/batch_fee.go b/x/crosschain/keeper/batch_fee.go deleted file mode 100644 index d348cb0c..00000000 --- a/x/crosschain/keeper/batch_fee.go +++ /dev/null @@ -1,155 +0,0 @@ -package keeper - -import ( - "fmt" - "sort" - - sdkmath "cosmossdk.io/math" - sdk "github.com/cosmos/cosmos-sdk/types" - - "github.com/functionx/fx-core/v8/x/crosschain/types" -) - -// GetBatchFeesByTokenType gets the fee the next batch of a given token type would -// have if created right now. This info is both presented to relayers for the purpose of determining -// when to request batches and also used by the batch creation process to decide not to create -// a new batch (fees must be increasing) -func (k Keeper) GetBatchFeesByTokenType(ctx sdk.Context, tokenContract string, maxElements uint, baseFee sdkmath.Int) *types.BatchFees { - batchFee := &types.BatchFees{TokenContract: tokenContract, TotalFees: sdkmath.NewInt(0), TotalAmount: sdkmath.NewInt(0)} - k.IterateUnbatchedTransactions(ctx, tokenContract, func(tx *types.OutgoingTransferTx) bool { - if tx.Fee.Contract != tokenContract { - panic(fmt.Errorf("unexpected fee contract %s when getting batch fees for contract %s", tx.Fee.Contract, tokenContract)) - } - if tx.Fee.Amount.LT(baseFee) { - // sort by fee and use ReverseIterator, so the fee behind is less than base fee - return true - } - batchFee.TotalFees = batchFee.TotalFees.Add(tx.Fee.Amount) - batchFee.TotalAmount = batchFee.TotalAmount.Add(tx.Token.Amount) - batchFee.TotalTxs++ - return batchFee.TotalTxs == uint64(maxElements) - }) - return batchFee -} - -// GetAllBatchFees creates a fee entry for every batch type currently in the store -// this can be used by relayers to determine what batch types are desirable to request -func (k Keeper) GetAllBatchFees(ctx sdk.Context, maxElements uint, minBatchFees []types.MinBatchFee) (batchFees []*types.BatchFees) { - batchFeesMap := k.createBatchFees(ctx, maxElements, minBatchFees) - // create array of batchFees - for _, batchFee := range batchFeesMap { - batchFees = append(batchFees, batchFee) - } - - // quick sort by token to make this function safe for use - // in consensus computations - sort.Slice(batchFees, func(i, j int) bool { - return batchFees[i].TokenContract < batchFees[j].TokenContract - }) - - return batchFees -} - -// createBatchFees iterates over the unbatched transaction pool and creates batch token fee map -// Implicitly creates batches with the highest potential fee because the transaction keys enforce an order which goes -// fee contract address -> fee amount -> transaction nonce -func (k Keeper) createBatchFees(ctx sdk.Context, maxElements uint, minBatchFees []types.MinBatchFee) map[string]*types.BatchFees { - batchFeesMap := make(map[string]*types.BatchFees) - txCountMap := make(map[string]int) - baseFees := types.MinBatchFeeToBaseFees(minBatchFees) - - k.IterateUnbatchedTransactions(ctx, "", func(tx *types.OutgoingTransferTx) bool { - fee := tx.Fee - - baseFee, ok := baseFees[fee.Contract] - if ok && fee.Amount.LT(baseFee) { - return false // sort by token address and fee, behind have other token - } - - if txCountMap[fee.Contract] < int(maxElements) { - addFeeToMap(tx.Token, fee, batchFeesMap, txCountMap) - } - return false - }) - - return batchFeesMap -} - -func (k Keeper) AddUnbatchedTxBridgeFee(ctx sdk.Context, txId uint64, sender sdk.AccAddress, addBridgeFee sdk.Coin) error { - if ctx.IsZero() || txId < 1 || sender.Empty() || addBridgeFee.IsZero() { - return types.ErrInvalid.Wrapf("arguments") - } - // check that we actually have a tx with that id and what it's details are - tx, err := k.GetUnbatchedTxById(ctx, txId) - if err != nil { - return types.ErrInvalid.Wrapf("txId %d not in unbatched index! Must be in a batch!", txId) - } - tokenContract, found := k.GetContractByBridgeDenom(ctx, addBridgeFee.Denom) - if !found { - return types.ErrInvalid.Wrapf("bridge token is not exist") - } - - if tx.Fee.Contract != tokenContract { - return types.ErrInvalid.Wrapf("token not equal tx fee token") - } - - // If the coin is a gravity voucher, burn the coins. If not, check if there is a deployed ERC20 contract representing it. - // If there is, lock the coins. - isOriginOrConverted := k.erc20Keeper.IsOriginOrConvertedDenom(ctx, addBridgeFee.Denom) - if isOriginOrConverted { - // lock coins in module - if err := k.bankKeeper.SendCoinsFromAccountToModule(ctx, sender, k.moduleName, sdk.NewCoins(addBridgeFee)); err != nil { - return err - } - } else { - // If it is an external blockchain asset we burn it send coins to module in prep for burn - if err := k.bankKeeper.SendCoinsFromAccountToModule(ctx, sender, k.moduleName, sdk.NewCoins(addBridgeFee)); err != nil { - return err - } - - // burn vouchers to send them back to external blockchain - if err := k.bankKeeper.BurnCoins(ctx, k.moduleName, sdk.NewCoins(addBridgeFee)); err != nil { - return err - } - } - - if err = k.removeUnbatchedTx(ctx, tx.Fee, txId); err != nil { - return err - } - - // add bridge fee amount - tx.Fee.Amount = tx.Fee.Amount.Add(addBridgeFee.Amount) - - if err = k.AddUnbatchedTx(ctx, tx); err != nil { - return err - } - - ctx.EventManager().EmitEvent(sdk.NewEvent( - types.EventTypeIncreaseBridgeFee, - sdk.NewAttribute(sdk.AttributeKeyModule, k.moduleName), - sdk.NewAttribute(types.AttributeKeyOutgoingTxID, fmt.Sprint(tx.Id)), - sdk.NewAttribute(types.AttributeKeyIncreaseFee, addBridgeFee.String()), - )) - return nil -} - -// Helper method for creating batch fees -func addFeeToMap(amt, fee types.ERC20Token, batchFeesMap map[string]*types.BatchFees, txCountMap map[string]int) { - txCountMap[fee.Contract] = txCountMap[fee.Contract] + 1 - - // add fee amount - if _, ok := batchFeesMap[fee.Contract]; ok { - batchFees := batchFeesMap[fee.Contract] - batchFees.TotalFees = batchFees.TotalFees.Add(fee.Amount) - batchFees.TotalTxs = batchFees.TotalTxs + 1 - batchFees.TotalAmount = batchFees.TotalAmount.Add(amt.Amount) - batchFeesMap[fee.Contract] = batchFees - } else { - batchFeesMap[fee.Contract] = &types.BatchFees{ - TokenContract: fee.Contract, - TotalFees: fee.Amount, - TotalTxs: 1, - TotalAmount: amt.Amount, - } - } -} diff --git a/x/crosschain/keeper/batch_test.go b/x/crosschain/keeper/batch_test.go deleted file mode 100644 index 36876cbb..00000000 --- a/x/crosschain/keeper/batch_test.go +++ /dev/null @@ -1,163 +0,0 @@ -package keeper_test - -import ( - sdkmath "cosmossdk.io/math" - tmrand "github.com/cometbft/cometbft/libs/rand" - sdk "github.com/cosmos/cosmos-sdk/types" - "github.com/ethereum/go-ethereum/crypto" - - "github.com/functionx/fx-core/v8/testutil/helpers" - "github.com/functionx/fx-core/v8/x/crosschain/types" -) - -func (suite *KeeperTestSuite) TestLastPendingBatchRequestByAddr() { - testCases := []struct { - Name string - OracleAddress sdk.AccAddress - BridgerAddress sdk.AccAddress - StartHeight int64 - ExpectStartHeight uint64 - }{ - { - Name: "oracle start height with 1, expect oracle set block 3", - OracleAddress: suite.oracleAddrs[0], - BridgerAddress: suite.bridgerAddrs[0], - StartHeight: 1, - ExpectStartHeight: 3, - }, - { - Name: "oracle start height with 2, expect oracle set block 2", - OracleAddress: suite.oracleAddrs[1], - BridgerAddress: suite.bridgerAddrs[1], - StartHeight: 2, - ExpectStartHeight: 3, - }, - { - Name: "oracle start height with 3, expect oracle set block 1", - OracleAddress: suite.oracleAddrs[2], - BridgerAddress: suite.bridgerAddrs[2], - StartHeight: 3, - ExpectStartHeight: 3, - }, - } - for i := uint64(1); i <= 3; i++ { - suite.Ctx = suite.Ctx.WithBlockHeight(int64(i)) - err := suite.Keeper().StoreBatch(suite.Ctx, &types.OutgoingTxBatch{ - Block: i, - BatchNonce: i, - Transactions: types.OutgoingTransferTxs{{ - Id: i, - Sender: helpers.GenAccAddress().String(), - DestAddress: helpers.GenHexAddress().Hex(), - }}, - }) - suite.Require().NoError(err) - } - - wrapSDKContext := suite.Ctx - for _, testCase := range testCases { - oracle := types.Oracle{ - OracleAddress: testCase.OracleAddress.String(), - BridgerAddress: testCase.BridgerAddress.String(), - StartHeight: testCase.StartHeight, - } - // save oracle - suite.Keeper().SetOracle(suite.Ctx, oracle) - suite.Keeper().SetOracleAddrByBridgerAddr(suite.Ctx, testCase.BridgerAddress, oracle.GetOracle()) - - response, err := suite.QueryClient().LastPendingBatchRequestByAddr(wrapSDKContext, - &types.QueryLastPendingBatchRequestByAddrRequest{ - BridgerAddress: testCase.BridgerAddress.String(), - }) - suite.Require().NoError(err, testCase.Name) - suite.Require().NotNil(response, testCase.Name) - suite.Require().NotNil(response.Batch, testCase.Name) - suite.Require().EqualValues(testCase.ExpectStartHeight, response.Batch.Block, testCase.Name) - } -} - -func (suite *KeeperTestSuite) TestKeeper_DeleteBatchConfig() { - tokenContract := helpers.GenHexAddress().Hex() - batch := &types.OutgoingTxBatch{ - BatchNonce: 1, - BatchTimeout: 0, - Transactions: []*types.OutgoingTransferTx{ - { - Id: 1, - Sender: helpers.GenAccAddress().String(), - DestAddress: helpers.GenHexAddress().Hex(), - Token: types.ERC20Token{ - Contract: tokenContract, - Amount: sdkmath.NewInt(1), - }, - Fee: types.ERC20Token{ - Contract: tokenContract, - Amount: sdkmath.NewInt(1), - }, - }, - }, - TokenContract: tokenContract, - Block: 100, - FeeReceive: helpers.GenHexAddress().Hex(), - } - suite.NoError(suite.Keeper().StoreBatch(suite.Ctx, batch)) - - suite.Equal(uint64(0), suite.Keeper().GetLastSlashedBatchBlock(suite.Ctx)) - batches := suite.Keeper().GetUnSlashedBatches(suite.Ctx, batch.Block+1) - suite.Equal(1, len(batches)) - - msgConfirmBatch := &types.MsgConfirmBatch{ - Nonce: batch.BatchNonce, - TokenContract: tokenContract, - ChainName: suite.chainName, - } - for i, oracle := range suite.oracleAddrs { - msgConfirmBatch.BridgerAddress = suite.bridgerAddrs[i].String() - msgConfirmBatch.ExternalAddress = crypto.PubkeyToAddress(suite.externalPris[i].PublicKey).String() - suite.Keeper().SetBatchConfirm(suite.Ctx, oracle, msgConfirmBatch) - } - suite.Keeper().OutgoingTxBatchExecuted(suite.Ctx, batch.TokenContract, batch.BatchNonce) - - for _, oracle := range suite.oracleAddrs { - suite.Nil(suite.Keeper().GetBatchConfirm(suite.Ctx, batch.TokenContract, batch.BatchNonce, oracle)) - } - suite.Nil(suite.Keeper().GetOutgoingTxBatch(suite.Ctx, batch.TokenContract, batch.BatchNonce)) -} - -func (suite *KeeperTestSuite) TestKeeper_IterateBatchBySlashedBatchBlock() { - index := tmrand.Intn(100) - for i := 1; i <= index; i++ { - tokenContract := helpers.GenHexAddress().Hex() - batch := &types.OutgoingTxBatch{ - BatchNonce: 1, - BatchTimeout: 0, - Transactions: []*types.OutgoingTransferTx{ - { - Id: 1, - Sender: helpers.GenAccAddress().String(), - DestAddress: helpers.GenHexAddress().Hex(), - Token: types.ERC20Token{ - Contract: tokenContract, - Amount: sdkmath.NewInt(1), - }, - Fee: types.ERC20Token{ - Contract: tokenContract, - Amount: sdkmath.NewInt(1), - }, - }, - }, - TokenContract: tokenContract, - Block: uint64(100 + i), - FeeReceive: helpers.GenHexAddress().Hex(), - } - suite.NoError(suite.Keeper().StoreBatch(suite.Ctx, batch)) - } - var batchs []*types.OutgoingTxBatch - suite.Keeper().IterateBatchByBlockHeight(suite.Ctx, 100+1, uint64(100+index+1), - func(batch *types.OutgoingTxBatch) bool { - batchs = append(batchs, batch) - return false - }, - ) - suite.Equal(len(batchs), index) -} diff --git a/x/crosschain/keeper/bridge_call_out.go b/x/crosschain/keeper/bridge_call_out.go index 3b6a4bbd..02e676bd 100644 --- a/x/crosschain/keeper/bridge_call_out.go +++ b/x/crosschain/keeper/bridge_call_out.go @@ -14,29 +14,9 @@ import ( "github.com/hashicorp/go-metrics" fxtelemetry "github.com/functionx/fx-core/v8/telemetry" - fxtypes "github.com/functionx/fx-core/v8/types" "github.com/functionx/fx-core/v8/x/crosschain/types" ) -func (k Keeper) BridgeCallCoinsToERC20Token(ctx sdk.Context, sender sdk.AccAddress, coins sdk.Coins) ([]types.ERC20Token, error) { - tokens := make([]types.ERC20Token, 0, len(coins)) - for _, coin := range coins { - targetCoin, err := k.erc20Keeper.ConvertDenomToTarget(ctx, sender, coin, fxtypes.ParseFxTarget(k.moduleName)) - if err != nil { - return nil, err - } - tokenContract, found := k.GetContractByBridgeDenom(ctx, targetCoin.Denom) - if !found { - return nil, types.ErrInvalid.Wrapf("bridge token not found") - } - tokens = append(tokens, types.NewERC20Token(targetCoin.Amount, tokenContract)) - if err = k.TransferBridgeCoinToExternal(ctx, sender, targetCoin); err != nil { - return nil, err - } - } - return tokens, nil -} - func (k Keeper) AddOutgoingBridgeCall(ctx sdk.Context, sender, refundAddr common.Address, baseCoins sdk.Coins, to common.Address, data, memo []byte, eventNonce uint64) (uint64, error) { tokens := make([]types.ERC20Token, 0, len(baseCoins)) for _, coin := range baseCoins { diff --git a/x/crosschain/keeper/bridge_call_out_test.go b/x/crosschain/keeper/bridge_call_out_test.go index ee786769..eb9b84c9 100644 --- a/x/crosschain/keeper/bridge_call_out_test.go +++ b/x/crosschain/keeper/bridge_call_out_test.go @@ -1,15 +1,10 @@ package keeper_test import ( - "reflect" - - sdkmath "cosmossdk.io/math" tmrand "github.com/cometbft/cometbft/libs/rand" - sdk "github.com/cosmos/cosmos-sdk/types" "go.uber.org/mock/gomock" "github.com/functionx/fx-core/v8/testutil/helpers" - fxtypes "github.com/functionx/fx-core/v8/types" "github.com/functionx/fx-core/v8/x/crosschain/types" ) @@ -61,96 +56,6 @@ func (s *KeeperMockSuite) TestKeeper_BridgeCallResultHandler() { } } -func (s *KeeperMockSuite) TestKeeper_BridgeCallCoinsToERC20Token() { - type Data struct { - sender sdk.AccAddress - coin sdk.Coin - } - tests := []struct { - name string - data Data - mock func(data Data) (want types.ERC20Token) - wantErr bool - }{ - { - name: "success - FX", - data: Data{ - sender: helpers.GenAccAddress(), - coin: sdk.NewCoin(fxtypes.DefaultDenom, sdkmath.NewInt(1)), - }, - mock: func(data Data) (want types.ERC20Token) { - s.erc20Keeper.EXPECT().ConvertDenomToTarget(gomock.Any(), data.sender, data.coin, fxtypes.ParseFxTarget(s.moduleName)).Return(data.coin, nil).Times(1) - s.erc20Keeper.EXPECT().IsOriginOrConvertedDenom(gomock.Any(), data.coin.Denom).Return(true).Times(1) - s.bankKeeper.EXPECT().SendCoinsFromAccountToModule(gomock.Any(), data.sender, s.moduleName, sdk.NewCoins(data.coin)).Return(nil).Times(1) - - return types.ERC20Token{ - Contract: s.wfxTokenAddr, - Amount: data.coin.Amount, - } - }, - wantErr: false, - }, - { - name: "success - bridge denom", - data: Data{ - sender: helpers.GenAccAddress(), - coin: sdk.NewCoin(types.NewBridgeDenom(s.moduleName, helpers.GenExternalAddr(s.moduleName)), sdkmath.NewInt(1)), - }, - mock: func(data Data) (want types.ERC20Token) { - contract := data.coin.Denom[len(s.moduleName):] - s.AddBridgeToken(contract) - - s.erc20Keeper.EXPECT().ConvertDenomToTarget(gomock.Any(), data.sender, data.coin, fxtypes.ParseFxTarget(s.moduleName)).Return(data.coin, nil).Times(1) - s.erc20Keeper.EXPECT().IsOriginOrConvertedDenom(gomock.Any(), data.coin.Denom).Return(false).Times(1) - s.bankKeeper.EXPECT().SendCoinsFromAccountToModule(gomock.Any(), data.sender, s.moduleName, sdk.NewCoins(data.coin)).Return(nil).Times(1) - s.bankKeeper.EXPECT().BurnCoins(gomock.Any(), s.moduleName, sdk.NewCoins(data.coin)).Return(nil).Times(1) - - return types.ERC20Token{ - Contract: contract, - Amount: data.coin.Amount, - } - }, - wantErr: false, - }, - { - name: "success - base denom", - data: Data{ - sender: helpers.GenAccAddress(), - coin: sdk.NewCoin("usdt", sdkmath.NewInt(1)), - }, - mock: func(data Data) (want types.ERC20Token) { - contract := helpers.GenHexAddress().String() - bridgeToken := s.AddBridgeToken(contract) - - targetCoin := sdk.NewCoin(bridgeToken.Denom, data.coin.Amount) - s.erc20Keeper.EXPECT().ConvertDenomToTarget(gomock.Any(), data.sender, data.coin, fxtypes.ParseFxTarget(s.moduleName)).Return(targetCoin, nil).Times(1) - s.erc20Keeper.EXPECT().IsOriginOrConvertedDenom(gomock.Any(), targetCoin.Denom).Return(false).Times(1) - s.bankKeeper.EXPECT().SendCoinsFromAccountToModule(gomock.Any(), data.sender, s.moduleName, sdk.NewCoins(targetCoin)).Return(nil).Times(1) - s.bankKeeper.EXPECT().BurnCoins(gomock.Any(), s.moduleName, sdk.NewCoins(targetCoin)).Return(nil).Times(1) - - return types.ERC20Token{ - Contract: contract, - Amount: data.coin.Amount, - } - }, - wantErr: false, - }, - } - for _, tt := range tests { - s.Run(tt.name, func() { - want := tt.mock(tt.data) - got, err := s.crosschainKeeper.BridgeCallCoinsToERC20Token(s.ctx, tt.data.sender, sdk.NewCoins(tt.data.coin)) - if (err != nil) != tt.wantErr { - s.T().Errorf("BridgeCallCoinsToERC20Token() error = %v, wantErr %v", err, tt.wantErr) - return - } - if !reflect.DeepEqual(got, []types.ERC20Token{want}) { - s.T().Errorf("BridgeCallCoinsToERC20Token() got = %v, want %v", got, want) - } - }) - } -} - func (s *KeeperMockSuite) TestKeeper_DeleteOutgoingBridgeCall() { outCall := &types.OutgoingBridgeCall{ Sender: helpers.GenHexAddress().String(), diff --git a/x/crosschain/keeper/bridge_token.go b/x/crosschain/keeper/bridge_token.go index 0a1e7a09..e8db3b8d 100644 --- a/x/crosschain/keeper/bridge_token.go +++ b/x/crosschain/keeper/bridge_token.go @@ -97,33 +97,6 @@ func (k Keeper) IteratorBridgeDenomWithContract(ctx sdk.Context, cb func(token * } } -// Deprecated: do not use -func (k Keeper) SetIbcDenomTrace(ctx sdk.Context, token, channelIBC string) (string, error) { - denom := types.NewBridgeDenom(k.moduleName, token) - denomTrace, err := fxtypes.GetIbcDenomTrace(denom, channelIBC) - if err != nil { - return denom, err - } - if denomTrace.Path != "" { - k.ibcTransferKeeper.SetDenomTrace(ctx, denomTrace) - return denomTrace.IBCDenom(), nil - } - return denomTrace.BaseDenom, nil -} - -func (k Keeper) TransferBridgeCoinToExternal(ctx sdk.Context, sender sdk.AccAddress, targetCoin sdk.Coin) error { - // lock coins in module - if err := k.bankKeeper.SendCoinsFromAccountToModule(ctx, sender, k.moduleName, sdk.NewCoins(targetCoin)); err != nil { - return err - } - isOriginOrConverted := k.erc20Keeper.IsOriginOrConvertedDenom(ctx, targetCoin.Denom) - if isOriginOrConverted { - return nil - } - // If it is an external blockchain asset, burn vouchers to send them back to external blockchain - return k.bankKeeper.BurnCoins(ctx, k.moduleName, sdk.NewCoins(targetCoin)) -} - func (k Keeper) HasToken(ctx context.Context, denom string) (bool, error) { ok := k.bankKeeper.HasDenomMetaData(ctx, denom) return ok, nil diff --git a/x/crosschain/keeper/genesis.go b/x/crosschain/keeper/genesis.go index ea33bd88..fa40b3e9 100644 --- a/x/crosschain/keeper/genesis.go +++ b/x/crosschain/keeper/genesis.go @@ -81,14 +81,6 @@ func InitGenesis(ctx sdk.Context, k Keeper, state *types.GenesisState) { } } - for i := 0; i < len(state.UnbatchedTransfers); i++ { - transfer := state.UnbatchedTransfers[i] - // 0x18 - if err := k.AddUnbatchedTx(ctx, &transfer); err != nil { - panic(err) - } - } - for i := 0; i < len(state.Batches); i++ { batch := state.Batches[i] // 0x20 0x21 @@ -163,10 +155,6 @@ func ExportGenesis(ctx sdk.Context, k Keeper) *types.GenesisState { state.Attestations = append(state.Attestations, *attestation) return false }) - k.IterateUnbatchedTransactions(ctx, "", func(tx *types.OutgoingTransferTx) bool { - state.UnbatchedTransfers = append(state.UnbatchedTransfers, *tx) - return false - }) for _, vs := range state.OracleSets { k.IterateOracleSetConfirmByNonce(ctx, vs.Nonce, func(confirm *types.MsgOracleSetConfirm) bool { state.OracleSetConfirms = append(state.OracleSetConfirms, *confirm) diff --git a/x/crosschain/keeper/genesis_test.go b/x/crosschain/keeper/genesis_test.go deleted file mode 100644 index d8610abc..00000000 --- a/x/crosschain/keeper/genesis_test.go +++ /dev/null @@ -1,132 +0,0 @@ -package keeper_test - -import ( - "sort" - - sdkmath "cosmossdk.io/math" - sdk "github.com/cosmos/cosmos-sdk/types" - "github.com/ethereum/go-ethereum/crypto" - - "github.com/functionx/fx-core/v8/x/crosschain/keeper" - "github.com/functionx/fx-core/v8/x/crosschain/types" - ethtypes "github.com/functionx/fx-core/v8/x/eth/types" -) - -// Tests that batches and transactions are preserved during chain restart -func (suite *KeeperTestSuite) TestBatchAndTxImportExport() { - bridgeTokens := make([]types.BridgeToken, 10) - bridgeToBaseMap := make(map[string]string) - for i := 0; i < len(bridgeTokens); i++ { - baseDenom, bridgeDenom, tokenContract := suite.AddRandomBaseToken(false) - bridgeTokens[i] = types.BridgeToken{Token: tokenContract, Denom: bridgeDenom} - bridgeToBaseMap[bridgeDenom] = baseDenom - - for _, bridger := range suite.bridgerAddrs { - suite.MintBaseToken(bridger, baseDenom, bridgeDenom, sdkmath.NewInt(9990)) - } - } - - // CREATE TRANSACTIONS - // ================== - numTxs := 1000 // should end up with 1000 txs per contract - txs := make(types.OutgoingTransferTxs, numTxs) - fees := []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20} - amounts := []int{51, 52, 53, 54, 55, 56, 57, 58, 59, 60} - for i := 0; i < numTxs; i++ { - // Pick fee, amoun sender, receiver, and contract for the ith transaction - // Sender and contract will always match up (they must since sender i controls the whole balance of the ith token) - // Receivers should get a balance of many token types since i % len(receivers) is usually different than i % len(contracts) - fee := fees[i%len(fees)] // fee for this transaction - amount := amounts[i%len(amounts)] - sender := suite.bridgerAddrs[i%len(suite.bridgerAddrs)] - receiver := crypto.PubkeyToAddress(suite.externalPris[i%len(suite.externalPris)].PublicKey).String() - bridgeToken := bridgeTokens[i%len(bridgeTokens)] - baseDenom := bridgeToBaseMap[bridgeToken.Denom] - - amountToken := sdk.NewCoin(baseDenom, sdkmath.NewInt(int64(amount))) - feeToken := sdk.NewCoin(baseDenom, sdkmath.NewInt(int64(fee))) - - // add transaction to the pool - nextTxID, err := suite.Keeper().AddToOutgoingPool(suite.Ctx, sender, receiver, amountToken, feeToken) - suite.Require().NoError(err) - - txs[i] = &types.OutgoingTransferTx{ - Id: nextTxID, - Sender: sender.String(), - DestAddress: receiver, - Token: types.NewERC20Token(amountToken.Amount, bridgeToken.Token), - Fee: types.NewERC20Token(feeToken.Amount, bridgeToken.Token), - } - } - - suite.Keeper().SetLastObservedBlockHeight(suite.Ctx, 10, 10) - - // CREATE BATCHES - // ================== - // Want to create batches for half of the transactions for each contract - // with 100 tx in each batch, 1000 txs per contrac we want 5 batches per contract to batch 500 txs per contract - for i, bridgeToken := range bridgeTokens { - suite.Ctx = suite.Ctx.WithBlockHeight(int64(50 + i)) - batch, err := suite.Keeper().BuildOutgoingTxBatch(suite.Ctx, bridgeToken.Token, bridgeToken.Token, 100, sdkmath.NewInt(1), sdkmath.NewInt(1)) - suite.Require().NoError(err) - suite.Require().EqualValues(100, len(batch.Transactions)) - suite.Require().EqualValues(50+i, batch.Block) - if suite.chainName == ethtypes.ModuleName { - suite.Require().True(batch.BatchTimeout > 2800) - } else { - suite.Require().True(batch.BatchTimeout > 14000) - } - suite.Require().EqualValues(1+i, batch.BatchNonce) - suite.Require().Equal(bridgeToken.Token, batch.TokenContract) - suite.Require().Equal(bridgeToken.Token, batch.FeeReceive) - } - - // export - suite.checkAllTransactionsExist(txs) - genesisState := keeper.ExportGenesis(suite.Ctx, suite.Keeper()) - - // clear data - storeKey := suite.App.GetKey(suite.chainName) - store := suite.Ctx.KVStore(storeKey) - iterator := store.Iterator(nil, nil) - defer iterator.Close() - for ; iterator.Valid(); iterator.Next() { - store.Delete(iterator.Key()) - } - unbatched := suite.Keeper().GetUnbatchedTransactions(suite.Ctx) - suite.Require().Empty(unbatched) - batches := suite.Keeper().GetOutgoingTxBatches(suite.Ctx) - suite.Require().Empty(batches) - - // import - keeper.InitGenesis(suite.Ctx, suite.Keeper(), genesisState) - suite.checkAllTransactionsExist(txs) -} - -// Requires that all transactions in txs exist in keeper -func (suite *KeeperTestSuite) checkAllTransactionsExist(txs types.OutgoingTransferTxs) { - unbatched := suite.Keeper().GetUnbatchedTransactions(suite.Ctx) - batches := suite.Keeper().GetOutgoingTxBatches(suite.Ctx) - // Collect all txs into an array - var gotTxs types.OutgoingTransferTxs - gotTxs = append(gotTxs, unbatched...) - for _, batch := range batches { - gotTxs = append(gotTxs, batch.Transactions...) - } - suite.Require().Equal(len(txs), len(gotTxs)) - // Sort both arrays for simple searching - sort.Slice(gotTxs, func(i, j int) bool { - return gotTxs[i].Id < gotTxs[j].Id - }) - sort.Slice(txs, func(i, j int) bool { - return txs[i].Id < txs[j].Id - }) - // Actually check that the txs all exist, iterate on txs in case some got lost in the import/export step - for i, exp := range txs { - suite.Require().Equal(exp.Id, gotTxs[i].Id) - suite.Require().Equal(exp.Fee.String(), gotTxs[i].Fee.String()) - suite.Require().Equal(exp.Token.String(), gotTxs[i].Token.String()) - suite.Require().Equal(exp.DestAddress, gotTxs[i].DestAddress) - suite.Require().Equal(exp.Sender, gotTxs[i].Sender) - } -} diff --git a/x/crosschain/keeper/grpc_query.go b/x/crosschain/keeper/grpc_query.go index cf5d8dbc..ba67087d 100644 --- a/x/crosschain/keeper/grpc_query.go +++ b/x/crosschain/keeper/grpc_query.go @@ -100,24 +100,6 @@ func (k QueryServer) LastPendingOracleSetRequestByAddr(c context.Context, req *t return &types.QueryLastPendingOracleSetRequestByAddrResponse{OracleSets: pendingOracleSetReq}, nil } -// BatchFees queries the batch fees from unbatched pool -func (k QueryServer) BatchFees(c context.Context, req *types.QueryBatchFeeRequest) (*types.QueryBatchFeeResponse, error) { - if req.GetMinBatchFees() == nil { - req.MinBatchFees = make([]types.MinBatchFee, 0) - } - for _, fee := range req.MinBatchFees { - if fee.BaseFee.IsNil() || fee.BaseFee.IsNegative() { - return nil, status.Error(codes.InvalidArgument, "base fee") - } - - if err := types.ValidateExternalAddr(req.ChainName, fee.TokenContract); err != nil { - return nil, status.Error(codes.InvalidArgument, "token contract") - } - } - allBatchFees := k.GetAllBatchFees(sdk.UnwrapSDKContext(c), types.MaxResults, req.MinBatchFees) - return &types.QueryBatchFeeResponse{BatchFees: allBatchFees}, nil -} - func (k QueryServer) LastPendingBatchRequestByAddr(c context.Context, req *types.QueryLastPendingBatchRequestByAddrRequest) (*types.QueryLastPendingBatchRequestByAddrResponse, error) { ctx := sdk.UnwrapSDKContext(c) oracle, err := k.BridgeAddrToOracle(ctx, req.GetBridgerAddress()) @@ -153,7 +135,7 @@ func (k QueryServer) OutgoingTxBatches(c context.Context, _ *types.QueryOutgoing return &types.QueryOutgoingTxBatchesResponse{Batches: batches}, nil } -func (k QueryServer) BatchRequestByNonce(c context.Context, req *types.QueryBatchRequestByNonceRequest) (*types.QueryBatchRequestByNonceResponse, error) { +func (k QueryServer) OutgoingTxBatch(c context.Context, req *types.QueryOutgoingTxBatchRequest) (*types.QueryOutgoingTxBatchResponse, error) { if err := types.ValidateExternalAddr(req.ChainName, req.GetTokenContract()); err != nil { return nil, status.Error(codes.InvalidArgument, "token contract address") } @@ -164,7 +146,7 @@ func (k QueryServer) BatchRequestByNonce(c context.Context, req *types.QueryBatc if foundBatch == nil { return nil, status.Error(codes.NotFound, "tx batch") } - return &types.QueryBatchRequestByNonceResponse{Batch: foundBatch}, nil + return &types.QueryOutgoingTxBatchResponse{Batch: foundBatch}, nil } func (k QueryServer) BatchConfirm(c context.Context, req *types.QueryBatchConfirmRequest) (*types.QueryBatchConfirmResponse, error) { @@ -272,37 +254,6 @@ func (k QueryServer) GetOracleByExternalAddr(c context.Context, req *types.Query return &types.QueryOracleResponse{Oracle: &oracle}, nil } -func (k QueryServer) GetPendingSendToExternal(c context.Context, req *types.QueryPendingSendToExternalRequest) (*types.QueryPendingSendToExternalResponse, error) { - if _, err := sdk.AccAddressFromBech32(req.GetSenderAddress()); err != nil { - return nil, status.Error(codes.InvalidArgument, "sender address") - } - - ctx := sdk.UnwrapSDKContext(c) - var batches []*types.OutgoingTxBatch - k.IterateOutgoingTxBatches(ctx, func(batch *types.OutgoingTxBatch) bool { - batches = append(batches, batch) - return false - }) - res := &types.QueryPendingSendToExternalResponse{ - TransfersInBatches: make([]*types.OutgoingTransferTx, 0), - UnbatchedTransfers: make([]*types.OutgoingTransferTx, 0), - } - for _, batch := range batches { - for _, tx := range batch.Transactions { - if tx.Sender == req.SenderAddress { - res.TransfersInBatches = append(res.TransfersInBatches, tx) - } - } - } - k.IterateUnbatchedTransactions(ctx, "", func(tx *types.OutgoingTransferTx) bool { - if tx.Sender == req.SenderAddress { - res.UnbatchedTransfers = append(res.UnbatchedTransfers, tx) - } - return false - }) - return res, nil -} - func (k QueryServer) LastObservedBlockHeight(c context.Context, _ *types.QueryLastObservedBlockHeightRequest) (*types.QueryLastObservedBlockHeightResponse, error) { blockHeight := k.GetLastObservedBlockHeight(sdk.UnwrapSDKContext(c)) return &types.QueryLastObservedBlockHeightResponse{ diff --git a/x/crosschain/keeper/grpc_query_router.go b/x/crosschain/keeper/grpc_query_router.go index 2380870a..a844c4f0 100644 --- a/x/crosschain/keeper/grpc_query_router.go +++ b/x/crosschain/keeper/grpc_query_router.go @@ -75,14 +75,6 @@ func (k RouterKeeper) LastPendingOracleSetRequestByAddr(c context.Context, req * } } -func (k RouterKeeper) BatchFees(c context.Context, req *types.QueryBatchFeeRequest) (*types.QueryBatchFeeResponse, error) { - if queryServer, err := k.getQueryServerByChainName(req.ChainName); err != nil { - return nil, err - } else { - return queryServer.BatchFees(c, req) - } -} - func (k RouterKeeper) LastPendingBatchRequestByAddr(c context.Context, req *types.QueryLastPendingBatchRequestByAddrRequest) (*types.QueryLastPendingBatchRequestByAddrResponse, error) { if queryServer, err := k.getQueryServerByChainName(req.ChainName); err != nil { return nil, err @@ -99,11 +91,11 @@ func (k RouterKeeper) OutgoingTxBatches(c context.Context, req *types.QueryOutgo } } -func (k RouterKeeper) BatchRequestByNonce(c context.Context, req *types.QueryBatchRequestByNonceRequest) (*types.QueryBatchRequestByNonceResponse, error) { +func (k RouterKeeper) OutgoingTxBatch(c context.Context, req *types.QueryOutgoingTxBatchRequest) (*types.QueryOutgoingTxBatchResponse, error) { if queryServer, err := k.getQueryServerByChainName(req.ChainName); err != nil { return nil, err } else { - return queryServer.BatchRequestByNonce(c, req) + return queryServer.OutgoingTxBatch(c, req) } } @@ -171,14 +163,6 @@ func (k RouterKeeper) GetOracleByExternalAddr(c context.Context, req *types.Quer } } -func (k RouterKeeper) GetPendingSendToExternal(c context.Context, req *types.QueryPendingSendToExternalRequest) (*types.QueryPendingSendToExternalResponse, error) { - if queryServer, err := k.getQueryServerByChainName(req.ChainName); err != nil { - return nil, err - } else { - return queryServer.GetPendingSendToExternal(c, req) - } -} - func (k RouterKeeper) LastObservedBlockHeight(c context.Context, req *types.QueryLastObservedBlockHeightRequest) (*types.QueryLastObservedBlockHeightResponse, error) { if queryServer, err := k.getQueryServerByChainName(req.ChainName); err != nil { return nil, err diff --git a/x/crosschain/keeper/grpc_query_v1_test.go b/x/crosschain/keeper/grpc_query_v1_test.go index 773de8be..ef6da3d8 100644 --- a/x/crosschain/keeper/grpc_query_v1_test.go +++ b/x/crosschain/keeper/grpc_query_v1_test.go @@ -521,80 +521,6 @@ func (suite *CrossChainGrpcTestSuite) TestKeeper_LastPendingOracleSetRequestByAd } } -func (suite *CrossChainGrpcTestSuite) TestKeeper_BatchFees() { - var ( - request *types.QueryBatchFeeRequest - response *types.QueryBatchFeeResponse - expectedError error - ) - testCases := []struct { - name string - malleate func() - expPass bool - }{ - { - name: "batch fee normal", - malleate: func() { - // add test token for test - baseDenom, bridgeDenom, tokenContract := suite.AddRandomBaseToken(false) - sender := helpers.GenAccAddress() - - lessMinBatchFeeAmount := helpers.NewRandAmount() - minBatchFeeAmount := lessMinBatchFeeAmount.Add(helpers.NewRandAmount()) - - addToOutgoingFn := func(sender sdk.AccAddress, amount sdk.Coin) { - suite.MintBaseToken(sender, baseDenom, bridgeDenom, amount.Amount.Add(amount.Amount)) - _, err := suite.Keeper().AddToOutgoingPool(suite.Ctx, sender, tmrand.Str(20), amount, amount) - suite.Require().NoError(err) - } - // test add 3 bridgeFee equal to minBatchFee - equalMinBatchFeeTx := uint64(3) - for i := 0; i < int(equalMinBatchFeeTx); i++ { - addToOutgoingFn(sender, sdk.NewCoin(baseDenom, minBatchFeeAmount)) - } - - // test add 2 bridgeFee less than minBatchFee - for i := 0; i < 2; i++ { - addToOutgoingFn(sender, sdk.NewCoin(baseDenom, lessMinBatchFeeAmount)) - } - - request = &types.QueryBatchFeeRequest{ - ChainName: suite.chainName, - MinBatchFees: []types.MinBatchFee{ - { - TokenContract: tokenContract, - BaseFee: minBatchFeeAmount, - }, - }, - } - response = &types.QueryBatchFeeResponse{BatchFees: []*types.BatchFees{ - { - TokenContract: tokenContract, - TotalFees: minBatchFeeAmount.Mul(sdkmath.NewIntFromUint64(equalMinBatchFeeTx)), - TotalTxs: equalMinBatchFeeTx, - TotalAmount: minBatchFeeAmount.Mul(sdkmath.NewIntFromUint64(equalMinBatchFeeTx)), - }, - }} - }, - expPass: true, - }, - } - - for _, testCase := range testCases { - suite.Run(testCase.name, func() { - testCase.malleate() - res, err := suite.queryClient.BatchFees(suite.Ctx, request) - if testCase.expPass { - suite.Require().NoError(err) - suite.Require().ElementsMatch(response.BatchFees, res.BatchFees) - } else { - suite.Require().Error(err) - suite.Require().ErrorIs(err, expectedError) - } - }) - } -} - func (suite *CrossChainGrpcTestSuite) TestKeeper_LastPendingBatchRequestByAddr() { var ( request *types.QueryLastPendingBatchRequestByAddrRequest @@ -847,10 +773,10 @@ func (suite *CrossChainGrpcTestSuite) TestKeeper_OutgoingTxBatches() { } } -func (suite *CrossChainGrpcTestSuite) TestKeeper_BatchRequestByNonce() { +func (suite *CrossChainGrpcTestSuite) TestKeeper_OutgoingTxBatch() { var ( - request *types.QueryBatchRequestByNonceRequest - response *types.QueryBatchRequestByNonceResponse + request *types.QueryOutgoingTxBatchRequest + response *types.QueryOutgoingTxBatchResponse expectedError error ) @@ -862,7 +788,7 @@ func (suite *CrossChainGrpcTestSuite) TestKeeper_BatchRequestByNonce() { { name: "query token contract error", malleate: func() { - request = &types.QueryBatchRequestByNonceRequest{ + request = &types.QueryOutgoingTxBatchRequest{ ChainName: suite.chainName, TokenContract: "0x1", Nonce: 3, @@ -875,7 +801,7 @@ func (suite *CrossChainGrpcTestSuite) TestKeeper_BatchRequestByNonce() { name: "query token contract error", malleate: func() { key, _ := ethsecp256k1.GenerateKey() - request = &types.QueryBatchRequestByNonceRequest{ + request = &types.QueryOutgoingTxBatchRequest{ ChainName: suite.chainName, TokenContract: crypto.CreateAddress(common.BytesToAddress(key.PubKey().Address().Bytes()), 0).String(), Nonce: 0, @@ -888,7 +814,7 @@ func (suite *CrossChainGrpcTestSuite) TestKeeper_BatchRequestByNonce() { name: "query does not exist tx batch", malleate: func() { key, _ := ethsecp256k1.GenerateKey() - request = &types.QueryBatchRequestByNonceRequest{ + request = &types.QueryOutgoingTxBatchRequest{ ChainName: suite.chainName, TokenContract: crypto.CreateAddress(common.BytesToAddress(key.PubKey().Address().Bytes()), 0).String(), Nonce: 3, @@ -918,12 +844,12 @@ func (suite *CrossChainGrpcTestSuite) TestKeeper_BatchRequestByNonce() { } err := suite.Keeper().StoreBatch(suite.Ctx, newBatch) suite.Require().NoError(err) - request = &types.QueryBatchRequestByNonceRequest{ + request = &types.QueryOutgoingTxBatchRequest{ ChainName: suite.chainName, TokenContract: token.String(), Nonce: 3, } - response = &types.QueryBatchRequestByNonceResponse{Batch: newBatch} + response = &types.QueryOutgoingTxBatchResponse{Batch: newBatch} }, expPass: true, }, @@ -931,7 +857,7 @@ func (suite *CrossChainGrpcTestSuite) TestKeeper_BatchRequestByNonce() { for _, testCase := range testCases { suite.Run(testCase.name, func() { testCase.malleate() - res, err := suite.queryClient.BatchRequestByNonce(suite.Ctx, request) + res, err := suite.queryClient.OutgoingTxBatch(suite.Ctx, request) if testCase.expPass { suite.Require().NoError(err) suite.Require().Equal(response, res) @@ -1606,124 +1532,6 @@ func (suite *CrossChainGrpcTestSuite) TestKeeper_GetOracleByExternalAddr() { } } -func (suite *CrossChainGrpcTestSuite) TestKeeper_GetPendingSendToExternal() { - var ( - request *types.QueryPendingSendToExternalRequest - response *types.QueryPendingSendToExternalResponse - expectedError error - ) - testCases := []struct { - name string - malleate func() - expPass bool - }{ - { - "sender address error", - func() { - request = &types.QueryPendingSendToExternalRequest{ - ChainName: suite.chainName, - SenderAddress: "fx1", - } - expectedError = status.Error(codes.InvalidArgument, "sender address") - }, - false, - }, - { - "sender outgoing transfer tx not exist", - func() { - externalKey, _ := ethsecp256k1.GenerateKey() - request = &types.QueryPendingSendToExternalRequest{ - ChainName: suite.chainName, - SenderAddress: common.BytesToAddress(externalKey.PubKey().Address()).String(), - } - }, - false, - }, - { - name: "sender pending send to external in batches", - malleate: func() { - externalKey, _ := ethsecp256k1.GenerateKey() - externalAcc := common.BytesToAddress(externalKey.PubKey().Address()) - externalToken := crypto.CreateAddress(common.BytesToAddress(externalKey.PubKey().Address()), 0) - err := suite.Keeper().StoreBatch(suite.Ctx, &types.OutgoingTxBatch{ - Transactions: []*types.OutgoingTransferTx{ - { - Id: 0, - Sender: sdk.AccAddress(externalKey.PubKey().Address()).String(), - DestAddress: externalAcc.String(), - Token: types.NewERC20Token(sdkmath.NewIntFromBigInt(big.NewInt(1e18)), externalToken.String()), - Fee: types.NewERC20Token(sdkmath.NewIntFromBigInt(big.NewInt(1e18)), externalToken.String()), - }, - }, - }) - suite.Require().NoError(err) - request = &types.QueryPendingSendToExternalRequest{ - ChainName: suite.chainName, - SenderAddress: sdk.AccAddress(externalKey.PubKey().Address()).String(), - } - response = &types.QueryPendingSendToExternalResponse{ - TransfersInBatches: []*types.OutgoingTransferTx{ - { - Id: 0, - Sender: sdk.AccAddress(externalKey.PubKey().Address()).String(), - DestAddress: externalAcc.String(), - Token: types.NewERC20Token(sdkmath.NewIntFromBigInt(big.NewInt(1e18)), externalToken.String()), - Fee: types.NewERC20Token(sdkmath.NewIntFromBigInt(big.NewInt(1e18)), externalToken.String()), - }, - }, - UnbatchedTransfers: []*types.OutgoingTransferTx{}, - } - }, - expPass: true, - }, - { - name: "pending send to external in unbatched", - malleate: func() { - // add test token for test - baseDenom, bridgeDenom, tokenContract := suite.AddRandomBaseToken(false) - sender := helpers.GenAccAddress() - amount := sdk.NewCoin(baseDenom, helpers.NewRandAmount()) - suite.MintBaseToken(sender, baseDenom, bridgeDenom, amount.Amount.Add(amount.Amount)) - randomReceive := tmrand.Str(20) - txId, err := suite.Keeper().AddToOutgoingPool(suite.Ctx, sender, randomReceive, amount, amount) - suite.Require().NoError(err) - request = &types.QueryPendingSendToExternalRequest{ - ChainName: suite.chainName, - SenderAddress: sender.String(), - } - tokenAndFee := types.NewERC20Token(amount.Amount, tokenContract) - response = &types.QueryPendingSendToExternalResponse{ - TransfersInBatches: []*types.OutgoingTransferTx{}, - UnbatchedTransfers: []*types.OutgoingTransferTx{ - { - Id: txId, - Sender: sender.String(), - DestAddress: randomReceive, - Token: tokenAndFee, - Fee: tokenAndFee, - }, - }, - } - }, - expPass: true, - }, - } - for _, testCase := range testCases { - suite.Run(testCase.name, func() { - testCase.malleate() - res, err := suite.queryClient.GetPendingSendToExternal(suite.Ctx, request) - if testCase.expPass { - suite.Require().NoError(err) - suite.Require().ElementsMatch(response.TransfersInBatches, res.TransfersInBatches) - suite.Require().ElementsMatch(response.UnbatchedTransfers, res.UnbatchedTransfers) - } else { - suite.Require().Error(err) - suite.Require().ErrorIs(err, expectedError) - } - }) - } -} - func (suite *CrossChainGrpcTestSuite) TestKeeper_LastEventBlockHeightByAddr() { var ( request *types.QueryLastEventBlockHeightByAddrRequest diff --git a/x/crosschain/keeper/msg_server.go b/x/crosschain/keeper/msg_server.go index e97138d8..8b60be8a 100644 --- a/x/crosschain/keeper/msg_server.go +++ b/x/crosschain/keeper/msg_server.go @@ -345,6 +345,7 @@ func (s MsgServer) UnbondedOracle(c context.Context, msg *types.MsgUnbondedOracl return &types.MsgUnbondedOracleResponse{}, nil } +// Deprecated: SendToExternal Please use precompile BridgeCall func (s MsgServer) SendToExternal(c context.Context, msg *types.MsgSendToExternal) (*types.MsgSendToExternalResponse, error) { sender, err := sdk.AccAddressFromBech32(msg.Sender) if err != nil { @@ -352,7 +353,7 @@ func (s MsgServer) SendToExternal(c context.Context, msg *types.MsgSendToExterna } ctx := sdk.UnwrapSDKContext(c) - txID, err := s.AddToOutgoingPool(ctx, sender, msg.Dest, msg.Amount, msg.BridgeFee) + batchNonce, err := s.BuildOutgoingTxBatch(ctx, sender, msg.Dest, msg.Amount, msg.BridgeFee) if err != nil { return nil, err } @@ -364,99 +365,25 @@ func (s MsgServer) SendToExternal(c context.Context, msg *types.MsgSendToExterna )) return &types.MsgSendToExternalResponse{ - OutgoingTxId: txID, - }, nil -} - -func (s MsgServer) CancelSendToExternal(c context.Context, msg *types.MsgCancelSendToExternal) (*types.MsgCancelSendToExternalResponse, error) { - sender, err := sdk.AccAddressFromBech32(msg.Sender) - if err != nil { - return nil, types.ErrInvalid.Wrapf("sender address") - } - - ctx := sdk.UnwrapSDKContext(c) - - if _, err = s.RemoveFromOutgoingPoolAndRefund(ctx, msg.TransactionId, sender); err != nil { - return nil, err - } - - ctx.EventManager().EmitEvent(sdk.NewEvent( - sdk.EventTypeMessage, - sdk.NewAttribute(sdk.AttributeKeyModule, msg.ChainName), - sdk.NewAttribute(sdk.AttributeKeySender, msg.Sender), - )) - - return &types.MsgCancelSendToExternalResponse{}, nil -} - -func (s MsgServer) IncreaseBridgeFee(c context.Context, msg *types.MsgIncreaseBridgeFee) (*types.MsgIncreaseBridgeFeeResponse, error) { - sender, err := sdk.AccAddressFromBech32(msg.Sender) - if err != nil { - return nil, types.ErrInvalid.Wrapf("sender address") - } - - ctx := sdk.UnwrapSDKContext(c) - - if err = s.AddUnbatchedTxBridgeFee(ctx, msg.TransactionId, sender, msg.AddBridgeFee); err != nil { - return nil, err - } - - ctx.EventManager().EmitEvent(sdk.NewEvent( - sdk.EventTypeMessage, - sdk.NewAttribute(sdk.AttributeKeyModule, msg.ChainName), - sdk.NewAttribute(sdk.AttributeKeySender, msg.Sender), - )) - - return &types.MsgIncreaseBridgeFeeResponse{}, nil -} - -func (s MsgServer) RequestBatch(c context.Context, msg *types.MsgRequestBatch) (*types.MsgRequestBatchResponse, error) { - sender, err := sdk.AccAddressFromBech32(msg.Sender) - if err != nil { - return nil, types.ErrInvalid.Wrapf("sender address") - } - - ctx := sdk.UnwrapSDKContext(c) - - tokenContract, found := s.GetContractByBridgeDenom(ctx, msg.Denom) - if !found { - return nil, types.ErrInvalid.Wrapf("bridge token is not exist") - } - - if !s.HasOracleAddrByBridgerAddr(ctx, sender) { - if !s.IsProposalOracle(ctx, msg.Sender) { - return nil, types.ErrInvalid.Wrapf("sender must be oracle or bridger") - } - } - - batch, err := s.BuildOutgoingTxBatch(ctx, tokenContract, msg.FeeReceive, types.OutgoingTxBatchSize, msg.MinimumFee, msg.BaseFee) - if err != nil { - return nil, err - } - - ctx.EventManager().EmitEvent(sdk.NewEvent( - sdk.EventTypeMessage, - sdk.NewAttribute(sdk.AttributeKeyModule, msg.ChainName), - sdk.NewAttribute(sdk.AttributeKeySender, msg.Sender), - )) - - return &types.MsgRequestBatchResponse{ - BatchNonce: batch.BatchNonce, + BatchNonce: batchNonce, }, nil } +// Deprecated: ConfirmBatch Please use Confirm func (s MsgServer) ConfirmBatch(c context.Context, msg *types.MsgConfirmBatch) (*types.MsgConfirmBatchResponse, error) { ctx := sdk.UnwrapSDKContext(c) err := s.ConfirmHandler(ctx, msg) return &types.MsgConfirmBatchResponse{}, err } +// Deprecated: ConfirmBatch Please use Confirm func (s MsgServer) OracleSetConfirm(c context.Context, msg *types.MsgOracleSetConfirm) (*types.MsgOracleSetConfirmResponse, error) { ctx := sdk.UnwrapSDKContext(c) err := s.ConfirmHandler(ctx, msg) return &types.MsgOracleSetConfirmResponse{}, err } +// Deprecated: ConfirmBatch Please use Confirm func (s MsgServer) BridgeCallConfirm(c context.Context, msg *types.MsgBridgeCallConfirm) (*types.MsgBridgeCallConfirmResponse, error) { ctx := sdk.UnwrapSDKContext(c) err := s.ConfirmHandler(ctx, msg) diff --git a/x/crosschain/keeper/msg_server_router.go b/x/crosschain/keeper/msg_server_router.go index 75185251..c456e64e 100644 --- a/x/crosschain/keeper/msg_server_router.go +++ b/x/crosschain/keeper/msg_server_router.go @@ -84,30 +84,6 @@ func (k msgServer) SendToExternal(ctx context.Context, msg *types.MsgSendToExter } } -func (k msgServer) CancelSendToExternal(ctx context.Context, msg *types.MsgCancelSendToExternal) (*types.MsgCancelSendToExternalResponse, error) { - if server, err := k.getMsgServerByChainName(msg.GetChainName()); err != nil { - return nil, err - } else { - return server.CancelSendToExternal(ctx, msg) - } -} - -func (k msgServer) IncreaseBridgeFee(ctx context.Context, msg *types.MsgIncreaseBridgeFee) (*types.MsgIncreaseBridgeFeeResponse, error) { - if server, err := k.getMsgServerByChainName(msg.GetChainName()); err != nil { - return nil, err - } else { - return server.IncreaseBridgeFee(ctx, msg) - } -} - -func (k msgServer) RequestBatch(ctx context.Context, msg *types.MsgRequestBatch) (*types.MsgRequestBatchResponse, error) { - if server, err := k.getMsgServerByChainName(msg.GetChainName()); err != nil { - return nil, err - } else { - return server.RequestBatch(ctx, msg) - } -} - func (k msgServer) ConfirmBatch(ctx context.Context, msg *types.MsgConfirmBatch) (*types.MsgConfirmBatchResponse, error) { if server, err := k.getMsgServerByChainName(msg.GetChainName()); err != nil { return nil, err diff --git a/x/crosschain/keeper/msg_server_test.go b/x/crosschain/keeper/msg_server_test.go index 00e63c3c..fa35c87b 100644 --- a/x/crosschain/keeper/msg_server_test.go +++ b/x/crosschain/keeper/msg_server_test.go @@ -894,78 +894,6 @@ func (suite *KeeperTestSuite) TestClaimTest() { } } -func (suite *KeeperTestSuite) TestRequestBatchBaseFee() { - testCases := []struct { - testName string - baseFee sdkmath.Int - pass bool - requestAfterTotalTxs uint64 - err error - }{ - { - testName: "Support - baseFee 1000", - baseFee: sdkmath.NewInt(1000), - pass: false, - requestAfterTotalTxs: 3, - err: types.ErrInvalid.Wrapf("no batch tx"), - }, - { - testName: "Support - baseFee 2", - baseFee: sdkmath.NewInt(2), - pass: true, - requestAfterTotalTxs: 1, - err: nil, - }, - { - testName: "Support - baseFee 0", - baseFee: sdkmath.NewInt(0), - pass: true, - requestAfterTotalTxs: 0, - }, - } - - for _, testCase := range testCases { - suite.Run(testCase.testName, func() { - suite.bondedOracle() - baseDenom, bridgeDenom, tokenContract := suite.AddRandomBaseToken(false) - sender := helpers.GenAccAddress() - amount := helpers.NewRandAmount() - baseFees := []sdkmath.Int{sdkmath.NewInt(1), sdkmath.NewInt(2), sdkmath.NewInt(3)} - for i := range baseFees { - suite.MintBaseToken(sender, baseDenom, bridgeDenom, amount.Add(baseFees[i])) - _, err := suite.MsgServer().SendToExternal(suite.Ctx, &types.MsgSendToExternal{ - Sender: sender.String(), - Dest: tmrand.Str(20), - Amount: sdk.NewCoin(baseDenom, amount), - BridgeFee: sdk.NewCoin(baseDenom, baseFees[i]), - ChainName: suite.chainName, - }) - suite.Require().NoError(err) - } - - suite.Keeper().SetLastObservedBlockHeight(suite.Ctx, 1000, uint64(suite.Ctx.BlockHeight()-1)) - - _, err := suite.MsgServer().RequestBatch(suite.Ctx, &types.MsgRequestBatch{ - Sender: suite.bridgerAddrs[0].String(), - Denom: bridgeDenom, - MinimumFee: sdkmath.NewInt(1), - FeeReceive: helpers.GenExternalAddr(suite.chainName), - ChainName: suite.chainName, - BaseFee: testCase.baseFee, - }) - - if testCase.pass { - suite.Require().NoError(err) - batchFee := suite.Keeper().GetBatchFeesByTokenType(suite.Ctx, tokenContract, 100, sdkmath.NewInt(0)) - suite.Require().EqualValues(testCase.requestAfterTotalTxs, batchFee.TotalTxs) - } else { - suite.Require().NotNil(err) - suite.Require().Equal(err.Error(), testCase.err.Error()) - } - }) - } -} - func (suite *KeeperTestSuite) TestMsgUpdateChainOracles() { updateOracle := &types.MsgUpdateChainOracles{ Oracles: []string{}, diff --git a/x/crosschain/keeper/outgoing_pool.go b/x/crosschain/keeper/outgoing_pool.go deleted file mode 100644 index 667abb1c..00000000 --- a/x/crosschain/keeper/outgoing_pool.go +++ /dev/null @@ -1,254 +0,0 @@ -package keeper - -import ( - "fmt" - - sdkmath "cosmossdk.io/math" - storetypes "cosmossdk.io/store/types" - "github.com/cosmos/cosmos-sdk/telemetry" - sdk "github.com/cosmos/cosmos-sdk/types" - sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" - "github.com/hashicorp/go-metrics" - - fxtelemetry "github.com/functionx/fx-core/v8/telemetry" - "github.com/functionx/fx-core/v8/x/crosschain/types" -) - -func (k Keeper) AddToOutgoingPool(ctx sdk.Context, sender sdk.AccAddress, receiver string, amount sdk.Coin, fee sdk.Coin) (uint64, error) { - // get next tx id from keeper - nextTxID := k.autoIncrementID(ctx, types.KeyLastTxPoolID) - return nextTxID, k.addToOutgoingPool(ctx, sender, receiver, amount, fee, nextTxID) -} - -// AddToOutgoingPool -// - checks a counterpart denominator exists for the given voucher type -// - burns the voucher for transfer amount and fees -// - persists an OutgoingTx -// - adds the TX to the `available` TX pool via a second index -func (k Keeper) addToOutgoingPool(ctx sdk.Context, sender sdk.AccAddress, receiver string, amount sdk.Coin, fee sdk.Coin, txID uint64) error { - tokenContract, err := k.BaseCoinToBridgeToken(ctx, amount.Add(fee), sender) - if err != nil { - return err - } - - // construct outgoing tx, as part of this process we represent - // the token as an ERC20 token since it is preparing to go to ETH - // rather than the denom that is the input to this function. - outgoing := &types.OutgoingTransferTx{ - Id: txID, - Sender: sender.String(), - DestAddress: receiver, - Token: types.NewERC20Token(amount.Amount, tokenContract), - Fee: types.NewERC20Token(fee.Amount, tokenContract), - } - - if err := k.AddUnbatchedTx(ctx, outgoing); err != nil { - return err - } - - ctx.EventManager().EmitEvent(sdk.NewEvent( - types.EventTypeSendToExternal, - sdk.NewAttribute(sdk.AttributeKeyModule, k.moduleName), - sdk.NewAttribute(types.AttributeKeyOutgoingTxID, fmt.Sprint(txID)), - )) - - if !ctx.IsCheckTx() { - fxtelemetry.SetGaugeLabelsWithDenom( - []string{types.ModuleName, "outgoing_tx_amount"}, - amount.Denom, amount.Amount.BigInt(), - telemetry.NewLabel("module", k.moduleName), - ) - telemetry.IncrCounterWithLabels( - []string{types.ModuleName, "outgoing_tx"}, - 1, - []metrics.Label{ - telemetry.NewLabel("module", k.moduleName), - telemetry.NewLabel("denom", amount.Denom), - }, - ) - } - - return nil -} - -// RemoveFromOutgoingPoolAndRefund -// - checks that the provided tx actually exists -// - deletes the unbatched tx from the pool -// - issues the tokens back to the sender -func (k Keeper) RemoveFromOutgoingPoolAndRefund(ctx sdk.Context, txId uint64, sender sdk.AccAddress) (sdk.Coin, error) { - if ctx.IsZero() || txId < 1 || sender.Empty() { - return sdk.Coin{}, types.ErrInvalid.Wrapf("arguments") - } - - // check that we actually have a tx with that id and what it's details are - tx, err := k.GetUnbatchedTxById(ctx, txId) - if err != nil { - return sdk.Coin{}, err - } - return k.handleRemoveFromOutgoingPoolAndRefund(ctx, tx, sender) -} - -// AddUnbatchedTx creates a new transaction in the pool -func (k Keeper) AddUnbatchedTx(ctx sdk.Context, outgoingTransferTx *types.OutgoingTransferTx) error { - store := ctx.KVStore(k.storeKey) - idxKey := types.GetOutgoingTxPoolKey(outgoingTransferTx.Fee, outgoingTransferTx.Id) - if store.Has(idxKey) { - return sdkerrors.ErrInvalidRequest.Wrapf("tx with id %d already in pool", outgoingTransferTx.Id) - } - - store.Set(idxKey, k.cdc.MustMarshal(outgoingTransferTx)) - return nil -} - -// pickUnBatchedTx find Tx in pool and remove from "available" second index -func (k Keeper) pickUnBatchedTx(ctx sdk.Context, tokenContract string, maxElements uint, baseFee sdkmath.Int) ([]*types.OutgoingTransferTx, error) { - var selectedTx []*types.OutgoingTransferTx - var err error - k.IterateUnbatchedTransactions(ctx, tokenContract, func(tx *types.OutgoingTransferTx) bool { - if tx.Fee.Amount.LT(baseFee) { - return true - } - selectedTx = append(selectedTx, tx) - err = k.removeUnbatchedTx(ctx, tx.Fee, tx.Id) - oldTx, oldTxErr := k.GetUnbatchedTxByFeeAndId(ctx, tx.Fee, tx.Id) - if oldTx != nil || oldTxErr == nil { - panic("picked a duplicate transaction from the pool, duplicates should never exist!") - } - return err != nil || uint(len(selectedTx)) == maxElements - }) - return selectedTx, err -} - -// removeUnbatchedTXIndex removes the tx from the pool -func (k Keeper) removeUnbatchedTx(ctx sdk.Context, fee types.ERC20Token, txID uint64) error { - store := ctx.KVStore(k.storeKey) - idxKey := types.GetOutgoingTxPoolKey(fee, txID) - if !store.Has(idxKey) { - return types.ErrInvalid.Wrapf("tx with id %d not in pool", txID) - } - store.Delete(idxKey) - return nil -} - -// GetUnbatchedTxByFeeAndId grabs a tx from the pool given its fee and txID -func (k Keeper) GetUnbatchedTxByFeeAndId(ctx sdk.Context, fee types.ERC20Token, txID uint64) (*types.OutgoingTransferTx, error) { - store := ctx.KVStore(k.storeKey) - bz := store.Get(types.GetOutgoingTxPoolKey(fee, txID)) - if bz == nil { - return nil, types.ErrInvalid.Wrapf("tx with id %d not in pool", txID) - } - var r types.OutgoingTransferTx - err := k.cdc.Unmarshal(bz, &r) - return &r, err -} - -// GetUnbatchedTxById grabs a tx from the pool given only the txID -// note that due to the way unbatched txs are indexed, the GetUnbatchedTxByFeeAndId method is much faster -func (k Keeper) GetUnbatchedTxById(ctx sdk.Context, txID uint64) (*types.OutgoingTransferTx, error) { - var r *types.OutgoingTransferTx - k.IterateUnbatchedTransactions(ctx, "", func(tx *types.OutgoingTransferTx) bool { - if tx.Id == txID { - r = tx - return true - } - return false - }) - - if r == nil { - // We have no return tx, it was either batched or never existed - return nil, types.ErrInvalid.Wrapf("tx with id %d not in pool", txID) - } - return r, nil -} - -// GetUnbatchedTransactions used in testing -func (k Keeper) GetUnbatchedTransactions(ctx sdk.Context) []*types.OutgoingTransferTx { - var txs []*types.OutgoingTransferTx - k.IterateUnbatchedTransactions(ctx, "", func(tx *types.OutgoingTransferTx) bool { - txs = append(txs, tx) - return false - }) - return txs -} - -// IterateUnbatchedTransactions iterates through all unbatched transactions -func (k Keeper) IterateUnbatchedTransactions(ctx sdk.Context, tokenContract string, cb func(tx *types.OutgoingTransferTx) bool) { - store := ctx.KVStore(k.storeKey) - prefixKey := types.GetOutgoingTxPoolContractPrefix(tokenContract) - iter := storetypes.KVStoreReversePrefixIterator(store, prefixKey) - defer iter.Close() - for ; iter.Valid(); iter.Next() { - var transact types.OutgoingTransferTx - k.cdc.MustUnmarshal(iter.Value(), &transact) - // cb returns true to stop early - if cb(&transact) { - break - } - } -} - -func (k Keeper) handleRemoveFromOutgoingPoolAndRefund(ctx sdk.Context, tx *types.OutgoingTransferTx, sender sdk.AccAddress) (sdk.Coin, error) { - txId := tx.Id - - // Check that this user actually sent the transaction, this prevents someone from refunding someone - // else transaction to themselves. - txSender := sdk.MustAccAddressFromBech32(tx.Sender) - if !txSender.Equals(sender) { - return sdk.Coin{}, types.ErrInvalid.Wrapf("Sender %s did not send Id %d", sender, txId) - } - - // an inconsistent entry should never enter the store, but this is the ideal place to exploit - // it such a bug if it did ever occur, so we should double check to be really sure - if tx.Fee.Contract != tx.Token.Contract { - return sdk.Coin{}, types.ErrInvalid.Wrapf("Inconsistent tokens to cancel!: %s %s", tx.Fee.Contract, tx.Token.Contract) - } - - // delete this tx from the pool - if err := k.removeUnbatchedTx(ctx, tx.Fee, txId); err != nil { - return sdk.Coin{}, types.ErrInvalid.Wrapf("txId %d not in unbatched index! Must be in a batch!", txId) - } - // Make sure the tx was removed - oldTx, oldTxErr := k.GetUnbatchedTxByFeeAndId(ctx, tx.Fee, tx.Id) - if oldTx != nil || oldTxErr == nil { - return sdk.Coin{}, types.ErrInvalid.Wrapf("tx with id %d was not fully removed from the pool, a duplicate must exist", txId) - } - - return k.handleCancelRefund(ctx, txId, sender, tx.Token.Contract, tx.Token.Amount.Add(tx.Fee.Amount)) -} - -func (k Keeper) handleCancelRefund(ctx sdk.Context, txId uint64, sender sdk.AccAddress, tokenContract string, refundAmount sdkmath.Int) (sdk.Coin, error) { - // 1. handler refund and convert to base coin - baseCoin, err := k.BridgeTokenToBaseCoin(ctx, tokenContract, refundAmount, sender) - if err != nil { - return sdk.Coin{}, err - } - - // 2. handler hook - if err = k.handleOutgoingTransferRelation(ctx, txId, sender, baseCoin); err != nil { - return sdk.Coin{}, err - } - - // 3. emit event - k.emitCancelEvent(ctx, txId) - - return baseCoin, nil -} - -func (k Keeper) handleOutgoingTransferRelation(ctx sdk.Context, txId uint64, sender sdk.AccAddress, targetCoin sdk.Coin) error { - // if not origin token, refund to contract token - if !k.erc20Keeper.HasOutgoingTransferRelation(ctx, k.moduleName, txId) { - return nil - } - if err := k.erc20Keeper.HookOutgoingRefund(ctx, k.moduleName, txId, sender, targetCoin); err != nil { - return err - } - return nil -} - -func (k Keeper) emitCancelEvent(ctx sdk.Context, txId uint64) { - ctx.EventManager().EmitEvent(sdk.NewEvent( - types.EventTypeSendToExternalCanceled, - sdk.NewAttribute(sdk.AttributeKeyModule, k.moduleName), - sdk.NewAttribute(types.AttributeKeyOutgoingTxID, fmt.Sprint(txId)), - )) -} diff --git a/x/crosschain/keeper/outgoing_pool_test.go b/x/crosschain/keeper/outgoing_pool_test.go deleted file mode 100644 index c104d399..00000000 --- a/x/crosschain/keeper/outgoing_pool_test.go +++ /dev/null @@ -1,29 +0,0 @@ -package keeper_test - -import ( - tmrand "github.com/cometbft/cometbft/libs/rand" - sdk "github.com/cosmos/cosmos-sdk/types" - - "github.com/functionx/fx-core/v8/testutil/helpers" -) - -// todo need test FX token - -func (suite *KeeperTestSuite) TestKeeper_OutgoingPool() { - sender := helpers.GenHexAddress().Bytes() - amount := helpers.NewRandAmount() - fee := helpers.NewRandAmount() - baseDenom, bridgeDenom, _ := suite.AddRandomBaseToken(false) - suite.MintBaseToken(sender, baseDenom, bridgeDenom, amount.Add(fee)) - - // 1. test add to outgoing pool - txId, err := suite.Keeper().AddToOutgoingPool(suite.Ctx, sender, tmrand.Str(20), sdk.NewCoin(baseDenom, amount), sdk.NewCoin(baseDenom, fee)) - suite.Require().NoError(err) - suite.Require().Greater(txId, uint64(0)) - suite.CheckAllBalance(sender, sdk.NewCoins()...) - - // 2. test cancel outgoing pool - _, err = suite.Keeper().RemoveFromOutgoingPoolAndRefund(suite.Ctx, txId, sender) - suite.NoError(err) - suite.CheckAllBalance(sender, sdk.NewCoin(baseDenom, amount.Add(fee))) -} diff --git a/x/crosschain/keeper/batch.go b/x/crosschain/keeper/outgoing_tx.go similarity index 67% rename from x/crosschain/keeper/batch.go rename to x/crosschain/keeper/outgoing_tx.go index daed4660..9192c001 100644 --- a/x/crosschain/keeper/batch.go +++ b/x/crosschain/keeper/outgoing_tx.go @@ -2,85 +2,75 @@ package keeper import ( "fmt" - "strings" - sdkmath "cosmossdk.io/math" storetypes "cosmossdk.io/store/types" + "github.com/cosmos/cosmos-sdk/telemetry" sdk "github.com/cosmos/cosmos-sdk/types" + "github.com/hashicorp/go-metrics" + fxtelemetry "github.com/functionx/fx-core/v8/telemetry" "github.com/functionx/fx-core/v8/x/crosschain/types" ) -// BuildOutgoingTxBatch starts the following process chain: -// - find bridged denominator for given voucher type -// - determine if a an unExecuted batch is already waiting for this token type, if so confirm the new batch would -// have a higher total fees. If not exit without creating a batch -// - select available transactions from the outgoing transaction pool sorted by fee desc -// - persist an outgoing batch object with an incrementing ID = nonce -// - emit an event -func (k Keeper) BuildOutgoingTxBatch(ctx sdk.Context, tokenContract, feeReceive string, maxElements uint, minimumFee, baseFee sdkmath.Int) (*types.OutgoingTxBatch, error) { - if maxElements == 0 { - return nil, types.ErrInvalid.Wrapf("max elements value") - } - - // if there is a more profitable batch for this token type do not create a new batch - if lastBatch := k.GetLastOutgoingBatchByToken(ctx, tokenContract); lastBatch != nil { - currentFees := k.GetBatchFeesByTokenType(ctx, tokenContract, maxElements, baseFee) - if lastBatch.GetFees().GT(currentFees.TotalFees) { - return nil, types.ErrInvalid.Wrapf("new batch would not be more profitable") - } - } - selectedTx, err := k.pickUnBatchedTx(ctx, tokenContract, maxElements, baseFee) +func (k Keeper) BuildOutgoingTxBatch(ctx sdk.Context, sender sdk.AccAddress, receiver string, amount sdk.Coin, fee sdk.Coin) (uint64, error) { + tokenContract, err := k.BaseCoinToBridgeToken(ctx, amount.Add(fee), sender) if err != nil { - return nil, err - } - if len(selectedTx) == 0 { - return nil, types.ErrInvalid.Wrapf("no batch tx") - } - if types.OutgoingTransferTxs(selectedTx).TotalFee().LT(minimumFee) { - return nil, types.ErrInvalid.Wrapf("total fee less than minimum fee") + return 0, err } + + feeReceive := "" // todo: query feeReceive from quote contract + batchTimeout := k.CalExternalTimeoutHeight(ctx, GetExternalBatchTimeout) if batchTimeout <= 0 { - return nil, types.ErrInvalid.Wrapf("batch timeout height") + return 0, types.ErrInvalid.Wrapf("batch timeout height") } - nextID := k.autoIncrementID(ctx, types.KeyLastOutgoingBatchID) batch := &types.OutgoingTxBatch{ - BatchNonce: nextID, - BatchTimeout: batchTimeout, - Transactions: selectedTx, + BatchNonce: k.autoIncrementID(ctx, types.KeyLastOutgoingBatchID), + BatchTimeout: batchTimeout, + Transactions: []*types.OutgoingTransferTx{ + { + Id: k.autoIncrementID(ctx, types.KeyLastTxPoolID), + Sender: sender.String(), + DestAddress: receiver, + Token: types.NewERC20Token(amount.Amount, tokenContract), + Fee: types.NewERC20Token(fee.Amount, tokenContract), + }, + }, TokenContract: tokenContract, FeeReceive: feeReceive, Block: uint64(ctx.BlockHeight()), // set the current block height when storing the batch } if err = k.StoreBatch(ctx, batch); err != nil { - return nil, err + return 0, err } - // checkpoint, err := batch.GetCheckpoint(k.GetGravityID(ctx)) - // if err != nil { - // panic(err) - // } - // k.SetPastExternalSignatureCheckpoint(ctx, checkpoint) - - eventBatchNonceTxIds := strings.Builder{} - eventBatchNonceTxIds.WriteString(fmt.Sprintf("%d", selectedTx[0].Id)) - for _, tx := range selectedTx[1:] { - _, _ = eventBatchNonceTxIds.WriteString(fmt.Sprintf(",%d", tx.Id)) - } batchEvent := sdk.NewEvent( types.EventTypeOutgoingBatch, sdk.NewAttribute(sdk.AttributeKeyModule, k.moduleName), - sdk.NewAttribute(types.AttributeKeyOutgoingBatchNonce, fmt.Sprint(nextID)), - sdk.NewAttribute(types.AttributeKeyOutgoingTxIds, eventBatchNonceTxIds.String()), + sdk.NewAttribute(types.AttributeKeyOutgoingBatchNonce, fmt.Sprint(batch.BatchNonce)), + sdk.NewAttribute(types.AttributeKeyOutgoingTxIds, fmt.Sprint(batch.Transactions[0].Id)), sdk.NewAttribute(types.AttributeKeyOutgoingBatchTimeout, fmt.Sprint(batch.BatchTimeout)), ) ctx.EventManager().EmitEvent(batchEvent) - return batch, nil + + if !ctx.IsCheckTx() { + fxtelemetry.SetGaugeLabelsWithDenom( + []string{types.ModuleName, "outgoing_tx_amount"}, + amount.Denom, amount.Amount.BigInt(), + telemetry.NewLabel("module", k.moduleName), + ) + telemetry.IncrCounterWithLabels( + []string{types.ModuleName, "outgoing_tx"}, + 1, + []metrics.Label{ + telemetry.NewLabel("module", k.moduleName), + telemetry.NewLabel("denom", amount.Denom), + }, + ) + } + return batch.BatchNonce, nil } -// OutgoingTxBatchExecuted is run when the Cosmos chain detects that a batch has been executed on Ethereum -// It frees all the transactions in the batch, then cancels all earlier batches func (k Keeper) OutgoingTxBatchExecuted(ctx sdk.Context, tokenContract string, batchNonce uint64) { batch := k.GetOutgoingTxBatch(ctx, tokenContract, batchNonce) if batch == nil { @@ -91,7 +81,7 @@ func (k Keeper) OutgoingTxBatchExecuted(ctx sdk.Context, tokenContract string, b k.IterateOutgoingTxBatches(ctx, func(iterBatch *types.OutgoingTxBatch) bool { // If the iterated batches nonce is lower than the one that was just executed, cancel it if iterBatch.BatchNonce < batch.BatchNonce && iterBatch.TokenContract == tokenContract { - if err := k.CancelOutgoingTxBatch(ctx, tokenContract, iterBatch.BatchNonce); err != nil { + if err := k.RefundOutgoingTxBatch(ctx, tokenContract, iterBatch.BatchNonce); err != nil { panic(fmt.Sprintf("Failed cancel out batch %s %d while trying to execute failed: %s", batch.TokenContract, batch.BatchNonce, err)) } } @@ -146,17 +136,15 @@ func (k Keeper) GetOutgoingTxBatch(ctx sdk.Context, tokenContract string, batchN return batch } -// CancelOutgoingTxBatch releases all TX in the batch and deletes the batch -func (k Keeper) CancelOutgoingTxBatch(ctx sdk.Context, tokenContract string, batchNonce uint64) error { +// RefundOutgoingTxBatch releases all TX in the batch and deletes the batch +func (k Keeper) RefundOutgoingTxBatch(ctx sdk.Context, tokenContract string, batchNonce uint64) error { batch := k.GetOutgoingTxBatch(ctx, tokenContract, batchNonce) if batch == nil { return types.ErrInvalid.Wrapf("batch not found %s %d", tokenContract, batchNonce) } - for _, tx := range batch.Transactions { - if err := k.AddUnbatchedTx(ctx, tx); err != nil { - panic(fmt.Errorf("unable to add batched transaction back into pool %v, err: %w", tx, err)) - } - } + // for _, tx := range batch.Transactions { + // todo: need refund + // } // Delete batch since it is finished k.DeleteBatch(ctx, batch) diff --git a/x/crosschain/precompile/cancel_send_to_external.go b/x/crosschain/precompile/cancel_send_to_external.go deleted file mode 100644 index f3e3b7bb..00000000 --- a/x/crosschain/precompile/cancel_send_to_external.go +++ /dev/null @@ -1,105 +0,0 @@ -package precompile - -import ( - "errors" - "fmt" - "math/big" - - sdk "github.com/cosmos/cosmos-sdk/types" - "github.com/ethereum/go-ethereum/accounts/abi" - "github.com/ethereum/go-ethereum/common" - "github.com/ethereum/go-ethereum/core/vm" - - crosschaintypes "github.com/functionx/fx-core/v8/x/crosschain/types" - evmtypes "github.com/functionx/fx-core/v8/x/evm/types" -) - -// Deprecated: please use BridgeCallMethod -type CancelSendToExternalMethod struct { - *Keeper - Method abi.Method - Event abi.Event -} - -// Deprecated: please use BridgeCallMethod -func NewCancelSendToExternalMethod(keeper *Keeper) *CancelSendToExternalMethod { - return &CancelSendToExternalMethod{ - Keeper: keeper, - Method: crosschaintypes.GetABI().Methods["cancelSendToExternal"], - Event: crosschaintypes.GetABI().Events["CancelSendToExternal"], - } -} - -func (m *CancelSendToExternalMethod) IsReadonly() bool { - return false -} - -func (m *CancelSendToExternalMethod) GetMethodId() []byte { - return m.Method.ID -} - -func (m *CancelSendToExternalMethod) RequiredGas() uint64 { - return 30_000 -} - -func (m *CancelSendToExternalMethod) Run(evm *vm.EVM, contract *vm.Contract) ([]byte, error) { - if m.router == nil { - return nil, errors.New("cross chain router is empty") - } - - args, err := m.UnpackInput(contract.Input) - if err != nil { - return nil, err - } - - sender := contract.Caller() - route, has := m.router.GetRoute(args.Chain) - if !has { - return nil, fmt.Errorf("chain not support: %s", args.Chain) - } - - // NOTE: must be get relation before cancel, cancel will delete it if relation exist - - stateDB := evm.StateDB.(evmtypes.ExtStateDB) - if err = stateDB.ExecuteNativeAction(contract.Address(), nil, func(ctx sdk.Context) error { - if _, err = route.RemoveFromOutgoingPoolAndRefund(ctx, args.TxID.Uint64(), sender.Bytes()); err != nil { - return err - } - - data, topic, err := m.NewCancelSendToExternalEvent(sender, args.Chain, args.TxID) - if err != nil { - return err - } - EmitEvent(evm, data, topic) - - return nil - }); err != nil { - return nil, err - } - - return m.PackOutput(true) -} - -func (m *CancelSendToExternalMethod) NewCancelSendToExternalEvent(sender common.Address, chainName string, txId *big.Int) (data []byte, topic []common.Hash, err error) { - return evmtypes.PackTopicData(m.Event, []common.Hash{sender.Hash()}, chainName, txId) -} - -func (m *CancelSendToExternalMethod) PackInput(chainName string, txId *big.Int) ([]byte, error) { - data, err := m.Method.Inputs.Pack(chainName, txId) - if err != nil { - return nil, err - } - return append(m.GetMethodId(), data...), nil -} - -func (m *CancelSendToExternalMethod) UnpackInput(data []byte) (*crosschaintypes.CancelSendToExternalArgs, error) { - args := new(crosschaintypes.CancelSendToExternalArgs) - if err := evmtypes.ParseMethodArgs(m.Method, args, data[4:]); err != nil { - return nil, err - } - return args, nil -} - -func (m *CancelSendToExternalMethod) PackOutput(success bool) ([]byte, error) { - return m.Method.Outputs.Pack(success) -} diff --git a/x/crosschain/precompile/cancel_send_to_external_test.go b/x/crosschain/precompile/cancel_send_to_external_test.go deleted file mode 100644 index a445dce9..00000000 --- a/x/crosschain/precompile/cancel_send_to_external_test.go +++ /dev/null @@ -1,458 +0,0 @@ -package precompile_test - -import ( - "errors" - "fmt" - "math/big" - "strings" - "testing" - - sdkmath "cosmossdk.io/math" - tmrand "github.com/cometbft/cometbft/libs/rand" - sdk "github.com/cosmos/cosmos-sdk/types" - banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" - "github.com/ethereum/go-ethereum/common" - "github.com/stretchr/testify/require" - - "github.com/functionx/fx-core/v8/testutil/helpers" - fxtypes "github.com/functionx/fx-core/v8/types" - crosschainkeeper "github.com/functionx/fx-core/v8/x/crosschain/keeper" - "github.com/functionx/fx-core/v8/x/crosschain/precompile" - crosschaintypes "github.com/functionx/fx-core/v8/x/crosschain/types" - "github.com/functionx/fx-core/v8/x/erc20/types" - ethtypes "github.com/functionx/fx-core/v8/x/eth/types" -) - -func TestCancelSendToExternalABI(t *testing.T) { - cancelSendToExternal := precompile.NewCancelSendToExternalMethod(nil) - - require.Equal(t, 2, len(cancelSendToExternal.Method.Inputs)) - require.Equal(t, 1, len(cancelSendToExternal.Method.Outputs)) - - require.Equal(t, 3, len(cancelSendToExternal.Event.Inputs)) -} - -//nolint:gocyclo -func (suite *PrecompileTestSuite) TestCancelSendToExternal() { - // todo fix this test - suite.T().SkipNow() - crossChainTxFunc := func(signer *helpers.Signer, contact common.Address, moduleName string, amount, fee, value *big.Int) { - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - contact, - helpers.GenExternalAddr(moduleName), - amount, - fee, - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - res := suite.EthereumTx(signer, crosschaintypes.GetAddress(), value, data) - suite.Require().False(res.Failed(), res.VmError) - } - refundPackFunc := func(moduleName string, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - queryServer := crosschainkeeper.NewQueryServerImpl(suite.CrossChainKeepers()[moduleName]) - externalTx, err := queryServer.GetPendingSendToExternal(suite.Ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: moduleName, - SenderAddress: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - suite.Require().Equal(1, len(externalTx.UnbatchedTransfers)) - - data, err := crosschaintypes.GetABI().Pack( - "cancelSendToExternal", - moduleName, - big.NewInt(int64(externalTx.UnbatchedTransfers[0].Id)), - ) - suite.Require().NoError(err) - return data, nil - } - - testCases := []struct { - name string - prepare func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) - malleate func(moduleName string, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) - error func(args []string) string - result bool - }{ - { - name: "ok - address + erc20 token", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - crossChainTxFunc(signer, pair.GetERC20Contract(), moduleName, randMint, big.NewInt(0), big.NewInt(0)) - return pair, moduleName, "" - }, - malleate: refundPackFunc, - result: true, - }, - { - name: "ok - address + evm token", - prepare: func(_ *types.TokenPair, _ string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - moduleName := ethtypes.ModuleName - - suite.AddFXBridgeToken(helpers.GenHexAddress().String()) - - coin := sdk.NewCoin(fxtypes.DefaultDenom, sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress().Bytes(), coin) - - pair, found := suite.App.Erc20Keeper.GetTokenPair(suite.Ctx, fxtypes.DefaultDenom) - suite.Require().True(found) - - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - - crossChainTxFunc(signer, common.Address{}, moduleName, amount, fee, randMint) - - return &pair, moduleName, fxtypes.DefaultDenom - }, - malleate: refundPackFunc, - result: true, - }, - { - name: "ok - address + origin token", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - suite.CrossChainKeepers()[moduleName].AddBridgeToken(suite.Ctx, helpers.GenHexAddress().String(), pair.GetDenom()) - - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress().Bytes(), coin) - - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - - // convert denom to many - fxTarget := fxtypes.ParseFxTarget(moduleName) - targetCoin, err := suite.App.Erc20Keeper.ConvertDenomToTarget(suite.Ctx, signer.AccAddress(), - sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)), fxTarget) - suite.Require().NoError(err) - - _, err = suite.CrossChainKeepers()[moduleName].AddToOutgoingPool(suite.Ctx, - signer.AccAddress(), signer.Address().String(), - sdk.NewCoin(targetCoin.Denom, sdkmath.NewIntFromBigInt(amount)), - sdk.NewCoin(targetCoin.Denom, sdkmath.NewIntFromBigInt(fee))) - suite.Require().NoError(err) - - return pair, moduleName, pair.GetDenom() - }, - malleate: refundPackFunc, - result: true, - }, - { - name: "ok - address + wrapper origin token", - prepare: func(_ *types.TokenPair, _ string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - moduleName := ethtypes.ModuleName - pair, found := suite.App.Erc20Keeper.GetTokenPair(suite.Ctx, fxtypes.DefaultDenom) - suite.Require().True(found) - - suite.AddFXBridgeToken(helpers.GenHexAddress().String()) - - coin := sdk.NewCoin(fxtypes.DefaultDenom, sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress().Bytes(), coin) - - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - - crossChainTxFunc(signer, pair.GetERC20Contract(), moduleName, amount, fee, big.NewInt(0)) - - return &pair, moduleName, "" - }, - malleate: refundPackFunc, - result: true, - }, - // todo: fix this test case - // { - // name: "ok - address + ibc token", - // prepare: func(_ *types.TokenPair, _ string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - // tokenAddress := helpers.GenHexAddress() - // bridgeDenom := suite.AddBridgeToken(bsctypes.ModuleName, tokenAddress.Hex()) - // - // symbol := helpers.NewRandSymbol() - // ibcMD := banktypes.Metadata{ - // Description: "The cross chain token of the Function X", - // DenomUnits: []*banktypes.DenomUnit{ - // { - // Denom: bridgeDenom, - // Exponent: 0, - // }, - // { - // Denom: symbol, - // Exponent: 18, - // }, - // }, - // Base: bridgeDenom, - // Display: bridgeDenom, - // Name: fmt.Sprintf("%s Token", symbol), - // Symbol: symbol, - // } - // pair, err := suite.App.Erc20Keeper.RegisterNativeCoin(suite.Ctx, ibcMD) - // suite.Require().NoError(err) - // - // coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - // suite.MintToken(signer.AccAddress(), sdk.NewCoins(coin)) - // _, err = suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, - // &types.MsgConvertCoin{Coin: coin, Receiver: signer.Address().Hex(), Sender: signer.AccAddress().String()}) - // suite.Require().NoError(err) - // - // suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - // - // crossChainTxFunc(signer, pair.GetERC20Contract(), bsctypes.ModuleName, randMint, big.NewInt(0), big.NewInt(0)) - // - // return pair, bsctypes.ModuleName, "" - // }, - // malleate: refundPackFunc, - // result: true, - // }, - { - name: "failed - invalid chain name", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - return pair, moduleName, "" - }, - malleate: func(moduleName string, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - chain := "123" - data, err := crosschaintypes.GetABI().Pack( - "cancelSendToExternal", - chain, - big.NewInt(1), - ) - suite.Require().NoError(err) - return data, []string{chain} - }, - error: func(args []string) string { - return fmt.Sprintf("invalid module name: %s", args[0]) - }, - result: false, - }, - { - name: "failed - invalid tx id", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - return pair, moduleName, "" - }, - malleate: func(moduleName string, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - txID := big.NewInt(0) - data, err := crosschaintypes.GetABI().Pack( - "cancelSendToExternal", - moduleName, - txID, - ) - suite.Require().NoError(err) - return data, []string{txID.String()} - }, - error: func(args []string) string { - return "invalid tx id" - }, - result: false, - }, - { - name: "failed - tx id not found", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - return pair, moduleName, "" - }, - malleate: func(moduleName string, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - txID := big.NewInt(10) - data, err := crosschaintypes.GetABI().Pack( - "cancelSendToExternal", - moduleName, - txID, - ) - suite.Require().NoError(err) - return data, []string{txID.String()} - }, - error: func(args []string) string { - return "tx with id 10 not in pool: invalid" - }, - result: false, - }, - } - - for _, tc := range testCases { - suite.Run(fmt.Sprintf("Case %s", tc.name), func() { - signer := suite.RandSigner() - // token pair - md := suite.GenerateCrossChainDenoms() - pair, err := suite.App.Erc20Keeper.RegisterNativeCoin(suite.Ctx, md.GetMetadata()) - suite.Require().NoError(err) - randMint := big.NewInt(int64(tmrand.Uint32() + 10)) - suite.MintLockNativeTokenToModule(md.GetMetadata(), sdkmath.NewIntFromBigInt(randMint)) - moduleName := md.RandModule() - - pair, moduleName, originToken := tc.prepare(pair, moduleName, signer, randMint) - - if len(originToken) > 0 && originToken != fxtypes.DefaultDenom { - queryServer := crosschainkeeper.NewQueryServerImpl(suite.CrossChainKeepers()[moduleName]) - petxs, err := queryServer.GetPendingSendToExternal(suite.Ctx, &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: moduleName, - SenderAddress: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - if len(petxs.UnbatchedTransfers) > 0 && !strings.Contains(tc.name, "ok - address + origin token") { // send by chain, not add relation - relation := suite.App.Erc20Keeper.HasOutgoingTransferRelation(suite.Ctx, moduleName, petxs.UnbatchedTransfers[0].Id) - suite.Require().True(relation) - } - } - - packData, errArgs := tc.malleate(moduleName, md, signer, randMint) - - // check init balance zero - chainBalances := suite.App.BankKeeper.GetAllBalances(suite.Ctx, signer.AccAddress()) - suite.Require().True(chainBalances.IsZero(), chainBalances.String()) - balance := suite.BalanceOf(pair.GetERC20Contract(), signer.Address()) - suite.Require().True(balance.Cmp(big.NewInt(0)) == 0, balance.String()) - - // get total supply - totalBefore, err := suite.App.BankKeeper.TotalSupply(suite.Ctx, &banktypes.QueryTotalSupplyRequest{}) - suite.Require().NoError(err) - - res := suite.EthereumTx(signer, crosschaintypes.GetAddress(), big.NewInt(0), packData) - - if tc.result { - suite.Require().False(res.Failed(), res.VmError) - // check balance after tx - chainBalances := suite.App.BankKeeper.GetAllBalances(suite.Ctx, signer.AccAddress()) - balance := suite.BalanceOf(pair.GetERC20Contract(), signer.Address()) - if len(originToken) > 0 { - suite.Require().True(chainBalances.AmountOf(originToken).Equal(sdkmath.NewIntFromBigInt(randMint)), chainBalances.String()) - suite.Require().True(balance.Cmp(big.NewInt(0)) == 0, balance.String()) - chainDenom := md.GetDenom(originToken) - if len(chainDenom) > 0 { - suite.Require().True(chainBalances.AmountOf(chainDenom).Equal(sdkmath.NewIntFromBigInt(randMint)), chainBalances.String()) - } - } else { - suite.Require().True(chainBalances.IsZero(), chainBalances.String()) - suite.Require().True(balance.Cmp(randMint) == 0, balance.String()) - } - - // check total supply equal - manyToOne := make(map[string]bool) - suite.App.BankKeeper.IterateAllDenomMetaData(suite.Ctx, func(md banktypes.Metadata) bool { - if len(md.DenomUnits) > 0 && len(md.DenomUnits[0].Aliases) > 0 { - manyToOne[md.Base] = true - } - return false - }) - totalAfter, err := suite.App.BankKeeper.TotalSupply(suite.Ctx, &banktypes.QueryTotalSupplyRequest{}) - suite.Require().NoError(err) - - for _, coin := range totalAfter.Supply { - if manyToOne[coin.Denom] { - continue - } - expect := totalBefore.Supply.AmountOf(coin.Denom) - - md, found := suite.App.BankKeeper.GetDenomMetaData(suite.Ctx, pair.GetDenom()) - suite.Require().True(found) - - has := false - if len(md.DenomUnits) > 0 && len(md.DenomUnits[0].Aliases) > 0 { - for _, alias := range md.DenomUnits[0].Aliases { - if strings.HasPrefix(alias, moduleName) && alias == coin.GetDenom() { - has = true - break - } - } - } - if has || strings.HasPrefix(coin.GetDenom(), "ibc/") { - expect = expect.Add(sdkmath.NewIntFromBigInt(randMint)) - } - suite.Require().Equal(coin.Amount.String(), expect.String(), coin.Denom) - } - - for _, log := range res.Logs { - event := crosschaintypes.GetABI().Events["CancelSendToExternal"] - if log.Topics[0] == event.ID.String() { - suite.Require().Equal(log.Address, crosschaintypes.GetAddress().String()) - suite.Require().Equal(log.Topics[1], signer.Address().Hash().String()) - unpack, err := event.Inputs.NonIndexed().Unpack(log.Data) - suite.Require().NoError(err) - chain := unpack[0].(string) - suite.Require().Equal(chain, moduleName) - txID := unpack[1].(*big.Int) - suite.Require().True(txID.Uint64() > 0) - } - } - - } else { - suite.Error(res, errors.New(tc.error(errArgs))) - } - }) - } -} - -func (suite *PrecompileTestSuite) TestDeleteOutgoingTransferRelation() { - // todo fix this test - suite.T().SkipNow() - signer := suite.RandSigner() - // token pair - md := suite.GenerateCrossChainDenoms() - pair, err := suite.App.Erc20Keeper.RegisterNativeCoin(suite.Ctx, md.GetMetadata()) - suite.Require().NoError(err) - randMint := big.NewInt(int64(tmrand.Uint32() + 10)) - suite.MintLockNativeTokenToModule(md.GetMetadata(), sdkmath.NewIntFromBigInt(randMint)) - moduleName := md.RandModule() - - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress().Bytes(), coin) - _, err = suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - data, err := crosschaintypes.GetABI().Pack("crossChain", pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), amount, fee, fxtypes.MustStrToByte32(moduleName), "") - suite.Require().NoError(err) - - res := suite.EthereumTx(signer, crosschaintypes.GetAddress(), big.NewInt(0), data) - suite.Require().False(res.Failed(), res.VmError) - - // get crosschain pending tx - queryServer := crosschainkeeper.NewQueryServerImpl(suite.CrossChainKeepers()[moduleName]) - petxs, err := queryServer.GetPendingSendToExternal(suite.Ctx, &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: moduleName, - SenderAddress: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - suite.Require().Len(petxs.UnbatchedTransfers, 1) - - txId := petxs.UnbatchedTransfers[0].Id - txContract := petxs.UnbatchedTransfers[0].Token.Contract - - suite.CrossChainKeepers()[moduleName].SetLastObservedBlockHeight(suite.Ctx, 100, uint64(suite.Ctx.BlockHeight())) - - batch, err := suite.CrossChainKeepers()[moduleName].BuildOutgoingTxBatch(suite.Ctx, txContract, - signer.Address().String(), 100, sdkmath.NewInt(0), sdkmath.NewInt(1)) - suite.Require().NoError(err) - batchNonce := batch.BatchNonce - - relation := suite.App.Erc20Keeper.HasOutgoingTransferRelation(suite.Ctx, moduleName, txId) - suite.Require().True(relation) - - suite.CrossChainKeepers()[moduleName].OutgoingTxBatchExecuted(suite.Ctx, txContract, batchNonce) - - relation = suite.App.Erc20Keeper.HasOutgoingTransferRelation(suite.Ctx, moduleName, txId) - suite.Require().False(relation) -} diff --git a/x/crosschain/precompile/contract.go b/x/crosschain/precompile/contract.go index 6e8bf54a..e5a29ee7 100644 --- a/x/crosschain/precompile/contract.go +++ b/x/crosschain/precompile/contract.go @@ -40,8 +40,6 @@ func NewPrecompiledContract( NewHasOracleMethod(keeper), NewIsOracleOnlineMethod(keeper), - NewCancelSendToExternalMethod(keeper), - NewIncreaseBridgeFeeMethod(keeper), NewCrossChainMethod(keeper), NewBridgeCallMethod(keeper), NewExecuteClaimMethod(keeper), diff --git a/x/crosschain/precompile/crosschain_test.go b/x/crosschain/precompile/crosschain_test.go index a3802234..282d988d 100644 --- a/x/crosschain/precompile/crosschain_test.go +++ b/x/crosschain/precompile/crosschain_test.go @@ -16,18 +16,14 @@ import ( ibcchanneltypes "github.com/cosmos/ibc-go/v8/modules/core/04-channel/types" "github.com/ethereum/go-ethereum/common" "github.com/stretchr/testify/require" - "golang.org/x/exp/slices" "github.com/functionx/fx-core/v8/contract" testcontract "github.com/functionx/fx-core/v8/tests/contract" "github.com/functionx/fx-core/v8/testutil/helpers" fxtypes "github.com/functionx/fx-core/v8/types" - bsctypes "github.com/functionx/fx-core/v8/x/bsc/types" - crosschainkeeper "github.com/functionx/fx-core/v8/x/crosschain/keeper" "github.com/functionx/fx-core/v8/x/crosschain/precompile" crosschaintypes "github.com/functionx/fx-core/v8/x/crosschain/types" "github.com/functionx/fx-core/v8/x/erc20/types" - ethtypes "github.com/functionx/fx-core/v8/x/eth/types" ) func TestCrossChainABI(t *testing.T) { @@ -39,1356 +35,6 @@ func TestCrossChainABI(t *testing.T) { require.Equal(t, 8, len(crossChain.Event.Inputs)) } -//nolint:gocyclo -func (suite *PrecompileTestSuite) TestCrossChain() { - // todo fix this test - suite.T().SkipNow() - testCases := []struct { - name string - malleate func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) - error func(args []string) string - result bool - }{ - { - name: "ok - address", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - moduleName := md.RandModule() - - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - amount, - fee, - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, nil - }, - result: true, - }, - { - name: "ok - address - no fee", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - moduleName := md.RandModule() - - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, nil - }, - result: true, - }, - { - name: "ok - address - origin token", - malleate: func(_ *types.TokenPair, _ Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - suite.MintToken(signer.AccAddress(), sdk.NewCoin(fxtypes.DefaultDenom, sdkmath.NewIntFromBigInt(randMint))) - - balance := suite.App.BankKeeper.GetBalance(suite.Ctx, signer.AccAddress(), fxtypes.DefaultDenom) - suite.Require().Equal(randMint.String(), balance.Amount.BigInt().String()) - moduleName := ethtypes.ModuleName - - suite.AddFXBridgeToken(helpers.GenHexAddress().String()) - - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - common.Address{}, - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - pair, found := suite.App.Erc20Keeper.GetTokenPair(suite.Ctx, fxtypes.DefaultDenom) - suite.Require().True(found) - - return data, &pair, randMint, moduleName, nil - }, - result: true, - }, - { - name: "ok - address - origin erc20 token", - malleate: func(_ *types.TokenPair, _ Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - moduleName := ethtypes.ModuleName - denomAddr := helpers.GenHexAddress().String() - alias := crosschaintypes.NewBridgeDenom(moduleName, denomAddr) - - suite.AddBridgeToken(moduleName, denomAddr) - - token, err := suite.DeployContract(signer.Address()) - suite.Require().NoError(err) - - suite.MintERC20Token(signer, token, signer.Address(), randMint) - balOf := suite.BalanceOf(token, signer.Address()) - suite.Require().Equal(randMint.String(), balOf.String()) - - pair, err := suite.App.Erc20Keeper.RegisterNativeERC20(suite.Ctx, token, alias) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, token, crosschaintypes.GetAddress(), randMint) - - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, nil - }, - result: true, - }, - { - name: "ok - address - wrapper origin token", - malleate: func(_ *types.TokenPair, _ Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - pair, found := suite.App.Erc20Keeper.GetTokenPair(suite.Ctx, fxtypes.DefaultDenom) - suite.Require().True(found) - - moduleName := ethtypes.ModuleName - suite.AddFXBridgeToken(helpers.GenHexAddress().String()) - - coin := sdk.NewCoin(fxtypes.DefaultDenom, sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - - balance := suite.App.BankKeeper.GetBalance(suite.Ctx, signer.AccAddress(), fxtypes.DefaultDenom) - suite.Require().Equal(randMint.String(), balance.Amount.BigInt().String()) - - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, &pair, big.NewInt(0), moduleName, nil - }, - result: true, - }, - // todo: fix this test case - // { - // name: "ok - ibc token", - // malleate: func(_ *types.TokenPair, _ Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - // tokenAddress := helpers.GenHexAddress() - // bridgeDenom := suite.AddBridgeToken(bsctypes.ModuleName, tokenAddress.Hex()) - // - // symbol := helpers.NewRandSymbol() - // ibcMD := banktypes.Metadata{ - // Description: "The cross chain token of the Function X", - // DenomUnits: []*banktypes.DenomUnit{ - // { - // Denom: bridgeDenom, - // Exponent: 0, - // }, - // { - // Denom: symbol, - // Exponent: 18, - // }, - // }, - // Base: bridgeDenom, - // Display: bridgeDenom, - // Name: fmt.Sprintf("%s Token", symbol), - // Symbol: symbol, - // } - // pair, err := suite.App.Erc20Keeper.RegisterNativeCoin(suite.Ctx, ibcMD) - // suite.Require().NoError(err) - // - // coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - // suite.MintToken(signer.AccAddress(), coin) - // _, err = suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, - // &types.MsgConvertCoin{Coin: coin, Receiver: signer.Address().Hex(), Sender: signer.AccAddress().String()}) - // suite.Require().NoError(err) - // - // suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - // - // data, err := crosschaintypes.GetABI().Pack( - // "crossChain", - // pair.GetERC20Contract(), - // helpers.GenExternalAddr(bsctypes.ModuleName), - // randMint, - // big.NewInt(0), - // fxtypes.MustStrToByte32(bsctypes.ModuleName), - // "", - // ) - // suite.Require().NoError(err) - // - // return data, pair, big.NewInt(0), bsctypes.ModuleName, nil - // }, - // result: true, - // }, - { - name: "ok - multiple chain transfer ibc token to outside", - malleate: func(_ *types.TokenPair, _ Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - tokenAddress := helpers.GenHexAddress() - // add to bsc chain - bridgeDenom := suite.AddBridgeToken(bsctypes.ModuleName, tokenAddress.Hex()) - // add to eth chain - ethBridgeToken := crosschaintypes.NewBridgeDenom(ethtypes.ModuleName, tokenAddress.Hex()) - suite.AddBridgeToken(ethtypes.ModuleName, tokenAddress.Hex()) - - symbol := helpers.NewRandSymbol() - ibcMD := banktypes.Metadata{ - Description: "The cross chain token of the Function X", - DenomUnits: []*banktypes.DenomUnit{ - { - Denom: bridgeDenom, - Exponent: 0, - Aliases: []string{ethBridgeToken}, - }, - { - Denom: symbol, - Exponent: 18, - }, - }, - Base: bridgeDenom, - Display: bridgeDenom, - Name: fmt.Sprintf("%s Token", symbol), - Symbol: symbol, - } - pair, err := suite.App.Erc20Keeper.RegisterNativeCoin(suite.Ctx, ibcMD) - suite.Require().NoError(err) - - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - - _, err = suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, - &types.MsgConvertCoin{Coin: coin, Receiver: signer.Address().Hex(), Sender: signer.AccAddress().String()}) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(bsctypes.ModuleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(bsctypes.ModuleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), bsctypes.ModuleName, nil - }, - result: true, - }, - { - name: "ok - multiple chain transfer bridge token to outside", - malleate: func(_ *types.TokenPair, _ Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - tokenAddress := helpers.GenHexAddress() - // add to bsc chain - bridgeDenom := suite.AddBridgeToken(bsctypes.ModuleName, tokenAddress.Hex()) - // add to eth chain - ethBridgeToken := crosschaintypes.NewBridgeDenom(ethtypes.ModuleName, tokenAddress.Hex()) - suite.AddBridgeToken(ethtypes.ModuleName, tokenAddress.Hex()) - - symbol := helpers.NewRandSymbol() - ibcMD := banktypes.Metadata{ - Description: "The cross chain token of the Function X", - DenomUnits: []*banktypes.DenomUnit{ - { - Denom: bridgeDenom, - Exponent: 0, - Aliases: []string{ethBridgeToken}, - }, - { - Denom: symbol, - Exponent: 18, - }, - }, - Base: bridgeDenom, - Display: bridgeDenom, - Name: fmt.Sprintf("%s Token", symbol), - Symbol: symbol, - } - pair, err := suite.App.Erc20Keeper.RegisterNativeCoin(suite.Ctx, ibcMD) - suite.Require().NoError(err) - - coin := sdk.NewCoin(ethBridgeToken, sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - suite.AddTokenToModule(types.ModuleName, sdk.NewCoins(sdk.NewCoin(ibcMD.Base, sdkmath.NewIntFromBigInt(randMint)))) - - targetCoin, err := suite.App.Erc20Keeper.ConvertDenomToTarget(suite.Ctx, signer.AccAddress(), coin, fxtypes.ParseFxTarget(types.ModuleName)) - suite.Require().NoError(err) - - _, err = suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, - &types.MsgConvertCoin{Coin: targetCoin, Receiver: signer.Address().Hex(), Sender: signer.AccAddress().String()}) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(ethtypes.ModuleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(ethtypes.ModuleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), ethtypes.ModuleName, nil - }, - result: true, - }, - { - name: "ok - multiple FX transfer outside", - malleate: func(_ *types.TokenPair, _ Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - pair, found := suite.App.Erc20Keeper.GetTokenPair(suite.Ctx, fxtypes.DefaultDenom) - suite.Require().True(found) - - md, found := suite.App.BankKeeper.GetDenomMetaData(suite.Ctx, fxtypes.DefaultDenom) - suite.Require().True(found) - - tokenContract := helpers.GenExternalAddr(bsctypes.ModuleName) - newAlias := crosschaintypes.NewBridgeDenom(bsctypes.ModuleName, tokenContract) - suite.AddBridgeToken(bsctypes.ModuleName, tokenContract) - update, err := suite.App.Erc20Keeper.UpdateDenomAliases(suite.Ctx, md.Base, newAlias) - suite.Require().NoError(err) - suite.Require().True(update) - - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - _, err = suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - moduleName := ethtypes.ModuleName - - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - amount, - fee, - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, &pair, big.NewInt(0), moduleName, nil - }, - result: true, - }, - { - name: "ok - multiple FX transfer outside other chain", - malleate: func(_ *types.TokenPair, _ Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - pair, found := suite.App.Erc20Keeper.GetTokenPair(suite.Ctx, fxtypes.DefaultDenom) - suite.Require().True(found) - - md, found := suite.App.BankKeeper.GetDenomMetaData(suite.Ctx, fxtypes.DefaultDenom) - suite.Require().True(found) - - tokenContract := helpers.GenExternalAddr(bsctypes.ModuleName) - newAlias := crosschaintypes.NewBridgeDenom(bsctypes.ModuleName, tokenContract) - suite.AddBridgeToken(bsctypes.ModuleName, tokenContract) - update, err := suite.App.Erc20Keeper.UpdateDenomAliases(suite.Ctx, md.Base, newAlias) - suite.Require().NoError(err) - suite.Require().True(update) - - coin := sdk.NewCoin(newAlias, sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - suite.AddTokenToModule(types.ModuleName, sdk.NewCoins(sdk.NewCoin(md.Base, sdkmath.NewIntFromBigInt(randMint)))) - - targetCoin, err := suite.App.Erc20Keeper.ConvertDenomToTarget(suite.Ctx, signer.AccAddress(), coin, fxtypes.ParseFxTarget(types.ModuleName)) - suite.Require().NoError(err) - - _, err = suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: targetCoin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - moduleName := bsctypes.ModuleName - - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - amount, - fee, - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, &pair, big.NewInt(0), moduleName, nil - }, - result: true, - }, - { - name: "failed - msg.value not equal", - malleate: func(pair *types.TokenPair, _ Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - suite.MintToken(signer.AccAddress(), sdk.NewCoin(fxtypes.DefaultDenom, sdkmath.NewIntFromBigInt(randMint))) - - moduleName := ethtypes.ModuleName - suite.AddFXBridgeToken(helpers.GenHexAddress().String()) - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - common.Address{}, - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(1), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, randMint, moduleName, nil - }, - error: func(args []string) string { - return "amount + fee not equal msg.value" - }, - result: false, - }, - { - name: "failed - token pair not found", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - moduleName := md.RandModule() - token := helpers.GenHexAddress() - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - token, - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, []string{token.String()} - }, - error: func(args []string) string { - return fmt.Sprintf("token pair not found: %s", args[0]) - }, - result: false, - }, - { - name: "failed - not approve", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - moduleName := md.RandModule() - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, nil - }, - error: func(args []string) string { - return "call transferFrom: execution reverted" - }, - result: false, - }, - - { - name: "contract - ok", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), suite.crosschain, randMint) - allowance := suite.ERC20Allowance(pair.GetERC20Contract(), signer.Address(), suite.crosschain) - suite.Require().Equal(randMint.String(), allowance.String()) - - moduleName := md.RandModule() - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - data, err := contract.MustABIJson(testcontract.CrossChainTestMetaData.ABI).Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - amount, - fee, - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, nil - }, - result: true, - }, - { - name: "contract - ok - no fee", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), suite.crosschain, randMint) - allowance := suite.ERC20Allowance(pair.GetERC20Contract(), signer.Address(), suite.crosschain) - suite.Require().Equal(randMint.String(), allowance.String()) - - moduleName := md.RandModule() - data, err := contract.MustABIJson(testcontract.CrossChainTestMetaData.ABI).Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, nil - }, - result: true, - }, - { - name: "contract - ok - origin token", - malleate: func(_ *types.TokenPair, _ Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - suite.MintToken(signer.AccAddress(), sdk.NewCoin(fxtypes.DefaultDenom, sdkmath.NewIntFromBigInt(randMint))) - - moduleName := ethtypes.ModuleName - suite.AddFXBridgeToken(helpers.GenHexAddress().String()) - - data, err := contract.MustABIJson(testcontract.CrossChainTestMetaData.ABI).Pack( - "crossChain", - common.Address{}, - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - pair, found := suite.App.Erc20Keeper.GetTokenPair(suite.Ctx, fxtypes.DefaultDenom) - suite.Require().True(found) - - return data, &pair, randMint, moduleName, nil - }, - result: true, - }, - { - name: "contract - ok - address - wrapper origin token", - malleate: func(_ *types.TokenPair, _ Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - pair, found := suite.App.Erc20Keeper.GetTokenPair(suite.Ctx, fxtypes.DefaultDenom) - suite.Require().True(found) - - moduleName := ethtypes.ModuleName - suite.AddFXBridgeToken(helpers.GenHexAddress().String()) - - coin := sdk.NewCoin(fxtypes.DefaultDenom, sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - - balance := suite.App.BankKeeper.GetBalance(suite.Ctx, signer.AccAddress(), fxtypes.DefaultDenom) - suite.Require().Equal(randMint.String(), balance.Amount.BigInt().String()) - - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), suite.crosschain, randMint) - - data, err := contract.MustABIJson(testcontract.CrossChainTestMetaData.ABI).Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, &pair, big.NewInt(0), moduleName, nil - }, - result: true, - }, - // todo: fix this case - // { - // name: "contract - ok - ibc token", - // malleate: func(_ *types.TokenPair, _ Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - // tokenAddress := helpers.GenHexAddress() - // bridgeDenom := suite.AddBridgeToken(bsctypes.ModuleName, tokenAddress.Hex()) - // - // symbol := helpers.NewRandSymbol() - // ibcMD := banktypes.Metadata{ - // Description: "The cross chain token of the Function X", - // DenomUnits: []*banktypes.DenomUnit{ - // { - // Denom: bridgeDenom, - // Exponent: 0, - // }, - // { - // Denom: symbol, - // Exponent: 18, - // }, - // }, - // Base: bridgeDenom, - // Display: bridgeDenom, - // Name: fmt.Sprintf("%s Token", symbol), - // Symbol: symbol, - // } - // pair, err := suite.App.Erc20Keeper.RegisterNativeCoin(suite.Ctx, ibcMD) - // suite.Require().NoError(err) - // - // coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - // suite.MintToken(signer.AccAddress(), coin) - // _, err = suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, - // &types.MsgConvertCoin{Coin: coin, Receiver: signer.Address().Hex(), Sender: signer.AccAddress().String()}) - // suite.Require().NoError(err) - // - // suite.ERC20Approve(signer, pair.GetERC20Contract(), suite.crosschain, randMint) - // - // data, err := contract.MustABIJson(testcontract.CrossChainTestMetaData.ABI).Pack( - // "crossChain", - // pair.GetERC20Contract(), - // helpers.GenExternalAddr(bsctypes.ModuleName), - // randMint, - // big.NewInt(0), - // fxtypes.MustStrToByte32(bsctypes.ModuleName), - // "", - // ) - // suite.Require().NoError(err) - // - // return data, pair, big.NewInt(0), bsctypes.ModuleName, nil - // }, - // result: true, - // }, - { - name: "contract - failed - msg.value not equal amount", - malleate: func(pair *types.TokenPair, _ Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - suite.MintToken(signer.AccAddress(), sdk.NewCoin(fxtypes.DefaultDenom, sdkmath.NewIntFromBigInt(randMint))) - - moduleName := ethtypes.ModuleName - suite.AddFXBridgeToken(helpers.GenHexAddress().String()) - data, err := contract.MustABIJson(testcontract.CrossChainTestMetaData.ABI).Pack( - "crossChain", - common.Address{}, - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(1), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, randMint, moduleName, nil - }, - error: func(args []string) string { - return "msg.value not equal amount + fee" - }, - result: false, - }, - { - name: "contract - failed - token pair not found", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - erc20Token, err := suite.DeployContract(signer.Address()) - suite.Require().NoError(err) - suite.MintERC20Token(signer, erc20Token, signer.Address(), randMint) - suite.ERC20Approve(signer, erc20Token, suite.crosschain, randMint) - - moduleName := md.RandModule() - data, err := contract.MustABIJson(testcontract.CrossChainTestMetaData.ABI).Pack( - "crossChain", - erc20Token, - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, []string{erc20Token.String()} - }, - error: func(args []string) string { - return fmt.Sprintf("token pair not found: %s", args[0]) - }, - result: false, - }, - { - name: "contract - failed - not approve", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - moduleName := md.RandModule() - data, err := contract.MustABIJson(testcontract.CrossChainTestMetaData.ABI).Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, nil - }, - error: func(args []string) string { - return "transfer amount exceeds allowance" - }, - result: false, - }, - } - - for _, tc := range testCases { - suite.Run(fmt.Sprintf("Case %s", tc.name), func() { - signer := suite.RandSigner() - // token pair - md := suite.GenerateCrossChainDenoms() - pair, err := suite.App.Erc20Keeper.RegisterNativeCoin(suite.Ctx, md.GetMetadata()) - suite.Require().NoError(err) - randMint := big.NewInt(int64(tmrand.Uint32() + 10)) - suite.MintLockNativeTokenToModule(md.GetMetadata(), sdkmath.NewIntFromBigInt(randMint)) - - chainBalances := suite.App.BankKeeper.GetAllBalances(suite.Ctx, signer.AccAddress()) - suite.Require().True(chainBalances.IsZero(), chainBalances.String()) - balance := suite.BalanceOf(pair.GetERC20Contract(), signer.Address()) - suite.Require().True(balance.Cmp(big.NewInt(0)) == 0, balance.String()) - - packData, newPair, value, moduleName, errArgs := tc.malleate(pair, md, signer, randMint) - - contractAddr := crosschaintypes.GetAddress() - addrQuery := signer.Address() - if strings.HasPrefix(tc.name, "contract") { - contractAddr = suite.crosschain - addrQuery = suite.crosschain - } - - queryServer := crosschainkeeper.NewQueryServerImpl(suite.CrossChainKeepers()[moduleName]) - resp, err := queryServer.GetPendingSendToExternal(suite.Ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: moduleName, - SenderAddress: sdk.AccAddress(addrQuery.Bytes()).String(), - }) - suite.Require().NoError(err) - suite.Require().Equal(0, len(resp.UnbatchedTransfers)) - suite.Require().Equal(0, len(resp.TransfersInBatches)) - - totalBefore, err := suite.App.BankKeeper.TotalSupply(suite.Ctx, &banktypes.QueryTotalSupplyRequest{}) - suite.Require().NoError(err) - - res := suite.EthereumTx(signer, contractAddr, value, packData) - - if tc.result { - suite.Require().False(res.Failed(), res.VmError) - // signer balance zero - chainBalances := suite.App.BankKeeper.GetAllBalances(suite.Ctx, sdk.AccAddress(addrQuery.Bytes())) - suite.Require().True(chainBalances.IsZero(), chainBalances.String()) - balance := suite.BalanceOf(newPair.GetERC20Contract(), addrQuery) - suite.Require().True(balance.Cmp(big.NewInt(0)) == 0, balance.String()) - - manyToOne := make(map[string]bool) - suite.App.BankKeeper.IterateAllDenomMetaData(suite.Ctx, func(md banktypes.Metadata) bool { - if len(md.DenomUnits) > 0 && len(md.DenomUnits[0].Aliases) > 0 { - manyToOne[md.Base] = true - } - return false - }) - totalAfter, err := suite.App.BankKeeper.TotalSupply(suite.Ctx, &banktypes.QueryTotalSupplyRequest{}) - suite.Require().NoError(err) - - newMD, found := suite.App.BankKeeper.GetDenomMetaData(suite.Ctx, newPair.GetDenom()) - suite.Require().True(found) - - for _, coin := range totalBefore.Supply { - if manyToOne[coin.Denom] { - continue - } - expect := totalAfter.Supply.AmountOf(coin.Denom) - - has := false - if len(newMD.DenomUnits) > 0 && len(newMD.DenomUnits[0].Aliases) > 0 { - for _, alias := range newMD.DenomUnits[0].Aliases { - if strings.HasPrefix(alias, moduleName) && - alias == coin.GetDenom() && !suite.ConvertOneToManyToken(newMD) { - has = true - break - } - } - } - if has || strings.HasPrefix(coin.GetDenom(), "ibc/") { - expect = expect.Add(sdkmath.NewIntFromBigInt(randMint)) - } - - if suite.ConvertOneToManyToken(newMD) && - slices.Contains(newMD.DenomUnits[0].Aliases, coin.Denom) { - coin.Amount = coin.Amount.Sub(sdkmath.NewIntFromBigInt(randMint)) - } - - suite.Require().Equal(coin.Amount.String(), expect.String(), coin.Denom, randMint.String()) - } - - // pending send to external - resp, err := queryServer.GetPendingSendToExternal(suite.Ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: moduleName, - SenderAddress: sdk.AccAddress(addrQuery.Bytes()).String(), - }) - suite.Require().NoError(err) - suite.Require().Equal(1, len(resp.UnbatchedTransfers)) - suite.Require().Equal(0, len(resp.TransfersInBatches)) - suite.Require().Equal(sdk.AccAddress(addrQuery.Bytes()).String(), resp.UnbatchedTransfers[0].Sender) - // NOTE: fee + amount == randMint - suite.Require().Equal(randMint.String(), resp.UnbatchedTransfers[0].Fee.Amount.Add(resp.UnbatchedTransfers[0].Token.Amount).BigInt().String()) - - if !strings.EqualFold(resp.UnbatchedTransfers[0].Token.Contract, strings.TrimPrefix(Metadata{metadata: newMD}.GetDenom(moduleName), moduleName)) { - tokenContract, found := suite.CrossChainKeepers()[moduleName].GetContractByBridgeDenom(suite.Ctx, newPair.Denom) - suite.Require().True(found) - suite.Require().Equal(resp.UnbatchedTransfers[0].Token.Contract, tokenContract, moduleName) - } - - for _, log := range res.Logs { - event := crosschaintypes.GetABI().Events["IncreaseBridgeFee"] - if log.Topics[0] == event.ID.String() { - suite.Require().Equal(3, len(log.Topics)) - suite.Require().Equal(log.Address, crosschaintypes.GetAddress().String()) - suite.Require().Equal(log.Topics[1], addrQuery.Hash().String()) - - unpack, err := event.Inputs.NonIndexed().Unpack(log.Data) - suite.Require().NoError(err) - denom := unpack[0].(string) - - if moduleName == ethtypes.ModuleName && value.Cmp(big.NewInt(0)) == 1 { - suite.Require().Equal(log.Topics[2], common.Address{}.Hash().String()) - suite.Require().Equal(fxtypes.DefaultDenom, denom) - } else { - suite.Require().Equal(log.Topics[2], newPair.GetERC20Contract().Hash().String()) - suite.Require().Equal(denom, newPair.GetDenom()) - } - - amount := unpack[2].(*big.Int) - fee := unpack[3].(*big.Int) - suite.Require().Equal(randMint.String(), big.NewInt(0).Add(amount, fee).String()) - target := unpack[4].([32]byte) - suite.Require().Equal(moduleName, fxtypes.Byte32ToString(target)) - memo := unpack[5].(string) - suite.Require().Equal("", memo) - } - } - - if value.Cmp(big.NewInt(0)) == 0 { - relation := suite.App.Erc20Keeper.HasOutgoingTransferRelation(suite.Ctx, moduleName, resp.UnbatchedTransfers[0].Id) - suite.Require().True(relation) - } - } else { - suite.Error(res, errors.New(tc.error(errArgs))) - } - }) - } -} - -func (suite *PrecompileTestSuite) TestCrossChainExternal() { - testCases := []struct { - name string - malleate func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) - error func(args []string) string - result bool - }{ - { - name: "ok - address", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - suite.MintERC20Token(signer, pair.GetERC20Contract(), suite.App.Erc20Keeper.ModuleAddress(), randMint) - - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - moduleName := md.RandModule() - - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - amount, - fee, - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, nil - }, - result: true, - }, - { - name: "ok - address - no fee", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - suite.MintERC20Token(signer, pair.GetERC20Contract(), suite.App.Erc20Keeper.ModuleAddress(), randMint) - - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - moduleName := md.RandModule() - - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, nil - }, - result: true, - }, - - { - name: "failed - token pair not found", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - suite.MintERC20Token(signer, pair.GetERC20Contract(), suite.App.Erc20Keeper.ModuleAddress(), randMint) - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - moduleName := md.RandModule() - token := helpers.GenHexAddress() - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - token, - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, []string{token.String()} - }, - error: func(args []string) string { - return fmt.Sprintf("token pair not found: %s", args[0]) - }, - result: false, - }, - { - name: "failed - not approve", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - suite.MintERC20Token(signer, pair.GetERC20Contract(), suite.App.Erc20Keeper.ModuleAddress(), randMint) - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - moduleName := md.RandModule() - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, nil - }, - error: func(args []string) string { - return "call transferFrom: execution reverted" - }, - result: false, - }, - - { - name: "contract - ok", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - suite.MintERC20Token(signer, pair.GetERC20Contract(), suite.App.Erc20Keeper.ModuleAddress(), randMint) - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), suite.crosschain, randMint) - allowance := suite.ERC20Allowance(pair.GetERC20Contract(), signer.Address(), suite.crosschain) - suite.Require().Equal(randMint.String(), allowance.String()) - - moduleName := md.RandModule() - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - data, err := contract.MustABIJson(testcontract.CrossChainTestMetaData.ABI).Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - amount, - fee, - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, nil - }, - result: true, - }, - { - name: "contract - ok - no fee", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - suite.MintERC20Token(signer, pair.GetERC20Contract(), suite.App.Erc20Keeper.ModuleAddress(), randMint) - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), suite.crosschain, randMint) - allowance := suite.ERC20Allowance(pair.GetERC20Contract(), signer.Address(), suite.crosschain) - suite.Require().Equal(randMint.String(), allowance.String()) - - moduleName := md.RandModule() - data, err := contract.MustABIJson(testcontract.CrossChainTestMetaData.ABI).Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, nil - }, - result: true, - }, - - { - name: "contract - failed - token pair not found", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - erc20Token, err := suite.DeployContract(signer.Address()) - suite.Require().NoError(err) - suite.MintERC20Token(signer, erc20Token, signer.Address(), randMint) - suite.ERC20Approve(signer, erc20Token, suite.crosschain, randMint) - - moduleName := md.RandModule() - data, err := contract.MustABIJson(testcontract.CrossChainTestMetaData.ABI).Pack( - "crossChain", - erc20Token, - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, []string{erc20Token.String()} - }, - error: func(args []string) string { - return fmt.Sprintf("token pair not found: %s", args[0]) - }, - result: false, - }, - { - name: "contract - failed - not approve", - malleate: func(pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *types.TokenPair, *big.Int, string, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - suite.MintERC20Token(signer, pair.GetERC20Contract(), suite.App.Erc20Keeper.ModuleAddress(), randMint) - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - moduleName := md.RandModule() - data, err := contract.MustABIJson(testcontract.CrossChainTestMetaData.ABI).Pack( - "crossChain", - pair.GetERC20Contract(), - helpers.GenExternalAddr(moduleName), - randMint, - big.NewInt(0), - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - return data, pair, big.NewInt(0), moduleName, nil - }, - error: func(args []string) string { - return "transfer amount exceeds allowance" - }, - result: false, - }, - } - - for _, tc := range testCases { - suite.Run(fmt.Sprintf("Case %s", tc.name), func() { - signer := suite.RandSigner() - // token pair - md := suite.GenerateCrossChainDenoms() - - // deploy fip20 external - fip20External, err := suite.App.Erc20Keeper.DeployUpgradableToken(suite.Ctx, signer.Address(), "Test token", "TEST", 18) - suite.Require().NoError(err) - // token pair - pair, err := suite.App.Erc20Keeper.RegisterNativeERC20(suite.Ctx, fip20External, md.GetMetadata().DenomUnits[0].Aliases...) - suite.Require().NoError(err) - - randMint := big.NewInt(int64(tmrand.Uint32() + 10)) - suite.MintLockNativeTokenToModule(md.GetMetadata(), sdkmath.NewIntFromBigInt(randMint)) - - chainBalances := suite.App.BankKeeper.GetAllBalances(suite.Ctx, signer.AccAddress()) - suite.Require().True(chainBalances.IsZero(), chainBalances.String()) - balance := suite.BalanceOf(pair.GetERC20Contract(), signer.Address()) - suite.Require().True(balance.Cmp(big.NewInt(0)) == 0, balance.String()) - - packData, newPair, value, moduleName, errArgs := tc.malleate(pair, md, signer, randMint) - - contractAddr := crosschaintypes.GetAddress() - addrQuery := signer.Address() - if strings.HasPrefix(tc.name, "contract") { - contractAddr = suite.crosschain - addrQuery = suite.crosschain - } - - queryServer := crosschainkeeper.NewQueryServerImpl(suite.CrossChainKeepers()[moduleName]) - resp, err := queryServer.GetPendingSendToExternal(suite.Ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: moduleName, - SenderAddress: sdk.AccAddress(addrQuery.Bytes()).String(), - }) - suite.Require().NoError(err) - suite.Require().Equal(0, len(resp.UnbatchedTransfers)) - suite.Require().Equal(0, len(resp.TransfersInBatches)) - - totalBefore, err := suite.App.BankKeeper.TotalSupply(suite.Ctx, &banktypes.QueryTotalSupplyRequest{}) - suite.Require().NoError(err) - - res := suite.EthereumTx(signer, contractAddr, value, packData) - - if tc.result { - suite.Require().False(res.Failed(), res.VmError) - // signer balance zero - chainBalances := suite.App.BankKeeper.GetAllBalances(suite.Ctx, sdk.AccAddress(addrQuery.Bytes())) - suite.Require().True(chainBalances.IsZero(), chainBalances.String()) - balance := suite.BalanceOf(newPair.GetERC20Contract(), addrQuery) - suite.Require().True(balance.Cmp(big.NewInt(0)) == 0, balance.String()) - - manyToOne := make(map[string]bool) - suite.App.BankKeeper.IterateAllDenomMetaData(suite.Ctx, func(md banktypes.Metadata) bool { - if len(md.DenomUnits) > 0 && len(md.DenomUnits[0].Aliases) > 0 { - manyToOne[md.Base] = true - } - return false - }) - totalAfter, err := suite.App.BankKeeper.TotalSupply(suite.Ctx, &banktypes.QueryTotalSupplyRequest{}) - suite.Require().NoError(err) - - for _, coin := range totalAfter.Supply { - if manyToOne[coin.Denom] { - continue - } - expect := totalBefore.Supply.AmountOf(coin.Denom) - if coin.Denom == md.GetDenom(moduleName) { - suite.Require().Equal(coin.Amount.String(), expect.Add(sdkmath.NewIntFromBigInt(randMint)).String(), coin.Denom) - } else { - suite.Require().Equal(coin.Amount.String(), expect.String(), coin.Denom) - } - } - - // pending send to external - resp, err := queryServer.GetPendingSendToExternal(suite.Ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: moduleName, - SenderAddress: sdk.AccAddress(addrQuery.Bytes()).String(), - }) - suite.Require().NoError(err) - suite.Require().Equal(1, len(resp.UnbatchedTransfers)) - suite.Require().Equal(0, len(resp.TransfersInBatches)) - suite.Require().Equal(sdk.AccAddress(addrQuery.Bytes()).String(), resp.UnbatchedTransfers[0].Sender) - // NOTE: fee + amount == randMint - suite.Require().Equal(randMint.String(), resp.UnbatchedTransfers[0].Fee.Amount.Add(resp.UnbatchedTransfers[0].Token.Amount).BigInt().String()) - - if !strings.EqualFold(resp.UnbatchedTransfers[0].Token.Contract, strings.TrimPrefix(md.GetDenom(moduleName), moduleName)) { - tokenContract, found := suite.CrossChainKeepers()[moduleName].GetContractByBridgeDenom(suite.Ctx, newPair.Denom) - suite.Require().True(found) - suite.Require().Equal(resp.UnbatchedTransfers[0].Token.Contract, tokenContract, moduleName) - } - - for _, log := range res.Logs { - event := crosschaintypes.GetABI().Events["IncreaseBridgeFee"] - if log.Topics[0] == event.ID.String() { - suite.Require().Equal(3, len(log.Topics)) - suite.Require().Equal(log.Address, crosschaintypes.GetAddress().String()) - suite.Require().Equal(log.Topics[1], addrQuery.Hash().String()) - - unpack, err := event.Inputs.NonIndexed().Unpack(log.Data) - suite.Require().NoError(err) - denom := unpack[0].(string) - - if moduleName == ethtypes.ModuleName && value.Cmp(big.NewInt(0)) == 1 { - suite.Require().Equal(log.Topics[2], common.Address{}.Hash().String()) - suite.Require().Equal(fxtypes.DefaultDenom, denom) - } else { - suite.Require().Equal(log.Topics[2], newPair.GetERC20Contract().Hash().String()) - suite.Require().Equal(denom, newPair.GetDenom()) - } - - amount := unpack[2].(*big.Int) - fee := unpack[3].(*big.Int) - suite.Require().Equal(randMint.String(), big.NewInt(0).Add(amount, fee).String()) - target := unpack[4].([32]byte) - suite.Require().Equal(moduleName, fxtypes.Byte32ToString(target)) - memo := unpack[5].(string) - suite.Require().Equal("", memo) - } - } - } else { - suite.Error(res, errors.New(tc.error(errArgs))) - } - }) - } -} - //nolint:gocyclo func (suite *PrecompileTestSuite) TestCrossChainIBC() { testCases := []struct { @@ -1455,67 +101,6 @@ func (suite *PrecompileTestSuite) TestCrossChainIBC() { }, result: false, }, - { - name: "failed - not zero fee - ibc denom", - malleate: func(_ *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *big.Int, string, string, []string) { - sourcePort, sourceChannel := suite.RandTransferChannel() - tokenAddress := helpers.GenHexAddress() - denom, err := suite.CrossChainKeepers()[bsctypes.ModuleName].SetIbcDenomTrace(suite.Ctx, - tokenAddress.Hex(), hex.EncodeToString([]byte(fmt.Sprintf("%s/%s", sourcePort, sourceChannel)))) - suite.Require().NoError(err) - suite.AddBridgeToken(bsctypes.ModuleName, tokenAddress.Hex()) - - symbol := helpers.NewRandSymbol() - ibcMD := banktypes.Metadata{ - Description: "The cross chain token of the Function X", - DenomUnits: []*banktypes.DenomUnit{ - { - Denom: denom, - Exponent: 0, - }, - { - Denom: symbol, - Exponent: 18, - }, - }, - Base: denom, - Display: denom, - Name: fmt.Sprintf("%s Token", symbol), - Symbol: symbol, - } - pair, err := suite.App.Erc20Keeper.RegisterNativeCoin(suite.Ctx, ibcMD) - suite.Require().NoError(err) - - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - _, err = suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, - &types.MsgConvertCoin{Coin: coin, Receiver: signer.Address().Hex(), Sender: signer.AccAddress().String()}) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - prefix, recipient := suite.RandPrefixAndAddress() - - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - pair.GetERC20Contract(), - recipient, - amount, - fee, - fxtypes.MustStrToByte32(fmt.Sprintf("%s/%s/%s", prefix, sourcePort, sourceChannel)), - "ibc memo", - ) - suite.Require().NoError(err) - - return data, big.NewInt(0), sourcePort, sourceChannel, []string{sdk.Coin{Amount: sdkmath.NewIntFromBigInt(fee), Denom: denom}.String()} - }, - error: func(args []string) string { - return fmt.Sprintf("ibc transfer fee must be zero: %s", args[0]) - }, - result: false, - }, { name: "failed - not zero fee - origin token", malleate: func(_ *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *big.Int, string, string, []string) { @@ -1601,67 +186,6 @@ func (suite *PrecompileTestSuite) TestCrossChainIBC() { }, result: false, }, - { - name: "contract - failed - not zero fee - ibc denom", - malleate: func(_ *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *big.Int, string, string, []string) { - sourcePort, sourceChannel := suite.RandTransferChannel() - tokenAddress := helpers.GenHexAddress() - denom, err := suite.CrossChainKeepers()[bsctypes.ModuleName].SetIbcDenomTrace(suite.Ctx, - tokenAddress.Hex(), hex.EncodeToString([]byte(fmt.Sprintf("%s/%s", sourcePort, sourceChannel)))) - suite.Require().NoError(err) - suite.AddBridgeToken(bsctypes.ModuleName, tokenAddress.Hex()) - - symbol := helpers.NewRandSymbol() - ibcMD := banktypes.Metadata{ - Description: "The cross chain token of the Function X", - DenomUnits: []*banktypes.DenomUnit{ - { - Denom: denom, - Exponent: 0, - }, - { - Denom: symbol, - Exponent: 18, - }, - }, - Base: denom, - Display: denom, - Name: fmt.Sprintf("%s Token", symbol), - Symbol: symbol, - } - pair, err := suite.App.Erc20Keeper.RegisterNativeCoin(suite.Ctx, ibcMD) - suite.Require().NoError(err) - - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - _, err = suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, - &types.MsgConvertCoin{Coin: coin, Receiver: signer.Address().Hex(), Sender: signer.AccAddress().String()}) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), suite.crosschain, randMint) - - prefix, recipient := suite.RandPrefixAndAddress() - - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - data, err := contract.MustABIJson(testcontract.CrossChainTestMetaData.ABI).Pack( - "crossChain", - pair.GetERC20Contract(), - recipient, - amount, - fee, - fxtypes.MustStrToByte32(fmt.Sprintf("%s/%s/%s", prefix, sourcePort, sourceChannel)), - "ibc memo", - ) - suite.Require().NoError(err) - - return data, big.NewInt(0), sourcePort, sourceChannel, []string{sdk.Coin{Amount: sdkmath.NewIntFromBigInt(fee), Denom: denom}.String()} - }, - error: func(args []string) string { - return fmt.Sprintf("ibc transfer fee must be zero: %s", args[0]) - }, - result: false, - }, { name: "contract - failed - not zero fee - origin token", malleate: func(_ *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, *big.Int, string, string, []string) { diff --git a/x/crosschain/precompile/expected_keepers.go b/x/crosschain/precompile/expected_keepers.go index cede851d..c758cbb2 100644 --- a/x/crosschain/precompile/expected_keepers.go +++ b/x/crosschain/precompile/expected_keepers.go @@ -47,9 +47,6 @@ type AccountKeeper interface { } type CrosschainKeeper interface { - RemoveFromOutgoingPoolAndRefund(ctx sdk.Context, txID uint64, sender sdk.AccAddress) (sdk.Coin, error) - AddUnbatchedTxBridgeFee(ctx sdk.Context, txID uint64, sender sdk.AccAddress, addBridgeFee sdk.Coin) error - AddOutgoingBridgeCall(ctx sdk.Context, sender, refundAddr common.Address, baseCoins sdk.Coins, to common.Address, data, memo []byte, eventNonce uint64) (uint64, error) EvmToBaseCoin(ctx context.Context, tokenAddr string, amount *big.Int, holder common.Address) (sdk.Coin, error) ExecuteClaim(ctx sdk.Context, eventNonce uint64) error @@ -59,13 +56,9 @@ type CrosschainKeeper interface { GetOracle(ctx sdk.Context, oracleAddr sdk.AccAddress) (oracle crosschaintypes.Oracle, found bool) BaseCoinToIBCCoin(ctx context.Context, coin sdk.Coin, holder sdk.AccAddress, ibcTarget string) (sdk.Coin, error) - AddToOutgoingPool(ctx sdk.Context, sender sdk.AccAddress, receiver string, amount sdk.Coin, fee sdk.Coin) (uint64, error) + BuildOutgoingTxBatch(ctx sdk.Context, sender sdk.AccAddress, receiver string, amount sdk.Coin, fee sdk.Coin) (uint64, error) } type GovKeeper interface { CheckDisabledPrecompiles(ctx sdk.Context, contractAddress common.Address, methodId []byte) error } - -type CrossChainKeeper interface { - BaseCoinToIBCCoin(ctx context.Context, coin sdk.Coin, holder sdk.AccAddress, ibcTarget string) (sdk.Coin, error) -} diff --git a/x/crosschain/precompile/increase_bridge_fee.go b/x/crosschain/precompile/increase_bridge_fee.go deleted file mode 100644 index bb319521..00000000 --- a/x/crosschain/precompile/increase_bridge_fee.go +++ /dev/null @@ -1,130 +0,0 @@ -package precompile - -import ( - "errors" - "fmt" - "math/big" - - sdkmath "cosmossdk.io/math" - sdk "github.com/cosmos/cosmos-sdk/types" - "github.com/ethereum/go-ethereum/accounts/abi" - "github.com/ethereum/go-ethereum/common" - "github.com/ethereum/go-ethereum/core/vm" - - fxcontract "github.com/functionx/fx-core/v8/contract" - fxtypes "github.com/functionx/fx-core/v8/types" - crosschaintypes "github.com/functionx/fx-core/v8/x/crosschain/types" - evmtypes "github.com/functionx/fx-core/v8/x/evm/types" -) - -// Deprecated: please use BridgeCallMethod -type IncreaseBridgeFeeMethod struct { - *Keeper - abi.Method - abi.Event -} - -// Deprecated: please use BridgeCallMethod -func NewIncreaseBridgeFeeMethod(keeper *Keeper) *IncreaseBridgeFeeMethod { - return &IncreaseBridgeFeeMethod{ - Keeper: keeper, - Method: crosschaintypes.GetABI().Methods["increaseBridgeFee"], - Event: crosschaintypes.GetABI().Events["IncreaseBridgeFee"], - } -} - -func (m *IncreaseBridgeFeeMethod) IsReadonly() bool { - return false -} - -func (m *IncreaseBridgeFeeMethod) GetMethodId() []byte { - return m.Method.ID -} - -func (m *IncreaseBridgeFeeMethod) RequiredGas() uint64 { - return 40_000 -} - -func (m *IncreaseBridgeFeeMethod) Run(evm *vm.EVM, contract *vm.Contract) ([]byte, error) { - if m.router == nil { - return nil, errors.New("cross chain router empty") - } - - args, err := m.UnpackInput(contract.Input) - if err != nil { - return nil, err - } - - fxTarget := fxtypes.ParseFxTarget(args.Chain) - route, has := m.router.GetRoute(fxTarget.GetTarget()) - if !has { - return nil, fmt.Errorf("chain not support: %s", args.Chain) - } - - stateDB := evm.StateDB.(evmtypes.ExtStateDB) - if err = stateDB.ExecuteNativeAction(contract.Address(), nil, func(ctx sdk.Context) error { - value := contract.Value() - sender := contract.Caller() - totalCoin := sdk.Coin{} - if value.Cmp(big.NewInt(0)) == 1 && fxcontract.IsZeroEthAddress(args.Token) { - if args.Fee.Cmp(value) != 0 { - return errors.New("add bridge fee not equal msg.value") - } - totalCoin, err = m.handlerOriginToken(ctx, evm, sender, args.Fee) - if err != nil { - return err - } - } else { - totalCoin, err = m.handlerERC20Token(ctx, evm, sender, args.Token, args.Fee) - if err != nil { - return err - } - } - - // convert token to bridge fee token - feeCoin := sdk.NewCoin(totalCoin.Denom, sdkmath.NewIntFromBigInt(args.Fee)) - addBridgeFee, err := m.erc20Keeper.ConvertDenomToTarget(ctx, sender.Bytes(), feeCoin, fxTarget) - if err != nil { - return err - } - - if err = route.AddUnbatchedTxBridgeFee(ctx, args.TxID.Uint64(), sender.Bytes(), addBridgeFee); err != nil { - return err - } - - data, topic, err := m.NewIncreaseBridgeFeeEvent(args, sender) - if err != nil { - return err - } - EmitEvent(evm, data, topic) - return nil - }); err != nil { - return nil, err - } - - return m.PackOutput(true) -} - -func (m *IncreaseBridgeFeeMethod) NewIncreaseBridgeFeeEvent(args *crosschaintypes.IncreaseBridgeFeeArgs, sender common.Address) (data []byte, topic []common.Hash, err error) { - return evmtypes.PackTopicData(m.Event, []common.Hash{sender.Hash(), args.Token.Hash()}, args.Chain, args.TxID, args.Fee) -} - -func (m *IncreaseBridgeFeeMethod) PackInput(chainName string, txId *big.Int, token common.Address, fee *big.Int) ([]byte, error) { - data, err := m.Method.Inputs.Pack(chainName, txId, token, fee) - if err != nil { - return nil, err - } - return append(m.GetMethodId(), data...), nil -} - -func (m *IncreaseBridgeFeeMethod) UnpackInput(data []byte) (*crosschaintypes.IncreaseBridgeFeeArgs, error) { - args := new(crosschaintypes.IncreaseBridgeFeeArgs) - if err := evmtypes.ParseMethodArgs(m.Method, args, data[4:]); err != nil { - return nil, err - } - return args, nil -} - -func (m *IncreaseBridgeFeeMethod) PackOutput(success bool) ([]byte, error) { - return m.Method.Outputs.Pack(success) -} diff --git a/x/crosschain/precompile/increase_bridgefee_test.go b/x/crosschain/precompile/increase_bridgefee_test.go deleted file mode 100644 index 576a3889..00000000 --- a/x/crosschain/precompile/increase_bridgefee_test.go +++ /dev/null @@ -1,758 +0,0 @@ -package precompile_test - -import ( - "encoding/hex" - "errors" - "fmt" - "math/big" - "strings" - "testing" - - sdkmath "cosmossdk.io/math" - tmrand "github.com/cometbft/cometbft/libs/rand" - sdk "github.com/cosmos/cosmos-sdk/types" - banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" - "github.com/ethereum/go-ethereum/common" - "github.com/stretchr/testify/require" - - "github.com/functionx/fx-core/v8/testutil/helpers" - fxtypes "github.com/functionx/fx-core/v8/types" - bsctypes "github.com/functionx/fx-core/v8/x/bsc/types" - crosschainkeeper "github.com/functionx/fx-core/v8/x/crosschain/keeper" - "github.com/functionx/fx-core/v8/x/crosschain/precompile" - crosschaintypes "github.com/functionx/fx-core/v8/x/crosschain/types" - "github.com/functionx/fx-core/v8/x/erc20/types" - ethtypes "github.com/functionx/fx-core/v8/x/eth/types" -) - -func TestIncreaseBridgeFeeABI(t *testing.T) { - increaseBridgeFee := precompile.NewIncreaseBridgeFeeMethod(nil) - - require.Equal(t, 4, len(increaseBridgeFee.Method.Inputs)) - require.Equal(t, 1, len(increaseBridgeFee.Method.Outputs)) - - require.Equal(t, 5, len(increaseBridgeFee.Event.Inputs)) -} - -func (suite *PrecompileTestSuite) TestIncreaseBridgeFee() { - // todo fix this test - suite.T().SkipNow() - randBridgeFee := big.NewInt(int64(tmrand.Uint32() + 10)) - crossChainTxFunc := func(signer *helpers.Signer, contact common.Address, moduleName string, amount, fee, value *big.Int) { - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - contact, - helpers.GenExternalAddr(moduleName), - amount, - fee, - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - res := suite.EthereumTx(signer, crosschaintypes.GetAddress(), value, data) - suite.Require().False(res.Failed(), res.VmError) - } - increaseBridgeFeeFunc := func(moduleName string, pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - queryServer := crosschainkeeper.NewQueryServerImpl(suite.CrossChainKeepers()[moduleName]) - pendingTx, err := queryServer.GetPendingSendToExternal(suite.Ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: moduleName, - SenderAddress: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - suite.Require().Equal(1, len(pendingTx.UnbatchedTransfers)) - totalAmount := pendingTx.UnbatchedTransfers[0].Token.Amount.Add(pendingTx.UnbatchedTransfers[0].Fee.Amount) - suite.Require().Equal(randMint.String(), totalAmount.String()) - - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randBridgeFee)) - suite.MintToken(signer.AccAddress(), coin) - _, err = suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randBridgeFee) - - data, err := crosschaintypes.GetABI().Pack( - "increaseBridgeFee", - moduleName, - big.NewInt(int64(pendingTx.UnbatchedTransfers[0].Id)), - pair.GetERC20Contract(), - randBridgeFee, - ) - suite.Require().NoError(err) - return data, nil - } - - testCases := []struct { - name string - prepare func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) - malleate func(moduleName string, pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) - error func(args []string) string - result bool - }{ - { - name: "ok - address + erc20 token", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - crossChainTxFunc(signer, pair.GetERC20Contract(), moduleName, randMint, big.NewInt(0), big.NewInt(0)) - return pair, moduleName, "" - }, - malleate: increaseBridgeFeeFunc, - result: true, - }, - { - name: "ok - address + evm token", - prepare: func(_ *types.TokenPair, _ string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - moduleName := ethtypes.ModuleName - - suite.AddFXBridgeToken(helpers.GenHexAddress().String()) - - coin := sdk.NewCoin(fxtypes.DefaultDenom, sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - - pair, found := suite.App.Erc20Keeper.GetTokenPair(suite.Ctx, fxtypes.DefaultDenom) - suite.Require().True(found) - - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - - crossChainTxFunc(signer, common.Address{}, moduleName, amount, fee, randMint) - - return &pair, moduleName, fxtypes.DefaultDenom - }, - malleate: increaseBridgeFeeFunc, - result: true, - }, - { - name: "ok - address + origin token", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - suite.CrossChainKeepers()[moduleName].AddBridgeToken(suite.Ctx, helpers.GenHexAddress().String(), pair.GetDenom()) - - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - - // convert denom to many - fxTarget := fxtypes.ParseFxTarget(moduleName) - targetCoin, err := suite.App.Erc20Keeper.ConvertDenomToTarget(suite.Ctx, signer.AccAddress(), - sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)), fxTarget) - suite.Require().NoError(err) - - _, err = suite.CrossChainKeepers()[moduleName].AddToOutgoingPool(suite.Ctx, - signer.AccAddress(), signer.Address().String(), - sdk.NewCoin(targetCoin.Denom, sdkmath.NewIntFromBigInt(amount)), - sdk.NewCoin(targetCoin.Denom, sdkmath.NewIntFromBigInt(fee))) - suite.Require().NoError(err) - - return pair, moduleName, "" - }, - malleate: increaseBridgeFeeFunc, - result: true, - }, - { - name: "ok - address + wrapper origin token", - prepare: func(_ *types.TokenPair, _ string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - moduleName := ethtypes.ModuleName - pair, found := suite.App.Erc20Keeper.GetTokenPair(suite.Ctx, fxtypes.DefaultDenom) - suite.Require().True(found) - - suite.AddFXBridgeToken(helpers.GenHexAddress().String()) - - coin := sdk.NewCoin(fxtypes.DefaultDenom, sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - fee := big.NewInt(1) - amount := big.NewInt(0).Sub(randMint, fee) - - crossChainTxFunc(signer, pair.GetERC20Contract(), moduleName, amount, fee, big.NewInt(0)) - - return &pair, moduleName, fxtypes.DefaultDenom - }, - malleate: increaseBridgeFeeFunc, - result: true, - }, - { - name: "ok - address + ibc token", - prepare: func(_ *types.TokenPair, _ string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - tokenAddress := helpers.GenHexAddress() - bridgeDenom := crosschaintypes.NewBridgeDenom(bsctypes.ModuleName, tokenAddress.Hex()) - suite.CrossChainKeepers()[bsctypes.ModuleName].AddBridgeToken(suite.Ctx, bridgeDenom, bridgeDenom) - - symbol := helpers.NewRandSymbol() - ibcMD := banktypes.Metadata{ - Description: "The cross chain token of the Function X", - DenomUnits: []*banktypes.DenomUnit{ - { - Denom: bridgeDenom, - Exponent: 0, - }, - { - Denom: symbol, - Exponent: 18, - }, - }, - Base: bridgeDenom, - Display: bridgeDenom, - Name: fmt.Sprintf("%s Token", symbol), - Symbol: symbol, - } - pair, err := suite.App.Erc20Keeper.RegisterNativeCoin(suite.Ctx, ibcMD) - suite.Require().NoError(err) - - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - suite.MintToken(signer.AccAddress(), coin) - _, err = suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, - &types.MsgConvertCoin{Coin: coin, Receiver: signer.Address().Hex(), Sender: signer.AccAddress().String()}) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - crossChainTxFunc(signer, pair.GetERC20Contract(), bsctypes.ModuleName, randMint, big.NewInt(0), big.NewInt(0)) - - return pair, bsctypes.ModuleName, "" - }, - malleate: increaseBridgeFeeFunc, - result: true, - }, - { - name: "failed - invalid chain name", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - return pair, moduleName, "" - }, - malleate: func(moduleName string, pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - chain := "123" - data, err := crosschaintypes.GetABI().Pack( - "increaseBridgeFee", - chain, - big.NewInt(1), - pair.GetERC20Contract(), - randBridgeFee, - ) - suite.Require().NoError(err) - return data, []string{chain} - }, - error: func(args []string) string { - return fmt.Sprintf("invalid module name: %s", args[0]) - }, - result: false, - }, - { - name: "failed - invalid tx id", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - return pair, moduleName, "" - }, - malleate: func(moduleName string, pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - txID := big.NewInt(0) - data, err := crosschaintypes.GetABI().Pack( - "increaseBridgeFee", - moduleName, - txID, - pair.GetERC20Contract(), - randBridgeFee, - ) - suite.Require().NoError(err) - return data, []string{txID.String()} - }, - error: func(args []string) string { - return "invalid tx id" - }, - result: false, - }, - { - name: "failed - invalid bridge fee", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - return pair, moduleName, "" - }, - malleate: func(moduleName string, pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - fee := big.NewInt(0) - data, err := crosschaintypes.GetABI().Pack( - "increaseBridgeFee", - moduleName, - big.NewInt(1), - pair.GetERC20Contract(), - fee, - ) - suite.Require().NoError(err) - return data, []string{fee.String()} - }, - error: func(args []string) string { - return "invalid add bridge fee" - }, - result: false, - }, - { - name: "failed - not approve token", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - return pair, moduleName, "" - }, - malleate: func(moduleName string, pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - data, err := crosschaintypes.GetABI().Pack( - "increaseBridgeFee", - moduleName, - big.NewInt(1), - pair.GetERC20Contract(), - randBridgeFee, - ) - suite.Require().NoError(err) - return data, []string{} - }, - error: func(args []string) string { - return "call transferFrom: execution reverted" - }, - result: false, - }, - { - name: "failed - tx id not found", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - return pair, moduleName, "" - }, - malleate: func(moduleName string, pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randBridgeFee)) - suite.MintToken(signer.AccAddress(), coin) - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randBridgeFee) - - txID := big.NewInt(10) - data, err := crosschaintypes.GetABI().Pack( - "increaseBridgeFee", - moduleName, - txID, - pair.GetERC20Contract(), - randBridgeFee, - ) - suite.Require().NoError(err) - return data, []string{txID.String()} - }, - error: func(args []string) string { - return fmt.Sprintf("txId %s not in unbatched index! Must be in a batch!: invalid", args[0]) - }, - result: false, - }, - } - - for _, tc := range testCases { - suite.Run(fmt.Sprintf("Case %s", tc.name), func() { - signer := suite.RandSigner() - // token pair - md := suite.GenerateCrossChainDenoms() - pair, err := suite.App.Erc20Keeper.RegisterNativeCoin(suite.Ctx, md.GetMetadata()) - suite.Require().NoError(err) - randMint := big.NewInt(int64(tmrand.Uint32() + 10)) - suite.MintLockNativeTokenToModule(md.GetMetadata(), sdkmath.NewIntFromBigInt(big.NewInt(0).Add(randMint, randBridgeFee))) - moduleName := md.RandModule() - - pair, moduleName, evmToken := tc.prepare(pair, moduleName, signer, randMint) - - // check init balance zero - chainBalances := suite.App.BankKeeper.GetAllBalances(suite.Ctx, signer.AccAddress()) - suite.Require().True(chainBalances.IsZero(), chainBalances.String()) - balance := suite.BalanceOf(pair.GetERC20Contract(), signer.Address()) - suite.Require().True(balance.Cmp(big.NewInt(0)) == 0, balance.String()) - - // get total supply - totalBefore, err := suite.App.BankKeeper.TotalSupply(suite.Ctx, &banktypes.QueryTotalSupplyRequest{}) - suite.Require().NoError(err) - - packData, errArgs := tc.malleate(moduleName, pair, md, signer, randMint) - res := suite.EthereumTx(signer, crosschaintypes.GetAddress(), big.NewInt(0), packData) - - if tc.result { - suite.Require().False(res.Failed(), res.VmError) - - queryServer := crosschainkeeper.NewQueryServerImpl(suite.CrossChainKeepers()[moduleName]) - pendingTx, err := queryServer.GetPendingSendToExternal(suite.Ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: moduleName, - SenderAddress: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - suite.Require().Equal(1, len(pendingTx.UnbatchedTransfers)) - totalAmount := pendingTx.UnbatchedTransfers[0].Token.Amount.Add(pendingTx.UnbatchedTransfers[0].Fee.Amount) - suite.Require().Equal(big.NewInt(0).Add(randMint, randBridgeFee).String(), totalAmount.String()) - - totalAfter, err := suite.App.BankKeeper.TotalSupply(suite.Ctx, &banktypes.QueryTotalSupplyRequest{}) - suite.Require().NoError(err) - - for _, coin := range totalBefore.Supply { - if has, find := totalAfter.Supply.Find(coin.Denom); has { - if len(evmToken) > 0 && coin.Denom == evmToken { - suite.Require().Equal(big.NewInt(0).Add(randBridgeFee, coin.Amount.BigInt()).String(), find.Amount.String(), coin.Denom) - continue - } - suite.Require().Equal(coin.String(), find.String(), coin.Denom) - continue - } - suite.Require().Equal(coin.Amount.String(), randBridgeFee.String()) - } - - for _, log := range res.Logs { - event := crosschaintypes.GetABI().Events["IncreaseBridgeFee"] - if log.Topics[0] == event.ID.String() { - suite.Require().Equal(log.Address, crosschaintypes.GetAddress().String()) - suite.Require().Equal(log.Topics[1], signer.Address().Hash().String()) - suite.Require().Equal(log.Topics[2], pair.GetERC20Contract().Hash().String()) - unpack, err := event.Inputs.NonIndexed().Unpack(log.Data) - suite.Require().NoError(err) - chain := unpack[0].(string) - suite.Require().Equal(chain, moduleName) - txID := unpack[1].(*big.Int) - suite.Require().True(txID.Uint64() > 0) - fee := unpack[2].(*big.Int) - suite.Require().Equal(fee.String(), randBridgeFee.String()) - } - } - - } else { - suite.Error(res, errors.New(tc.error(errArgs))) - } - }) - } -} - -func (suite *PrecompileTestSuite) TestIncreaseBridgeFeeExternal() { - randBridgeFee := big.NewInt(int64(tmrand.Uint32() + 10)) - crossChainTxFunc := func(signer *helpers.Signer, contact common.Address, moduleName string, amount, fee, value *big.Int) { - data, err := crosschaintypes.GetABI().Pack( - "crossChain", - contact, - helpers.GenExternalAddr(moduleName), - amount, - fee, - fxtypes.MustStrToByte32(moduleName), - "", - ) - suite.Require().NoError(err) - - res := suite.EthereumTx(signer, crosschaintypes.GetAddress(), value, data) - suite.Require().False(res.Failed(), res.VmError) - } - increaseBridgeFeeFunc := func(moduleName string, pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - queryServer := crosschainkeeper.NewQueryServerImpl(suite.CrossChainKeepers()[moduleName]) - pendingTx, err := queryServer.GetPendingSendToExternal(suite.Ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: moduleName, - SenderAddress: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - suite.Require().Equal(1, len(pendingTx.UnbatchedTransfers)) - totalAmount := pendingTx.UnbatchedTransfers[0].Token.Amount.Add(pendingTx.UnbatchedTransfers[0].Fee.Amount) - suite.Require().Equal(randMint.String(), totalAmount.String()) - - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randBridgeFee)) - suite.MintToken(signer.AccAddress(), coin) - suite.MintERC20Token(signer, pair.GetERC20Contract(), suite.App.Erc20Keeper.ModuleAddress(), randBridgeFee) - - _, err = suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randBridgeFee) - - data, err := crosschaintypes.GetABI().Pack( - "increaseBridgeFee", - moduleName, - big.NewInt(int64(pendingTx.UnbatchedTransfers[0].Id)), - pair.GetERC20Contract(), - randBridgeFee, - ) - suite.Require().NoError(err) - return data, nil - } - - testCases := []struct { - name string - prepare func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) - malleate func(moduleName string, pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) - error func(args []string) string - result bool - }{ - { - name: "ok - address + erc20 token", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randMint)) - - suite.MintToken(signer.AccAddress(), coin) - suite.MintERC20Token(signer, pair.GetERC20Contract(), suite.App.Erc20Keeper.ModuleAddress(), randMint) - - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randMint) - - crossChainTxFunc(signer, pair.GetERC20Contract(), moduleName, randMint, big.NewInt(0), big.NewInt(0)) - return pair, moduleName, "" - }, - malleate: increaseBridgeFeeFunc, - result: true, - }, - { - name: "failed - invalid chain name", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - return pair, moduleName, "" - }, - malleate: func(moduleName string, pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - chain := "123" - data, err := crosschaintypes.GetABI().Pack( - "increaseBridgeFee", - chain, - big.NewInt(1), - pair.GetERC20Contract(), - randBridgeFee, - ) - suite.Require().NoError(err) - return data, []string{chain} - }, - error: func(args []string) string { - return fmt.Sprintf("invalid module name: %s", args[0]) - }, - result: false, - }, - { - name: "failed - invalid tx id", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - return pair, moduleName, "" - }, - malleate: func(moduleName string, pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - txID := big.NewInt(0) - data, err := crosschaintypes.GetABI().Pack( - "increaseBridgeFee", - moduleName, - txID, - pair.GetERC20Contract(), - randBridgeFee, - ) - suite.Require().NoError(err) - return data, []string{txID.String()} - }, - error: func(args []string) string { - return "invalid tx id" - }, - result: false, - }, - { - name: "failed - invalid bridge fee", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - return pair, moduleName, "" - }, - malleate: func(moduleName string, pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - fee := big.NewInt(0) - data, err := crosschaintypes.GetABI().Pack( - "increaseBridgeFee", - moduleName, - big.NewInt(1), - pair.GetERC20Contract(), - fee, - ) - suite.Require().NoError(err) - return data, []string{fee.String()} - }, - error: func(args []string) string { - return "invalid add bridge fee" - }, - result: false, - }, - { - name: "failed - not approve token", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - return pair, moduleName, "" - }, - malleate: func(moduleName string, pair *types.TokenPair, md Metadata, signer *helpers.Signer, randMint *big.Int) ([]byte, []string) { - data, err := crosschaintypes.GetABI().Pack( - "increaseBridgeFee", - moduleName, - big.NewInt(1), - pair.GetERC20Contract(), - randBridgeFee, - ) - suite.Require().NoError(err) - return data, []string{} - }, - error: func(args []string) string { - return "call transferFrom: execution reverted" - }, - result: false, - }, - { - name: "failed - tx id not found", - prepare: func(pair *types.TokenPair, moduleName string, signer *helpers.Signer, randMint *big.Int) (*types.TokenPair, string, string) { - return pair, moduleName, "" - }, - malleate: func(moduleName string, pair *types.TokenPair, md Metadata, signer *helpers.Signer, _ *big.Int) ([]byte, []string) { - coin := sdk.NewCoin(pair.GetDenom(), sdkmath.NewIntFromBigInt(randBridgeFee)) - suite.MintToken(signer.AccAddress(), coin) - suite.MintERC20Token(signer, pair.GetERC20Contract(), suite.App.Erc20Keeper.ModuleAddress(), randBridgeFee) - _, err := suite.App.Erc20Keeper.ConvertCoin(suite.Ctx, &types.MsgConvertCoin{ - Coin: coin, - Receiver: signer.Address().Hex(), - Sender: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - - suite.ERC20Approve(signer, pair.GetERC20Contract(), crosschaintypes.GetAddress(), randBridgeFee) - - txID := big.NewInt(10) - data, err := crosschaintypes.GetABI().Pack( - "increaseBridgeFee", - moduleName, - txID, - pair.GetERC20Contract(), - randBridgeFee, - ) - suite.Require().NoError(err) - return data, []string{txID.String()} - }, - error: func(args []string) string { - return fmt.Sprintf("txId %s not in unbatched index! Must be in a batch!: invalid", args[0]) - }, - result: false, - }, - } - - for _, tc := range testCases { - suite.Run(fmt.Sprintf("Case %s", tc.name), func() { - signer := suite.RandSigner() - // token pair - md := suite.GenerateCrossChainDenoms() - - // deploy fip20 external - fip20External, err := suite.App.Erc20Keeper.DeployUpgradableToken(suite.Ctx, signer.Address(), "Test token", "TEST", 18) - suite.Require().NoError(err) - // token pair - pair, err := suite.App.Erc20Keeper.RegisterNativeERC20(suite.Ctx, fip20External, md.GetMetadata().DenomUnits[0].Aliases...) - suite.Require().NoError(err) - - randMint := big.NewInt(int64(tmrand.Uint32() + 10)) - suite.MintLockNativeTokenToModule(md.GetMetadata(), sdkmath.NewIntFromBigInt(big.NewInt(0).Add(randMint, randBridgeFee))) - moduleName := md.RandModule() - - pair, moduleName, _ = tc.prepare(pair, moduleName, signer, randMint) - - // check init balance zero - chainBalances := suite.App.BankKeeper.GetAllBalances(suite.Ctx, signer.AccAddress()) - suite.Require().True(chainBalances.IsZero(), chainBalances.String()) - balance := suite.BalanceOf(pair.GetERC20Contract(), signer.Address()) - suite.Require().True(balance.Cmp(big.NewInt(0)) == 0, balance.String()) - - // get total supply - totalBefore, err := suite.App.BankKeeper.TotalSupply(suite.Ctx, &banktypes.QueryTotalSupplyRequest{}) - suite.Require().NoError(err) - - packData, errArgs := tc.malleate(moduleName, pair, md, signer, randMint) - res := suite.EthereumTx(signer, crosschaintypes.GetAddress(), big.NewInt(0), packData) - - if tc.result { - suite.Require().False(res.Failed(), res.VmError) - - queryServer := crosschainkeeper.NewQueryServerImpl(suite.CrossChainKeepers()[moduleName]) - pendingTx, err := queryServer.GetPendingSendToExternal(suite.Ctx, - &crosschaintypes.QueryPendingSendToExternalRequest{ - ChainName: moduleName, - SenderAddress: signer.AccAddress().String(), - }) - suite.Require().NoError(err) - suite.Require().Equal(1, len(pendingTx.UnbatchedTransfers)) - totalAmount := pendingTx.UnbatchedTransfers[0].Token.Amount.Add(pendingTx.UnbatchedTransfers[0].Fee.Amount) - suite.Require().Equal(big.NewInt(0).Add(randMint, randBridgeFee).String(), totalAmount.String()) - - totalAfter, err := suite.App.BankKeeper.TotalSupply(suite.Ctx, &banktypes.QueryTotalSupplyRequest{}) - suite.Require().NoError(err) - - for _, coin := range totalBefore.Supply { - if pair.GetDenom() == coin.Denom { - find, expect := totalAfter.Supply.Find(coin.Denom) - suite.True(find) - suite.Require().Equal(coin.Amount.Add(sdkmath.NewIntFromBigInt(randBridgeFee)).String(), expect.Amount.String(), coin.Denom) - continue - } - if pair.IsNativeERC20() && strings.HasPrefix(coin.Denom, moduleName) { - suite.Equal(totalAfter.Supply.AmountOf(coin.Denom), coin.Amount.Add(sdkmath.NewIntFromBigInt(randBridgeFee))) - continue - } - suite.Equal(coin.Amount.String(), totalAfter.Supply.AmountOf(coin.Denom).String(), coin.Denom) - } - - for _, log := range res.Logs { - event := crosschaintypes.GetABI().Events["IncreaseBridgeFee"] - if log.Topics[0] == event.ID.String() { - suite.Require().Equal(log.Address, crosschaintypes.GetAddress().String()) - suite.Require().Equal(log.Topics[1], signer.Address().Hash().String()) - suite.Require().Equal(log.Topics[2], pair.GetERC20Contract().Hash().String()) - unpack, err := event.Inputs.NonIndexed().Unpack(log.Data) - suite.Require().NoError(err) - chain := unpack[0].(string) - suite.Require().Equal(chain, moduleName) - txID := unpack[1].(*big.Int) - suite.Require().True(txID.Uint64() > 0) - fee := unpack[2].(*big.Int) - suite.Require().Equal(fee.String(), randBridgeFee.String()) - } - } - - } else { - suite.Error(res, errors.New(tc.error(errArgs))) - } - }) - } -} - -func TestNewIncreaseBridgeFeeEvent(t *testing.T) { - method := precompile.NewIncreaseBridgeFeeMethod(nil) - args := &crosschaintypes.IncreaseBridgeFeeArgs{ - Chain: "eth", - TxID: big.NewInt(1000), - Token: common.BytesToAddress([]byte{0x11}), - Fee: big.NewInt(2000), - } - sender := common.BytesToAddress([]byte{0x1}) - - data, topic, err := method.NewIncreaseBridgeFeeEvent(args, sender) - require.NoError(t, err) - - expectedData := "000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000003e800000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000000036574680000000000000000000000000000000000000000000000000000000000" - expectedTopic := []common.Hash{ - common.HexToHash("0x4b4d0e64eb77c0f61892107908295f09b3e381c50c655f4a73a4ad61c07350a0"), - common.HexToHash("0000000000000000000000000000000000000000000000000000000000000001"), - common.HexToHash("0000000000000000000000000000000000000000000000000000000000000011"), - } - - require.Equal(t, expectedData, hex.EncodeToString(data)) - require.Equal(t, expectedTopic, topic) -} diff --git a/x/crosschain/precompile/keeper.go b/x/crosschain/precompile/keeper.go index c1d823cd..b168daae 100644 --- a/x/crosschain/precompile/keeper.go +++ b/x/crosschain/precompile/keeper.go @@ -133,12 +133,12 @@ func (c *Keeper) outgoingTransfer( if !has { return errors.New("invalid target") } - txID, err := route.AddToOutgoingPool(ctx, from, to, amount, fee) + batchNonce, err := route.BuildOutgoingTxBatch(ctx, from, to, amount, fee) if err != nil { return err } if !originToken { - c.erc20Keeper.SetOutgoingTransferRelation(ctx, fxTarget.GetTarget(), txID) + c.erc20Keeper.SetOutgoingTransferRelation(ctx, fxTarget.GetTarget(), batchNonce) } return nil } diff --git a/x/crosschain/types/events.go b/x/crosschain/types/events.go index 3da0113d..b39d6748 100644 --- a/x/crosschain/types/events.go +++ b/x/crosschain/types/events.go @@ -15,11 +15,8 @@ const ( AttributeKeyOracleSetLen = "oracle_set_len" EventTypeSendToExternal = "send_to_external" - EventTypeSendToExternalCanceled = "send_to_external_canceled" - EventTypeIncreaseBridgeFee = "increase_bridge_fee" AttributeKeyOutgoingTxID = "outgoing_tx_id" AttributeKeyPendingOutgoingTxID = "pending_outgoing_tx_id" - AttributeKeyIncreaseFee = "increase_fee" EventTypeOutgoingBatch = "outgoing_batch" EventTypeOutgoingBatchCanceled = "outgoing_batch_canceled" diff --git a/x/crosschain/types/key.go b/x/crosschain/types/key.go index 402261f1..12898c68 100644 --- a/x/crosschain/types/key.go +++ b/x/crosschain/types/key.go @@ -204,7 +204,7 @@ func GetDenomToTokenKey(tokenContract string) []byte { return append(DenomToTokenKey, []byte(tokenContract)...) } -// Deprecated GetTokenToDenomKey returns the following key format +// Deprecated: GetTokenToDenomKey returns the following key format func GetTokenToDenomKey(denom string) []byte { return append(TokenToDenomKey, []byte(denom)...) } diff --git a/x/crosschain/types/legacy.pb.go b/x/crosschain/types/legacy.pb.go index d8173bb2..e16192a5 100644 --- a/x/crosschain/types/legacy.pb.go +++ b/x/crosschain/types/legacy.pb.go @@ -249,7 +249,7 @@ func (m *MsgAddOracleDeposit) GetChainName() string { return "" } -// Deprecated: Please use MsgBridgeCall +// Deprecated: Please use precompile BridgeCall type MsgSendToExternal struct { Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` Dest string `protobuf:"bytes,2,opt,name=dest,proto3" json:"dest,omitempty"` @@ -328,7 +328,7 @@ func (m *MsgSendToExternal) GetChainName() string { // Deprecated: do not use type MsgSendToExternalResponse struct { - OutgoingTxId uint64 `protobuf:"varint,1,opt,name=outgoing_tx_id,json=outgoingTxId,proto3" json:"outgoing_tx_id,omitempty"` + BatchNonce uint64 `protobuf:"varint,1,opt,name=batch_nonce,json=batchNonce,proto3" json:"batch_nonce,omitempty"` } func (m *MsgSendToExternalResponse) Reset() { *m = MsgSendToExternalResponse{} } @@ -364,9 +364,9 @@ func (m *MsgSendToExternalResponse) XXX_DiscardUnknown() { var xxx_messageInfo_MsgSendToExternalResponse proto.InternalMessageInfo -func (m *MsgSendToExternalResponse) GetOutgoingTxId() uint64 { +func (m *MsgSendToExternalResponse) GetBatchNonce() uint64 { if m != nil { - return m.OutgoingTxId + return m.BatchNonce } return 0 } @@ -432,43 +432,6 @@ func (m *MsgCancelSendToExternal) GetChainName() string { return "" } -// Deprecated: do not use -type MsgCancelSendToExternalResponse struct { -} - -func (m *MsgCancelSendToExternalResponse) Reset() { *m = MsgCancelSendToExternalResponse{} } -func (m *MsgCancelSendToExternalResponse) String() string { return proto.CompactTextString(m) } -func (*MsgCancelSendToExternalResponse) ProtoMessage() {} -func (*MsgCancelSendToExternalResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{7} -} -func (m *MsgCancelSendToExternalResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgCancelSendToExternalResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgCancelSendToExternalResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *MsgCancelSendToExternalResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgCancelSendToExternalResponse.Merge(m, src) -} -func (m *MsgCancelSendToExternalResponse) XXX_Size() int { - return m.Size() -} -func (m *MsgCancelSendToExternalResponse) XXX_DiscardUnknown() { - xxx_messageInfo_MsgCancelSendToExternalResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgCancelSendToExternalResponse proto.InternalMessageInfo - // Deprecated: do not use type MsgRequestBatch struct { Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` @@ -483,7 +446,7 @@ func (m *MsgRequestBatch) Reset() { *m = MsgRequestBatch{} } func (m *MsgRequestBatch) String() string { return proto.CompactTextString(m) } func (*MsgRequestBatch) ProtoMessage() {} func (*MsgRequestBatch) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{8} + return fileDescriptor_26110436a8f12cc1, []int{7} } func (m *MsgRequestBatch) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -549,7 +512,7 @@ func (m *MsgRequestBatchResponse) Reset() { *m = MsgRequestBatchResponse func (m *MsgRequestBatchResponse) String() string { return proto.CompactTextString(m) } func (*MsgRequestBatchResponse) ProtoMessage() {} func (*MsgRequestBatchResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{9} + return fileDescriptor_26110436a8f12cc1, []int{8} } func (m *MsgRequestBatchResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -597,7 +560,7 @@ func (m *MsgIncreaseBridgeFee) Reset() { *m = MsgIncreaseBridgeFee{} } func (m *MsgIncreaseBridgeFee) String() string { return proto.CompactTextString(m) } func (*MsgIncreaseBridgeFee) ProtoMessage() {} func (*MsgIncreaseBridgeFee) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{10} + return fileDescriptor_26110436a8f12cc1, []int{9} } func (m *MsgIncreaseBridgeFee) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -654,43 +617,6 @@ func (m *MsgIncreaseBridgeFee) GetAddBridgeFee() types.Coin { return types.Coin{} } -// Deprecated: Do not use. -type MsgIncreaseBridgeFeeResponse struct { -} - -func (m *MsgIncreaseBridgeFeeResponse) Reset() { *m = MsgIncreaseBridgeFeeResponse{} } -func (m *MsgIncreaseBridgeFeeResponse) String() string { return proto.CompactTextString(m) } -func (*MsgIncreaseBridgeFeeResponse) ProtoMessage() {} -func (*MsgIncreaseBridgeFeeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{11} -} -func (m *MsgIncreaseBridgeFeeResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgIncreaseBridgeFeeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgIncreaseBridgeFeeResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *MsgIncreaseBridgeFeeResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgIncreaseBridgeFeeResponse.Merge(m, src) -} -func (m *MsgIncreaseBridgeFeeResponse) XXX_Size() int { - return m.Size() -} -func (m *MsgIncreaseBridgeFeeResponse) XXX_DiscardUnknown() { - xxx_messageInfo_MsgIncreaseBridgeFeeResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgIncreaseBridgeFeeResponse proto.InternalMessageInfo - // Deprecated: Do not use. type MsgOracleSetConfirmResponse struct { } @@ -699,7 +625,7 @@ func (m *MsgOracleSetConfirmResponse) Reset() { *m = MsgOracleSetConfirm func (m *MsgOracleSetConfirmResponse) String() string { return proto.CompactTextString(m) } func (*MsgOracleSetConfirmResponse) ProtoMessage() {} func (*MsgOracleSetConfirmResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{12} + return fileDescriptor_26110436a8f12cc1, []int{10} } func (m *MsgOracleSetConfirmResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -736,7 +662,7 @@ func (m *MsgConfirmBatchResponse) Reset() { *m = MsgConfirmBatchResponse func (m *MsgConfirmBatchResponse) String() string { return proto.CompactTextString(m) } func (*MsgConfirmBatchResponse) ProtoMessage() {} func (*MsgConfirmBatchResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{13} + return fileDescriptor_26110436a8f12cc1, []int{11} } func (m *MsgConfirmBatchResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -773,7 +699,7 @@ func (m *MsgBridgeCallConfirmResponse) Reset() { *m = MsgBridgeCallConfi func (m *MsgBridgeCallConfirmResponse) String() string { return proto.CompactTextString(m) } func (*MsgBridgeCallConfirmResponse) ProtoMessage() {} func (*MsgBridgeCallConfirmResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{14} + return fileDescriptor_26110436a8f12cc1, []int{12} } func (m *MsgBridgeCallConfirmResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -810,11 +736,9 @@ func init() { proto.RegisterType((*MsgSendToExternal)(nil), "fx.gravity.crosschain.v1.MsgSendToExternal") proto.RegisterType((*MsgSendToExternalResponse)(nil), "fx.gravity.crosschain.v1.MsgSendToExternalResponse") proto.RegisterType((*MsgCancelSendToExternal)(nil), "fx.gravity.crosschain.v1.MsgCancelSendToExternal") - proto.RegisterType((*MsgCancelSendToExternalResponse)(nil), "fx.gravity.crosschain.v1.MsgCancelSendToExternalResponse") proto.RegisterType((*MsgRequestBatch)(nil), "fx.gravity.crosschain.v1.MsgRequestBatch") proto.RegisterType((*MsgRequestBatchResponse)(nil), "fx.gravity.crosschain.v1.MsgRequestBatchResponse") proto.RegisterType((*MsgIncreaseBridgeFee)(nil), "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee") - proto.RegisterType((*MsgIncreaseBridgeFeeResponse)(nil), "fx.gravity.crosschain.v1.MsgIncreaseBridgeFeeResponse") proto.RegisterType((*MsgOracleSetConfirmResponse)(nil), "fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse") proto.RegisterType((*MsgConfirmBatchResponse)(nil), "fx.gravity.crosschain.v1.MsgConfirmBatchResponse") proto.RegisterType((*MsgBridgeCallConfirmResponse)(nil), "fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse") @@ -825,70 +749,68 @@ func init() { } var fileDescriptor_26110436a8f12cc1 = []byte{ - // 1005 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x56, 0xcf, 0x6f, 0x1b, 0x45, - 0x14, 0xf6, 0xda, 0xf9, 0x41, 0xc6, 0x69, 0x42, 0x97, 0x40, 0x9d, 0x90, 0xda, 0xe9, 0x2a, 0x11, - 0x21, 0xd0, 0x5d, 0x39, 0x48, 0xfc, 0xb0, 0x10, 0x52, 0x6c, 0x1a, 0xc9, 0x12, 0x6e, 0x2b, 0xb7, - 0x5c, 0xb8, 0x58, 0xe3, 0x9d, 0xe7, 0xf5, 0x0a, 0xef, 0x8c, 0x99, 0x19, 0x5b, 0xce, 0x15, 0x09, - 0x09, 0x71, 0xe2, 0x88, 0xc4, 0x25, 0x77, 0x24, 0xd4, 0x03, 0x57, 0x0e, 0xdc, 0x7a, 0xe0, 0x50, - 0x71, 0x42, 0x1c, 0x2a, 0x94, 0x1c, 0xca, 0x89, 0xbf, 0x01, 0xed, 0xcc, 0x6c, 0xba, 0xde, 0xc6, - 0x24, 0x51, 0x2f, 0xd6, 0xce, 0xf7, 0xde, 0xbc, 0xf9, 0xbe, 0xef, 0xbd, 0xb1, 0x06, 0xed, 0xf4, - 0x26, 0x5e, 0xc0, 0xf1, 0x38, 0x94, 0x47, 0x9e, 0xcf, 0x99, 0x10, 0x7e, 0x1f, 0x87, 0xd4, 0x1b, - 0x57, 0xbd, 0x01, 0x04, 0xd8, 0x3f, 0x72, 0x87, 0x9c, 0x49, 0x66, 0x97, 0x7a, 0x13, 0xd7, 0xa4, - 0xb9, 0xcf, 0xd3, 0xdc, 0x71, 0x75, 0x63, 0x7b, 0x66, 0x01, 0x79, 0x34, 0x04, 0xa1, 0xf7, 0x6f, - 0xac, 0x05, 0x2c, 0x60, 0xea, 0xd3, 0x8b, 0xbf, 0x0c, 0xba, 0x1e, 0x30, 0x16, 0x0c, 0xc0, 0x53, - 0xab, 0xee, 0xa8, 0xe7, 0x61, 0x6a, 0x0e, 0xdc, 0x28, 0xfb, 0x4c, 0x44, 0x4c, 0x78, 0x5d, 0x2c, - 0xc0, 0x1b, 0x57, 0xbb, 0x20, 0x71, 0xd5, 0xf3, 0x59, 0x48, 0x4d, 0xfc, 0x86, 0x89, 0x47, 0x22, - 0x88, 0xcf, 0x8a, 0x44, 0x90, 0xd4, 0xd4, 0x81, 0x8e, 0x3e, 0x4c, 0x2f, 0x4c, 0xe8, 0x3a, 0x8e, - 0x42, 0xca, 0x3c, 0xf5, 0xab, 0x21, 0xe7, 0x57, 0x0b, 0x6d, 0x36, 0x69, 0x28, 0x1b, 0x31, 0xf3, - 0x46, 0xcc, 0xfc, 0x3e, 0xe6, 0x38, 0x12, 0xf7, 0x39, 0x1b, 0x32, 0x81, 0x07, 0xf6, 0x1a, 0x9a, - 0x97, 0xa1, 0x1c, 0x40, 0xc9, 0xda, 0xb2, 0x76, 0x97, 0xda, 0x7a, 0x61, 0x6f, 0xa1, 0x22, 0x01, - 0xe1, 0xf3, 0x70, 0x28, 0x43, 0x46, 0x4b, 0x79, 0x15, 0x4b, 0x43, 0xf6, 0x87, 0x68, 0x61, 0xa8, - 0x2a, 0x95, 0x0a, 0x5b, 0xd6, 0x6e, 0x71, 0x7f, 0xcb, 0x9d, 0xe5, 0xa0, 0xab, 0x4f, 0x6c, 0x9b, - 0x7c, 0xfb, 0x26, 0x42, 0x2a, 0xd4, 0xa1, 0x38, 0x82, 0xd2, 0x9c, 0x2a, 0xbd, 0xa4, 0x90, 0xbb, - 0x38, 0x82, 0xda, 0xf2, 0xb7, 0xc7, 0x95, 0xdc, 0x0f, 0xc7, 0x95, 0xdc, 0x3f, 0xc7, 0x95, 0x9c, - 0xf3, 0xa3, 0x85, 0x36, 0x3e, 0x1f, 0x12, 0x2c, 0x41, 0x91, 0xbf, 0xc7, 0xb1, 0x3f, 0x80, 0x97, - 0x67, 0x5f, 0x42, 0x8b, 0x4c, 0x97, 0x2a, 0x15, 0xb6, 0x0a, 0xbb, 0x4b, 0xed, 0x64, 0x79, 0x35, - 0x76, 0x3f, 0xe7, 0xd1, 0x7a, 0x4b, 0x04, 0x0f, 0x40, 0xde, 0xe3, 0x7e, 0x1f, 0x84, 0xe4, 0x58, - 0x32, 0x7e, 0x40, 0x08, 0x07, 0x21, 0xec, 0x1d, 0xb4, 0xa2, 0xab, 0x76, 0xb0, 0x46, 0x0c, 0xcb, - 0x6b, 0x1a, 0x4d, 0xd2, 0xde, 0x42, 0xab, 0x5d, 0x1e, 0x92, 0x00, 0xf8, 0x59, 0x9e, 0x66, 0xbc, - 0x62, 0xe0, 0x24, 0xf1, 0x6d, 0xf4, 0x2a, 0x4c, 0x24, 0x70, 0x8a, 0x07, 0x67, 0x99, 0x05, 0x95, - 0xb9, 0x9a, 0xe0, 0x49, 0xea, 0x47, 0x68, 0x91, 0xc0, 0x90, 0x89, 0x50, 0x2a, 0x09, 0xc5, 0xfd, - 0x75, 0xd7, 0x4c, 0x4a, 0x3c, 0x6f, 0xae, 0x99, 0x37, 0xb7, 0xc1, 0x42, 0x5a, 0x9f, 0x7b, 0xfc, - 0xb4, 0x92, 0x6b, 0x27, 0xf9, 0x19, 0x03, 0xe6, 0xb3, 0x06, 0x7c, 0xfc, 0xf5, 0xb3, 0x47, 0x7b, - 0x19, 0x5d, 0xdf, 0x3d, 0x7b, 0xb4, 0xb7, 0x9d, 0xba, 0x1b, 0x33, 0x2d, 0x71, 0x7e, 0xb7, 0xd0, - 0x6b, 0x2d, 0x11, 0x1c, 0x10, 0xa2, 0x3b, 0xf9, 0xa9, 0x39, 0xf4, 0x92, 0x56, 0x7d, 0x80, 0x16, - 0x70, 0xc4, 0x46, 0x54, 0x2a, 0x87, 0x2e, 0xa1, 0xca, 0xa4, 0x67, 0x44, 0x15, 0xb2, 0xa2, 0xde, - 0x9f, 0x21, 0xaa, 0x3c, 0x2d, 0x2a, 0x4b, 0xdb, 0xf9, 0x26, 0x8f, 0xae, 0x2b, 0xb1, 0x94, 0x3c, - 0x64, 0x77, 0x4c, 0x0f, 0xec, 0x37, 0xd0, 0x82, 0x00, 0x4a, 0x80, 0x1b, 0x11, 0x66, 0x65, 0xdb, - 0x68, 0x8e, 0x80, 0x90, 0xa6, 0xbb, 0xea, 0x3b, 0xa5, 0xa8, 0x70, 0x35, 0x45, 0x9f, 0x20, 0xa4, - 0xc7, 0xa3, 0xd3, 0x03, 0xb8, 0x6c, 0x93, 0x97, 0xf4, 0x96, 0x43, 0x80, 0x8b, 0xda, 0xfc, 0x6e, - 0xec, 0x88, 0x21, 0x1e, 0x3b, 0xb1, 0x99, 0x6d, 0x6f, 0x5a, 0xb1, 0x73, 0x60, 0xae, 0x41, 0x1a, - 0x6c, 0x83, 0x18, 0x32, 0x2a, 0xc0, 0xde, 0x46, 0x2b, 0x6c, 0x24, 0x03, 0x16, 0xd2, 0xa0, 0x23, - 0x27, 0x9d, 0x90, 0x28, 0x5b, 0xe6, 0xda, 0xcb, 0x09, 0xfa, 0x70, 0xd2, 0x24, 0xce, 0x4f, 0x16, - 0xba, 0xd1, 0x12, 0x41, 0x03, 0x53, 0x1f, 0x06, 0x19, 0x43, 0x77, 0xd0, 0x8a, 0xe4, 0x98, 0x0a, - 0xec, 0xc7, 0x97, 0xf7, 0x79, 0x85, 0x6b, 0x29, 0xb4, 0x49, 0x52, 0xbe, 0xe7, 0xa7, 0x7c, 0xbf, - 0xa0, 0xf9, 0xfb, 0x19, 0xa9, 0xce, 0xb4, 0xd4, 0xf3, 0x18, 0x39, 0xb7, 0x50, 0x65, 0x46, 0x28, - 0x91, 0xed, 0xfc, 0x96, 0x47, 0xab, 0x2d, 0x11, 0xb4, 0xe1, 0xab, 0x11, 0x08, 0x59, 0xc7, 0xd2, - 0xef, 0xcf, 0x9c, 0x8c, 0x35, 0x34, 0x4f, 0x80, 0xb2, 0xc8, 0x10, 0xd7, 0x0b, 0xfb, 0x33, 0x54, - 0x8c, 0x42, 0x1a, 0x46, 0xa3, 0x48, 0xf5, 0x58, 0x11, 0xaf, 0xbf, 0x13, 0x37, 0xf2, 0xaf, 0xa7, - 0x95, 0xd7, 0x75, 0xab, 0x05, 0xf9, 0xd2, 0x0d, 0x99, 0x17, 0x61, 0xd9, 0x77, 0x9b, 0x54, 0xfe, - 0xf1, 0xcb, 0x6d, 0x64, 0x66, 0xa0, 0x49, 0x65, 0x1b, 0x99, 0xfd, 0x71, 0xc3, 0x2b, 0xa8, 0xd8, - 0x03, 0xe8, 0x70, 0xf0, 0x21, 0x1c, 0x27, 0xff, 0x6c, 0xa8, 0x07, 0xd0, 0xd6, 0xc8, 0x05, 0x13, - 0x61, 0x1f, 0xa2, 0x57, 0xe2, 0xb1, 0x52, 0x54, 0x16, 0xae, 0x4e, 0x65, 0x31, 0xde, 0x7c, 0x08, - 0x50, 0xdb, 0xcb, 0xd8, 0xbd, 0x31, 0x6d, 0x77, 0xda, 0x2f, 0xa7, 0xa6, 0x66, 0x22, 0x0d, 0x9d, - 0x4d, 0x55, 0x05, 0x15, 0xbb, 0x31, 0xd0, 0xa1, 0x8c, 0xfa, 0x60, 0x06, 0x02, 0x29, 0xe8, 0x6e, - 0x8c, 0x38, 0xff, 0x5a, 0x68, 0xad, 0x25, 0x82, 0x26, 0xf5, 0x39, 0x60, 0x01, 0xf5, 0x19, 0x93, - 0x6f, 0x65, 0x75, 0xbe, 0x38, 0x6c, 0xf9, 0xff, 0x1f, 0xb6, 0xc2, 0x54, 0x2b, 0xef, 0xa0, 0x15, - 0x4c, 0x48, 0xe7, 0xea, 0x77, 0x73, 0x19, 0x13, 0x72, 0x46, 0xb2, 0x56, 0xcd, 0xb8, 0x54, 0x99, - 0x76, 0xe9, 0x05, 0x55, 0x25, 0xcb, 0x71, 0xd0, 0xe6, 0x79, 0x91, 0xc4, 0xb1, 0x5a, 0xbe, 0x64, - 0x39, 0xb7, 0xd0, 0x9b, 0x2d, 0x11, 0xe8, 0x3f, 0xb1, 0x07, 0x20, 0x1b, 0x8c, 0xf6, 0x42, 0x1e, - 0x4d, 0xa5, 0xdc, 0xd4, 0xf7, 0x50, 0x47, 0xa6, 0x3c, 0x57, 0x61, 0x7d, 0x8a, 0xae, 0xde, 0xc0, - 0x83, 0xc1, 0x39, 0x25, 0xea, 0xcd, 0xc7, 0x27, 0x65, 0xeb, 0xc9, 0x49, 0xd9, 0xfa, 0xfb, 0xa4, - 0x6c, 0x7d, 0x7f, 0x5a, 0xce, 0x3d, 0x39, 0x2d, 0xe7, 0xfe, 0x3c, 0x2d, 0xe7, 0xbe, 0xf0, 0x82, - 0x50, 0xf6, 0x47, 0x5d, 0xd7, 0x67, 0x91, 0xd7, 0x1b, 0x51, 0x65, 0xe6, 0xc4, 0xeb, 0x4d, 0x6e, - 0xfb, 0x8c, 0x83, 0x37, 0x49, 0x3f, 0xb0, 0xd4, 0xeb, 0xaa, 0xbb, 0xa0, 0x9e, 0x31, 0xef, 0xfd, - 0x17, 0x00, 0x00, 0xff, 0xff, 0x8b, 0x04, 0x10, 0x1c, 0xc7, 0x09, 0x00, 0x00, + // 974 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x56, 0xcf, 0x6f, 0x1b, 0xc5, + 0x17, 0xf7, 0xda, 0x89, 0xf3, 0xcd, 0xb8, 0x4d, 0xbe, 0x5d, 0x02, 0x75, 0x4c, 0x6a, 0x9b, 0x55, + 0x23, 0x42, 0xa0, 0xbb, 0x72, 0x90, 0xf8, 0x61, 0x55, 0x48, 0xb5, 0x69, 0x24, 0x4b, 0xb8, 0xad, + 0x5c, 0xb8, 0x70, 0xb1, 0xc6, 0x3b, 0xcf, 0xeb, 0x15, 0xde, 0x19, 0x33, 0x33, 0xb6, 0x9c, 0x2b, + 0x12, 0x12, 0xe2, 0xc4, 0x11, 0x89, 0x4b, 0xee, 0x48, 0xa8, 0x07, 0xae, 0x1c, 0xb8, 0xf5, 0xc0, + 0xa1, 0xe2, 0x84, 0x38, 0x54, 0x28, 0x39, 0x94, 0x13, 0x7f, 0x03, 0xda, 0x99, 0xd9, 0xb0, 0xde, + 0xd6, 0x24, 0x11, 0x17, 0x6b, 0xe7, 0xbd, 0x37, 0x6f, 0x3e, 0x3f, 0xde, 0x58, 0x83, 0x76, 0x87, + 0x73, 0x2f, 0xe0, 0x78, 0x16, 0xca, 0x23, 0xcf, 0xe7, 0x4c, 0x08, 0x7f, 0x84, 0x43, 0xea, 0xcd, + 0x1a, 0xde, 0x18, 0x02, 0xec, 0x1f, 0xb9, 0x13, 0xce, 0x24, 0xb3, 0xcb, 0xc3, 0xb9, 0x6b, 0xca, + 0xdc, 0x7f, 0xca, 0xdc, 0x59, 0xa3, 0x72, 0x73, 0x69, 0x03, 0x79, 0x34, 0x01, 0xa1, 0xf7, 0x57, + 0xb6, 0x02, 0x16, 0x30, 0xf5, 0xe9, 0xc5, 0x5f, 0x26, 0xba, 0x1d, 0x30, 0x16, 0x8c, 0xc1, 0x53, + 0xab, 0xc1, 0x74, 0xe8, 0x61, 0x6a, 0x0e, 0xac, 0x54, 0x7d, 0x26, 0x22, 0x26, 0xbc, 0x01, 0x16, + 0xe0, 0xcd, 0x1a, 0x03, 0x90, 0xb8, 0xe1, 0xf9, 0x2c, 0xa4, 0x26, 0x7f, 0xdd, 0xe4, 0x23, 0x11, + 0xc4, 0x67, 0x45, 0x22, 0x48, 0x7a, 0xea, 0x44, 0x5f, 0x1f, 0xa6, 0x17, 0x26, 0x75, 0x0d, 0x47, + 0x21, 0x65, 0x9e, 0xfa, 0xd5, 0x21, 0xe7, 0x27, 0x0b, 0xed, 0x74, 0x68, 0x28, 0xdb, 0x31, 0xf2, + 0x76, 0x8c, 0xfc, 0x01, 0xe6, 0x38, 0x12, 0x0f, 0x38, 0x9b, 0x30, 0x81, 0xc7, 0xf6, 0x16, 0x5a, + 0x95, 0xa1, 0x1c, 0x43, 0xd9, 0xaa, 0x5b, 0x7b, 0xeb, 0x3d, 0xbd, 0xb0, 0xeb, 0xa8, 0x44, 0x40, + 0xf8, 0x3c, 0x9c, 0xc8, 0x90, 0xd1, 0x72, 0x5e, 0xe5, 0xd2, 0x21, 0xfb, 0x3d, 0x54, 0x9c, 0xa8, + 0x4e, 0xe5, 0x42, 0xdd, 0xda, 0x2b, 0x1d, 0xd4, 0xdd, 0x65, 0x0a, 0xba, 0xfa, 0xc4, 0x9e, 0xa9, + 0xb7, 0x6f, 0x20, 0xa4, 0x52, 0x7d, 0x8a, 0x23, 0x28, 0xaf, 0xa8, 0xd6, 0xeb, 0x2a, 0x72, 0x0f, + 0x47, 0xd0, 0xbc, 0xf2, 0xd5, 0x71, 0x2d, 0xf7, 0xed, 0x71, 0x2d, 0xf7, 0xe7, 0x71, 0x2d, 0xe7, + 0x7c, 0x67, 0xa1, 0xca, 0x27, 0x13, 0x82, 0x25, 0x28, 0xf0, 0xf7, 0x39, 0xf6, 0xc7, 0xf0, 0xdf, + 0xd1, 0x97, 0xd1, 0x1a, 0xd3, 0xad, 0xca, 0x85, 0x7a, 0x61, 0x6f, 0xbd, 0x97, 0x2c, 0x2f, 0x87, + 0xee, 0x87, 0x3c, 0xda, 0xee, 0x8a, 0xe0, 0x21, 0xc8, 0xfb, 0xdc, 0x1f, 0x81, 0x90, 0x1c, 0x4b, + 0xc6, 0xef, 0x10, 0xc2, 0x41, 0x08, 0x7b, 0x17, 0x6d, 0xe8, 0xae, 0x7d, 0xac, 0x23, 0x06, 0xe5, + 0x55, 0x1d, 0x4d, 0xca, 0x5e, 0x47, 0x9b, 0x03, 0x1e, 0x92, 0x00, 0xf8, 0x59, 0x9d, 0x46, 0xbc, + 0x61, 0xc2, 0x49, 0xe1, 0x1b, 0xe8, 0xff, 0x30, 0x97, 0xc0, 0x29, 0x1e, 0x9f, 0x55, 0x16, 0x54, + 0xe5, 0x66, 0x12, 0x4f, 0x4a, 0xdf, 0x47, 0x6b, 0x04, 0x26, 0x4c, 0x84, 0x52, 0x51, 0x28, 0x1d, + 0x6c, 0xbb, 0x66, 0x52, 0xe2, 0x79, 0x73, 0xcd, 0xbc, 0xb9, 0x6d, 0x16, 0xd2, 0xd6, 0xca, 0xe3, + 0xa7, 0xb5, 0x5c, 0x2f, 0xa9, 0xcf, 0x08, 0xb0, 0x9a, 0x15, 0xe0, 0xf6, 0x17, 0xcf, 0x1e, 0xed, + 0x67, 0x78, 0x7d, 0xfd, 0xec, 0xd1, 0xfe, 0xcd, 0xd4, 0xdd, 0x58, 0x2a, 0x89, 0xf3, 0x8b, 0x85, + 0x5e, 0xea, 0x8a, 0xe0, 0x0e, 0x21, 0xda, 0xc9, 0x0f, 0xcd, 0xa1, 0x17, 0x94, 0xea, 0x5d, 0x54, + 0xc4, 0x11, 0x9b, 0x52, 0xa9, 0x14, 0xba, 0x00, 0x2b, 0x53, 0x9e, 0x21, 0x55, 0xc8, 0x92, 0x7a, + 0x67, 0x09, 0xa9, 0xea, 0x22, 0xa9, 0x2c, 0x6c, 0xe7, 0xcb, 0x3c, 0xba, 0xa6, 0xc8, 0x52, 0xf2, + 0x31, 0xbb, 0x6b, 0x3c, 0xb0, 0x5f, 0x41, 0x45, 0x01, 0x94, 0x00, 0x37, 0x24, 0xcc, 0xca, 0xb6, + 0xd1, 0x0a, 0x01, 0x21, 0x8d, 0xbb, 0xea, 0x3b, 0xc5, 0xa8, 0x70, 0x39, 0x46, 0x1f, 0x20, 0xa4, + 0xc7, 0xa3, 0x3f, 0x04, 0xb8, 0xa8, 0xc9, 0xeb, 0x7a, 0xcb, 0x21, 0xc0, 0x79, 0x36, 0xbf, 0x15, + 0x2b, 0x62, 0x80, 0xc7, 0x4a, 0xec, 0x64, 0xed, 0x4d, 0x33, 0x76, 0x6e, 0x9b, 0x6b, 0x90, 0x0e, + 0xf6, 0x40, 0x4c, 0x18, 0x15, 0x60, 0xd7, 0x50, 0x69, 0x80, 0xa5, 0x3f, 0xea, 0x53, 0x46, 0x7d, + 0x7d, 0x53, 0x57, 0x7a, 0x48, 0x85, 0xee, 0xc5, 0x11, 0xe7, 0x7b, 0x0b, 0x5d, 0xef, 0x8a, 0xa0, + 0x8d, 0xa9, 0x0f, 0xe3, 0x8c, 0x96, 0xbb, 0x68, 0x43, 0x72, 0x4c, 0x05, 0xf6, 0xe3, 0x7b, 0xdb, + 0x0f, 0x89, 0xd9, 0x7f, 0x35, 0x15, 0xed, 0x90, 0x94, 0xe4, 0xf9, 0x05, 0xc9, 0xcf, 0xf1, 0xfd, + 0x20, 0xc3, 0xd2, 0x59, 0x64, 0xf9, 0x22, 0x44, 0xce, 0xcf, 0x79, 0xb4, 0xd9, 0x15, 0x41, 0x0f, + 0x3e, 0x9f, 0x82, 0x90, 0xad, 0x98, 0xc6, 0x52, 0xc7, 0xb7, 0xd0, 0x2a, 0x01, 0xca, 0x22, 0x83, + 0x4a, 0x2f, 0xec, 0x8f, 0x50, 0x29, 0x0a, 0x69, 0x18, 0x4d, 0x23, 0xe5, 0x9d, 0x42, 0xd5, 0x7a, + 0x33, 0x36, 0xe8, 0xf7, 0xa7, 0xb5, 0x97, 0xb5, 0x85, 0x82, 0x7c, 0xe6, 0x86, 0xcc, 0x8b, 0xb0, + 0x1c, 0xb9, 0x1d, 0x2a, 0x7f, 0xfd, 0xf1, 0x16, 0x32, 0xde, 0x76, 0xa8, 0xec, 0x21, 0xb3, 0x3f, + 0x36, 0xb2, 0x86, 0x4a, 0x43, 0x80, 0x3e, 0x07, 0x1f, 0xc2, 0x59, 0xf2, 0x8f, 0x85, 0x86, 0x00, + 0x3d, 0x1d, 0x39, 0xc7, 0x69, 0xfb, 0x10, 0xfd, 0x2f, 0x1e, 0x17, 0x05, 0xa5, 0x78, 0x79, 0x28, + 0x6b, 0xf1, 0xe6, 0x43, 0x80, 0xe6, 0x7e, 0x46, 0xcb, 0xca, 0xa2, 0x96, 0x69, 0xbd, 0x9c, 0xa6, + 0x32, 0x3c, 0x1d, 0xba, 0xf8, 0xb4, 0xfc, 0x65, 0xa1, 0xad, 0xae, 0x08, 0x3a, 0xd4, 0xe7, 0x80, + 0x05, 0xb4, 0x96, 0x4c, 0xb4, 0x95, 0xe5, 0xf9, 0xfc, 0x24, 0xe5, 0xff, 0x7d, 0x92, 0x0a, 0x0b, + 0x56, 0xde, 0x45, 0x1b, 0x98, 0x90, 0xfe, 0xe5, 0xef, 0xdc, 0x15, 0x4c, 0xc8, 0x19, 0xc8, 0x66, + 0x23, 0xa3, 0x52, 0x6d, 0x51, 0xa5, 0xe7, 0x58, 0x95, 0x2d, 0xe7, 0x35, 0xf4, 0x6a, 0x57, 0x04, + 0xfa, 0x8f, 0xe7, 0x21, 0xc8, 0x36, 0xa3, 0xc3, 0x90, 0x47, 0x89, 0x60, 0xcd, 0x7c, 0xd9, 0x72, + 0x6e, 0xe8, 0x0b, 0xa4, 0x33, 0x0b, 0x7a, 0xaa, 0xb4, 0x83, 0x76, 0xba, 0x22, 0xd0, 0x3d, 0xdb, + 0x78, 0x3c, 0x7e, 0x41, 0x8b, 0x56, 0xe7, 0xf1, 0x49, 0xd5, 0x7a, 0x72, 0x52, 0xb5, 0xfe, 0x38, + 0xa9, 0x5a, 0xdf, 0x9c, 0x56, 0x73, 0x4f, 0x4e, 0xab, 0xb9, 0xdf, 0x4e, 0xab, 0xb9, 0x4f, 0xbd, + 0x20, 0x94, 0xa3, 0xe9, 0xc0, 0xf5, 0x59, 0xe4, 0x0d, 0xa7, 0x54, 0x09, 0x35, 0xf7, 0x86, 0xf3, + 0x5b, 0x3e, 0xe3, 0xe0, 0xcd, 0xd3, 0x8f, 0x22, 0xf5, 0x22, 0x1a, 0x14, 0xd5, 0xd3, 0xe3, 0xed, + 0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 0x0c, 0x8c, 0x87, 0x57, 0x7b, 0x09, 0x00, 0x00, } func (m *InitCrossChainParamsProposal) Marshal() (dAtA []byte, err error) { @@ -1192,8 +1114,8 @@ func (m *MsgSendToExternalResponse) MarshalToSizedBuffer(dAtA []byte) (int, erro _ = i var l int _ = l - if m.OutgoingTxId != 0 { - i = encodeVarintLegacy(dAtA, i, uint64(m.OutgoingTxId)) + if m.BatchNonce != 0 { + i = encodeVarintLegacy(dAtA, i, uint64(m.BatchNonce)) i-- dAtA[i] = 0x8 } @@ -1242,29 +1164,6 @@ func (m *MsgCancelSendToExternal) MarshalToSizedBuffer(dAtA []byte) (int, error) return len(dAtA) - i, nil } -func (m *MsgCancelSendToExternalResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *MsgCancelSendToExternalResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgCancelSendToExternalResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - func (m *MsgRequestBatch) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -1416,29 +1315,6 @@ func (m *MsgIncreaseBridgeFee) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgIncreaseBridgeFeeResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *MsgIncreaseBridgeFeeResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgIncreaseBridgeFeeResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - func (m *MsgOracleSetConfirmResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -1648,8 +1524,8 @@ func (m *MsgSendToExternalResponse) Size() (n int) { } var l int _ = l - if m.OutgoingTxId != 0 { - n += 1 + sovLegacy(uint64(m.OutgoingTxId)) + if m.BatchNonce != 0 { + n += 1 + sovLegacy(uint64(m.BatchNonce)) } return n } @@ -1674,15 +1550,6 @@ func (m *MsgCancelSendToExternal) Size() (n int) { return n } -func (m *MsgCancelSendToExternalResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n -} - func (m *MsgRequestBatch) Size() (n int) { if m == nil { return 0 @@ -1746,15 +1613,6 @@ func (m *MsgIncreaseBridgeFee) Size() (n int) { return n } -func (m *MsgIncreaseBridgeFeeResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n -} - func (m *MsgOracleSetConfirmResponse) Size() (n int) { if m == nil { return 0 @@ -2749,9 +2607,9 @@ func (m *MsgSendToExternalResponse) Unmarshal(dAtA []byte) error { switch fieldNum { case 1: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field OutgoingTxId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BatchNonce", wireType) } - m.OutgoingTxId = 0 + m.BatchNonce = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowLegacy @@ -2761,7 +2619,7 @@ func (m *MsgSendToExternalResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.OutgoingTxId |= uint64(b&0x7F) << shift + m.BatchNonce |= uint64(b&0x7F) << shift if b < 0x80 { break } @@ -2920,56 +2778,6 @@ func (m *MsgCancelSendToExternal) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgCancelSendToExternalResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgCancelSendToExternalResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgCancelSendToExternalResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func (m *MsgRequestBatch) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -3451,56 +3259,6 @@ func (m *MsgIncreaseBridgeFee) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgIncreaseBridgeFeeResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgIncreaseBridgeFeeResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgIncreaseBridgeFeeResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func (m *MsgOracleSetConfirmResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/x/crosschain/types/msgs.go b/x/crosschain/types/msgs.go index a95dc282..a0f1caab 100644 --- a/x/crosschain/types/msgs.go +++ b/x/crosschain/types/msgs.go @@ -209,28 +209,6 @@ func (m *MsgSendToExternal) ValidateBasic() (err error) { return nil } -func (m *MsgRequestBatch) ValidateBasic() (err error) { - if _, ok := externalAddressRouter[m.ChainName]; !ok { - return sdkerrors.ErrInvalidRequest.Wrap("unrecognized cross chain name") - } - if _, err = sdk.AccAddressFromBech32(m.Sender); err != nil { - return sdkerrors.ErrInvalidAddress.Wrapf("invalid sender address: %s", err) - } - if len(m.Denom) == 0 { - return sdkerrors.ErrInvalidRequest.Wrap("empty denom") - } - if m.MinimumFee.IsNil() || !m.MinimumFee.IsPositive() { - return sdkerrors.ErrInvalidRequest.Wrap("invalid minimum fee") - } - if err = ValidateExternalAddr(m.ChainName, m.FeeReceive); err != nil { - return sdkerrors.ErrInvalidAddress.Wrapf("invalid fee receive address: %s", err) - } - if m.BaseFee.IsNil() || m.BaseFee.IsNegative() { - return sdkerrors.ErrInvalidRequest.Wrap("invalid base fee") - } - return nil -} - func (m *MsgConfirmBatch) ValidateBasic() (err error) { if _, ok := externalAddressRouter[m.ChainName]; !ok { return sdkerrors.ErrInvalidRequest.Wrap("unrecognized cross chain name") @@ -272,35 +250,6 @@ func (m *MsgBridgeCallConfirm) ValidateBasic() (err error) { return nil } -func (m *MsgCancelSendToExternal) ValidateBasic() (err error) { - if _, ok := externalAddressRouter[m.ChainName]; !ok { - return sdkerrors.ErrInvalidRequest.Wrap("unrecognized cross chain name") - } - if _, err = sdk.AccAddressFromBech32(m.Sender); err != nil { - return sdkerrors.ErrInvalidAddress.Wrapf("invalid sender address: %s", err) - } - if m.TransactionId == 0 { - return sdkerrors.ErrInvalidRequest.Wrap("zero transaction id") - } - return nil -} - -func (m *MsgIncreaseBridgeFee) ValidateBasic() (err error) { - if _, ok := externalAddressRouter[m.ChainName]; !ok { - return sdkerrors.ErrInvalidRequest.Wrap("unrecognized cross chain name") - } - if _, err = sdk.AccAddressFromBech32(m.Sender); err != nil { - return sdkerrors.ErrInvalidAddress.Wrapf("invalid sender address: %s", err) - } - if m.TransactionId == 0 { - return sdkerrors.ErrInvalidRequest.Wrap("zero transaction id") - } - if !m.AddBridgeFee.IsValid() || !m.AddBridgeFee.IsPositive() { - return sdkerrors.ErrInvalidRequest.Wrap("invalid bridge fee") - } - return nil -} - // ExternalClaim represents a claim on ethereum state type ExternalClaim interface { proto.Message @@ -686,22 +635,6 @@ func (m *MsgOracleSetUpdatedClaim) ClaimHash() []byte { return tmhash.Sum([]byte(path)) } -func (m *MsgSetOrchestratorAddress) ValidateBasic() (err error) { - return nil -} - -func (m *MsgSetOrchestratorAddress) GetSigners() []sdk.AccAddress { - return []sdk.AccAddress{sdk.MustAccAddressFromBech32(m.BridgerAddress)} -} - -func (m *MsgAddOracleDeposit) ValidateBasic() (err error) { - return nil -} - -func (m *MsgAddOracleDeposit) GetSigners() []sdk.AccAddress { - return []sdk.AccAddress{sdk.MustAccAddressFromBech32(m.OracleAddress)} -} - func (m *MsgUpdateParams) ValidateBasic() error { if _, err := sdk.AccAddressFromBech32(m.Authority); err != nil { return sdkerrors.ErrInvalidAddress.Wrapf("authority") diff --git a/x/crosschain/types/msgs_test.go b/x/crosschain/types/msgs_test.go index 454edd7d..b0862f02 100644 --- a/x/crosschain/types/msgs_test.go +++ b/x/crosschain/types/msgs_test.go @@ -1148,163 +1148,6 @@ func TestMsgSendToExternal_ValidateBasic(t *testing.T) { } } -func TestMsgCancelSendToExternal_ValidateBasic(t *testing.T) { - moduleName := getRandModule() - normalFxAddress := sdk.AccAddress(tmrand.Bytes(20)).String() - randomAddrPrefix := strings.ToLower(tmrand.Str(5)) - errPrefixAddress, err := bech32.ConvertAndEncode(randomAddrPrefix, tmrand.Bytes(20)) - require.NoError(t, err) - - testCases := []struct { - testName string - msg *types.MsgCancelSendToExternal - expectPass bool - err error - errReason string - }{ - { - testName: "err - empty chain name", - msg: &types.MsgCancelSendToExternal{ - ChainName: "", - }, - expectPass: false, - err: sdkerrors.ErrInvalidRequest, - errReason: "unrecognized cross chain name: invalid request", - }, - { - testName: "err - invalid sender address", - msg: &types.MsgCancelSendToExternal{ - ChainName: moduleName, - Sender: errPrefixAddress, - }, - expectPass: false, - err: sdkerrors.ErrInvalidAddress, - errReason: fmt.Sprintf("invalid sender address: invalid Bech32 prefix; expected %s, got %s: invalid address", sdk.Bech32MainPrefix, randomAddrPrefix), - }, - { - testName: "err - zero transaction id", - msg: &types.MsgCancelSendToExternal{ - ChainName: moduleName, - Sender: normalFxAddress, - TransactionId: 0, - }, - expectPass: false, - err: sdkerrors.ErrInvalidRequest, - errReason: "zero transaction id: invalid request", - }, - { - testName: "success", - msg: &types.MsgCancelSendToExternal{ - ChainName: moduleName, - Sender: normalFxAddress, - TransactionId: 1, - }, - expectPass: true, - }, - } - - for _, testCase := range testCases { - t.Run(testCase.testName, func(t *testing.T) { - err = testCase.msg.ValidateBasic() - if testCase.expectPass { - require.NoError(t, err) - } else { - require.NotNil(t, err) - require.ErrorIs(t, err, testCase.err, "%+v", testCase.msg) - if moduleName == trontypes.ModuleName && strings.Contains(testCase.errReason, "mismatch expected") { - testCase.errReason = strings.Split(testCase.errReason, ":")[0] + tronAddressErr - } - require.EqualValuesf(t, testCase.errReason, err.Error(), "%+v", testCase.msg) - } - }) - } -} - -func TestMsgIncreaseBridgeFee_ValidateBasic(t *testing.T) { - moduleName := getRandModule() - normalFxAddress := sdk.AccAddress(tmrand.Bytes(20)).String() - randomAddrPrefix := strings.ToLower(tmrand.Str(5)) - errPrefixAddress, err := bech32.ConvertAndEncode(randomAddrPrefix, tmrand.Bytes(20)) - require.NoError(t, err) - - testCases := []struct { - testName string - msg *types.MsgIncreaseBridgeFee - expectPass bool - err error - errReason string - }{ - { - testName: "err - empty chain name", - msg: &types.MsgIncreaseBridgeFee{ - ChainName: "", - }, - expectPass: false, - err: sdkerrors.ErrInvalidRequest, - errReason: "unrecognized cross chain name: invalid request", - }, - { - testName: "err - invalid sender address", - msg: &types.MsgIncreaseBridgeFee{ - ChainName: moduleName, - Sender: errPrefixAddress, - }, - expectPass: false, - err: sdkerrors.ErrInvalidAddress, - errReason: fmt.Sprintf("invalid sender address: invalid Bech32 prefix; expected %s, got %s: invalid address", sdk.Bech32MainPrefix, randomAddrPrefix), - }, - { - testName: "err - zero transaction id", - msg: &types.MsgIncreaseBridgeFee{ - ChainName: moduleName, - Sender: normalFxAddress, - TransactionId: 0, - }, - expectPass: false, - err: sdkerrors.ErrInvalidRequest, - errReason: "zero transaction id: invalid request", - }, - { - testName: "err - invalid bridge fee", - msg: &types.MsgIncreaseBridgeFee{ - ChainName: moduleName, - Sender: normalFxAddress, - TransactionId: 1, - AddBridgeFee: sdk.Coin{}, - }, - expectPass: false, - err: sdkerrors.ErrInvalidRequest, - errReason: "invalid bridge fee: invalid request", - }, - { - testName: "success", - msg: &types.MsgIncreaseBridgeFee{ - ChainName: moduleName, - Sender: normalFxAddress, - TransactionId: 1, - AddBridgeFee: sdk.NewCoin(helpers.NewRandDenom(), sdkmath.NewInt(1)), - }, - expectPass: true, - }, - } - - for _, testCase := range testCases { - t.Run(testCase.testName, func(t *testing.T) { - err = testCase.msg.ValidateBasic() - if testCase.expectPass { - require.NoError(t, err) - } else { - require.NotNil(t, err) - require.ErrorIs(t, err, testCase.err, "%+v", testCase.msg) - if moduleName == trontypes.ModuleName && strings.Contains(testCase.errReason, "mismatch expected") { - testCase.errReason = strings.Split(testCase.errReason, ":")[0] + tronAddressErr - } - require.EqualValuesf(t, testCase.errReason, err.Error(), "%+v", testCase.msg) - } - }) - } -} - func TestMsgSendToExternalClaim_ValidateBasic(t *testing.T) { moduleName := getRandModule() normalExternalAddress := helpers.GenExternalAddr(moduleName) @@ -1441,131 +1284,6 @@ func TestMsgSendToExternalClaim_ValidateBasic(t *testing.T) { } } -func TestMsgRequestBatch_ValidateBasic(t *testing.T) { - moduleName := getRandModule() - normalExternalAddress := helpers.GenExternalAddr(moduleName) - normalBridgeAddress := sdk.AccAddress(tmrand.Bytes(20)).String() - randomAddrPrefix := strings.ToLower(tmrand.Str(5)) - errPrefixAddress, err := bech32.ConvertAndEncode(randomAddrPrefix, tmrand.Bytes(20)) - require.NoError(t, err) - - testCases := []struct { - testName string - msg *types.MsgRequestBatch - expectPass bool - err error - errReason string - }{ - { - testName: "err - empty chain name", - msg: &types.MsgRequestBatch{ - ChainName: "", - }, - expectPass: false, - err: sdkerrors.ErrInvalidRequest, - errReason: "unrecognized cross chain name: invalid request", - }, - { - testName: "err - invalid chain name", - msg: &types.MsgRequestBatch{ - ChainName: helpers.NewRandDenom(), - }, - expectPass: false, - err: sdkerrors.ErrInvalidRequest, - errReason: "unrecognized cross chain name: invalid request", - }, - { - testName: "err - error prefix sender address", - msg: &types.MsgRequestBatch{ - ChainName: moduleName, - Sender: errPrefixAddress, - }, - expectPass: false, - err: sdkerrors.ErrInvalidAddress, - errReason: fmt.Sprintf("invalid sender address: invalid Bech32 prefix; expected %s, got %s: invalid address", sdk.Bech32MainPrefix, randomAddrPrefix), - }, - { - testName: "err - empty denom", - msg: &types.MsgRequestBatch{ - ChainName: moduleName, - Sender: normalBridgeAddress, - Denom: "", - }, - expectPass: false, - err: sdkerrors.ErrInvalidRequest, - errReason: "empty denom: invalid request", - }, - { - testName: "err - invalid minimum fee - negative", - msg: &types.MsgRequestBatch{ - ChainName: moduleName, - Sender: normalBridgeAddress, - Denom: "demo", - MinimumFee: sdkmath.NewInt(-1), - }, - expectPass: false, - err: sdkerrors.ErrInvalidRequest, - errReason: "invalid minimum fee: invalid request", - }, - { - testName: "err fee receive", - msg: &types.MsgRequestBatch{ - ChainName: moduleName, - Sender: normalBridgeAddress, - Denom: "demo", - MinimumFee: sdkmath.NewInt(1), - FeeReceive: "", - }, - expectPass: false, - err: sdkerrors.ErrInvalidAddress, - errReason: "invalid fee receive address: empty: invalid address", - }, - { - testName: "err - invalid fee receive", - msg: &types.MsgRequestBatch{ - ChainName: moduleName, - Sender: normalBridgeAddress, - Denom: "demo", - MinimumFee: sdkmath.NewInt(1), - FeeReceive: externalAddressToUpper(normalExternalAddress), - }, - expectPass: false, - err: sdkerrors.ErrInvalidAddress, - errReason: fmt.Sprintf("invalid fee receive address: mismatch expected: %s, got: %s: %s", - normalExternalAddress, externalAddressToUpper(normalExternalAddress), sdkerrors.ErrInvalidAddress.Error()), - }, - - { - testName: "success", - msg: &types.MsgRequestBatch{ - ChainName: moduleName, - Sender: normalBridgeAddress, - Denom: "demo", - MinimumFee: sdkmath.NewInt(1), - FeeReceive: normalExternalAddress, - BaseFee: sdkmath.ZeroInt(), - }, - expectPass: true, - }, - } - - for _, testCase := range testCases { - t.Run(testCase.testName, func(t *testing.T) { - err = testCase.msg.ValidateBasic() - if testCase.expectPass { - require.NoError(t, err) - } else { - require.NotNil(t, err) - require.ErrorIs(t, err, testCase.err, "%+v", testCase.msg) - if moduleName == trontypes.ModuleName && strings.Contains(testCase.errReason, "mismatch expected") { - testCase.errReason = strings.Split(testCase.errReason, ":")[0] + tronAddressErr - } - require.EqualValuesf(t, testCase.errReason, err.Error(), "%+v", testCase.msg) - } - }) - } -} - func TestMsgConfirmBatch_ValidateBasic(t *testing.T) { moduleName := getRandModule() normalExternalAddress := helpers.GenExternalAddr(moduleName) diff --git a/x/crosschain/types/params.go b/x/crosschain/types/params.go index eda07a77..ac0f6e24 100644 --- a/x/crosschain/types/params.go +++ b/x/crosschain/types/params.go @@ -12,7 +12,6 @@ import ( const ( MaxOracleSize = 100 DefaultOracleDelegateThreshold = 10 - OutgoingTxBatchSize = 100 MaxResults = 100 MaxOracleSetRequestsResults = 5 MaxKeepEventSize = 100 diff --git a/x/crosschain/types/query.pb.go b/x/crosschain/types/query.pb.go index a2473841..e1ecddc5 100644 --- a/x/crosschain/types/query.pb.go +++ b/x/crosschain/types/query.pb.go @@ -985,24 +985,24 @@ func (m *QueryOutgoingTxBatchesResponse) GetBatches() []*OutgoingTxBatch { return nil } -type QueryBatchRequestByNonceRequest struct { +type QueryOutgoingTxBatchRequest struct { ChainName string `protobuf:"bytes,1,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` TokenContract string `protobuf:"bytes,2,opt,name=token_contract,json=tokenContract,proto3" json:"token_contract,omitempty"` Nonce uint64 `protobuf:"varint,3,opt,name=nonce,proto3" json:"nonce,omitempty"` } -func (m *QueryBatchRequestByNonceRequest) Reset() { *m = QueryBatchRequestByNonceRequest{} } -func (m *QueryBatchRequestByNonceRequest) String() string { return proto.CompactTextString(m) } -func (*QueryBatchRequestByNonceRequest) ProtoMessage() {} -func (*QueryBatchRequestByNonceRequest) Descriptor() ([]byte, []int) { +func (m *QueryOutgoingTxBatchRequest) Reset() { *m = QueryOutgoingTxBatchRequest{} } +func (m *QueryOutgoingTxBatchRequest) String() string { return proto.CompactTextString(m) } +func (*QueryOutgoingTxBatchRequest) ProtoMessage() {} +func (*QueryOutgoingTxBatchRequest) Descriptor() ([]byte, []int) { return fileDescriptor_210db95ef9589dec, []int{20} } -func (m *QueryBatchRequestByNonceRequest) XXX_Unmarshal(b []byte) error { +func (m *QueryOutgoingTxBatchRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *QueryBatchRequestByNonceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *QueryOutgoingTxBatchRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_QueryBatchRequestByNonceRequest.Marshal(b, m, deterministic) + return xxx_messageInfo_QueryOutgoingTxBatchRequest.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1012,55 +1012,55 @@ func (m *QueryBatchRequestByNonceRequest) XXX_Marshal(b []byte, deterministic bo return b[:n], nil } } -func (m *QueryBatchRequestByNonceRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryBatchRequestByNonceRequest.Merge(m, src) +func (m *QueryOutgoingTxBatchRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryOutgoingTxBatchRequest.Merge(m, src) } -func (m *QueryBatchRequestByNonceRequest) XXX_Size() int { +func (m *QueryOutgoingTxBatchRequest) XXX_Size() int { return m.Size() } -func (m *QueryBatchRequestByNonceRequest) XXX_DiscardUnknown() { - xxx_messageInfo_QueryBatchRequestByNonceRequest.DiscardUnknown(m) +func (m *QueryOutgoingTxBatchRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryOutgoingTxBatchRequest.DiscardUnknown(m) } -var xxx_messageInfo_QueryBatchRequestByNonceRequest proto.InternalMessageInfo +var xxx_messageInfo_QueryOutgoingTxBatchRequest proto.InternalMessageInfo -func (m *QueryBatchRequestByNonceRequest) GetChainName() string { +func (m *QueryOutgoingTxBatchRequest) GetChainName() string { if m != nil { return m.ChainName } return "" } -func (m *QueryBatchRequestByNonceRequest) GetTokenContract() string { +func (m *QueryOutgoingTxBatchRequest) GetTokenContract() string { if m != nil { return m.TokenContract } return "" } -func (m *QueryBatchRequestByNonceRequest) GetNonce() uint64 { +func (m *QueryOutgoingTxBatchRequest) GetNonce() uint64 { if m != nil { return m.Nonce } return 0 } -type QueryBatchRequestByNonceResponse struct { +type QueryOutgoingTxBatchResponse struct { Batch *OutgoingTxBatch `protobuf:"bytes,1,opt,name=batch,proto3" json:"batch,omitempty"` } -func (m *QueryBatchRequestByNonceResponse) Reset() { *m = QueryBatchRequestByNonceResponse{} } -func (m *QueryBatchRequestByNonceResponse) String() string { return proto.CompactTextString(m) } -func (*QueryBatchRequestByNonceResponse) ProtoMessage() {} -func (*QueryBatchRequestByNonceResponse) Descriptor() ([]byte, []int) { +func (m *QueryOutgoingTxBatchResponse) Reset() { *m = QueryOutgoingTxBatchResponse{} } +func (m *QueryOutgoingTxBatchResponse) String() string { return proto.CompactTextString(m) } +func (*QueryOutgoingTxBatchResponse) ProtoMessage() {} +func (*QueryOutgoingTxBatchResponse) Descriptor() ([]byte, []int) { return fileDescriptor_210db95ef9589dec, []int{21} } -func (m *QueryBatchRequestByNonceResponse) XXX_Unmarshal(b []byte) error { +func (m *QueryOutgoingTxBatchResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *QueryBatchRequestByNonceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *QueryOutgoingTxBatchResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_QueryBatchRequestByNonceResponse.Marshal(b, m, deterministic) + return xxx_messageInfo_QueryOutgoingTxBatchResponse.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1070,19 +1070,19 @@ func (m *QueryBatchRequestByNonceResponse) XXX_Marshal(b []byte, deterministic b return b[:n], nil } } -func (m *QueryBatchRequestByNonceResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryBatchRequestByNonceResponse.Merge(m, src) +func (m *QueryOutgoingTxBatchResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryOutgoingTxBatchResponse.Merge(m, src) } -func (m *QueryBatchRequestByNonceResponse) XXX_Size() int { +func (m *QueryOutgoingTxBatchResponse) XXX_Size() int { return m.Size() } -func (m *QueryBatchRequestByNonceResponse) XXX_DiscardUnknown() { - xxx_messageInfo_QueryBatchRequestByNonceResponse.DiscardUnknown(m) +func (m *QueryOutgoingTxBatchResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryOutgoingTxBatchResponse.DiscardUnknown(m) } -var xxx_messageInfo_QueryBatchRequestByNonceResponse proto.InternalMessageInfo +var xxx_messageInfo_QueryOutgoingTxBatchResponse proto.InternalMessageInfo -func (m *QueryBatchRequestByNonceResponse) GetBatch() *OutgoingTxBatch { +func (m *QueryOutgoingTxBatchResponse) GetBatch() *OutgoingTxBatch { if m != nil { return m.Batch } @@ -3163,8 +3163,8 @@ func init() { proto.RegisterType((*QueryLastPendingBatchRequestByAddrResponse)(nil), "fx.gravity.crosschain.v1.QueryLastPendingBatchRequestByAddrResponse") proto.RegisterType((*QueryOutgoingTxBatchesRequest)(nil), "fx.gravity.crosschain.v1.QueryOutgoingTxBatchesRequest") proto.RegisterType((*QueryOutgoingTxBatchesResponse)(nil), "fx.gravity.crosschain.v1.QueryOutgoingTxBatchesResponse") - proto.RegisterType((*QueryBatchRequestByNonceRequest)(nil), "fx.gravity.crosschain.v1.QueryBatchRequestByNonceRequest") - proto.RegisterType((*QueryBatchRequestByNonceResponse)(nil), "fx.gravity.crosschain.v1.QueryBatchRequestByNonceResponse") + proto.RegisterType((*QueryOutgoingTxBatchRequest)(nil), "fx.gravity.crosschain.v1.QueryOutgoingTxBatchRequest") + proto.RegisterType((*QueryOutgoingTxBatchResponse)(nil), "fx.gravity.crosschain.v1.QueryOutgoingTxBatchResponse") proto.RegisterType((*QueryBatchConfirmRequest)(nil), "fx.gravity.crosschain.v1.QueryBatchConfirmRequest") proto.RegisterType((*QueryBatchConfirmResponse)(nil), "fx.gravity.crosschain.v1.QueryBatchConfirmResponse") proto.RegisterType((*QueryBatchConfirmsRequest)(nil), "fx.gravity.crosschain.v1.QueryBatchConfirmsRequest") @@ -3214,168 +3214,164 @@ func init() { } var fileDescriptor_210db95ef9589dec = []byte{ - // 2570 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x5b, 0xdd, 0x6f, 0x14, 0xd7, - 0x15, 0xe7, 0x12, 0x3e, 0xe2, 0x63, 0x1c, 0x92, 0x8b, 0x29, 0xf6, 0x02, 0xc6, 0x1e, 0x30, 0xb6, - 0x01, 0xef, 0xc4, 0x86, 0xd2, 0x40, 0x1a, 0x08, 0x6b, 0x08, 0x50, 0x91, 0x40, 0x16, 0x47, 0xaa, - 0x1a, 0xb5, 0x9b, 0xd9, 0xd9, 0xbb, 0xeb, 0x21, 0xbb, 0x33, 0x66, 0x66, 0xd6, 0xac, 0xd5, 0x46, - 0xaa, 0xfa, 0xd0, 0x56, 0xea, 0x4b, 0xd5, 0x4a, 0x55, 0x1f, 0xaa, 0xb6, 0x0f, 0x7d, 0x6c, 0x1f, - 0xaa, 0xd2, 0x56, 0xaa, 0xc4, 0x43, 0xdf, 0xd2, 0x3c, 0x21, 0x45, 0x6a, 0xfb, 0x54, 0xa5, 0xd0, - 0x3f, 0xa4, 0x9a, 0x7b, 0xcf, 0x7c, 0xed, 0x7c, 0xdd, 0x31, 0x76, 0xde, 0xbc, 0xf7, 0xde, 0x73, - 0xce, 0xef, 0xdc, 0x7b, 0xe6, 0xdc, 0x73, 0xcf, 0x0f, 0xe0, 0x54, 0x7b, 0xa0, 0x76, 0x6c, 0x6d, - 0xc3, 0x70, 0x37, 0x55, 0xdd, 0xb6, 0x1c, 0x47, 0x5f, 0xd3, 0x0c, 0x53, 0xdd, 0x58, 0x52, 0x1f, - 0xf6, 0x99, 0xbd, 0x59, 0x5d, 0xb7, 0x2d, 0xd7, 0xa2, 0x13, 0xed, 0x41, 0x15, 0x57, 0x55, 0xc3, - 0x55, 0xd5, 0x8d, 0xa5, 0xca, 0x19, 0xdd, 0x72, 0x7a, 0x96, 0xa3, 0x36, 0x35, 0x87, 0x09, 0x11, - 0x75, 0x63, 0xa9, 0xc9, 0x5c, 0x6d, 0x49, 0x5d, 0xd7, 0x3a, 0x86, 0xa9, 0xb9, 0x86, 0x65, 0x0a, - 0x2d, 0x95, 0xa9, 0xe8, 0x5a, 0x7f, 0x95, 0x6e, 0x19, 0xfe, 0xfc, 0xa4, 0x98, 0x6f, 0xf0, 0x5f, - 0xaa, 0xf8, 0x81, 0x53, 0x33, 0x99, 0x30, 0xdd, 0x01, 0x2e, 0xc9, 0xf6, 0xc4, 0xdd, 0x5c, 0x67, - 0xbe, 0xa2, 0xf1, 0x8e, 0xd5, 0xb1, 0x84, 0x01, 0xef, 0x2f, 0x1c, 0x3d, 0xd6, 0xb1, 0xac, 0x4e, - 0x97, 0xa9, 0xda, 0xba, 0xa1, 0x6a, 0xa6, 0x69, 0xb9, 0x1c, 0xb6, 0x2f, 0x33, 0x89, 0xb3, 0xfc, - 0x57, 0xb3, 0xdf, 0x56, 0x35, 0x13, 0x37, 0x46, 0x39, 0x0f, 0xf4, 0x7d, 0xcf, 0xe9, 0x7b, 0x9a, - 0xad, 0xf5, 0x9c, 0x3a, 0x7b, 0xd8, 0x67, 0x8e, 0x4b, 0x8f, 0x03, 0x70, 0xe3, 0x0d, 0x53, 0xeb, - 0xb1, 0x09, 0x32, 0x4d, 0xe6, 0x47, 0xea, 0x23, 0x7c, 0xe4, 0x3d, 0xad, 0xc7, 0x94, 0x0f, 0xe0, - 0x50, 0x4c, 0xc8, 0x59, 0xb7, 0x4c, 0x87, 0xd1, 0x2b, 0xb0, 0x6f, 0x9d, 0x8f, 0x70, 0x89, 0xd1, - 0xe5, 0xe9, 0x6a, 0xd6, 0xae, 0x57, 0x85, 0x64, 0x6d, 0xcf, 0xa7, 0xff, 0x39, 0xb1, 0xab, 0x8e, - 0x52, 0xca, 0x5b, 0x70, 0x8c, 0xab, 0x5d, 0xe9, 0xdb, 0x36, 0x33, 0xdd, 0xbb, 0xb6, 0xa6, 0x77, - 0xd9, 0x7d, 0xe6, 0x4a, 0xa2, 0xd2, 0xe1, 0x78, 0x86, 0x38, 0xe2, 0xab, 0x01, 0x58, 0x7c, 0xb0, - 0xe1, 0x30, 0x17, 0x31, 0x9e, 0xcc, 0xc6, 0x18, 0x2a, 0x18, 0xb1, 0xfc, 0x3f, 0x95, 0xfb, 0x88, - 0x71, 0x18, 0x9c, 0x1c, 0x46, 0x3a, 0x0e, 0x7b, 0x4d, 0xcb, 0xd4, 0xd9, 0xc4, 0xee, 0x69, 0x32, - 0xbf, 0xa7, 0x2e, 0x7e, 0x04, 0xc8, 0x93, 0x4a, 0xb7, 0x11, 0xf9, 0xf7, 0x86, 0x91, 0xaf, 0x58, - 0x66, 0xdb, 0xb0, 0x7b, 0x92, 0xc8, 0xe7, 0xe0, 0x60, 0xd3, 0x36, 0x5a, 0x1d, 0x66, 0x37, 0xb4, - 0x56, 0xcb, 0x66, 0x8e, 0xc3, 0x7d, 0x18, 0xa9, 0xbf, 0x82, 0xc3, 0xd7, 0xc4, 0x68, 0xe8, 0xe2, - 0x4b, 0x51, 0x17, 0xd7, 0x86, 0x5d, 0x0c, 0xac, 0xa3, 0x8b, 0x37, 0x61, 0xbf, 0x2e, 0x86, 0xd0, - 0xbf, 0xc5, 0x6c, 0xff, 0xde, 0x75, 0x3a, 0x09, 0x3d, 0xbe, 0xb4, 0xf2, 0x21, 0x9c, 0x4a, 0xb5, - 0xe4, 0xd4, 0x36, 0xdf, 0xf3, 0xa0, 0xbc, 0xd0, 0x49, 0xd9, 0x30, 0x5b, 0xa0, 0x1c, 0xdd, 0xb9, - 0x0d, 0x2f, 0x23, 0x20, 0xef, 0x6b, 0x78, 0xa9, 0xbc, 0x3f, 0x81, 0xb8, 0x52, 0x83, 0x19, 0x6e, - 0xf3, 0x8e, 0xe6, 0x24, 0xbe, 0x09, 0xd9, 0x2f, 0xf6, 0x01, 0x28, 0x79, 0x3a, 0x10, 0xf4, 0x75, - 0x18, 0x0d, 0xc3, 0xcc, 0xc7, 0x2d, 0x15, 0x67, 0x10, 0xc4, 0x99, 0xa3, 0x3c, 0x82, 0xc5, 0xc0, - 0xd6, 0x3d, 0x66, 0xb6, 0x0c, 0xb3, 0x33, 0x6c, 0xb2, 0xb6, 0xe9, 0x45, 0xcb, 0x36, 0x47, 0x9e, - 0xb2, 0x01, 0x55, 0x59, 0xc3, 0xdb, 0xea, 0xf0, 0x0f, 0x09, 0x8c, 0x73, 0xc3, 0x35, 0xcd, 0xd5, - 0xd7, 0xde, 0x61, 0xb2, 0x21, 0x76, 0x17, 0x0e, 0xf4, 0x0c, 0xd3, 0x17, 0xf2, 0xbc, 0xf2, 0xcc, - 0xcf, 0xe6, 0xc4, 0x49, 0xb8, 0x1a, 0x53, 0x67, 0x4c, 0x81, 0xf2, 0x21, 0x1c, 0x1e, 0xc2, 0x11, - 0xe6, 0x8f, 0xa6, 0x37, 0xd6, 0x68, 0x7b, 0x76, 0x0a, 0xdd, 0x0c, 0x34, 0xd6, 0x47, 0x9a, 0x81, - 0x72, 0x07, 0x16, 0x86, 0x77, 0x97, 0xaf, 0xdb, 0xd1, 0x23, 0xed, 0xc1, 0x19, 0x19, 0xa3, 0xe8, - 0xe6, 0x55, 0xd8, 0xcb, 0xf1, 0x62, 0x06, 0x59, 0xc8, 0x39, 0xc8, 0xbe, 0xdb, 0xb1, 0x0c, 0xb3, - 0xb3, 0x3a, 0x10, 0xea, 0x84, 0x9c, 0x72, 0xc5, 0xcf, 0x52, 0xf1, 0x69, 0x26, 0xfb, 0x99, 0x31, - 0x98, 0xca, 0x92, 0x47, 0x88, 0x2b, 0xb0, 0xbf, 0x29, 0x86, 0xf0, 0x18, 0x4a, 0x80, 0xf4, 0x25, - 0x95, 0x4f, 0xe0, 0x44, 0x78, 0xce, 0xc1, 0x56, 0x94, 0xc9, 0x6e, 0xb3, 0xf0, 0x8a, 0x6b, 0x7d, - 0xcc, 0xcc, 0x86, 0x6e, 0x99, 0xae, 0xad, 0xe9, 0x2e, 0xee, 0xff, 0x18, 0x1f, 0x5d, 0xc1, 0xc1, - 0x8c, 0x5c, 0xae, 0xc3, 0x74, 0xb6, 0xf9, 0xed, 0x3a, 0x8a, 0xdf, 0x10, 0x98, 0x08, 0xad, 0x94, - 0xbb, 0xab, 0x24, 0xbd, 0x4b, 0x89, 0xc2, 0x97, 0xf2, 0xaf, 0xb4, 0x3d, 0xd1, 0x6d, 0xf8, 0x08, - 0x26, 0x53, 0x00, 0x86, 0xe7, 0x1c, 0xbf, 0xce, 0x16, 0x72, 0xd3, 0x3f, 0x8a, 0xe3, 0x39, 0xfb, - 0x57, 0xd9, 0xa3, 0x14, 0x0b, 0xce, 0x97, 0x73, 0xc2, 0x95, 0x34, 0xc3, 0xe8, 0xdb, 0x8d, 0xc4, - 0xdd, 0x56, 0xc2, 0xb9, 0xf0, 0x5e, 0x7b, 0x80, 0x61, 0xe4, 0x7d, 0xdb, 0x37, 0x36, 0x98, 0xe9, - 0xf2, 0x08, 0xda, 0x99, 0x3c, 0x72, 0x3d, 0x72, 0x87, 0x26, 0x6d, 0xa1, 0x5f, 0x27, 0x60, 0x94, - 0x79, 0x73, 0x0d, 0xb1, 0x23, 0x84, 0xef, 0x08, 0xb0, 0x60, 0xb9, 0x72, 0x17, 0x43, 0x72, 0xd5, - 0xdb, 0xc2, 0x55, 0xeb, 0x3a, 0x33, 0xad, 0x9e, 0x7c, 0x39, 0xc1, 0x37, 0x1e, 0xf1, 0x89, 0x1f, - 0xca, 0x12, 0x1e, 0x70, 0x5c, 0x21, 0xc2, 0x19, 0x87, 0xbd, 0x2d, 0x6f, 0x00, 0x95, 0x89, 0x1f, - 0x01, 0x06, 0xbe, 0x76, 0xd5, 0xe2, 0x92, 0xf2, 0x18, 0x84, 0xc2, 0xdd, 0x51, 0x85, 0x3e, 0x86, - 0xb8, 0xc2, 0x10, 0x83, 0x80, 0x4d, 0xa2, 0xb0, 0x3f, 0x42, 0x0c, 0xe2, 0x3a, 0x2c, 0x75, 0x62, - 0xb3, 0xf0, 0x0a, 0xde, 0xb8, 0xf1, 0x03, 0x1b, 0x13, 0xa3, 0xfe, 0x79, 0xdd, 0xc5, 0x17, 0x86, - 0xb0, 0x10, 0xc0, 0x79, 0x03, 0xf6, 0x89, 0x75, 0xc5, 0x2f, 0x0c, 0x94, 0xc4, 0xf5, 0x4a, 0x17, - 0x83, 0xcd, 0x87, 0x7c, 0x63, 0xe0, 0x32, 0xdb, 0xd4, 0xba, 0x25, 0xa0, 0x2f, 0xc0, 0xab, 0x0c, - 0xa5, 0x86, 0xc0, 0x1f, 0x64, 0x11, 0x6d, 0x1e, 0x7c, 0x03, 0x13, 0xb4, 0x6f, 0xad, 0x16, 0x46, - 0xe3, 0x76, 0x47, 0xb6, 0x81, 0x91, 0x8d, 0xb7, 0xe3, 0x7d, 0x66, 0xb6, 0x56, 0x2d, 0xdf, 0x3b, - 0xf9, 0x43, 0x71, 0x98, 0xd9, 0x4a, 0xd8, 0x1a, 0x13, 0xa3, 0xbe, 0xa9, 0xe7, 0x04, 0xab, 0xc8, - 0x0c, 0x5b, 0x78, 0x48, 0xdf, 0x81, 0x71, 0xd7, 0xd6, 0x4c, 0xa7, 0xcd, 0x6c, 0xa7, 0x61, 0x98, - 0x8d, 0xf8, 0x7d, 0x77, 0x4e, 0xe2, 0x26, 0x40, 0xe9, 0xd5, 0x41, 0x9d, 0x06, 0x9a, 0x6e, 0x9b, - 0x78, 0x95, 0xd2, 0x6f, 0xc3, 0xa1, 0xbe, 0x29, 0x94, 0xb6, 0x1a, 0xc1, 0x3c, 0x56, 0x4f, 0x25, - 0xd5, 0x07, 0x8a, 0xfc, 0x41, 0x2f, 0x55, 0x9c, 0x0c, 0x4b, 0xe5, 0xa6, 0xc3, 0xec, 0x0d, 0xd6, - 0xaa, 0x75, 0x2d, 0xfd, 0xe3, 0x5b, 0xcc, 0xe8, 0xac, 0xc9, 0x3e, 0x46, 0x3f, 0xc1, 0x57, 0x48, - 0xa6, 0x16, 0xdc, 0xac, 0x65, 0x38, 0x1c, 0x04, 0x55, 0xd3, 0x9b, 0x6f, 0xac, 0xf1, 0x05, 0x98, - 0x7d, 0x0e, 0xf9, 0x93, 0x11, 0x59, 0x3a, 0x03, 0x07, 0x62, 0x4b, 0xc5, 0x0b, 0x65, 0xb4, 0x19, - 0x2e, 0x51, 0xd6, 0xe1, 0x74, 0x3c, 0xdf, 0x45, 0xe4, 0x77, 0x26, 0xc3, 0xde, 0x81, 0xb9, 0x42, - 0x8b, 0xe8, 0xf3, 0x30, 0x7e, 0x92, 0xc4, 0x7f, 0x21, 0xf6, 0xfd, 0xcb, 0x96, 0x5f, 0xdf, 0xc4, - 0x3a, 0x3c, 0x90, 0x42, 0x83, 0x6f, 0xc3, 0x7e, 0x91, 0x06, 0xfc, 0x20, 0x2c, 0xcc, 0x1b, 0x58, - 0x5e, 0xfb, 0x62, 0xca, 0x2d, 0xf4, 0xee, 0x9e, 0x6d, 0x3d, 0x60, 0xba, 0xcb, 0x5a, 0x3c, 0x18, - 0x57, 0x8d, 0x1e, 0xb3, 0xfa, 0x6e, 0xa9, 0xc0, 0x78, 0x1f, 0xe6, 0x8b, 0x35, 0x21, 0x6e, 0xef, - 0x0e, 0x17, 0x13, 0xf1, 0xad, 0x1a, 0x73, 0xa3, 0xcb, 0x95, 0x4b, 0x7e, 0xa5, 0xc4, 0x4f, 0x84, - 0x27, 0x70, 0xd9, 0x1d, 0xeb, 0xf8, 0x15, 0x46, 0x4c, 0x14, 0xcd, 0x7f, 0x03, 0xc6, 0xc4, 0x21, - 0x37, 0x78, 0xda, 0xf7, 0x37, 0x2f, 0xe7, 0x81, 0x12, 0x51, 0x53, 0x3f, 0xd0, 0x8c, 0xe8, 0x54, - 0x56, 0xb1, 0xb2, 0x16, 0x2b, 0x56, 0x2c, 0xc3, 0xac, 0x6d, 0x96, 0xbc, 0x3f, 0x53, 0xee, 0xae, - 0x0f, 0xb0, 0xde, 0x4e, 0xd1, 0x8a, 0x3e, 0x9c, 0x87, 0x3d, 0xba, 0x65, 0x98, 0x78, 0x5f, 0x4c, - 0x56, 0xb1, 0x29, 0xd7, 0xd4, 0x1c, 0x56, 0xc5, 0x0e, 0x5e, 0x95, 0xcb, 0x89, 0x03, 0xe7, 0x8b, - 0x95, 0xe3, 0x70, 0x34, 0xaa, 0xd6, 0x03, 0x71, 0xc7, 0x08, 0x7a, 0x3c, 0xca, 0x55, 0xec, 0xa4, - 0x24, 0xa6, 0xc3, 0x3a, 0x22, 0x74, 0x45, 0xec, 0xda, 0x48, 0x1d, 0x02, 0x5f, 0x1c, 0xe5, 0xfb, - 0x04, 0x8e, 0x44, 0x35, 0x68, 0xdd, 0xae, 0x6c, 0x59, 0xf7, 0x0e, 0x40, 0xd8, 0x96, 0xe4, 0x9b, - 0x31, 0xba, 0x7c, 0x3a, 0xe6, 0x95, 0x68, 0x7b, 0xfa, 0xbe, 0xdd, 0xd3, 0x3a, 0xfe, 0x9b, 0xa0, - 0x1e, 0x91, 0x54, 0x1e, 0x93, 0x58, 0xd0, 0x20, 0x04, 0x74, 0xe0, 0x2e, 0xe0, 0xe1, 0x35, 0x74, - 0x6f, 0x5c, 0x3e, 0x73, 0x87, 0xca, 0xea, 0xa3, 0xcd, 0x50, 0x31, 0xbd, 0x99, 0x82, 0x7a, 0xae, - 0x10, 0xb5, 0x40, 0x13, 0x83, 0x3d, 0x14, 0x46, 0x5a, 0xb7, 0xbb, 0x1d, 0x5d, 0x1d, 0x2b, 0x1e, - 0x46, 0x51, 0xad, 0xb8, 0x23, 0xef, 0xc2, 0x68, 0x64, 0x47, 0x30, 0x9a, 0xca, 0x6d, 0x08, 0x84, - 0x1b, 0xa2, 0xb4, 0x53, 0x0c, 0xde, 0xe7, 0x77, 0xed, 0xf6, 0xde, 0xd8, 0xb6, 0xff, 0x50, 0x4c, - 0xb1, 0xb3, 0x43, 0x67, 0xad, 0xb4, 0xf1, 0xe6, 0x0b, 0xe7, 0xfd, 0xfa, 0xbf, 0xd4, 0x49, 0x0d, - 0x15, 0xe3, 0xbb, 0x13, 0xc5, 0xf8, 0x2f, 0x08, 0xf6, 0xe2, 0xb2, 0x0d, 0x05, 0x79, 0x6c, 0xf8, - 0xbd, 0x52, 0xcd, 0x7d, 0xaf, 0x24, 0x14, 0x86, 0x8f, 0x16, 0xef, 0xee, 0x62, 0xa6, 0xd5, 0xef, - 0xac, 0x35, 0xd6, 0xad, 0x47, 0xcc, 0xe6, 0xb8, 0x5e, 0xae, 0x8f, 0x8a, 0xb1, 0x7b, 0xde, 0x90, - 0xf2, 0x30, 0x72, 0x13, 0xfa, 0x3d, 0x8b, 0xc8, 0xfe, 0xef, 0xc4, 0xe5, 0xfb, 0x5d, 0xbc, 0x54, - 0x72, 0x4d, 0xee, 0xd4, 0x81, 0xff, 0x98, 0x60, 0x94, 0xa1, 0xe5, 0x1b, 0x03, 0xa6, 0xf7, 0x5d, - 0xb6, 0xd2, 0xd5, 0x8c, 0xde, 0x97, 0x9c, 0xd5, 0x7e, 0x4f, 0xb0, 0xcc, 0x4f, 0x85, 0x12, 0xb4, - 0x26, 0xf6, 0xe9, 0xde, 0x80, 0xef, 0xfa, 0x78, 0x55, 0xd0, 0x23, 0x55, 0x9f, 0x1e, 0xa9, 0x5e, - 0x33, 0x37, 0x6b, 0xaf, 0x7d, 0xf6, 0x78, 0x71, 0xcc, 0xaf, 0x6d, 0x85, 0x02, 0x14, 0xdb, 0xb6, - 0x6c, 0xb6, 0xfc, 0x44, 0x85, 0xbd, 0x1c, 0x2e, 0xfd, 0x11, 0x81, 0x7d, 0x82, 0x13, 0xa1, 0x39, - 0x27, 0x91, 0x64, 0x6a, 0x2a, 0x8b, 0x92, 0xab, 0x85, 0x75, 0x65, 0xfa, 0x07, 0x9f, 0xff, 0xef, - 0xe7, 0xbb, 0x2b, 0x74, 0x42, 0x6d, 0x0f, 0x86, 0x48, 0x26, 0x41, 0xc2, 0xd0, 0x3f, 0x12, 0x78, - 0x75, 0x98, 0x41, 0xa1, 0x17, 0x0b, 0xac, 0x64, 0x30, 0x36, 0x95, 0xaf, 0x95, 0x96, 0x43, 0x9c, - 0xe7, 0x38, 0xce, 0xd3, 0xf4, 0x54, 0x12, 0x67, 0xd8, 0xb0, 0x55, 0x75, 0x21, 0xce, 0x31, 0x27, - 0xd8, 0xa2, 0x22, 0xcc, 0x19, 0x0c, 0x4e, 0x21, 0xe6, 0x2c, 0x92, 0x46, 0x12, 0xb3, 0x8d, 0xf0, - 0x62, 0x98, 0x31, 0xcf, 0xc8, 0x63, 0x8e, 0xf7, 0xc3, 0xe4, 0x31, 0x0f, 0xb5, 0xa9, 0x64, 0xf7, - 0x19, 0xe1, 0x7d, 0x46, 0x60, 0x22, 0x8b, 0xf9, 0xa0, 0x57, 0x4a, 0x62, 0x18, 0xe2, 0x63, 0x2a, - 0x57, 0xb7, 0x2c, 0x8f, 0xbe, 0x2c, 0x72, 0x5f, 0xe6, 0xe8, 0xac, 0x8c, 0x2f, 0x0e, 0xfd, 0x3b, - 0x81, 0xc3, 0xa9, 0x74, 0x08, 0x7d, 0xb3, 0x00, 0x49, 0x1e, 0x11, 0x53, 0xf9, 0xfa, 0xd6, 0x84, - 0x4b, 0xf9, 0x60, 0xfb, 0x48, 0xff, 0x4b, 0x60, 0xa6, 0x90, 0xed, 0xa0, 0x37, 0x25, 0x20, 0xc9, - 0x10, 0x35, 0x95, 0x5b, 0x2f, 0xae, 0x08, 0xfd, 0x5c, 0xe0, 0x7e, 0x9e, 0xa4, 0x33, 0xb9, 0x7e, - 0x76, 0x35, 0xc7, 0xa5, 0x4f, 0x09, 0x1c, 0xcf, 0x6d, 0xff, 0xd3, 0x15, 0x79, 0x58, 0x99, 0x8c, - 0x45, 0xe5, 0xfa, 0x8b, 0x29, 0x41, 0xbf, 0x4e, 0x71, 0xbf, 0xa6, 0xe8, 0xb1, 0xa4, 0x5f, 0xbc, - 0xd1, 0x20, 0x5c, 0x7a, 0x42, 0x60, 0x3c, 0xad, 0x13, 0x49, 0x2f, 0x4b, 0x80, 0xc8, 0x68, 0x95, - 0x56, 0xde, 0xdc, 0x92, 0xac, 0x6c, 0x1e, 0x50, 0x23, 0xc5, 0x18, 0xfd, 0x27, 0x81, 0x4a, 0xf6, - 0x3b, 0x9f, 0xbe, 0x2d, 0x8b, 0x24, 0xab, 0x29, 0x51, 0xb9, 0xf6, 0x02, 0x1a, 0xd0, 0xa3, 0xf3, - 0xdc, 0xa3, 0x45, 0x7a, 0x36, 0xdf, 0x23, 0x35, 0xda, 0x89, 0xa0, 0x3f, 0x23, 0x30, 0x12, 0x90, - 0x5f, 0xb4, 0x5a, 0x80, 0x62, 0x88, 0xee, 0xab, 0xa8, 0xd2, 0xeb, 0x25, 0xa3, 0x85, 0xd3, 0x75, - 0xf4, 0x1f, 0x04, 0x8e, 0x64, 0xb4, 0x91, 0xe8, 0x5b, 0x32, 0xd9, 0x26, 0xb3, 0x89, 0x55, 0xb9, - 0xb2, 0x55, 0x71, 0x74, 0x40, 0xe5, 0x0e, 0x2c, 0xd0, 0xb9, 0x94, 0x4d, 0x46, 0xb1, 0xf8, 0x06, - 0xff, 0x89, 0xc0, 0x6b, 0x09, 0x72, 0x8c, 0x16, 0x5e, 0x5f, 0x19, 0x74, 0x5c, 0xe5, 0x8d, 0xf2, - 0x82, 0x88, 0xfc, 0x2c, 0x47, 0x3e, 0x4b, 0x4f, 0x66, 0x7d, 0xa8, 0x16, 0x8a, 0x36, 0xdc, 0x01, - 0xfd, 0x33, 0x81, 0x43, 0x29, 0x64, 0x17, 0xbd, 0x24, 0x73, 0xe0, 0xa9, 0xfc, 0x5c, 0xe5, 0xf2, - 0x56, 0x44, 0x11, 0xfb, 0x1c, 0xc7, 0x3e, 0x43, 0x4f, 0x64, 0x61, 0xf7, 0x6b, 0x8c, 0xdf, 0x12, - 0x38, 0x10, 0xa5, 0x70, 0xe8, 0xb2, 0x8c, 0xd5, 0xa1, 0xda, 0xe2, 0x7c, 0x29, 0x19, 0x59, 0x88, - 0x7e, 0x49, 0xf1, 0x3b, 0x02, 0x63, 0x31, 0x96, 0x89, 0x96, 0xb1, 0x17, 0x04, 0xc2, 0x85, 0x72, - 0x42, 0x88, 0x72, 0x9e, 0xa3, 0x54, 0xe8, 0x74, 0x01, 0x4a, 0x87, 0xfe, 0x92, 0xc0, 0x81, 0x28, - 0x49, 0x53, 0xb8, 0x93, 0x29, 0x14, 0x51, 0xe1, 0x4e, 0xa6, 0xb1, 0x40, 0xca, 0x09, 0x8e, 0x71, - 0x92, 0x1e, 0x49, 0x62, 0xe4, 0x3d, 0x30, 0x0e, 0x2d, 0xca, 0xdd, 0x14, 0x42, 0x4b, 0x61, 0x8e, - 0x0a, 0xa1, 0xa5, 0x91, 0x43, 0x79, 0xd0, 0x78, 0xc3, 0x90, 0xfe, 0x9a, 0xc0, 0xc1, 0x9b, 0xcc, - 0x8d, 0xd2, 0x44, 0x85, 0xe8, 0x52, 0x38, 0xa5, 0xc2, 0x47, 0x4e, 0x9c, 0x25, 0xca, 0x3b, 0x56, - 0x2c, 0x2e, 0x9a, 0x9b, 0xfc, 0x41, 0x4d, 0xff, 0x4a, 0xe0, 0x48, 0x04, 0x60, 0x94, 0x14, 0x2a, - 0xbc, 0x8b, 0x73, 0x98, 0xa4, 0xb2, 0x80, 0x97, 0x38, 0xe0, 0xb3, 0x74, 0x21, 0x0f, 0x70, 0x8c, - 0x7b, 0xa2, 0x8f, 0x09, 0x7c, 0x25, 0x82, 0x3c, 0x42, 0x30, 0x15, 0x66, 0xa5, 0x6c, 0x52, 0xaa, - 0x2c, 0xee, 0xd7, 0x39, 0xee, 0x33, 0x74, 0x3e, 0x0f, 0x77, 0xb4, 0x83, 0xe1, 0xdd, 0x65, 0x13, - 0x37, 0x99, 0x9b, 0x4a, 0x20, 0x15, 0xd6, 0xdd, 0x79, 0x14, 0x57, 0x61, 0xdd, 0x9d, 0xcb, 0x59, - 0x29, 0xcb, 0xdc, 0x93, 0x73, 0xf4, 0x4c, 0xca, 0xbb, 0x58, 0x08, 0x36, 0x1c, 0x66, 0xb6, 0x1a, - 0xae, 0x15, 0x9c, 0x03, 0xfd, 0x15, 0x81, 0xd1, 0x48, 0xf7, 0x94, 0x2e, 0x15, 0xe5, 0xa0, 0x44, - 0xb3, 0xb7, 0xb2, 0x5c, 0x46, 0x04, 0xa1, 0x9e, 0xe6, 0x50, 0xa7, 0xe9, 0x54, 0x4a, 0xd2, 0x8a, - 0xf4, 0x75, 0xe8, 0xe7, 0x04, 0x26, 0xb2, 0x5a, 0x63, 0x85, 0x8f, 0xb5, 0x82, 0xe6, 0x5d, 0xe1, - 0x63, 0xad, 0xa8, 0x27, 0xa7, 0x5c, 0xe4, 0x5e, 0xbc, 0x4e, 0xab, 0xb9, 0x5e, 0x34, 0x30, 0x01, - 0x7b, 0x71, 0x24, 0x4a, 0xcf, 0xbf, 0x10, 0x78, 0x2d, 0xd1, 0xa6, 0x2d, 0x2c, 0x20, 0xb2, 0xda, - 0xc5, 0x85, 0x05, 0x44, 0x66, 0x47, 0x58, 0xa9, 0x72, 0x07, 0xe6, 0xe9, 0xe9, 0x7c, 0x07, 0x02, - 0xe0, 0x7f, 0x23, 0x40, 0x93, 0x6d, 0x58, 0x5a, 0x06, 0x40, 0xac, 0x43, 0x5c, 0xb9, 0xb4, 0x05, - 0xc9, 0xe2, 0xb2, 0x6d, 0x08, 0xbb, 0x68, 0x27, 0xd3, 0x2f, 0x08, 0x1c, 0xcd, 0xe9, 0x2d, 0xd2, - 0x6b, 0x25, 0x1e, 0x4f, 0xe9, 0xad, 0xd0, 0x4a, 0xed, 0x45, 0x54, 0xa0, 0x5f, 0x97, 0xb9, 0x5f, - 0x17, 0xe8, 0x72, 0xd2, 0x2f, 0xef, 0xdd, 0xd5, 0xf0, 0x3f, 0xe5, 0x21, 0x27, 0x79, 0x66, 0x7a, - 0x42, 0xe0, 0x50, 0x4a, 0xd7, 0xb0, 0x30, 0x9b, 0x66, 0x37, 0x3d, 0x0b, 0x6b, 0xbc, 0x9c, 0x26, - 0x65, 0xde, 0x11, 0xf9, 0x5e, 0x30, 0x21, 0xd7, 0xe0, 0x5d, 0x49, 0xfa, 0x13, 0x02, 0xfb, 0x91, - 0xf7, 0xa4, 0x72, 0x69, 0x3c, 0xc8, 0x42, 0x55, 0xd9, 0xe5, 0x88, 0x6d, 0x86, 0x63, 0x3b, 0x4a, - 0x27, 0xb3, 0xd2, 0xbe, 0x43, 0xff, 0x45, 0xe0, 0x68, 0x0e, 0xc3, 0x59, 0x18, 0x30, 0xc5, 0x3c, - 0x6b, 0x61, 0xc0, 0x48, 0x10, 0xac, 0x79, 0x17, 0xef, 0xba, 0x2f, 0x2e, 0xfe, 0xfd, 0x42, 0x03, - 0x29, 0x57, 0x51, 0x53, 0x47, 0x98, 0x4d, 0x2a, 0x97, 0xc3, 0x63, 0xac, 0x6c, 0x71, 0x4d, 0x9d, - 0x42, 0xc7, 0xe6, 0xd6, 0xd4, 0x51, 0x9a, 0x36, 0x9a, 0x23, 0x43, 0x46, 0x54, 0x36, 0x47, 0x26, - 0x98, 0x59, 0xd9, 0x1c, 0x99, 0x24, 0x5f, 0x65, 0x72, 0xa4, 0x65, 0x98, 0xde, 0x27, 0x28, 0x4a, - 0xd9, 0x3f, 0x10, 0x38, 0x38, 0x44, 0xaa, 0xd2, 0xaf, 0xca, 0x59, 0x1f, 0xe2, 0x68, 0x2b, 0x17, - 0xcb, 0x8a, 0x49, 0xbc, 0x0b, 0x11, 0x32, 0xe7, 0x31, 0xba, 0x86, 0xe3, 0xd6, 0x6e, 0x7f, 0xfa, - 0x6c, 0x8a, 0x3c, 0x7d, 0x36, 0x45, 0xbe, 0x78, 0x36, 0x45, 0x7e, 0xfa, 0x7c, 0x6a, 0xd7, 0xd3, - 0xe7, 0x53, 0xbb, 0xfe, 0xfd, 0x7c, 0x6a, 0xd7, 0xb7, 0xd4, 0x8e, 0xe1, 0xae, 0xf5, 0x9b, 0x55, - 0xdd, 0xea, 0xa9, 0xed, 0xbe, 0xa9, 0xbb, 0x86, 0x65, 0x0e, 0xd4, 0xf6, 0x60, 0x51, 0xb7, 0x6c, - 0xa6, 0xc6, 0x34, 0xf3, 0xff, 0xdc, 0xd1, 0xdc, 0xc7, 0xc9, 0x87, 0xf3, 0xff, 0x0f, 0x00, 0x00, - 0xff, 0xff, 0x73, 0x3a, 0x20, 0xe6, 0xcf, 0x32, 0x00, 0x00, + // 2505 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x5b, 0xcb, 0x6f, 0x14, 0xd9, + 0xd5, 0xe7, 0xf2, 0x1c, 0x1f, 0x63, 0x18, 0x2e, 0xe6, 0xc3, 0x6e, 0xc0, 0xd8, 0x05, 0xc6, 0x36, + 0xe0, 0xee, 0xb1, 0xe1, 0x23, 0x03, 0x93, 0x81, 0xa1, 0x0d, 0x03, 0x44, 0xcc, 0xc0, 0x34, 0x1e, + 0x29, 0xca, 0x28, 0xa9, 0xa9, 0x2e, 0xdf, 0x6e, 0x17, 0xd3, 0x5d, 0xd5, 0x54, 0x55, 0x9b, 0xb6, + 0x92, 0x48, 0x51, 0x16, 0x49, 0xa4, 0x6c, 0x22, 0x45, 0x8a, 0xb2, 0x88, 0x92, 0x2c, 0xb2, 0x4c, + 0x16, 0x91, 0x50, 0x22, 0x45, 0x9a, 0x45, 0x76, 0x93, 0x59, 0x21, 0x8d, 0xf2, 0x58, 0x45, 0x13, + 0xc8, 0x1f, 0x12, 0xd5, 0xbd, 0xa7, 0x5e, 0x5d, 0xaf, 0x5b, 0xc6, 0x9e, 0x9d, 0xfb, 0xd6, 0x3d, + 0xe7, 0xfc, 0x7e, 0xf7, 0x71, 0xce, 0xb9, 0xe7, 0xc8, 0x70, 0xb6, 0x35, 0xa8, 0xb5, 0x6d, 0x6d, + 0xc3, 0x70, 0x37, 0x6b, 0xba, 0x6d, 0x39, 0x8e, 0xbe, 0xae, 0x19, 0x66, 0x6d, 0x63, 0xa9, 0xf6, + 0xa4, 0xcf, 0xec, 0xcd, 0x6a, 0xcf, 0xb6, 0x5c, 0x8b, 0x4e, 0xb4, 0x06, 0x55, 0x9c, 0x55, 0x0d, + 0x67, 0x55, 0x37, 0x96, 0x2a, 0xe7, 0x75, 0xcb, 0xe9, 0x5a, 0x4e, 0xad, 0xa9, 0x39, 0x4c, 0x88, + 0xd4, 0x36, 0x96, 0x9a, 0xcc, 0xd5, 0x96, 0x6a, 0x3d, 0xad, 0x6d, 0x98, 0x9a, 0x6b, 0x58, 0xa6, + 0xd0, 0x52, 0x99, 0x8a, 0xce, 0xf5, 0x67, 0xe9, 0x96, 0xe1, 0x7f, 0x9f, 0x14, 0xdf, 0x55, 0xfe, + 0xab, 0x26, 0x7e, 0xe0, 0xa7, 0x99, 0x4c, 0x98, 0xee, 0x00, 0xa7, 0x64, 0x33, 0x71, 0x37, 0x7b, + 0xcc, 0x57, 0x34, 0xde, 0xb6, 0xda, 0x96, 0x30, 0xe0, 0xfd, 0x85, 0xa3, 0x27, 0xdb, 0x96, 0xd5, + 0xee, 0xb0, 0x9a, 0xd6, 0x33, 0x6a, 0x9a, 0x69, 0x5a, 0x2e, 0x87, 0xed, 0xcb, 0x4c, 0xe2, 0x57, + 0xfe, 0xab, 0xd9, 0x6f, 0xd5, 0x34, 0x13, 0x17, 0x46, 0xb9, 0x04, 0xf4, 0x03, 0x8f, 0xf4, 0x43, + 0xcd, 0xd6, 0xba, 0x4e, 0x83, 0x3d, 0xe9, 0x33, 0xc7, 0xa5, 0xa7, 0x00, 0xb8, 0x71, 0xd5, 0xd4, + 0xba, 0x6c, 0x82, 0x4c, 0x93, 0xf9, 0x91, 0xc6, 0x08, 0x1f, 0x79, 0x5f, 0xeb, 0x32, 0xe5, 0x43, + 0x38, 0x1a, 0x13, 0x72, 0x7a, 0x96, 0xe9, 0x30, 0x7a, 0x1d, 0xf6, 0xf7, 0xf8, 0x08, 0x97, 0x18, + 0x5d, 0x9e, 0xae, 0x66, 0xad, 0x7a, 0x55, 0x48, 0xd6, 0xf7, 0x7e, 0xf6, 0xef, 0xd3, 0xbb, 0x1a, + 0x28, 0xa5, 0xbc, 0x0d, 0x27, 0xb9, 0xda, 0x95, 0xbe, 0x6d, 0x33, 0xd3, 0x7d, 0x60, 0x6b, 0x7a, + 0x87, 0x3d, 0x62, 0xae, 0x24, 0x2a, 0x1d, 0x4e, 0x65, 0x88, 0x23, 0xbe, 0x3a, 0x80, 0xc5, 0x07, + 0x55, 0x87, 0xb9, 0x88, 0xf1, 0x4c, 0x36, 0xc6, 0x50, 0xc1, 0x88, 0xe5, 0xff, 0xa9, 0x3c, 0x42, + 0x8c, 0xc3, 0xe0, 0xe4, 0x30, 0xd2, 0x71, 0xd8, 0x67, 0x5a, 0xa6, 0xce, 0x26, 0x76, 0x4f, 0x93, + 0xf9, 0xbd, 0x0d, 0xf1, 0x23, 0x40, 0x9e, 0x54, 0xba, 0x8d, 0xc8, 0xbf, 0x37, 0x8c, 0x7c, 0xc5, + 0x32, 0x5b, 0x86, 0xdd, 0x95, 0x44, 0x3e, 0x07, 0x87, 0x9b, 0xb6, 0xb1, 0xd6, 0x66, 0xb6, 0xaa, + 0xad, 0xad, 0xd9, 0xcc, 0x71, 0x38, 0x87, 0x91, 0xc6, 0x21, 0x1c, 0xbe, 0x29, 0x46, 0x43, 0x8a, + 0x7b, 0xa2, 0x14, 0xd7, 0x87, 0x29, 0x06, 0xd6, 0x91, 0xe2, 0x1d, 0x38, 0xa0, 0x8b, 0x21, 0xe4, + 0xb7, 0x98, 0xcd, 0xef, 0x3d, 0xa7, 0x9d, 0xd0, 0xe3, 0x4b, 0x2b, 0x1f, 0xc1, 0xd9, 0x54, 0x4b, + 0x4e, 0x7d, 0xf3, 0x7d, 0x0f, 0xca, 0x2b, 0xed, 0x94, 0x0d, 0xb3, 0x05, 0xca, 0x91, 0xce, 0x3d, + 0x78, 0x0d, 0x01, 0x79, 0xb7, 0x61, 0x4f, 0x79, 0x3e, 0x81, 0xb8, 0x52, 0x87, 0x19, 0x6e, 0xf3, + 0xbe, 0xe6, 0x24, 0xee, 0x84, 0xec, 0x8d, 0x7d, 0x0c, 0x4a, 0x9e, 0x0e, 0x04, 0x7d, 0x0b, 0x46, + 0xc3, 0x63, 0xe6, 0xe3, 0x96, 0x3a, 0x67, 0x10, 0x9c, 0x33, 0x47, 0x79, 0x0a, 0x8b, 0x81, 0xad, + 0x87, 0xcc, 0x5c, 0x33, 0xcc, 0xf6, 0xb0, 0xc9, 0xfa, 0xa6, 0x77, 0x5a, 0xb6, 0xf9, 0xe4, 0x29, + 0x1b, 0x50, 0x95, 0x35, 0xbc, 0xad, 0x84, 0x7f, 0x44, 0x60, 0x9c, 0x1b, 0xae, 0x6b, 0xae, 0xbe, + 0xfe, 0x2e, 0x93, 0x3d, 0x62, 0x0f, 0xe0, 0x60, 0xd7, 0x30, 0x7d, 0x21, 0x8f, 0x95, 0x67, 0x7e, + 0x36, 0xe7, 0x9c, 0x84, 0xb3, 0xd1, 0x75, 0xc6, 0x14, 0x28, 0x1f, 0xc1, 0xb1, 0x21, 0x1c, 0xa1, + 0xff, 0x68, 0x7a, 0x63, 0x6a, 0xcb, 0xb3, 0x53, 0x48, 0x33, 0xd0, 0xd8, 0x18, 0x69, 0x06, 0xca, + 0x1d, 0x58, 0x18, 0x5e, 0x5d, 0x3e, 0x6f, 0x47, 0xb7, 0xb4, 0x0b, 0xe7, 0x65, 0x8c, 0x22, 0xcd, + 0x1b, 0xb0, 0x8f, 0xe3, 0x45, 0x0f, 0xb2, 0x90, 0xb3, 0x91, 0x7d, 0xb7, 0x6d, 0x19, 0x66, 0x7b, + 0x75, 0x20, 0xd4, 0x09, 0x39, 0xe5, 0xba, 0xef, 0xa5, 0xe2, 0x9f, 0x99, 0xec, 0x35, 0x63, 0x30, + 0x95, 0x25, 0x8f, 0x10, 0x57, 0xe0, 0x40, 0x53, 0x0c, 0xe1, 0x36, 0x94, 0x00, 0xe9, 0x4b, 0x2a, + 0x9b, 0x70, 0x22, 0xcd, 0x8c, 0xe4, 0xe2, 0xcf, 0xc2, 0x21, 0xd7, 0xfa, 0x84, 0x99, 0xaa, 0x6e, + 0x99, 0xae, 0xad, 0xe9, 0x2e, 0xae, 0xfd, 0x18, 0x1f, 0x5d, 0xc1, 0xc1, 0x0c, 0x3f, 0xae, 0xfa, + 0x51, 0x64, 0xd8, 0xf4, 0x76, 0x6d, 0xc1, 0x6f, 0x08, 0x4c, 0x84, 0x87, 0xb8, 0x5c, 0x8c, 0x92, + 0x64, 0x96, 0x72, 0xfa, 0xf6, 0xe4, 0x87, 0xb2, 0xbd, 0xd1, 0x25, 0xf8, 0x18, 0x26, 0x53, 0x00, + 0x86, 0xfb, 0x1b, 0x0f, 0x63, 0x0b, 0xb9, 0x6e, 0x1f, 0xc5, 0x71, 0x7f, 0xfd, 0x10, 0xf6, 0x34, + 0xc5, 0x82, 0xf3, 0x55, 0xec, 0xae, 0x0e, 0x95, 0x34, 0xc3, 0xc8, 0xed, 0x76, 0x22, 0xa6, 0x95, + 0x20, 0x17, 0xc6, 0xb3, 0xc7, 0x30, 0x1d, 0xdc, 0xe9, 0xdb, 0x1b, 0xcc, 0x74, 0x79, 0xe4, 0xdc, + 0x19, 0xff, 0x71, 0x2b, 0x12, 0x3b, 0x93, 0xb6, 0x90, 0xd7, 0x69, 0x18, 0x65, 0xde, 0x37, 0x55, + 0xac, 0x08, 0xe1, 0x2b, 0x02, 0x2c, 0x98, 0xae, 0x3c, 0xc0, 0x23, 0xb9, 0xea, 0x2d, 0xe1, 0xaa, + 0x75, 0x8b, 0x99, 0x56, 0x57, 0x3e, 0x8d, 0xe0, 0x0b, 0x8f, 0xf8, 0xc4, 0x0f, 0x65, 0x09, 0x37, + 0x38, 0xae, 0x10, 0xe1, 0x8c, 0xc3, 0xbe, 0x35, 0x6f, 0x00, 0x95, 0x89, 0x1f, 0x01, 0x06, 0x3e, + 0x77, 0xd5, 0xe2, 0x92, 0xf2, 0x18, 0x84, 0xc2, 0xdd, 0x51, 0x85, 0x3e, 0x86, 0xb8, 0xc2, 0x10, + 0x83, 0x80, 0x4d, 0xa2, 0xb0, 0x3f, 0x46, 0x0c, 0x22, 0x0c, 0x96, 0xda, 0xb1, 0x59, 0x38, 0x84, + 0x91, 0x36, 0xbe, 0x61, 0x63, 0x62, 0xd4, 0xdf, 0xaf, 0x07, 0xf8, 0xb2, 0x10, 0x16, 0x02, 0x38, + 0x6f, 0xc2, 0x7e, 0x31, 0xaf, 0xf8, 0x65, 0x81, 0x92, 0x38, 0x5f, 0xe9, 0xe0, 0x61, 0xf3, 0x21, + 0xdf, 0x1e, 0xb8, 0xcc, 0x36, 0xb5, 0x4e, 0x09, 0xe8, 0x0b, 0xf0, 0x3a, 0x43, 0xa9, 0x21, 0xf0, + 0x87, 0x59, 0x44, 0x9b, 0x07, 0xdf, 0x80, 0xd3, 0x31, 0x6b, 0xf5, 0xf0, 0x34, 0x6e, 0xf7, 0xc9, + 0x36, 0xf0, 0x64, 0x63, 0x54, 0x7c, 0xc4, 0xcc, 0xb5, 0x55, 0xcb, 0x67, 0x27, 0xbf, 0x29, 0x0e, + 0x33, 0xd7, 0x12, 0xb6, 0xc6, 0xc4, 0xa8, 0x6f, 0xea, 0x25, 0xc1, 0xec, 0x31, 0xc3, 0x16, 0x6e, + 0xd2, 0x77, 0x60, 0xdc, 0xb5, 0x35, 0xd3, 0x69, 0x31, 0xdb, 0x51, 0x0d, 0x53, 0x8d, 0xc7, 0xb9, + 0x8b, 0x12, 0x91, 0x00, 0xa5, 0x57, 0x07, 0x0d, 0x1a, 0x68, 0xba, 0x67, 0x62, 0x08, 0xa5, 0xdf, + 0x86, 0xa3, 0x7d, 0x53, 0x28, 0x5d, 0x53, 0x83, 0xef, 0x98, 0x35, 0x95, 0x54, 0x1f, 0x28, 0xf2, + 0x07, 0x3d, 0x57, 0x71, 0x26, 0x4c, 0x91, 0x9b, 0x0e, 0xb3, 0x37, 0xd8, 0x5a, 0xbd, 0x63, 0xe9, + 0x9f, 0xdc, 0x65, 0x46, 0x7b, 0x5d, 0xf6, 0x11, 0xfa, 0x7d, 0x7c, 0x7d, 0x64, 0x6a, 0xc1, 0xc5, + 0x5a, 0x86, 0x63, 0xc1, 0xa1, 0x6a, 0x7a, 0xdf, 0xd5, 0x75, 0x3e, 0x01, 0xbd, 0xcf, 0x51, 0xff, + 0x63, 0x44, 0x96, 0xce, 0xc0, 0xc1, 0xd8, 0x54, 0xf1, 0x32, 0x19, 0x6d, 0x86, 0x53, 0x94, 0x1e, + 0x9c, 0x8b, 0xfb, 0xbb, 0x88, 0xfc, 0xce, 0x78, 0xd8, 0xfb, 0x30, 0x57, 0x68, 0x11, 0x39, 0x0f, + 0xe3, 0x27, 0x49, 0xfc, 0x97, 0x63, 0xf7, 0x5f, 0x36, 0xed, 0xfa, 0x26, 0xe6, 0xdf, 0x81, 0x14, + 0x1a, 0x7c, 0x07, 0x0e, 0x08, 0x37, 0xe0, 0x1f, 0xc2, 0x42, 0xbf, 0x81, 0x69, 0xb5, 0x2f, 0xa6, + 0xdc, 0x45, 0x76, 0x0f, 0x6d, 0xeb, 0x31, 0xd3, 0x5d, 0xb6, 0xc6, 0x0f, 0xe3, 0xaa, 0xd1, 0x65, + 0x56, 0xdf, 0x2d, 0x75, 0x30, 0x3e, 0x80, 0xf9, 0x62, 0x4d, 0x88, 0xdb, 0x8b, 0xe1, 0xe2, 0x43, + 0x7c, 0xa9, 0xc6, 0xdc, 0xe8, 0x74, 0xe5, 0xaa, 0x9f, 0x29, 0xf1, 0x1d, 0xe1, 0x0e, 0x5c, 0x76, + 0xc5, 0xda, 0x7e, 0x86, 0x11, 0x13, 0x45, 0xf3, 0xdf, 0x80, 0x31, 0xb1, 0xc9, 0x2a, 0x77, 0xfb, + 0xfe, 0xe2, 0xe5, 0x3c, 0x4c, 0x22, 0x6a, 0x1a, 0x07, 0x9b, 0x11, 0x9d, 0xca, 0x2a, 0x66, 0xd4, + 0x62, 0xc6, 0x8a, 0x65, 0x98, 0xf5, 0xcd, 0x92, 0xf1, 0x33, 0x25, 0x76, 0x7d, 0x88, 0x79, 0x76, + 0x8a, 0x56, 0xe4, 0x70, 0x09, 0xf6, 0xea, 0x96, 0x61, 0x62, 0xbc, 0x98, 0xac, 0x62, 0x31, 0xae, + 0xa9, 0x39, 0xac, 0x8a, 0x95, 0xbb, 0x2a, 0x97, 0x13, 0x1b, 0xce, 0x27, 0x2b, 0xa7, 0x30, 0xaf, + 0x46, 0xb5, 0x1e, 0x88, 0xfb, 0x46, 0x50, 0xdb, 0x51, 0x6e, 0x60, 0xee, 0x9b, 0xf8, 0x1c, 0xe6, + 0x11, 0x21, 0x15, 0xb1, 0x6a, 0x23, 0x0d, 0x08, 0xb8, 0x38, 0xca, 0x0f, 0x08, 0x1c, 0x8f, 0x6a, + 0xd0, 0x3a, 0x1d, 0xd9, 0xb4, 0xee, 0x5d, 0x80, 0xb0, 0x1c, 0xc9, 0x17, 0x63, 0x74, 0xf9, 0x5c, + 0x8c, 0x95, 0x28, 0x77, 0xfa, 0xdc, 0x1e, 0x6a, 0x6d, 0xff, 0x19, 0xda, 0x88, 0x48, 0x2a, 0xcf, + 0x48, 0xec, 0xd0, 0x20, 0x04, 0x24, 0xf0, 0x00, 0x70, 0xf3, 0x54, 0xdd, 0x1b, 0x97, 0xf7, 0xdc, + 0xa1, 0xb2, 0xc6, 0x68, 0x33, 0x54, 0x4c, 0xef, 0xa4, 0xa0, 0x9e, 0x2b, 0x44, 0x2d, 0xd0, 0xc4, + 0x60, 0x0f, 0x1d, 0x23, 0xad, 0xd3, 0xd9, 0x8e, 0x6a, 0x8e, 0x15, 0x3f, 0x46, 0x51, 0xad, 0xb8, + 0x22, 0xef, 0xc1, 0x68, 0x64, 0x45, 0xf0, 0x34, 0x95, 0x5b, 0x10, 0x08, 0x17, 0x44, 0x69, 0xa5, + 0x18, 0x7c, 0xc4, 0x63, 0xed, 0xf6, 0x46, 0x6c, 0x1b, 0xf3, 0x90, 0x34, 0x3b, 0x3b, 0xb4, 0xd7, + 0x4a, 0x0b, 0x23, 0x5f, 0xf8, 0xdd, 0xcf, 0xff, 0x4b, 0xed, 0xd4, 0x50, 0x32, 0xbe, 0x3b, 0x91, + 0x8c, 0xff, 0x82, 0x60, 0x0d, 0x2e, 0xdb, 0x50, 0xe0, 0xc7, 0x86, 0xdf, 0x2b, 0xd5, 0xdc, 0xf7, + 0x4a, 0x42, 0x61, 0xf8, 0x68, 0xf1, 0x62, 0x17, 0x33, 0xad, 0x7e, 0x7b, 0x5d, 0xed, 0x59, 0x4f, + 0x99, 0xcd, 0x71, 0xbd, 0xd6, 0x18, 0x15, 0x63, 0x0f, 0xbd, 0x21, 0xe5, 0x49, 0x24, 0x12, 0xfa, + 0xb5, 0x8a, 0xc8, 0xfa, 0xef, 0x44, 0xf0, 0xfd, 0x2e, 0x06, 0x95, 0x5c, 0x93, 0x3b, 0xb5, 0xe1, + 0x3f, 0x21, 0x78, 0xca, 0xd0, 0xf2, 0xed, 0x01, 0xd3, 0xfb, 0x2e, 0x5b, 0xe9, 0x68, 0x46, 0xf7, + 0x2b, 0xf6, 0x6a, 0xbf, 0x27, 0x98, 0xe6, 0xa7, 0x42, 0x09, 0x4a, 0x13, 0xfb, 0x75, 0x6f, 0xc0, + 0xa7, 0x3e, 0x5e, 0x15, 0x6d, 0x91, 0xaa, 0xdf, 0x16, 0xa9, 0xde, 0x34, 0x37, 0xeb, 0x47, 0x3e, + 0x7f, 0xb6, 0x38, 0xe6, 0xe7, 0xb6, 0x42, 0x01, 0x8a, 0x6d, 0x9b, 0x37, 0x5b, 0xfe, 0xfb, 0x45, + 0xd8, 0xc7, 0xe1, 0xd2, 0x1f, 0x13, 0xd8, 0x2f, 0x7a, 0x21, 0x34, 0x67, 0x27, 0x92, 0x1d, 0x9a, + 0xca, 0xa2, 0xe4, 0x6c, 0x61, 0x5d, 0x99, 0xfe, 0xe1, 0x17, 0xff, 0xfd, 0xf9, 0xee, 0x0a, 0x9d, + 0xa8, 0xb5, 0x06, 0x43, 0xcd, 0x25, 0xd1, 0x7c, 0xa1, 0x7f, 0x24, 0xf0, 0xfa, 0x70, 0xe7, 0x84, + 0x5e, 0x29, 0xb0, 0x92, 0xd1, 0xa9, 0xa9, 0x7c, 0xad, 0xb4, 0x1c, 0xe2, 0xbc, 0xc8, 0x71, 0x9e, + 0xa3, 0x67, 0x93, 0x38, 0xc3, 0x42, 0x6d, 0x4d, 0x17, 0xe2, 0x1c, 0x73, 0xa2, 0x4b, 0x54, 0x84, + 0x39, 0xa3, 0x73, 0x53, 0x88, 0x39, 0xab, 0x39, 0x23, 0x89, 0xd9, 0x46, 0x78, 0x31, 0xcc, 0xe8, + 0x67, 0xe4, 0x31, 0xc7, 0xeb, 0x61, 0xf2, 0x98, 0x87, 0xca, 0x54, 0xb2, 0xeb, 0x8c, 0xf0, 0x3e, + 0x27, 0x30, 0x91, 0xd5, 0xf1, 0xa0, 0xd7, 0x4b, 0x62, 0x18, 0xea, 0xc3, 0x54, 0x6e, 0x6c, 0x59, + 0x1e, 0xb9, 0x2c, 0x72, 0x2e, 0x73, 0x74, 0x56, 0x86, 0x8b, 0x43, 0xff, 0x4a, 0xe0, 0x58, 0x6a, + 0x1b, 0x84, 0xbe, 0x55, 0x80, 0x24, 0xaf, 0x01, 0x53, 0xf9, 0xfa, 0xd6, 0x84, 0x4b, 0x71, 0xb0, + 0x7d, 0xa4, 0xff, 0x21, 0x30, 0x53, 0xd8, 0xe5, 0xa0, 0x77, 0x24, 0x20, 0xc9, 0x34, 0x68, 0x2a, + 0x77, 0x5f, 0x5d, 0x11, 0xf2, 0x5c, 0xe0, 0x3c, 0xcf, 0xd0, 0x99, 0x5c, 0x9e, 0x1d, 0xcd, 0x71, + 0xe9, 0x73, 0x02, 0xa7, 0x72, 0xcb, 0xfe, 0x74, 0x45, 0x1e, 0x56, 0x66, 0xa7, 0xa2, 0x72, 0xeb, + 0xd5, 0x94, 0x20, 0xaf, 0xb3, 0x9c, 0xd7, 0x14, 0x3d, 0x99, 0xe4, 0xc5, 0x0b, 0x0d, 0x82, 0xd2, + 0xa7, 0x04, 0xc6, 0xd3, 0x2a, 0x91, 0xf4, 0x9a, 0x04, 0x88, 0x8c, 0x52, 0x69, 0xe5, 0xad, 0x2d, + 0xc9, 0xca, 0xfa, 0x81, 0x5a, 0x24, 0x19, 0xa3, 0xff, 0x20, 0x50, 0xc9, 0x7e, 0xe7, 0xd3, 0x77, + 0x64, 0x91, 0x64, 0x15, 0x25, 0x2a, 0x37, 0x5f, 0x41, 0x03, 0x32, 0xba, 0xc4, 0x19, 0x2d, 0xd2, + 0x0b, 0xf9, 0x8c, 0x6a, 0xd1, 0x4a, 0x04, 0xfd, 0x1b, 0x81, 0xe3, 0x19, 0x15, 0x1b, 0xfa, 0xb6, + 0xcc, 0xc5, 0xce, 0xac, 0x17, 0x55, 0xae, 0x6f, 0x55, 0x1c, 0xf9, 0xd4, 0x38, 0x9f, 0x05, 0x3a, + 0x97, 0xc2, 0x07, 0xc5, 0xe2, 0x5c, 0x9e, 0x11, 0x38, 0x92, 0xe8, 0x3f, 0xd1, 0xc2, 0x48, 0x91, + 0xd1, 0xf1, 0xaa, 0xbc, 0x59, 0x5e, 0xb0, 0xf8, 0x6c, 0x89, 0x3b, 0x61, 0xa1, 0xa8, 0xea, 0x0e, + 0x1c, 0xfa, 0x07, 0x02, 0x87, 0x87, 0x74, 0xd1, 0xff, 0x2f, 0x67, 0xdb, 0x87, 0x7c, 0xa5, 0xac, + 0x18, 0x02, 0xbe, 0xc0, 0x01, 0xcf, 0xd2, 0x33, 0x12, 0x80, 0xe9, 0x6f, 0x09, 0x1c, 0x8c, 0xb6, + 0x49, 0xe8, 0x72, 0x81, 0xd5, 0x94, 0x7e, 0x56, 0xe5, 0x52, 0x29, 0x19, 0x84, 0x39, 0xc7, 0x61, + 0xce, 0xd0, 0xd3, 0x59, 0x30, 0xfd, 0xb0, 0xfd, 0x3b, 0x02, 0x63, 0xb1, 0x4e, 0x0e, 0x2d, 0x63, + 0x2f, 0x38, 0x01, 0x97, 0xcb, 0x09, 0x21, 0xca, 0x79, 0x8e, 0x52, 0xa1, 0xd3, 0x05, 0x28, 0x1d, + 0xfa, 0x4b, 0x02, 0x07, 0xa3, 0x8d, 0x90, 0xc2, 0x95, 0x4c, 0x69, 0xc3, 0x14, 0xae, 0x64, 0x5a, + 0xa7, 0x45, 0x39, 0xcd, 0x31, 0x4e, 0xd2, 0xe3, 0x49, 0x8c, 0xbc, 0xce, 0xc4, 0xa1, 0x45, 0xfb, + 0x23, 0x85, 0xd0, 0x52, 0xba, 0x33, 0x85, 0xd0, 0xd2, 0x1a, 0x30, 0x79, 0xd0, 0x78, 0x51, 0x8e, + 0xfe, 0x9a, 0xc0, 0xe1, 0x3b, 0xcc, 0x8d, 0xb6, 0x62, 0x0a, 0xd1, 0xa5, 0xf4, 0x6d, 0x0a, 0x1f, + 0x12, 0xf1, 0x4e, 0x4c, 0xde, 0xb6, 0x62, 0x00, 0x6f, 0x6e, 0xf2, 0x47, 0x2b, 0xfd, 0x33, 0x81, + 0xe3, 0x11, 0x80, 0xd1, 0xc6, 0x4b, 0x61, 0xbc, 0xcb, 0xe9, 0xd6, 0x94, 0x05, 0xbc, 0xc4, 0x01, + 0x5f, 0xa0, 0x0b, 0x79, 0x80, 0x63, 0xfd, 0x1d, 0xcf, 0x83, 0xfe, 0x5f, 0x04, 0x79, 0xa4, 0x89, + 0x43, 0xaf, 0x4a, 0x02, 0x4f, 0x36, 0x7e, 0xca, 0xe2, 0x7e, 0x83, 0xe3, 0x3e, 0x4f, 0xe7, 0xf3, + 0x70, 0x47, 0xab, 0x04, 0xf4, 0x57, 0x04, 0x46, 0x23, 0x55, 0x3d, 0xba, 0x54, 0x74, 0x6f, 0x13, + 0x45, 0xc8, 0xca, 0x72, 0x19, 0x11, 0x04, 0x7a, 0x8e, 0x03, 0x9d, 0xa6, 0x53, 0x29, 0x17, 0x3d, + 0x52, 0x6f, 0xa0, 0x5f, 0x10, 0x98, 0xc8, 0x2a, 0xd9, 0x14, 0x3e, 0x22, 0x0a, 0x8a, 0x4a, 0x85, + 0x8f, 0x88, 0xa2, 0x5a, 0x91, 0x72, 0x85, 0xb3, 0x78, 0x83, 0x56, 0x73, 0x59, 0xa8, 0xe8, 0xb4, + 0xbc, 0xb5, 0x17, 0x29, 0xd1, 0x9f, 0x08, 0x1c, 0x49, 0x94, 0x0f, 0x0b, 0xa3, 0x6d, 0x56, 0x19, + 0xb3, 0x30, 0xda, 0x66, 0x56, 0x2a, 0x95, 0x2a, 0x27, 0x30, 0x4f, 0xcf, 0xe5, 0x13, 0x08, 0x80, + 0xff, 0x85, 0x00, 0x4d, 0x96, 0x07, 0x69, 0x19, 0x00, 0xb1, 0xca, 0x65, 0xe5, 0xea, 0x16, 0x24, + 0x8b, 0x73, 0x9c, 0x21, 0xec, 0xa2, 0xcc, 0x49, 0xbf, 0x24, 0x70, 0x22, 0xa7, 0xe6, 0x45, 0x6f, + 0x96, 0x48, 0xea, 0xd3, 0x4b, 0x74, 0x95, 0xfa, 0xab, 0xa8, 0x40, 0x5e, 0xd7, 0x38, 0xaf, 0xcb, + 0x74, 0x39, 0xc9, 0xcb, 0x7b, 0x0f, 0xa8, 0x3d, 0x21, 0xaf, 0x0e, 0x91, 0xe4, 0xb7, 0xf9, 0x53, + 0x02, 0x47, 0x53, 0xaa, 0x59, 0x85, 0x1e, 0x28, 0xbb, 0x18, 0x57, 0xb9, 0xb6, 0x15, 0xd1, 0xe2, + 0x2d, 0xf2, 0x59, 0x30, 0x21, 0xa7, 0xf2, 0x6a, 0x19, 0xfd, 0x29, 0x81, 0x03, 0xd8, 0x8f, 0xa3, + 0x72, 0xae, 0x2f, 0xf0, 0x42, 0x55, 0xd9, 0xe9, 0x88, 0x6d, 0x86, 0x63, 0x3b, 0x41, 0x27, 0xb3, + 0x5c, 0xa5, 0x43, 0xff, 0x49, 0xe0, 0x44, 0x4e, 0xe7, 0xad, 0xf0, 0xc0, 0x14, 0xf7, 0xff, 0x0a, + 0x0f, 0x8c, 0x44, 0xe3, 0x2f, 0x2f, 0x58, 0xf5, 0x7c, 0x71, 0xd1, 0x57, 0x57, 0xb1, 0x15, 0x28, + 0xf2, 0xd0, 0x48, 0xc7, 0x8d, 0xca, 0xf9, 0xf0, 0x58, 0xb7, 0xb0, 0x38, 0x0f, 0x4d, 0x69, 0x13, + 0xe6, 0xe6, 0xa1, 0xd1, 0xf6, 0x61, 0xd4, 0x47, 0x86, 0x9d, 0x3a, 0x59, 0x1f, 0x99, 0xe8, 0x18, + 0xca, 0xfa, 0xc8, 0x64, 0x53, 0x50, 0xc6, 0x47, 0x5a, 0x86, 0xe9, 0x5d, 0x41, 0x91, 0xfe, 0x79, + 0x6f, 0x92, 0xa1, 0x66, 0x5f, 0xe1, 0x9b, 0x24, 0xbd, 0x77, 0x58, 0xf8, 0x26, 0xc9, 0xe8, 0x29, + 0xe6, 0xbe, 0x49, 0x10, 0x32, 0xaf, 0xaf, 0x77, 0x0c, 0xc7, 0xad, 0xdf, 0xfb, 0xec, 0xc5, 0x14, + 0x79, 0xfe, 0x62, 0x8a, 0x7c, 0xf9, 0x62, 0x8a, 0xfc, 0xec, 0xe5, 0xd4, 0xae, 0xe7, 0x2f, 0xa7, + 0x76, 0xfd, 0xeb, 0xe5, 0xd4, 0xae, 0x6f, 0xd5, 0xda, 0x86, 0xbb, 0xde, 0x6f, 0x56, 0x75, 0xab, + 0x5b, 0x6b, 0xf5, 0x4d, 0xdd, 0x35, 0x2c, 0x73, 0x50, 0x6b, 0x0d, 0x16, 0x75, 0xcb, 0x66, 0xb5, + 0x98, 0x66, 0xfe, 0xcf, 0x06, 0xcd, 0xfd, 0xbc, 0x28, 0x7e, 0xe9, 0x7f, 0x01, 0x00, 0x00, 0xff, + 0xff, 0xd2, 0x06, 0xb8, 0x17, 0x5f, 0x31, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -3401,10 +3397,9 @@ type QueryClient interface { LastPendingBatchRequestByAddr(ctx context.Context, in *QueryLastPendingBatchRequestByAddrRequest, opts ...grpc.CallOption) (*QueryLastPendingBatchRequestByAddrResponse, error) LastEventNonceByAddr(ctx context.Context, in *QueryLastEventNonceByAddrRequest, opts ...grpc.CallOption) (*QueryLastEventNonceByAddrResponse, error) LastEventBlockHeightByAddr(ctx context.Context, in *QueryLastEventBlockHeightByAddrRequest, opts ...grpc.CallOption) (*QueryLastEventBlockHeightByAddrResponse, error) - BatchFees(ctx context.Context, in *QueryBatchFeeRequest, opts ...grpc.CallOption) (*QueryBatchFeeResponse, error) LastObservedBlockHeight(ctx context.Context, in *QueryLastObservedBlockHeightRequest, opts ...grpc.CallOption) (*QueryLastObservedBlockHeightResponse, error) OutgoingTxBatches(ctx context.Context, in *QueryOutgoingTxBatchesRequest, opts ...grpc.CallOption) (*QueryOutgoingTxBatchesResponse, error) - BatchRequestByNonce(ctx context.Context, in *QueryBatchRequestByNonceRequest, opts ...grpc.CallOption) (*QueryBatchRequestByNonceResponse, error) + OutgoingTxBatch(ctx context.Context, in *QueryOutgoingTxBatchRequest, opts ...grpc.CallOption) (*QueryOutgoingTxBatchResponse, error) BatchConfirm(ctx context.Context, in *QueryBatchConfirmRequest, opts ...grpc.CallOption) (*QueryBatchConfirmResponse, error) BatchConfirms(ctx context.Context, in *QueryBatchConfirmsRequest, opts ...grpc.CallOption) (*QueryBatchConfirmsResponse, error) TokenToDenom(ctx context.Context, in *QueryTokenToDenomRequest, opts ...grpc.CallOption) (*QueryTokenToDenomResponse, error) @@ -3412,7 +3407,6 @@ type QueryClient interface { GetOracleByAddr(ctx context.Context, in *QueryOracleByAddrRequest, opts ...grpc.CallOption) (*QueryOracleResponse, error) GetOracleByExternalAddr(ctx context.Context, in *QueryOracleByExternalAddrRequest, opts ...grpc.CallOption) (*QueryOracleResponse, error) GetOracleByBridgerAddr(ctx context.Context, in *QueryOracleByBridgerAddrRequest, opts ...grpc.CallOption) (*QueryOracleResponse, error) - GetPendingSendToExternal(ctx context.Context, in *QueryPendingSendToExternalRequest, opts ...grpc.CallOption) (*QueryPendingSendToExternalResponse, error) BridgeCalls(ctx context.Context, in *QueryBridgeCallsRequest, opts ...grpc.CallOption) (*QueryBridgeCallsResponse, error) BridgeCallConfirmByNonce(ctx context.Context, in *QueryBridgeCallConfirmByNonceRequest, opts ...grpc.CallOption) (*QueryBridgeCallConfirmByNonceResponse, error) BridgeCallByNonce(ctx context.Context, in *QueryBridgeCallByNonceRequest, opts ...grpc.CallOption) (*QueryBridgeCallByNonceResponse, error) @@ -3525,15 +3519,6 @@ func (c *queryClient) LastEventBlockHeightByAddr(ctx context.Context, in *QueryL return out, nil } -func (c *queryClient) BatchFees(ctx context.Context, in *QueryBatchFeeRequest, opts ...grpc.CallOption) (*QueryBatchFeeResponse, error) { - out := new(QueryBatchFeeResponse) - err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Query/BatchFees", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *queryClient) LastObservedBlockHeight(ctx context.Context, in *QueryLastObservedBlockHeightRequest, opts ...grpc.CallOption) (*QueryLastObservedBlockHeightResponse, error) { out := new(QueryLastObservedBlockHeightResponse) err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Query/LastObservedBlockHeight", in, out, opts...) @@ -3552,9 +3537,9 @@ func (c *queryClient) OutgoingTxBatches(ctx context.Context, in *QueryOutgoingTx return out, nil } -func (c *queryClient) BatchRequestByNonce(ctx context.Context, in *QueryBatchRequestByNonceRequest, opts ...grpc.CallOption) (*QueryBatchRequestByNonceResponse, error) { - out := new(QueryBatchRequestByNonceResponse) - err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Query/BatchRequestByNonce", in, out, opts...) +func (c *queryClient) OutgoingTxBatch(ctx context.Context, in *QueryOutgoingTxBatchRequest, opts ...grpc.CallOption) (*QueryOutgoingTxBatchResponse, error) { + out := new(QueryOutgoingTxBatchResponse) + err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Query/OutgoingTxBatch", in, out, opts...) if err != nil { return nil, err } @@ -3624,15 +3609,6 @@ func (c *queryClient) GetOracleByBridgerAddr(ctx context.Context, in *QueryOracl return out, nil } -func (c *queryClient) GetPendingSendToExternal(ctx context.Context, in *QueryPendingSendToExternalRequest, opts ...grpc.CallOption) (*QueryPendingSendToExternalResponse, error) { - out := new(QueryPendingSendToExternalResponse) - err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Query/GetPendingSendToExternal", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *queryClient) BridgeCalls(ctx context.Context, in *QueryBridgeCallsRequest, opts ...grpc.CallOption) (*QueryBridgeCallsResponse, error) { out := new(QueryBridgeCallsResponse) err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Query/BridgeCalls", in, out, opts...) @@ -3745,10 +3721,9 @@ type QueryServer interface { LastPendingBatchRequestByAddr(context.Context, *QueryLastPendingBatchRequestByAddrRequest) (*QueryLastPendingBatchRequestByAddrResponse, error) LastEventNonceByAddr(context.Context, *QueryLastEventNonceByAddrRequest) (*QueryLastEventNonceByAddrResponse, error) LastEventBlockHeightByAddr(context.Context, *QueryLastEventBlockHeightByAddrRequest) (*QueryLastEventBlockHeightByAddrResponse, error) - BatchFees(context.Context, *QueryBatchFeeRequest) (*QueryBatchFeeResponse, error) LastObservedBlockHeight(context.Context, *QueryLastObservedBlockHeightRequest) (*QueryLastObservedBlockHeightResponse, error) OutgoingTxBatches(context.Context, *QueryOutgoingTxBatchesRequest) (*QueryOutgoingTxBatchesResponse, error) - BatchRequestByNonce(context.Context, *QueryBatchRequestByNonceRequest) (*QueryBatchRequestByNonceResponse, error) + OutgoingTxBatch(context.Context, *QueryOutgoingTxBatchRequest) (*QueryOutgoingTxBatchResponse, error) BatchConfirm(context.Context, *QueryBatchConfirmRequest) (*QueryBatchConfirmResponse, error) BatchConfirms(context.Context, *QueryBatchConfirmsRequest) (*QueryBatchConfirmsResponse, error) TokenToDenom(context.Context, *QueryTokenToDenomRequest) (*QueryTokenToDenomResponse, error) @@ -3756,7 +3731,6 @@ type QueryServer interface { GetOracleByAddr(context.Context, *QueryOracleByAddrRequest) (*QueryOracleResponse, error) GetOracleByExternalAddr(context.Context, *QueryOracleByExternalAddrRequest) (*QueryOracleResponse, error) GetOracleByBridgerAddr(context.Context, *QueryOracleByBridgerAddrRequest) (*QueryOracleResponse, error) - GetPendingSendToExternal(context.Context, *QueryPendingSendToExternalRequest) (*QueryPendingSendToExternalResponse, error) BridgeCalls(context.Context, *QueryBridgeCallsRequest) (*QueryBridgeCallsResponse, error) BridgeCallConfirmByNonce(context.Context, *QueryBridgeCallConfirmByNonceRequest) (*QueryBridgeCallConfirmByNonceResponse, error) BridgeCallByNonce(context.Context, *QueryBridgeCallByNonceRequest) (*QueryBridgeCallByNonceResponse, error) @@ -3805,17 +3779,14 @@ func (*UnimplementedQueryServer) LastEventNonceByAddr(ctx context.Context, req * func (*UnimplementedQueryServer) LastEventBlockHeightByAddr(ctx context.Context, req *QueryLastEventBlockHeightByAddrRequest) (*QueryLastEventBlockHeightByAddrResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method LastEventBlockHeightByAddr not implemented") } -func (*UnimplementedQueryServer) BatchFees(ctx context.Context, req *QueryBatchFeeRequest) (*QueryBatchFeeResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method BatchFees not implemented") -} func (*UnimplementedQueryServer) LastObservedBlockHeight(ctx context.Context, req *QueryLastObservedBlockHeightRequest) (*QueryLastObservedBlockHeightResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method LastObservedBlockHeight not implemented") } func (*UnimplementedQueryServer) OutgoingTxBatches(ctx context.Context, req *QueryOutgoingTxBatchesRequest) (*QueryOutgoingTxBatchesResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method OutgoingTxBatches not implemented") } -func (*UnimplementedQueryServer) BatchRequestByNonce(ctx context.Context, req *QueryBatchRequestByNonceRequest) (*QueryBatchRequestByNonceResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method BatchRequestByNonce not implemented") +func (*UnimplementedQueryServer) OutgoingTxBatch(ctx context.Context, req *QueryOutgoingTxBatchRequest) (*QueryOutgoingTxBatchResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method OutgoingTxBatch not implemented") } func (*UnimplementedQueryServer) BatchConfirm(ctx context.Context, req *QueryBatchConfirmRequest) (*QueryBatchConfirmResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method BatchConfirm not implemented") @@ -3838,9 +3809,6 @@ func (*UnimplementedQueryServer) GetOracleByExternalAddr(ctx context.Context, re func (*UnimplementedQueryServer) GetOracleByBridgerAddr(ctx context.Context, req *QueryOracleByBridgerAddrRequest) (*QueryOracleResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GetOracleByBridgerAddr not implemented") } -func (*UnimplementedQueryServer) GetPendingSendToExternal(ctx context.Context, req *QueryPendingSendToExternalRequest) (*QueryPendingSendToExternalResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetPendingSendToExternal not implemented") -} func (*UnimplementedQueryServer) BridgeCalls(ctx context.Context, req *QueryBridgeCallsRequest) (*QueryBridgeCallsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method BridgeCalls not implemented") } @@ -4059,24 +4027,6 @@ func _Query_LastEventBlockHeightByAddr_Handler(srv interface{}, ctx context.Cont return interceptor(ctx, in, info, handler) } -func _Query_BatchFees_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryBatchFeeRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).BatchFees(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/fx.gravity.crosschain.v1.Query/BatchFees", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).BatchFees(ctx, req.(*QueryBatchFeeRequest)) - } - return interceptor(ctx, in, info, handler) -} - func _Query_LastObservedBlockHeight_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(QueryLastObservedBlockHeightRequest) if err := dec(in); err != nil { @@ -4113,20 +4063,20 @@ func _Query_OutgoingTxBatches_Handler(srv interface{}, ctx context.Context, dec return interceptor(ctx, in, info, handler) } -func _Query_BatchRequestByNonce_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryBatchRequestByNonceRequest) +func _Query_OutgoingTxBatch_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryOutgoingTxBatchRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(QueryServer).BatchRequestByNonce(ctx, in) + return srv.(QueryServer).OutgoingTxBatch(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/fx.gravity.crosschain.v1.Query/BatchRequestByNonce", + FullMethod: "/fx.gravity.crosschain.v1.Query/OutgoingTxBatch", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).BatchRequestByNonce(ctx, req.(*QueryBatchRequestByNonceRequest)) + return srv.(QueryServer).OutgoingTxBatch(ctx, req.(*QueryOutgoingTxBatchRequest)) } return interceptor(ctx, in, info, handler) } @@ -4257,24 +4207,6 @@ func _Query_GetOracleByBridgerAddr_Handler(srv interface{}, ctx context.Context, return interceptor(ctx, in, info, handler) } -func _Query_GetPendingSendToExternal_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryPendingSendToExternalRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).GetPendingSendToExternal(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/fx.gravity.crosschain.v1.Query/GetPendingSendToExternal", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).GetPendingSendToExternal(ctx, req.(*QueryPendingSendToExternalRequest)) - } - return interceptor(ctx, in, info, handler) -} - func _Query_BridgeCalls_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(QueryBridgeCallsRequest) if err := dec(in); err != nil { @@ -4517,10 +4449,6 @@ var _Query_serviceDesc = grpc.ServiceDesc{ MethodName: "LastEventBlockHeightByAddr", Handler: _Query_LastEventBlockHeightByAddr_Handler, }, - { - MethodName: "BatchFees", - Handler: _Query_BatchFees_Handler, - }, { MethodName: "LastObservedBlockHeight", Handler: _Query_LastObservedBlockHeight_Handler, @@ -4530,8 +4458,8 @@ var _Query_serviceDesc = grpc.ServiceDesc{ Handler: _Query_OutgoingTxBatches_Handler, }, { - MethodName: "BatchRequestByNonce", - Handler: _Query_BatchRequestByNonce_Handler, + MethodName: "OutgoingTxBatch", + Handler: _Query_OutgoingTxBatch_Handler, }, { MethodName: "BatchConfirm", @@ -4561,10 +4489,6 @@ var _Query_serviceDesc = grpc.ServiceDesc{ MethodName: "GetOracleByBridgerAddr", Handler: _Query_GetOracleByBridgerAddr_Handler, }, - { - MethodName: "GetPendingSendToExternal", - Handler: _Query_GetPendingSendToExternal_Handler, - }, { MethodName: "BridgeCalls", Handler: _Query_BridgeCalls_Handler, @@ -5322,7 +5246,7 @@ func (m *QueryOutgoingTxBatchesResponse) MarshalToSizedBuffer(dAtA []byte) (int, return len(dAtA) - i, nil } -func (m *QueryBatchRequestByNonceRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryOutgoingTxBatchRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -5332,12 +5256,12 @@ func (m *QueryBatchRequestByNonceRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryBatchRequestByNonceRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryOutgoingTxBatchRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryBatchRequestByNonceRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryOutgoingTxBatchRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -5364,7 +5288,7 @@ func (m *QueryBatchRequestByNonceRequest) MarshalToSizedBuffer(dAtA []byte) (int return len(dAtA) - i, nil } -func (m *QueryBatchRequestByNonceResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryOutgoingTxBatchResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -5374,12 +5298,12 @@ func (m *QueryBatchRequestByNonceResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryBatchRequestByNonceResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryOutgoingTxBatchResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryBatchRequestByNonceResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryOutgoingTxBatchResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -7228,7 +7152,7 @@ func (m *QueryOutgoingTxBatchesResponse) Size() (n int) { return n } -func (m *QueryBatchRequestByNonceRequest) Size() (n int) { +func (m *QueryOutgoingTxBatchRequest) Size() (n int) { if m == nil { return 0 } @@ -7248,7 +7172,7 @@ func (m *QueryBatchRequestByNonceRequest) Size() (n int) { return n } -func (m *QueryBatchRequestByNonceResponse) Size() (n int) { +func (m *QueryOutgoingTxBatchResponse) Size() (n int) { if m == nil { return 0 } @@ -9773,7 +9697,7 @@ func (m *QueryOutgoingTxBatchesResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryBatchRequestByNonceRequest) Unmarshal(dAtA []byte) error { +func (m *QueryOutgoingTxBatchRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -9796,10 +9720,10 @@ func (m *QueryBatchRequestByNonceRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryBatchRequestByNonceRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryOutgoingTxBatchRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryBatchRequestByNonceRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryOutgoingTxBatchRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -9906,7 +9830,7 @@ func (m *QueryBatchRequestByNonceRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryBatchRequestByNonceResponse) Unmarshal(dAtA []byte) error { +func (m *QueryOutgoingTxBatchResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -9929,10 +9853,10 @@ func (m *QueryBatchRequestByNonceResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryBatchRequestByNonceResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryOutgoingTxBatchResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryBatchRequestByNonceResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryOutgoingTxBatchResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: diff --git a/x/crosschain/types/query.pb.gw.go b/x/crosschain/types/query.pb.gw.go index a5cf149d..1d0486f9 100644 --- a/x/crosschain/types/query.pb.gw.go +++ b/x/crosschain/types/query.pb.gw.go @@ -393,42 +393,6 @@ func local_request_Query_LastEventBlockHeightByAddr_0(ctx context.Context, marsh } -var ( - filter_Query_BatchFees_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} -) - -func request_Query_BatchFees_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryBatchFeeRequest - var metadata runtime.ServerMetadata - - if err := req.ParseForm(); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_Query_BatchFees_0); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.BatchFees(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_Query_BatchFees_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryBatchFeeRequest - var metadata runtime.ServerMetadata - - if err := req.ParseForm(); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_Query_BatchFees_0); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.BatchFees(ctx, &protoReq) - return msg, metadata, err - -} - var ( filter_Query_LastObservedBlockHeight_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} ) @@ -502,37 +466,37 @@ func local_request_Query_OutgoingTxBatches_0(ctx context.Context, marshaler runt } var ( - filter_Query_BatchRequestByNonce_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} + filter_Query_OutgoingTxBatch_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} ) -func request_Query_BatchRequestByNonce_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryBatchRequestByNonceRequest +func request_Query_OutgoingTxBatch_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq QueryOutgoingTxBatchRequest var metadata runtime.ServerMetadata if err := req.ParseForm(); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_Query_BatchRequestByNonce_0); err != nil { + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_Query_OutgoingTxBatch_0); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.BatchRequestByNonce(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.OutgoingTxBatch(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func local_request_Query_BatchRequestByNonce_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryBatchRequestByNonceRequest +func local_request_Query_OutgoingTxBatch_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq QueryOutgoingTxBatchRequest var metadata runtime.ServerMetadata if err := req.ParseForm(); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_Query_BatchRequestByNonce_0); err != nil { + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_Query_OutgoingTxBatch_0); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := server.BatchRequestByNonce(ctx, &protoReq) + msg, err := server.OutgoingTxBatch(ctx, &protoReq) return msg, metadata, err } @@ -789,42 +753,6 @@ func local_request_Query_GetOracleByBridgerAddr_0(ctx context.Context, marshaler } -var ( - filter_Query_GetPendingSendToExternal_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} -) - -func request_Query_GetPendingSendToExternal_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryPendingSendToExternalRequest - var metadata runtime.ServerMetadata - - if err := req.ParseForm(); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_Query_GetPendingSendToExternal_0); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.GetPendingSendToExternal(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_Query_GetPendingSendToExternal_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryPendingSendToExternalRequest - var metadata runtime.ServerMetadata - - if err := req.ParseForm(); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_Query_GetPendingSendToExternal_0); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.GetPendingSendToExternal(ctx, &protoReq) - return msg, metadata, err - -} - var ( filter_Query_BridgeCalls_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} ) @@ -1439,29 +1367,6 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv }) - mux.Handle("GET", pattern_Query_BatchFees_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_Query_BatchFees_0(rctx, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_BatchFees_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("GET", pattern_Query_LastObservedBlockHeight_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -1508,7 +1413,7 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv }) - mux.Handle("GET", pattern_Query_BatchRequestByNonce_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_Query_OutgoingTxBatch_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -1519,7 +1424,7 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_Query_BatchRequestByNonce_0(rctx, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_Query_OutgoingTxBatch_0(rctx, inboundMarshaler, server, req, pathParams) md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { @@ -1527,7 +1432,7 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv return } - forward_Query_BatchRequestByNonce_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_Query_OutgoingTxBatch_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) @@ -1692,29 +1597,6 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv }) - mux.Handle("GET", pattern_Query_GetPendingSendToExternal_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_Query_GetPendingSendToExternal_0(rctx, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_GetPendingSendToExternal_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("GET", pattern_Query_BridgeCalls_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -2209,26 +2091,6 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie }) - mux.Handle("GET", pattern_Query_BatchFees_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_Query_BatchFees_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_BatchFees_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("GET", pattern_Query_LastObservedBlockHeight_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -2269,7 +2131,7 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie }) - mux.Handle("GET", pattern_Query_BatchRequestByNonce_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_Query_OutgoingTxBatch_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) @@ -2278,14 +2140,14 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_Query_BatchRequestByNonce_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_Query_OutgoingTxBatch_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_Query_BatchRequestByNonce_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_Query_OutgoingTxBatch_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) @@ -2429,26 +2291,6 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie }) - mux.Handle("GET", pattern_Query_GetPendingSendToExternal_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_Query_GetPendingSendToExternal_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_GetPendingSendToExternal_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("GET", pattern_Query_BridgeCalls_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -2693,13 +2535,11 @@ var ( pattern_Query_LastEventBlockHeightByAddr_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4, 2, 5}, []string{"fx", "crosschain", "v1", "oracle", "event", "block_height"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_BatchFees_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"fx", "crosschain", "v1", "batch_fees"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_LastObservedBlockHeight_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"fx", "crosschain", "v1", "observed", "block_height"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_OutgoingTxBatches_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"fx", "crosschain", "v1", "batch", "outgoing_tx"}, "", runtime.AssumeColonVerbOpt(false))) + pattern_Query_OutgoingTxBatches_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"fx", "crosschain", "v1", "batch", "outgoing_txs"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_BatchRequestByNonce_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"fx", "crosschain", "v1", "batch", "request"}, "", runtime.AssumeColonVerbOpt(false))) + pattern_Query_OutgoingTxBatch_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"fx", "crosschain", "v1", "batch", "outgoing_tx"}, "", runtime.AssumeColonVerbOpt(false))) pattern_Query_BatchConfirm_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"fx", "crosschain", "v1", "batch", "confirm"}, "", runtime.AssumeColonVerbOpt(false))) @@ -2715,8 +2555,6 @@ var ( pattern_Query_GetOracleByBridgerAddr_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"fx", "crosschain", "v1", "oracle_by_bridger_addr"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_GetPendingSendToExternal_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"fx", "crosschain", "v1", "pending_send_to_external"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_BridgeCalls_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"fx", "crosschain", "v1", "bridge_calls"}, "", runtime.AssumeColonVerbOpt(false))) pattern_Query_BridgeCallConfirmByNonce_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"fx", "crosschain", "v1", "bridge_call_confirm_by_nonce"}, "", runtime.AssumeColonVerbOpt(false))) @@ -2761,13 +2599,11 @@ var ( forward_Query_LastEventBlockHeightByAddr_0 = runtime.ForwardResponseMessage - forward_Query_BatchFees_0 = runtime.ForwardResponseMessage - forward_Query_LastObservedBlockHeight_0 = runtime.ForwardResponseMessage forward_Query_OutgoingTxBatches_0 = runtime.ForwardResponseMessage - forward_Query_BatchRequestByNonce_0 = runtime.ForwardResponseMessage + forward_Query_OutgoingTxBatch_0 = runtime.ForwardResponseMessage forward_Query_BatchConfirm_0 = runtime.ForwardResponseMessage @@ -2783,8 +2619,6 @@ var ( forward_Query_GetOracleByBridgerAddr_0 = runtime.ForwardResponseMessage - forward_Query_GetPendingSendToExternal_0 = runtime.ForwardResponseMessage - forward_Query_BridgeCalls_0 = runtime.ForwardResponseMessage forward_Query_BridgeCallConfirmByNonce_0 = runtime.ForwardResponseMessage diff --git a/x/crosschain/types/tx.pb.go b/x/crosschain/types/tx.pb.go index 63d194f5..bd6dc9da 100644 --- a/x/crosschain/types/tx.pb.go +++ b/x/crosschain/types/tx.pb.go @@ -2013,131 +2013,127 @@ func init() { func init() { proto.RegisterFile("fx/gravity/crosschain/v1/tx.proto", fileDescriptor_62b4a7c0d32dd67f) } var fileDescriptor_62b4a7c0d32dd67f = []byte{ - // 1983 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0xcd, 0x6f, 0xdc, 0xc6, - 0x15, 0x17, 0xf7, 0x53, 0x7a, 0xb2, 0xbe, 0x18, 0xd9, 0x5e, 0xad, 0x63, 0x49, 0x66, 0x63, 0x44, - 0xb6, 0x23, 0xd2, 0xb2, 0x53, 0xbb, 0xdd, 0x7e, 0x00, 0x92, 0xea, 0x20, 0x3a, 0xc8, 0x29, 0xd6, - 0x49, 0x8b, 0xf6, 0xb2, 0x98, 0x25, 0x47, 0x5c, 0x42, 0x24, 0x47, 0x25, 0x67, 0x95, 0x15, 0x0a, - 0x14, 0x45, 0xd1, 0x53, 0x2f, 0x0d, 0xd0, 0xfe, 0x11, 0x45, 0x4f, 0x46, 0xa1, 0x6b, 0x51, 0xb4, - 0x97, 0x06, 0x39, 0x05, 0x39, 0xf4, 0xeb, 0x90, 0x16, 0x36, 0x50, 0x03, 0xbd, 0x17, 0x3d, 0x15, - 0x28, 0x38, 0x33, 0xe4, 0x92, 0x5c, 0x72, 0xb9, 0x42, 0xd7, 0x46, 0x2e, 0xf6, 0xce, 0xe3, 0x6f, - 0xe6, 0xbd, 0xf7, 0x7b, 0x33, 0xef, 0xbd, 0x19, 0xc1, 0x8d, 0xa3, 0x81, 0x66, 0x7a, 0xe8, 0xd4, - 0xa2, 0x67, 0x9a, 0xee, 0x11, 0xdf, 0xd7, 0x7b, 0xc8, 0x72, 0xb5, 0xd3, 0x1d, 0x8d, 0x0e, 0xd4, - 0x13, 0x8f, 0x50, 0x22, 0x37, 0x8e, 0x06, 0xaa, 0x80, 0xa8, 0x43, 0x88, 0x7a, 0xba, 0xd3, 0x5c, - 0xd7, 0x89, 0xef, 0x10, 0x5f, 0xeb, 0x22, 0x1f, 0x6b, 0xa7, 0x3b, 0x5d, 0x4c, 0xd1, 0x8e, 0xa6, - 0x13, 0xcb, 0xe5, 0x33, 0x9b, 0x57, 0xc5, 0x77, 0xc7, 0x37, 0x83, 0x15, 0x1d, 0xdf, 0x14, 0x1f, - 0xd6, 0xf8, 0x87, 0x0e, 0x1b, 0x69, 0x7c, 0x20, 0x3e, 0xbd, 0x91, 0x6f, 0xd0, 0xd9, 0x09, 0x0e, - 0x51, 0x37, 0x73, 0x51, 0x36, 0x36, 0x91, 0x7e, 0x26, 0x60, 0xab, 0x26, 0x31, 0x09, 0x57, 0x12, - 0xfc, 0x0a, 0xb5, 0x9b, 0x84, 0x98, 0x36, 0xd6, 0xd8, 0xa8, 0xdb, 0x3f, 0xd2, 0x90, 0x1b, 0x4e, - 0x58, 0x41, 0x8e, 0xe5, 0x12, 0x8d, 0xfd, 0xcb, 0x45, 0xca, 0x9f, 0x4a, 0xb0, 0x74, 0xe8, 0x9b, - 0x7b, 0xc4, 0x35, 0xb0, 0xf1, 0x9e, 0x87, 0x74, 0x1b, 0xcb, 0xd7, 0x01, 0x98, 0xc2, 0x8e, 0x8b, - 0x1c, 0xdc, 0x90, 0x36, 0xa5, 0xad, 0xb9, 0xf6, 0x1c, 0x93, 0x3c, 0x46, 0x0e, 0x96, 0x6f, 0xc2, - 0x22, 0x61, 0xc0, 0x0e, 0x32, 0x0c, 0x0f, 0xfb, 0x7e, 0xa3, 0xc4, 0x20, 0x0b, 0x5c, 0xba, 0xcb, - 0x85, 0xf2, 0x9b, 0xb0, 0xd4, 0xf5, 0x2c, 0xc3, 0xc4, 0x5e, 0x84, 0x2b, 0x33, 0xdc, 0xa2, 0x10, - 0x87, 0xc0, 0x5b, 0xb0, 0x8c, 0x07, 0x14, 0x7b, 0x2e, 0xb2, 0x23, 0x64, 0x85, 0x21, 0x97, 0x42, - 0x79, 0x08, 0xbd, 0x03, 0x2b, 0xa7, 0xc8, 0xb6, 0x0c, 0x44, 0xc9, 0x70, 0xd5, 0x2a, 0xc3, 0x2e, - 0x47, 0x1f, 0x42, 0xf0, 0xbb, 0xb0, 0x64, 0xe0, 0x80, 0x30, 0x8a, 0x3b, 0xc8, 0x21, 0x7d, 0x97, - 0x36, 0x6a, 0x9b, 0xd2, 0xd6, 0xfc, 0xbd, 0x35, 0x55, 0xc4, 0x24, 0x88, 0xac, 0x2a, 0x22, 0xab, - 0xee, 0x13, 0xcb, 0xdd, 0xab, 0x7c, 0xfc, 0xf9, 0xc6, 0x4c, 0x7b, 0x31, 0x9c, 0xb7, 0xcb, 0xa6, - 0xb5, 0xee, 0xfd, 0xe4, 0xc5, 0xd3, 0xdb, 0x29, 0xa7, 0x7f, 0xf6, 0xe2, 0xe9, 0xed, 0x66, 0x2c, - 0x38, 0x29, 0x12, 0x95, 0x35, 0xb8, 0x9a, 0x12, 0xb5, 0xb1, 0x7f, 0x42, 0x5c, 0x1f, 0x2b, 0x7f, - 0x90, 0x60, 0xf1, 0xd0, 0x37, 0x77, 0x0d, 0xe3, 0x5b, 0x42, 0xcf, 0x94, 0x28, 0x7f, 0x08, 0x35, - 0xe1, 0x68, 0x79, 0x32, 0x47, 0x05, 0xbc, 0xb5, 0x93, 0xe3, 0xe0, 0x5a, 0xd2, 0xc1, 0x98, 0xc5, - 0x4a, 0x03, 0xae, 0x24, 0x25, 0x91, 0x7b, 0xe7, 0x12, 0x2c, 0x1c, 0xfa, 0x66, 0x1b, 0x4f, 0xd9, - 0xbb, 0xcc, 0xe0, 0x97, 0xb3, 0x83, 0xdf, 0xba, 0x9b, 0xe3, 0x51, 0x23, 0xe9, 0xd1, 0xd0, 0x48, - 0xe5, 0x2a, 0x5c, 0x4e, 0x08, 0x22, 0x7f, 0x7e, 0xc3, 0xc3, 0xf5, 0xc8, 0xb0, 0xe8, 0x1e, 0xdf, - 0xb9, 0xaf, 0xf8, 0x84, 0x4c, 0x1a, 0x9e, 0x98, 0x85, 0x22, 0x3c, 0x31, 0x49, 0xe4, 0xce, 0xcf, - 0x25, 0x58, 0x39, 0xf4, 0xcd, 0x0f, 0xdc, 0xee, 0xd4, 0xcf, 0x7c, 0xeb, 0xed, 0x1c, 0x43, 0x5f, - 0x4f, 0x1a, 0x9a, 0xd4, 0xad, 0x5c, 0x83, 0xb5, 0x11, 0x61, 0xda, 0xdc, 0xef, 0x5a, 0xb4, 0x67, - 0x78, 0xe8, 0xc3, 0x36, 0xfe, 0x10, 0x79, 0xc6, 0xab, 0x35, 0x37, 0xa9, 0x5b, 0x98, 0x9b, 0x14, - 0x46, 0xe6, 0xfe, 0x5b, 0x82, 0xd7, 0x0e, 0x7d, 0x93, 0x3b, 0xf1, 0x04, 0xd3, 0x7d, 0xe2, 0x1e, - 0x59, 0x9e, 0x23, 0xaf, 0x42, 0xd5, 0x25, 0xae, 0xce, 0x6d, 0xad, 0xb4, 0xf9, 0x20, 0x6b, 0x07, - 0x94, 0x26, 0xce, 0x91, 0xe5, 0xec, 0x1c, 0xf9, 0x3a, 0xcc, 0xf9, 0x96, 0xe9, 0x22, 0xda, 0xf7, - 0xb0, 0xc8, 0xa3, 0x43, 0x41, 0x8a, 0xb8, 0x6a, 0x8a, 0xb8, 0xd6, 0xc3, 0x80, 0x91, 0xb4, 0x4d, - 0x01, 0x25, 0xeb, 0x49, 0x4a, 0xd2, 0xfe, 0x29, 0x7f, 0x2d, 0x41, 0x23, 0x2e, 0xff, 0xe0, 0xc4, - 0x40, 0x14, 0x1b, 0xfb, 0x36, 0xb2, 0x1c, 0x79, 0x03, 0xe6, 0xf1, 0x29, 0x76, 0x69, 0x27, 0x4e, - 0x01, 0x30, 0xd1, 0x63, 0xc6, 0xc3, 0x0d, 0xb8, 0xd4, 0xb5, 0x89, 0x7e, 0xdc, 0xe9, 0x61, 0xcb, - 0xec, 0x51, 0x46, 0x42, 0xa5, 0x3d, 0xcf, 0x64, 0xef, 0x32, 0x91, 0xbc, 0x05, 0xcb, 0x22, 0x50, - 0x3e, 0x0e, 0x17, 0x2a, 0x33, 0x98, 0x08, 0xe0, 0x13, 0x2c, 0x16, 0x3b, 0x80, 0xba, 0x83, 0x9d, - 0x2e, 0xf6, 0x82, 0x32, 0x52, 0xde, 0x9a, 0xbf, 0x77, 0x4b, 0xcd, 0xab, 0xf1, 0x2a, 0x3f, 0x1c, - 0xdf, 0x09, 0xb3, 0x87, 0x48, 0x8b, 0xe1, 0xfc, 0xac, 0xf8, 0xd4, 0x32, 0xe3, 0x93, 0xa4, 0xb5, - 0x9e, 0xa6, 0xf5, 0xeb, 0x79, 0xb4, 0x7e, 0x29, 0x87, 0xd6, 0x38, 0x7d, 0xca, 0x2f, 0xca, 0xb0, - 0x7c, 0xe8, 0x9b, 0x4f, 0xb0, 0x6b, 0xbc, 0x4f, 0xde, 0x19, 0x4c, 0x8f, 0xd3, 0x9b, 0xb0, 0x48, - 0xc9, 0x31, 0x76, 0x3b, 0x3a, 0x71, 0xa9, 0x87, 0x74, 0x2a, 0xf6, 0xd4, 0x02, 0x93, 0xee, 0x0b, - 0xa1, 0xbc, 0x1f, 0x95, 0x15, 0xb6, 0x9d, 0xf6, 0xee, 0x04, 0x24, 0xfd, 0xed, 0xf3, 0x8d, 0xcb, - 0xbc, 0xba, 0xf8, 0xc6, 0xb1, 0x6a, 0x11, 0xcd, 0x41, 0xb4, 0xa7, 0x1e, 0xb8, 0xf4, 0xb3, 0xf3, - 0x6d, 0x10, 0x65, 0xe7, 0xc0, 0xa5, 0x61, 0x89, 0x91, 0xaf, 0x40, 0xcd, 0xc7, 0xae, 0x81, 0x3d, - 0xb1, 0xe9, 0xc4, 0x48, 0x6e, 0xc2, 0xac, 0x87, 0x75, 0x6c, 0x9d, 0x62, 0x4f, 0x70, 0x1b, 0x8d, - 0x03, 0x56, 0x29, 0xf2, 0x4c, 0x4c, 0x3b, 0x56, 0x57, 0x0f, 0x59, 0xe5, 0x92, 0x83, 0xae, 0x9e, - 0x15, 0x9d, 0xd9, 0x09, 0xa2, 0x33, 0x97, 0x8e, 0xce, 0xdb, 0x79, 0xd1, 0xb9, 0x96, 0x8c, 0x4e, - 0x22, 0x00, 0xca, 0x47, 0x15, 0x90, 0x83, 0x0a, 0xcf, 0xa6, 0xed, 0x23, 0xdb, 0xe6, 0x71, 0x29, - 0xc8, 0x4c, 0x13, 0x9f, 0xf8, 0x54, 0x7c, 0xcb, 0x85, 0xf1, 0xad, 0x8c, 0xc6, 0x37, 0x8f, 0xf3, - 0x2b, 0x50, 0xf3, 0xf0, 0x51, 0xdf, 0x35, 0x04, 0xe3, 0x62, 0x14, 0x18, 0x97, 0xdc, 0x0f, 0x7e, - 0xa3, 0xbe, 0x59, 0x0e, 0x8c, 0x4b, 0x6c, 0x08, 0x5f, 0x7e, 0x04, 0x75, 0x1e, 0xd6, 0x80, 0xf1, - 0xf2, 0x45, 0xb7, 0x44, 0x38, 0x57, 0x5e, 0x84, 0x12, 0x25, 0x22, 0x1e, 0x25, 0x4a, 0x64, 0x19, - 0x2a, 0x06, 0xa2, 0xa8, 0x01, 0x4c, 0xc2, 0x7e, 0xcb, 0xbb, 0x50, 0x3d, 0x45, 0x76, 0x1f, 0x37, - 0xe6, 0x2f, 0xbe, 0xf7, 0xf8, 0xcc, 0x60, 0x59, 0x07, 0x3b, 0xa4, 0x71, 0x89, 0x2f, 0x1b, 0xfc, - 0x96, 0xaf, 0xc1, 0x1c, 0x1d, 0x74, 0x88, 0x67, 0x99, 0x96, 0xdb, 0x58, 0xe0, 0xfb, 0x8e, 0x0e, - 0xde, 0x63, 0xe3, 0xd6, 0x83, 0xbc, 0x0d, 0x71, 0x3d, 0xd5, 0xf0, 0x25, 0x63, 0xaf, 0xfc, 0x91, - 0x27, 0xc1, 0xa1, 0xb8, 0x8d, 0xfd, 0xbe, 0x4d, 0xbf, 0x78, 0x1b, 0x23, 0xaa, 0x46, 0xd5, 0x78, - 0x35, 0x4a, 0x70, 0x52, 0x4b, 0x72, 0x22, 0x37, 0xa0, 0xee, 0xf7, 0x75, 0x3d, 0xb0, 0x2b, 0x38, - 0x88, 0xb3, 0xed, 0x70, 0x18, 0x2c, 0xa6, 0xa3, 0xbe, 0x8f, 0xc5, 0xe1, 0xe3, 0x83, 0x89, 0x53, - 0x5e, 0x26, 0x59, 0xca, 0x2f, 0xf9, 0xb5, 0x44, 0x54, 0x97, 0x3d, 0x44, 0xf5, 0x5e, 0x4e, 0x09, - 0x1d, 0xcd, 0x61, 0xa5, 0xac, 0x1c, 0xf6, 0x32, 0x6e, 0x23, 0x89, 0x4a, 0x5b, 0x1d, 0x5f, 0x69, - 0x6b, 0xe9, 0xa4, 0x73, 0x3f, 0x8f, 0x9f, 0xd4, 0xa5, 0x22, 0x4e, 0x81, 0xf2, 0xab, 0x12, 0x6b, - 0xeb, 0x78, 0x22, 0x7a, 0x24, 0xcc, 0x99, 0x5e, 0x3d, 0xd8, 0x80, 0xf9, 0x6e, 0xa0, 0x27, 0xb9, - 0xb5, 0x98, 0xe8, 0x71, 0x0e, 0xd9, 0x95, 0x09, 0xc9, 0xae, 0x4e, 0x90, 0x98, 0x47, 0x38, 0x6a, - 0xe5, 0x71, 0x74, 0x23, 0x2b, 0x31, 0x27, 0xf8, 0x50, 0xfe, 0x55, 0x62, 0x8d, 0x18, 0xdf, 0x5e, - 0xef, 0x33, 0xf3, 0x5e, 0x75, 0xdd, 0x94, 0xa1, 0xc2, 0xfc, 0xe2, 0x1c, 0xb1, 0xdf, 0x2c, 0x25, - 0x9f, 0x39, 0x5d, 0x62, 0x47, 0x29, 0x99, 0x8d, 0x82, 0x32, 0x68, 0x60, 0xdd, 0x72, 0x90, 0xcd, - 0x5b, 0x8c, 0x4a, 0x3b, 0x1a, 0x67, 0xd1, 0x59, 0xcf, 0x4b, 0x0d, 0x7a, 0x0f, 0xb9, 0x2e, 0xb6, - 0x59, 0xc1, 0xe4, 0xe7, 0x11, 0x84, 0x28, 0xa8, 0x98, 0x05, 0x85, 0x70, 0xd2, 0xee, 0x2f, 0x4d, - 0xaa, 0xf2, 0x1f, 0x09, 0x56, 0x93, 0xf9, 0x50, 0xb4, 0xbd, 0xd3, 0x4a, 0x7a, 0x17, 0xe8, 0x7f, - 0xa3, 0x34, 0x51, 0x89, 0xa7, 0x89, 0xb1, 0x67, 0xb5, 0xf5, 0x95, 0x3c, 0xc7, 0x37, 0x72, 0x13, - 0xbe, 0xe8, 0x7b, 0xff, 0x2c, 0xb1, 0x44, 0xc5, 0xfb, 0xb5, 0x6f, 0x23, 0x0f, 0x39, 0x7e, 0x91, - 0xd3, 0x0f, 0x60, 0x0e, 0xf5, 0x69, 0x8f, 0x78, 0x16, 0x3d, 0xe3, 0xee, 0xee, 0x35, 0x3e, 0x3b, - 0xdf, 0x5e, 0x15, 0x85, 0x4b, 0xf8, 0xf1, 0x84, 0x7a, 0x96, 0x6b, 0xb6, 0x87, 0x50, 0xf9, 0x9b, - 0x50, 0x3b, 0x61, 0x0a, 0xc4, 0xed, 0x7e, 0x33, 0xbf, 0xad, 0xe5, 0x86, 0x84, 0x97, 0x7c, 0x3e, - 0xab, 0xb5, 0x1d, 0x38, 0x39, 0x5c, 0x2f, 0x23, 0xd7, 0xc4, 0xbd, 0x10, 0x0f, 0x18, 0x71, 0x51, - 0x74, 0xc9, 0xf9, 0xad, 0xc4, 0xee, 0xca, 0xfc, 0xdb, 0x7e, 0x30, 0x9b, 0x37, 0xae, 0x2f, 0xcd, - 0xf5, 0x06, 0xd4, 0x79, 0x93, 0x1f, 0xf8, 0x1e, 0x34, 0x24, 0xe1, 0x90, 0xa7, 0xd1, 0xa4, 0x53, - 0x9b, 0x59, 0x4e, 0xc5, 0xad, 0x54, 0x36, 0xe0, 0x7a, 0xe6, 0x87, 0xc8, 0xc1, 0x7f, 0x96, 0xd8, - 0x13, 0xc6, 0x30, 0xdc, 0x45, 0x8e, 0x0d, 0x3b, 0xad, 0x52, 0x4e, 0xa7, 0x55, 0x4e, 0x74, 0x5a, - 0x08, 0xaa, 0x3a, 0xb1, 0xdc, 0xf0, 0x86, 0x32, 0xe6, 0xa1, 0xe6, 0x6e, 0x10, 0xc3, 0x5f, 0xff, - 0x7d, 0x63, 0xcb, 0xb4, 0x68, 0xaf, 0xdf, 0x55, 0x75, 0xe2, 0x88, 0x27, 0x45, 0xf1, 0xdf, 0xb6, - 0x6f, 0x1c, 0x8b, 0xd7, 0xc3, 0x60, 0x82, 0xdf, 0xe6, 0x2b, 0x8b, 0xe6, 0xaa, 0x3a, 0xd2, 0x5c, - 0xd5, 0xb2, 0x9a, 0xab, 0xfa, 0xff, 0xdd, 0x5c, 0xcd, 0x0e, 0x9b, 0xab, 0xd6, 0x56, 0x10, 0x14, - 0x41, 0x41, 0xc6, 0xa3, 0xcb, 0x90, 0x56, 0xf1, 0xe8, 0x92, 0xe8, 0x01, 0x78, 0x04, 0x7e, 0x27, - 0xc1, 0x6c, 0x50, 0xfd, 0xa6, 0xda, 0x3a, 0x7d, 0x03, 0xaa, 0x7a, 0xb0, 0xa0, 0x38, 0x40, 0xab, - 0x2a, 0x7f, 0x2a, 0x55, 0xc3, 0xa7, 0x52, 0x75, 0xd7, 0x3d, 0xdb, 0x5b, 0xf9, 0xe4, 0x7c, 0x7b, - 0x21, 0x51, 0x4b, 0xda, 0x7c, 0x56, 0xeb, 0xad, 0xbc, 0x2c, 0xf1, 0x5a, 0xaa, 0x64, 0xb3, 0x9c, - 0x28, 0xb3, 0x4b, 0x1b, 0x5f, 0x20, 0xf4, 0xea, 0xf7, 0x12, 0xc0, 0xb0, 0xa6, 0x4f, 0xcd, 0xaf, - 0xaf, 0x41, 0x5d, 0xe7, 0x4b, 0x8e, 0xf5, 0x6c, 0xfe, 0x93, 0xf3, 0xed, 0xba, 0xd0, 0xdd, 0x0e, - 0x67, 0xb4, 0xd4, 0x3c, 0xaf, 0x2e, 0x67, 0x36, 0x22, 0xca, 0x2a, 0xbb, 0xf6, 0x84, 0xcb, 0x08, - 0xcf, 0xee, 0xfd, 0x77, 0x09, 0xca, 0x87, 0xbe, 0x29, 0xdb, 0x70, 0x29, 0xf1, 0x96, 0x3c, 0xe6, - 0xee, 0x9d, 0x7a, 0x1e, 0x6d, 0xee, 0x4c, 0x0c, 0x0d, 0xb5, 0xca, 0x16, 0xcc, 0xc7, 0x5f, 0x51, - 0xb7, 0xc6, 0xae, 0x10, 0x43, 0x36, 0xef, 0x4e, 0x8a, 0x8c, 0x54, 0x1d, 0x01, 0xc4, 0x5e, 0x34, - 0xdf, 0x1c, 0x3b, 0x7f, 0x08, 0x6c, 0x6a, 0x13, 0x02, 0xe3, 0x2e, 0xc5, 0x5f, 0x1a, 0xc7, 0xbb, - 0x14, 0x43, 0x16, 0xb8, 0x94, 0xf1, 0x12, 0x28, 0x7b, 0xb0, 0x98, 0x7a, 0x56, 0xbb, 0x33, 0x76, - 0x8d, 0x24, 0xb8, 0x79, 0xff, 0x02, 0xe0, 0xb8, 0xce, 0xd4, 0xcb, 0xe3, 0x78, 0x9d, 0x49, 0x70, - 0x81, 0xce, 0xec, 0x27, 0x44, 0x79, 0x00, 0xcb, 0x23, 0xef, 0x71, 0xdb, 0x63, 0x17, 0x4a, 0xc3, - 0x9b, 0x5f, 0xbe, 0x10, 0x3c, 0xee, 0x6d, 0xb2, 0x37, 0x2d, 0xf0, 0x36, 0x09, 0x2e, 0xf0, 0x36, - 0x09, 0x8e, 0x74, 0xfe, 0x54, 0x82, 0xd5, 0x7d, 0xe4, 0xea, 0xd8, 0x4e, 0xa9, 0x1e, 0x7f, 0xbe, - 0xb2, 0xa6, 0x34, 0xbf, 0x7a, 0xe1, 0x29, 0x91, 0x19, 0x36, 0x5c, 0x6a, 0xe3, 0x1f, 0xf4, 0xb1, - 0x4f, 0xf9, 0xed, 0xed, 0x56, 0xc1, 0x41, 0x18, 0x42, 0x0b, 0x12, 0x41, 0x1c, 0x1a, 0xd7, 0x96, - 0xb8, 0x2b, 0x8e, 0xd7, 0x16, 0x87, 0x16, 0x68, 0x8b, 0x43, 0xe3, 0xb9, 0x20, 0xd6, 0x1a, 0x8c, - 0xcf, 0x05, 0x43, 0x60, 0x41, 0x2e, 0x18, 0x2d, 0x82, 0xf2, 0x0f, 0x61, 0x65, 0xb4, 0xa5, 0x56, - 0x27, 0x5c, 0x25, 0xdc, 0xba, 0x0f, 0x2e, 0x86, 0x8f, 0x53, 0x9a, 0xe8, 0x6a, 0xc7, 0x53, 0x1a, - 0x87, 0x16, 0x50, 0x9a, 0xd5, 0x52, 0x06, 0xae, 0x1e, 0xb8, 0xba, 0x87, 0x91, 0x8f, 0xb9, 0x49, - 0xef, 0x60, 0x5c, 0xe0, 0xea, 0x08, 0xbe, 0xc0, 0xd5, 0x11, 0x7c, 0xa4, 0xfc, 0x47, 0x20, 0x67, - 0xf4, 0xb2, 0xda, 0x04, 0x5e, 0xc4, 0x27, 0x34, 0x1f, 0x5e, 0x70, 0x42, 0xa4, 0xff, 0x7b, 0x50, - 0xe5, 0x8d, 0x8e, 0x32, 0x7e, 0x2f, 0x06, 0x98, 0xe6, 0xed, 0x62, 0x4c, 0xd4, 0x6f, 0xcc, 0xc8, - 0x1d, 0x08, 0x2b, 0xbe, 0xfc, 0xc6, 0x24, 0x1b, 0xbd, 0xf9, 0xd6, 0x24, 0xa8, 0xa1, 0x82, 0x66, - 0xf5, 0xc7, 0x2f, 0x9e, 0xde, 0x96, 0xf6, 0x0e, 0x3e, 0x7e, 0xb6, 0x2e, 0x7d, 0xfa, 0x6c, 0x5d, - 0xfa, 0xc7, 0xb3, 0x75, 0xe9, 0xa3, 0xe7, 0xeb, 0x33, 0x9f, 0x3e, 0x5f, 0x9f, 0xf9, 0xcb, 0xf3, - 0xf5, 0x99, 0xef, 0x6b, 0xb1, 0xc6, 0xf5, 0xa8, 0xef, 0xea, 0xd4, 0x22, 0xee, 0x40, 0x3b, 0x1a, - 0x6c, 0xeb, 0xc4, 0xc3, 0xda, 0x20, 0xfe, 0x07, 0x6e, 0xd6, 0xc5, 0x76, 0x6b, 0xac, 0x69, 0xb9, - 0xff, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xf0, 0x82, 0xf2, 0x7d, 0xbd, 0x1f, 0x00, 0x00, + // 1919 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0xcd, 0x6f, 0x1c, 0x49, + 0x15, 0xf7, 0x7c, 0xdb, 0xcf, 0xb1, 0x63, 0xf7, 0x3a, 0xc9, 0x78, 0xb2, 0xb1, 0x9d, 0x66, 0xa3, + 0x78, 0x93, 0x75, 0x77, 0x9c, 0x2c, 0x09, 0x1a, 0x3e, 0x24, 0xdb, 0x04, 0xad, 0x0f, 0xce, 0xa2, + 0xc9, 0x2e, 0x08, 0x2e, 0xa3, 0x9a, 0xee, 0x72, 0x4f, 0xcb, 0xd3, 0x5d, 0x56, 0x77, 0x8d, 0x77, + 0x2c, 0x24, 0x84, 0x38, 0xc2, 0x81, 0x95, 0xe0, 0x8f, 0x40, 0x9c, 0x22, 0xe4, 0x2b, 0x42, 0x70, + 0x61, 0xb5, 0xa7, 0xd5, 0x1e, 0xf8, 0x3a, 0x2c, 0x28, 0x91, 0x88, 0xc4, 0x1d, 0x71, 0x45, 0xf5, + 0xd1, 0x3d, 0x5d, 0xed, 0xee, 0x99, 0xb1, 0x98, 0x44, 0x7b, 0x49, 0xa6, 0x5e, 0xff, 0xaa, 0xea, + 0xbd, 0xdf, 0xab, 0x7a, 0xef, 0xd5, 0x33, 0xdc, 0x3c, 0x1c, 0x98, 0x4e, 0x80, 0x4e, 0x5c, 0x7a, + 0x6a, 0x5a, 0x01, 0x09, 0x43, 0xab, 0x8b, 0x5c, 0xdf, 0x3c, 0xd9, 0x36, 0xe9, 0xc0, 0x38, 0x0e, + 0x08, 0x25, 0x5a, 0xfd, 0x70, 0x60, 0x48, 0x88, 0x31, 0x84, 0x18, 0x27, 0xdb, 0x8d, 0x35, 0x8b, + 0x84, 0x1e, 0x09, 0xcd, 0x0e, 0x0a, 0xb1, 0x79, 0xb2, 0xdd, 0xc1, 0x14, 0x6d, 0x9b, 0x16, 0x71, + 0x7d, 0x31, 0xb3, 0x71, 0x4d, 0x7e, 0xf7, 0x42, 0x87, 0xad, 0xe8, 0x85, 0x8e, 0xfc, 0xb0, 0x2a, + 0x3e, 0xb4, 0xf9, 0xc8, 0x14, 0x03, 0xf9, 0xe9, 0xad, 0x7c, 0x85, 0x4e, 0x8f, 0x71, 0x84, 0xba, + 0x95, 0x8b, 0xea, 0x61, 0x07, 0x59, 0xa7, 0x12, 0xb6, 0xe2, 0x10, 0x87, 0x88, 0x4d, 0xd8, 0xaf, + 0x68, 0x77, 0x87, 0x10, 0xa7, 0x87, 0x4d, 0x3e, 0xea, 0xf4, 0x0f, 0x4d, 0xe4, 0x47, 0x13, 0x96, + 0x91, 0xe7, 0xfa, 0xc4, 0xe4, 0xff, 0x0a, 0x91, 0xfe, 0xe7, 0x22, 0x5c, 0x3e, 0x08, 0x9d, 0x5d, + 0xe2, 0xdb, 0xd8, 0x7e, 0x3f, 0x40, 0x56, 0x0f, 0x6b, 0x37, 0x00, 0xf8, 0x86, 0x6d, 0x1f, 0x79, + 0xb8, 0x5e, 0xd8, 0x28, 0x6c, 0xce, 0xb5, 0xe6, 0xb8, 0xe4, 0x09, 0xf2, 0xb0, 0x76, 0x0b, 0x16, + 0x09, 0x07, 0xb6, 0x91, 0x6d, 0x07, 0x38, 0x0c, 0xeb, 0x45, 0x0e, 0x59, 0x10, 0xd2, 0x1d, 0x21, + 0xd4, 0x6e, 0xc3, 0xe5, 0x4e, 0xe0, 0xda, 0x0e, 0x0e, 0x62, 0x5c, 0x89, 0xe3, 0x16, 0xa5, 0x38, + 0x02, 0xbe, 0x0d, 0x4b, 0x78, 0x40, 0x71, 0xe0, 0xa3, 0x5e, 0x8c, 0x2c, 0x73, 0xe4, 0xe5, 0x48, + 0x1e, 0x41, 0xef, 0xc2, 0xf2, 0x09, 0xea, 0xb9, 0x36, 0xa2, 0x64, 0xb8, 0x6a, 0x85, 0x63, 0x97, + 0xe2, 0x0f, 0x11, 0xf8, 0x3d, 0xb8, 0x6c, 0x63, 0x46, 0x18, 0xc5, 0x6d, 0xe4, 0x91, 0xbe, 0x4f, + 0xeb, 0xd5, 0x8d, 0xc2, 0xe6, 0xfc, 0xfd, 0x55, 0x43, 0xfa, 0x84, 0x79, 0xd6, 0x90, 0x9e, 0x35, + 0xf6, 0x88, 0xeb, 0xef, 0x96, 0x3f, 0xf9, 0x62, 0x7d, 0xa6, 0xb5, 0x18, 0xcd, 0xdb, 0xe1, 0xd3, + 0x9a, 0xf7, 0x7f, 0xfa, 0xf2, 0xd9, 0x9d, 0x94, 0xd1, 0x3f, 0x7b, 0xf9, 0xec, 0x4e, 0x23, 0xe1, + 0x9c, 0x14, 0x89, 0xfa, 0x2a, 0x5c, 0x4b, 0x89, 0x5a, 0x38, 0x3c, 0x26, 0x7e, 0x88, 0xf5, 0x3f, + 0x16, 0x60, 0xf1, 0x20, 0x74, 0x76, 0x6c, 0xfb, 0xdb, 0x72, 0x9f, 0x29, 0x51, 0xfe, 0x08, 0xaa, + 0xd2, 0xd0, 0xd2, 0x64, 0x86, 0x4a, 0x78, 0x73, 0x3b, 0xc7, 0xc0, 0x55, 0xd5, 0xc0, 0x84, 0xc6, + 0x7a, 0x1d, 0xae, 0xaa, 0x92, 0xd8, 0xbc, 0xb3, 0x02, 0x2c, 0x1c, 0x84, 0x4e, 0x0b, 0x4f, 0xd9, + 0xba, 0x4c, 0xe7, 0x97, 0xb2, 0x9d, 0xdf, 0xbc, 0x97, 0x63, 0x51, 0x5d, 0xb5, 0x68, 0xa8, 0xa4, + 0x7e, 0x0d, 0xae, 0x28, 0x82, 0xd8, 0x9e, 0xdf, 0x0a, 0x77, 0x3d, 0xb6, 0x5d, 0xba, 0x2b, 0x4e, + 0xee, 0x6b, 0xbe, 0x21, 0x93, 0xba, 0x27, 0xa1, 0xa1, 0x74, 0x4f, 0x42, 0x12, 0x9b, 0xf3, 0x8b, + 0x02, 0x2c, 0x1f, 0x84, 0xce, 0x87, 0x7e, 0x67, 0xea, 0x77, 0xbe, 0xf9, 0x6e, 0x8e, 0xa2, 0x6f, + 0xaa, 0x8a, 0xaa, 0x7b, 0xeb, 0xd7, 0x61, 0xf5, 0x9c, 0x30, 0xad, 0xee, 0xf7, 0x5d, 0xda, 0xb5, + 0x03, 0xf4, 0x51, 0x0b, 0x7f, 0x84, 0x02, 0xfb, 0xf5, 0xaa, 0xab, 0xee, 0x2d, 0xd5, 0x55, 0x85, + 0xb1, 0xba, 0xff, 0x29, 0xc0, 0x1b, 0x07, 0xa1, 0x23, 0x8c, 0x78, 0x8a, 0xe9, 0x1e, 0xf1, 0x0f, + 0xdd, 0xc0, 0xd3, 0x56, 0xa0, 0xe2, 0x13, 0xdf, 0x12, 0xba, 0x96, 0x5b, 0x62, 0x90, 0x75, 0x02, + 0x8a, 0x13, 0xc7, 0xc8, 0x52, 0x76, 0x8c, 0x7c, 0x13, 0xe6, 0x42, 0xd7, 0xf1, 0x11, 0xed, 0x07, + 0x58, 0xc6, 0xd1, 0xa1, 0x20, 0x45, 0x5c, 0x25, 0x45, 0x5c, 0xf3, 0x11, 0x63, 0x24, 0xad, 0x13, + 0xa3, 0x64, 0x4d, 0xa5, 0x24, 0x6d, 0x9f, 0xfe, 0xb7, 0x22, 0xd4, 0x93, 0xf2, 0x0f, 0x8f, 0x6d, + 0x44, 0xb1, 0xbd, 0xd7, 0x43, 0xae, 0xa7, 0xad, 0xc3, 0x3c, 0x3e, 0xc1, 0x3e, 0x6d, 0x27, 0x29, + 0x00, 0x2e, 0x7a, 0xc2, 0x79, 0xb8, 0x09, 0x97, 0x3a, 0x3d, 0x62, 0x1d, 0xb5, 0xbb, 0xd8, 0x75, + 0xba, 0x94, 0x93, 0x50, 0x6e, 0xcd, 0x73, 0xd9, 0x7b, 0x5c, 0xa4, 0x6d, 0xc2, 0x92, 0x74, 0x54, + 0x88, 0xa3, 0x85, 0x4a, 0x1c, 0x26, 0x1d, 0xf8, 0x14, 0xcb, 0xc5, 0xf6, 0xa1, 0xe6, 0x61, 0xaf, + 0x83, 0x03, 0x96, 0x46, 0x4a, 0x9b, 0xf3, 0xf7, 0xdf, 0x36, 0xf2, 0x72, 0xbc, 0x21, 0x2e, 0xc7, + 0xf7, 0xa2, 0xe8, 0x21, 0xc3, 0x62, 0x34, 0x3f, 0xcb, 0x3f, 0xd5, 0x4c, 0xff, 0xa8, 0xb4, 0xd6, + 0xd2, 0xb4, 0x7e, 0x23, 0x8f, 0xd6, 0xaf, 0xe4, 0xd0, 0x9a, 0xa4, 0x4f, 0xff, 0x65, 0x09, 0x96, + 0x0e, 0x42, 0xe7, 0x29, 0xf6, 0xed, 0x0f, 0xc8, 0x77, 0x06, 0xd3, 0xe3, 0xf4, 0x16, 0x2c, 0x52, + 0x72, 0x84, 0xfd, 0xb6, 0x45, 0x7c, 0x1a, 0x20, 0x8b, 0xca, 0x33, 0xb5, 0xc0, 0xa5, 0x7b, 0x52, + 0xa8, 0xed, 0xc5, 0x69, 0x85, 0x1f, 0xa7, 0xdd, 0xbb, 0x8c, 0xa4, 0xbf, 0x7f, 0xb1, 0x7e, 0x45, + 0x64, 0x97, 0xd0, 0x3e, 0x32, 0x5c, 0x62, 0x7a, 0x88, 0x76, 0x8d, 0x7d, 0x9f, 0x7e, 0x7e, 0xb6, + 0x05, 0x32, 0xed, 0xec, 0xfb, 0x34, 0x4a, 0x31, 0xda, 0x55, 0xa8, 0x86, 0xd8, 0xb7, 0x71, 0x20, + 0x0f, 0x9d, 0x1c, 0x69, 0x0d, 0x98, 0x0d, 0xb0, 0x85, 0xdd, 0x13, 0x1c, 0x48, 0x6e, 0xe3, 0x31, + 0x63, 0x95, 0xa2, 0xc0, 0xc1, 0xb4, 0xed, 0x76, 0xac, 0x88, 0x55, 0x21, 0xd9, 0xef, 0x58, 0x59, + 0xde, 0x99, 0x9d, 0xc0, 0x3b, 0x73, 0x69, 0xef, 0xbc, 0x9b, 0xe7, 0x9d, 0xeb, 0xaa, 0x77, 0x14, + 0x07, 0xe8, 0x1f, 0x97, 0x41, 0x63, 0x19, 0x9e, 0x4f, 0xdb, 0x43, 0xbd, 0x9e, 0xf0, 0xcb, 0x98, + 0xc8, 0x34, 0xf1, 0x8d, 0x4f, 0xf9, 0xb7, 0x34, 0xd6, 0xbf, 0xe5, 0xf3, 0xfe, 0xcd, 0xe3, 0xfc, + 0x2a, 0x54, 0x03, 0x7c, 0xd8, 0xf7, 0x6d, 0xc9, 0xb8, 0x1c, 0x31, 0xe5, 0xd4, 0xf3, 0x10, 0xd6, + 0x6b, 0x1b, 0x25, 0xa6, 0x9c, 0x72, 0x20, 0x42, 0xed, 0x31, 0xd4, 0x84, 0x5b, 0x19, 0xe3, 0xa5, + 0x8b, 0x1e, 0x89, 0x68, 0xae, 0xb6, 0x08, 0x45, 0x4a, 0xa4, 0x3f, 0x8a, 0x94, 0x68, 0x1a, 0x94, + 0x6d, 0x44, 0x51, 0x1d, 0xb8, 0x84, 0xff, 0xd6, 0x76, 0xa0, 0x72, 0x82, 0x7a, 0x7d, 0x5c, 0x9f, + 0xbf, 0xf8, 0xd9, 0x13, 0x33, 0xd9, 0xb2, 0x1e, 0xf6, 0x48, 0xfd, 0x92, 0x58, 0x96, 0xfd, 0xd6, + 0xae, 0xc3, 0x1c, 0x1d, 0xb4, 0x49, 0xe0, 0x3a, 0xae, 0x5f, 0x5f, 0x10, 0xe7, 0x8e, 0x0e, 0xde, + 0xe7, 0xe3, 0xe6, 0xc3, 0xbc, 0x03, 0x71, 0x23, 0x55, 0xf0, 0xa9, 0xbe, 0xd7, 0xff, 0x24, 0x82, + 0xe0, 0x50, 0xdc, 0xc2, 0x61, 0xbf, 0x47, 0xbf, 0x7c, 0x07, 0x23, 0xce, 0x46, 0x95, 0x64, 0x36, + 0x52, 0x38, 0xa9, 0xaa, 0x9c, 0x68, 0x75, 0xa8, 0x85, 0x7d, 0xcb, 0x62, 0x7a, 0xb1, 0x8b, 0x38, + 0xdb, 0x8a, 0x86, 0x6c, 0x31, 0x0b, 0xf5, 0x43, 0x2c, 0x2f, 0x9f, 0x18, 0x4c, 0x1c, 0xf2, 0x32, + 0xc9, 0xd2, 0x7f, 0x25, 0x9e, 0x25, 0x32, 0xbb, 0xec, 0x22, 0x6a, 0x75, 0x73, 0x52, 0xe8, 0xf9, + 0x18, 0x56, 0xcc, 0x8a, 0x61, 0xaf, 0xe2, 0x35, 0xa2, 0x64, 0xda, 0xca, 0xe8, 0x4c, 0x5b, 0x4d, + 0x07, 0x9d, 0x07, 0x79, 0xfc, 0xa4, 0x1e, 0x15, 0x49, 0x0a, 0xf4, 0x5f, 0x17, 0x79, 0x59, 0x27, + 0x02, 0xd1, 0x63, 0xa9, 0xce, 0xf4, 0xf2, 0xc1, 0x3a, 0xcc, 0x77, 0xd8, 0x3e, 0xea, 0xd1, 0xe2, + 0xa2, 0x27, 0x39, 0x64, 0x97, 0x27, 0x24, 0xbb, 0x32, 0x41, 0x60, 0x3e, 0xc7, 0x51, 0x33, 0x8f, + 0xa3, 0x9b, 0x59, 0x81, 0x59, 0xe1, 0x43, 0xff, 0x77, 0x91, 0x17, 0x62, 0xe2, 0x78, 0x7d, 0xc0, + 0xd5, 0x7b, 0xdd, 0x79, 0x53, 0x83, 0x32, 0xb7, 0x4b, 0x70, 0xc4, 0x7f, 0xf3, 0x90, 0x7c, 0xea, + 0x75, 0x48, 0x2f, 0x0e, 0xc9, 0x7c, 0xc4, 0xd2, 0xa0, 0x8d, 0x2d, 0xd7, 0x43, 0x3d, 0x51, 0x62, + 0x94, 0x5b, 0xf1, 0x38, 0x8b, 0xce, 0x5a, 0x5e, 0x68, 0xb0, 0xba, 0xc8, 0xf7, 0x71, 0x8f, 0x27, + 0x4c, 0x71, 0x1f, 0x41, 0x8a, 0x58, 0xc6, 0x1c, 0x93, 0x08, 0x27, 0xad, 0xfe, 0xd2, 0xa4, 0xea, + 0xff, 0x2d, 0xc0, 0x8a, 0x1a, 0x0f, 0x65, 0xd9, 0x3b, 0xad, 0xa0, 0x77, 0x81, 0xfa, 0x37, 0x0e, + 0x13, 0xe5, 0x64, 0x98, 0x18, 0x79, 0x57, 0x9b, 0x5f, 0xcb, 0x33, 0x7c, 0x3d, 0x37, 0xe0, 0xcb, + 0xba, 0xf7, 0x2f, 0x05, 0x1e, 0xa8, 0x44, 0xbd, 0xf6, 0x5d, 0x14, 0x20, 0x2f, 0x1c, 0x67, 0xf4, + 0x43, 0x98, 0x43, 0x7d, 0xda, 0x25, 0x81, 0x4b, 0x4f, 0x85, 0xb9, 0xbb, 0xf5, 0xcf, 0xcf, 0xb6, + 0x56, 0x64, 0xe2, 0x92, 0x76, 0x3c, 0xa5, 0x81, 0xeb, 0x3b, 0xad, 0x21, 0x54, 0xfb, 0x16, 0x54, + 0x8f, 0xf9, 0x06, 0xf2, 0x75, 0xbf, 0x91, 0x5f, 0xd6, 0x0a, 0x45, 0xa2, 0x47, 0xbe, 0x98, 0xd5, + 0xdc, 0x62, 0x46, 0x0e, 0xd7, 0xcb, 0x88, 0x35, 0x49, 0x2b, 0x64, 0x03, 0x23, 0x29, 0x8a, 0x1f, + 0x39, 0xbf, 0x2b, 0xf0, 0xb7, 0xb2, 0xf8, 0xb6, 0xc7, 0x66, 0x8b, 0xc2, 0xf5, 0x95, 0x99, 0x5e, + 0x87, 0x9a, 0x28, 0xf2, 0x99, 0xed, 0xac, 0x20, 0x89, 0x86, 0x22, 0x8c, 0xaa, 0x46, 0x6d, 0x64, + 0x19, 0x95, 0xd4, 0x52, 0x5f, 0x87, 0x1b, 0x99, 0x1f, 0x62, 0x03, 0xff, 0x55, 0xe4, 0x2d, 0x8c, + 0xa1, 0xbb, 0xc7, 0x19, 0x36, 0xac, 0xb4, 0x8a, 0x39, 0x95, 0x56, 0x49, 0xa9, 0xb4, 0x10, 0x54, + 0x2c, 0xe2, 0xfa, 0xd1, 0x0b, 0x65, 0x44, 0xa3, 0xe6, 0x1e, 0xf3, 0xe1, 0x6f, 0xfe, 0xb1, 0xbe, + 0xe9, 0xb8, 0xb4, 0xdb, 0xef, 0x18, 0x16, 0xf1, 0x64, 0x4b, 0x51, 0xfe, 0xb7, 0x15, 0xda, 0x47, + 0xb2, 0x7b, 0xc8, 0x26, 0x84, 0x2d, 0xb1, 0xb2, 0x2c, 0xae, 0x2a, 0xe7, 0x8a, 0xab, 0x6a, 0x56, + 0x71, 0x55, 0xfb, 0xbf, 0x8b, 0xab, 0xd9, 0x61, 0x71, 0xd5, 0xdc, 0x64, 0x4e, 0x91, 0x14, 0x64, + 0x34, 0x5d, 0x86, 0xb4, 0xca, 0xa6, 0x8b, 0x52, 0x03, 0x08, 0x0f, 0xfc, 0xbe, 0x00, 0xb3, 0x2c, + 0xfb, 0x4d, 0xb5, 0x74, 0xfa, 0x26, 0x54, 0x2c, 0xb6, 0xa0, 0xbc, 0x40, 0x2b, 0x86, 0x68, 0x95, + 0x1a, 0x51, 0xab, 0xd4, 0xd8, 0xf1, 0x4f, 0x77, 0x97, 0x3f, 0x3d, 0xdb, 0x5a, 0x50, 0x72, 0x49, + 0x4b, 0xcc, 0x6a, 0xbe, 0x93, 0x17, 0x25, 0xde, 0x48, 0xa5, 0x6c, 0x1e, 0x13, 0x35, 0xfe, 0x68, + 0x13, 0x0b, 0x44, 0x56, 0xfd, 0xa1, 0x00, 0x30, 0xcc, 0xe9, 0x53, 0xb3, 0xeb, 0xeb, 0x50, 0xb3, + 0xc4, 0x92, 0x23, 0x2d, 0x9b, 0xff, 0xf4, 0x6c, 0xab, 0x26, 0xf7, 0x6e, 0x45, 0x33, 0x9a, 0x46, + 0x9e, 0x55, 0x57, 0x32, 0x0b, 0x11, 0x7d, 0x85, 0x3f, 0x7b, 0xa2, 0x65, 0xa4, 0x65, 0xf7, 0x7f, + 0xbe, 0x00, 0xa5, 0x83, 0xd0, 0xd1, 0x7a, 0x70, 0x49, 0xe9, 0x25, 0x8f, 0x78, 0x7b, 0xa7, 0xda, + 0xa3, 0x8d, 0xed, 0x89, 0xa1, 0xd1, 0xae, 0x9a, 0x0b, 0xf3, 0xc9, 0x2e, 0xea, 0xe6, 0xc8, 0x15, + 0x12, 0xc8, 0xc6, 0xbd, 0x49, 0x91, 0xf1, 0x56, 0x87, 0x00, 0x89, 0x8e, 0xe6, 0xed, 0x91, 0xf3, + 0x87, 0xc0, 0x86, 0x39, 0x21, 0x30, 0x69, 0x52, 0xb2, 0xd3, 0x38, 0xda, 0xa4, 0x04, 0x72, 0x8c, + 0x49, 0x19, 0x9d, 0x40, 0x2d, 0x80, 0xc5, 0x54, 0x5b, 0xed, 0xee, 0xc8, 0x35, 0x54, 0x70, 0xe3, + 0xc1, 0x05, 0xc0, 0xc9, 0x3d, 0x53, 0x9d, 0xc7, 0xd1, 0x7b, 0xaa, 0xe0, 0x31, 0x7b, 0x66, 0xb7, + 0x10, 0xb5, 0x01, 0x2c, 0x9d, 0xeb, 0xc7, 0x6d, 0x8d, 0x5c, 0x28, 0x0d, 0x6f, 0x7c, 0xf5, 0x42, + 0xf0, 0x78, 0xe7, 0x1e, 0x5c, 0x52, 0x9e, 0x30, 0xa3, 0x6f, 0x43, 0x12, 0x3a, 0xe6, 0x36, 0x24, + 0xa1, 0xf1, 0x6e, 0x3f, 0x82, 0xe5, 0xf3, 0x15, 0x98, 0x31, 0xfa, 0x56, 0xa5, 0xf1, 0x8d, 0x87, + 0x17, 0xc3, 0x27, 0x1d, 0xab, 0x96, 0xe1, 0x63, 0x1c, 0xab, 0x82, 0xc7, 0x38, 0x56, 0x05, 0x27, + 0xef, 0x64, 0x22, 0x45, 0xdf, 0x9e, 0x50, 0xf3, 0x31, 0x77, 0xf2, 0x7c, 0x32, 0x62, 0x6e, 0x54, + 0x0a, 0xbc, 0xd1, 0x6e, 0x4c, 0x42, 0xc7, 0xb8, 0x31, 0xab, 0xba, 0xd2, 0x7e, 0x0c, 0x5a, 0x46, + 0x65, 0x65, 0x4e, 0xb0, 0x50, 0x72, 0x42, 0xe3, 0xd1, 0x05, 0x27, 0xc4, 0xfb, 0xff, 0x00, 0x2a, + 0x22, 0xed, 0xea, 0xa3, 0x8f, 0x20, 0xc3, 0x34, 0xee, 0x8c, 0xc7, 0xc4, 0xd9, 0x6f, 0x46, 0x6b, + 0x43, 0x94, 0x7f, 0xb4, 0xb7, 0x26, 0x39, 0xdf, 0x8d, 0x77, 0x26, 0x41, 0x0d, 0x37, 0x68, 0x54, + 0x7e, 0xf2, 0xf2, 0xd9, 0x9d, 0xc2, 0xee, 0xfe, 0x27, 0xcf, 0xd7, 0x0a, 0x9f, 0x3d, 0x5f, 0x2b, + 0xfc, 0xf3, 0xf9, 0x5a, 0xe1, 0xe3, 0x17, 0x6b, 0x33, 0x9f, 0xbd, 0x58, 0x9b, 0xf9, 0xeb, 0x8b, + 0xb5, 0x99, 0x1f, 0x9a, 0x89, 0x32, 0xea, 0xb0, 0xef, 0x5b, 0xd4, 0x25, 0xfe, 0xc0, 0x3c, 0x1c, + 0x6c, 0x59, 0x24, 0xc0, 0xe6, 0x20, 0xf9, 0xe7, 0x56, 0x5e, 0x53, 0x75, 0xaa, 0x3c, 0x85, 0x3e, + 0xf8, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x47, 0xbc, 0x5e, 0x8c, 0x4b, 0x1e, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -2158,24 +2154,18 @@ type MsgClient interface { EditBridger(ctx context.Context, in *MsgEditBridger, opts ...grpc.CallOption) (*MsgEditBridgerResponse, error) WithdrawReward(ctx context.Context, in *MsgWithdrawReward, opts ...grpc.CallOption) (*MsgWithdrawRewardResponse, error) UnbondedOracle(ctx context.Context, in *MsgUnbondedOracle, opts ...grpc.CallOption) (*MsgUnbondedOracleResponse, error) - // Deprecated: do not use + // Deprecated: Please use Confirm OracleSetConfirm(ctx context.Context, in *MsgOracleSetConfirm, opts ...grpc.CallOption) (*MsgOracleSetConfirmResponse, error) - // Deprecated: Please use BridgeCall - SendToExternal(ctx context.Context, in *MsgSendToExternal, opts ...grpc.CallOption) (*MsgSendToExternalResponse, error) - // Deprecated: do not use - CancelSendToExternal(ctx context.Context, in *MsgCancelSendToExternal, opts ...grpc.CallOption) (*MsgCancelSendToExternalResponse, error) - // Deprecated: do not use - RequestBatch(ctx context.Context, in *MsgRequestBatch, opts ...grpc.CallOption) (*MsgRequestBatchResponse, error) - // Deprecated: do not use + // Deprecated: Please use Confirm ConfirmBatch(ctx context.Context, in *MsgConfirmBatch, opts ...grpc.CallOption) (*MsgConfirmBatchResponse, error) - BridgeCall(ctx context.Context, in *MsgBridgeCall, opts ...grpc.CallOption) (*MsgBridgeCallResponse, error) - // Deprecated: do not use + // Deprecated: Please use Confirm BridgeCallConfirm(ctx context.Context, in *MsgBridgeCallConfirm, opts ...grpc.CallOption) (*MsgBridgeCallConfirmResponse, error) + // Deprecated: Please use precompile BridgeCall + SendToExternal(ctx context.Context, in *MsgSendToExternal, opts ...grpc.CallOption) (*MsgSendToExternalResponse, error) + BridgeCall(ctx context.Context, in *MsgBridgeCall, opts ...grpc.CallOption) (*MsgBridgeCallResponse, error) // UpdateParams defines a governance operation for updating the x/crosschain // module parameters. The authority is hard-coded to the x/gov module account. UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error) - // Deprecated: do not use - IncreaseBridgeFee(ctx context.Context, in *MsgIncreaseBridgeFee, opts ...grpc.CallOption) (*MsgIncreaseBridgeFeeResponse, error) UpdateChainOracles(ctx context.Context, in *MsgUpdateChainOracles, opts ...grpc.CallOption) (*MsgUpdateChainOraclesResponse, error) Claim(ctx context.Context, in *MsgClaim, opts ...grpc.CallOption) (*MsgClaimResponse, error) Confirm(ctx context.Context, in *MsgConfirm, opts ...grpc.CallOption) (*MsgConfirmResponse, error) @@ -2252,36 +2242,27 @@ func (c *msgClient) OracleSetConfirm(ctx context.Context, in *MsgOracleSetConfir return out, nil } -func (c *msgClient) SendToExternal(ctx context.Context, in *MsgSendToExternal, opts ...grpc.CallOption) (*MsgSendToExternalResponse, error) { - out := new(MsgSendToExternalResponse) - err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Msg/SendToExternal", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) CancelSendToExternal(ctx context.Context, in *MsgCancelSendToExternal, opts ...grpc.CallOption) (*MsgCancelSendToExternalResponse, error) { - out := new(MsgCancelSendToExternalResponse) - err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Msg/CancelSendToExternal", in, out, opts...) +func (c *msgClient) ConfirmBatch(ctx context.Context, in *MsgConfirmBatch, opts ...grpc.CallOption) (*MsgConfirmBatchResponse, error) { + out := new(MsgConfirmBatchResponse) + err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Msg/ConfirmBatch", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *msgClient) RequestBatch(ctx context.Context, in *MsgRequestBatch, opts ...grpc.CallOption) (*MsgRequestBatchResponse, error) { - out := new(MsgRequestBatchResponse) - err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Msg/RequestBatch", in, out, opts...) +func (c *msgClient) BridgeCallConfirm(ctx context.Context, in *MsgBridgeCallConfirm, opts ...grpc.CallOption) (*MsgBridgeCallConfirmResponse, error) { + out := new(MsgBridgeCallConfirmResponse) + err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Msg/BridgeCallConfirm", in, out, opts...) if err != nil { return nil, err } return out, nil } -func (c *msgClient) ConfirmBatch(ctx context.Context, in *MsgConfirmBatch, opts ...grpc.CallOption) (*MsgConfirmBatchResponse, error) { - out := new(MsgConfirmBatchResponse) - err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Msg/ConfirmBatch", in, out, opts...) +func (c *msgClient) SendToExternal(ctx context.Context, in *MsgSendToExternal, opts ...grpc.CallOption) (*MsgSendToExternalResponse, error) { + out := new(MsgSendToExternalResponse) + err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Msg/SendToExternal", in, out, opts...) if err != nil { return nil, err } @@ -2297,15 +2278,6 @@ func (c *msgClient) BridgeCall(ctx context.Context, in *MsgBridgeCall, opts ...g return out, nil } -func (c *msgClient) BridgeCallConfirm(ctx context.Context, in *MsgBridgeCallConfirm, opts ...grpc.CallOption) (*MsgBridgeCallConfirmResponse, error) { - out := new(MsgBridgeCallConfirmResponse) - err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Msg/BridgeCallConfirm", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *msgClient) UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error) { out := new(MsgUpdateParamsResponse) err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Msg/UpdateParams", in, out, opts...) @@ -2315,15 +2287,6 @@ func (c *msgClient) UpdateParams(ctx context.Context, in *MsgUpdateParams, opts return out, nil } -func (c *msgClient) IncreaseBridgeFee(ctx context.Context, in *MsgIncreaseBridgeFee, opts ...grpc.CallOption) (*MsgIncreaseBridgeFeeResponse, error) { - out := new(MsgIncreaseBridgeFeeResponse) - err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Msg/IncreaseBridgeFee", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *msgClient) UpdateChainOracles(ctx context.Context, in *MsgUpdateChainOracles, opts ...grpc.CallOption) (*MsgUpdateChainOraclesResponse, error) { out := new(MsgUpdateChainOraclesResponse) err := c.cc.Invoke(ctx, "/fx.gravity.crosschain.v1.Msg/UpdateChainOracles", in, out, opts...) @@ -2359,24 +2322,18 @@ type MsgServer interface { EditBridger(context.Context, *MsgEditBridger) (*MsgEditBridgerResponse, error) WithdrawReward(context.Context, *MsgWithdrawReward) (*MsgWithdrawRewardResponse, error) UnbondedOracle(context.Context, *MsgUnbondedOracle) (*MsgUnbondedOracleResponse, error) - // Deprecated: do not use + // Deprecated: Please use Confirm OracleSetConfirm(context.Context, *MsgOracleSetConfirm) (*MsgOracleSetConfirmResponse, error) - // Deprecated: Please use BridgeCall - SendToExternal(context.Context, *MsgSendToExternal) (*MsgSendToExternalResponse, error) - // Deprecated: do not use - CancelSendToExternal(context.Context, *MsgCancelSendToExternal) (*MsgCancelSendToExternalResponse, error) - // Deprecated: do not use - RequestBatch(context.Context, *MsgRequestBatch) (*MsgRequestBatchResponse, error) - // Deprecated: do not use + // Deprecated: Please use Confirm ConfirmBatch(context.Context, *MsgConfirmBatch) (*MsgConfirmBatchResponse, error) - BridgeCall(context.Context, *MsgBridgeCall) (*MsgBridgeCallResponse, error) - // Deprecated: do not use + // Deprecated: Please use Confirm BridgeCallConfirm(context.Context, *MsgBridgeCallConfirm) (*MsgBridgeCallConfirmResponse, error) + // Deprecated: Please use precompile BridgeCall + SendToExternal(context.Context, *MsgSendToExternal) (*MsgSendToExternalResponse, error) + BridgeCall(context.Context, *MsgBridgeCall) (*MsgBridgeCallResponse, error) // UpdateParams defines a governance operation for updating the x/crosschain // module parameters. The authority is hard-coded to the x/gov module account. UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error) - // Deprecated: do not use - IncreaseBridgeFee(context.Context, *MsgIncreaseBridgeFee) (*MsgIncreaseBridgeFeeResponse, error) UpdateChainOracles(context.Context, *MsgUpdateChainOracles) (*MsgUpdateChainOraclesResponse, error) Claim(context.Context, *MsgClaim) (*MsgClaimResponse, error) Confirm(context.Context, *MsgConfirm) (*MsgConfirmResponse, error) @@ -2407,30 +2364,21 @@ func (*UnimplementedMsgServer) UnbondedOracle(ctx context.Context, req *MsgUnbon func (*UnimplementedMsgServer) OracleSetConfirm(ctx context.Context, req *MsgOracleSetConfirm) (*MsgOracleSetConfirmResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method OracleSetConfirm not implemented") } -func (*UnimplementedMsgServer) SendToExternal(ctx context.Context, req *MsgSendToExternal) (*MsgSendToExternalResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SendToExternal not implemented") -} -func (*UnimplementedMsgServer) CancelSendToExternal(ctx context.Context, req *MsgCancelSendToExternal) (*MsgCancelSendToExternalResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method CancelSendToExternal not implemented") -} -func (*UnimplementedMsgServer) RequestBatch(ctx context.Context, req *MsgRequestBatch) (*MsgRequestBatchResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method RequestBatch not implemented") -} func (*UnimplementedMsgServer) ConfirmBatch(ctx context.Context, req *MsgConfirmBatch) (*MsgConfirmBatchResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ConfirmBatch not implemented") } -func (*UnimplementedMsgServer) BridgeCall(ctx context.Context, req *MsgBridgeCall) (*MsgBridgeCallResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method BridgeCall not implemented") -} func (*UnimplementedMsgServer) BridgeCallConfirm(ctx context.Context, req *MsgBridgeCallConfirm) (*MsgBridgeCallConfirmResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method BridgeCallConfirm not implemented") } +func (*UnimplementedMsgServer) SendToExternal(ctx context.Context, req *MsgSendToExternal) (*MsgSendToExternalResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SendToExternal not implemented") +} +func (*UnimplementedMsgServer) BridgeCall(ctx context.Context, req *MsgBridgeCall) (*MsgBridgeCallResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method BridgeCall not implemented") +} func (*UnimplementedMsgServer) UpdateParams(ctx context.Context, req *MsgUpdateParams) (*MsgUpdateParamsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method UpdateParams not implemented") } -func (*UnimplementedMsgServer) IncreaseBridgeFee(ctx context.Context, req *MsgIncreaseBridgeFee) (*MsgIncreaseBridgeFeeResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method IncreaseBridgeFee not implemented") -} func (*UnimplementedMsgServer) UpdateChainOracles(ctx context.Context, req *MsgUpdateChainOracles) (*MsgUpdateChainOraclesResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method UpdateChainOracles not implemented") } @@ -2571,74 +2519,56 @@ func _Msg_OracleSetConfirm_Handler(srv interface{}, ctx context.Context, dec fun return interceptor(ctx, in, info, handler) } -func _Msg_SendToExternal_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MsgSendToExternal) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).SendToExternal(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/fx.gravity.crosschain.v1.Msg/SendToExternal", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).SendToExternal(ctx, req.(*MsgSendToExternal)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_CancelSendToExternal_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MsgCancelSendToExternal) +func _Msg_ConfirmBatch_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MsgConfirmBatch) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(MsgServer).CancelSendToExternal(ctx, in) + return srv.(MsgServer).ConfirmBatch(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/fx.gravity.crosschain.v1.Msg/CancelSendToExternal", + FullMethod: "/fx.gravity.crosschain.v1.Msg/ConfirmBatch", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).CancelSendToExternal(ctx, req.(*MsgCancelSendToExternal)) + return srv.(MsgServer).ConfirmBatch(ctx, req.(*MsgConfirmBatch)) } return interceptor(ctx, in, info, handler) } -func _Msg_RequestBatch_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MsgRequestBatch) +func _Msg_BridgeCallConfirm_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MsgBridgeCallConfirm) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(MsgServer).RequestBatch(ctx, in) + return srv.(MsgServer).BridgeCallConfirm(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/fx.gravity.crosschain.v1.Msg/RequestBatch", + FullMethod: "/fx.gravity.crosschain.v1.Msg/BridgeCallConfirm", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).RequestBatch(ctx, req.(*MsgRequestBatch)) + return srv.(MsgServer).BridgeCallConfirm(ctx, req.(*MsgBridgeCallConfirm)) } return interceptor(ctx, in, info, handler) } -func _Msg_ConfirmBatch_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MsgConfirmBatch) +func _Msg_SendToExternal_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MsgSendToExternal) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(MsgServer).ConfirmBatch(ctx, in) + return srv.(MsgServer).SendToExternal(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/fx.gravity.crosschain.v1.Msg/ConfirmBatch", + FullMethod: "/fx.gravity.crosschain.v1.Msg/SendToExternal", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).ConfirmBatch(ctx, req.(*MsgConfirmBatch)) + return srv.(MsgServer).SendToExternal(ctx, req.(*MsgSendToExternal)) } return interceptor(ctx, in, info, handler) } @@ -2661,24 +2591,6 @@ func _Msg_BridgeCall_Handler(srv interface{}, ctx context.Context, dec func(inte return interceptor(ctx, in, info, handler) } -func _Msg_BridgeCallConfirm_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MsgBridgeCallConfirm) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).BridgeCallConfirm(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/fx.gravity.crosschain.v1.Msg/BridgeCallConfirm", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).BridgeCallConfirm(ctx, req.(*MsgBridgeCallConfirm)) - } - return interceptor(ctx, in, info, handler) -} - func _Msg_UpdateParams_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(MsgUpdateParams) if err := dec(in); err != nil { @@ -2697,24 +2609,6 @@ func _Msg_UpdateParams_Handler(srv interface{}, ctx context.Context, dec func(in return interceptor(ctx, in, info, handler) } -func _Msg_IncreaseBridgeFee_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MsgIncreaseBridgeFee) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).IncreaseBridgeFee(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/fx.gravity.crosschain.v1.Msg/IncreaseBridgeFee", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).IncreaseBridgeFee(ctx, req.(*MsgIncreaseBridgeFee)) - } - return interceptor(ctx, in, info, handler) -} - func _Msg_UpdateChainOracles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(MsgUpdateChainOracles) if err := dec(in); err != nil { @@ -2802,37 +2696,25 @@ var _Msg_serviceDesc = grpc.ServiceDesc{ Handler: _Msg_OracleSetConfirm_Handler, }, { - MethodName: "SendToExternal", - Handler: _Msg_SendToExternal_Handler, - }, - { - MethodName: "CancelSendToExternal", - Handler: _Msg_CancelSendToExternal_Handler, + MethodName: "ConfirmBatch", + Handler: _Msg_ConfirmBatch_Handler, }, { - MethodName: "RequestBatch", - Handler: _Msg_RequestBatch_Handler, + MethodName: "BridgeCallConfirm", + Handler: _Msg_BridgeCallConfirm_Handler, }, { - MethodName: "ConfirmBatch", - Handler: _Msg_ConfirmBatch_Handler, + MethodName: "SendToExternal", + Handler: _Msg_SendToExternal_Handler, }, { MethodName: "BridgeCall", Handler: _Msg_BridgeCall_Handler, }, - { - MethodName: "BridgeCallConfirm", - Handler: _Msg_BridgeCallConfirm_Handler, - }, { MethodName: "UpdateParams", Handler: _Msg_UpdateParams_Handler, }, - { - MethodName: "IncreaseBridgeFee", - Handler: _Msg_IncreaseBridgeFee_Handler, - }, { MethodName: "UpdateChainOracles", Handler: _Msg_UpdateChainOracles_Handler, diff --git a/x/crosschain/types/types.go b/x/crosschain/types/types.go index 2f18c569..881faaa9 100644 --- a/x/crosschain/types/types.go +++ b/x/crosschain/types/types.go @@ -415,17 +415,6 @@ func (o Oracles) Swap(i, j int) { o[i], o[j] = o[j], o[i] } -func MinBatchFeeToBaseFees(ms []MinBatchFee) map[string]sdkmath.Int { - kv := make(map[string]sdkmath.Int, len(ms)) - for _, m := range ms { - if m.BaseFee.IsNil() || m.BaseFee.IsNegative() { - continue - } - kv[m.TokenContract] = m.BaseFee - } - return kv -} - type OutgoingTransferTxs []*OutgoingTransferTx func (txs OutgoingTransferTxs) TotalFee() sdkmath.Int { diff --git a/x/tron/keeper/grpc_query_test.go b/x/tron/keeper/grpc_query_test.go index 9c906ee2..c2e90143 100644 --- a/x/tron/keeper/grpc_query_test.go +++ b/x/tron/keeper/grpc_query_test.go @@ -10,10 +10,10 @@ import ( trontypes "github.com/functionx/fx-core/v8/x/tron/types" ) -func (suite *KeeperTestSuite) TestKeeper_BatchRequestByNonce() { +func (suite *KeeperTestSuite) TestKeeper_OutgoingTxBatch() { var ( - request *types.QueryBatchRequestByNonceRequest - response *types.QueryBatchRequestByNonceResponse + request *types.QueryOutgoingTxBatchRequest + response *types.QueryOutgoingTxBatchResponse ) testCases := []struct { name string @@ -25,7 +25,7 @@ func (suite *KeeperTestSuite) TestKeeper_BatchRequestByNonce() { malleate: func() { bridgeToken := suite.NewBridgeToken(helpers.GenHexAddress().Bytes()) feeReceive := helpers.HexAddrToTronAddr(helpers.GenHexAddress().Hex()) - request = &types.QueryBatchRequestByNonceRequest{ + request = &types.QueryOutgoingTxBatchRequest{ ChainName: trontypes.ModuleName, TokenContract: bridgeToken[0].Token, Nonce: 3, @@ -49,7 +49,7 @@ func (suite *KeeperTestSuite) TestKeeper_BatchRequestByNonce() { FeeReceive: feeReceive, }) suite.Require().NoError(err) - response = &types.QueryBatchRequestByNonceResponse{ + response = &types.QueryOutgoingTxBatchResponse{ Batch: &types.OutgoingTxBatch{ BatchNonce: 3, BatchTimeout: 10000, @@ -75,7 +75,7 @@ func (suite *KeeperTestSuite) TestKeeper_BatchRequestByNonce() { { name: "request error nonce", malleate: func() { - request = &types.QueryBatchRequestByNonceRequest{ + request = &types.QueryOutgoingTxBatchRequest{ ChainName: trontypes.ModuleName, TokenContract: helpers.HexAddrToTronAddr(helpers.GenHexAddress().Hex()), Nonce: 0, @@ -86,7 +86,7 @@ func (suite *KeeperTestSuite) TestKeeper_BatchRequestByNonce() { { name: "request error token", malleate: func() { - request = &types.QueryBatchRequestByNonceRequest{ + request = &types.QueryOutgoingTxBatchRequest{ ChainName: trontypes.ModuleName, TokenContract: helpers.GenHexAddress().Hex(), Nonce: 8, @@ -98,7 +98,7 @@ func (suite *KeeperTestSuite) TestKeeper_BatchRequestByNonce() { name: "request nonexistent nonce", malleate: func() { bridgeToken := suite.NewBridgeToken(helpers.GenHexAddress().Bytes()) - request = &types.QueryBatchRequestByNonceRequest{ + request = &types.QueryOutgoingTxBatchRequest{ ChainName: trontypes.ModuleName, TokenContract: bridgeToken[0].Token, Nonce: 8, @@ -109,7 +109,7 @@ func (suite *KeeperTestSuite) TestKeeper_BatchRequestByNonce() { { name: "request nonexistent token", malleate: func() { - request = &types.QueryBatchRequestByNonceRequest{ + request = &types.QueryOutgoingTxBatchRequest{ ChainName: trontypes.ModuleName, TokenContract: helpers.HexAddrToTronAddr(helpers.GenHexAddress().Hex()), Nonce: 8, @@ -122,7 +122,7 @@ func (suite *KeeperTestSuite) TestKeeper_BatchRequestByNonce() { suite.Run(testCase.name, func() { suite.SetupTest() testCase.malleate() - res, err := suite.queryServer.BatchRequestByNonce(suite.Ctx, request) + res, err := suite.queryServer.OutgoingTxBatch(suite.Ctx, request) if testCase.expPass { suite.Require().NoError(err) suite.Require().Equal(response.Batch, res.Batch)