From e68b56aa2beaaa1b8b58e0920ac531c6abe05668 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Bene=C5=A1?= Date: Tue, 12 Mar 2024 21:08:20 +0100 Subject: [PATCH] test: deterministic mode (#5155) Fixes #3899 When exporting SEED=[number] env var deterministic mode gets used now. Note that there are other sources of info in some tests so the results might not be the same in all the cases. E.g. in integration l1 publisher test the second block has a populated timestamp and therefore will have different archive root. For first block the timestamp is set to 0 so there an equal result should be achieved. --- l1-contracts/test/fixtures/empty_block_0.json | 10 +-- l1-contracts/test/fixtures/empty_block_1.json | 14 ++--- l1-contracts/test/fixtures/mixed_block_0.json | 16 ++--- l1-contracts/test/fixtures/mixed_block_1.json | 20 +++--- .../src/archiver/archiver_store_test_suite.ts | 36 +++++------ .../src/l1_to_l2_message.test.ts | 6 +- .../circuit-types/src/l1_to_l2_message.ts | 10 +-- .../src/logs/function_l2_logs.ts | 4 +- .../src/logs/l1_note_payload/note.ts | 3 +- .../circuit-types/src/logs/log_id.test.ts | 8 ++- .../src/logs/unencrypted_l2_log.ts | 7 +-- .../barretenberg/crypto/ecdsa/signature.ts | 3 +- .../src/structs/call_context.test.ts | 5 +- .../src/structs/content_commitment.test.ts | 5 +- .../src/structs/contract_storage_read.test.ts | 5 +- .../contract_storage_update_request.test.ts | 5 +- .../src/structs/global_variables.test.ts | 5 +- .../circuits.js/src/structs/header.test.ts | 4 +- .../src/structs/l2_to_l1_message.test.ts | 5 +- .../structs/partial_state_reference.test.ts | 5 +- .../structs/private_call_stack_item.test.ts | 4 +- .../private_circuit_public_inputs.test.ts | 4 +- .../structs/public_call_stack_item.test.ts | 4 +- .../public_circuit_public_inputs.test.ts | 4 +- .../src/structs/state_reference.test.ts | 5 +- .../src/structs/tx_context.test.ts | 4 +- .../src/structs/tx_request.test.ts | 4 +- .../end-to-end/src/benchmarks/utils.ts | 4 +- .../src/e2e_account_contracts.test.ts | 3 +- .../src/e2e_inclusion_proofs_contract.test.ts | 5 +- .../foundation/src/abi/event_selector.ts | 10 ++- .../foundation/src/crypto/random/index.ts | 34 ++++++++++ .../src/crypto/random/randomness_singleton.ts | 62 +++++++++++++++++++ .../kv-store/src/lmdb/counter.test.ts | 3 +- .../snapshots/append_only_snapshot.test.ts | 3 +- .../src/snapshots/full_snapshot.test.ts | 3 +- .../snapshots/snapshot_builder_test_suite.ts | 4 +- .../src/sparse_tree/sparse_tree.test.ts | 9 ++- .../src/test/standard_based_test_suite.ts | 3 +- .../src/database/deferred_note_dao.test.ts | 3 +- .../src/database/pxe_database_test_suite.ts | 3 +- .../pxe/src/pxe_service/create_pxe_service.ts | 7 +-- .../pxe/src/synchronizer/synchronizer.test.ts | 3 +- .../src/client/private_execution.test.ts | 4 +- .../simulator/src/public/avm_executor.test.ts | 4 +- .../simulator/src/public/index.test.ts | 5 +- 46 files changed, 246 insertions(+), 131 deletions(-) create mode 100644 yarn-project/foundation/src/crypto/random/randomness_singleton.ts diff --git a/l1-contracts/test/fixtures/empty_block_0.json b/l1-contracts/test/fixtures/empty_block_0.json index 5769185f450..6d041901550 100644 --- a/l1-contracts/test/fixtures/empty_block_0.json +++ b/l1-contracts/test/fixtures/empty_block_0.json @@ -35,7 +35,7 @@ ] }, "block": { - "archive": "0x12e61edc1dad6fb9e81e4157d0906a171a2d2cad5daa767594eb07b7e7c1c189", + "archive": "0x2c80dc48494603ac15fa1ea88e3cd79565bdd54cf067a9bb4da9849870b60c69", "body": "0x00000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "txsEffectsHash": "0x9139297703640b243028d35c29ae8c0667886c4edc8db5f879c260d2051bb8a9", "decodedHeader": { @@ -50,8 +50,8 @@ "chainId": 31337, "timestamp": 0, "version": 1, - "coinbase": "0x837ac4b411a7a5911031e82d3f8799bb21c34795", - "feeRecipient": "0x1296779221953ecf9e3c115440521940f216ca20b860f64f13af55b8cdbdb9c7" + "coinbase": "0x66440eb666440eb666440eb666440eb666440eb6", + "feeRecipient": "0x061ca689507c7f1ccc68c2ad086c9d5d94f50869cb1b718c6a46aaf77a4500ba" }, "lastArchive": { "nextAvailableLeafIndex": 1, @@ -78,8 +78,8 @@ } } }, - "header": "0x012a86560737adb075e12af8253fb09abf17aa841fb56d180bc89f0d2d473c7f0000000100000000000000000000000000000000000000000000000000000000000000029139297703640b243028d35c29ae8c0667886c4edc8db5f879c260d2051bb8a90000000000000000000000000000000000000000000000000000000000000000c78009fdf07fc56a11f122370658a353aaa542ed63e44c4bc15ff4cd105ab33c1864fcdaa80ff2719154fa7c8a9050662972707168d69eac9db6fd3110829f800000001016642d9ccd8346c403aa4c3fa451178b22534a27035cdaa6ec34ae53b29c50cb000001000bcfa3e9f1a8922ee92c6dc964d6595907c1804a86753774322b468f69d4f278000001800572c8db882674dd026b8877fbba1b700a4407da3ae9ce5fa43215a28163362b000000c00000000000000000000000000000000000000000000000000000000000007a69000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000837ac4b411a7a5911031e82d3f8799bb21c347951296779221953ecf9e3c115440521940f216ca20b860f64f13af55b8cdbdb9c7", + "header": "0x012a86560737adb075e12af8253fb09abf17aa841fb56d180bc89f0d2d473c7f0000000100000000000000000000000000000000000000000000000000000000000000029139297703640b243028d35c29ae8c0667886c4edc8db5f879c260d2051bb8a90000000000000000000000000000000000000000000000000000000000000000c78009fdf07fc56a11f122370658a353aaa542ed63e44c4bc15ff4cd105ab33c1864fcdaa80ff2719154fa7c8a9050662972707168d69eac9db6fd3110829f800000001016642d9ccd8346c403aa4c3fa451178b22534a27035cdaa6ec34ae53b29c50cb000001000bcfa3e9f1a8922ee92c6dc964d6595907c1804a86753774322b468f69d4f278000001800572c8db882674dd026b8877fbba1b700a4407da3ae9ce5fa43215a28163362b000000c00000000000000000000000000000000000000000000000000000000000007a6900000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000066440eb666440eb666440eb666440eb666440eb6061ca689507c7f1ccc68c2ad086c9d5d94f50869cb1b718c6a46aaf77a4500ba", "l1ToL2MessagesHash": "0x076a27c79e5ace2a3d47f9dd2e83e4ff6ea8872b3c2218f66c92b89b55f36560", - "publicInputsHash": "0x14d3a7d947fc1660f01d5f41f7768d9bee4a74809484cc80535183daf0346d1f" + "publicInputsHash": "0x22fb6cb24475c172eea140a775dd4ca748f8dda94fda256d5f76c09cb913ecf0" } } \ No newline at end of file diff --git a/l1-contracts/test/fixtures/empty_block_1.json b/l1-contracts/test/fixtures/empty_block_1.json index 94c96156ebf..71397610889 100644 --- a/l1-contracts/test/fixtures/empty_block_1.json +++ b/l1-contracts/test/fixtures/empty_block_1.json @@ -35,7 +35,7 @@ ] }, "block": { - "archive": "0x2eb0c375f9f387ef03e8f470f7f976a8213cf31a514b72cf3499a8dd251deb57", + "archive": "0x0dbc2a0e8143bb92a0f8a92c8a9862c4577f15b01330d89960032af0dadf5b52", "body": "0x00000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "txsEffectsHash": "0x9139297703640b243028d35c29ae8c0667886c4edc8db5f879c260d2051bb8a9", "decodedHeader": { @@ -48,14 +48,14 @@ "globalVariables": { "blockNumber": 2, "chainId": 31337, - "timestamp": 1709939104, + "timestamp": 1710254478, "version": 1, - "coinbase": "0x837ac4b411a7a5911031e82d3f8799bb21c34795", - "feeRecipient": "0x1296779221953ecf9e3c115440521940f216ca20b860f64f13af55b8cdbdb9c7" + "coinbase": "0x66440eb666440eb666440eb666440eb666440eb6", + "feeRecipient": "0x061ca689507c7f1ccc68c2ad086c9d5d94f50869cb1b718c6a46aaf77a4500ba" }, "lastArchive": { "nextAvailableLeafIndex": 2, - "root": "0x12e61edc1dad6fb9e81e4157d0906a171a2d2cad5daa767594eb07b7e7c1c189" + "root": "0x2c80dc48494603ac15fa1ea88e3cd79565bdd54cf067a9bb4da9849870b60c69" }, "stateReference": { "l1ToL2MessageTree": { @@ -78,8 +78,8 @@ } } }, - "header": "0x12e61edc1dad6fb9e81e4157d0906a171a2d2cad5daa767594eb07b7e7c1c1890000000200000000000000000000000000000000000000000000000000000000000000029139297703640b243028d35c29ae8c0667886c4edc8db5f879c260d2051bb8a90000000000000000000000000000000000000000000000000000000000000000c78009fdf07fc56a11f122370658a353aaa542ed63e44c4bc15ff4cd105ab33c1864fcdaa80ff2719154fa7c8a9050662972707168d69eac9db6fd3110829f800000002016642d9ccd8346c403aa4c3fa451178b22534a27035cdaa6ec34ae53b29c50cb000002000bcfa3e9f1a8922ee92c6dc964d6595907c1804a86753774322b468f69d4f278000002800572c8db882674dd026b8877fbba1b700a4407da3ae9ce5fa43215a28163362b000001400000000000000000000000000000000000000000000000000000000000007a69000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000065eb99a0837ac4b411a7a5911031e82d3f8799bb21c347951296779221953ecf9e3c115440521940f216ca20b860f64f13af55b8cdbdb9c7", + "header": "0x2c80dc48494603ac15fa1ea88e3cd79565bdd54cf067a9bb4da9849870b60c690000000200000000000000000000000000000000000000000000000000000000000000029139297703640b243028d35c29ae8c0667886c4edc8db5f879c260d2051bb8a90000000000000000000000000000000000000000000000000000000000000000c78009fdf07fc56a11f122370658a353aaa542ed63e44c4bc15ff4cd105ab33c1864fcdaa80ff2719154fa7c8a9050662972707168d69eac9db6fd3110829f800000002016642d9ccd8346c403aa4c3fa451178b22534a27035cdaa6ec34ae53b29c50cb000002000bcfa3e9f1a8922ee92c6dc964d6595907c1804a86753774322b468f69d4f278000002800572c8db882674dd026b8877fbba1b700a4407da3ae9ce5fa43215a28163362b000001400000000000000000000000000000000000000000000000000000000000007a69000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000065f0698e66440eb666440eb666440eb666440eb666440eb6061ca689507c7f1ccc68c2ad086c9d5d94f50869cb1b718c6a46aaf77a4500ba", "l1ToL2MessagesHash": "0x076a27c79e5ace2a3d47f9dd2e83e4ff6ea8872b3c2218f66c92b89b55f36560", - "publicInputsHash": "0x18091cbbf29dbe3cd4e5387ea7cfa360121b458b5fb9229ff822cfd32288436e" + "publicInputsHash": "0x0fc84e6176557ac21fb1dd501d124270791bcd21474d814112b3ae4ed0c456bb" } } \ No newline at end of file diff --git a/l1-contracts/test/fixtures/mixed_block_0.json b/l1-contracts/test/fixtures/mixed_block_0.json index d128737e1f0..3ce256175e8 100644 --- a/l1-contracts/test/fixtures/mixed_block_0.json +++ b/l1-contracts/test/fixtures/mixed_block_0.json @@ -52,23 +52,23 @@ ] }, "block": { - "archive": "0x00f4e742fc0ed23e57b5bdbabad8806c1fc9f51695dadc9fe2dda7a6dd16e830", - "body": "0x00000010151de48ca3efbae39f180fe00b8f472ec9f25be10b4f283a87c6d7839353703914c2ea9dedf77698d4afe23bc663263eed0bf9aa3a8b17d9b74812f185610f9e1570cc6641699e3ae87fa258d80a6d853f7b8ccb211dc244d017e2ca6530f8a12806c860af67e9cd50000378411b8c4c4db172ceb2daa862b259b689ccbdc1e005f140c7c95624c8006774279a01ec1ea88617999e4fe6997b6576c4e1c7395a22048b96b586596bd740d0402e15f5577f7ceb5496b65aafc6d89d7c3b34924b0c3f2d50d16279970d682cada30bfa6b29bc0bac0ee2389f6a0444853eccaa932b2a60561da46a58569d71044a84c639e7f88429826e5622581536eb906d9cdd25a2c0a76f7da6924e10751c755227d2535f4ad258b984e78f9f452a853c52300e212d8e2069e4254d81af07744bcbb81121a38f0e2dbed69a523d3fbf85b75c287ca6f33aadbac2e4f058e05924c140d7895a6ed167caf804b710d2ae3ba62b1b51297b3ea37637af6bd56cf33425d95cc5c96e9c2ee3077322fbec86a0c7f32c15d2a888c6cc122e99478c92470a1311635142d82ad7ae67410beeef4ae31f0902ba2fb964922a4610bb18901f7b923885c1d034da5769a48203ae6f0206a92855e2c01ddb3d6553386b5580d681b8230fa4062948668f834f23e0636eaff70aaa64519aafdf4b040bd2f9836e76b9dc13cfec8065dcdf2834d786e06260d100000004380000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000014100000000000000000000000000000000000000000000000000000000000001420000000000000000000000000000000000000000000000000000000000000143000000000000000000000000000000000000000000000000000000000000014400000000000000000000000000000000000000000000000000000000000001450000000000000000000000000000000000000000000000000000000000000146000000000000000000000000000000000000000000000000000000000000014700000000000000000000000000000000000000000000000000000000000001480000000000000000000000000000000000000000000000000000000000000149000000000000000000000000000000000000000000000000000000000000014a000000000000000000000000000000000000000000000000000000000000014b000000000000000000000000000000000000000000000000000000000000014c000000000000000000000000000000000000000000000000000000000000014d000000000000000000000000000000000000000000000000000000000000014e000000000000000000000000000000000000000000000000000000000000014f0000000000000000000000000000000000000000000000000000000000000150000000000000000000000000000000000000000000000000000000000000015100000000000000000000000000000000000000000000000000000000000001520000000000000000000000000000000000000000000000000000000000000153000000000000000000000000000000000000000000000000000000000000015400000000000000000000000000000000000000000000000000000000000001550000000000000000000000000000000000000000000000000000000000000156000000000000000000000000000000000000000000000000000000000000015700000000000000000000000000000000000000000000000000000000000001580000000000000000000000000000000000000000000000000000000000000159000000000000000000000000000000000000000000000000000000000000015a000000000000000000000000000000000000000000000000000000000000015b000000000000000000000000000000000000000000000000000000000000015c000000000000000000000000000000000000000000000000000000000000015d000000000000000000000000000000000000000000000000000000000000015e000000000000000000000000000000000000000000000000000000000000015f0000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000001620000000000000000000000000000000000000000000000000000000000000163000000000000000000000000000000000000000000000000000000000000016400000000000000000000000000000000000000000000000000000000000001650000000000000000000000000000000000000000000000000000000000000166000000000000000000000000000000000000000000000000000000000000016700000000000000000000000000000000000000000000000000000000000001680000000000000000000000000000000000000000000000000000000000000169000000000000000000000000000000000000000000000000000000000000016a000000000000000000000000000000000000000000000000000000000000016b000000000000000000000000000000000000000000000000000000000000016c000000000000000000000000000000000000000000000000000000000000016d000000000000000000000000000000000000000000000000000000000000016e000000000000000000000000000000000000000000000000000000000000016f00000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000000171000000000000000000000000000000000000000000000000000000000000017200000000000000000000000000000000000000000000000000000000000001730000000000000000000000000000000000000000000000000000000000000174000000000000000000000000000000000000000000000000000000000000017500000000000000000000000000000000000000000000000000000000000001760000000000000000000000000000000000000000000000000000000000000177370000000000000000000000000000000000000000000000000000000000000240000000000000000000000000000000000000000000000000000000000000024100000000000000000000000000000000000000000000000000000000000002420000000000000000000000000000000000000000000000000000000000000243000000000000000000000000000000000000000000000000000000000000024400000000000000000000000000000000000000000000000000000000000002450000000000000000000000000000000000000000000000000000000000000246000000000000000000000000000000000000000000000000000000000000024700000000000000000000000000000000000000000000000000000000000002480000000000000000000000000000000000000000000000000000000000000249000000000000000000000000000000000000000000000000000000000000024a000000000000000000000000000000000000000000000000000000000000024b000000000000000000000000000000000000000000000000000000000000024c000000000000000000000000000000000000000000000000000000000000024d000000000000000000000000000000000000000000000000000000000000024e000000000000000000000000000000000000000000000000000000000000024f0000000000000000000000000000000000000000000000000000000000000250000000000000000000000000000000000000000000000000000000000000025100000000000000000000000000000000000000000000000000000000000002520000000000000000000000000000000000000000000000000000000000000253000000000000000000000000000000000000000000000000000000000000025400000000000000000000000000000000000000000000000000000000000002550000000000000000000000000000000000000000000000000000000000000256000000000000000000000000000000000000000000000000000000000000025700000000000000000000000000000000000000000000000000000000000002580000000000000000000000000000000000000000000000000000000000000259000000000000000000000000000000000000000000000000000000000000025a000000000000000000000000000000000000000000000000000000000000025b000000000000000000000000000000000000000000000000000000000000025c000000000000000000000000000000000000000000000000000000000000025d000000000000000000000000000000000000000000000000000000000000025e000000000000000000000000000000000000000000000000000000000000025f0000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000026100000000000000000000000000000000000000000000000000000000000002620000000000000000000000000000000000000000000000000000000000000263000000000000000000000000000000000000000000000000000000000000026400000000000000000000000000000000000000000000000000000000000002650000000000000000000000000000000000000000000000000000000000000266000000000000000000000000000000000000000000000000000000000000026700000000000000000000000000000000000000000000000000000000000002680000000000000000000000000000000000000000000000000000000000000269000000000000000000000000000000000000000000000000000000000000026a000000000000000000000000000000000000000000000000000000000000026b000000000000000000000000000000000000000000000000000000000000026c000000000000000000000000000000000000000000000000000000000000026d000000000000000000000000000000000000000000000000000000000000026e000000000000000000000000000000000000000000000000000000000000026f00000000000000000000000000000000000000000000000000000000000002700000000000000000000000000000000000000000000000000000000000000271000000000000000000000000000000000000000000000000000000000000027200000000000000000000000000000000000000000000000000000000000002730000000000000000000000000000000000000000000000000000000000000274000000000000000000000000000000000000000000000000000000000000027500000000000000000000000000000000000000000000000000000000000002760200000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000341100000000000000000000000000000000000000000000000000000000000000540000000000000000000000000000000000000000000000000000000000000054a0000000000000000000000000000000000000000000000000000000000000541000000000000000000000000000000000000000000000000000000000000054b0000000000000000000000000000000000000000000000000000000000000542000000000000000000000000000000000000000000000000000000000000054c0000000000000000000000000000000000000000000000000000000000000543000000000000000000000000000000000000000000000000000000000000054d0000000000000000000000000000000000000000000000000000000000000544000000000000000000000000000000000000000000000000000000000000054e0000000000000000000000000000000000000000000000000000000000000545000000000000000000000000000000000000000000000000000000000000054f00000000000000000000000000000000000000000000000000000000000005460000000000000000000000000000000000000000000000000000000000000550000000000000000000000000000000000000000000000000000000000000054700000000000000000000000000000000000000000000000000000000000005510000000000000000000000000000000000000000000000000000000000000548000000000000000000000000000000000000000000000000000000000000055200000000000000000000000000000000000000000000000000000000000005490000000000000000000000000000000000000000000000000000000000000553000000000000000000000000000000000000000000000000000000000000054a0000000000000000000000000000000000000000000000000000000000000554000000000000000000000000000000000000000000000000000000000000054b0000000000000000000000000000000000000000000000000000000000000555000000000000000000000000000000000000000000000000000000000000054c0000000000000000000000000000000000000000000000000000000000000556000000000000000000000000000000000000000000000000000000000000054d0000000000000000000000000000000000000000000000000000000000000557000000000000000000000000000000000000000000000000000000000000054e0000000000000000000000000000000000000000000000000000000000000558000000000000000000000000000000000000000000000000000000000000054f0000000000000000000000000000000000000000000000000000000000000559000011000000021c000000b02f18afa46b98b711a77e21c2968a4ff69a25c664ef3f785df0cc7f8cba63d51eb45eff48bf8c76435053018127111de453b2fd00414f5703143350a769bdaa5576c1439e3861e7359e1da58054981a9f96ebf2f282fc835d16ca9c6249479e79a76b600a9d827d0f433d1a327510fc420ffe235712caebf2e24ee44113105a7c153f1b5edb0dd23609cbb50491c2154a007ca2df022474bb61bd006282e1fe845c8c800d5d31728de410e03b8d4e7e67000000b00c6ee596e46c31b1f667c29e83ada67849b41de622709f161e4c9577965e7f5e5130d3bb02b250e4e7311bb8e54225676efec2c117c7c2cecfa67ee195695be1e8089980536f38c9d196633c76938ba701ccc7125b84c9cf88285ba42a0064b1b49427277b31be1824b9e6e1aecfc3a613a6973828d958a7ad5c275aa06a1449f8b72def723d7d80d20009986b1f04e71ae19fca71dfb32cef076637f95f1a7fe3e3c8d2a0450d8cd2f172aba5ff2125000000b01c1f37edfe0e7c544e967cd4d0cc6c802358565e66bf2599bb6ad9aedc4b786c7e70427d5f1a5c536b27969f4fd8d81ed5a9486863ab81c0c71a7a505e3bd984ecd579a162e481afec69deac5ac1a58554350b29974ac2c3c069baff5a43b9faf2686000caf06a29593a5e07d78fbf8b08d67df02fa1cbc6b13991efb823a5cd36c03eed3dc8c81b3f84b052df9b08bb12aab8f7dfca0486e323c7081e7c904a56fbbd77c1fe72afd40325c3674ef2250000021c000000b005f953479bd63e87e184b15375cc6476758fa6c183aca9433e4259a340a046222f032be7d0ca38c398e84b39fbb893b9e99d77a0bfc461cc2608b8ad4e54626511d2956b5d6ea94b01af332ced30b99227c5c5fb9ab32d8a00bafd3fe69e3f022b620ad6befc153571cc0d65eaf6c44c08935b3d344ba0d029ce37ff84a6f89106690f840c765b5dfd4ab83797d054b72713090d4dc357aaff123cf660e550f1743a6070c645c8912c5500b64506b32b000000b01011dd9f25d0077c59e794022eb70fdae43a8c743746995fd7554bc6f76441abd637cd671338b2acea446dffe88b0712cf0001f6333da0e7c6e69891893d86ac7b64e60f7916b8d8e77defff9a43295c8f7b30ba3f6eff07c71643822a2088b9e12e3811077fa52d59b079217822f3c3088d303cb38ca173e665846d192ec41d505c80fc4c2187718b44e088fcfabbd709a6cde2315959bd7cc6f7431193f656586537e797202ede791e0785fb2fdaae000000b02a7d3559922d8358dd4e451ea1b2f170493ad131b1cfc0eaa92f33205e6bc6b14e8c5e2952913b1431c46217cec89ebb946a5eb0d4e55a4e2c36db836162a20d5974ed0782625a2c689157d824aa779c5b630c8ddd9eed145ff95fc87408f099ec77a76dea03379822734416e52063531f8942cc037d3d7bcd2c531be676a9e9348d5ef939910b39c779b6c461936b38150c2f31156eaefee74e19008eedac87ee73a90508bcfe08067acbea1567845c0000021c000000b01896f05ae29197911477be7fad45e7bfbcb46b5bf396eec69589a2e6a7b0c870814ea0c2dceee51bc013b3a1bb34b34102bbc5f6359d037edc93e5d813a2921259a451bd286cee6e1aa5263383125314edcd886aaa511b4010def1a629e0b166fce69eaa36327e46b86674506f8f6c8026bab62a1b2ed0de2c7844217a5fa3919980250811e176fba2f462285f6204920366e70a88ef7b540398a48ca82b9057348aabbe0636dbaf9787ba72d19537f4000000b00c7f903fa979646fa9bbbf9623d9c160eeade75673040c2d893ddfa94c1a6b9ea3be4f23c84309fbd77a67c27866403253b8f2a2fc99b9322666926f79c408df0255277f3d4c2ba1739b0facfb21f1c6795f08c9cfdd1c06627f2982954fb8365c47dfcc26cd444879a5b45652a5520d023de432c71d4b89123b50c7377e20293df9370c2597d9d923ce49e6db93660626d773e904ee686cc3dfb839561d156b88acac2831fd3edf975048729a5fd67f000000b02bb3891589315dcc2761b6b489069dfdcdf04701e3f1266f70988531cfee8ff32172b50c869bf167edbd40b3c478e9eae676002aa714f6c7c57b8541f62ea123fc9cc973b714cafdaf99bc1f5fdd144ed61b6513279b5ca009fafe81be32d0f4732324ce4b5e71e1e4becffaf35372bc031d8cc79c25bfba6d600261f890b1cfbef2265a6f8b0ad2eef198aca0f1272c1ee6eed5d9b835752150c53520b9bced77e0ec7340916ff076d63456590f782f0000021c000000b00df5b70c823aa57f7d3405a913b778a8ef593b6d4f67f34a6472d76586d2bae6892e32c68dca0c35b890343eb5058340a73223cbfbc497e9412d6e155dd3afa668c548edcbd4ea0e6a853e41def9e40a60e2f2dfa0f0a2a64e7bf62c90dce17472f6f20edeb4a1087a182ca1bcaf5e6b0ab4057b829e3afaf667ef44f1033d400caf0ae944944ac5bee2fa5d8544a88a09e15f1ed3bf1cc240ff8f7fc27ac0bcd944bd162658b3fa6d5d2bbc1e6d0a5a000000b0267c7b67e9762a3deb02b049465233d16d5224025c7e7eb19ef72b96807900869f9cc2a2c554bb764459e24b04f017ab82a999e359facfd9ba741d51e13f9e91f7ecc883775905c55f5e14bd70c541d245a97c55e6447dc78471ec292eab827a125320fd7f1a9f61e2d795e69466c7ef1d70cc63fccbfb8c5fc40f0848d70c80042c6e5bb3559b84f2b7d8ba49728d850adfe3b1b9560f3d1a97ce4b42eca41525d0d8e084ddfbe68f4059a222aed7a6000000b0126b797b50a23045331c9931d025338f2f2389d5e650638dd0f009e8f78441a862f34b1a461cce741128aeae064d5880bce3fcffe9a999547c1316ff907640302d084ab3c26760e164be684ee9eeb77ca8b4c2ceb4530a3e545c03d8be4caeeb00644fd3ce0d46653e4c158c31d926750195023a33a125b0317090a21106e59c3fb03b4f5cbc0c2a895ae2da2f5a407b2b2adad74953dd8992dfe2667154131d81fd5b7a2ed282025a94f91f348ef9820000021c000000b0007b98538d7c184df59bb96f5a36572d754d2f88c3d281cbce9a6689df308d533185bec36308523944c1188d14414f16332b75d2ceb397bf65cc04df7e1cd1250da85395441c92530c084ffa0347734026aa6235e6a1aae67288261aedc6e2bd4742f9f6d7d1dc1619478737f6d90ddd14fa066eb1a94f9d62e3a55b737edb31265d1122bf475f1cffe313ea8301a4592b3a2c5b72acf492e669dc9d36cfaae850499643788370eb1dbfd22401c36f8a000000b0206063d67d6c900d2e539fa9ce1e0bcbc3232299c2b0b091f8d800ede3ae1a3ffa526c8bd6ced3ed5ab263789de1359e71c94966a3a72cc1e2a8a8412033524b57f0a86bf9fae42cc04975db1040c951f671ee8a246508dbe079e88c7b50de9cebce74b03235ab7381458f84710c26d92bd54cf1c6a50e4234aa8fc02392cf94674dc06ec6fd1fa6790f4fc7ff6fb06e1398116f15533f98f76265c06313445ab984a08f69dd31dd6e76ae7a21621a7d000000b005d61644b31d6b53ee88d09652bb6b1ba55bde34b499ac43ff6458df5ce5b39bf72342d5caf40d5846acdb10cc425733c60602317c450aff3ad84c38e5678568b68c8df63f8ffca5972c54f7a4dfc8f7f439b12018860001145b3a778f9971beaefcb1edcfc05394f4cdd92f566292830db14f172edd2ea3884f88780558ea3cc94fe936b4da474aa53fb4b7f6859b590b93927f6295de38bedae520787dc850ac04918b595724f8c1ad560fe67c32fe0000021c000000b01cff3e84aacc8f3b0db0da2817140b8d6a18c71b6824abe2afc8803ba68b6ebd09d61eec82e88c686c30bc0aa5c39bb6afff0ce525e08f8babe6bd6ffdf479055de5bdb93fe30d32ef8adefa2c7f51844e1c8dc4ba324a90676b8c74bbf7ecbc34d8adda63849debe03273d36eae5eb30c97bf93b0cdeac68636410af6f825fbbf2cb2759d5bc21f8a267c2a463bb7720352d1fde856dcafbf714c5eb8935da48cc210f7095f12425ac7981e824a3606000000b0043351b36f2b70487ae3d9f97f7e793478da11a29044e07f27b25457e434e72da61fab7e2e673e2c4ba1dc275ac0384106ff337348110d2a1732d8cd9b8388180f099c44354b3de5370375f315cf048e707939418998800805afa1bb1be66723ecc9b33b38facb03a7baf5f9e7ac6262038a3b5d97bc5c1544c3014fdecf9015134d13a68a6d7817085c1468f89202310ff2e6f86dcad2593461168f7b75f36a650382a96fef8d666f9b5bf523d8ce81000000b0271b1074b6f78369cbe1cbf05c615ff5e34014eae1aa3ab6fe0382a169df040b70d0a9fa68b7aeba09192fdd72f48b82c10547e6e286fdf5c5a91e425f07373bc6072b68acc2a6a529a16487ca867c7351e7a3fd09e47224aa6241e6d6afedcac0990580f90397be8dae9849f17580892e8870c3e8b3e6e965d64baed3919849af4d028bb76eaacfee7472c1a17b310d108759de00f2e34fe09d11e454a9a880797435939cc369ef1018da35a89a80220000021c000000b01dfe7ce6b28a182787a9ca9178b9c74ad3c6392aea2422ba96feddbabe4f3d2d036652648e6a25372daf63608ae875c3826896691854b2bcb886131b432947670d7c6671c4f6c1aedca70c08606e082fcc01b18af3c9347d2dcf6ac449d02a1829c73f26a917067d5b819347576d9e4924c07c676128ada7902114123970cf0b4221cc553e449a12dc7099950c0b055d21d3031de77c48b06e77c81f6330c3d38662aec1f9277a09f5faf50140833aa3000000b01d25544976bc9b9dbdf500c6b1486dbf7b3acffc33796abe2461fa6a6d544b58b2de58514c94b159d3193e8b3163517be0b18c5e9c231d4a245b678aa3b5402750b77c3be577b1ed7bb396f7fd5817dd67ea004cdb45fa321f0f6e2b3cd7a6e4a34b982571311f168ed5b4d4576a733a10b35e61525cc403e9c4bba6440b1c84e14d8404d6e5c01adee35e340530e12b1f38d0890b7ddcfcaa8b10531a9b9eeb1c7a333fca7d998d76a92072eacdc2a0000000b01b9c0176f60970432c3ca5330880baf4f0c974635d3b2156549da294fbf3fdc6e2ddb434fb51c561c2bc065c8f49f57bb5bc90f45ac71c6c342f08ef58a59726505258b8354a1817779b753fa36627344bfbec174ffd97d71f7b42a5fc83b62b320387798a94ae26c3b185b540226f80215733a1f67478432dde3dc2917ee1964770b7c3c45e35022d1e38afab9833da0958ce53a514bd1a6f67be91c1f1a42a01f0fba82d0f1f2ea6f60623aa8f80930000021c000000b0277785bb796161a7c51617e1bd3dd18c46b4e1de913ed3afcc8a84c7959bba4feedf65972afc77d7a080f9655e708403a366f96b385733342e6b186af6dd3623683caec4c667a8510156279f7c2e552b4619e9b0291ceaba651560e44782133c885db32adee4d838e480fa207e3bd97125a851caf46f7f0adae74c85d93557c1e37b22cf07c75362c076248770eb06f424f5018b6d11a465708439c3b746427069106e2b7e8130e43e92f9b0a21a80dd000000b0024eb61442a41adf0f97b2264b0e432c677064d27d4f8cea1942eddf2f59375ee5d5d6fe3b99fd6b7352f43d49cd9e47a7333e03943f6f68c6fdda486995f360138ca14103c157b997cc5f3f3d0a9584afe367300830a0593fea9d4d45d7d7ac94c4131a75ddd47779152ec52218263d0b245eb982a0b80616dc1ab64d2e3789eb484e24113a8a5ab29b6989f46d0b80121318a8bf0fc6e77b6e226852840be92ba83cf68752e122a7293906d65ee850000000b024310fcdacb531986be837cea8c7a7c7599a628f84b51173737b1784c028dcf51fe5255d04d28f44b40d6005f2b522bbcfd56e8f867d8c23db5266a3312feefa0f2dc56d42eddeb39a10944c7f54a5bd341bb0b02042181c24e97c177d2254f2c229b07aaaf6e9dc1d3ac7bb742bcb1c2e5f64bbfcf989e0d0adde4f597a6755cf85bdda2bd19a1f9f5186f82f50f87028d5580ef3f3ec71a5aef0a9fce89930b6a21ee7bc53c80e38c3cc2161ec118500000fa400000168000000b029a8a5e352efceda35bb64fa23398aaba4adc5d1d80b0cc041532f15a2f601063189e65197f166ba617bbc118f926d9421e82ade5e889fbff356d1ea40a1fff1b496263ec2d35d048bf31f39554e27af766d4fa75bdc711410bd302cc6a4d9d4a0c121343c681b2115c1b4f4e2396a642f5f77e1c644e430e843e4077a1c774d0964ab3cd4cce964dafeca02dff27ee424266367e4f8af816dadbc3eede83f125eda5d2cb1725aaa8eb8ec98650cb642000000b019ea407948f88707b1c893929f02b533f8149963edae604da62ca1108f7b9a22cda0be3d56f81b0f6fcabc955fe00ea72d95b44c784cf184a63df57dc92ced5d769988ea74ddac183ff29b3f71f6e9a5f2a7baff5bf657e3e70707a450535ae0ff152e0badc6917cb245030c0c2876301fbe2dd2c168ebe2f97fe79d1103529f9fe011189bb2bb51a36d938458ac7a020b4a05eb9c23cd14209ae55923d53502c536f30acf4f219f95aa3bea8ee07d9b00000168000000b024c57e99f1f47f9cd1bf3540df0b45d53cec8c74b2c0ab74252edc1705b7dc4a051bc039fb40b67832885f471a14ff7c3c11df4de8915eef6d39ed7bb3efa797ce02e07d850201978f6793787845ac1f1e29181852aee5c4fc5aa6b37a01b61d9e55c7cd24a3c09a86474d3e7bc1485a0de300b1073f92984341bb81507ecb113d5e6270b2d7af618e578629b2bdbb542b30726e8268d2359c33cfcab231fbbcf823849958a0389e1292c0f69ea07bca000000b02c091d6d14ee1fa1196464453cc1ef06fa3f173416b98275abe86d05f8645e32cb8421197fbc0f9f763b1a08f557b7dfc95a4c1fc4d47efba0dc97eb9c7dc917008acb4d6ce152393096a8ef2f725ff8a3cddabcce392dd43c1c51431c6e6a39c649cb55a719c6c5e103f9c163956339179dcfacb3fc5a6fb435844e0ee40fffb879a7b770575f3ab5dc80560970983a0626156bfc9b1d7a68d6612176dc964d2e7e040958ca76bb82f120587819836d00000168000000b0040058e3f256296e38dddb3f547411fedaa62980533a7fccd89f20c0bca57f2ad0eb27a82e01590c159a14e68c35c1311a44c35206705b59bd0f200cebbc7ddfbca7aaf8dc0db3604a176882065502d7e340a01a086f0291038d1875f45fea3b2897031cfe598986430e879856c0d8f0229a9c7bc36273212b5ea418789aa376b95da1cd411a8b7b5f52fe91d366885d2564850f0ecc95dfa5e2f888d8c9c2c8569d10f1f5599f87dfbe7be3b5c36181000000b00b8c6324bf4fbc1f29dcb8c7a4bc5bc5aeb3614f92a4a3628f558149b06cc25707a21e23fbf1f712fdb4c169f1f7315ae65f3e1e81cad0abde00833c31bfb71c569008fab1e99a59ad6b0dfc3d608ec788b5f21ac986b013d7f145f6836d7791ba24229ee854f66d1f59c0a92d6d7ff92ca4bcf1454ee54a04b23c5d925bac830c87463f3cc55ba2494446cc8c80e17609799d95fe732856c74065ac985f86cc66a428ff84cf7f93d99e2e36fb7840aa00000168000000b03015e3d996be8d3ad7bb6e4658ee866d0cd54536e40b74957fe8e5b7d28971fffec818718c8844567c0641f7ba677cf1b8d1791639b47c82918c9f63a80b50e823ec6c63835e76b1771b49123eb43bcfd1409cb9746257d8931c5da05b5c5a43f98bed265f7dc74067c81a9d65f43ed3033c9a857f97416683e31d6e946f072641e28759d1e459948f6035051ee27ad81c24ea04cc8f7506dbcbf68e87221e011d7a5b117e32fd5240fdd00a5b602853000000b011d629e39e3c4545ef6af1325a76a8c13fb5419eee406eb0e495fae3e90ceb0b282fa956da209dbe7bd216815f1799877c7b72dc31f52b457b9568ae46058c40100db7bbaed53c6a85f18f908f98dbf85db31fe0cc7924ca044d115ebaf190d7b96e10c490e3519cfaaabf212eb36f60304df9f26f5ae1684d3596c6d742d9c9791bdae9d9c64419db885895ef18fe9702ea9149a0e20d76b8aaf89c921acbcc0a86af6cdcfab8570603db910a3969be00000168000000b0176d6a526f026d71d59bcd767f51ef500b090442f53bd98de56d419ca882cb4d0f8614a3b1756f748977a8941db7c0433e0ab2b7fce9ec715f633a51532ea37c71c4872644ea53e7f465ed0000d2609b61ed5c7ee18bb12f645aca89481eff5104fd5757c34756885b06d3a97dd55f2114c5456a648f51bae034589fc9c9328898f04695ee7fd6772bdce980c9ebcf8c28dd35dbf7463bb637215545cb0989cda41872bfddf5a138bc0032ce987318bb000000b006f90513e32e6daa50a34f9873c7786f052b738ae7fde3a68cd730c0088b8545339db01f894d5419acfe945cc0c571045e39f0ce1d68bc0a8500a6b0a7519641353628c77caed8cb418b5503d94b19a8bde7e970965405a5ae3e12cabfa722e8b8b45848ecd7b4a0d972881d31a3616d207327b54673da2ba934e792ac8c933a446ba690e1458ccd5b93f475446580871b174776e24d5181cbadb96d6459381c2a87f6e2c86959af98804b92742181b200000168000000b007c42ef0e91cedad3984b5beec63a66237afd8d31716ecb98dadd3b0e68d5dda53286d42a811c30a7a83dd2e1739f44bc32ef576ba3fb4d8d41362974abd0ad191aaee0a11a856b035f28987c1351f961968ab86638cbdf3e57ca2652faafe9f1aa44711b902bb8f14a8c03aebea348e1f00f0592531e6dd2547887c96f41eb06830fa187eda838721b679e7dadae73d167f706d68e571ffc4c5a136954e1b9ee353ff9eb6df2c84a9b84b31c184a9f2000000b017bafc1fc6f31cef6ed6dd7a5e2495cff182d7530cc6f7d47fc1664fa519c660b9cee734dcd29cf8284f47e97eb4ed7b9f86a012fc29f74c5ca4c47ed4dc9a64c02b6e900bbc69b3fa101270e2d0ef08fcb190853a42e187d0c96a4136edeb23ffd0b1fc17b3c4399076bbf2f9085ff42e2bd439e374fa6c90ae2d13ad659c91c7b392f55293d518b302c35836e92250015f9c5dd7020feae8a9813ceaebaaa1dcf46000b72a0eb7b1b7b0ee9caf4b0700000168000000b017980b81f71abd837810414a656c8e5bd6e42e8d15582cd71be20324c3471e4223ef65557648a2c310aed207d19aa66aa065a0ab4a53b520a1713a492b4b6a15bde338531dd6a508e75119eccba9df2fc6466631a2224d054d636faf56a636f23590d8d22b32b143224b9b6d09d719ce21f2007c54a074b1549b14b2b6616b7923f2b996eb374a6b7d33dceabec0016f12d7665cfe1d54be8988b9ab8cb6cf9addba8bb7ce8059a6bd8c8d4504496a17000000b023f08210813da5c79f903fa205235155e34c59577962f15f92e4926969a6a8e0e538e19d97f5e620bf86d5705f8cfe0c62f22116ac58d57436470d2c26f7081867e31823128d6828a7eab06947c6882d188447a583b9b8fd3db50205673e774dd3d83061d0dfb85aa839a711cd1538071ada9bdd30b1a6f48ad6707f2cf48f05e6984c6c0647db25edc769eeeb06b517160f321eafce9b83d3f5e1614eec03710ffb47ae33a68a51d0223271560ea87600000168000000b00d9392756f21d6ef53110c18aa9e9ebed92e01be9818d5370024242a2f8780eb8c70628b1eda5bf5fe991a11ae810a6a5a35fe8766ac38dbe42ce339e25227b8db7053770f9da03054b511042ca62cc3d9a767573215d9956207a0ee9b6747e3935a894f3118125c85a712fee4dc9daf0b6f6fbb593e2917d6f695d10c72a2465b0bcee37e22576fd2db6eba526d4dc222e74bbee9c6472a3606daeb4d98eb2d26238e151945e3f74387cae7ba712cd9000000b01c575eef72134886f4bdec5d0e997d754074844363385cac0ebfe55e1bb4ca6ce4ccf10854af9a0d4161040b21539c7c4f6d308c146a4c33d3d980481a174aa62d5ec895e6c3cd1d057593b6f71fde55e15bfa2e5b0d25f2246f59d2479298bb1068075cac8daef2fdc3ada6e6ec530327106aec6e4393ba6df304f4d692aaee0059daf7ea0b0bd4419cdf2e1e0d156c2daa6ad02f5c187a33cbd7069c465f99c3f380b9536acae56ed6e73450d9959700000168000000b001843f8e391a7bd395be524b25dd7cf7d90323d50f8da74759102ed26f170c6100463b2dc7f96d1a767c721aa2aa58837dd46eebbd6c1d732a99090d55e972a3c7273efb41957a608d3fe50c0f61afee191d029f94e0bdc8ba2c7cc44c8a30baad653717cab6a5f1d2fdec30dfeed71406a5dba4660e614ddb704340515bfa3b65976b97f37dbef441fe1fc9c1bb849b0904e899b07c061a7d3d7032e9c242e6515c65084863c2eae5b9464d487afce9000000b000dbcbfe9b9a4e0822e70744639462b2375ef52af7ede2996f3bd708d62a14015ce0082379def0ac88e39fadc121c3518d741b216c2d7f6b84162093ed1461d41057e04a9bbad351158cd763bcdfc2e14c0116f81a8f1c17bb95d71ef3200df0b236f05a7c371b7731f1390ca53c6542287872544ec7e98bd9631e41d5cbd099517a64b525b02b3b1f89046a0da79ec3136fe594b8687a7fd9f5da9ff4e0ee8a5b6e3e96167b514463d3094b55ee2b0e00000168000000b02091959594a6fe435e017d14627875c05d60237a5698de9bde70bdad418c72d83a3ad0d0a09ad22240b228b117302d7ee4453f3cddd92f8184b5da701332743e9089ab6afbb4988293265916f662cec62e5104b0a4a5e24ed65778a1d241f97c4ce2ad9d24da91cb0bf7a5f7f6a8cd491c8d207bdffaa150ab68fcef994911546358ff0aa56c1626eda10bcfb358a118170ab67c2cd70f0ee6c6f754a4759780fecd5562da70e12bf87144eab45f8d7d000000b00c918205b12609cbc72f8d4ce95e3a5083c56cde97aeca16153848052eeadd124fc043e36abdd47691a9d6ad0f7a7bdf1e5e0609a672cddbeab41eaa60a909034e54a5f32eb0620b55923bec293edc5873f79d8d4db02ba65f5c61a21fbffde44b8c218826b8624ad0cccb8d80f951852e29e0bb71833e8ad3701286dd45a1328d71ed8060d11e804b24e389c6fc8b4d1c632c5691674b72bb452187e9792087a9140ec57779cfaf6c3421481f692b8900000168000000b02eada1a909467eeb9eca913dff605dc0cff056eacf37ba89fcb1c7c5eb768d77cff040668c797ac1cf019d01f314dff4f259c3d73f19d82752ab5b0488b0bd33003996e185c199f9d7e83ae21133310b64678326f23fc6a385725a01704e22eab96737a47f0e2e055a05ed01c0921bb8031ce5b1d0132cce25bce1f8e98edb296902352ae5992866f16cbee08d40aeb31c6223156e40861f865393002116692a301b4617b7aaebe24269906473a2cd14000000b01b57e2e264fe3b82399ab36c30fe7a53bed097ac0f92dc84fc88c2e63c614c3b7791a49953835e7d5082c6165ed250bfebbf6b1cffccadae77a8a712e0c8b4f093c5aea43f38b85b57a08bf783b5acd5613691f9d6e002e5f7dfb2c909b4ed9395f1c56de47549149caaf3cb7c6622ea223b60829d20fef24cfa2ce642280c2568dc615b69ce110172c9fff356756b152ab2090ea5ecbb8e833339b6d37ffa3c85b1daeaa90e303addbddd3243cfaa09380000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000018100000000000000000000000000000000000000000000000000000000000001820000000000000000000000000000000000000000000000000000000000000183000000000000000000000000000000000000000000000000000000000000018400000000000000000000000000000000000000000000000000000000000001850000000000000000000000000000000000000000000000000000000000000186000000000000000000000000000000000000000000000000000000000000018700000000000000000000000000000000000000000000000000000000000001880000000000000000000000000000000000000000000000000000000000000189000000000000000000000000000000000000000000000000000000000000018a000000000000000000000000000000000000000000000000000000000000018b000000000000000000000000000000000000000000000000000000000000018c000000000000000000000000000000000000000000000000000000000000018d000000000000000000000000000000000000000000000000000000000000018e000000000000000000000000000000000000000000000000000000000000018f0000000000000000000000000000000000000000000000000000000000000190000000000000000000000000000000000000000000000000000000000000019100000000000000000000000000000000000000000000000000000000000001920000000000000000000000000000000000000000000000000000000000000193000000000000000000000000000000000000000000000000000000000000019400000000000000000000000000000000000000000000000000000000000001950000000000000000000000000000000000000000000000000000000000000196000000000000000000000000000000000000000000000000000000000000019700000000000000000000000000000000000000000000000000000000000001980000000000000000000000000000000000000000000000000000000000000199000000000000000000000000000000000000000000000000000000000000019a000000000000000000000000000000000000000000000000000000000000019b000000000000000000000000000000000000000000000000000000000000019c000000000000000000000000000000000000000000000000000000000000019d000000000000000000000000000000000000000000000000000000000000019e000000000000000000000000000000000000000000000000000000000000019f00000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000001a100000000000000000000000000000000000000000000000000000000000001a200000000000000000000000000000000000000000000000000000000000001a300000000000000000000000000000000000000000000000000000000000001a400000000000000000000000000000000000000000000000000000000000001a500000000000000000000000000000000000000000000000000000000000001a600000000000000000000000000000000000000000000000000000000000001a700000000000000000000000000000000000000000000000000000000000001a800000000000000000000000000000000000000000000000000000000000001a900000000000000000000000000000000000000000000000000000000000001aa00000000000000000000000000000000000000000000000000000000000001ab00000000000000000000000000000000000000000000000000000000000001ac00000000000000000000000000000000000000000000000000000000000001ad00000000000000000000000000000000000000000000000000000000000001ae00000000000000000000000000000000000000000000000000000000000001af00000000000000000000000000000000000000000000000000000000000001b000000000000000000000000000000000000000000000000000000000000001b100000000000000000000000000000000000000000000000000000000000001b200000000000000000000000000000000000000000000000000000000000001b300000000000000000000000000000000000000000000000000000000000001b400000000000000000000000000000000000000000000000000000000000001b500000000000000000000000000000000000000000000000000000000000001b600000000000000000000000000000000000000000000000000000000000001b7370000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000028100000000000000000000000000000000000000000000000000000000000002820000000000000000000000000000000000000000000000000000000000000283000000000000000000000000000000000000000000000000000000000000028400000000000000000000000000000000000000000000000000000000000002850000000000000000000000000000000000000000000000000000000000000286000000000000000000000000000000000000000000000000000000000000028700000000000000000000000000000000000000000000000000000000000002880000000000000000000000000000000000000000000000000000000000000289000000000000000000000000000000000000000000000000000000000000028a000000000000000000000000000000000000000000000000000000000000028b000000000000000000000000000000000000000000000000000000000000028c000000000000000000000000000000000000000000000000000000000000028d000000000000000000000000000000000000000000000000000000000000028e000000000000000000000000000000000000000000000000000000000000028f0000000000000000000000000000000000000000000000000000000000000290000000000000000000000000000000000000000000000000000000000000029100000000000000000000000000000000000000000000000000000000000002920000000000000000000000000000000000000000000000000000000000000293000000000000000000000000000000000000000000000000000000000000029400000000000000000000000000000000000000000000000000000000000002950000000000000000000000000000000000000000000000000000000000000296000000000000000000000000000000000000000000000000000000000000029700000000000000000000000000000000000000000000000000000000000002980000000000000000000000000000000000000000000000000000000000000299000000000000000000000000000000000000000000000000000000000000029a000000000000000000000000000000000000000000000000000000000000029b000000000000000000000000000000000000000000000000000000000000029c000000000000000000000000000000000000000000000000000000000000029d000000000000000000000000000000000000000000000000000000000000029e000000000000000000000000000000000000000000000000000000000000029f00000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000002a100000000000000000000000000000000000000000000000000000000000002a200000000000000000000000000000000000000000000000000000000000002a300000000000000000000000000000000000000000000000000000000000002a400000000000000000000000000000000000000000000000000000000000002a500000000000000000000000000000000000000000000000000000000000002a600000000000000000000000000000000000000000000000000000000000002a700000000000000000000000000000000000000000000000000000000000002a800000000000000000000000000000000000000000000000000000000000002a900000000000000000000000000000000000000000000000000000000000002aa00000000000000000000000000000000000000000000000000000000000002ab00000000000000000000000000000000000000000000000000000000000002ac00000000000000000000000000000000000000000000000000000000000002ad00000000000000000000000000000000000000000000000000000000000002ae00000000000000000000000000000000000000000000000000000000000002af00000000000000000000000000000000000000000000000000000000000002b000000000000000000000000000000000000000000000000000000000000002b100000000000000000000000000000000000000000000000000000000000002b200000000000000000000000000000000000000000000000000000000000002b300000000000000000000000000000000000000000000000000000000000002b400000000000000000000000000000000000000000000000000000000000002b500000000000000000000000000000000000000000000000000000000000002b60200000000000000000000000000000000000000000000000000000000000003800000000000000000000000000000000000000000000000000000000000000381100000000000000000000000000000000000000000000000000000000000000580000000000000000000000000000000000000000000000000000000000000058a0000000000000000000000000000000000000000000000000000000000000581000000000000000000000000000000000000000000000000000000000000058b0000000000000000000000000000000000000000000000000000000000000582000000000000000000000000000000000000000000000000000000000000058c0000000000000000000000000000000000000000000000000000000000000583000000000000000000000000000000000000000000000000000000000000058d0000000000000000000000000000000000000000000000000000000000000584000000000000000000000000000000000000000000000000000000000000058e0000000000000000000000000000000000000000000000000000000000000585000000000000000000000000000000000000000000000000000000000000058f00000000000000000000000000000000000000000000000000000000000005860000000000000000000000000000000000000000000000000000000000000590000000000000000000000000000000000000000000000000000000000000058700000000000000000000000000000000000000000000000000000000000005910000000000000000000000000000000000000000000000000000000000000588000000000000000000000000000000000000000000000000000000000000059200000000000000000000000000000000000000000000000000000000000005890000000000000000000000000000000000000000000000000000000000000593000000000000000000000000000000000000000000000000000000000000058a0000000000000000000000000000000000000000000000000000000000000594000000000000000000000000000000000000000000000000000000000000058b0000000000000000000000000000000000000000000000000000000000000595000000000000000000000000000000000000000000000000000000000000058c0000000000000000000000000000000000000000000000000000000000000596000000000000000000000000000000000000000000000000000000000000058d0000000000000000000000000000000000000000000000000000000000000597000000000000000000000000000000000000000000000000000000000000058e0000000000000000000000000000000000000000000000000000000000000598000000000000000000000000000000000000000000000000000000000000058f0000000000000000000000000000000000000000000000000000000000000599000011000000021c000000b012a3f87c10a7085c68d23808b7aa0151d0f16ddcb0f5f45177d41f9371e0d0fafdd67a5f00654611c564f8a125464dfa3e9bd1e241df1ab3905e8861786377065822bba1140e2e16a2312555c109faa480feb832494a75fbdbe8d621819cd888893b3b20f9f84e7292da05bb98b3d71c0059a97ddbc203a4c634c2336e2d5e62299934b787998463cbe580616c70e79e24f809f09b9945caca2125a7d2eb85a053f4ce81e90f30a7a0b8c4deeafe71b5000000b00da468a1cdf29d9142e48b11723a65686b6428432fc8e076d8b62eeca823f5b3d6222843c81eb5b414567fa96761cafe4f4ff7d5af58fe1d784fc2b50c5e24ef6d378d66b0360f526ef1243982198fa5669f7b83f731282a4e74befb8a70c6eb6228bcb9e1e2e0fbfbd7a556292697b31298aeedd0d734a9e93fdce453ef9a047df1e11dbcf37425da3fc37b8238eecb20eaaaa83498d628552d4c3a3ed1b05a3c3207b74ea84a4944145b3bff4afe90000000b029c93b534d1d50e3c13eaa70996ecc84ce67bac3b4bf16943686970ed0b0b147e859ea3ac36eda74a8c81814546bb2a2f98affd0e43a637d5dd96cbda118739363faef1f3a9f1622ee45196fb95fa5317f9bdcb0a0eef07130a5d0dcd6c575b96f6b5d9f2032f44bdfa395380cdb75cd1595fe8a35d117cb7119cded4737b9072ed89e2ff237d535775750ceb6e8a7dd1b6c59a904096dacb27c219f551aacf31d67c2276f79cd909cb3eb12bb2ffa3b0000021c000000b00d4acc67de53fdc88b4afa37fa3166acb3b0ba1dde8ddc423a7f3642e8a1ea202f87aa56a589f42c461928643b773f8bc4a02ce0366f679c014606d9372e35d4b923b77ef2c7909c2c352ac7f64988264b444b5155814e80721168d01947225f93b090fa72cadf66d46dae8608d400d820257b28fbec8d52fe5831ebc2be47861692475c6e78bb621dfb64a520ec10ab0b2d1f9278f82c607cbb447f9bf6502883c7a76fd7b3ce04e0203b37ff91b98b000000b00d527573d2eab0e2b3ae35d2c49f3bc1b1b60ddb042cfe2583fac62ed7146497099685b8c05e51e131e171113240de9ac8d0b02f82dd4854bef9a288acc7bc184abfcb875e8a09e7103c9d09f69cd5baa0ce999ce1b46011a9396669e7f63c5afa2d34f7e693441bf080c5d20b300b912e05a675f05236326b8ef26408159f7606c70ee3eb0ae94d714e61521dc38204290caa1672acb70851aa2deb8ac496f552230a672ca3e059a9a070c616d7b0cd000000b003d21b9fbfd59a88e7330b52b0019167fb87490b46da878b1d2b786024b1294cb7f12e1748b878b5b07c584358864aaae235ba68ae2f914203a1d2ad37a309b5b329853a59b831eac42881064ecfae61da2677b0a48dc626fc4efb1df94b434cf1e8a9dcac23ee5debbfb17741d561190b823316ff9736a4e3f6514216c445e3143f5aef76e39ce8997a03a2065dfe0706f061c9b32fa932c71760b362825f60e36d2404b5a2aed8d90b38762ccce7980000021c000000b02db2851bfa29c277f368c283652d551e1a5f0d8b9eabc4715b9f50a58f738930989eaba66a8c300c29080d4cd24874c2c67421ab868e9fcce682df982eec8775ae545ae9e8f249031836a59e749c34ddf0d75ca1302995d9569097444d3daa9bbb72934581e9ee5005fc8d09cac021cb2c18702bcf5a34f5134558b37a2866c30690ca3aa3d3b7dbd7da472a35ced6b0067df3516dce4c99423bea87dba218b282ec177ae7229f01141c6faf862e2be0000000b0305d96bbef86cc073eb1a6da98c34f04dd5dada5e60761ae129c2c7cb8034b2fe252bbf2efc0c8661082318758df8986c328d9e35b4a7e793d85c15e839dc8e2ebfbe80499da857a0773aceeae76649a6e58b4f22b98562dcfcef7630a7be298f8878502c3be3d4b7df7263428eae9651497a3acd84e272f258408f58053a7209ea6552863bf08fd83cbffa00cdf383d20e973ff01352c307ebf269bef04ef4133338f8f40639a0cc0391eac6e40445a000000b00e28743d825775e2f982d16eb4174afbff0fa3963bd8449d408d0ef1682f6ea1413438aaebbee85cf7f2af25b8910929ffa415177c2eaa8ccb39eff015a20a1f066e374680ab935ee964b20382852bdf5ee8706188ce8af288464acb0844c021ffcffe9134bbf8edafa2a7c67472a7f52e09058476902388024ee4c949f5f2eba1045cc7d3c074244dca0c80c6a58de71188692df77b0cd39e417d1f2df721fbde067594a92becae923f8e698c64088f0000021c000000b010c2dc102305c2451c4e0c6b16ae6451e931c816003fddfc830e18218ca773c76516e278156f38a60bd2c6804a0816c5e15a70fccafe84cab867051ac6cece1ed2248f77d5b8f2054d5f210d3f621dced0af32be5c8ee32cf931894e4f045987f49ecaee86d1b79da6cce794956f70d40cbc9dc8879a75a3b0978590bd95e37f0b9684c09a543425f841c0608174ec960e055bb395f224000d2096dc544e8932ff5d5e6dd944073e3041692e53714998000000b01d59535bdf054a28238537f889e77a9471ca056015d8e9f0f2d7792e125c214cbcdd91f497d2417a14858d60b5f33528421df56cee41bd9f1970fd80aaa01772d83582cf9af6acf96759c93eef39448589806dce0e5f3bae287a57340825489ba21294ffefb3ce151b9df290d3c14601041f5fa0f3847a19b2842df5e33d1f410cab967035f33490441f0d8b81b30aa11425a6cf0dcff952f41954156541e190ff4ef3fbb07fb2df64f3d841565b8156000000b00ad06d592e336a11ea592c474796ed7876040b566276900b5d087cb515f46ad3aa9cc44376c94c5d0cc2e989f9cb66971e46489df061df16c875b0abf936440095026865dd355537251f842280f3cc50c0a1a990f112e5b90da92a1cdebecd188e22dd0b5c05d6b43c5120688d5914950cea57861aae3a55069efc932c3217aa8c159d5837a3b12bcc28457ae15abb242f364c79c54d9efefb1140dec742dbf851531b5f6c93d656642a1368b9b0d2950000021c000000b020366fc61784ae37844f953a7cb95299dd2a5b1aeee3e34c4a14fa7bed250b98bf7ba10913b22e9c12667884d38ed93bbf3fa8f2804f528112852cf05e84455a5606f47cc5ebc006f592ae0a3791bb14a0a140c7b158f77ac00eb8d7104ad3c4dbbf1256de4b9a422902b2a8517c65ac0984b7c91c9810ecf28d10d75006267e879a61795107748d05c01a85d8417cd40a9d6bf6c449550826b41da00a7ca2cb5a3ff5678ebac13fd217e55412fbd9cc000000b00fab2486ce2a7fa8e9718e6c728a026f1a11137549db145a963d3ed6693daabc207da96dac2232a1cba68a410c869d7895be6042629890bec398b8f864725ed92779a751f121ada409626fdd1194aedc70b9d4599e9668815f0b7fcdea040069ea88e13f64ca258c025c0fe7aead52f62159e81e1479929b331bac1298b86e4f6936fafac7348e7875fe7fc90c6f73402266192233a635bf1d50524f33a996fce3815e87c76981b8bd121f4c76c7e999000000b0068c6b24aa6e74d9802766735d5612e549b547c98f9e6223d49caf11f9782ad0332934acea7674ff93238e797e14f3b4f2cbf42873687b89e63234c5981341e861ee0e6109a02f0ed2056e3f14c5a7c3fb10baed29d55c0f2e6934548322af4676c8e7fb8fc2ad547007ebd00ceb64a424d7c2c0264b272c88b27a6a773ad83ffe5a29110fce7b7488b3a5abb96eeefb302600ae16f70c626a3e1bf4011cdbfa1e1d8b43c48ced52fe4d7e6acdff063b0000021c000000b01eccae51d8df3df22847b6be5c0e93d36064b7518f1141c7d063aa904d2ec94749f817a58b60d01963f517acd1fa58fe2642f2333773c6643ea6de4980a8365c1537d47abcc62d71181d0ce9c373581faa6df7bd080921f1ed04b1776a1d35120dc0421e90409e95faa818ad4ae7fa2310e60bc92304c8ed9a04e4e470cb2ae54a488eef374d302534ff97daa8abd7bd2da3f55930f31388ce59dd429b85feda2cce2861f8ecbe4729cddd0f3179e9fb000000b016ea5b7b0281cc1d443e4e87551ebe5b90f61b73d79bc1e65508b3ad0fdc7f2e544559e9016744225a804bdb3bdc3f1f0ec7c7e7aff017d30fdc3d8e52307752f80edca83ce5d20ee2ddb3622dbac1dcd4920c07999724bd009e92dbb62aa100eb228d6f2cc873848919c7d58def55ca1d58797417534bcd3b5601c2f349a73d1db9f8641698ed126e3703bd5898267a0999d8892957fd565942eb409bf2367b5dd7f102940bbfa4818d25d8e03cf011000000b02769f2363aa7150e757a77b2cc09b8b3ddfdeb80d915e154df2db5bac3c8227363c8919f9c6d102eae3634bc5e1b7361df11ab6df5976b18d9bb5f3b0c96fc2b6d74e675906e76b8dc112cd2afa1f8f3181df9d5c8c9fe6ab3c38e370a76ac08b52925de0fcf5caab567987e5a7ceabd13438e09e6cc091795bf2066b33d4d13e6214bc1431fc72ff5f1fbecf7fbfa6e084f30e3807363448a95458c95c539884bd4e01a43e065b496e0ad798bf988bd0000021c000000b01a00e0fb2a70132791f3f83d7964ac64b14962b42f903b81ffec8bae3a8369df51c28ee179eb937b7e70494b9d000aafdcf25d5fe717f23a7bb262c07e323a409d898d297f187c46962a718b4ce424c2c499a4ef1067be0b71fb3f66a72c6915a75169b75f3fcab2f453021612b5e0d926c089c3ce491623416d469e3e046e019c1c37cef764b3baf276b81d0977638e0c0dbfcf2a029ae75491464759deb7250db22ce58a88c58e8d1f05e8686d591d000000b00a530fce049b064e007695c74c64c8f889ad9c2b8fc4ce028a5b346263e081097b4826e388363d20626a4fe59a6c537e5c66baf984fe37124931b43933c513f20df575388251bbc0a26bfc24879a61aba612851ee3fe699d44440646ccfc37e8856529b85ed4d33c53f56ac903bd99ac2813c01f07d9661f242bb9edf10ad966a5b24d644c8c38bb52f5b8eeee3ecf4002fe1ba26aa2766b358d673eae8a3325f0f5e3f1cfa53945f0447c812f76fa55000000b02bbb7719ff4fcc5a45f2801005153a0c0e921f7a6992ade1a27883b45a763ae75c22edcff1cbb3d0c3a7cf7b0631224e80f250e50627a69b05e0526f822e39499f749591de51681de265fac24c1174f5cade4aa061d6ce0d7b2c6930ac0b25b35c658d65eb6e1d9663cbea6a8cc203fd1d5462c956f72c06bd8a7ace7b6296cab59e8cd6caad3f18c22a90e73af18ac40f05871aa59cc20b9536218704c87de9247ca282ad77ba3cdfe75733576687aa0000021c000000b01450c5e09a47449c430446c00501abd44bc39eb24e7a82c21c30e7451f1161834173a930991b8ec038d6629b00e226e2303f38ca43c2177899409ffa3554ee2faaa71e56abfd2dcad7f49e8b1f25f69582a227e30ea8657032bfc95b8f2574e536d47064ff53e5ede573618b50bb7fac1a14cbf6e8856faf29961e1c9b0abbda7302d94516447398b5fd13c6cbeeb5a81e99e2bca57891761826d51585e3a5525c62a4a4ba789c4e16340a521cff415a000000b03060c76e031e41ffcaa4ca44496eea5be4de4358eb32fa6523fb8ed9a71417c1d43eeb5d988398cb3a298a5c33a182a54dd51b741d1256a76fa7ba9f0da67eb1e6f1e2bd76d4dfad2e92b1e3f5b1e1bd1604251eaa4ea640107411b22614c555654fcb94514471736a9e205c9685de8007e94b57308098218084fea2951d1ac6082fa84233d03ea4a2eb49186eeab7fd2f6452e17bfdd661b25c23df62555eb467806ba64d51cb145fb3dd20ce1f786d000000b01baffaf3041a0e3f5e7c51c972eb0c910d64347aea8f70710ce3ee2627ed94b0fb9a7a06d8f8def76312b18327f69c6cd323246dce323cfdd0ce9c516d8730cea6894fead38ded01abb9457cf78244ff9df7d8da5dc8d1ab21a950e523bbdab94caafa228bb8727f905349bb16ba36a621f74c64379e38e67c1d21b28f4bb62551abc84ee253a9aed45b55f1897f950609d171b9d2fe61d9ab85f9c7a0dae75fb72f8e6587af4d669264ce2edec03ab500000fa400000168000000b00989b064739aaf94d5d372ae71683312cbde5fa0dc4b34fae0475c0209872bce196420edeb3b24fac24054be2109e376157c636cdea02d64de2d4147ce020a27571562eaa57ecb84c665a7a58ff672e8c5bc1dd613669dff6edeabf40cf39b3e64672e4777fc275da2f9df55415099f71d2b8564a1ee5d084c6dac27f63b542bd6f7a5a898d8ec7d3c5a9dc1443336102f7e099fa97a38a9a9ab2e723cdfe8394e7d2f9c50af7b7257a067f314d7a417000000b018454526df46509b536a8fb23666b14130a897e5363e700218bd2286517e71c6298347d2678be8e2b61fd4662fb23a9721601e28216624e9bbdb6d247a187cb994575ef43fdc1128bd3bf1c86f3f7d4165521c40ee6b3f027c1bc3393ef18c6eb2040d34b4f8065734e1b549351fea101577541dc1e2c7581783cbb5ee0848a416da2fb7e9e5298cb64448affd5950ff2bd9ae4efb64336e66e61c2e1028b1573a16d4c07daea8b063928e8891446c6d00000168000000b001011005ced7cad91b09477a598e4d04b3fda6e3737779758c76bd61859d809313f74e58c8988b5d05c8b885a96c4087cae3590f930bc2c2a85abdd8ae508ef55f715e152c0c5a87d4ae195e443ae75f1e8ad56b7ad2b5670b143fd47d8886ff058b20429b3c983355ed1da3b6f103090b1dd15218e59bd6c3fd08d2a25c70b7524fcb258afcdec28b8f98f078d2e6de15ce8dad72904861bcda1a34557aa39095588899a40ae19583b06301656206ef000000b00d5c20276f84de35fdc8a6e8fc208be8fa5a9e53992e72a907d761c83c9e9e35071a7e6d51c7d524f093f4c44879d595ae4b4464867697de912abdcfb00388bb2cb18b3110e64ba8518c412589377425850868b93d8e722d6fe71c159596215b5b99aea874e765406895f3dcaddcb18a262e12cc2dff979bbe8588af41a0981cb3bf748c0c7d64803a2e722087ba16f81e72b2a2838ac79043b5f7645386870f3c4556da99b32c4aaf00b471922bf8cd00000168000000b0184a8a705b4925416181754dd51861893072d7eac9cf8977a20b1881aeb26fa7e448ab0bd9ce69ee031d5ff30d24e9f16a245cfc89018b25d92a9da8d4f8a11c63ede162aec623c45a6f0a7e0b080538f20fe4da1d17e77a5dd3567dc4f1e3445667a33c5269b41165d0b0483d0488a71652d54c54e55ce046f0f6a6fc8d56145ede63219c451d2b6bd81f38e966e4ec181306870310146a103fa789fb08b7240ff83ba85afb94df5bda3f36af4a95e8000000b0035c31e222424d27caacdf6cda15a73055a33872025ea9bafa6795c92fca289bafd8c8b99c776fddbf2542649a1e582df571bf5964e5718355bda2ba38754bc2713c4f6782e6e8633152c1a789169df9bfe0cc4340b3efd4611c951802614400a24567922c36008bfb0b590a751c5a29051b7222ee8257b17c969f36e1fa6b0f93c237d6d80a01c2a7752de1c66bc315134384a4e62ef32124f3123651bc4e8cf89384ddfe25f434755dcf7f6128367c00000168000000b0095a121cc0de8d43fef6082372c5592fd63b7169ceddcf97eb4ecf9e4b7088ddedfff238ce82f8fb87c4a00bb661330c4e1f2cd1c795fbc4de044999d40624954b7e610a3aa4771171b5e2fe1936fec22d942d31f947424950f3301f964779e3002f18f2b970db0525915381c56fb041030896e342d4d48ffff2b9d159e9c6f12dae6a42f40a557f1c0fecd4396a618528b853bf3a4c2deaa4831574774150136960648aeb3473cb31eec4fad88b729a000000b0109af4ed14239937055a96291e07a12ea8a5790a515f68783006409a278be08c55a6971baa3f4e966ce8534488bb2dacfa42171cee8693e3041141d878022edb6db26af90444034405eb72ea66bb5c73a17c5dedf81118d149ad1e909046dddb64cd0465aee8924f7de281b41c29f6f60bfef8e8eef28abe5bb124b400965c582f2d031f7174173e036078f9d0f9761c1d39dcc054cb2725c875b3b9ab9a46e39598c9fd5440dae3721420dacaed26c000000168000000b0118d64419ab2278e315d5280a4a9652f1b4de6ba43666830173118b4a7f54f2f7a0b57f325438f7aed6a66325e59f29c552b1da95ab8226a187206dad190e6a5f95628468970bbd2bcd0989db95c19707614a514b15f8f093440331bca16554ee39966283d52c92859404ebec309ea321fe016ac5b8cd21d4ece1fa8b59420c7bbf719c0b72b41d103c26e7254a8879b0305665afa220ffaab43bf38bf46a0d7dab3f0fbb111d9bc49af21c963631950000000b02254cc0e551e0134c3f95525ad81ba64e9736975ac6ae5ae6ff8c048d6b268c846601fcf2c1b07cda51a82979df5de987668b13b96e83c8d3e8fdd0febff58480f43034a410c3c65063fdccf546e9fa8e586f0849ca0d3bda8a244655b65337467f76d904ab4be0fee01f469c4765e29114b8c02beb037dead44ffa618a8f7750fa5d0cd29e7627ef53200e6fd1a8d30264843d48db9b3714afd5d2350ead23cd7bfeb515934dd8c6678c7f7af4bc86100000168000000b014fe6fcf29d3e25f0c5923b865f798e197b9c86e231b4990c8ef29d381efe488eaf7f293d58e1a4f4224f74352d70f2393d3a4e0d19ed5098d5c901a144ac3841fb2f50f78fabcfaae934ec48bd13b553034a03499bc2c89a5077ec4ab94cb50a72888f39a7faed249e67e03553d9fbb105fd04d032e88b59411ecc137cdd3978fce43314dbfe863d584b42433489123158774fd2100834670bc15d3dd662a11f74d1a594e2062f3fc75a24ba93ac2e2000000b02009451141c2b97cd7a4684196bc7dd1b855c6e353cc37e5beaa00fd7f382ca19378f6d852df1b2e23eb5fa7a704f8ccfa098f9675177ac7d65bfa9b57220c178495c26ee9c498fa6368b277e28d672fc64244c4e5b88792c0d5d3e8b0e06b24477db358c924ce65ba481efc5c582d3813067c009ba4946e078e05d95d717d041fafc0648a49d31ce80c382f30d99e9c070d8da68fed27289d2fdccebd7465dd9ab70bd4c4a1d3077c83d268c30cb47b00000168000000b020cb7a629cb55e93ed0057c25f71bea43cb22fa6a0b9764c2457c975b9924684c2afe317d069cc59e223cb05d190ac5b15bcd93fd7899070d4682442e50e27e259eccbb27da265efa2e1f494f1f4344c9b73594b5761247a4f3d835bce175ff460db37257448c7fe8e0f12a339ea898729152941f8a0cb9e83dc0199a6022dafbf57bbcdd472e5fe45faaadd1b557e9f0b682dd080518ac6ce7f82941fffcaabf9bee4c12c10668bc96db689901b680a000000b0220fb3d8b9ed67296b01972d6d12aa167c6cf635813beb8a68e225bda53eb249acfff52f77dfd375a1ecf988e83d2311d2c64d6806a9c629db4ee062af5657cfd32ae6c25c956cddc360f1de570f11bdb6fa833094acfbdad38935bb0dcad4ecbf9bfc338be0db31c6bff7778b8921602e53a726da76c19d778af0eb9ad83a4bb10cf7ec6d3f43145c88fd611f9a63f824316c0ac5e320356e0ca3ff06c03bcf4167f5e38ce5257886ee8f65b23a726d00000168000000b01a1ab305715f2e086510c5e9cd41213a5140da819b0e038ef82e1eb1f70ae77551a45d91a1dd1af5fab598c0cfe65660ec5bbb88aa31e8042a5a39d410ff938e6232dad82b4d08ee1ec75634b1283861022b0b421d906fec5e0f6c310715ba2331ae0213886f90152966c3a7c99899ad2e23bd5adff4d7e46cae3169f672f61f1b94ad95fe1847512957787b2d9d4b6123e30b0856a9df7cc0e73bd225f965ca76bb354cb19394f3b44144910ed20928000000b012d38ae1091a52eee982d094d7ae9db36cd99b918adbfbcaf212b7d103b20d43686d129eae91ea64bc6ac3a600ec6711bde9ffd93806bc37d7d905251e9f464ccaf2c795227ef0693e721fd8f64a5e98edaa07f02310b6d974abf554e02c1a99307d85f9a74fc6ed9b3b41e8908231b8001993dccf3988798315990ef1530461964f3a0e5162edb7572d0168d538673f0121b0faeec7e927b3acdf22e84107f90066a4393dec07fab506377145be7ba900000168000000b028701208ac1b2a58e07bd56b5b30af2be82e4264e44e60871e52969fbd1b889c4de3f27c5672e65708a248d960493ee8e9c71dd0376784b2f8787930feb12d9409b276cf06384717d4084157f7caae3ddbb8b69c0d609faea7e2163a8906670334fc7a92d67cf038d32561d8f627551020f5e05a1758fcffcadbb47ea5a76933a89e28db89b5928c988b868c1f6b2de22bc4cbbc05743c2ed32e3a53b2fcefb8d54a75d7303fbb8bc5653c2da0ea1cb9000000b0245d99fcd38ba6c8f9060ab1e90dde684934d030cbd9d055cac0b6359b246b1c72413d2017615d23661da391e2097341cdae610c99a2aa512d28ede12be74baec84d5d85db815af0166ac6ead604473afa65bc9bd910160aae6458508e7190b0514f5db5726044ad80538bfde9e158610e32480d2db0324fa487f21349d6d3999df10f27d9ec23a45f25125bcd28b9510932d699e160f223f426ae8cc0a419fc936814c8387ac39b0ffce7d771e0abd700000168000000b01262c923d54e8d22ef2d948e9002e4fde85537fc2942475a63b03600050ba0243193519cedef7523b330cb7343233041d2616a7784ba812ef5332f864ec7192e1e6930ce9a37a4476f61f17dbbf6aad7cf431d9d5135cd99c12ac65ad02905bf012eff5c78dc34f864641b7a3c17ce691001c5e6bc8aba25fb98459de98b6b22a7345a95997cd102c4bbfe4f0c5b2aca2c02e113938c2313acdf5e068006633f012406319d7b05b2ed357ccb8edea790000000b0100535b0e6828087550d03a38b9bcc43931b5d6568a3c3d153376d3d813647c71b0c446394acc02ecf80603e54f18758997f78f000dd0ff06110d237d8bf2e95cbf204f55213fa8cfe232a75b3f36267295166b0bbffc54bf19044678ebd07aad05cb1c407ad308cffc49ba407702b67028628632192b31a2ddca9043f6c6a5f790384405ec06b2c024bd1348cb2fb67253241c5f2c14d4760ce1f97ec64969fb36069ca8463a3d55a151a669f7d719500000168000000b017f75a7483e2720636ddafd22be9015900e18417ae8671907eef28a87fd347a126c977cd13f53c112a9dc87f377a0d26aa0265fb8f219507787fbf1d26aff7e5636e22fa282513727382df172700301befc742654bed65cae59fb57e884fcb6fe0295e0479a77789b6378fff86cb7498277caebc69835f55ea6afdef9dcc9bbd1de2541edc49a48bd1e1ffe1d4fa977505207caa9189410a79d9159d8d1db726ccdfec01e3874b17ce742768285fcb43000000b0098f30ffd2f5058e272539a955ba702865f77113c5a7ab3c81b245ac404cfcf8526d90c2a8ae850b8489a8f57a88e3d5e980e20d13f0982d0d2427ffd3d422f7c5213803163a94fa14b1bfacfee4d4d950ddae0e162db490058175a68f70751f6ac7b4efd4bb5a17012db0f0552d6f880527097f58b629b3bdabbb7419d695ae54a15ad5ee1ab0e6db74e49c3cb46b191dd03740971118f118fc27fa89b1e3d36b8ba81af3703f4d2b1724927c76e79c3800000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000001c100000000000000000000000000000000000000000000000000000000000001c200000000000000000000000000000000000000000000000000000000000001c300000000000000000000000000000000000000000000000000000000000001c400000000000000000000000000000000000000000000000000000000000001c500000000000000000000000000000000000000000000000000000000000001c600000000000000000000000000000000000000000000000000000000000001c700000000000000000000000000000000000000000000000000000000000001c800000000000000000000000000000000000000000000000000000000000001c900000000000000000000000000000000000000000000000000000000000001ca00000000000000000000000000000000000000000000000000000000000001cb00000000000000000000000000000000000000000000000000000000000001cc00000000000000000000000000000000000000000000000000000000000001cd00000000000000000000000000000000000000000000000000000000000001ce00000000000000000000000000000000000000000000000000000000000001cf00000000000000000000000000000000000000000000000000000000000001d000000000000000000000000000000000000000000000000000000000000001d100000000000000000000000000000000000000000000000000000000000001d200000000000000000000000000000000000000000000000000000000000001d300000000000000000000000000000000000000000000000000000000000001d400000000000000000000000000000000000000000000000000000000000001d500000000000000000000000000000000000000000000000000000000000001d600000000000000000000000000000000000000000000000000000000000001d700000000000000000000000000000000000000000000000000000000000001d800000000000000000000000000000000000000000000000000000000000001d900000000000000000000000000000000000000000000000000000000000001da00000000000000000000000000000000000000000000000000000000000001db00000000000000000000000000000000000000000000000000000000000001dc00000000000000000000000000000000000000000000000000000000000001dd00000000000000000000000000000000000000000000000000000000000001de00000000000000000000000000000000000000000000000000000000000001df00000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000000001e100000000000000000000000000000000000000000000000000000000000001e200000000000000000000000000000000000000000000000000000000000001e300000000000000000000000000000000000000000000000000000000000001e400000000000000000000000000000000000000000000000000000000000001e500000000000000000000000000000000000000000000000000000000000001e600000000000000000000000000000000000000000000000000000000000001e700000000000000000000000000000000000000000000000000000000000001e800000000000000000000000000000000000000000000000000000000000001e900000000000000000000000000000000000000000000000000000000000001ea00000000000000000000000000000000000000000000000000000000000001eb00000000000000000000000000000000000000000000000000000000000001ec00000000000000000000000000000000000000000000000000000000000001ed00000000000000000000000000000000000000000000000000000000000001ee00000000000000000000000000000000000000000000000000000000000001ef00000000000000000000000000000000000000000000000000000000000001f000000000000000000000000000000000000000000000000000000000000001f100000000000000000000000000000000000000000000000000000000000001f200000000000000000000000000000000000000000000000000000000000001f300000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000001f500000000000000000000000000000000000000000000000000000000000001f600000000000000000000000000000000000000000000000000000000000001f73700000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000002c100000000000000000000000000000000000000000000000000000000000002c200000000000000000000000000000000000000000000000000000000000002c300000000000000000000000000000000000000000000000000000000000002c400000000000000000000000000000000000000000000000000000000000002c500000000000000000000000000000000000000000000000000000000000002c600000000000000000000000000000000000000000000000000000000000002c700000000000000000000000000000000000000000000000000000000000002c800000000000000000000000000000000000000000000000000000000000002c900000000000000000000000000000000000000000000000000000000000002ca00000000000000000000000000000000000000000000000000000000000002cb00000000000000000000000000000000000000000000000000000000000002cc00000000000000000000000000000000000000000000000000000000000002cd00000000000000000000000000000000000000000000000000000000000002ce00000000000000000000000000000000000000000000000000000000000002cf00000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000002d100000000000000000000000000000000000000000000000000000000000002d200000000000000000000000000000000000000000000000000000000000002d300000000000000000000000000000000000000000000000000000000000002d400000000000000000000000000000000000000000000000000000000000002d500000000000000000000000000000000000000000000000000000000000002d600000000000000000000000000000000000000000000000000000000000002d700000000000000000000000000000000000000000000000000000000000002d800000000000000000000000000000000000000000000000000000000000002d900000000000000000000000000000000000000000000000000000000000002da00000000000000000000000000000000000000000000000000000000000002db00000000000000000000000000000000000000000000000000000000000002dc00000000000000000000000000000000000000000000000000000000000002dd00000000000000000000000000000000000000000000000000000000000002de00000000000000000000000000000000000000000000000000000000000002df00000000000000000000000000000000000000000000000000000000000002e000000000000000000000000000000000000000000000000000000000000002e100000000000000000000000000000000000000000000000000000000000002e200000000000000000000000000000000000000000000000000000000000002e300000000000000000000000000000000000000000000000000000000000002e400000000000000000000000000000000000000000000000000000000000002e500000000000000000000000000000000000000000000000000000000000002e600000000000000000000000000000000000000000000000000000000000002e700000000000000000000000000000000000000000000000000000000000002e800000000000000000000000000000000000000000000000000000000000002e900000000000000000000000000000000000000000000000000000000000002ea00000000000000000000000000000000000000000000000000000000000002eb00000000000000000000000000000000000000000000000000000000000002ec00000000000000000000000000000000000000000000000000000000000002ed00000000000000000000000000000000000000000000000000000000000002ee00000000000000000000000000000000000000000000000000000000000002ef00000000000000000000000000000000000000000000000000000000000002f000000000000000000000000000000000000000000000000000000000000002f100000000000000000000000000000000000000000000000000000000000002f200000000000000000000000000000000000000000000000000000000000002f300000000000000000000000000000000000000000000000000000000000002f400000000000000000000000000000000000000000000000000000000000002f500000000000000000000000000000000000000000000000000000000000002f60200000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000003c11000000000000000000000000000000000000000000000000000000000000005c000000000000000000000000000000000000000000000000000000000000005ca00000000000000000000000000000000000000000000000000000000000005c100000000000000000000000000000000000000000000000000000000000005cb00000000000000000000000000000000000000000000000000000000000005c200000000000000000000000000000000000000000000000000000000000005cc00000000000000000000000000000000000000000000000000000000000005c300000000000000000000000000000000000000000000000000000000000005cd00000000000000000000000000000000000000000000000000000000000005c400000000000000000000000000000000000000000000000000000000000005ce00000000000000000000000000000000000000000000000000000000000005c500000000000000000000000000000000000000000000000000000000000005cf00000000000000000000000000000000000000000000000000000000000005c600000000000000000000000000000000000000000000000000000000000005d000000000000000000000000000000000000000000000000000000000000005c700000000000000000000000000000000000000000000000000000000000005d100000000000000000000000000000000000000000000000000000000000005c800000000000000000000000000000000000000000000000000000000000005d200000000000000000000000000000000000000000000000000000000000005c900000000000000000000000000000000000000000000000000000000000005d300000000000000000000000000000000000000000000000000000000000005ca00000000000000000000000000000000000000000000000000000000000005d400000000000000000000000000000000000000000000000000000000000005cb00000000000000000000000000000000000000000000000000000000000005d500000000000000000000000000000000000000000000000000000000000005cc00000000000000000000000000000000000000000000000000000000000005d600000000000000000000000000000000000000000000000000000000000005cd00000000000000000000000000000000000000000000000000000000000005d700000000000000000000000000000000000000000000000000000000000005ce00000000000000000000000000000000000000000000000000000000000005d800000000000000000000000000000000000000000000000000000000000005cf00000000000000000000000000000000000000000000000000000000000005d9000011000000021c000000b013ab5c2778c7ca7a7b3dbfb7bc1d569d323bea79da7b979ed4a927f2c689585258ce736a9a0ca5001625d02a6be4f35e870b2f491bf552b371c707d4e3dd421666c5b95aef56d631b9a49552d10783dc7fb5f1e200e68acbb255f9ef91735aee20cddaab908331023fa4f8df19f67df3119874f0539d9f9fb2b98c4db3a41a39c8deb35144e9a5a5b3f70cdca098234727ad55af3dcb069dde4690cea492030b285c062af52a63db28c65f437733c329000000b014ea42e70e10b3e80d11dbed267c24e153c76955317cd3c6753d6ba43e8136d519260060bbd4e721c7435fdf3924d598783425dd41d3d5773981df21fa6c5a1aa67777de1b42636c0a003eac4ffd0b7f89dfbbc9b0f3c8140f70ac39e65595303caada3d712e1bce17916cd4edc127ec2188ae3d52183ced6006677c68b84692aa845f81b9976ff961a18238835e6b661ec46329644b654876f4dbc4c4a24f22b82d85c47574210795a5a5a61c3db9f7000000b02f87cdd11c9ededcc00ff4c04352f60ed50998708452044bc440202746ff8391f2814b8cd2eb4dc02d0dd672e87aa2de6f15f14303e995678f55426f67e96c426cbf40cd4656ccc029c0525a0a6e48e38ae8c31c40477b123515957e3d583bbef7e86a38a4ab9abf34b0ee46a32f5580001ab81301303ca99d4b72a0ce50906314a455c36389ebe12be53ca2d8a8e3b10e8ad95bf22f8fa258f6b777f9a0274e0f0c5dff3696e7b2bd5b119f61a09af60000021c000000b03006f3ef3e028220752ae581c9cf555f07906d7578410a8385efdff756722c4b84e7034bbb1feb64eab16e089521bcf0efd5259901851410b6a34618a41b0adb446f424758d91dcd1d68196139d946b2c49b31659e7c589deb914d7960a7a2788643cc179cea6a66e4bff777cda3812b201c795ecbd78c4eaf280059e4881ea0577dc63d41412811356c7613816e9d481e59052e63f4249200f503373930ad5f5ebd16e9c9908e0556dc05cbb2c708ad000000b0149cd3fc07da9a84fba095b389925cbfc16f8bed3d282d1d88b2e6dd213636ffc4fd4b7a09db779c95fbff81c14fc2990c4a7226d3bcdc3ff4b048778425e13050aacf403d1fb990a764051c58799f3c49a6d7e83b4ae769695943d3267d5be96e9eca149e22ad07d4b27ca679ff86791cd16b99f4c5b6707314aaa443f3028c9307e5789a0fe8f6b1e78ff90e5c7bae1bf2e9a15ddc3d6276167d0d4dae3c18655b2aae28077aaf364098cc57e22895000000b0271f93e0a111b067367595f156ae92e2af7daa555714edc283e6fa4419b632d7b81795bfa5ec0e7dd0a456426f7bc4f4850953afa427913355d150ee16e0362c63bdebdfc0b829931add34e6d367bc2969c2efa08236847e71abc5fe9c98dbd6e800c45aac98fb34c781ee869812bcca26c63effa7c3992d18d4b05d9e83870a4b3bf8646f6fcb7213e47b69b62dcd5c2b4a3ed49a0366f9c225247872e781539cf5b178c013c033ec0d35fb206b189c0000021c000000b006e2c1c637884ef909d2fc5cb582a6d49c20da897125b5cacf1918674104b99cb1fa5720c14b98f2d9df077737d818f21948e804268f8c3f69767d8b345a4b01d97da2b7bc3c95315f17eeb91212529bd68fe7db648a56d2b245b3559e9547a8e778742564902b675a779771f9ab520c0df36e4a73d491b97dd25914473264d23ef30df306f0a096ea984dc259993d381c156289f1a72a244701c6b48dfc4ebd0da3f0c3545f1d1c494ab3e004f3fb96000000b00cfbc2aec8e2b17c3b46625eb9b6c2775fb89d270d609fcf9686617b33ce9f3c83c3ef6da6b22444127fa75effe4ae396dc31ecb038d340ead18b08f4b1250d9280b69ab614437f3da1d3402642b224cb833583a1e3832aaa89e7315c2f591d685e320fde57f47a513b727663b6f51322dc648bb5f51c6ef87f76932fb945318c03fd1a02ca52641c0fb6fd65f855c880d868d01aae11dc304d53386c9e5afe99b326968e5f1630f6b3a0cc1321ab494000000b00889da7b7c65ffa75df4eec9dfff353747df40801cdf84bae8bb3a2ea28887042d13d9b99cebb9d09d351797dd15c09a3fe11e77ecb39f13a807e2af33c50884538ef784ef25693db3b38b99802c70a53dc04f097522db19349c3e3c0d6480a44db3d5d47c365de1f4f85a2c33a21ac91dda282f10dc7e9f0f5e471b5ad3f196f12302cf166801fbad84fc42b3b8b09c100da5b6554ba7b57116698d53680e449d4ee966589d66939b2e07bee7c4cf7c0000021c000000b02038bfae08889c2313f6b9583a23f158d8d5645775d5e4a11c6358c7406836b415a789d6a130ef8756a2e0b47e1b5c1aa1ed8ce6f217f1369318fd019f53c3c62a508bf54c09c7f911c55398321942b40405dc8c7543437b1b75dd60898992b93c568e9d8780db4c6388d39aae83083319db423f228eaaab09bac5f1116e00d3daee409b0fc04af0c9586e28e1f02c0c0b13629bf51cf467f3e0f25357801260c13f20934a9b354ceb57c00e29446e05000000b02db929fac21282254aa50b05fef8fffabf180ec589e608c26a11d1b94482e927c9f91dc747e90d938a1665ba3f45a589524af9e34a5b2a03f409f600132eba92dc0f0c21de7925b66ae07baf255c36161c21f2f6c4541891855e5c35ad254d5ad19211c6df036d39ca537c7f340b4fd311d76e2ade53ed1ac7107d38a16e786579239aae09776a61f99983e0fe9bc82e1e7dadf22596c9efb7a85bb6aeb8f16a87fbdf0de40901b6a135dae53bb0e5b2000000b019d9211edf5074403441e55ec69960259ff3e74e401de521291fcf8ab290607c3c113ecc027414fd03cb262a7db883521f261d72cb3b8c0ffa17a913816fdeb1ba2a937387a75a4b6a990a7761ed16fb5b265decefa9d9fb27daeabd79ef91b87bb93f517540964fff31043f00e4500c06790c70c73b15a2fd0c685bbb451408ab14c03fe5e82daf2693798fc618b11211d94ebb4dfc4e274e2af46028fd7747cff0b48111356b9b891cce731d61ab4d0000021c000000b00f04b1b37491bc0eefe2f022af7e9b55843ce4bebf9d08efc42ac49f67410387bb8899e0f60ab0783ffc9858e107d0653255ad6f7180af3e8d7da2ac6e4edada6f8fa3c801b5f4fa09d244b48ef6af9972480561133e78641340e5ab3cb7f939acda7e07919103fa60c8132d757176582ab781d91288aa3a1a61d6abd4eb110b5899dc8509d8b64328c0fca13765ce1f2bd0988a1f974e2d808f5f51da72d15e6ecb5fe08482afb002c6c30c209fbb5e000000b02fe8d2ea9d6dc45cdc3a74b2c69b7c0e86c8cb376da89e079ad58787cbcea184bb068235a10feb9203923c50ab2f69ba2fa3b995dfa9c975c744fe31e50609de2b8a70d056d00e1da48cc7d951dd9bd77424648f4eba819a21ca77d19d83ce8e29623ad8bbbbdcf0d6e20f98f9698f6019d337e7ec539860549e7067cec91ea01e3f9a5c210dc456f20377be262b0fa80b904910d69d1f39c70c26e3784a3617293aeb3dc790d9c2ba519d17fd812386000000b00347657189e836595bc74ca7010f5ea2e62ab4b15fe71ab1aafddb3407e1b8ef531266964ff4b5e7c160058c18d7c2fd2b2964a00b8e68d9eb5b5e8bfa23cdac3d025954794257d0c51b1bdeeb401f023a565a133cdd7cbb97f58dec2f9e86bc17c78669b5c62e4c7f9fd81a3d60cfbc1f5ae6a00007b59c59b4f28687fb6fd87eb873e8bfa133bbfc0a1c2316ccaad82b35b97ed3854da7640cab45709a600c53cc639b7f6b1e69eeff36655fe68a620000021c000000b027e66182ad7ba06bebeefd74b9826074f77422dbc0bd480152bce15312000340b474b176cd1fd2f2f690811f322d469eb41d40ba325cf3e6286b8cb3be873a427505e2f0868fa8f370945b4d5a98fefaa396d627f8c8964028c47ce2472cad137413e3726e02af50a7286ee2d9c213b3296d016e8f4eadab5466761daacf82e1f76b68bccd566521ea9c1df731716e530437a2d0d7a3f4c2760e8e70f80246b12d3c6998c5722d8ebfe57f3cc4ca8d01000000b00239a40fc769c8bb5fccd6f08e97bbac03dc655456a06baf219eba3228a607f82d3e85a99f2be2038a6a94b3367210f4c6787d359964923d42806673a67350af8cc10ac22e666647e3afb7e8da2f342cbd430c368f724fdfcd53e75ab35ddbe84e14ccd7f453294bb4f0f661d750d0ab26f6b1c4dcd497864d219cd9d43ba44e229561ef50ee5578bfb8d57df91e73cc0bbd1398378221fc51836de6b551f139ca6be360ac4d80b29a1881a1675ea862000000b01f60d75c036c2e228c9f93eae0696a60f683b90a0cc8507cf8faefffa6fe4439478a1dc6730a07a728dd6f72ed08a6683998554cd77ea5bdc32a7abc159bd3e3d15457bdf77cf87afe70bc091855a3775a805520bbdbb88e4438e82c8e1134af41251604d5c858216b90b2ce1728fd991ac1496ea8e42da531d6a6f34c9a0b9e1dbf1953bb57fbdb47641dc61fdabe7c0866bec6cddcd5f269531c1dc8c575e97975569a2dc8856236e0b85050409c8a0000021c000000b02773acf5db5c64f285581c9f9338a7f4b56fb7a84000df95539c79a7e1dfa7e7b9744240f6401d77ce1b5e080d883829c750086e87d31ddf91493d610ece440dd57eac0ed104ba5b8c482773857ba8559a6595dfed494516acb440a790a15f08ff8b387d1b16637c4e386d09a86ae7221a92b7a0c3b15e11f2b96807009c32e64c940b4f805ded3df520a2704cd7a6820e3ddde553b42d52a9d089aaeefaa6995d6af6a445c49323157d200db83615f8000000b002900c5aaba7f2030cbb53bbb438c375da6e64fda36e929a55c4820ac2b848bb077048e516a4c63b90579223d6e9617822e9724dd284bb55d7919bad02667e9a208fd426b148d7b474f0d8d48dbd0c642a4f48f584245ffbc89efc815ba6c096fb5a3ff51452b70dda458dbf2c62997503a624b5b81893c8421c0028fc8fad3199f7f9452edb8eb0023073730d626379057c8958c90487cc49409c63df8e3657d50f250fb8917c92182366918391ed21000000b007eba9e332441b9b6fd57c138d1a52a1290f4dd4e823974e4174931559e7a90d134cf49e391642294da2dbcb23811775bc8cd5df400eb9f23546582b8b0853f2806e875de7ba19d4bcc81e6747282cde0bf0197e84ae1d3c7d18dd54e6c1da851e457428a3fcaf3b3c0c38a4493f39191a2ff9c76339f11e3f8ae575ca6c16d4919768595753f8df5142e3282426b39b1306b5041ceebe13ce47ceffa09aba57db2607090cf0dbcfb1661e958dcd731e0000021c000000b028854bc7c947ece43b5826965b80e87110ceda6eece2e9b97a972745af64acd3287a6da08f043dd69043bf1ac6514a9da7dc842510600a6b8dcf6db7b03aeadf8bd2d6f55ae74985ca30ed6727d4fd7fbf2c3a3ccd62221effd4a88004b60c81e87cf639622448d4177522ab9b0faa310c4b27f44480dff929aa00517d30b645b1428f4d8a0e3435aa7bb02484c4367b090442223dc4bd14490a4a421863351023ee1b835233fd5b45b0e4f508a6921f000000b01d289673d72956641a8810addf1d76825cc9a76f8ded8fc440838534dab43c7b1285c39b630822a4b27dc027deb8bbd9b0424e0406eb083981c0b4299f836039e40fbcf9d82916474df5165f875acdcc22e73b2d881bf313260da7ab1177b524ee86df5095578f4c688005406aacfa1a01ab301e25aab9b407e821e11d84a90d286362a5787b7912a4546a8573aef62a1825f5452122bc0069856a7f6a7a83bc9e018d7609a7f35e0d4b449655047f8e000000b00c86b2e04c827c1f40af92aedd3890fed59bc53ebc6beaafb24da022d06eb8ebc067bfe724b573dc107eb79e01358618cafa1fe5724a2b9c108a1a3d55c88bad1ef345e6e3c44fed1070e416f58830d6c3050ad44a67042553ba761049ae9f0b10804f119cb28bc08acb5078370e6f7428a92204841674d4b0a30895ceadc5115749d4bf7f8f200c4425e0b50e8edde01eabbd8829576bfbde0226b608a71de7536d7ab9c292f0ccd1f77102bb6394a100000fa400000168000000b004a58010e4a9c895545099329a3b9c8476fcd5d51476a997c4cd0fd8ac5a883e2cdf75d217ae486db3699b6b926565bf1cb24ee3c898303be400bea8bd7fbfda6415e5662c1171c2fd6fb7931be1bb26eed30a43524155ff85a281750cdebc17b8b2ec848a4dc5cc340f46f21f1a0bd400fd16c3c44856820ce3d028b2d11cbad640096ec6e7e049178a0fe15c8ab8660bc4aaa188a47b2330263cd4fff122e53bde2d0d7ad623a8ca8ed98520bda017000000b0130829b3be71be10eb6942f2c61bffb1b0cb0a3fc08df95633255c39550f8d8a880377d559f24bfb973c4e638b9ccc4540850d3043f202aceb21d05cdd27d5808fe7a8d60789bf328b5b41630f831492236e1f8b3584a305183eed615d57f41915710c23e6633b9b5a3452fbb821e91524c18425348848739dbf261d59dcf8c22c8cccfa6b7a91c0f88fc6608c8c156c05ceee202e23c0e9b91c6681011c690791b6c5701a03cdf71c2c53ad7928643400000168000000b0143d4a0673588953b5a3234068f17fe317ce34ff574481eb586645ede4fd0a1df1a8c91f39275ebe57054f6bb83a0669c0cc56705bd905ef77fd475e44f4ae7c27b9e4192517b46a8d68b282e5b2379b17d09cd5bee00b2c1f3e7823a0cf3d8ba7798d9a5262b7d8d9c53f46afb4824808c8739ef9b1057ee0e19c06f0cf1bdd15423e2da726a94959cf5722054773db0b6fca123605cc984b63df7528fca9a2bc0bf2938eaf14c83dcc6154dfd1cf1c000000b0109896d77097bbfe7fe016db0e314524ec31814eb76bac2483a759b9c3fa753f8d7761a1ddfd476db2946b92ef3e02b43b56ea19b803ebd59c5b19c8d2c91aaa6378a95be226e049386398b4426f92319858fdbef18a3c3787bd13c68ac19e3ccc1539eeffc60452935062e4f60667e514d2f38cfc194bcde9531a706e8b19cc6d104d0e9facf03704319e9ec523e0d710fee0cf3681f3bc62ea93721479d7a77007e9c3dd959388359fb1eb8b5c5c9500000168000000b006120e5cceb39e219c320896babbeff32d67b5176d1dd49e03e07652e716d4ee4d3ca2a8b3eba96aeb35d5be4edf7424abdf912ff7b634c8566404e53790f3b770e52a932b4edfae70820536f314b7f9b5db0fa4e61fe310db3e922666d087273ee86ac95121bf22ed2719b307eb17c72c38d6a4a44718e55f162351ed5aa075e0e03a2a1542dad1eba0472b1309ceb527003679f242e2e84ec4bf7118a3015fbba017003e1dce0ecd6a1e86a4e49078000000b02202e8dbc3ec209cfacb74348c631e2b18dfe4532a5068d6bb169c34129c56ba46a53102ef6b476e932d7072289bc21db57a1d1596b0d704ca4fe809cd27dcdd3746d16eb828e19ae40d847804282fc3fa4e39e147bac06fbf6d9a07670e613ee833516e6a5832834a1e45f18bb3a1e32a79fae69cf7c721413bf0c519577156ad8f88ffaac98f612d11164d3a3b24500687a73e92256f6d814bc30e75c8bd3b1e906eb6ba74cc99e9379b60d292832200000168000000b00b5ac8d74cbc940a82aeb181034352c6ded256e0a627ae0a2130f8c133e685d31cfae28643f9b42c92097b4a07afd9119005796396f5e7af55fe37f941f14a260ae596686a28d72e49902dd36642c3440f6c19d99ac4371d25bfd40d28a68c230eca92cb2bb9d67cfcca540c822ab8c5116805d71114ec69d77089d8bf6172a2a1cbd4f0e38602fcc33d4d71abb8bbff1fe1980800011495525260d11dec1959b18e749ee9370e44145d8e0f2bc4642f000000b0082502dcd86ba86f14e86cac47610305c78146ba45b7fd2dc4b732243a2d78f7ad9824a69fb37b768c1b079f7a22dcdebc78ea020597d3fde2e4937a5fb5a3d83c0f4720abb7bed891e2f5d3e92f6e3b1d867d0df9e4d9a932fc8591e8752c50a03c3d992c58c86e5e275417413ea6a72b8584039cb4e2083257579bd2b19850dc2c01998b4d5fcf8897e0e4f0fac17b2705240fabd4bedb3447f0996d797952ba06efc2a2dfb0f1448dedc5eed3c02000000168000000b006c8762ef60d5a13d7a23b41566ace258c08dcab4fe9697188533d31da2050e092c8899e969072d40c339e9f43c3d9be608330ee516bb6d46b34bc858e3761df558eb0b289c9b0e456fdefe0bfd92805b8268c3e42df1866ae26c45157759b6aaafc7a59ebfdd12b1368e79e8213bd2c14825ead864e4c258d7a5b7d632ade94ba1244b7272f06045654f4647a7671041b59e9e159b3895aa6d362dfa104e3247c95fda3955aeeb31a900a1ccfdb096a000000b01c11347469543444dda7f55d3ae0266438ba1582deb533f0cde1993b30c3d38928fc7bcda4834632f4ac5e127f81e0d2301fa9baae913037c64d1e45b18cc659f1257c26eb02ec639836bace4c742b28b8ddd589ca8f94959cbf7240a01bf46d2fc8a2a5a4e6a89f552437ea317d70b922c0e1629bfa84b0f5021539c298389765e87e8260bc07842e0d286ca86b962f085a0416b3ecda7b35703840b03ea2591aa75e97baa5fe69abff13a6f532f93200000168000000b02210472cc6ed4160412013a51cff729e804156efe2f751dc7ed17db930807e5dbc4dbfabf178344d4853695659544f504e0f05cd9330dbdd6df7b0dce109f438c18cf79a3c9843466d7d3ab9eae596f53452bb565c0eee23a092dcff54ae48c069120991de177362b420442045b5f4902e33d24d44e65580b99ff30ff975e264682bb0ef344c4d05f0b53979966a1ec7098a319738c263ca6c4058761daf65a83dee06fde5ef3c2cd94d581d51239a49000000b02697d6e0e76125dbbcc891508207d9a188f1d51f3369ab8686beeab0745b77006a045f66f36a0362a70a2c96096390f96baa6830d23524b857dd4b4e761d446810da54647dd363f5d66501c34ec0d7fd0da50934785d219766747e66f4ccd928e28f152653cb9e69a80eff375de3edec040db5b4dcc36bc0b4bea870cfaacc72e7f212e29d1d79f24a4c69b791fe4b9d14d5848b15d8010b9b49ab1b732e3a6f8b857efe892776fa95d6a3057a76a46500000168000000b00f2a12e340eb2bbe6f97461220bbf5119f830351e61cf12b17fd0b00391aacdedd9dd17a4e87447261cf9f0378138a89e2f6ef3ee7a4e32f741822304556554cca2db48651ed7f092a4b00606c5114a1e92e195c927c4f71509c610517b0fca61d963abe8642c4240d5a16d4eee5917a02785c28bdaca56816c413619492752ffb2930e553f96b81f645ea78fb910a99138cf0164fd1a13bee23127e420f20d260f388bc36f09b1a7b88839a15b2950d000000b003d8e3db7e1cbb67c8b60dbf90eec442ccef888d337a58601c6d8009879c37b10a0664b1c023b4cd5cac3473306e2cc19a6e34696ffa7ebb1498cc8c3e6b438e2692c45af154d8d1c4a0c8c0a8f5808c97f579b91afa5ac860b7a2803b2581090176ddd3b47cf8d5eea4ccc3064d50f91e0adf3c60de9af0cc86196e9262c7e937901d43a9146c436744878e2f8dcc50197be3290b465600280481bb56b2c6a5359e12c9322caa87ee1cbc2635f52ee100000168000000b0010c5d5146573bc8b8821de0c0a7eb0a31e49bbff679126b271ca35ccfed3618055a5f23112b3706526f172c7fd6f597079b8f4b3d088abbb72c4bbd091964b04360bb8dedcb3e91f75db4833aa9277f6794b7a4b084ba82de05ee6303dfc10e4f924e771151f41c25ae0cab55454cf525c4fe38894f2633eb1314311eab5c4f7f120509032df3b46dd47cbf0c55b9a4011a839d024d83e895ca8dbcd0056a52202ec9c477bafa378a7f7eee293583aa000000b02732698e7342a864b0f38eea3a2570e64db4daa68bab0e8114b52a4785984e468ac79add7dbb82520629114658d8cf0576642fe2ee0f8ed70f0578c25a7075f7978e44bc565fe69eae22e65713e20c4940bef76c945cfd24e1bdc2cb1cc2484ebf8151a3256f003247394ccd1fa3630d1136c0e323304f35a14589baf05b04a8e994346672ac207c6cdf0d0341df06500a51b384c3118673c03c3f321f36fcb36333de813b88647b221e4e332e928ac200000168000000b02e2b48b77e43e4633f59f05527731cabe7330dd36fb11e102826e8ff0213e88da0e0b3a315e19407167bb25a391a30b4ddc4332fd8f3a549be710a2790469785364a1cb7eb0d34766ad968879d3d85ac4325e25cbcacebe6e0897a7bdfb3e8460009ba3bec53ba84704b1fb418d434131320ee1c2fbc07bb171aa02f5d50190887a9d492c74420f1549d7b3c065f7cf61cc33d3f2bae369550f7a143a87b6470fcdee5755c8383d7dfed7f4620a13420000000b00d2cd99691695b7c0c005684f89cdb45d09f31a5297987df92da3247718f6fdcdfc575700f78a08724043548aaecdb3926ec2b0529fc5e47020ab857754c833f9e6e2bd69f73ec164368c1081a21ebe8b03518251aa7c42963ff565a9b83e33d948044c5d47855480b48c334d4bea9a815c84f78376aa59fdc19eae7aa76cb70929c51b99bcd08ccb4dde63da30d790a06e2c2aa4336f4d01dcbfe174ceb0fa0c73c1131edb7ef3a75d118f45d8051d800000168000000b0035ac97a3c6b9b126df9f9990098c2a33cbae168f5077e19e0aa70a1f8db9b4945779d24a8c240471a87fe7b9c7f183af904fd429be713b70becffd3205fb6ea562078545b7ca842b9f2f9ecff5d0c6c45fbb6134df98f9138639687a57dcbdf5e0981f5ecfcb1e7e83498dfc810a229092e8e4c4b2751c905661ed1ddd6549cdb69c1dd5d16b14988c39e9f453a89292f956bc328b6db1b9f76218532d64c48c7f0059a2feb88cba473f78f888aa14c000000b01dcf6c414cf4960a64ad7239e42ab58d339714500a6c2f4e7e2c9a0315a43ee41d6d667da600995bfb6a2340bd3bf33108d0fb8dbfb60b58ffbd6f570f1984c83174c7d51199aa0f10889bdee590f7ebc3d43ab25e4f98044f9f80f111c32255f85547c22c142c0b3f558c43c889ff1e0d0db4025527d6def35cbe1eff9fccb827f28a3035ee2241cdd568167d837bb9157be0ec642fbbbea76bad13dc8f8f0d4ec0845f2990f72b01cc71a72dadc7d200000168000000b00740ddc37add5b565fe35fa39c3ab05628b0fe7b57bdf943ea94a47071c9af0efea2e018fd8afec9c389cd6c7bee368a9acaa1b1be75ecfb929bed5511a352e4009a9f72a91eb7f430136ab601aa96234081e07517d15b15ca63dd4a194e9adc25c7fa71366f065d1938cd6036ccab0f1cdd036807f226cddc03190bb50b1f9c089c2bbfa69b3a6e8c88f8f68200b38023510b8896eefbf0079862f1e4647c6768bd0a4d81c564ea3492fc56d1fe1008000000b02683df584c5b959fd910966414adbd00b499ea3d08772f19c877a937e487d2e8bce521c5ca40de064d9205a3154e24583e4ffb7e6b9a0ddedc20a60382fb401ea49f26705761200461ca7dbe84176b9099dc58c4a7f10054abc9e7411b0efeeb4f2feafbfc3812c5c7a29948f1c00cdc068e3823aa7652fd2a7aac2102e3a937f7723fc6d768784aaa7b9b68323a25e72a0f9e866898ce028dbfee842f900c5968e27e5d0c1ebad62b48c54fded64e6f380000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020100000000000000000000000000000000000000000000000000000000000002020000000000000000000000000000000000000000000000000000000000000203000000000000000000000000000000000000000000000000000000000000020400000000000000000000000000000000000000000000000000000000000002050000000000000000000000000000000000000000000000000000000000000206000000000000000000000000000000000000000000000000000000000000020700000000000000000000000000000000000000000000000000000000000002080000000000000000000000000000000000000000000000000000000000000209000000000000000000000000000000000000000000000000000000000000020a000000000000000000000000000000000000000000000000000000000000020b000000000000000000000000000000000000000000000000000000000000020c000000000000000000000000000000000000000000000000000000000000020d000000000000000000000000000000000000000000000000000000000000020e000000000000000000000000000000000000000000000000000000000000020f0000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000021100000000000000000000000000000000000000000000000000000000000002120000000000000000000000000000000000000000000000000000000000000213000000000000000000000000000000000000000000000000000000000000021400000000000000000000000000000000000000000000000000000000000002150000000000000000000000000000000000000000000000000000000000000216000000000000000000000000000000000000000000000000000000000000021700000000000000000000000000000000000000000000000000000000000002180000000000000000000000000000000000000000000000000000000000000219000000000000000000000000000000000000000000000000000000000000021a000000000000000000000000000000000000000000000000000000000000021b000000000000000000000000000000000000000000000000000000000000021c000000000000000000000000000000000000000000000000000000000000021d000000000000000000000000000000000000000000000000000000000000021e000000000000000000000000000000000000000000000000000000000000021f0000000000000000000000000000000000000000000000000000000000000220000000000000000000000000000000000000000000000000000000000000022100000000000000000000000000000000000000000000000000000000000002220000000000000000000000000000000000000000000000000000000000000223000000000000000000000000000000000000000000000000000000000000022400000000000000000000000000000000000000000000000000000000000002250000000000000000000000000000000000000000000000000000000000000226000000000000000000000000000000000000000000000000000000000000022700000000000000000000000000000000000000000000000000000000000002280000000000000000000000000000000000000000000000000000000000000229000000000000000000000000000000000000000000000000000000000000022a000000000000000000000000000000000000000000000000000000000000022b000000000000000000000000000000000000000000000000000000000000022c000000000000000000000000000000000000000000000000000000000000022d000000000000000000000000000000000000000000000000000000000000022e000000000000000000000000000000000000000000000000000000000000022f00000000000000000000000000000000000000000000000000000000000002300000000000000000000000000000000000000000000000000000000000000231000000000000000000000000000000000000000000000000000000000000023200000000000000000000000000000000000000000000000000000000000002330000000000000000000000000000000000000000000000000000000000000234000000000000000000000000000000000000000000000000000000000000023500000000000000000000000000000000000000000000000000000000000002360000000000000000000000000000000000000000000000000000000000000237370000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000030100000000000000000000000000000000000000000000000000000000000003020000000000000000000000000000000000000000000000000000000000000303000000000000000000000000000000000000000000000000000000000000030400000000000000000000000000000000000000000000000000000000000003050000000000000000000000000000000000000000000000000000000000000306000000000000000000000000000000000000000000000000000000000000030700000000000000000000000000000000000000000000000000000000000003080000000000000000000000000000000000000000000000000000000000000309000000000000000000000000000000000000000000000000000000000000030a000000000000000000000000000000000000000000000000000000000000030b000000000000000000000000000000000000000000000000000000000000030c000000000000000000000000000000000000000000000000000000000000030d000000000000000000000000000000000000000000000000000000000000030e000000000000000000000000000000000000000000000000000000000000030f0000000000000000000000000000000000000000000000000000000000000310000000000000000000000000000000000000000000000000000000000000031100000000000000000000000000000000000000000000000000000000000003120000000000000000000000000000000000000000000000000000000000000313000000000000000000000000000000000000000000000000000000000000031400000000000000000000000000000000000000000000000000000000000003150000000000000000000000000000000000000000000000000000000000000316000000000000000000000000000000000000000000000000000000000000031700000000000000000000000000000000000000000000000000000000000003180000000000000000000000000000000000000000000000000000000000000319000000000000000000000000000000000000000000000000000000000000031a000000000000000000000000000000000000000000000000000000000000031b000000000000000000000000000000000000000000000000000000000000031c000000000000000000000000000000000000000000000000000000000000031d000000000000000000000000000000000000000000000000000000000000031e000000000000000000000000000000000000000000000000000000000000031f0000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000032100000000000000000000000000000000000000000000000000000000000003220000000000000000000000000000000000000000000000000000000000000323000000000000000000000000000000000000000000000000000000000000032400000000000000000000000000000000000000000000000000000000000003250000000000000000000000000000000000000000000000000000000000000326000000000000000000000000000000000000000000000000000000000000032700000000000000000000000000000000000000000000000000000000000003280000000000000000000000000000000000000000000000000000000000000329000000000000000000000000000000000000000000000000000000000000032a000000000000000000000000000000000000000000000000000000000000032b000000000000000000000000000000000000000000000000000000000000032c000000000000000000000000000000000000000000000000000000000000032d000000000000000000000000000000000000000000000000000000000000032e000000000000000000000000000000000000000000000000000000000000032f00000000000000000000000000000000000000000000000000000000000003300000000000000000000000000000000000000000000000000000000000000331000000000000000000000000000000000000000000000000000000000000033200000000000000000000000000000000000000000000000000000000000003330000000000000000000000000000000000000000000000000000000000000334000000000000000000000000000000000000000000000000000000000000033500000000000000000000000000000000000000000000000000000000000003360200000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000401100000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000060a0000000000000000000000000000000000000000000000000000000000000601000000000000000000000000000000000000000000000000000000000000060b0000000000000000000000000000000000000000000000000000000000000602000000000000000000000000000000000000000000000000000000000000060c0000000000000000000000000000000000000000000000000000000000000603000000000000000000000000000000000000000000000000000000000000060d0000000000000000000000000000000000000000000000000000000000000604000000000000000000000000000000000000000000000000000000000000060e0000000000000000000000000000000000000000000000000000000000000605000000000000000000000000000000000000000000000000000000000000060f00000000000000000000000000000000000000000000000000000000000006060000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000060700000000000000000000000000000000000000000000000000000000000006110000000000000000000000000000000000000000000000000000000000000608000000000000000000000000000000000000000000000000000000000000061200000000000000000000000000000000000000000000000000000000000006090000000000000000000000000000000000000000000000000000000000000613000000000000000000000000000000000000000000000000000000000000060a0000000000000000000000000000000000000000000000000000000000000614000000000000000000000000000000000000000000000000000000000000060b0000000000000000000000000000000000000000000000000000000000000615000000000000000000000000000000000000000000000000000000000000060c0000000000000000000000000000000000000000000000000000000000000616000000000000000000000000000000000000000000000000000000000000060d0000000000000000000000000000000000000000000000000000000000000617000000000000000000000000000000000000000000000000000000000000060e0000000000000000000000000000000000000000000000000000000000000618000000000000000000000000000000000000000000000000000000000000060f0000000000000000000000000000000000000000000000000000000000000619000011000000021c000000b018cb2223bf954f5fb43f08dd1f904dd028e015e2232a7f777b02eb8c19bbef0fe551b5968053b93ac2c7226e607aadc162d1e4b9c49a3efffd71c8e90eba8472c357f5fd909597a150c4ecf1057f03da54f0db275c51863bfd08a7d316b5b2100c4e5e0c698f8d22dac3910ef60643b826132594bc742bdf92d0ba96435c3bd3e056990b095811e9599fb6ea7c80c2e5009a29e37cd42477bd61b9c6bf957bae4ba07a3be97f5170a79148afc21a918d000000b0246e6ceae3c85a1b12873d34b83b83aaf3504b59b82467b17f2ef31a170f7324c6afbbd727b6dec49fa1416da5cdcacb4fe1da65a630dd78d475e7f97516c07074651de0016fe70bd8306252335b93dbb6910e2f821b528768a0cebb9b5ed7b2e2124ab7f744308e3e2a135af0039d9f00820842fd64204faa8158bfe9b43da338d5efac914b1c69feef915f65a3b9841048bd3b277fb7d6ddeafddb7ae9d767fbfacb48ea435cb7e89002ae75028e8d000000b01ffaf982c3d708547d293f9ef43dd039ba968ae7cac6eed815489548fcc19c21a7a8aa1e5792ae5d6e0cf729f6c715137bb407b4eaea60a757eff18237f06a911b1b2f08d4dc9ddf5c6eec38072c5e529421286b2aaa8740cffbacec15b75df4c8df25ff72d696bfee3f0250622da08a243ea19136eca37f92397b43d102dbdaaa2b31876d4cd273853b0a4e9914b3e11d023bc06780cb6f35ba4409f26e146e8f201c18b61de70366fdef667879068a0000021c000000b00514d2664b8023eb6ad419a84f90bebb848821277ea40a5d1110a3df419a6746e23f782c2a30c93fbf8bfe9325a61d944c193ddd916a6c4cd9c9adf393ae99ce9916e3850607c4c476ad0a69c5b4309308756cf40ca98dc8389df11733e096cdae8b1ddc02e680916a726f8e9c3b85d2128f787a6a0fbd787b123231b9b2fb863906d1dd11edf761d68467358740647c07158a00d8c0c31a265e38544a863576105df2c19f06b13f2785a5231e23a928000000b026d773b8b85ac98b71428586b2c6ebd5d5d0734d494aaba1fdf7419f2b29db4e6c93406e719c649be711474f8e8a0af0f744b8e21453efdd2e06bd72b65b4e6a6d96463a68ae115ffcd18ae63428fedb2052b359cfb578d7184fca79486cf0ed26148172fc7ec4995806e1672a37933416894a2e2bd1e7f7de9a10546d38e3d714b042f846ce05adce6268a5bb47c97318d0702d5c8695d5a8053ffabed4a4182cd06903d23ce1ec5bd335f3240ef919000000b02d3a82a076eb1c7f35330b33c39c485b585e3ed57464db422cfc5fb0593baa24ef9807aaea9ce3480e2c807be7a4e9e5bfad94de9eda4e0fd0a5a6069ee3df4f636bebf3b6ac651b59b2c0b2f48b78f736f129f4434b4eb9f0fd49e34c3dfee198b05b83d4ce2f27532b6eb16ec6387401902271deab418cf25835c064554dce3081d961a5ce9469c4221e105137bc081ff27f7e8f42255b1abffdfed854225cb27058eb8935e1a2b59e450f810583620000021c000000b015aaf00921cf4d8c793fc91222623a66cc5d7dfed1bd03b496b71a51cf80ee401ec6201b1a3714e2bb05b2490c78fd5d87279500364c0720bef720a2c3636c24ddb81644dd67d015619c7eaf242797202068942396f0c152358fb33e3206faf31d0d010889e624069f44dc7472cdd0eb2f69e9fa519859f5a4991a9bfb421c2f06ecccb5846cffa20ec14648ccea08260f532b13abc1d8bc54bd1adccfd6838502acd79aa9a46dd7b4007a5f4d594d1c000000b0253f3b69e62dd4e020eccf12d703a47b2a150d63c5f52f2d7fcde20f5497d95f11f296979a8fb26009cf3c664d7dac6c8a5ec2bb6f9e34f5160e752992ad65c56e8e4a484df9217baa33fb7e48f468a0887b39336d5a58ad81c138cdedca05a127459c07c91418cdda0aa520b50f20f3257f01ec0917b5af7ead0e991b514ad6b1b7d98e6da22af7d4756d0e03d5fe071b0c4934487ea4307c3e526f8f703ba2db1343ca0c7c7ea3f90a5687f2fcff78000000b0265673c6ba5f6bad445d6d8b84c1acc1cad648e52afe2eae8a752b4de52fff139922cbe50e97b3d4f63780ee82bfbf73bd873342e714835a117f7ebed5d0f53b9cbd963d3c8407163375dabe73af98c1f5afc4afedfa998f7a614336892e072a5ede85f783c8daf7f0ae6b9317a6abf1006ae478c360c9c863b4a314e4a134292a6355ed49267df7e8f9dcbf76a793e722a861911d66c5916d2e29c5871c346be0630b394e98a58a760f5735811647bf0000021c000000b01d1ddbf1ea99f7b3eacea22f084ceba4ec7c9e960f8d1ee9acbbae9247a41db0907683a172391b4f68c04a3679dbd55da2c1fd4c45830f42049a7fdd385860c4c1c65493980415340cec8ca81915a82cf2dcc3019911c18ff7c2335bc01d660dceb057949ac4a8afdf805d1f0c4da055226a14e024336583c31d94601fbee6b596745a0f694c65317d287a1534b1d1bd04b35bff57a5886369eb7fd8a25b78f387636bf6df988dfa21012727def0ff97000000b01c0052ba02016d51b7879d428fc699510305ce4ae854116c4afb30ae7b39586c1fd87db1b342d101b5845de935627f661c6d6de78d012326630538ccbea8cf845bab55a55b381d159b753a8e4ac549b4a8feadf77de8691de79de34426d628561bb0d7a708964cc44a3f18051a11000f131cb1f9b08a087f80b9509e2dd79a85c1b28d102a9e43673d4ef10c2d9505d0094ca691d27c0bce7e3842ade277a1c77a7f76717d03d124f6230085a76f0477000000b019c0b0f86a213bb87d83e925294d30f84f8351e20ba894c8a38dee26fd9800e29163ca9cc73aa77a19c2eb2cfa420a214dfada08200e958591965fa3eb48963829a0d18f7a9b816eb0fd53668963bab5a1dec6e8caa94c2a5c7b678962d5f788bffbf6642a382e714d8a6eaa90747d352777d39ca621fb066b1d82bb5e1fd58a99d7db07a9790505f5b1d0bf3951170a0890e92ccf162bba0deeae6f73f85bc5909586bba79913f17e9bcf91a40d5d080000021c000000b01f20a4c619ab6c8390b2377eb0f0f98a15ef412792201c2f86fc1510da4c8613d97f3df84068654a297f3932675db828c2711b21930c2c90055f07045b99a4b9de153318831c3677ea7b46cb4cc12a44dcdceecc64a452261a72da733c8298b885fb01b231e42c7e9b497f6a51e80dcf302040a11afc419cf0942b51fbacb8421b85886f0de9730fed7fd6e055dc6e5920ca2aca0a000c2634bf551189cad3f9f59307c7b18d74beb3370dc7afe7f5a5000000b00ce7018bfc8b4fc7c3cb1a79b8f993bcdcbc09a36e7e61fdc9e0d46a004f6dac86e4b7e3598f7f791d3d6d6cbae1967c3a193f617d5472452eaba9196d9b84599e29428ff9dda567e2dbff05ed3616585ab74f0e9d3046dc4d488bbef73d05f7f4f45b4deb087ebb29830dc6871d585e25227434e6802b5f3ead0f090758a40c643db0d9c3f7e5830205ba15293e30250ebd1473a390faa200969313c88241b8957a6b399fdd7e24e0675097404d76cd000000b00330608b25b661de93ac42a971472e703df90f58664eb1cf4967af5b5ca18dd89fffb2d5e44666d831e53bb24d9c6a2498859ffef3e4694646ef05c8e678161b9a16f10550d6119acf7555a98f1165cf4f5f69106f7c992617da23cba4f6f3a064212b2ae660cecf34783a7af7e2026d03b6afee17d3ec0dcfd032627027ad2cdaefd920a6d5882fe5a918d4c865be650133cfee9b99bec73dded7fb84753c76c3c9db0e42599dd9dc37ee499ed5f5520000021c000000b002e98064abaae5b13f41f29386b0e87215cf28213584503061fee470fe51022ed5688b1a7c0dd8d094e1b4fbfa4f21ef64d6cc75e6fe1cc2ab8b875cc3534633686eb40a02464daf77f1fd75a24a6697ea95887ade3ccc73b7cd36fa6bfa9055ba5573b618623286fbf24e5befc009b5076a538afb1c6f0ec0485622fb2a2bf7bb26b590c1a750bc39b9c051ba4535572e6af042e0cfc41c450c6ef9818cfa8d188cd4f422b2dedacd4720a2f0a9a750000000b02c5d031173a33372fd74d234b11491a66567f798cde203a87ede23d097a21e63fb061ad898f21e7919f04201ae67988492d31956668ac9e12b244ec536c2a8f52fdb1affcc75506169ede51ecaf8cfded348a6e8a069c2f0aff3c5e0d5e1e5e483bcdca2c23bc1f1417a0738fc804d65002cc0c5cb02724232867257e032709f7f468313ac6ab1d892fe5f0ecd6e55232e7d4cfa048c6589debd9417a2d9cfc63825b87e67bd786ec37dd90045941d9d000000b02a1c141081288239334a22d2ba81b3e30dbf589a46618b942752dcff501b39b7093df4133447f9bc8fe5a012b7f98e1418ebdb34c35865daf1b8c0d305ca9e0c5117d4316757607432ae4e5b6d10961a990b9363f7d51afaaef8e2b0b13facfb1bd0a1dd33ef5355341eb46b44524fc3160f918dfb776a536603c20d7cfd6c59a6d1ab3fa4ea8c53cb448642bd756a872b88e3c66f112012a43fddfb27561764894bb421671b772f289f4ba13fcfafce0000021c000000b01f59ee7c1cffd30a284ae7160395aab5b87f842354d69e2a58e5831b32130d3f84e3e2458d5b2f524cc9275e187c1a34908fa0aee74a95d4f1fd78f733c830e980059697bcca3c58f2c9ae8aac347e11482aba061fef572e1acf7c6bd7c512610c3fbea68cebc558a1daff4fc8bd95140c9dd8b967374ac7a10a1c6ac36a5c91adec4fdb65cd298ede79ef00e9960c202fff5c45e3254091000155cc9f5b3adc3e0de45a4b64866b03828f98292dc632000000b00a287d29c244fbd415091725e39ad91efdb4b5ab4adc18f1eb70bb2d3f5cbb2fd26d3aab5af4fabab8aa5ae19f1c83e862562cfdb8cb7472130e82e63eb2486ea4a877e2822f76f0952d960364eaa09a0ae0261353a61e408f3f29322b7bc682f3680f70aa3642d17ab845fc3d3441a22552ff2d37e612421e139f922790e58fac60ef012098370754ffe1860a54bd292f5bae18e5bad9700cdb5fb1c612825fb09b1ec0bc6063f958b176017dde7a5f000000b01e66ba2061415337ee25703ce7df84399284abe1d4c7f57a1131ff7fb61213a06285b87ee4619d4509eea1b2dcbb1344cbfe4d67ef2eeb56e84744b7c5648b3c6dc6733548547edd6c9e922d2924734d65e1ce305bacf329f49ec1bd2b246d88ed29b81859289c2fbbb5fa3614f395fd03299a039b41333813e473d8e7d58a565b137c5d450c7d6d6bebeb927424facc145a00474fd48cc0bfa5e39f62b469bba80f702b1591424cf11b27958308c4500000021c000000b01ea5131d14abdfbcc676350b0a62faf9978eaf51ec93cf3550785ad0303b25c7e70e5b882d561c9da74a4ae8465c9cdfd779b85a3dcf94ab9cb6f6fa37ca216e24b0a0e08c6f15048775e076d45baa4a4afe82b2e3015989122d13a2d82922838f6601837196605a6a0287d840bad6b22fa4ab48e5e6d4ed92e6ed373cbcc2c7e955eb927eeb19fda35951a122f882ce27b5ae743d696ba92ee42ab9f92028c24e16b3c45066aa270c73e35a2dec36c0000000b008da97564fcf8d2f015c1cdf4e92f380e0f08c38e2e0cd3781d9321880eaa37bf76053ca689d7e8202e5806fb8e6c10c748fd5e77e15b1e46ddfb0f2b9a346bf553132b75b442b3eea14a6db8927417cff2cacf7fef923f0864cbae168ca388d13efe956e2314474a7ba64676c7431e90165a8c133f53e5054b4a9790dffcf40ef338bcd93a7df229579ea7c47dd0ba8013493d4fc6af16d44aabcad9a7fb82c56baab4ec2e0f17e5d4ecb2e82c5ed49000000b00582467968f62ec79a27bad1964812d15d84a1d7807fbc5dcf1b148fbc179fef2ea200c369455b6a61405bb1be5935a217b09afaa04a5581e9f9b5c192e67ce859ed6ec7c1658ef4d6f3bbd601c5b3eb468a589b53b87cd2b124fef9b995fb5e175c72dd8da3f5f79caa4e46297b19d0078e8e8558c14cdd996f11ca48204b5b265a4b52d832018f0e62d6651a43db34187ab10c07f10be47951b2cb1a508e88fd28b8d0f7b92e495cbae1b721089c8a00000fa400000168000000b00cc32951c32e5cf9552227ef453952d5949cbb95935c992884aeb251e31a71162281c9ce3a1dc11c41a16c445e9fb9235dea1258c08ee8ee8aef0e5e533b82c937ab69c03d771e97555ade247cfd41c7babfef91b73af96d7bcefbc722cb5931d63068b1e101d25b811464fe000392261efecea4bcef266289374e9077956066e4c91507484e9d722a8b2a207d05c2f32ac91bf524e386258a3dd923218e9298472dc4c6120b70f78755414a45d14386000000b00088c715008e371cab96f7c6a7f67857b7a679664ed8f6f7d5a5e5be3e756ef8b35b3c0ec3c8bd60a9ee62f6ef0ff6d4b0b27d0872b9736921604ffc37b1c4f058151b9dc759b075b839e1fb7acb58b5ffaa2afd14fb3075a066499ce8408e3913dab8fdb1d3319cf0fb165d132bd8b91a339de1d291a2dadbda940f5d7b4219aea8c4090dc76137ae5a825f9c9fccfd21d03f731c3957a444ee72448a5caeee5276ab19181a39a5465e035b448ca0d600000168000000b0186b8606ec3c01d8afee739cce53da6685108a7d2a1e874129d23a7d97988cf910b89f169f0697d3223a665286235f7706f9e5d5cb8b4ccd96ea6ffd506925a4cfaebb8b4a1ceb080b4f9bf22f8d03b7dfa3a1621a9f1a885df5976744ab01c1a834b27117c5488e36e81870b63e542005d8590b659fc8d09e4af6823d957dbaa83cc410516e1bdec74a092b461ec0d71dbb1ae5ec73974fad1c2e7fe4183ed38a42f1ebdf027735f96cef7372a02c4c000000b00100c2d540e0ac203b805ea007de8db5c85fdfc82ef0f01be21275a162401852d3691581cc0317b3d3ea5238cb2488a4f5ada800d9d2944f8d970b90a7314dd705aa77aa43b7a3b8e09566284df4ce0bfce4933cd66202d1d512d8279fc0383825485cebe60ee14ba21c239105de8b260f59a31fec9e38b66527e7191b9695edf837d91628b768dd82e80e53ff5e4be322d19fb7a928e16df3e6cf38ceae4c9b05653c0330047d71897c07cfa84506d100000168000000b003c56c7bb2f83bd49be265b99bdab600441b9f44f32a87050910cfa03e00cc537e10cee604019697942c14103e1add6c56d8d09bae04b98105c4085e5f3ff923ab836997986efb9cf26f4c96e343f136ec8f57e41022b06649d153e4a44bebb545459f207c813810b32c09a54e44051c17b6f0453005c35e104a975a2958fa28123983155818feab981804bf9719d40e17b465eb9471fff333292000a6db5953ba7894eb648c183cf1efb9e10e0a234d000000b011770288ab4863bd2d16588b1031a06d572919c06a32b2c819d1e7185ee78e7dcf94d0171b5ae7b10cc9b272e9db2fa4266c7d0156f52584dc4e4dc9a2de1203ed3e19b32b4f121c93ecc53c7968e04ead92d19e3bdef7b0fafcefcf6e3326b58bd0b87b53ce1715c44e953dfac6b25f2b43ee2985df988e3c6a6a98e89cd552209e6f73613cdb026c24aef5e19ed3d70e21ec97ebf3dcd621ae192294aa731201ab08ca070e8a3f3d41d6b17681a2e500000168000000b02a9781585f03297dce8b744f2e5fc7b64ae9ba4578a18c69ff6f7cf099913c3870ca790afe08ac14d9181da0617440a5f45494368ec8454c54590fb0d34d5802d9fd799e588782e2f3d3e5048f33dbb6ad29725e3c52d7ea16a1101a8d014adf01289c19ce0c7f06424cf70ecea9df1610424e1f7149b1ee6b5e8f805fbac6e1b7521080b8e14769dba67a150637b2081f26d0315037cf471a6556adf31edcc4805e01cc9ab33fd957d2bab60f3445e0000000b0288757f8b8cca6f0b3c83806831c69dffa09244df4739b6fb2455a8fa7ac1710331b3fd8f94aaa1d1a0e24b4decd9c9d788c1589c1457f67ee38669ada6f392d202dac33fb821a867c3f63ecf1192518bfbaa4a1cc2285220082eeafe76211f93ef1d2d81ac83819e9aee7e7036fdf3d0be0c035f6d9ca4b52072cb58ee28e8aa40bc4f8be2df52b06a2c9045e92d47c14e55f069df3a3d7c561d3c0e4362c23b3caba995ad91b358da292b7c8b56c2000000168000000b0065359ecd042c1f3b5144bdc38431857fb338b2261a637129684f9468e5a86aa690fbfa4b39041070947b1c2c402d9815e6d3dca605ecbe361d38f7254d3143dcc3bbd9f00bf27ed9d00f30ddcf1743dcf526bf9c26a4d9837518312b5a321faf4a7b9e76ad6a2e33c0fa9fe838d8926211d5994fbb39b157f4edc2aa85cb2a0cf047043a3741b21157794e37a4ebd050f2610baeb6576ace5be9d96a85a1b30073208e9cc3507ca37d0f2db37f202c4000000b01935713f0fab6fd62ec364d077d4116a850634bedaa2b78d362e818b726026e4f2198da0cd2fa6ee8b3c37c96920ef4edabe71e75689bec4babcf74242759f981af4f983704d81d62f3743ae4fa307e7ef3fafec62cee5f85f488fdf739c9f1a1f9d0cd59173f37136ee017e036e92a500078f55ee03f332797277234cbd096dd4220d97fbaf425932be462893c9dc282ef45b8abc509e919c400c3d64fd305e79e814dfeeaa30261b0e56f3435ae76e00000168000000b001e73025a2bb24e78269f10cdb93aa5c3db17ddb53a0e05855d7df4f74229683db90719d4b3d6742e277d7686b2e71688397aaf1b9f33a54719f2831581c5a61285d5c0e49b15f4dc0b9deabb09e6bac7a52a70e60a3d156f1d4733707495626343b22fc51a397b5790bc0a91a2e2c2420163775e761d5fd0c11f4c2837fbe1f869732939036aac6aa2d7717ef373d2606b935a4fff47ca96c1fa4392e849b144cff4b5e78bfe861b1adbc0c30eee352000000b0146e7384bec12a88ab1134a3b07777d6516f0123dca817450c86dc2548c07080b0c18f3a7b5e728e51d01635c2df0a0d62cd5d6bf06bbf4719b89f60ad58efe29b90f10e7f32624dc0c493a82d94f3609fa919b0b2d48b1d0ebb751ee912c51591f13b0481bb78f92a65167ccb205dbe1b6687b21a0a884eaaa00fd2fedb86089495127e9bce26d3f1e57a329a980ec82529f55f5bfbd921b8374b49ccdf541d2f9cb3fe4a358b37ccd2a21f6f3ff1ef00000168000000b02c8e44ab4c19b9d45a5276689ff992bdbaee58d81dcf33f7d9935e6030214434758ff625eed85961c991476fa994453845ad95d854feecdd2a90b131b5ec304298178ebb4e4f3714c009a5de4f956635e8afc09ec28945e80357900e58cba59a40e9f45b817b393deeffd44b2570b54c06b73879117a3d835059bed656415ec644a6bad07c02ecaa4390a45e0f0dad63029087b6545c80d7a7d764041bca7abc6510c732c96978e3d22c645bd56ae318000000b00c12d3b85ed54363fd6109bc63a7af2f9e5fb640c909a0e2fad176397097e376c318cb5ac6034372f35b3cb44d0bfa633c000494a096bd50cda713111195f4a4d1ea732eb87b99541232d1117b81857e004e0186f5801e27d0fe32c795b4d4a648658fa7c8b00088675fa8315de9399d02e622518122c75f4e8f0f1bee258cd94a1a935dd347806586b473aa2b78ac940423ce8abc1344f4c145243c65f85c6a74d0c2e7f90c592fe6e7fb3b8fc3e3ac00000168000000b02f8e1ed74128566fe2477292aac9af8180558b2ea63bcf36d8a5418bccc4e44b65ec151f972d5b27f21ae377e3e0550c018723b401d5d71d29f7ad5cf893dca60f7b953fa86f9e9e0b7468e956a62c6c19f29ec66f22f3615d55a6fa9bc4ef27bb6e61d5239a66d129080428d2b779ba08e6c14e1916222d938d654b81a607ecb56f062ef1b13e303044e61e175eeec70e577b2564218e82313cdacac0ed39da42e7130f8b58b3a37a3f1d548e1990b3000000b0148e0f8d994dba069f604cf54f9c1278514b27b319106c02a744f64fba5c71826d713919d67985f09c631812ff1e1db4d3b77d32b152414d0c8fab82511c2a8ec26abeda02133c79b59ed4b1e5fb339b9a2c83cec53e50b1cd6808cd4b77e31fa6c91d4975fd3c82b411f59d998da93021012802c335be7e5c1f8370015749a8db11a18bd2775d1f3b96f9e93d6e95f71052218c97a59b29a4980264a3215523423a55ff435ba6ffeba608ecb34c135900000168000000b023fccff1472477e6e0d5be51e4bd71d0ad1c967a41832088add7fa421aa6b3c53b91df52bbbd88f1ad07463002490f647974c04769e7fc0960c3e63845e121fc3dd8b54cb2101341efd1856253fe4bed4f226c06edb927b479c4744f285f8e879f79dfbee5a11f80e4ea159e6b60209a24a37c69b337cb296a8d566850c0ed5af15c8a15bd1aa6efc102271b7e48e0f21a949ded5f747ed70d7a1449a132f4a79ed9f698e3d9fa811454b0919dfe0d89000000b004bdae4eca7b4970e29be85a626b061a75b9b0a9045129c4b8882033d25c878da8e867363d0b843fa6e36610acf3f01ffaaf0ad9255ebbfb3cf8459b4a64184eab73a7d4aedf08275cb4658eec2c616f77cac54ff6fd3142589780c767035791858c34bfd1d5b5b43f2ba2ddadf7714c2367f618d96d0f5ece8553b2eb8d190ba2e8bb887e93e64ac5f39e15f113748e07c61a059af10ca0158132993e416ca09b3db10fc1123687d69c36c9da4d0c1e00000168000000b0068e86301f4582af17b6db20312a669e0cba844da4ec67c283d775026a57311b8d485d62d8a1401c75aeec6378aecfad0a661eaf2482931420ba578f4eae79bcc7f24bd807e1585edfeeb52baef285c9f196d493772bf6f49b6b1601b9a1bbb60e00261eb48400911851013be88406fa0ac08b74e05e4fb4bf75e95c67f59c238fdd98927915ba496c19ccafdfcad32c0f66b24303e18431d2b40b279c55867e769bc5cf06f901ff10edd7682ae6dead000000b00bfe52b0afc38bea53c2ff7e69adf229050bc6fe771a1abda4c620a8e872b516cc075a2bb85613486fc19ab3e568ef164a20743aa094f11240985376af267fa25c0003d934f3388385eeeb6b8e7479079fef994e6735d4f73ed5ff53134762a0827ce9448f810e204c451fa94c6a6dfb24be20289ef5b2bd1c312212274904e6c91343e3cb5c6459b4d544d8bd9a88631830c79ab2b436a728ec6b127b2b1f1a0483cd47786065caca28e47a1b9eb80200000168000000b01776d13a3609f22999d9527ec0722a1ff96c59610374d5ee3063f696782948f4f26350f8a96d406fd531f6a629577a0cd9de97890322a974bc15a7e8345d23fb5066054a97fab498d418fbc46604bba0a8df7cb0ba2391b17df804de2ad203c494a53f8c2abcc21701bafc233c66695e208c1c980f2d3740a6a675ea577ff4e3e5a5ea6774e5a2d4767842e7112083ee088f5402e9deb940a6597b0995d17761d023190abac508e1ec7178bc5a4f19af000000b0299862262b08b127f9d65d5fce6a98f4167631d0a7fc23842bdc4f150920685a977f4aeefc5a47f85f22aa40e06e806aa97660cfad6c8b39655286ceb0db64b3bf5b9867f4f0d82cf20610feb20ec1de81d1a9954dcf242afd183431dba4b65b367e3c8b6a9532d5f4d27cd4c72c0a1e29e83d1fe084c239f992e4852745c00f6fc8a5b5624a3034a1f71628feb955f801d494e760943ce8941122af322a14cc9891950959e8f8bedb247cf932bbb804", - "txsEffectsHash": "0x03f253bb6987212f264c5616928f66c956c0f948d84017b68e1dddf871942a41", + "archive": "0x1ba503ae8f13b59815a58d204ca967063570ef165cb4d87b7609bce726f51410", + "body": "0x00000010151de48ca3efbae39f180fe00b8f472ec9f25be10b4f283a87c6d7839353703914c2ea9dedf77698d4afe23bc663263eed0bf9aa3a8b17d9b74812f185610f9e1570cc6641699e3ae87fa258d80a6d853f7b8ccb211dc244d017e2ca6530f8a12806c860af67e9cd50000378411b8c4c4db172ceb2daa862b259b689ccbdc1e005f140c7c95624c8006774279a01ec1ea88617999e4fe6997b6576c4e1c7395a22048b96b586596bd740d0402e15f5577f7ceb5496b65aafc6d89d7c3b34924b0c3f2d50d16279970d682cada30bfa6b29bc0bac0ee2389f6a0444853eccaa932b2a60561da46a58569d71044a84c639e7f88429826e5622581536eb906d9cdd25a2c0a76f7da6924e10751c755227d2535f4ad258b984e78f9f452a853c52300e212d8e2069e4254d81af07744bcbb81121a38f0e2dbed69a523d3fbf85b75c287ca6f33aadbac2e4f058e05924c140d7895a6ed167caf804b710d2ae3ba62b1b51297b3ea37637af6bd56cf33425d95cc5c96e9c2ee3077322fbec86a0c7f32c15d2a888c6cc122e99478c92470a1311635142d82ad7ae67410beeef4ae31f0902ba2fb964922a4610bb18901f7b923885c1d034da5769a48203ae6f0206a92855e2c01ddb3d6553386b5580d681b8230fa4062948668f834f23e0636eaff70aaa64519aafdf4b040bd2f9836e76b9dc13cfec8065dcdf2834d786e06260d100000004380000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000014100000000000000000000000000000000000000000000000000000000000001420000000000000000000000000000000000000000000000000000000000000143000000000000000000000000000000000000000000000000000000000000014400000000000000000000000000000000000000000000000000000000000001450000000000000000000000000000000000000000000000000000000000000146000000000000000000000000000000000000000000000000000000000000014700000000000000000000000000000000000000000000000000000000000001480000000000000000000000000000000000000000000000000000000000000149000000000000000000000000000000000000000000000000000000000000014a000000000000000000000000000000000000000000000000000000000000014b000000000000000000000000000000000000000000000000000000000000014c000000000000000000000000000000000000000000000000000000000000014d000000000000000000000000000000000000000000000000000000000000014e000000000000000000000000000000000000000000000000000000000000014f0000000000000000000000000000000000000000000000000000000000000150000000000000000000000000000000000000000000000000000000000000015100000000000000000000000000000000000000000000000000000000000001520000000000000000000000000000000000000000000000000000000000000153000000000000000000000000000000000000000000000000000000000000015400000000000000000000000000000000000000000000000000000000000001550000000000000000000000000000000000000000000000000000000000000156000000000000000000000000000000000000000000000000000000000000015700000000000000000000000000000000000000000000000000000000000001580000000000000000000000000000000000000000000000000000000000000159000000000000000000000000000000000000000000000000000000000000015a000000000000000000000000000000000000000000000000000000000000015b000000000000000000000000000000000000000000000000000000000000015c000000000000000000000000000000000000000000000000000000000000015d000000000000000000000000000000000000000000000000000000000000015e000000000000000000000000000000000000000000000000000000000000015f0000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000001620000000000000000000000000000000000000000000000000000000000000163000000000000000000000000000000000000000000000000000000000000016400000000000000000000000000000000000000000000000000000000000001650000000000000000000000000000000000000000000000000000000000000166000000000000000000000000000000000000000000000000000000000000016700000000000000000000000000000000000000000000000000000000000001680000000000000000000000000000000000000000000000000000000000000169000000000000000000000000000000000000000000000000000000000000016a000000000000000000000000000000000000000000000000000000000000016b000000000000000000000000000000000000000000000000000000000000016c000000000000000000000000000000000000000000000000000000000000016d000000000000000000000000000000000000000000000000000000000000016e000000000000000000000000000000000000000000000000000000000000016f00000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000000171000000000000000000000000000000000000000000000000000000000000017200000000000000000000000000000000000000000000000000000000000001730000000000000000000000000000000000000000000000000000000000000174000000000000000000000000000000000000000000000000000000000000017500000000000000000000000000000000000000000000000000000000000001760000000000000000000000000000000000000000000000000000000000000177370000000000000000000000000000000000000000000000000000000000000240000000000000000000000000000000000000000000000000000000000000024100000000000000000000000000000000000000000000000000000000000002420000000000000000000000000000000000000000000000000000000000000243000000000000000000000000000000000000000000000000000000000000024400000000000000000000000000000000000000000000000000000000000002450000000000000000000000000000000000000000000000000000000000000246000000000000000000000000000000000000000000000000000000000000024700000000000000000000000000000000000000000000000000000000000002480000000000000000000000000000000000000000000000000000000000000249000000000000000000000000000000000000000000000000000000000000024a000000000000000000000000000000000000000000000000000000000000024b000000000000000000000000000000000000000000000000000000000000024c000000000000000000000000000000000000000000000000000000000000024d000000000000000000000000000000000000000000000000000000000000024e000000000000000000000000000000000000000000000000000000000000024f0000000000000000000000000000000000000000000000000000000000000250000000000000000000000000000000000000000000000000000000000000025100000000000000000000000000000000000000000000000000000000000002520000000000000000000000000000000000000000000000000000000000000253000000000000000000000000000000000000000000000000000000000000025400000000000000000000000000000000000000000000000000000000000002550000000000000000000000000000000000000000000000000000000000000256000000000000000000000000000000000000000000000000000000000000025700000000000000000000000000000000000000000000000000000000000002580000000000000000000000000000000000000000000000000000000000000259000000000000000000000000000000000000000000000000000000000000025a000000000000000000000000000000000000000000000000000000000000025b000000000000000000000000000000000000000000000000000000000000025c000000000000000000000000000000000000000000000000000000000000025d000000000000000000000000000000000000000000000000000000000000025e000000000000000000000000000000000000000000000000000000000000025f0000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000026100000000000000000000000000000000000000000000000000000000000002620000000000000000000000000000000000000000000000000000000000000263000000000000000000000000000000000000000000000000000000000000026400000000000000000000000000000000000000000000000000000000000002650000000000000000000000000000000000000000000000000000000000000266000000000000000000000000000000000000000000000000000000000000026700000000000000000000000000000000000000000000000000000000000002680000000000000000000000000000000000000000000000000000000000000269000000000000000000000000000000000000000000000000000000000000026a000000000000000000000000000000000000000000000000000000000000026b000000000000000000000000000000000000000000000000000000000000026c000000000000000000000000000000000000000000000000000000000000026d000000000000000000000000000000000000000000000000000000000000026e000000000000000000000000000000000000000000000000000000000000026f00000000000000000000000000000000000000000000000000000000000002700000000000000000000000000000000000000000000000000000000000000271000000000000000000000000000000000000000000000000000000000000027200000000000000000000000000000000000000000000000000000000000002730000000000000000000000000000000000000000000000000000000000000274000000000000000000000000000000000000000000000000000000000000027500000000000000000000000000000000000000000000000000000000000002760200000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000341100000000000000000000000000000000000000000000000000000000000000540000000000000000000000000000000000000000000000000000000000000054a0000000000000000000000000000000000000000000000000000000000000541000000000000000000000000000000000000000000000000000000000000054b0000000000000000000000000000000000000000000000000000000000000542000000000000000000000000000000000000000000000000000000000000054c0000000000000000000000000000000000000000000000000000000000000543000000000000000000000000000000000000000000000000000000000000054d0000000000000000000000000000000000000000000000000000000000000544000000000000000000000000000000000000000000000000000000000000054e0000000000000000000000000000000000000000000000000000000000000545000000000000000000000000000000000000000000000000000000000000054f00000000000000000000000000000000000000000000000000000000000005460000000000000000000000000000000000000000000000000000000000000550000000000000000000000000000000000000000000000000000000000000054700000000000000000000000000000000000000000000000000000000000005510000000000000000000000000000000000000000000000000000000000000548000000000000000000000000000000000000000000000000000000000000055200000000000000000000000000000000000000000000000000000000000005490000000000000000000000000000000000000000000000000000000000000553000000000000000000000000000000000000000000000000000000000000054a0000000000000000000000000000000000000000000000000000000000000554000000000000000000000000000000000000000000000000000000000000054b0000000000000000000000000000000000000000000000000000000000000555000000000000000000000000000000000000000000000000000000000000054c0000000000000000000000000000000000000000000000000000000000000556000000000000000000000000000000000000000000000000000000000000054d0000000000000000000000000000000000000000000000000000000000000557000000000000000000000000000000000000000000000000000000000000054e0000000000000000000000000000000000000000000000000000000000000558000000000000000000000000000000000000000000000000000000000000054f0000000000000000000000000000000000000000000000000000000000000559000011000000021c000000b02d622c8b62e54bf51a1fd35b67456b229dae3bc6126977f1b2d88662a3418347a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb6a83e0eb61b97deda6e3f6e57e02e3e50f41a6c05d9d508147d543e0d9fbbe858c33d4e6a2185f8c0152162e19e296fff1a7e1664c5c8194faf05fc0450c5725c0de96009000000b014b645af1d3b7df259bc545d7f52bc412546986a5f76ff3b331cb8dbddf1c9c2ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb6ac3e0eb602ebf7fe2895a0551fcabf530c27bd24616d64b8ca61c55720001ad1fded94e508da11e3cf7794deddc5f101328b67834d6075f3fc13834dd109a4d54899a684000000b02c6ead45b8c3501951a91b1618e165bcd512dd57263df715f742e0e908a2103eb03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb6b03e0eb61aa45f94c41d727c17b7860ba5b666a01139a9a59128bd31e42642df289ddb612092797a6aff6705d5b2b7b9cc1a10fefd2cbae0c2da7b28952fcce27349ed000000021c000000b013c2c6697319821691459c1830eeb6db5cab39fb734b7e5f77871362435256b9b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb6b43e0eb601f878b87e73a4795754070dbdc3b7be98d20649de36447b646a7558634e21dc07e6929e25559903154f38bbe427621d84c517850fe802721573ff5badfa337b000000b02b7b2e000ea1543d893262d0ca7d60570c777ee83a12763a3bad3b6f6e029d35b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb6b83e0eb619b0e04f19fb76a04f40cdc65752613a489e4b36a4fd3c5628909d658dfe68581f9efa34c0dd6b2a0d3bff747db60b9934915c71d6aefa4cd99a2768d8aa79f7000000b012cf4723c8f7863ac8cee3d2e28ab175940fdb8c871ffd83bbf16de8a8b2e3b0bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb6bc3e0eb60104f972d451a89d8edd4ec86f5fb258d036a7daf20ac39fa8d4cfdec8aeaed306f313587b339d274cd8807695c35cb7bc29b91623bc819659de59e2135ac0720000021c000000b02a87aeba647f5861c0bbaa8b7c195af143dc20794de6f55e801795f5d3632a2cc03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb6c03e0eb618bd61096fd97ac486ca158108ee5bd48002ecc7b8d1bb7a6cfaf7ebf35ef54f1eab7aef16bb6f4e44c5472f2f5206336bf5fe02ea8379711e0481ef3e0b06ee000000b011dbc7de1ed58a5f00582b8d9426ac0fcb747d1d9af47ca8005bc86f0e1370a7c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb6c43e0eb600117a2d2a2facc1c666968320fbacf3079b496c05df42c3ed3f2a652e0f3bca05ff9412d111a14b8461c831475f5751f38e5aa7379100ba9e48b46878bb4d69000000b029942f74ba5d5c85f844f2462db5558b7b40c20a61bb7482c481f07c38c3b723c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb6c83e0eb617c9e1c3c5b77ee8be535d3bba8a566eb7678e58cca63a9eb165527258bf82461db7fba96c9973727c4e8ee9e0ee00cda35a9f93fe57f895626edc75a36b93e50000021c000000b010e8489874b38e8337e1734845c2a6aa02d91eaeaec8fbcc44c622f57373fd9ecc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb6cc3e0eb62f82495a613f510fb64023f45418ffea6733d345936d3279758b7a7f836fc8c2050c14cd26efa56fbbeb0febf8fb51ec2af2fc384b657fdee2b30eeede1bda60000000b028a0b02f103b60aa2fce3a00df515025b2a5639b758ff3a708ec4b029e24441ad03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb6d03e0eb616d6627e1b95830cf5dca4f66c265108eecc2fe9e07ab9c2f5cfacf8be200f3d1cc47c63c2777796b3d7d6a49289fb67dabf4125122c77b9a6d936fc08cc20dc000000b00ff4c952ca9192a76f6abb02f75ea1443a3dc03fc29d7af089307d7bd8d48a95d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb6d43e0eb62e8eca14b71d5533edc96baf05b4fa849e9874d6a741b19db9f5d505e8d055b9041895877ccda993f37457a6aa974c8662579dc95f39ff03271d6975437c67570000021c000000b027ad30e9661964ce675781bb90ed4abfea0a052c896472cb4d56a5890384d111d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb6d83e0eb615e2e338717387312d65ecb11dc24ba32630d17af44f38e73a3a077f23809c341bd0fd1e18557bbaeb611e5f4425f6021223e2b62600f6ddeb4391826e2cadd3000000b00f014a0d206f96cba6f402bda8fa9bde71a261d0d671fa14cd9ad8023e35178cdc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb6dc3e0eb62d9b4acf0cfb59582552b369b750f51ed5fd1667bb1630c1fe602f8c4e30e2b003251641d2abadb82afd9f615c33472099bc3f5a730e7e276b87c3fba8dcf44e000000b026b9b1a3bbf768f29ee0c9764289455a216ea6bd9d38f1ef91c1000f68e55e08e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb6e03e0eb614ef63f2c7518b5564ef346bcf5e463d5d95730c0823b80b7ea4620588e1292b1add7dd86e337fdf22ea6619f5c1f09c4988844739d576022fadec08d38d3aca0000021c000000b00e0dcac7764d9aefde7d4a785a969678a9070361ea46793912053288a395a483e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb6e43e0eb62ca7cb8962d95d7c5cdbfb2468ecefb90d61b7f8ceeaafe642ca8a12b3916fa7023196fc2889b1dc6286e71c0dcf41bad120e0eb86e2fd4baff21e820e3d8145000000b025c6325e11d56d16d66a1130f4253ff458d3484eb10d7113d62b5a95ce45eaffe83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb6e83e0eb613fbe4ad1d2f8f799c787c2680fa40d794fa149d1bf8372fc30ebc8bee41b62219e9fe92c41184035a73add4a75deb3680ed25d84da9f5267418468f38edc7c1000000b00d1a4b81cc2b9f14160692330c329112e06ba4f2fe1af85d566f8d0f08f6317aec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb6ec3e0eb62bb44c43b8b761a0946542df1a88ea5344c65989e2bf2f0a8734e49918f1fc9e013e17b67e67b6009a102ed6bf6b3c550885827c9ab77c6ff45c7908739e0e3c0000021c000000b024d2b31867b3713b0df358eba5c13a8e9037e9dfc4e1f0381a95b51c33a677f6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb6f03e0eb613086567730d939dd401c3e132963b71cc5eb62e2fccb6540779171253a2431918f67f4d19ef882791fcf58f58f9e5d0b851c769617e744ab882a1159e4e54b8000000b00c26cc3c2209a3384d8fd9edbdce8bad17d0468411ef77819ad9e7956e56be71f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb6f43e0eb62ac0ccfe0e9565c4cbee8a99cc24e4ed7c2afb1af693ae2ecb9f3f1f7e528995004a9870d445ba24d1997691710736ef3fea240dae8bfb9438c6d38ed8fe9b33000000b023df33d2bd91755f457ca0a6575d3528c79c8b70d8b66f5c5f000fa2990704edf83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb6f83e0eb61214e621c8eb97c20b8b0b9be432360c03c357bf43a135784be37198b902d010180300076fcd8c4bc9863d4a0a95e06aefb668fa7552f36efcecfb9c03aee1af0000021c000000b00b334cf677e7a75c851921a86f6a86474f34e81525c3f6a5df44421bd3b74b68fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb6fc3e0eb629cd4db8647369e90377d2547dc0df87b38f9cac0a682d53100999a5e3b3168c2fbb679e0b555e72c1730402a42489e69f82ade73c19eb49c11323a92e5f282b000000b023533ea2e37804772c2110f02930ea449560b0aba9928ecbd3a6cb5f73909f15003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6003f0eb6112166dc1ec99be64314535695ce30a63b27f9505775b49c904dcc1f1e635d07170f80c1c5ab9070010f8504bc31db05271b0a8b8927729341575622690f6ea6000000b00aa757c69dce36746bbd91f2413e3b631cf90d4ff6a0161553eafdd8ae40e590043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6043f0eb6294158888a59f900ea1c429e4f9494a38153c1e6db444cc284b05562be3cb0b42f2f726e313bed8aa817744c75f83f026d46d3220cf60ab935b9df6608e8c25300000fa400000168000000b0225fbf5d3956089b63aa58aadacce4deccc5523cbd670df0181125e5d8f12c0c083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6083f0eb6109571ac44b02afe29b8c3a067a1e5c208ec1e8b2851d40c04f487dbf8ecf72f16838b91eb921f87e7b3f54e8e059020f4df2fc65a039202b5fe11df439908ce000000b009b3d880f3ac3a98a346d9acf2da35fd545daee10a7495399855585f13a172870c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb60c3f0eb6284dd942e037fd2521a58a5901308f3db8b86377ef18cbe6c91aafe9239d3dab2e3bf3288719f1aedfa0bc072794399ca4ab74b320ca89dd7a2439ec6e494f4a00000168000000b0216c40178f340cbf9b33a0658c68df790429f3cdd13b8d145c7b806c3e51b903103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb6103f0eb60fa1f2669a8e2f2261420b5b193de05c4050c01c3c265330495ee2625e4d842615900c4c417023ac1f3d3d093fa18abb2c43d1576dd81126fa686c65a8f995c5000000b008c0593b498a3ebcdad02167a47630978bc250721e49145ddcbfb2e57901ff7e143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6143f0eb6275a59fd36160149592ed213b2cc89d7f01d050902ed4b0b0d850a6f88fdcaa22d4873e2dcf7f5d3172a03c1d9303436dc101644349f0901be8e9472d3a9dc4100000168000000b02078c0d1e51210e3d2bce8203e04da133b8e955ee5100c38a0e5daf2a3b245fa183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb6183f0eb60eae7320f06c334698cb5315cad9daf677b561ad4ffad2548dc93ce8c3ae111d149c8d06974e27d056c684c3f13d855563a872e881ac904b3ed2c6ec0e5a22bc000000b007ccd9f59f6842e11259692256122b31c326f203321d9382212a0d6bde628c751c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb61c3f0eb62666dab78bf4056d90b819ce646884722781a69a16c1ca2f51ef64f5ee5e57992c54f49d32d5f9f74eb34b7c8acc2ed11374b7d54873882602f8eef9390a693800000168000000b01f85418c3af015080a462fdaefa0d4ad72f336eff8e48b5ce55035790912d2f1203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb6203f0eb60dbaf3db464a376ad0549ad07c75d590af1a033e63cf5178d233976f290e9e1413a90dc0ed2c2bf48e4fcc7ea2d97fef9b0d147995810f6f833d217273baafb3000000b006d95aaff546470549e2b0dd07ae25cbfa8b939445f212a6659467f243c3196c243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb6243f0eb625735b71e1d20991c841618916047f0c5ee6482b2a9649539659bf7c53bee4902b61755788b3fe1b863c93373c68296b4ad959665c48074a4763497f9e6af62f00000168000000b01e91c24690ce192c41cf7795a13ccf47aa57d8810cb90a8129ba8fff6e735fe8283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb6283f0eb60cc774959c283b8f07dde28b2e11d02ae67ea4cf77a3d09d169df1f58e6f2b0b12b58e7b430a3018c5d9143954757a89d271b60aa9558e93c7a77bf8d91b3caa000000b005e5db6a4b244b29816bf897b94a206631f0352559c691caa9fec278a923a6632c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb62c3f0eb6247fdc2c37b00db5ffcaa943c7a079a6964ae9bc3e6ac877dac41a02b91f71872a6df611de92023fbdc5daf1ee042405823dfaf7701c866e8bcda40603cb832600000168000000b01d9e4300e6ac1d507958bf5052d8c9e1e1bc7a12208d89a56e24ea85d3d3ecdf303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb6303f0eb60bd3f54ff2063fb33f672a45dfadcac51de346608b784fc15b084c7bf3cfb80211c20f3598e8343cfd625bf40611752409d6579bbd2a0db80c11d67f3e7bc9a1000000b004f25c24a1024f4db8f540526ae61b006954d6b66d9b10eeee691cff0e84335a343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6343f0eb6238c5ce68d8e11da3753f0fe793c7440cdaf8b4d523f479c1f2e74891e7ffe7e297a76cc34700663f54f22ac9fa01e9fb9a29c8883f10592d037fe8c692c101d00000168000000b01caac3bb3c8a2174b0e2070b0474c47c19211ba3346208c9b28f450c393479d6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb6383f0eb60ae0760a47e443d776f072009149c55f5547e7f19f4ccee59f72a702593044f910ce8fefeec6386134eba3aeb7ad6fbe413af92cd0fe8cdc507c3105a3dc5698000000b003fedcdef6e05371f07e880d1c82159aa0b97847816f901332d3778573e4c0513c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb63c3f0eb62298dda0e36c15fe6edd38b92ad86edb05142cde6613c6c06398cf0f83e08b752886f7868a4e0a882cd86a67513c1939f1073e1997c584b714a25912ce8c9d1400000168000000b01bb7447592682598e86b4ec5b610bf165085bd34483687edf6f99f929e9506cd403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb6403f0eb609ecf6c49dc247fbae79b9bb42e5bff98cac8982b3214e09e3dd0188be90d1f00fdb10aa44a43c856c74eb6969496a58789f9abde4d30c0094e68b8c093ce38f000000b0030b5d994cbe57962807cfc7ce1e1034d81e19d895440f37773dd20bd9454d48443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb6443f0eb621a55e5b394a1a22a6668073dc7469753c78ce6f79e845e4a8032995e941186c27937840e02c0eac6461b22202d813d4286bdfaaab9a03db590cb39933ed2a0b00000168000000b01ac3c52fe84629bd1ff4968067acb9b087ea5ec55c0b07123b63fa1903f593c4483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb6483f0eb608f9777ef3a04c1fe6030175f481ba93c4112b13c6f5cd2e28475c0f23f15ee70ee791649a8240a9a3fe33241ae564f2b0043c4ef8a78b24d950e6126e9d7086000000b00217de53a29c5bba5f9117827fba0acf0f82bb69a9188e5bbba82c923ea5da3f4c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb64c3f0eb620b1df158f281e46ddefc82e8e10640f73dd70008dbcc508ec6d841c4ea1a563269ff8fb360a12d09beaf9dcb4740e6e5fd0813bbf6e82ff9d770e1f994db70200000168000000b019d045ea3e242de1577dde3b1948b44abf4f00566fdf86367fce549f695620bb503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb6503f0eb60805f839497e50441d8c4930a61db52dfb75cca4daca4c526cb1b6958951ebde0df4121ef06044cddb877adecc815f8ce768dde00c7c0a491dbb4098d3fdfd7d000000b001245f0df87a5fde971a5f3d3156056946e75cfabced0d8000128718a4066736543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb6543f0eb61fbe5fcfe506226b15790fe93fac5ea9ab421191a191442d30d7dea2b402325a25ac79b58be816f4d374419766100908973522ccd3430223e1e168a5feae43f900000168000000b018dcc6a4940232058f0725f5cae4aee4f6b3a1e783b4055ac438af25ceb6adb2583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6583f0eb6071278f39f5c5468551590eb57b9afc832da6e35ee9ecb76b11c111beeb278d50d0092d9463e48f21310c2997e1d5a271ecd7f712050896d62259b1f395e8a74000000b00030dfc84e586402cea3a6f7e2f200037e4bfe8bd0c18ca4447ce19f0966f42d5c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb65c3f0eb61ecae08a3ae4268f4d0257a3f1485943e2a6b322b565c351754239291962bf5124b8fa6fe1c61b190afd895217ac03a2ce99c45de7178148264bc32c640ed0f0380000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000018100000000000000000000000000000000000000000000000000000000000001820000000000000000000000000000000000000000000000000000000000000183000000000000000000000000000000000000000000000000000000000000018400000000000000000000000000000000000000000000000000000000000001850000000000000000000000000000000000000000000000000000000000000186000000000000000000000000000000000000000000000000000000000000018700000000000000000000000000000000000000000000000000000000000001880000000000000000000000000000000000000000000000000000000000000189000000000000000000000000000000000000000000000000000000000000018a000000000000000000000000000000000000000000000000000000000000018b000000000000000000000000000000000000000000000000000000000000018c000000000000000000000000000000000000000000000000000000000000018d000000000000000000000000000000000000000000000000000000000000018e000000000000000000000000000000000000000000000000000000000000018f0000000000000000000000000000000000000000000000000000000000000190000000000000000000000000000000000000000000000000000000000000019100000000000000000000000000000000000000000000000000000000000001920000000000000000000000000000000000000000000000000000000000000193000000000000000000000000000000000000000000000000000000000000019400000000000000000000000000000000000000000000000000000000000001950000000000000000000000000000000000000000000000000000000000000196000000000000000000000000000000000000000000000000000000000000019700000000000000000000000000000000000000000000000000000000000001980000000000000000000000000000000000000000000000000000000000000199000000000000000000000000000000000000000000000000000000000000019a000000000000000000000000000000000000000000000000000000000000019b000000000000000000000000000000000000000000000000000000000000019c000000000000000000000000000000000000000000000000000000000000019d000000000000000000000000000000000000000000000000000000000000019e000000000000000000000000000000000000000000000000000000000000019f00000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000001a100000000000000000000000000000000000000000000000000000000000001a200000000000000000000000000000000000000000000000000000000000001a300000000000000000000000000000000000000000000000000000000000001a400000000000000000000000000000000000000000000000000000000000001a500000000000000000000000000000000000000000000000000000000000001a600000000000000000000000000000000000000000000000000000000000001a700000000000000000000000000000000000000000000000000000000000001a800000000000000000000000000000000000000000000000000000000000001a900000000000000000000000000000000000000000000000000000000000001aa00000000000000000000000000000000000000000000000000000000000001ab00000000000000000000000000000000000000000000000000000000000001ac00000000000000000000000000000000000000000000000000000000000001ad00000000000000000000000000000000000000000000000000000000000001ae00000000000000000000000000000000000000000000000000000000000001af00000000000000000000000000000000000000000000000000000000000001b000000000000000000000000000000000000000000000000000000000000001b100000000000000000000000000000000000000000000000000000000000001b200000000000000000000000000000000000000000000000000000000000001b300000000000000000000000000000000000000000000000000000000000001b400000000000000000000000000000000000000000000000000000000000001b500000000000000000000000000000000000000000000000000000000000001b600000000000000000000000000000000000000000000000000000000000001b7370000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000028100000000000000000000000000000000000000000000000000000000000002820000000000000000000000000000000000000000000000000000000000000283000000000000000000000000000000000000000000000000000000000000028400000000000000000000000000000000000000000000000000000000000002850000000000000000000000000000000000000000000000000000000000000286000000000000000000000000000000000000000000000000000000000000028700000000000000000000000000000000000000000000000000000000000002880000000000000000000000000000000000000000000000000000000000000289000000000000000000000000000000000000000000000000000000000000028a000000000000000000000000000000000000000000000000000000000000028b000000000000000000000000000000000000000000000000000000000000028c000000000000000000000000000000000000000000000000000000000000028d000000000000000000000000000000000000000000000000000000000000028e000000000000000000000000000000000000000000000000000000000000028f0000000000000000000000000000000000000000000000000000000000000290000000000000000000000000000000000000000000000000000000000000029100000000000000000000000000000000000000000000000000000000000002920000000000000000000000000000000000000000000000000000000000000293000000000000000000000000000000000000000000000000000000000000029400000000000000000000000000000000000000000000000000000000000002950000000000000000000000000000000000000000000000000000000000000296000000000000000000000000000000000000000000000000000000000000029700000000000000000000000000000000000000000000000000000000000002980000000000000000000000000000000000000000000000000000000000000299000000000000000000000000000000000000000000000000000000000000029a000000000000000000000000000000000000000000000000000000000000029b000000000000000000000000000000000000000000000000000000000000029c000000000000000000000000000000000000000000000000000000000000029d000000000000000000000000000000000000000000000000000000000000029e000000000000000000000000000000000000000000000000000000000000029f00000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000002a100000000000000000000000000000000000000000000000000000000000002a200000000000000000000000000000000000000000000000000000000000002a300000000000000000000000000000000000000000000000000000000000002a400000000000000000000000000000000000000000000000000000000000002a500000000000000000000000000000000000000000000000000000000000002a600000000000000000000000000000000000000000000000000000000000002a700000000000000000000000000000000000000000000000000000000000002a800000000000000000000000000000000000000000000000000000000000002a900000000000000000000000000000000000000000000000000000000000002aa00000000000000000000000000000000000000000000000000000000000002ab00000000000000000000000000000000000000000000000000000000000002ac00000000000000000000000000000000000000000000000000000000000002ad00000000000000000000000000000000000000000000000000000000000002ae00000000000000000000000000000000000000000000000000000000000002af00000000000000000000000000000000000000000000000000000000000002b000000000000000000000000000000000000000000000000000000000000002b100000000000000000000000000000000000000000000000000000000000002b200000000000000000000000000000000000000000000000000000000000002b300000000000000000000000000000000000000000000000000000000000002b400000000000000000000000000000000000000000000000000000000000002b500000000000000000000000000000000000000000000000000000000000002b60200000000000000000000000000000000000000000000000000000000000003800000000000000000000000000000000000000000000000000000000000000381100000000000000000000000000000000000000000000000000000000000000580000000000000000000000000000000000000000000000000000000000000058a0000000000000000000000000000000000000000000000000000000000000581000000000000000000000000000000000000000000000000000000000000058b0000000000000000000000000000000000000000000000000000000000000582000000000000000000000000000000000000000000000000000000000000058c0000000000000000000000000000000000000000000000000000000000000583000000000000000000000000000000000000000000000000000000000000058d0000000000000000000000000000000000000000000000000000000000000584000000000000000000000000000000000000000000000000000000000000058e0000000000000000000000000000000000000000000000000000000000000585000000000000000000000000000000000000000000000000000000000000058f00000000000000000000000000000000000000000000000000000000000005860000000000000000000000000000000000000000000000000000000000000590000000000000000000000000000000000000000000000000000000000000058700000000000000000000000000000000000000000000000000000000000005910000000000000000000000000000000000000000000000000000000000000588000000000000000000000000000000000000000000000000000000000000059200000000000000000000000000000000000000000000000000000000000005890000000000000000000000000000000000000000000000000000000000000593000000000000000000000000000000000000000000000000000000000000058a0000000000000000000000000000000000000000000000000000000000000594000000000000000000000000000000000000000000000000000000000000058b0000000000000000000000000000000000000000000000000000000000000595000000000000000000000000000000000000000000000000000000000000058c0000000000000000000000000000000000000000000000000000000000000596000000000000000000000000000000000000000000000000000000000000058d0000000000000000000000000000000000000000000000000000000000000597000000000000000000000000000000000000000000000000000000000000058e0000000000000000000000000000000000000000000000000000000000000598000000000000000000000000000000000000000000000000000000000000058f0000000000000000000000000000000000000000000000000000000000000599000011000000021c000000b017e9475ee9e03629c6906db07c80a97f2e1843789788847f08a309ac34173aa9603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6603f0eb6061ef9adf53a588c8c9ed8a60955aa626a3f0fc702734a9af5866ba2541305cc0c0d13939c1c4d164a9a0a542fb954c15632210234250891a68ff5a59ebf176b000000b02fa1aef585680850be7d3469160f52fadde488655e4f7c59ccc931b95ec78125643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb6643f0eb61dd7614490c22ab3848b9f5ea2e453de1a0b54b3c93a4275b9ac93af7ec34c4823c57b2a37a41f3d4286d10cc947fe3d05fe65eefaec006c6ab61db2c96f5de7000000b016f5c8193fbe3a4dfe19b56b2e1ca419657ce509ab5d03a34d0d64329977c7a0683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6683f0eb6052b7a684b185cb0c4282060baf1a4fca1a3b1581647c9bf39f0c628b97392c30b19944df1fa513a8223520ee1554f5b8d96c29347f987b5eafa502c041fa4620000021c000000b02eae2fafdb460c74f6067c23c7ab4d95154929f67223fb7e11338c3fc4280e1c6c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb66c3f0eb61ce3e1fee6a02ed7bc14e71954804e78516ff644dd0ec199fe16ee35e423d93f22d1fbe48d8223617a1018c77ae3f8d73d6307800ec07f90af2078392ecfeade000000b0160248d3959c3e7235a2fd25dfb89eb39ce1869abf3182c79177beb8fed85497703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb6703f0eb60437fb22a0f660d4fbb1681b6c8d9f96d90852e92a1c48e37e5b20af1ed41fba0a26150847d8555eb9ac99c992f149f5c4fb64245bce06da2f64aab269803159000000b02dbab06a312410992d8fc3de7947482f4cadcb8785f87aa2559de6c629889b13743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb6743f0eb61bf062b93c7e32fbf39e2ed4061c491288d497d5f0e340be428148bc4984663621de7c9ee3602785b19960822c7ff37174c7a9112294feb4f38ad2bf943077d50000021c000000b0150ec98deb7a42966d2c44e09154994dd446282bd30601ebd5e2193f6438e18e783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb6783f0eb603447bdcf6d464f9333aafd61e299a31106cf47a3df0c807c2c57b358434acb1093295c29db65982f135e184448d448ffc6005b56fa285fe73cf0538cee0be50000000b02cc73124870214bd65190b992ae342c984126d1899ccf9c69a08414c8ee9280a7c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb67c3f0eb61afce373925c37202b27768eb7b843acc039396704b7bfe286eba342aee4f32d20eafd59393e2ba9e922a83cde1bee0bac2c4aa236697dd937f52d45f99104cc000000b0141b4a48415846baa4b58c9b42f093e80baac9bce6da81101a4c73c5c9996e85803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb6803f0eb60250fc974cb2691d6ac3f790cfc594cb47d1960b51c5472c072fd5bbe99539a8083f167cf3945da728bf293ef6293f2a33c4a74683770522b8395fbf34414b470000021c000000b02bd3b1dedce018e19ca25353dc7f3d63bb770ea9ada178eade729bd2f449b501843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb6843f0eb61a09642de83a3b4462b0be4969543e46f79ddaf8188c3f06cb55fdc9144580241ff77e138f1c2fce20abeff78fb7e8a5e390ec334a3dfcfd7c5f87cc5ef191c3000000b01327cb0297364adedc3ed455f48c8e82430f6b4dfaaf00345eb6ce4c2ef9fb7c883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6883f0eb6015d7d51a2906d41a24d3f4b81618f657f36379c6599c6504b9a30424ef5c69f074b9737497261cb604870f9a7c539c46b2948d7974b8446fca3ba4599a1d83e000000b02ae0329932be1d05d42b9b0e8e1b37fdf2dbb03ac175f80f22dcf65959aa41f88c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb68c3f0eb61915e4e83e183f689a3a06041af038e12f027c892c60be2b0fc0584f79a60d1b1f03fecde4fa33f2583537b24153e3401af58dc45e127c21c0c9e252c4521eba0000021c000000b012344bbced144f0313c81c10a628891c7a740cdf0e837f58a32128d2945a8873903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb6903f0eb60069fe0bf86e7165d9d6870632fd89ffb69ad92d796e457490048ac8b4565396065817f19f5065ef97d1b8b45961345ea28dea68ab20036b410e14cbff026535000000b029ecb353889c212a0bb4e2c93fb732982a4051cbd54a7733674750dfbf0aceef943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6943f0eb6182265a293f6438cd1c34dbecc8c337b66671e1a40353d4f542ab2d5df069a121e107f883ad838168fbe7f6cf2efddda525a2f5571e6fb4605343cd929b2abb1000000b01140cc7742f253274b5163cb57c483b6b1d8ae702257fe7ce78b8358f9bb156a983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb6983f0eb62fdacd392f7e15b3c9b01477661adcf71633630706fc352a1850dae309b6e08e056498abf52e6a13cf5b006f0afd2ef8d9f28bf9bef4828f85786f526462f22c0000021c000000b028f9340dde7a254e433e2a83f1532d3261a4f35ce91ef657abb1ab66246b5be69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb69c3f0eb6172ee65ce9d447b1094c95797e282e159dcbbfab5409bc7398950d5c446727091d1d004290b63c3ac747c727a48bd87489bed0e685bb7a6a499e975f8f1338a8000000b0104d4d3198d0574b82daab8609607e50e93d5001362c7da12bf5dddf5f1ba261a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb6a03f0eb62ee74df3855c19d801395c3217b6d7914d9804981ad0b44e5cbb35696f176d85047119664b0c6e3806e44829bc99299311572d8ad2c901b3c9e2c9d8c9c37f23000000b02805b4c8345829727ac7723ea2ef27cc990994edfcf3757bf01c05ec89cbe8dda43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6a43f0eb6163b67173fb24bd540d5dd342fc428afd530613c67de3b97dcff67e2a9c7b4001c2980fce694405efed10ee25627d30ec1237277998ff98e8e08f1e5f473c59f0000021c000000b00f59cdebeeae5b6fba63f340bafc78eb20a1f1924a00fcc570603865c47c2f58a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb6a83f0eb62df3ceaddb3a1dfc38c2a3ecc952d22b84fca6292ea53372a1258fefd477fa7c037d9a20a0ea725c3e6d8fe46e35242d48bbcf1be69d80d80e4d245f2f240c1a000000b0271235828a362d96b250b9f9548b2266d06e367f10c7f4a034866072ef2c75d4ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb6ac3f0eb61547e7d195904ff9785f24eee160234a0c9502cd7bb2babc2169c2690f2840f71b3601b73c724483365a569d07c3cda8f8881408ad6478b2d2734c6c59d45296000000b00e664ea6448c5f93f1ed3afb6c987385580693235dd57be9b4ca92ec29dcbc4fb03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb6b03f0eb62d004f6831182220704beba77aeeccc5bc6147ba4279b296e58fea7639d88773028a1adaf6c8768075f6d79f1fd11ec7802070acfa71fffc52b77ee5948499110000021c000000b0261eb63ce01431bae9da01b406271d0107d2d810249c73c478f0baf9548d02cbb43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb6b43f0eb61454688beb6e541dafe86ca992fc1de443f9a45e8f8739e065d41cef7488cdee1a428271925048a76de39e57b95fc8432fecb599c138f7d716dda6f2bf34df8d000000b00d72cf609a6a63b8297682b61e346e1f8f6b34b471a9fb0df934ed728f3d4946b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb6b83f0eb62c0cd02286f62644a7d533622c8ac75ff3c5e94b564e31bb29fa44fc9f39146a01969b954ca67aa4ad801f59d16d1961b785123e0e467f209721d96bf9e52608000000b0252b36f735f235df2163496eb7c3179b3f3779a13870f2e8bd5b157fb9ed8fc2bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb6bc3f0eb61360e946414c5841e771b4644498187e7b5e45efa35bb904aa3e7775d9e95ae5194f032be82e4ccba56ce6126afbc2dd6751572ad50d76fb5b48017924956c8400000fa400000168000000b00c7f501af04867dc60ffca70cfd068b9c6cfd645857e7a323d9f47f8f49dd63dc03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb6c03f0eb62b1950dcdcd42a68df5e7b1cde26c1fa2b2a8adc6a22b0df6e649f830499a16100a31c4fa2847ec8e5096714830913fbeee9b3cf221afe44db8c33f25f45b2ff000000b02437b7b18bd03a0358ec9129695f1235769c1b324c45720d01c570061f4e1cb9c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6c43f0eb6126d6a00972a5c661efafc1ef6341318b2c2e780b7303828eea8d1fc3f49e7dc185b83e63e0c50efdcf62dcd1c97bd779eb5f8bbe8e1f61f9fb25bff89f5f97b00000168000000b00b8bd0d546266c009889122b816c6353fe3477d69952f9568209a27f59fe6334c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb6c83f0eb62a25d19732b22e8d16e7c2d78fc2bc94628f2c6d7df73003b2cefa0969fa2e583013eb7cd9942316d4e2f485b62666f34e823da8afa8edfa63d8840cb4a63ff7000000b02344386be1ae3e279075d8e41afb0ccfae00bcc36019f131462fca8c84aea9b0cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb6cc3f0eb61179eabaed08608a568443d9a7d00db2ea278911cb04b74d33132c82a4aa74d3176804a093ea5514147f7587ce33b811d61a9a4cfcb67543e41cb685ef56867200000168000000b00a98518f9c047024d01259e633085dee35991967ad27787ac673fd05bf5ef02bd03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb6d03f0eb629325251889032b14e710a92415eb72e99f3cdfe91cbaf27f739548fcf5abb4f2f206c372f72273b0c6c3c4067c2618d85e6df39c37d6d1ea842de931a06ccee000000b02250b926378c424bc7ff209ecc970769e5655e5473ee70558a9a2512ea0f36a7d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb6d43f0eb610866b7542e664ae8e0d8b94596c084d218c2aa2ded93671777d87090a0b01ca1674855ae9c859384c08bd427fcfb2ac0d7f3bde108af4682887110c54b7136900000168000000b009a4d249f1e27449079ba1a0e4a458886cfdbaf8c0fbf79f0ade578c24bf7d22d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6d83f0eb6283ed30bde6e36d585fa524cf2fab1c8d1586f8fa5a02e4c3ba3af1634bb48462e2cecf185502b5f43f583fb195e5c27bd4b80cad751ec42ecad39197f6759e5000000b0215d39e08d6a466fff8868597e3302041cc9ffe587c2ef79cf047f994f6fc39edc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb6dc3f0eb60f92ec2f98c468d2c596d34f0b0802e758f0cc33f2adb595bbe7e18f6f6b8ec1158106153fa65d5c839204fd316bad4644e3dd6f245f738c6cf16b92ba17a06000000168000000b008b1530447c0786d3f24e95b96405322a4625c89d4d076c34f48b2128a200a19e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6e03f0eb6274b53c6344c3af9bd839a07a496ac6308bd1120b974ad70800e099c9a1bd53d2d396dabdb2e2f837b7ecbb5cafa56c1f4b0225beb266b673117939fe4c7e6dc000000b02069ba9ae3484a943711b0142fcefc9e542ea1769b976e9e136eda1fb4d05095e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb6e43f0eb60e9f6ce9eea26cf6fd201b09bca3fd8190556dc5068234ba00523c15d4cc1bb8148d86cf95846180bb1b4cb7e307a7e07c487f003833f2b0b15bc6191f782d5700000168000000b007bdd3be9d9e7c9176ae311647dc4dbcdbc6fe1ae8a4f5e793b30c98ef809710e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb6e83f0eb62657d4808a2a3f1df50ce1c25632a6fd4021b2b1cd492c94c4786422ff7c62342c45ee66310c33a7b30813707c96515c2c14c3ecfefaea8b7581ee264a2873d3000000b01f763b5539264eb86e9af7cee16af7388b934307af6bedc257d934a61a30dd8cec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb6ec3f0eb60dabeda44480711b34a962c46e3ff81bc7ba0f561a56b3de44bc969c3a2ca8af139a0789eb6265a4f2a4947294a3a27ab3ad20914c0871d4f5c6209f84d8ba4e00000168000000b006ca5478f37c80b5ae3778d0f9784857132b9fabfc79750bd81d671f54e12407f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb6f03f0eb62564553ae00843422c96297d07cea19777865442e11dabb908e2bea964dcef2b2b526f2086ea37cbea915b2b2e324bf66379657e12cf69afb9ec48acaf8900ca000000b01e82bc0f8f0452dca6243f899306f1d2c2f7e498c3406ce69c438f2c7f916a83f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb6f43f0eb60cb86e5e9a5e753f6c32aa7f1fdbf2b5ff1eb0e72e2b33028926f1229f8d35a612a68844414069c92a2ddc2d463f9d14eb11c2225fdcf0f93a307b25ea39474500000168000000b005d6d533495a84d9e5c0c08bab1442f14a90413d104df4301c87c1a5ba41b0fef83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb6f83f0eb62470d5f535e64766641f7137b96a9c31aeeaf5d3f4f22add4d4d192fca3d7c222a5eefdadcc83bf0221aa2e5dfce46909ade070f26a3e8d3fe56a33314e98dc1000000b01d8f3cc9e4e25700ddad874444a2ec6cfa5c8629d714ec0ae0ade9b2e4f1f77afc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb6fc3f0eb60bc4ef18f03c7963a3bbf239d177ed503683527841ffb226cd914ba904edc29d11b308fe971e6ded61b723e7f7db97af227663b373b1701d7e9ad5ac4f99d43c00000168000000b0054ae0036f4113f1cc6530d57ce7f80d18546677e12a139f912e7d6294cb4b2600400eb600400eb600400eb600400eb600400eb600400eb600400eb600400eb600400eb600400eb600400eb600400eb600400eb600400eb600400eb600400eb600400eb600400eb600400eb600400eb6237d56af8bc44b8a9ba8b8f26b0696cbe64f976508c6aa0191b773b62f9e0919296b709532a6401459a3eaa0916a412ad242a8a03a7867f842c0fdb97a4a1ab8000000b01d03479a0ac8e618c451f78e1676a188c820ab64a7f10b7a5554a56fbf7b91a204400eb604400eb604400eb604400eb604400eb604400eb604400eb604400eb604400eb604400eb604400eb604400eb604400eb604400eb604400eb604400eb604400eb604400eb604400eb604400eb60b38f9e91623087b8a606283a34ba26c044777b312dbd19642380765df775cc5112713cebd04fd05485b9431c9af4ccaf03a88ee448d8f8cf34191692a236e6400000168000000b0045760bdc51f181603ee78902e83f2a74fb90808f4fe92c3d598d7e8fa2bd81d08400eb608400eb608400eb608400eb608400eb608400eb608400eb608400eb608400eb608400eb608400eb608400eb608400eb608400eb608400eb608400eb608400eb608400eb608400eb608400eb622f1617fb1aadaa2824d293c3cda4be7b413bc9fd9a2c971065e2f730a27a34128df7b65588ccf2c40485aea633df646a006cddb0b548767b767b97654d3b4e0000000b01c0fc85460a6ea3cfbdb3f48c8129c22ff854cf5bbc58a9e99befff624dc1e990c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60c400eb60a457aa36c010c9fc1e9aa3e54e79d063bac194426b050ba86a261ec44d7e9bc1033948912e301297fe4dbec7b4b4765279f2a7f58620eb137abebef8f83fb5b00000168000000b00363e1781afd1c3a3b77c04ae01fed41871da99a08d311e81a03326f5f8c651410400eb610400eb610400eb610400eb610400eb610400eb610400eb610400eb610400eb610400eb610400eb610400eb610400eb610400eb610400eb610400eb610400eb610400eb610400eb610400eb621fde23a0788dec6b9d670f6ee764681eb785e30ed7748954ac889f96f88303827ebfc1fae6ad35077d1a2a514d9f0e0d76b6f6c1f29068bfbd213fcba3441d7000000b01b1c490eb684ee613364870379ae96bd36e9ee86cf9a09c2de295a7c8a3cab9014400eb614400eb614400eb614400eb614400eb614400eb614400eb614400eb614400eb614400eb614400eb614400eb614400eb614400eb614400eb614400eb614400eb614400eb614400eb614400eb60951fb5dc1df10c3f972f1f9068397a07310bad53a84cfdecb0cbc72aa3876b30f40154368c1054db76e23a72ce741ff5f03cc106c368dd57c164675f4e488523800000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000001c100000000000000000000000000000000000000000000000000000000000001c200000000000000000000000000000000000000000000000000000000000001c300000000000000000000000000000000000000000000000000000000000001c400000000000000000000000000000000000000000000000000000000000001c500000000000000000000000000000000000000000000000000000000000001c600000000000000000000000000000000000000000000000000000000000001c700000000000000000000000000000000000000000000000000000000000001c800000000000000000000000000000000000000000000000000000000000001c900000000000000000000000000000000000000000000000000000000000001ca00000000000000000000000000000000000000000000000000000000000001cb00000000000000000000000000000000000000000000000000000000000001cc00000000000000000000000000000000000000000000000000000000000001cd00000000000000000000000000000000000000000000000000000000000001ce00000000000000000000000000000000000000000000000000000000000001cf00000000000000000000000000000000000000000000000000000000000001d000000000000000000000000000000000000000000000000000000000000001d100000000000000000000000000000000000000000000000000000000000001d200000000000000000000000000000000000000000000000000000000000001d300000000000000000000000000000000000000000000000000000000000001d400000000000000000000000000000000000000000000000000000000000001d500000000000000000000000000000000000000000000000000000000000001d600000000000000000000000000000000000000000000000000000000000001d700000000000000000000000000000000000000000000000000000000000001d800000000000000000000000000000000000000000000000000000000000001d900000000000000000000000000000000000000000000000000000000000001da00000000000000000000000000000000000000000000000000000000000001db00000000000000000000000000000000000000000000000000000000000001dc00000000000000000000000000000000000000000000000000000000000001dd00000000000000000000000000000000000000000000000000000000000001de00000000000000000000000000000000000000000000000000000000000001df00000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000000001e100000000000000000000000000000000000000000000000000000000000001e200000000000000000000000000000000000000000000000000000000000001e300000000000000000000000000000000000000000000000000000000000001e400000000000000000000000000000000000000000000000000000000000001e500000000000000000000000000000000000000000000000000000000000001e600000000000000000000000000000000000000000000000000000000000001e700000000000000000000000000000000000000000000000000000000000001e800000000000000000000000000000000000000000000000000000000000001e900000000000000000000000000000000000000000000000000000000000001ea00000000000000000000000000000000000000000000000000000000000001eb00000000000000000000000000000000000000000000000000000000000001ec00000000000000000000000000000000000000000000000000000000000001ed00000000000000000000000000000000000000000000000000000000000001ee00000000000000000000000000000000000000000000000000000000000001ef00000000000000000000000000000000000000000000000000000000000001f000000000000000000000000000000000000000000000000000000000000001f100000000000000000000000000000000000000000000000000000000000001f200000000000000000000000000000000000000000000000000000000000001f300000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000001f500000000000000000000000000000000000000000000000000000000000001f600000000000000000000000000000000000000000000000000000000000001f73700000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000002c100000000000000000000000000000000000000000000000000000000000002c200000000000000000000000000000000000000000000000000000000000002c300000000000000000000000000000000000000000000000000000000000002c400000000000000000000000000000000000000000000000000000000000002c500000000000000000000000000000000000000000000000000000000000002c600000000000000000000000000000000000000000000000000000000000002c700000000000000000000000000000000000000000000000000000000000002c800000000000000000000000000000000000000000000000000000000000002c900000000000000000000000000000000000000000000000000000000000002ca00000000000000000000000000000000000000000000000000000000000002cb00000000000000000000000000000000000000000000000000000000000002cc00000000000000000000000000000000000000000000000000000000000002cd00000000000000000000000000000000000000000000000000000000000002ce00000000000000000000000000000000000000000000000000000000000002cf00000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000002d100000000000000000000000000000000000000000000000000000000000002d200000000000000000000000000000000000000000000000000000000000002d300000000000000000000000000000000000000000000000000000000000002d400000000000000000000000000000000000000000000000000000000000002d500000000000000000000000000000000000000000000000000000000000002d600000000000000000000000000000000000000000000000000000000000002d700000000000000000000000000000000000000000000000000000000000002d800000000000000000000000000000000000000000000000000000000000002d900000000000000000000000000000000000000000000000000000000000002da00000000000000000000000000000000000000000000000000000000000002db00000000000000000000000000000000000000000000000000000000000002dc00000000000000000000000000000000000000000000000000000000000002dd00000000000000000000000000000000000000000000000000000000000002de00000000000000000000000000000000000000000000000000000000000002df00000000000000000000000000000000000000000000000000000000000002e000000000000000000000000000000000000000000000000000000000000002e100000000000000000000000000000000000000000000000000000000000002e200000000000000000000000000000000000000000000000000000000000002e300000000000000000000000000000000000000000000000000000000000002e400000000000000000000000000000000000000000000000000000000000002e500000000000000000000000000000000000000000000000000000000000002e600000000000000000000000000000000000000000000000000000000000002e700000000000000000000000000000000000000000000000000000000000002e800000000000000000000000000000000000000000000000000000000000002e900000000000000000000000000000000000000000000000000000000000002ea00000000000000000000000000000000000000000000000000000000000002eb00000000000000000000000000000000000000000000000000000000000002ec00000000000000000000000000000000000000000000000000000000000002ed00000000000000000000000000000000000000000000000000000000000002ee00000000000000000000000000000000000000000000000000000000000002ef00000000000000000000000000000000000000000000000000000000000002f000000000000000000000000000000000000000000000000000000000000002f100000000000000000000000000000000000000000000000000000000000002f200000000000000000000000000000000000000000000000000000000000002f300000000000000000000000000000000000000000000000000000000000002f400000000000000000000000000000000000000000000000000000000000002f500000000000000000000000000000000000000000000000000000000000002f60200000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000003c11000000000000000000000000000000000000000000000000000000000000005c000000000000000000000000000000000000000000000000000000000000005ca00000000000000000000000000000000000000000000000000000000000005c100000000000000000000000000000000000000000000000000000000000005cb00000000000000000000000000000000000000000000000000000000000005c200000000000000000000000000000000000000000000000000000000000005cc00000000000000000000000000000000000000000000000000000000000005c300000000000000000000000000000000000000000000000000000000000005cd00000000000000000000000000000000000000000000000000000000000005c400000000000000000000000000000000000000000000000000000000000005ce00000000000000000000000000000000000000000000000000000000000005c500000000000000000000000000000000000000000000000000000000000005cf00000000000000000000000000000000000000000000000000000000000005c600000000000000000000000000000000000000000000000000000000000005d000000000000000000000000000000000000000000000000000000000000005c700000000000000000000000000000000000000000000000000000000000005d100000000000000000000000000000000000000000000000000000000000005c800000000000000000000000000000000000000000000000000000000000005d200000000000000000000000000000000000000000000000000000000000005c900000000000000000000000000000000000000000000000000000000000005d300000000000000000000000000000000000000000000000000000000000005ca00000000000000000000000000000000000000000000000000000000000005d400000000000000000000000000000000000000000000000000000000000005cb00000000000000000000000000000000000000000000000000000000000005d500000000000000000000000000000000000000000000000000000000000005cc00000000000000000000000000000000000000000000000000000000000005d600000000000000000000000000000000000000000000000000000000000005cd00000000000000000000000000000000000000000000000000000000000005d700000000000000000000000000000000000000000000000000000000000005ce00000000000000000000000000000000000000000000000000000000000005d800000000000000000000000000000000000000000000000000000000000005cf00000000000000000000000000000000000000000000000000000000000005d9000011000000021c000000b00270623270db205e7301080591bbe7dbbe824b2b1ca7910c5e6d8cf5c4ecf20b18400eb618400eb618400eb618400eb618400eb618400eb618400eb618400eb618400eb618400eb618400eb618400eb618400eb618400eb618400eb618400eb618400eb618400eb618400eb618400eb6210a62f45d66e2eaf15fb8b1a012411c22dcffc2014bc7b98f32e47fd4e8bd2f26f87cda0448d774af5aea5fc675eb7b0ed010fd32fd85b0403c6e831f94cece000000b01a28c9c90c62f2856aedcebe2b4a91576e4e9017e36e88e72293b502ef9d38871c400eb61c400eb61c400eb61c400eb61c400eb61c400eb61c400eb61c400eb61c400eb61c400eb61c400eb61c400eb61c400eb61c400eb61c400eb61c400eb61c400eb61c400eb61c400eb61c400eb6085e7c1817bd14e830fc39b3b81f923aaa755c664e594f030f7716f90f9903aa0e4c95fdbe9f0971eef76b61de833c9996686da1800b0cf9c080a0fc5a451549000000b0017ce2ecc6b92482aa8a4fc04357e275f5e6ecbc307c1030a2d7e77c2a4d7f0220400eb620400eb620400eb620400eb620400eb620400eb620400eb620400eb620400eb620400eb620400eb620400eb620400eb620400eb620400eb620400eb620400eb620400eb620400eb620400eb62016e3aeb344e70f28e9006c51ae3bb65a41a153152046ddd39d3f063a494a262604fd945a26db98e6e4321a7811e6154634b28e46d204d484a6c90984f55bc50000021c000000b019354a836240f6a9a2771678dce68bf1a5b331a8f743080b66fe0f8954fdc57e24400eb624400eb624400eb624400eb624400eb624400eb624400eb624400eb624400eb624400eb624400eb624400eb624400eb624400eb624400eb624400eb624400eb624400eb624400eb624400eb6076afcd26d9b190c6885816e69bb8cd4e1d9fdf7622dce2753e1717f74f990a10d5916b8147d0d962680b31c901f3733cdcd0f3293df8c1e04eafb82bfa5a240000000b0008963a71c9728a6e213977af4f3dd102d4b8e4d44508f54e74242028fae0bf928400eb628400eb628400eb628400eb628400eb628400eb628400eb628400eb628400eb628400eb628400eb628400eb628400eb628400eb628400eb628400eb628400eb628400eb628400eb628400eb61f2364690922eb3360724827034a365091a642e428f4c6021807998c9fa9d71d25117e4eb004dfbd1e6d79d529ade0af7d99541f5aa683f8c911238fea55e8bc000000b01841cb3db81efacdda005e338e82868bdd17d33a0b17872fab686a0fba5e52752c400eb62c400eb62c400eb62c400eb62c400eb62c400eb62c400eb62c400eb62c400eb62c400eb62c400eb62c400eb62c400eb62c400eb62c400eb62c400eb62c400eb62c400eb62c400eb62c400eb606777d8cc3791d30a00ec9291b57876f193e9f8876024d4b984bcc05da5a1d980c6597726a5b11ba5e09fad741bb31ce0531b0c3a7b40b424955560925062f370000021c000000b02ffa32d453a6ccf4d1ed24ec281130078ce41826d1de7f0a6f8e921ce50e98f130400eb630400eb630400eb630400eb630400eb630400eb630400eb630400eb630400eb630400eb630400eb630400eb630400eb630400eb630400eb630400eb630400eb630400eb630400eb630400eb61e2fe5235f00ef5797fb8fe1b4e630eac90ae4753cc945265c71f413050a6414241dff0905e2e3e155f6c18fdb49db49b4fdf5b06e7b031d0d7b7e164fb675b3000000b0174e4bf80dfcfef21189a5ee401e8126147c74cb1eec0653efd2c4961fbedf6c34400eb634400eb634400eb634400eb634400eb634400eb634400eb634400eb634400eb634400eb634400eb634400eb634400eb634400eb634400eb634400eb634400eb634400eb634400eb634400eb60583fe4719572154d79810e3ccf3820950a3411989d6cc6fdcb6268c3fbaaa8f0b72182cc03915de95934291f3572c683c965254bb888a668dbfb08f8a66bc2e000000b02f06b38ea984d11909766ca6d9ad2aa1c448b9b7e5b2fe2eb3f8eca34a6f25e838400eb638400eb638400eb638400eb638400eb638400eb638400eb638400eb638400eb638400eb638400eb638400eb638400eb638400eb638400eb638400eb638400eb638400eb638400eb638400eb61d3c65ddb4def37bcf84d79c66822b85006f8606509dc44aa0dc4e996a6af10b232a7fc35bc0e8058d80094a8ce5d5e3ec629741824f824151e5d89cb51702aa0000021c000000b0165accb263db03164912eda8f1ba7bc04be1165c32c08578343d1f1c851f6c633c400eb63c400eb63c400eb63c400eb63c400eb63c400eb63c400eb63c400eb63c400eb63c400eb63c400eb63c400eb63c400eb63c400eb63c400eb63c400eb63c400eb63c400eb63c400eb63c400eb604907f016f3525790f21589e7e8f7ca38807e2aa9dab4b9421208112a51b37860a7e98e716171a02cd1c8a4ca4f3270273faf3e5cf5d098ad22a0b15efc74925000000b02e133448ff62d53d40ffb4618b49253bfbad5b48f9877d52f8634729afcfb2df40400eb640400eb640400eb640400eb640400eb640400eb640400eb640400eb640400eb640400eb640400eb640400eb640400eb640400eb640400eb640400eb640400eb640400eb640400eb640400eb61c48e6980abcf7a0070e1f57181e261f37d427976472436ee546a91fcfcb7e022237007db19eec29c50951053e81d07e23c738d296240165965033231a778fa1000000b015674d6cb9b9073a809c3563a356765a8345b7ed4695049c78a779a2ea7ff95a44400eb644400eb644400eb644400eb644400eb644400eb644400eb644400eb644400eb644400eb644400eb644400eb644400eb644400eb644400eb644400eb644400eb644400eb644400eb644400eb6039cffbbc513299d46aaa059302b773dbf6c843bb17fcab8658adb990a7bc47d098b19a16bf51e2704a5d207568f219cab5f9576e33188af1694659c5527d61c0000021c000000b02d1fb5035540d9617888fc1c3ce51fd63311fcda0d5bfc773ccda1b015303fd648400eb648400eb648400eb648400eb648400eb648400eb648400eb648400eb648400eb648400eb648400eb648400eb648400eb648400eb648400eb648400eb648400eb648400eb648400eb648400eb61b556752609afbc43e976711c9ba20b96f38c9287846c29329b103a6352c0af921438138077cf04dfc9298bff01dcb185b2bda63a9f88089daba8da97fd81c98000000b01473ce270f970b5eb8257d1e54f270f4baaa597e5a6983c0bd11d4294fe086514c400eb64c400eb64c400eb64c400eb64c400eb64c400eb64c400eb64c400eb64c400eb64c400eb64c400eb64c400eb64c400eb64c400eb64c400eb64c400eb64c400eb64c400eb64c400eb64c400eb602a980761af12dc17e33e813e1c771d7f6d125ccc55449dca9f5361f6fdc517408979a5bc1d3224b3c2f19c2082b1c36e2c43707f70607d35afec022ba886313000000b02c2c35bdab1edd85b01243d6ee811a706a769e6b21307b9b8137fc367a90cccd50400eb650400eb650400eb650400eb650400eb650400eb650400eb650400eb650400eb650400eb650400eb650400eb650400eb650400eb650400eb650400eb650400eb650400eb650400eb650400eb61a61e80cb678ffe87620aecc7b561b53a69d6ab98c1b41b76e1b5e2c9a8c97f0205001f25d5af472341be07aa1b9c5b292907bf4bdccffae1f24e82fe538a98f0000021c000000b013804ee165750f82efaec4d9068e6b8ef20efb0f6e3e02e5017c2eafb541134854400eb654400eb654400eb654400eb654400eb654400eb654400eb654400eb654400eb654400eb654400eb654400eb654400eb654400eb654400eb654400eb654400eb654400eb654400eb654400eb601b6013070cf31e5b5bd2fce93636c722e35c75dd928c900ee5f90a5d53cde6b07a41b1617b1266f73b8617cb9c716d11a28d8990ada86f79f691aa91fe8f00a000000b02b38b67800fce1a9e79b8b91a01d150aa1db3ffc3504fabfc5a256bcdff159c458400eb658400eb658400eb658400eb658400eb658400eb658400eb658400eb658400eb658400eb658400eb658400eb658400eb658400eb658400eb658400eb658400eb658400eb658400eb658400eb6196e68c70c57040cada9f6872cf215edde020c4a9fefc0dbb285b8b2ffed24e71f5c82acb338f8966ba528355355c04cc9f51d85d1a17ed2638f42b64a993686000000b0128ccf9bbb5313a727380c93b82a662929739ca08212820945e689361aa1a03f5c400eb65c400eb65c400eb65c400eb65c400eb65c400eb65c400eb65c400eb65c400eb65c400eb65c400eb65c400eb65c400eb65c400eb65c400eb65c400eb65c400eb65c400eb65c400eb65c400eb600c281eac6ad3609ed46778944ff670c659a68eeecfd482532c9eb2c3a9d6b6206b09bd06d8f2a93ab41a9376b63116b518d7a2a1eaf061be3d3752f85497d010000021c000000b02a45373256dae5ce1f24d34c51b90fa4d93fe18d48d979e40a0cb1434551e6bb60400eb660400eb660400eb660400eb660400eb660400eb660400eb660400eb660400eb660400eb660400eb660400eb660400eb660400eb660400eb660400eb660400eb660400eb660400eb660400eb6187ae98162350830e5333e41de8e10881566addbb3c43ffff6f01339654db1de1e6903670916fcbaa32e6ff004f1bae70159bf16e575fdf6a7f99d3caff9c37d000000b011995056113117cb5ec1544e69c660c360d83e3195e7012d8a50e3bc80022d3664400eb664400eb664400eb664400eb664400eb664400eb664400eb664400eb664400eb664400eb664400eb664400eb664400eb664400eb664400eb664400eb664400eb664400eb664400eb664400eb630335117fdbcda57dd2004fa781cba03c532f2c87a8b37dabb163b468ffdf85a05bd1c8ac36d2eb7e2caf0f21cff0c0588f21bbb32838540283dcfb5eaaa09f8000000b02951b7ecacb8e9f256ae1b0703550a3f10a4831e5cadf9084e770bc9aab273b268400eb668400eb668400eb668400eb668400eb668400eb668400eb668400eb668400eb668400eb668400eb668400eb668400eb668400eb668400eb668400eb668400eb668400eb668400eb668400eb617876a3bb8130c551cbc85fc902a0b224ccb4f6cc798bf243b5a6dbfcaae3ed51d7584215ef500dedab7b7aab68db58138be60a7f94a7d1aec63f7c3155a50740000021c000000b010a5d110670f1bef964a9c091b625b5d983cdfc2a9bb8051cebb3e42e562ba2d6c400eb66c400eb66c400eb66c400eb66c400eb66c400eb66c400eb66c400eb66c400eb66c400eb66c400eb66c400eb66c400eb66c400eb66c400eb66c400eb66c400eb66c400eb66c400eb66c400eb62f3fd1d2539ade7c14a94cb529b8b49dfc9794598e5fb6feff8095ccf55e855104c99d45194b32dc1a5438acce9b069fc056bd4c465804646ca82a3c500a96ef000000b0285e38a70296ee168e3762c1b4f104d9480924af7082782c92e16650101300a970400eb670400eb670400eb670400eb670400eb670400eb670400eb670400eb670400eb670400eb670400eb670400eb670400eb670400eb670400eb670400eb670400eb670400eb670400eb670400eb61693eaf60df110795445cdb741c605bc842ff0fddb6d3e487fc4c846300ecbcc1c8204dbb4d305031240ff656829b01b702302390d1efc3f30ce52497abadd6b000000b00fb251cabced2013cdd3e3c3ccfe55f7cfa18153bd8fff76132598c94ac3472474400eb674400eb674400eb674400eb674400eb674400eb674400eb674400eb674400eb674400eb674400eb674400eb674400eb674400eb674400eb674400eb674400eb674400eb674400eb674400eb62e4c528ca978e2a04c32946fdb54af3833fc35eaa234362343eaf0535abf124803d61dff6f29370051dd806780370139f7bb5edd5a2c8388b11284c2b56b23e600000fa400000168000000b0276ab9615874f23ac5c0aa7c668cff737f6dc6408456f750d74bc0d675738da078400eb678400eb678400eb678400eb678400eb678400eb678400eb678400eb678400eb678400eb678400eb678400eb678400eb678400eb678400eb678400eb678400eb678400eb678400eb678400eb615a06bb063cf149d8bcf1571f3620056bb94928eef41bd6cc42f22cc956f58c31b8e85960ab1092749ca472019c5aab5a787a3ca20f37b637538accfe01b6a62000000b00ebed28512cb2438055d2b7e7e9a5092070622e4d1647e9a578ff34fb023d41b7c400eb67c400eb67c400eb67c400eb67c400eb67c400eb67c400eb67c400eb67c400eb67c400eb67c400eb67c400eb67c400eb67c400eb67c400eb67c400eb67c400eb67c400eb67c400eb67c400eb62d58d346ff56e6c483bbdc2a8cf0a9d26b60d77bb608b54788554ad9c01f9f3f02e29eb9c5073b248966c82231d2fbd42f20006e6e0102acf57cdf491acbb0dd00000168000000b026773a1bae52f65efd49f2371828fa0db6d267d1982b76751bb61b5cdad41a9780400eb680400eb680400eb680400eb680400eb680400eb680400eb680400eb680400eb680400eb680400eb680400eb680400eb680400eb680400eb680400eb680400eb680400eb680400eb680400eb614acec6ab9ad18c1c3585d2ca4fdfaf0f2f9342003163c9108997d52facfe5ba1a9b0650608f0d4b81538edacb61a54fdeec455b34c7fa87b9a30756457bf759000000b00dcb533f68a9285c3ce6733930364b2c3e6ac475e538fdbe9bfa4dd61584611284400eb684400eb684400eb684400eb684400eb684400eb684400eb684400eb684400eb684400eb684400eb684400eb684400eb684400eb684400eb684400eb684400eb684400eb684400eb684400eb62c6554015534eae8bb4523e53e8ca46ca2c5790cc9dd346bccbfa56025802c3601ef1f741ae53f48c0f00fdce36ef66e6684a1ff81d581d139e739cf802c3dd400000168000000b02583bad60430fa8334d339f1c9c4f4a7ee370962abfff599602075e34034a78e88400eb688400eb688400eb688400eb688400eb688400eb688400eb688400eb688400eb688400eb688400eb688400eb688400eb688400eb688400eb688400eb688400eb688400eb688400eb688400eb613b96d250f8b1ce5fae1a4e75699f58b2a5dd5b116eabbb54d03d7d9603072b119a7870ab66d116fb8dcd6957cfd9fea1650e6ec489c79abfe0d61dcaadc8450000000b00cd7d3f9be872c80746fbaf3e1d245c675cf6606f90d7ce2e064a85c7ae4ee098c400eb68c400eb68c400eb68c400eb68c400eb68c400eb68c400eb68c400eb68c400eb68c400eb68c400eb68c400eb68c400eb68c400eb68c400eb68c400eb68c400eb68c400eb68c400eb68c400eb62b71d4bbab12ef0cf2ce6b9ff0289f06da2a1a9dddb1b3901129ffe68ae0b92d00fba02e70c3436cf8795797950af1089de9439095aa00f57e519455e58ccacb00000168000000b024903b905a0efea76c5c81ac7b60ef42259baaf3bfd474bda48ad069a595348590400eb690400eb690400eb690400eb690400eb690400eb690400eb690400eb690400eb690400eb690400eb690400eb690400eb690400eb690400eb690400eb690400eb690400eb690400eb690400eb612c5eddf6569210a326aeca20835f02561c277422abf3ad9916e325fc590ffa818b407c50c4b1593f0661e502e999a844db5887d5c70f8d04277bc63103d1147000000b00be454b4146530a4abf902ae936e4060ad3407980ce1fc0724cf02e2e0457b0094400eb694400eb694400eb694400eb694400eb694400eb694400eb694400eb694400eb694400eb694400eb694400eb694400eb694400eb694400eb694400eb694400eb694400eb694400eb694400eb62a7e557600f0f3312a57b35aa1c499a1118ebc2ef18632b455945a6cf0414624000820e8c6a1479130029f5246a6eba2d54de521a97e8019c2bbeedc4aed57c200000168000000b0239cbc4aafed02cba3e5c9672cfce9dc5d004c84d3a8f3e1e8f52af00af5c17c98400eb698400eb698400eb698400eb698400eb698400eb698400eb698400eb698400eb698400eb698400eb698400eb698400eb698400eb698400eb698400eb698400eb698400eb698400eb698400eb611d26e99bb47252e69f4345cb9d1eabf992718d33e93b9fdd5d88ce62af18c9f17c0887f622919b827ef660ae035951e851a2a0e704577f486e216e9759d9e3e000000b00af0d56e6a4334c8e3824a69450a3afae498a92920b67b2b69395d6945a607f79c400eb69c400eb69c400eb69c400eb69c400eb69c400eb69c400eb69c400eb69c400eb69c400eb69c400eb69c400eb69c400eb69c400eb69c400eb69c400eb69c400eb69c400eb69c400eb69c400eb6298ad63056cef75561e0fb155360943b48f35dc0055ab1d899feb4f355a1d31b2f78f015fdb0ebdf1fdc2cc379c43e9a34e66efb370c6fcf4b083ef6a04de4ba00000168000000b022a93d0505cb06efdb6f1121de98e4769464ee15e77d73062d5f857670564e73a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb6a0400eb610deef5411252952a17d7c176b6de559d08bba64526839221a42e76c9052199616cd0939b8071ddc5f78adc591d18fb8bc7ecb9f8419f718cb4c716fdafe2b35000000b009fd5628c02138ed1b0b9223f6a635951bfd4aba348afa4fada3b7efab0694eea4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6a4400eb6289756eaacacfb79996a42d004fc8ed58057ff51192f30fcde690f79bb0260122e8570d0538ef0035765747e2b6039346c4b108c4ae0eef38f72997d05ae71b100000168000000b021b5bdbf5ba90b1412f858dc9034df10cbc98fa6fb51f22a71c9dffcd5b6db6aa8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb6a8400eb60feb700e67032d76d906c3d21d09dff407f05bf5663cb8465ead41f2f5b2a68d15d989f40de522009701f580436d8a52f3e36d3097ee763d0fb6cbf6405eb82c000000b00909d6e315ff3d115294d9dea842302f5361ec4b485f7973f20e1276106721e5ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb6ac400eb627a3d7a5028aff9dd0f38a8ab698896fb7bca0e22d03b02122d36a002062ed092d91f18aa96cf4278eeebc38dcfc33cea3afb21d5eb56e17d3dcf4036b0efea800000168000000b020c23e79b1870f384a81a09741d0d9ab032e31380f26714eb6343a833b176861b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb6b0400eb60ef7f0c8bce1319b10900b8ccea5da8e3f54fd867a11376aa3179c795b13338414e60aae63c32624ce8b3d3af50984ed2b480ec1abc2f5615421267ca5bf4523000000b00816579d6bdd41358a1e219959de2ac98ac68ddc5c33f89836786cfc75c7aedcb4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb6b4400eb626b0585f586903c2087cd24568348409ef21427340d82f45673dc48685c37a002c9e7244ff4af84bc67803f38e982e68db1453ae7289ed3c18474e89d06f8b9f00000168000000b01fcebf340765135c820ae851f36cd4453a92d2c922faf072fa9e9509a077f558b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb6b8400eb60e04718312bf35bf481953478041d52876b99f178de5b68ee781f6ffc073c07b13f28b68b9a12a49061484f5a6a57f8762acb052bf977485988b81030b1fd21a000000b00722d857c1bb4559c1a769540b7a2563c22b2f6d700877bc7ae2c782db283bd3bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb6bc400eb625bcd919ae4707e640061a0019d07ea42685e40454acae69aba81f0ceb2406f72baaf2ff5528fc6ffe014bae403429031278f53f865e6c605cb1a91035d0189600000168000000b01edb3fee5d431780b994300ca508cedf71f7745a36cf6f973f08ef9005d8824fc0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb6c0400eb60d10f23d689d39e37fa29b0231ddcfc2ae1e40a8a1ba35b32bec518625d44d7212ff0c230f7f2e6d3d9dccb058417a219a1151e3d36bf3a9dcf5db8970805f11000000b0062f59121799497df930b10ebd161ffdf98fd0fe83dcf6e0bf4d22094088c8cac4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb6c4400eb624c959d404250c0a778f61bacb6c793e5dea859568812d8df0127993508493ee2ab773b9ab070094358a9368f1d0239d49dd96d09a32eb84a11c03969b30a58d00000168000000b01de7c0a8b3211ba4f11d77c756a4c979a95c15eb4aa3eebb83734a166b390f46c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb6c8400eb60c1d72f7be7b3e07b72be2bce379ca5ce582e239b58eb4d77056ac0c8b34da69120b8cdd655d32917527146b09dd74bbd175f374e74072ce2160360fd5e0ec08000000b0053bd9cc6d774da230b9f8c96eb21a9830f4728f97b1760503b77c8fa5e955c1cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb6cc400eb623d5da8e5a03102eaf18a9757d0873d8954f27267c55acb2347cd419b5e520e529c3f47400e504b86d13db23a36c1e3781423861ae076aa8e5865e1d00913284380000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020100000000000000000000000000000000000000000000000000000000000002020000000000000000000000000000000000000000000000000000000000000203000000000000000000000000000000000000000000000000000000000000020400000000000000000000000000000000000000000000000000000000000002050000000000000000000000000000000000000000000000000000000000000206000000000000000000000000000000000000000000000000000000000000020700000000000000000000000000000000000000000000000000000000000002080000000000000000000000000000000000000000000000000000000000000209000000000000000000000000000000000000000000000000000000000000020a000000000000000000000000000000000000000000000000000000000000020b000000000000000000000000000000000000000000000000000000000000020c000000000000000000000000000000000000000000000000000000000000020d000000000000000000000000000000000000000000000000000000000000020e000000000000000000000000000000000000000000000000000000000000020f0000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000021100000000000000000000000000000000000000000000000000000000000002120000000000000000000000000000000000000000000000000000000000000213000000000000000000000000000000000000000000000000000000000000021400000000000000000000000000000000000000000000000000000000000002150000000000000000000000000000000000000000000000000000000000000216000000000000000000000000000000000000000000000000000000000000021700000000000000000000000000000000000000000000000000000000000002180000000000000000000000000000000000000000000000000000000000000219000000000000000000000000000000000000000000000000000000000000021a000000000000000000000000000000000000000000000000000000000000021b000000000000000000000000000000000000000000000000000000000000021c000000000000000000000000000000000000000000000000000000000000021d000000000000000000000000000000000000000000000000000000000000021e000000000000000000000000000000000000000000000000000000000000021f0000000000000000000000000000000000000000000000000000000000000220000000000000000000000000000000000000000000000000000000000000022100000000000000000000000000000000000000000000000000000000000002220000000000000000000000000000000000000000000000000000000000000223000000000000000000000000000000000000000000000000000000000000022400000000000000000000000000000000000000000000000000000000000002250000000000000000000000000000000000000000000000000000000000000226000000000000000000000000000000000000000000000000000000000000022700000000000000000000000000000000000000000000000000000000000002280000000000000000000000000000000000000000000000000000000000000229000000000000000000000000000000000000000000000000000000000000022a000000000000000000000000000000000000000000000000000000000000022b000000000000000000000000000000000000000000000000000000000000022c000000000000000000000000000000000000000000000000000000000000022d000000000000000000000000000000000000000000000000000000000000022e000000000000000000000000000000000000000000000000000000000000022f00000000000000000000000000000000000000000000000000000000000002300000000000000000000000000000000000000000000000000000000000000231000000000000000000000000000000000000000000000000000000000000023200000000000000000000000000000000000000000000000000000000000002330000000000000000000000000000000000000000000000000000000000000234000000000000000000000000000000000000000000000000000000000000023500000000000000000000000000000000000000000000000000000000000002360000000000000000000000000000000000000000000000000000000000000237370000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000030100000000000000000000000000000000000000000000000000000000000003020000000000000000000000000000000000000000000000000000000000000303000000000000000000000000000000000000000000000000000000000000030400000000000000000000000000000000000000000000000000000000000003050000000000000000000000000000000000000000000000000000000000000306000000000000000000000000000000000000000000000000000000000000030700000000000000000000000000000000000000000000000000000000000003080000000000000000000000000000000000000000000000000000000000000309000000000000000000000000000000000000000000000000000000000000030a000000000000000000000000000000000000000000000000000000000000030b000000000000000000000000000000000000000000000000000000000000030c000000000000000000000000000000000000000000000000000000000000030d000000000000000000000000000000000000000000000000000000000000030e000000000000000000000000000000000000000000000000000000000000030f0000000000000000000000000000000000000000000000000000000000000310000000000000000000000000000000000000000000000000000000000000031100000000000000000000000000000000000000000000000000000000000003120000000000000000000000000000000000000000000000000000000000000313000000000000000000000000000000000000000000000000000000000000031400000000000000000000000000000000000000000000000000000000000003150000000000000000000000000000000000000000000000000000000000000316000000000000000000000000000000000000000000000000000000000000031700000000000000000000000000000000000000000000000000000000000003180000000000000000000000000000000000000000000000000000000000000319000000000000000000000000000000000000000000000000000000000000031a000000000000000000000000000000000000000000000000000000000000031b000000000000000000000000000000000000000000000000000000000000031c000000000000000000000000000000000000000000000000000000000000031d000000000000000000000000000000000000000000000000000000000000031e000000000000000000000000000000000000000000000000000000000000031f0000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000032100000000000000000000000000000000000000000000000000000000000003220000000000000000000000000000000000000000000000000000000000000323000000000000000000000000000000000000000000000000000000000000032400000000000000000000000000000000000000000000000000000000000003250000000000000000000000000000000000000000000000000000000000000326000000000000000000000000000000000000000000000000000000000000032700000000000000000000000000000000000000000000000000000000000003280000000000000000000000000000000000000000000000000000000000000329000000000000000000000000000000000000000000000000000000000000032a000000000000000000000000000000000000000000000000000000000000032b000000000000000000000000000000000000000000000000000000000000032c000000000000000000000000000000000000000000000000000000000000032d000000000000000000000000000000000000000000000000000000000000032e000000000000000000000000000000000000000000000000000000000000032f00000000000000000000000000000000000000000000000000000000000003300000000000000000000000000000000000000000000000000000000000000331000000000000000000000000000000000000000000000000000000000000033200000000000000000000000000000000000000000000000000000000000003330000000000000000000000000000000000000000000000000000000000000334000000000000000000000000000000000000000000000000000000000000033500000000000000000000000000000000000000000000000000000000000003360200000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000401100000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000060a0000000000000000000000000000000000000000000000000000000000000601000000000000000000000000000000000000000000000000000000000000060b0000000000000000000000000000000000000000000000000000000000000602000000000000000000000000000000000000000000000000000000000000060c0000000000000000000000000000000000000000000000000000000000000603000000000000000000000000000000000000000000000000000000000000060d0000000000000000000000000000000000000000000000000000000000000604000000000000000000000000000000000000000000000000000000000000060e0000000000000000000000000000000000000000000000000000000000000605000000000000000000000000000000000000000000000000000000000000060f00000000000000000000000000000000000000000000000000000000000006060000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000060700000000000000000000000000000000000000000000000000000000000006110000000000000000000000000000000000000000000000000000000000000608000000000000000000000000000000000000000000000000000000000000061200000000000000000000000000000000000000000000000000000000000006090000000000000000000000000000000000000000000000000000000000000613000000000000000000000000000000000000000000000000000000000000060a0000000000000000000000000000000000000000000000000000000000000614000000000000000000000000000000000000000000000000000000000000060b0000000000000000000000000000000000000000000000000000000000000615000000000000000000000000000000000000000000000000000000000000060c0000000000000000000000000000000000000000000000000000000000000616000000000000000000000000000000000000000000000000000000000000060d0000000000000000000000000000000000000000000000000000000000000617000000000000000000000000000000000000000000000000000000000000060e0000000000000000000000000000000000000000000000000000000000000618000000000000000000000000000000000000000000000000000000000000060f0000000000000000000000000000000000000000000000000000000000000619000011000000021c000000b01cf4416308ff1fc928a6bf820840c413e0c0b77c5e786ddfc7dda49cd0999c3dd0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb6d0400eb60b29f3b21459422beeb52a779515c4f71ce783cac96333fbb4c10692f095676011180d97bb3b36b5acb05c25bb796f5608da9505fb14f1f265ca90963b4178ff000000b004485a86c35551c668434084204e153268591420ab85f5294821d7160b49e2b8d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb6d4400eb622e25b48afe11452e6a1f1302ea46e72ccb3c8b7902a2bd678e72ea01b45addc28d0752e56c308dca49d22de550818d1b8a6d9f2c1dbe9cd29f0b8a365f1bf7b000000b01c00c21d5edd23ed6030073cb9dcbeae1825590d724ced040c47ff2335fa2934d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb6d8400eb60a36746c6a374650263e723246b1bf91544c255bdd37b31ff92b611955f5f45710248e5211193ad9e439a3e06d1569f0403f36970ee97116aa34eb1ca0a205f60000021c000000b00354db41193355ea9fcc883ed1ea0fcc9fbdb5b1bf5a744d8c8c319c70aa6fafdc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb6dc400eb621eedc0305bf18771e2b38eae040690d04186a48a3feaafabd51892680a63ad327dcf5e8aca10d00dc266a9906a4136bf00b7b83d5b068f16e5b1329cb524c72000000b01b0d42d7b4bb281197b94ef76b78b9484f89fa9e86216c2850b259a99b5ab62be0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb6e0400eb60942f526c0154a745dc7b9ecf84dba2b8bb0c6ecf10c32443d95bb9fbb56814e0f310f0c66f73efe1bc2eb9b1eb1648a77a3d82822bdf03aee9f45a3060292ed000000b002615bfb6f115a0ed755cff983860a66d7225742d32ef371d0f68c22d60afca6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb6e4400eb620fb5cbd5b9d1c9b55b480a591dc63a73b7d0bd9b7d32a1f01bbe3ace606c7ca26e976a3027f112513afb253b8400e0627701d14e984e815b2c56db030b2d9690000021c000000b01a19c3920a992c35cf4296b21d14b3e286ee9c2f99f5eb4c951cb43000bb4322e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6e8400eb6084f75e115f34e98955101a7a9e9b4c5c315687e04e0b1688200162620b70e450e3d8fc6bcd54322534c3355d04d5f24af0879b936926f5f3309a0296b631fe4000000b0016ddcb5c4ef5e330edf17b4352205010e86f8d3e70372961560e6a93b6b899dec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb6ec400eb62007dd77b17b20bf8d3dc86043785e4172e1ad6acba7a94346263e334b6754c125f5f75d585d15494b38fa0e69dc08a05ed4bea5fd596739f72fc83696136660000000b01926444c6077305a06cbde6cceb0ae7cbe533dc0adca6a70d9870eb6661bd019f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6f0400eb6075bf69b6bd152bcccda49625b85af5ffa7a0a0f18b5308cc66a70ac86179b3c0d4a108112b347468ad57b1081e959bee66d1b4a4a66ee837773faafd0c3acdb0000021c000000b0007a5d701acd625746685f6ee6bdff9b45eb9a64fad7f1ba59cb412fa0cc1694f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb6f4400eb61f145e32075924e3c4c7101af51458dbaa464efbdf7c28678a9098b9b0c7e1b825027817ae3b196d82c241c91b78033a96396037112de65e3b9a22bcfb73f357000000b01832c506b655347e3e552627804ca916f5b7df51c19ee9951df1693ccb7c5d10f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb6f8400eb606687755c1af56e10463911d0d21a9fa31deaba02c89afb10ad4cb32eb7828330c56913b68914b6ac25ec2cb338554591dd1bcdb5e3b6da7bbde5536362439d2000000b02feb2c9d51dd06a53641ece019db5292a584243e8865e16fe2179149f62ca38cfc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb6fc400eb61e20deec5d372907fc5057d5a6b05375e1aaf08cf350a78bcefaf34016286eaf240ef8d204191d91ba4b8983cd13fdd4cd9e01c82502658280047d4360d4804e0000021c000000b017a6cfd6dc3bc39624f9967152205e32c37c048c927b0904929824f9a605f73800410eb600410eb600410eb600410eb600410eb600410eb600410eb600410eb600410eb600410eb600410eb600410eb600410eb600410eb600410eb600410eb600410eb600410eb600410eb600410eb60574f810178d5b053becd8d7bebda49469434d31405e2ed54f3f25b950d8b52a0b6311f5be6f4f8ef9e80a85e5214ef355365e6c720feccc0048afbc9b84c6c9000000b02f5f376d77c395bd1ce65d29ebaf07ae73484979594200df56be4d06d0b63db404410eb604410eb604410eb604410eb604410eb604410eb604410eb604410eb604410eb604410eb604410eb604410eb604410eb604410eb604410eb604410eb604410eb604410eb604410eb604410eb61d94e9bc831db81fe2f4c81f78840891af6f15c7c42cc6fb43a1aefcf0b208d7238303a229ffaca9a0eff9cd9ee7b2f09b622702f5de84f1f4ab39003b5e1a76000000b016b350913219c7ba5c82de2c03bc58ccfae0a61da64f8828d7027f800b66842f08410eb608410eb608410eb608410eb608410eb608410eb608410eb608410eb608410eb608410eb608410eb608410eb608410eb608410eb608410eb608410eb608410eb608410eb608410eb608410eb604e902e03d73ea1d22914921909159b03707726c113a4e44c3e5e1762b624f520ad71cc5e455dea6e08c7acfb6f5040f22fa83a742ec0c3b74ef6b79760e60f10000021c000000b02e6bb827cda199e1546fa4e49d4b0248aaaceb0a6d1680039b28a78d3616caab0c410eb60c410eb60c410eb60c410eb60c410eb60c410eb60c410eb60c410eb60c410eb60c410eb60c410eb60c410eb60c410eb60c410eb60c410eb60c410eb60c410eb60c410eb60c410eb60c410eb61ca16a76d8fbbc441a7e0fda2a20032be6d3b758d801461f880c0983561295ce228f845c7fddb0cdd87941885083ad8ad2c6c89409b3041639159386a0bea76d000000b015bfd14b87f7cbde940c25e6b5585367324547aeba24074d1b6cda0670c7112610410eb610410eb610410eb610410eb610410eb610410eb610410eb610410eb610410eb610410eb610410eb610410eb610410eb610410eb610410eb610410eb610410eb610410eb610410eb610410eb603f5839a9351ee415a1a90dc422d544a6e6c13fd250ecd6908503bfc90c2dc4909e39d803a33e2cb1815c28a6890fea95a5f253856c08b5fb959c5ffdb6eede8000000b02d7838e2237f9e058bf8ec9f4ee6fce2e2118c9b80eaff27df9302139b7757a214410eb614410eb614410eb614410eb614410eb614410eb614410eb614410eb614410eb614410eb614410eb614410eb614410eb614410eb614410eb614410eb614410eb614410eb614410eb614410eb61badeb312ed9c06852075794dbbbfdc61e3858e9ebd5c543cc766409bb7322c5219c0516d5bbb4f210028943021fa8250a2b6a251d87833a7d7fee0d061f34640000021c000000b014cc5205ddd5d002cb956da166f44e0169a9e93fcdf886715fd7348cd6279e1d18410eb618410eb618410eb618410eb618410eb618410eb618410eb618410eb618410eb618410eb618410eb618410eb618410eb618410eb618410eb618410eb618410eb618410eb618410eb618410eb603020454e92ff26591a3d896f3c94ee4a5d0b58e38e34c8d4cba9682f623694008f01e3a9011e6ef4f9f0a451a2cf94391c3c6c96a950a83fdc4208640cf7adf000000b02c84b99c795da229c382345a0082f77d19762e2c94bf7e4c23fd5c9a00d7e4991c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61c410eb61aba6beb84b7c48c89909f4f8d57f860559cfa7affaa446810e0be9020d3afbc20a885d12b99b916478bd0fdb3bba2bf41900bb6315c025ec1ea48936b7fc15b000000b013d8d2c033b3d427031eb55c1890489ba10e8ad0e1cd0595a4418f133b882b1420410eb620410eb620410eb620410eb620410eb620410eb620410eb620410eb620410eb620410eb620410eb620410eb620410eb620410eb620410eb620410eb620410eb620410eb620410eb620410eb6020e850f3f0df689c92d2051a565497edd35571f4cb7cbb19124f1095b83f63707fc9ef4e5efeb13872851ffcbc8f3ddc928685a7e6989a8422e7b0ca63007d60000021c000000b02b913a56cf3ba64dfb0b7c14b21ef21750dacfbda893fd706867b7206638719024410eb624410eb624410eb624410eb624410eb624410eb624410eb624410eb624410eb624410eb624410eb624410eb624410eb624410eb624410eb624410eb624410eb624410eb624410eb624410eb619c6eca5da95c8b0c119e70a3ef3f2fa8d019c0c137ec38c554b191686343cb31fb5068b8177bd3a7f1518b865579d5978f4ad47453081830654a319d0e04e52000000b012e5537a8991d84b3aa7fd16ca2c4335d8732c61f5a184b9e8abe999a0e8b80b28410eb628410eb628410eb628410eb628410eb628410eb628410eb628410eb628410eb628410eb628410eb628410eb628410eb628410eb628410eb628410eb628410eb628410eb628410eb628410eb6011b05c994ebfaae00b6680c570144191499f8b0608c4ad5d58f4b8fc0e4832e07091faf3bcdef37beb199ba7d64ee78008d09eb923e08cc8698d5930b9094cd000000b02a9dbb112519aa723294c3cf63baecb1883f714ebc687c94acd211a6cb98fe872c410eb62c410eb62c410eb62c410eb62c410eb62c410eb62c410eb62c410eb62c410eb62c410eb62c410eb62c410eb62c410eb62c410eb62c410eb62c410eb62c410eb62c410eb62c410eb62c410eb618d36d603073ccd4f8a32ec4f08fed94c4663d9d275342b099b5739ceb94c9aa1ec18745d755c15eb69e607316f397f3b0594ed8590500a74abefda03640db4900000fa400000168000000b011f1d434df6fdc6f723144d17bc83dd00fd7cdf3097603de2d1644200649450230410eb630410eb630410eb630410eb630410eb630410eb630410eb630410eb630410eb630410eb630410eb630410eb630410eb630410eb630410eb630410eb630410eb630410eb630410eb630410eb600278683eac9fed2383fafc7089d3eb34bfe9a417460c9fa19f9a616264510250615a06991abf35bf63ae1752f00e91237f1ab7ca61287f0cb03301970f121c4000000b029aa3bcb7af7ae966a1e0b8a1556e74bbfa412dfd03cfbb8f13c6c2d30f98b7e34410eb634410eb634410eb634410eb634410eb634410eb634410eb634410eb634410eb634410eb634410eb634410eb634410eb634410eb634410eb634410eb634410eb634410eb634410eb634410eb617dfee1a8651d0f9302c767fa22be82efbcadf2e3b27c1d4de1fce2350f556a11dce08002d33c582ee27a82dc88f928de7bdf0696cd97fcb8f2958269ba1684000000168000000b010fe54ef354de093a9ba8c8c2d64386a473c6f841d4a830271809ea66ba9d1f938410eb638410eb638410eb638410eb638410eb638410eb638410eb638410eb638410eb638410eb638410eb638410eb638410eb638410eb638410eb638410eb638410eb638410eb638410eb638410eb62f9855b121d9a32028193d383bba91aaab97241b01eeb9afa245f6307ba59d1d05222123e789f7802dc4292fe09ce3ac6f564d0db9e707150f6d8a9fd651aebb000000b028b6bc85d0d5b2baa1a75344c6f2e1e5f708b470e4117add35a6c6b3965a18753c410eb63c410eb63c410eb63c410eb63c410eb63c410eb63c410eb63c410eb63c410eb63c410eb63c410eb63c410eb63c410eb63c410eb63c410eb63c410eb63c410eb63c410eb63c410eb63c410eb616ec6ed4dc2fd51d67b5be3a53c7e2c9332f80bf4efc40f9228a28a9b655e3981cda88ba8311c9a725b0efe87a2b8d281f2291fa80adfeefd393b2ad0101f53700000168000000b0100ad5a98b2be4b7e143d446df0033047ea11115311f0226b5eaf92cd10a5ef040410eb640410eb640410eb640410eb640410eb640410eb640410eb640410eb640410eb640410eb640410eb640410eb640410eb640410eb640410eb640410eb640410eb640410eb640410eb640410eb62ea4d66b77b7a7445fa284f2ed568c44e2fbc5ac15c338d3e6b050b6e1062a14042ea1de3d67fba4654d70ea9238de46a6baee9ecdbb863953d7e5263bb23bb2000000b027c33d4026b3b6ded9309aff788edc802e6d5601f7e5fa017a112139fbbaa56c44410eb644410eb644410eb644410eb644410eb644410eb644410eb644410eb644410eb644410eb644410eb644410eb644410eb644410eb644410eb644410eb644410eb644410eb644410eb644410eb615f8ef8f320dd9419f3f05f50563dd636a94225062d0c01d66f483301bb6708f1be70974d8efcdcb5d3a37a32bc787c25687338b94827e1417fe0d336662822e00000168000000b00f175663e109e8dc18cd1c01909c2d9eb605b2a644f3814afa5553b3366aebe748410eb648410eb648410eb648410eb648410eb648410eb648410eb648410eb648410eb648410eb648410eb648410eb648410eb648410eb648410eb648410eb648410eb648410eb648410eb648410eb62db15725cd95ab68972bccad9ef286df1a60673d2997b7f82b1aab3d4666b70b033b22989345ffc89cd6b8a543d4d8e0de1f902fe190055d98423faca112c8a9000000b026cfbdfa7c91bb0310b9e2ba2a2ad71a65d1f7930bba7925be7b7bc0611b32634c410eb64c410eb64c410eb64c410eb64c410eb64c410eb64c410eb64c410eb64c410eb64c410eb64c410eb64c410eb64c410eb64c410eb64c410eb64c410eb64c410eb64c410eb64c410eb64c410eb61505704987ebdd65d6c84dafb6ffd7fda1f8c3e176a53f41ab5eddb68116fd861af38a2f2ecdd1ef94c37f5ddd63825c8debd51ca856fd385c6867b9cbc30f2500000168000000b00e23d71e36e7ed00505663bc42382838ed6a543758c8006f3ebfae399bcb78de50410eb650410eb650410eb650410eb650410eb650410eb650410eb650410eb650410eb650410eb650410eb650410eb650410eb650410eb650410eb650410eb650410eb650410eb650410eb650410eb62cbdd7e02373af8cceb51468508e817951c508ce3d6c371c6f8505c3abc744020247a352e92403ecd460005ff570d37b158431c0f5648481dcac9a33067355a0000000b025dc3eb4d26fbf2748432a74dbc6d1b49d3699241f8ef84a02e5d646c67bbf5a54410eb654410eb654410eb654410eb654410eb654410eb654410eb654410eb654410eb654410eb654410eb654410eb654410eb654410eb654410eb654410eb654410eb654410eb654410eb654410eb61411f103ddc9e18a0e51956a689bd297d95d65728a79be65efc9383ce6778a7d1a000ae984abd613cc4cc7188eff7cf6c55076adbc2b7c5ca0d2c24031239c1c00000168000000b00d3057d88cc5f12487dfab76f3d422d324cef5c86c9c7f93832a08c0012c05d558410eb658410eb658410eb658410eb658410eb658410eb658410eb658410eb658410eb658410eb658410eb658410eb658410eb658410eb658410eb658410eb658410eb658410eb658410eb658410eb62bca589a7951b3b1063e5c23022a7c138929aa5f5140b640b3ef604a1127d0f90154240d3f0208110be9481aa70cce154ce8d352093903a62116f4b96bd3e297000000b024e8bf6f284dc34b7fcc722f8d62cc4ed49b3ab53363776e475030cd2bdc4c515c410eb65c410eb65c410eb65c410eb65c410eb65c410eb65c410eb65c410eb65c410eb65c410eb65c410eb65c410eb65c410eb65c410eb65c410eb65c410eb65c410eb65c410eb65c410eb65c410eb6131e71be33a7e5ae45dadd251a37cd3210c207039e4e3d8a343392c34bd81774190c8ba3da89da3803d60ed3409b7790fcb5183ecffffb80e53d1cc69684291300000168000000b00c3cd892e2a3f548bf68f331a5701d6d5c3397598070feb7c7946346668c92cc60410eb660410eb660410eb660410eb660410eb660410eb660410eb660410eb660410eb660410eb660410eb660410eb660410eb660410eb660410eb660410eb660410eb660410eb660410eb660410eb62ad6d954cf2fb7d53dc7a3ddb3c676adc08e4bf065153564f859bad076885df00060a4c794e00c3543728fd558a8c8af844d74e31d0d82ca65814f3fd1346f8e000000b023f540297e2bc76fb755b9ea3efec6e90bffdc464737f6928bba8b53913cd94864410eb664410eb664410eb664410eb664410eb664410eb664410eb664410eb664410eb664410eb664410eb664410eb664410eb664410eb664410eb664410eb664410eb664410eb664410eb664410eb6122af2788985e9d27d6424dfcbd3c7cc4826a894b222bcae789ded49b138a46b18190c5e3067de5c3b5f568df237722b3419b9cfe3d47aa529a7774cfbe4b60a00000168000000b00b49594d3881f96cf6f23aec570c1807939838ea94457ddc0bfebdcccbed1fc368410eb668410eb668410eb668410eb668410eb668410eb668410eb668410eb668410eb668410eb668410eb668410eb668410eb668410eb668410eb668410eb668410eb668410eb668410eb668410eb629e35a0f250dbbf97550eb9865627147f7f2ed8178e9b4893cc41556dbe8eae72fd173f4cbefb083334c1d468bc61ba6e3e5febcaa9b727fedcd9f5a2694fc86000000b02301c0e3d409cb93eedf01a4f09ac18343647dd75b0c75b6d024e5d9f69d663f6c410eb66c410eb66c410eb66c410eb66c410eb66c410eb66c410eb66c410eb66c410eb66c410eb66c410eb66c410eb66c410eb66c410eb66c410eb66c410eb66c410eb66c410eb66c410eb66c410eb611377332df63edf6b4ed6c9a7d6fc2667f8b4a25c5f73bd2bd0847d01699316217258d188645e28072e89e48a3d36cc56b7e5b60f7a8f9c96e11d1d36145430100000168000000b00a55da078e5ffd912e7b82a708a812a1cafcda7ba819fd0050691853314dacba70410eb670410eb670410eb670410eb670410eb670410eb670410eb670410eb670410eb670410eb670410eb670410eb670410eb670410eb670410eb670410eb670410eb670410eb670410eb670410eb628efdac97aebc01dacda335316fe6be22f578f128cbe33ad812e6fdd414977de2eddf4af21cdb4a76ad565013d6216411b4aa04dbe6ff1a43237f9e08bf5897d000000b0220e419e29e7cfb82668495fa236bc1d7ac91f686ee0f4db148f40605bfdf33674410eb674410eb674410eb674410eb674410eb674410eb674410eb674410eb674410eb674410eb674410eb674410eb674410eb674410eb674410eb674410eb674410eb674410eb674410eb674410eb61043f3ed3541f21aec76b4552f0bbd00b6efebb6d9cbbaf70172a2567bf9be5916320dd2dc23e6a4aa71e603556f675fa2e2fcf20b7d78edb27c2c59c6a5cff800000168000000b009625ac1e43e01b56604ca61ba440d3c02617c0cbbee7c2494d372d996ae39b178410eb678410eb678410eb678410eb678410eb678410eb678410eb678410eb678410eb678410eb678410eb678410eb678410eb678410eb678410eb678410eb678410eb678410eb678410eb678410eb627fc5b83d0c9c441e4637b0dc89a667c66bc30a3a092b2d1c598ca63a6aa04d52dea756977abb8cba25eacbbeefe10db52af41ded24470c876a25466f1561674000000b0211ac2587fc5d3dc5df1911a53d2b6b7b22dc0f982b573ff58f99ae6c15e802d7c410eb67c410eb67c410eb67c410eb67c410eb67c410eb67c410eb67c410eb67c410eb67c410eb67c410eb67c410eb67c410eb67c410eb67c410eb67c410eb67c410eb67c410eb67c410eb67c410eb60f5074a78b1ff63f23fffc0fe0a7b79aee548d47eda03a1b45dcfcdce15a4b50153e8e8d3201eac8e1fb2dbe070b61f9da479e831f51f811f6e686e02c065cef00000168000000b0086edb7c3a1c05d99d8e121c6be007d639c61d9dcfc2fb48d93dcd5ffc0ec6a880410eb680410eb680410eb680410eb680410eb680410eb680410eb680410eb680410eb680410eb680410eb680410eb680410eb680410eb680410eb680410eb680410eb680410eb680410eb680410eb62708dc3e26a7c8661becc2c87a3661169e20d234b46731f60a0324ea0c0a91cc2cf6f623cd89bcefd9e7f476a09a0b758a13e36fe618efecbb0caeed56b6a36b000000b020274312d5a3d800957ad8d5056eb151e992628a9689f3239d63f56d26bf0d2484410eb684410eb684410eb684410eb684410eb684410eb684410eb684410eb684410eb684410eb684410eb684410eb684410eb684410eb684410eb684410eb684410eb684410eb684410eb684410eb60e5cf561e0fdfa635b8943ca9243b23525b92ed90174b93f8a47576346bad847144b0f4787dfeeed19847578b8a75c9411ac4014332677363b50e1669166e9e6", + "txsEffectsHash": "0x53472a10e3068a8dcdc64c5d353bc5b93d293459f513c087e52471bc28094012", "decodedHeader": { "contentCommitment": { "inHash": "0x0000000000000000000000000000000000000000000000000000000000000000", "outHash": "0xc2db86162c987f9328539ebf11947c30e3846f8bdb7a820aed2bbabd9544b9dc", "txTreeHeight": 2, - "txsEffectsHash": "0x03f253bb6987212f264c5616928f66c956c0f948d84017b68e1dddf871942a41" + "txsEffectsHash": "0x53472a10e3068a8dcdc64c5d353bc5b93d293459f513c087e52471bc28094012" }, "globalVariables": { "blockNumber": 1, "chainId": 31337, "timestamp": 0, "version": 1, - "coinbase": "0x3763c27097c7679fde3c516b87d7a57fbff2b401", - "feeRecipient": "0x12f0936cd74975821fef2537b6501306af902a7084887216691bce9ac330b88c" + "coinbase": "0xa43e0eb6a43e0eb6a43e0eb6a43e0eb6a43e0eb6", + "feeRecipient": "0x15a9c4f4c75d79ce22330ca2cdb6c1a6ede1f6d94ba28016eeb25e5578913ccb" }, "lastArchive": { "nextAvailableLeafIndex": 1, @@ -95,8 +95,8 @@ } } }, - "header": "0x012a86560737adb075e12af8253fb09abf17aa841fb56d180bc89f0d2d473c7f00000001000000000000000000000000000000000000000000000000000000000000000203f253bb6987212f264c5616928f66c956c0f948d84017b68e1dddf871942a410000000000000000000000000000000000000000000000000000000000000000c2db86162c987f9328539ebf11947c30e3846f8bdb7a820aed2bbabd9544b9dc0a241c83a063083fad29b6c333afcd968f71f8a875544ff1f1f08cae7f770f510000001002c672a4d7bd90c4b6ba35bbc9906598862f626554be3cba05de19265a8ece71000001000ed22b14764d5756c4e97521b31e93e21192b98b3bc2e2559e07b1263ce7b1be000001801faf8e36b0fb8fb337acc1c32316e1fcbd0465d53c47a2dd73ebb031042566cb000000c00000000000000000000000000000000000000000000000000000000000007a690000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000003763c27097c7679fde3c516b87d7a57fbff2b40112f0936cd74975821fef2537b6501306af902a7084887216691bce9ac330b88c", + "header": "0x012a86560737adb075e12af8253fb09abf17aa841fb56d180bc89f0d2d473c7f00000001000000000000000000000000000000000000000000000000000000000000000253472a10e3068a8dcdc64c5d353bc5b93d293459f513c087e52471bc280940120000000000000000000000000000000000000000000000000000000000000000c2db86162c987f9328539ebf11947c30e3846f8bdb7a820aed2bbabd9544b9dc0a241c83a063083fad29b6c333afcd968f71f8a875544ff1f1f08cae7f770f510000001002c672a4d7bd90c4b6ba35bbc9906598862f626554be3cba05de19265a8ece71000001000ed22b14764d5756c4e97521b31e93e21192b98b3bc2e2559e07b1263ce7b1be000001801faf8e36b0fb8fb337acc1c32316e1fcbd0465d53c47a2dd73ebb031042566cb000000c00000000000000000000000000000000000000000000000000000000000007a69000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000a43e0eb6a43e0eb6a43e0eb6a43e0eb6a43e0eb615a9c4f4c75d79ce22330ca2cdb6c1a6ede1f6d94ba28016eeb25e5578913ccb", "l1ToL2MessagesHash": "0xb213c9c543fce2a66720d26a913fe0d018f72a47ccfe698baafcf4cced343cfd", - "publicInputsHash": "0x2b8b852fcab7e9954ad7186123b6e7be38f1d492d618926c7c0fd50ae69a19ca" + "publicInputsHash": "0x061b248db124a2a24b14c355dcfed82a9427fd0f021b4bbba4f94e1ba65b2206" } } \ No newline at end of file diff --git a/l1-contracts/test/fixtures/mixed_block_1.json b/l1-contracts/test/fixtures/mixed_block_1.json index 7d4e34b1f20..879684b3431 100644 --- a/l1-contracts/test/fixtures/mixed_block_1.json +++ b/l1-contracts/test/fixtures/mixed_block_1.json @@ -52,27 +52,27 @@ ] }, "block": { - "archive": "0x0cdf664d86731715d9b4b90eb54fc313b6ed470b4d5f7379e6f79f1d123e5c8e", - "body": "0x0000001012e5643e26da426570dd999e0e044e5f83d60f3cd813c55059bc0ea0f4a7c9d413b2d2cea949fa0876265cd8eee3a4dce1e243783562ea07e2de537f469f7bf627abb3d4560e786bafd52f77ac52dea36c50419f32386567bd969b0c38e1bd7405d339cecb99fa74bfd631917f965357f0341d8c4dfe6a8f4b621d8df54c82941d560ac24523012499eeca2594f20ce238b7d21b98ad5c638767d70ee05532c2183e6d64e69b005709dfc4771c7ca5981adc54f3e8bd1b00222461ae90e44eda2f1d4572fe0b0b23100a7ea6d4780b25e826e41ca9e71897e010bcb218887b3d036d44eb30a430b5cfc6660270eb5fb7f274689ac73dfa53ba9d0739fe38637f01f7130af8c5888d4c65ea68109a1d58fe8d7d1ae62098857b0a3a3dcd393ef80ed8bcba6eb5e3b4887a32c51c5853b97a5eb59c87c520f36423c6d7be06071821ca1719330de5e3c51a521778b49cbbc1d53f8ed42e0562bf21ed72e8cb9a410b0e82ef5f7276df41353faef675fb408aeb246b6e2f704cab99bf28d1427e7b0fec7b9929c6effdcd045d3fdcec1d1b73faed495444699fab936630d69b519f0bf4f1453db36439419dbfba703b849d1aa5774fe9a5325e5bf3e7cdda9d1f7f2a9c2a035c72fd4a3e383306aff03448f9accc08a2c665837560cec8675fe2512bfaef35a8fb7df08a81001a7fd4903849c0371dedd87f31295f46269c5205dd00000004380000000000000000000000000000000000000000000000000000000000000240000000000000000000000000000000000000000000000000000000000000024100000000000000000000000000000000000000000000000000000000000002420000000000000000000000000000000000000000000000000000000000000243000000000000000000000000000000000000000000000000000000000000024400000000000000000000000000000000000000000000000000000000000002450000000000000000000000000000000000000000000000000000000000000246000000000000000000000000000000000000000000000000000000000000024700000000000000000000000000000000000000000000000000000000000002480000000000000000000000000000000000000000000000000000000000000249000000000000000000000000000000000000000000000000000000000000024a000000000000000000000000000000000000000000000000000000000000024b000000000000000000000000000000000000000000000000000000000000024c000000000000000000000000000000000000000000000000000000000000024d000000000000000000000000000000000000000000000000000000000000024e000000000000000000000000000000000000000000000000000000000000024f0000000000000000000000000000000000000000000000000000000000000250000000000000000000000000000000000000000000000000000000000000025100000000000000000000000000000000000000000000000000000000000002520000000000000000000000000000000000000000000000000000000000000253000000000000000000000000000000000000000000000000000000000000025400000000000000000000000000000000000000000000000000000000000002550000000000000000000000000000000000000000000000000000000000000256000000000000000000000000000000000000000000000000000000000000025700000000000000000000000000000000000000000000000000000000000002580000000000000000000000000000000000000000000000000000000000000259000000000000000000000000000000000000000000000000000000000000025a000000000000000000000000000000000000000000000000000000000000025b000000000000000000000000000000000000000000000000000000000000025c000000000000000000000000000000000000000000000000000000000000025d000000000000000000000000000000000000000000000000000000000000025e000000000000000000000000000000000000000000000000000000000000025f0000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000026100000000000000000000000000000000000000000000000000000000000002620000000000000000000000000000000000000000000000000000000000000263000000000000000000000000000000000000000000000000000000000000026400000000000000000000000000000000000000000000000000000000000002650000000000000000000000000000000000000000000000000000000000000266000000000000000000000000000000000000000000000000000000000000026700000000000000000000000000000000000000000000000000000000000002680000000000000000000000000000000000000000000000000000000000000269000000000000000000000000000000000000000000000000000000000000026a000000000000000000000000000000000000000000000000000000000000026b000000000000000000000000000000000000000000000000000000000000026c000000000000000000000000000000000000000000000000000000000000026d000000000000000000000000000000000000000000000000000000000000026e000000000000000000000000000000000000000000000000000000000000026f00000000000000000000000000000000000000000000000000000000000002700000000000000000000000000000000000000000000000000000000000000271000000000000000000000000000000000000000000000000000000000000027200000000000000000000000000000000000000000000000000000000000002730000000000000000000000000000000000000000000000000000000000000274000000000000000000000000000000000000000000000000000000000000027500000000000000000000000000000000000000000000000000000000000002760000000000000000000000000000000000000000000000000000000000000277370000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000034100000000000000000000000000000000000000000000000000000000000003420000000000000000000000000000000000000000000000000000000000000343000000000000000000000000000000000000000000000000000000000000034400000000000000000000000000000000000000000000000000000000000003450000000000000000000000000000000000000000000000000000000000000346000000000000000000000000000000000000000000000000000000000000034700000000000000000000000000000000000000000000000000000000000003480000000000000000000000000000000000000000000000000000000000000349000000000000000000000000000000000000000000000000000000000000034a000000000000000000000000000000000000000000000000000000000000034b000000000000000000000000000000000000000000000000000000000000034c000000000000000000000000000000000000000000000000000000000000034d000000000000000000000000000000000000000000000000000000000000034e000000000000000000000000000000000000000000000000000000000000034f0000000000000000000000000000000000000000000000000000000000000350000000000000000000000000000000000000000000000000000000000000035100000000000000000000000000000000000000000000000000000000000003520000000000000000000000000000000000000000000000000000000000000353000000000000000000000000000000000000000000000000000000000000035400000000000000000000000000000000000000000000000000000000000003550000000000000000000000000000000000000000000000000000000000000356000000000000000000000000000000000000000000000000000000000000035700000000000000000000000000000000000000000000000000000000000003580000000000000000000000000000000000000000000000000000000000000359000000000000000000000000000000000000000000000000000000000000035a000000000000000000000000000000000000000000000000000000000000035b000000000000000000000000000000000000000000000000000000000000035c000000000000000000000000000000000000000000000000000000000000035d000000000000000000000000000000000000000000000000000000000000035e000000000000000000000000000000000000000000000000000000000000035f0000000000000000000000000000000000000000000000000000000000000360000000000000000000000000000000000000000000000000000000000000036100000000000000000000000000000000000000000000000000000000000003620000000000000000000000000000000000000000000000000000000000000363000000000000000000000000000000000000000000000000000000000000036400000000000000000000000000000000000000000000000000000000000003650000000000000000000000000000000000000000000000000000000000000366000000000000000000000000000000000000000000000000000000000000036700000000000000000000000000000000000000000000000000000000000003680000000000000000000000000000000000000000000000000000000000000369000000000000000000000000000000000000000000000000000000000000036a000000000000000000000000000000000000000000000000000000000000036b000000000000000000000000000000000000000000000000000000000000036c000000000000000000000000000000000000000000000000000000000000036d000000000000000000000000000000000000000000000000000000000000036e000000000000000000000000000000000000000000000000000000000000036f00000000000000000000000000000000000000000000000000000000000003700000000000000000000000000000000000000000000000000000000000000371000000000000000000000000000000000000000000000000000000000000037200000000000000000000000000000000000000000000000000000000000003730000000000000000000000000000000000000000000000000000000000000374000000000000000000000000000000000000000000000000000000000000037500000000000000000000000000000000000000000000000000000000000003760200000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000000000000000000441100000000000000000000000000000000000000000000000000000000000000640000000000000000000000000000000000000000000000000000000000000064a0000000000000000000000000000000000000000000000000000000000000641000000000000000000000000000000000000000000000000000000000000064b0000000000000000000000000000000000000000000000000000000000000642000000000000000000000000000000000000000000000000000000000000064c0000000000000000000000000000000000000000000000000000000000000643000000000000000000000000000000000000000000000000000000000000064d0000000000000000000000000000000000000000000000000000000000000644000000000000000000000000000000000000000000000000000000000000064e0000000000000000000000000000000000000000000000000000000000000645000000000000000000000000000000000000000000000000000000000000064f00000000000000000000000000000000000000000000000000000000000006460000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000064700000000000000000000000000000000000000000000000000000000000006510000000000000000000000000000000000000000000000000000000000000648000000000000000000000000000000000000000000000000000000000000065200000000000000000000000000000000000000000000000000000000000006490000000000000000000000000000000000000000000000000000000000000653000000000000000000000000000000000000000000000000000000000000064a0000000000000000000000000000000000000000000000000000000000000654000000000000000000000000000000000000000000000000000000000000064b0000000000000000000000000000000000000000000000000000000000000655000000000000000000000000000000000000000000000000000000000000064c0000000000000000000000000000000000000000000000000000000000000656000000000000000000000000000000000000000000000000000000000000064d0000000000000000000000000000000000000000000000000000000000000657000000000000000000000000000000000000000000000000000000000000064e0000000000000000000000000000000000000000000000000000000000000658000000000000000000000000000000000000000000000000000000000000064f0000000000000000000000000000000000000000000000000000000000000659000011000000021c000000b01453c45b00e4b9a564ced98590950638ec613525f2e881a1bfddc9b41dce55041cb96d8fd1a78b7078afd21e993bf88d39c6588d4adc62edbf02503c42b0aca6d453c02e06aac647141b005e241d2735f733dea4685536041df64e2d5d13f6c981a0b80bc8d94e3490a688ce4f021ba617b8bb5b18453ac824e66f7abfc703f5ae2b844bcb96e4dd478dd3f17fac851c1745a88c8290042dba40a23434ba28cbea50df7e1cb4951b13fe448ca6fe85b1000000b0262e0b94efbb3bad726526c8f1dfe7abb4b1e277fab48dc1215bdaf2daaf17eaca428361c2f2a93ffb776cd3f5ab9aa13051c4543c88764571504bed12216dddf1eaabc726e9dd84adcb21978d10e875fcd20d5bb4701c278f11d5111487f7cad6d92310aa51aff2065d85564d764aed1fd91d190f1bcccc14c8e71b19f6e722869c851b3c790e140701b5c6a8152fbe0452db67ab4cf63dfc61cb8f5ca63e22091ea15ba38374e02de726572ba9edff000000b02dd564d925644e3cc909fcd6814616363692ef8f79b5120c3e22f33ded265107d5b7518f7c2fc846365afca3285456fca072364b43d0d626cf5e7af2bdd15fbcf19d3ac37b1028f1dd8bcb51ddc4837ab10b7b4e66af89b7c39860314b5fdd39755188f9f6fd178a6e060efc5f4f70ba0a088f687f5f8080b0ddaf90158c2a73cc436d042905c12fdb03b19f292a212929eb704a46723fc8c9c67b1ec2e542ecdf9026e13c9bc55801569a40dc06fa060000021c000000b00eadadc76675966e3c03027b41970b1ab0510f2d98340cbd2d244514a74e181fbcba00a1370265c8e51d6f2b2ad7558717dfcecc7f004a5b1955381b1838856b40a616526f5f88f3d735492c3c5bf245c4bea2e7f83fdfbd2f3bffc373e642e5c89652b7b04e47f310ff7d748def37ff1903ac54d105200d226fa6b707e1bf3f1eb05bf622ecfb4b833f0d08ed05f5c21a7bd8214dd9c6b3f8e2d9464ef521513ecfd64c1f98abdca8707de65364027b000000b01f0bda7d83b5fea9461c09f20640bdd504049a548d8a677550c52f3c56d449ae3a592762311b861c418ee371b9825fb4b6630e80ab1d0a93b752faf048c49fca3acc21049e2600ab45b42dff48e22c5e19fdd1331b597d977a3a2053b11bd5baca5ecfcd302fadc401e3fe74821516d7085cf4cacdba7748b1e26b014350a013c22bcba7853b50bff89c2f39baf53688144f48e0bc1b9de5d1215d249d584cf18b3eca3ad8d5d476f2be4efcf68e171b000000b0204f25e4d7619cffee3075fdda079dffa14823155a070c91b19142135efdefb6df7e17590947558c0efee403208380b9951de8f17d456db2496daf24093ee5e05b2dc1a786b634d41423f0847c0a4a3200f1baa40cc9ced9d141861a83b0063a98daf0501ea0a7fcca1c899a025bc6340390687f63346b7d6f5bbfd96b6f9115560b42286453395c6c91e4a5ec382a8422c9f30cb47208eee3de05eeac74418fdd90d53d13052701ac1da0d112fad9940000021c000000b0073f12e1cff9a046eead73f1163a16f64eaeb1d7107546ca51ef1a787132fdf9cc4b8a99c5e03c03420562689358bfada6fa2143157560dc7ffc2af10e66cdf04271c9edff6f275514103f15b9c14912ea3c83f3c97990cedaa7ce8073792333b5fae87268746e654b82cff646674a202ba29e0741e5bee2fc3c8a7227898b66a49f3c7224340b961bbb17e175b4b0b721ddb15b326174c8e234f66ca2cfe9f7e8610492bd9dc454d1b974f78518f26e000000b01459bd2aa4460f6ea031375aefdbb2302fc2a7665a3157e9262a4ad2db2914060b700b517292eecccbb7f30955a01436dad3ff893676ca5f37592a82617af6c4dbcc61bb2bab9915ea623ec6d89df861ff05f35ab0c6db755d846aa720b435e024d6d7f34aef5870caa8f78f58ae495f2ed80c4b107916dfa0a52b7b5d2062a2ed1d26727d8be128973bb7a8a92082fb1c46215574992c59ea77b48e727f83ba7a2d4d5ec141dc3aa533dc1bc56b797a000000b013e0af63cc1a951806874a3d96c6609c80f3669d308817aeb4747bbca961ea6485be7b3cfebcfbaece59413722538299fb4d336031a242d2f7287d568873c01836657ce7628915aa69c625def994432f4712715fa12ff5995c521a2389dab51e08ce2f41fae736eadfddabe07bd23b33211f86de6e3d0642ad84c76c478007622dbe6d18bde746c76663889b08b1f0200a7bf2beea2ed4c749777d05d7ea21c6033aa80c7bb39ddc98d73555ce590c2b0000021c000000b00cc5d297624d9e9de04c1ed0e5b6514bed3395f3b1e7d9388b668bb3ee5e2649772b5c7e138ab328212bc056d3f542ef5ba9e737a4ed27f6e4e498f38ee6fa52b5d8c39c4787eb2cf07f09234e26efff1b3e8ce5cc0b3f622e33e61882842767270a7c384d772ac037b4af51980250b314d9f15563162787ef401a48d44bb89faf893f198937827b34f1860344b2f057160500199092e854ca0d0be620cf1fe47615a59062f576fe95ced0fe1a1d755b000000b000d65b31e42213cb038ece95de8f5c430bb9ac994c4c7c7f2aad977f066480438c6fdf5bbce378c01202fe5cf23f4de02a8c5f3f58aae3e8f322266cdcb6734e556b3ced61f20a1a1b88302a6c12919a0d5670af43821dfb3ea38bf1ac477e584fed3f19643e136079af552562aca3330112338de69599db6757c2230ec8c5ac26a4f6820a4bc287fb8ed6a3e4fc1d9d0ff2120fb2f9315c8919209d341059f441616b7ef40870d261b280cfe1927890000000b01f50714b0f61347e1523a0688354de8c5e717390f693c9cdef26a584794f39d45eecf7963d224fd97ad699d21271039a26c962c2beafcabcaacd0730bcc1029d9d81e6189c07874989ebb69e94543b6ff8cfdc239c6e77bc918737e6fcb56c456c8d58deade9efb64c5c069489a95dc11e772e285030fc63e5c0e37d34f2bdfbaf865ba339f554f090b4b584a30b8fe40f33ac376d5d3be138b9c7fab3d057372417048cf70d89aea400e904a7244fd90000021c000000b003d759720da2315273c204b6d7890a3965304fa846763837c534fc82e6c322d7406a182ab908bcf5de4d052fdc4147b3656b2a53449c4cf42d38b505174e95cbf63d750043038d8e13a12f40e9b5648aebd03fa3aed192dabc31ed13e8df8c2a136324edda13bb9831a2ea2a00988db60491fb2aa15d91285acf03331666c7ec02b8afa053a9b4d5ebba814e8187574b2a1874e4d1185eadfa13e4ac30902253c79402d7df7582c0f4ee803ee3886d3c000000b00e182cc48ba3dc9f7a8129a07f36070c46a4f237ac372aa8f5dee5646f35d7384912a217b8191d401bdce50de9261caa0121f587e6066f7b2d1fdb69837ebe8f2ed2dbaa4788e76104a3effa9a2faa57c5b5b63e97bcae40bbe8b2fb3f7aab30a31940933c474348e725f5a2f2b0eb7e25fc1402067d8d881378ebfba50e9614849cb105c814dd7b896d27c2d8f692e71a37695941f826ce13d227eee2690db1bf7234f532b3e2a00e87edbe633c5404000000b01656d5f2d23ef393dcf0db547f9160e0751a93ff005f8d9081c06ee49dbf428780dc4353907a7b80299561cc6ba259760ec6873fb2f3d41b929d997b3e138aebecc4d67ea500092036b10035e5978f7da1293dbabdb4226a4c04bbe4fac747ac671690f26fa89a915f6f03d949813ca90ce3dab24a594dad84f32d960bd3c48e27b1ee5b78865d4ae9d6a354881a40f411978d12f93003fcd7a20607b1d862ec6ce06b36715614e8f5b7c07e2ab5e9e70000021c000000b010fc206c3dd60a9c5bb378fa10265e5c97f883241bdca676178f9bd90f24779d263cc046acb4212423612ed97c2cb768a231b7e76c8ecab7fa800a81a7a7e70f66c99d5af353245fba52fd9f66a62032965a15c2aff6b5acc79bf7b4c3913217fe1e70961c24fe3c66d03282bd3151ef23568f4e663a879693f0d938f7a839a8b9715759a7b5eab5ebf7ba95b35b79311735672876b6a3ffb2823890714e416fcfaf0e7649a271ff6725dc917950699b000000b001910e5c283262409f91474c5f1eb313679188181846bdf9091fa522abd134435a1e95c27e0ca7a219be545baa8524aa1369cc99af9b984a585e76bf769fd3a9611195d264371ac37faf8bf7579ba2c1c21408f13dcfb92e0c5211bd46f3bb02ef615d3026f31bb0d2d24872de8651181b084682af96413f36c0fb670d634991841bd68c84f3a4c609a310639586344817e38a88261efea5464e5b42464bdecd751ba5cd7527ef3f4d9c07dd396e713a000000b021424cab97755958a7f27708f7b6957cd098c04ec1d52893796701354d0b04b0dd824aeae0e8f1f8e52cb80b2391dd1dfb5d6a0deedab1807c47a4ca87d3e55dd35761b45973900979f0dccbf4137ec8c21fed026fa08883fab72a51786b7c412ab1fcf56ce3c209b6933dfff0bdc212179081fecb9e882e242b73b6e133306af924efa41f874a05a1f593565d350b80028c375c06eecdcaab96258a7af537e4b320c2c55e5a76259743306b31ba242d0000021c000000b0196f50ae12f37d69b3c5692d2bffc9701b16fbbe8c4bace8fb916d08a99950219811358f28681720e8441eb332fdf13d27319c43ea98351c6451fab622acd699f9d870b83bdd8feedd831d876af7a12575f2173310aa747787e7284e78361eec33d4539442b60e3d178492c3173764400a457ba8afbb9aeccb51d0b311c8ef161fa9e193c1acdfaee2e654c92f682fbf0afd8f3e417aeb619287b2bb46722ee97d2f66b51be6db2e9f3d10f4b9f5ab3f000000b01ce9eb614388fd13206905867dc7f028fd91a5ede7f2fa98acc8be1564ee14d423e688f14241bb49d53fd0a34852ab3984e8ba251e623a4662c0e2aa2cd517b680b432724c56a198752799348c3531616f9cdc0870ec134d35ebbec414ffb595ff3bcb64db4c1d3750ccd66e99134bb10daf5275f7f445a9d210f308470ce0018e9f524b533f745dd04ce2af09ecdefd2c1822e813b90ab70bd703976b2af8c73329b9b867b97d4282d747eea3f48ba0000000b03023c224d5d780b38bb6e24e5a5244b9711016c24cd5b32d185e9b3de5a2760a26ad174049c676fd2d95a79fb32785927a27159459e9fdbbf7816767c9e19f497fe44e2706b99d7ead840afc1263544b4ff3c0fdabc9a63bb5871c623aefcae002234592ee3fc42f0af7f57b72caeb5e20f5444a2d0e32bb5b7ba1657adbc713e9b923287b4ef6560dfb343fdc32d5ba2b3d371411805a0bd78e9543d1f40746465c99c58c957fdbe407612caa0f508e0000021c000000b01f2b60b40f623ea6302aa8024a9862409c01a1850358d9cd64decf4d58a1c5ca213393fcef36a780d5f1b04e519f5ba2b687f3c8c68f3ab4e7e18ac14ce1f74142beaf905805803fa87168962b9ab35b4ba4e0e87a2d73d99a4e5c8152a158621ebaa9b61219c7665bebf743e950a6a3084cc3a6d4412ad42e9fac8f212330cb37d6bead44aceb0a53cc3077ec56b76a1d4d3cf0f45564dc94a66385fcfd2a5d44cd618a2bfb82d6e9c66ff93915468b000000b02f0a536db4fd08da9c1a04ca7dfbecd6aaeb6344cbe6c291385423dad46175b5234e27bf730cb45c5b25cd7db9ceee8ca9cf26dd45194ccb90ef3bf988219aaf6f01d45d525e5ed7bfa30183fcfadb6c5f715e4691449e3ecdc6d1458ebac61072d8a94deb6b9ecf059438281feb210712f25512b17e9be25633dcceec106b877eaae20ef06bfa43a5dddafc1def7ba20d2b172b13147a9a287e4692f88f5d4f9901c78ede1069b45035a1fc996dcf59000000b00569724074fb5a91df766bbeb5ab82eaad0ccc0051a6514a05f00c6640ff660102675a157c49a877899a9bc5cb38879b4a4bb327d58a91303e9c05b83dd1b7f1da07e1cec9f448c05812fe4b2d199d06a04c586287ae58c9f2461e2286e5d71256fd6dc0144c2024b63bc3da657cd04a17ebf37a2cc6d6b597e4ca07566caf900e20d0341b1be9be34fdc49b26b6b18421550c7dbebe16c2418a7a444791ccc66509742cad19e887c96a89165fce7a7400000fa400000168000000b00d83ced7a29892f41e67f6aea5ee7b3825d2ebc05ce53b1c3d44c64bdc34a22db9f3785a63b4d03f05d98e6cc931dad87c1b919ffca46e0583429758f698623f13e949c8091eddd5410c664220aca841f9b62bdea71f13df6c5d9ff38dc71fa6bd1dbc36b7688bffa2947a773ab7c13a275a725e81b8a69323246e8b5390eedb832902fd238d77adcf52573072a72e140205828926b4187da5622b0c4f7dd4a65aead5590c2944b6d04275a94f278244000000b0259a212f37220c66a8e77e9ef68ea5306b69288ca20debc2f785b810de193e30f8db1a84c64bc4b95cec927eb03bf1d30fcd4235224f2fdb867e9520513fe0caf1595a598cd69e7173795294acd1f754babc1a6fd9a1aceb202b64b200373090811ede8be67037f21d6f09125617bb08014ee3b6e8428f8e5ce547ed205ba3497c1653d2ee2dffbf0f8726496773293e09a2b8a0bbc487883023d07bcc1c25c5661dd20d2477cb06398cf088df29781000000168000000b030448e38c0357204e49790a794e244e14276c8636d04bd07c8af983579f8e6d02ea8728bc4a347d2985167f6c8efa1f44f0a7296e18d7448a9d7304a2bfb182d92bf382267155f6c20e9691555855daa3771f8f3907b3e3ab8c4bc1338767ee81b4fa4192a6accb5237dfcc4d2914ab31a04a53a3edee6dafc9f4717640822bb3677a4e8f45db244d4d439718cb96ca20990cd39aaa5134abd9778279610dc66892b148541c08cbfe2f622d457dc69a0000000b01d3bce14929d29c1f39a13afef993127f701f53ea490169185711e58bc23d4058b75dbef531767e3a21e86aa99a9ff1dabad56f2b21b86a0f27470c466c9a42c827128417bb7a8cb94168474902ffd3033dc877f688f3ce82282fa925a5b0796e957ba5518e41e9402fde6ba15f6a689171928e85acd9b642932a563d9ee50e7b800bd0d7f23b788c342c9c8874359bd029b934893b5eb9cde4e8459f0d9a7a9ac7ae86608f0243af50ca11d0007dca500000168000000b0254687b0f02f23993cff900d9d423339c5346307c8d51bf093c1ec708c9f104e6672228f09b9b42c9cddfc269b5ed0760a356f5a24e6376159431928287808981a564f0aad7b935cb5edd2a0c0b3d5bab273178f90de8061eaa02e4f76afedeab4b4d6a61170534220444fbf727cf79e29bd9c12bae5d4d24a99c2dc44258a4d8e2679a0783fd18240694c33ea9514ea0b3da004949cad896ab4016f211c00053ca9ab7ce845b8b3e2ad094f2ab65828000000b0294181e1f9b6790ea814200e3789b6e4e420b0d04ffa697fc11c403a1ca77a1cbe64f3593c4999be68801e385ab9c47debf1ef30c35e18faddb8514ffdd57b6991f354d44a37cdaaf4a5778b26bf2f6714b78b7278a1188cf0c4030207bdf54b9efbe76af64a68193e2ee3e67c365a0707325af3987fe35040d42310d89d02546f456a1cef99e79958219fe9a647781c08751aba0d165f25c64b19455a432df02e03be9c763fe7d433c402cf1d8f57bc00000168000000b02cd7f8c75b75c8ae998a6c26de45f01223d6e2b8e28cdaeaa6a9d89b2914bc9172a3d3e88d2ebe51a1652b798a669ffe279491f7d015f15b717647257ca6f2e903fc7086f43a896ae837c3e755fdba80894f1052e5806ca979c806d0b7f1fe17ca0a301bbd1acca53e29219626a39edf1ea6ca64efb2745480282e3658f55fc36565cd1509d016b2823e0a8b0ebe128322e2a45196fd9e9c4ba6d9d32df0682e554310399ea67f863338758212985308000000b0099b3c1037268cf0b06fc34d08e6f8f69d072b62094161d237769cad734794b02f16b634a1be8e1e1b79e680093b526a48223a43d32f65ebb01513ec00148d44c5c1b7850cab67c6d92525ae0c83cbfdd48003229a1c87db46f25b7b2e392f7fed6148f64615004ec7bae612171b3fc92289cf623db9412fa9f78ca4a3da32b7e5feb13d6e9d549660766ccce969758a2ef89f78ec711baf106fee9d782ccde3ee39882e4ea0153249b3a3f4bc875ff000000168000000b013c81a59b11500d2e42396bbd4ff110f52399e9e716ad257a381ff539c92dac73e484cb6671e5e351eaec78e134981db03177d8b45d9dff62a170fc1b84ebed24bfc1a71e5f2739446f4c6d88e5ae872874d560caaa7a0895393b794ad0bdd9636c0fe1bef02e8ca8841d9d638651de31545c13f1ddd71ad4d73229ed9f21fedf3b493fcf65353d6ba5d2e0e98b507351377c71c346bd6298f87f7bda61973eb38e4921826fa7db46a173f5c605e5ca1000000b00f50122d60b1abb94d7fbdccd58103770f94ff46893e725b28a88a0f7cfcbbf7e3aafbeaf98ee2bbaa3fd35e16f06507dd4fb62767c2764052ce2805d1bc614e148966142b19aee3f01500b8ac4bd8b432e2fdeecdea90fb466ee85601d59987dde65baf9fe7718abb41ebbbb48293ee1cf74cb1358474a212baf1a6b07864c47519c54a0976e1a5587528ecdb95e70000dcbf6887e86b9a48b57b0b74bfd6e22dbd172b8f33a5e13a58bf37d9d49a0100000168000000b0188ec22ada703efae5ee94afdafb370ed5454160388e5412ec145817691f4e5b8f1f92d75d5d11492924afbfb3029683338d6765e2deb40ab005460dbf19f3f13f99ae9ad17714fc0a5146354bb4e2be80dade70aa3451b419f33795c9568d176e446e8b1342512f95cb9a1ae7b1b97c296816c0ce62e306ca507fae5223f29a8b81e4b9f10368884864a8ac8b2356131faefa0a86a015a640446a7d04cbec7a6b942e6ec79a5d3dae53b1d8dcf14e94000000b01ccd2126274af5b76cd6d10ed448e883329e0769f09ac1328763c211c2e88c33825af8f3c0b09e833771f7193c0b60ecb6eb0a68dea3751aa2b44158d7912cc06af4dc483851e0b77adf85102cd78922f852cf1d5280c1d3e60bf3e58535bcf51175e5573307f2c64e4813caac2a2a160a7fafdaac77761d465515d405ee61fda39ddf14c877591379b44c5f7f1e013514b78518b49ed9de57c2a4e08e7d859a1695e8fbfa52475599431ad6685264a800000168000000b01773f6c0d783f530bf1858b343f66299626e43bf786d7d26846b391a5a6eb384971fe47a8c1cfe5dc910f496ccb314dcff5ad2bf783377b76eb99c624a2448e2f2e6f38a84aefd0e2781dd4ecb2e60965442cec23d0d4743f9f66af080bcbbd5ac30430812d1846b8b33eb47cc4cf0ee1ae9ecd1a15d7a92dd0952cdbd44be2a70f8a9fb27b001159ef8d88c2692d10e2237baf5758c3f0478f4655e1a08201d1dcec97e4908061a4bb00e3e1de8e135000000b0014648bea868122778cf300cdbb72d434ab369387d0eaeadb1e8e0efb2071c52f35d4117305f2821421f93ccbd85164a3c4c243a8503bbe8137b572e2337107f2d24be0c927a5b8364235f09ddf6475e6fb141d076e102b3073e5c446f6122f116e5708ff7d9a6c034922ac3868ee7cb2d99f0d26f2c852c01ea7899522ab176e76407791d7a774cf4188334bccce4480cc135b9fe10069b38bb7ec4df37e895052248c64fa46e806dab6c2aafe17c8000000168000000b00381f309b9939b7558333509dac98f269d5a2656885a702daee2157713d4d8df9b9056f1023d31a1b66471ac33702aa139a1a24ecace8fde71d703e99a06f1e596b519b94b357fb57820662b38182874141f01186372949e112260818e337571efc3bb014f9b432e866c5f9edd08b67c2f4f6d02210465c271cb90a077fb9a199eaf6e39c34d056086b7925313c09c0c0a692f399cfd92bef20efffa4d2c2b247ca149743337df730485f52a440cac3c000000b02c81b134ee02b1d34b691d1b5be827a2639df2123098979810bf013dbfa628cffbe16ac296f9a4a3de1a09f77d37a603cc8ded4422b067793d6a765a9a371709aca92f3eda3c896a944969affe2cb1fe8b1fda2cff90f98dab077e26fadf949a5a56ec9a20ab67629cb691eaa3d9d1b60cdbedd385a1cf7aa527f575833f4731a559ef35589e3dd0e4757df2501de74c2ad29b6949dde4b3157af8f020336d8277891c9d1518276cc04a073d0e4fdad600000168000000b0071e4ba97d58f9da74106ca1311f6908fd18b4cedc458c32501e0e482d24e128a02dc5ba0cf072bdf9e38f561e320b445dbda642b7eeb53bdcc3b2305237f169e6e4f322ad86ad8ba76d1199742e6b5677ef1c73814c1cc7f823f0354e118cb4cdd97088718854efcd03e0d750fec9b9113f38eeca55f087aac09c94bdb42646e88683bc94bd3027b1611f020fc505ad2ebdb6cb37d1a145234721b6f5c01bdf70f6fcd53bdc660cbd4611974d79d37c000000b015d6349f425f703c98bc524e67240116c17276769a0c343a5c39cc76452ffff2de640320f8c81c3429fee0146c88822b18bb5f4ca2b8faab323601f984e598161496ec3b0614a5f56e17686978e0fd8dd71b5c90243de9780fefc66830545bf67cdb9b41be31fdcfa90644d67901c90414bda2373d5a2ec0718ee8b0f76841a6d332f9c69555bbee77eb37df1608f1462b701e8fa4423d71fc75f6a5d3d7cb73ac122c242372073e19266d502b79d01200000168000000b02abc447694de0e1023f7ccac6889bbfdf8369adb543f1ddf7ca261b3d34cbe16b7414e0b79dfa5154285087ca3cdbff92b4f816cfb915f9450f954e0273de40264e37cbef6cfdedbfeaf3cf9876176bb1abe57205e4e0d7e99c74f9f933a55afbf689e3172f6b28ffb00c8b84987952a2ebf20d955f41ffecd933707a772757c9b315bd5eba5ee877907b8f05fd9a0d430123e529ecfcaa434cf40b15310d82c6185303988495477f62aec72df7c26cf000000b021902fd3e59ec1cc3db385e4442441c299dc37c1e6866e85d2e6c0fb4566888ada1b19380134618951ad638b2485d63e40beb4a60e2db6fa518424f4be88c7b7810d087df8553b513a89069d13a38581c21c346e37c5a8d6fdb452762ddd1332a767908768abaef2ac8a4d31697528840aaceab306f706fb558f3cd3f6c8c733fa13151c88cfbb5c932533e5f9238fae050cb2b0c325a29631effbab4237d2c9e1f4ee314445cd6dd6db5804d2502b6b00000168000000b0122ebc0b3013682691bb7264b9909cc4edb0d13c93a87157e984a58b298ec5960603815150263297683f0504b3486a9bcb69d7ae8b4b48bb5e847b751b9641f72c35b109dc6bc8453eda247e8bde7732b1a735d2200a19b2df3fa24a567a673445668466a0b07807f68086900b53b58a19e8aa92461135e7177ca6745d0d4e56df9b581ddf8d202d2e71b00591528e6e0d6f590586e363da71189cf2e5dfb25465fa274d0a94031a61365002757c1f28000000b01d9a84a93bc0c2cb6896362c1293e6d2862c05fb64e9e60419dd5002685f6441207736ae83feeb8c04ba2fc30306c74ade26d5cf207e31cf257b728e9525c681f205e21e869a6f1d0043da1b4540261d16698e2f5d9ae03c762464dedb6ca8ce996a9f4d0de3fae29cd5a44eca38036f1d33883181fa2c21e27dc0e1fc6499cfd39a5e9fa64cc44fae0e3a254f105c5113d6169ed5e2e3dc6044f7e85b64efa287955bb79aedcdff31228b9576f48e47380000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000028100000000000000000000000000000000000000000000000000000000000002820000000000000000000000000000000000000000000000000000000000000283000000000000000000000000000000000000000000000000000000000000028400000000000000000000000000000000000000000000000000000000000002850000000000000000000000000000000000000000000000000000000000000286000000000000000000000000000000000000000000000000000000000000028700000000000000000000000000000000000000000000000000000000000002880000000000000000000000000000000000000000000000000000000000000289000000000000000000000000000000000000000000000000000000000000028a000000000000000000000000000000000000000000000000000000000000028b000000000000000000000000000000000000000000000000000000000000028c000000000000000000000000000000000000000000000000000000000000028d000000000000000000000000000000000000000000000000000000000000028e000000000000000000000000000000000000000000000000000000000000028f0000000000000000000000000000000000000000000000000000000000000290000000000000000000000000000000000000000000000000000000000000029100000000000000000000000000000000000000000000000000000000000002920000000000000000000000000000000000000000000000000000000000000293000000000000000000000000000000000000000000000000000000000000029400000000000000000000000000000000000000000000000000000000000002950000000000000000000000000000000000000000000000000000000000000296000000000000000000000000000000000000000000000000000000000000029700000000000000000000000000000000000000000000000000000000000002980000000000000000000000000000000000000000000000000000000000000299000000000000000000000000000000000000000000000000000000000000029a000000000000000000000000000000000000000000000000000000000000029b000000000000000000000000000000000000000000000000000000000000029c000000000000000000000000000000000000000000000000000000000000029d000000000000000000000000000000000000000000000000000000000000029e000000000000000000000000000000000000000000000000000000000000029f00000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000002a100000000000000000000000000000000000000000000000000000000000002a200000000000000000000000000000000000000000000000000000000000002a300000000000000000000000000000000000000000000000000000000000002a400000000000000000000000000000000000000000000000000000000000002a500000000000000000000000000000000000000000000000000000000000002a600000000000000000000000000000000000000000000000000000000000002a700000000000000000000000000000000000000000000000000000000000002a800000000000000000000000000000000000000000000000000000000000002a900000000000000000000000000000000000000000000000000000000000002aa00000000000000000000000000000000000000000000000000000000000002ab00000000000000000000000000000000000000000000000000000000000002ac00000000000000000000000000000000000000000000000000000000000002ad00000000000000000000000000000000000000000000000000000000000002ae00000000000000000000000000000000000000000000000000000000000002af00000000000000000000000000000000000000000000000000000000000002b000000000000000000000000000000000000000000000000000000000000002b100000000000000000000000000000000000000000000000000000000000002b200000000000000000000000000000000000000000000000000000000000002b300000000000000000000000000000000000000000000000000000000000002b400000000000000000000000000000000000000000000000000000000000002b500000000000000000000000000000000000000000000000000000000000002b600000000000000000000000000000000000000000000000000000000000002b7370000000000000000000000000000000000000000000000000000000000000380000000000000000000000000000000000000000000000000000000000000038100000000000000000000000000000000000000000000000000000000000003820000000000000000000000000000000000000000000000000000000000000383000000000000000000000000000000000000000000000000000000000000038400000000000000000000000000000000000000000000000000000000000003850000000000000000000000000000000000000000000000000000000000000386000000000000000000000000000000000000000000000000000000000000038700000000000000000000000000000000000000000000000000000000000003880000000000000000000000000000000000000000000000000000000000000389000000000000000000000000000000000000000000000000000000000000038a000000000000000000000000000000000000000000000000000000000000038b000000000000000000000000000000000000000000000000000000000000038c000000000000000000000000000000000000000000000000000000000000038d000000000000000000000000000000000000000000000000000000000000038e000000000000000000000000000000000000000000000000000000000000038f0000000000000000000000000000000000000000000000000000000000000390000000000000000000000000000000000000000000000000000000000000039100000000000000000000000000000000000000000000000000000000000003920000000000000000000000000000000000000000000000000000000000000393000000000000000000000000000000000000000000000000000000000000039400000000000000000000000000000000000000000000000000000000000003950000000000000000000000000000000000000000000000000000000000000396000000000000000000000000000000000000000000000000000000000000039700000000000000000000000000000000000000000000000000000000000003980000000000000000000000000000000000000000000000000000000000000399000000000000000000000000000000000000000000000000000000000000039a000000000000000000000000000000000000000000000000000000000000039b000000000000000000000000000000000000000000000000000000000000039c000000000000000000000000000000000000000000000000000000000000039d000000000000000000000000000000000000000000000000000000000000039e000000000000000000000000000000000000000000000000000000000000039f00000000000000000000000000000000000000000000000000000000000003a000000000000000000000000000000000000000000000000000000000000003a100000000000000000000000000000000000000000000000000000000000003a200000000000000000000000000000000000000000000000000000000000003a300000000000000000000000000000000000000000000000000000000000003a400000000000000000000000000000000000000000000000000000000000003a500000000000000000000000000000000000000000000000000000000000003a600000000000000000000000000000000000000000000000000000000000003a700000000000000000000000000000000000000000000000000000000000003a800000000000000000000000000000000000000000000000000000000000003a900000000000000000000000000000000000000000000000000000000000003aa00000000000000000000000000000000000000000000000000000000000003ab00000000000000000000000000000000000000000000000000000000000003ac00000000000000000000000000000000000000000000000000000000000003ad00000000000000000000000000000000000000000000000000000000000003ae00000000000000000000000000000000000000000000000000000000000003af00000000000000000000000000000000000000000000000000000000000003b000000000000000000000000000000000000000000000000000000000000003b100000000000000000000000000000000000000000000000000000000000003b200000000000000000000000000000000000000000000000000000000000003b300000000000000000000000000000000000000000000000000000000000003b400000000000000000000000000000000000000000000000000000000000003b500000000000000000000000000000000000000000000000000000000000003b60200000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000481100000000000000000000000000000000000000000000000000000000000000680000000000000000000000000000000000000000000000000000000000000068a0000000000000000000000000000000000000000000000000000000000000681000000000000000000000000000000000000000000000000000000000000068b0000000000000000000000000000000000000000000000000000000000000682000000000000000000000000000000000000000000000000000000000000068c0000000000000000000000000000000000000000000000000000000000000683000000000000000000000000000000000000000000000000000000000000068d0000000000000000000000000000000000000000000000000000000000000684000000000000000000000000000000000000000000000000000000000000068e0000000000000000000000000000000000000000000000000000000000000685000000000000000000000000000000000000000000000000000000000000068f00000000000000000000000000000000000000000000000000000000000006860000000000000000000000000000000000000000000000000000000000000690000000000000000000000000000000000000000000000000000000000000068700000000000000000000000000000000000000000000000000000000000006910000000000000000000000000000000000000000000000000000000000000688000000000000000000000000000000000000000000000000000000000000069200000000000000000000000000000000000000000000000000000000000006890000000000000000000000000000000000000000000000000000000000000693000000000000000000000000000000000000000000000000000000000000068a0000000000000000000000000000000000000000000000000000000000000694000000000000000000000000000000000000000000000000000000000000068b0000000000000000000000000000000000000000000000000000000000000695000000000000000000000000000000000000000000000000000000000000068c0000000000000000000000000000000000000000000000000000000000000696000000000000000000000000000000000000000000000000000000000000068d0000000000000000000000000000000000000000000000000000000000000697000000000000000000000000000000000000000000000000000000000000068e0000000000000000000000000000000000000000000000000000000000000698000000000000000000000000000000000000000000000000000000000000068f0000000000000000000000000000000000000000000000000000000000000699000011000000021c000000b0224ec7c2b1b37e6007d6974a7b87344bd0811a307400c93747925ece0b9a1cbb93dc5eac6f488c5be1e92c031e995d9c3bab51caccac635070c370896e747b62e8824abeea2c3b71aa27c7b1d6acee4cacd7b70b1174d2cc5901377067c181ffa5661d4252bf30d35bf380a2ccb8280b2d0910be5a8df561dead2de383bafcfaaef0f38b68665584c1cc2ade7ad918610b5b0bf28dbc2059d5fdf811e18b826dbd0c0c070dbe30da63ee993e41ac8ec0000000b0050a8c626fe1a9404984e6eb60ae8904400eb11370f4daa5928f1124a39f31c6154fad5e4206a9471c862c83c7d1a301f27add33791a9a7e9d1ea9a03657b2edaa2c0e72d8cabd4100c3f8f002dc230e3731a85bb83688bcf63e4dbe797f5431639c180fb2c679bdbb9ea7befe6c96c42a39fefff30b5e010fe821c26ead8bc4db1288f2505432a1bc7b118b77c07b8e2b0e748b346135c1e1c2420ce4938d268b86e7be4a04c2430049e5265335ffbe000000b02fea155c5d68cd354e9b66fb8ffb23fade2c3a6c0e9bc1fa33e3d1a49a8fb71932d7e60c3b4289375fcedc3dcd4b1f8d77ef021dca2ae9a0f9d99bc9c3358fc89b0d07d8ba50c6459dc788de766ccb9fb5935145aeb80cab053e725546cdb0a86dddfb41e95c8ddefdd0ba521739145c1dcfeffe2e45982a1348e76ae3f78173f122b7bc0e05b3ec9d7e9f41f6dcf4d1179c1270ea584942aa3df0ec3d8b5be39caf18f0d1ff6e1dee21d790021f3bf00000021c000000b011949846714b7ebf644ba3a5f73d621f5e0e1e359a1e5ea53ef522edd0f97f3b2cc1caacd5f88fdae875ce27b1396f3477842bc106f0e15d2f3553411f31ff4a6cfc809211e7a40bf555c0414a98c2217f744804bd5845a8ab6906480b762f447ffc940f9384e001081d9d189f0025eb2d71ef782db7ac33935a289a7d939862143336b1435b5941eca40109109e7ed92c13784359cf367d10ca0ea07b2d2deaa052f7ba06cebd24cdd9911cfad0d932000000b02e051993a495652f214c60a94d32728d3618a31ecfb539550c587a169aaa339a0bb6b9ab623d945191d4f1e03fbf1d6193f84eccca7c34614b57ee3091334504e336fcb819bfee804fe46cdeeca853d65acdabcc53ef27853bddb90741c564bef404fc724d86ec34b3f7b76f6286ddb917ba198f86e139e7f75d99d156961bc2723234baef29a4bc86ed194fd1904c0f1c8516f96c58ad3a4c223e410db7a38d6aa14518bb4c805327401c844c8397a7000000b021251fb1b684122d9b71978e6a2222607e3fccc34a918174ae3161eca14fa757b4580f59945104a52e19ab36c0af276c4ef806c9e5efa2374b5b64072cdf5052aa367ae675d9fc6b1be228931cf1a8ed565ad81408eba6ddfb103827ce370ed0dd2bca47fae0d4e7eb00fa1ba5b2d6e207b8b2290f1af89b8e4d9d417407c6af4b7fdc96865405debb09b7913f3d5146103700298d10eb0b97b9321950ee75f5b09413c44b9753307205d6900a99ead40000021c000000b02ba76e380ed514eaf6cf43648b98a86b38feb19ec7a6901ed169fef414e6ed64fe39c5d5f66a0de6990b3fc7e88024bf22376c3b0d52c223e587ee43848f4b88a3fd469bffa8f989d9501562c63ea93a05300d65a1398cf21227845420b06d9252bd2b781846220117c43f66573747c82d09ca67c6f8aad29a48334ebaa359ebcac75573839f9ab9070dd6bbcdd8e194296674b4d233519f1bceccaab0a138e705562445f1bfb605832912dc86ed5482000000b0016722d5c36fc5bfb60b0d54f3993cd64309b504a5fc4c67efafd536dc52528a7c0bdb66dfeebf8fdb3ed82c3bd69618153ecc110e96f39b74e1166f8a8d9070a9e0edc696f73f4287a055a80c252ff729f2c11f12345394613cfbd650a2b116f131af1586535f87f25ffd7af9a3cb4d15bf3b256bcf47c9e82aa96991c9e5aac9a79ed05144e21fa27498fb03005f5110c2992e13610967927bcf5a86070365239978a85b4f18e33cc498a4f1bbf468000000b0085e37e48885b91a85841795ced74cd60aea13a3eeef7c4882e08c831e9e3cc37600b23b6981d61c9c12ae1577455581c53b149d1a80662938c14a3016154ab86882cb8a0db1427ac81116cba990fec87089ba76d7d130ba54eefc4a1cb18a91e52793d6fb78c17a7fbde46dded13ba52f3d36d25164dec7a68436c2b4b345bf4ef2912c7965fd696900abdfeef155740402c302a564ba8087de176da5101dd57f9c4ef76170b8cdd4e0eca4702423f70000021c000000b00c299584089af354c9f9a40a8d5b2b0adcadc91d91d77ec54e9b8505b1d1dc66c1e93fb03460bd4a3388071fee168a3b3d3faf00f0e150fc630ab608aabe37c30997527a7fad74304f68dd4a2786a696a7bc6dbd7008ca976023443c502bd8c4213034ab20e469490bb09946f30d04e1125dc721fad4273aab7e31886253061fc8267eb387fc464cf6417827cf5091b51e5eb73ea7089b1153eaa0416422676350e1be6e92a0222ee2c2a922d4d9f8c8000000b02c5cdfdc38ac597ac1534b45c59e6459e2939b649f580a30f3db4f201784773cd47835e980835e675c9a0e1044842fda515849014b93f796f36a5ce6ad2c3cb9be54f35f1f4eb4110f6f1beff69370474c9d66e50058c4804b44fb9ece2de5d58cce7f40543a4dacec0ab1055e9c3c71244d7cec893d839a9a36f25388908996289843a1c0cb6aaa3db379edc8802a1826cfd18c6dbeff6fb31a0d9b02709702e0fc184de5871c3e3dde2022994a0b45000000b00b3eb84e9a1bcd9cee7fed45336432a704f6126edb35734cc8575e92b2c1c7da89b6f213f174b043db57b47f23e0b7ab1a90ecee9baf948753962415c326bebae86b44f3fdf1308a3a055d2da4e89e9900f2780074e92abdeb76e60c5613c691f09b99774ca56fe09c190190f00544fe1bdce0fa63d108d9c5e099779ffaef7d05deab2248e19507d3b72aab0efca87112924a9ae03aa4b41f65c27f5eb0192d044d828ac1a0385708b6e32c0808480b0000021c000000b002d8e0db7ee7da9ce8f08e41657512ac36382625991e74f7e36cd46cb6a0f03cbf9d90c262796f03e00c0acf9028af1244ae895b4bbe1e7a07b630c6fb3dac75d0cae6ccdfe5505717268994ab11cbd9de2cb11dcc82122bf1044bfd19b5a012be73703c7f0c7e7243bdeea127eb0faa203a1e3c0e386b8c2b19c9a398fafe3bcb4f99eb8cd80ebbb5b4f9eb1204ce0e102e58ad37799ae221d9e5f1ae0b6c54f4eb64180d9112f0350060cb08a8814d000000b024ecd1090dfbefe4fcd3ddee375cdb9c8067b13ee3182eb67c340ddd1d55baf2a6d0871c970d3cadbce22ec0a080c4daadb8d0e7dca4732e2994ab21dcce56a105e3e235e8fd3cb85f28553619f7d32e6fce5905829c7331f31ff3723763ec380141525e6d17d13fd0dd74f8555dfff204dafc5791e208e87dbbf406a6b5c5877bea345917f75a1af416c7cccef795972f9e34ee3236bfd4e7955d0e832f42a5b1147fe81cc5d7e45515620208024e00000000b00ac409101ffe949a022f078f602d6eaa8ce9dba723c6d9151bf9ad47b26e671860974214480a97daba66b871c6cd0efef241524b439c50a286e19929790d1bf50338b8ec5e666287aff52e065eae8e2ec0aa91d3db9d25ea90ae3012ff0f655b9f6efbdb860cb983ea534b26b62bb04026711ce4f3977b25bb0c6fac17e742c5f5c6357b9807aad5ddd519c7d234602920f32613894fe1835813092a10dd12750f10d44f49c5ba68a73572fe4ab4887c0000021c000000b02a7799c6d11c974b334caaa0e343684c98d41e46fcc8d1402c5db9bf2b25dc1cbcc7e23a169f375b23b236b1b5f4afe57e88024fcd1daeecec35122a60b553a5b2e448bc4884794296f5bddbeaef58a92eb809ced70fe66f60899e732880974cbd654f4d58fb6a37a4725f0579f1f2512647e1b2ea3ab0c553311114577e3e7606c99647b7fae0bc9efa4a2b0eebaf15253e11e2c2eaf2061fc728b5d0b1e0c4b5e0523a4c2c55a505eadfafe6bd0c93000000b01aecb37c8ed0e0490d2ba53a9e8f0162eec3396c9ef8c28dbafb167949999e4bf7e5c39d974e540acd17c6566690b7237191a42f9202257ff47901bcec999c19256a30a55a03a080a7f7ee070df6399c6f76e45764a3fcd2aa1aa203d65231ad238de70450faac96ec1fabfa6d95e98d2e645e3a6d6e77e88882c50c77d486c6c52a84bf565dbde9306a59d36c33140c23753618b352e3426538df87de4c98a43a54947b9bff27b2b4c9f3660927c04a000000b0239d12d5c084b1822912e7a7cd998068933aafd3572dbc95202af3e6f61ccdfbaa7e36cc84df6432110e5df07c4959705558a89f69d1dde613a687ccde9fb7017c77e77113e857585452d46f46888de2eeb32c95ca6a447b4737395528577a14eb8faefa51a9b5b304d44b633d32304819632a9f10b6553583664ed38d092240e16bfd2e30bfeead1bbc8c6c85f686a207a4eb0e1dd6b80b85d29249a86a8c7dc0d7431b05a46dbec1389d46336b4cc70000021c000000b004ef73f190a1d4b30b7613a0be6377050a1293772e68892a37dc6faedaa010026780ec12d99aaad3226480dd362b4461a05c3e3ab9aac851818f5d4ee4480384d82faad6415d57b89b4401b782bbb6c4d94f63c77cb03c31d0b44bf4c998730e964a6c7dd67d4e498addf4badec86816104585efd42c2cfa600ee05aba46f6c9f6b6d72afa4ba2a07b2530eb18604e77230a6ab78fd1ff1c247d9ab1f445ad4c626631fe4b3db913a635257566521b56000000b007b6a088be0df5198cc7f5b5b7057e360fe2a46bfa1ae43c33c1b11e62565d4c8ed2843ec6e9001d8d101ea8453cec6f2dab28c9e11f7b8627428cf6dc7fba1ff4fb6bb9a2418db49540b2f7f419d651f734f0de0f0fcc8b3f9e80dcf4a84b909040dc283240137a0b38ec3449cf406c02b18e061f142cb01f54961a6337964f9c61810a8ff3853030549ed5d4d0112408500da7dcd1ca4befea6e039a5841e1ad1afb1fade0b2a849f3b760add4ab14000000b01faa802e91eeb86e49ce38f52fb92bc345de0773c4b3028cab3b4623fd15d98ce1ba9d78ae1e8bef2d9410c13216fcf69c62d5b2f7f5307f8dc23baba507f61f26be80a11c4bc584c58e78148d2b2cf5b86a9696686a259ec36bc1f2d66f88715afd36c82c76235094081957108e080828c7b78347c58f4c2670730579e788b723201d79d76592656103ada83b9f52f825f1b97cd2c30188214f0f5fa27cdf062f855165cd85c3aedb45cf2146c2a40b0000021c000000b01da368fea6284c0b1ac7c4711bd151200a5288c2540f0844bb61b594dfabfa92d27ea2a3fb3cc310a32bbe01b23ab82380b4eea80b4371d26904d0e35dae0a523efe484e1fb6dbd0e2b2a824e39fe4705d2a5f77c16ee9d5b61bfb0f96a2651c62f77e711e43799e7b37832cc71dae9600075fdde7162d726d7177acba15deff2a0cb5f909a8f69dd466015260d778cf10663763aa338285d025ca18083c06392db22b19601f4f451ac3c87fddeaa37e000000b00a77aea26e32895a0f35ca8f33edece1bedaab0a47a6d2872d3b3aa7e32c0a8c54fc985ae2c77d348263a41b2f47e5dab177e4780fe58d40c19b1c7f154ff47ce5437906126d24dbbdb2eca0b1f16e9868fa8152fbf82d5b047bdedc4c96cee371e0b717c3c4600d1cd1da7374527b8124af1808d6d3b2da6f4b41b8461f693cb614686b430b89d546442dc9fad776e12db3cdcd0e0a0808dd2ed4b9cdcb29ac1d3d613990bc0b5c95fa3601ef1a91b2000000b02b9c1db685fa1533181ffa7e2cc931cb9e37c9c2eba3c8b7ae3338d939b8e7d5d0f8e460dd6cff82c3dfb438dd0aee7ec7ff402ed6b76c2b2e063abf0cf415e3350d1bb097e7a5d1b8d80d0b762f51030cccc62eedc8c2591461973519db94b11ea9e7b009acf748da611c0f02a0bc1f1c744370bfa1927a8c42b32295469849b448f7f9f6a2a23c3648947e823d4cd41e4949a64824c276ba3bb5eaddd43a2a161cf7195a989aab9f9ece53b52a945100000fa400000168000000b029071e3777675ccf43c783664411a4536296b2e3f2024b498fa6aaf5d5108261626ba93e410205cd1cecc245a191d28c9ee45b9891106844903595edea13670735295dcbcad66a1a5985fb507eade338637fb6142cd931091e02a6cbb3a8db4ca8f4650168631418ce033f8a930745e82011f3c5d71e7a29f2189ad77890fa4397bb97f605a3f9817c25a06cd8a0263e1616b32ee26a7401795580bc76a1308cb9f393f6501214bad860561ef25dcc76000000b002f6e362183c1d0bbdb6d8fd9c6eb35d583632bb10b3e7530d30d072b454fd7972f54a7625f8348b4d304fed9247303d852b5638e17eae8ff1fc2f3dc7780c17e4361f94894a625f64ee5dec0f4dd109cd7c201777455f92400af0964bb45676ee846b5a8e93c4f1b9a1eea03dca564e1854303de151ca31f53985b04196c91df6969bfc2d25bd997f279794353ea5112bf6bfb6cc95428ad8e44fe7b900403d448227888e37c2dcac4305e79a1ab41700000168000000b01abd3b7fa2a5ac5883b3a763b097496d9e6d7720074a265d042dd3ca4e7f517429afaca0ffb4c30b42b7244294d246abe1284459cbd0d5478ffe5cfbf364acc2c3bad123dfb54d1248d3c56300aa601f9eb91bc8e5f6591734a4f8c57e90205b964940daf9b789dd2618d4f06958fc3420a8117eca28095fe1a4dd26aa7025d0292289c922f62b6b1e3a9ea3b429fc0527d7c63442fcf304982a24045e7fcccc081e68acdf02066a26031d55d24d6ccc000000b0080cbe71f692d01d39048cd65316e0e2d9c21c469479c7d6a675d9ed13a90ddbbbef866a9a79e14d6f86e32c7d66375413bd4fa108fbaf265a347a2ab3a6366aba861c63206fb4c7aecf52039d9015e33287dc64a37b16f643b720377d84f54a9d4293a1f207b786651821e5a526209f114d92845215f73cca3073b0a7ab83a09d3e28f9a7b5394917172ad2aba9458209065484e6b93b52b48763c0286a548428506317d625e2200f9fab88b747c35200000168000000b017ed0309bbaead176d4d1d1bb4ed44b79307db0490c5989636b1c353fee7cd3ff9bd1a259c54392024c0b61cbefd428591a210a223fc5c314376d3f62854d1bafb59817741c2530095f90d3dc1977addc03f34264e4c004ac2fd06d63cf61e6fb3e8fabe3bef2b894f2d60795984835c00b448e09a5dd8d8148a009d931203884e55b1c45faa4f7d034bc52140084aaf17f6d59c86e69948c4e6c053ba98e991bf0c1c132afafcbcdfc5660ee39202ed000000b029de7c0421d772ed7f9ff46a230356c3eb076561ab77d5d46885db87bac41340ce3f47da491627993ead1a438252f958e85cf7c59b31a0b0f84cb409c0b6772fd6193ea38b5ab1983ef13d3cd4108c6f1ebe25c6a525a7dad52c771a447167dee1d079c9d72aa9b930ef1e6d4540856e143c2e038ac5e0c48f39e2a2cdd686e6ed2399f615ddb363f4f90c834e51638907d226f8a053a623030320fae31d28a7d60ad2f827b8831f6f97083ab63ca45a00000168000000b02df822d92fe3b9e56272ac28fe2b83a4ad81b44371f1acc2718db3c76c78191c318ecf7cd4220bb7bff163bffee729b9ab2db5124e6bcf934fc5e85a6c317076aec4b8d37baf9263f2dfecea8eddbf51650558f907d5b7ce5a6f4eead230912d70c66265c3d74c00a8777260bca4e7cf303be607cfb332b18e77db3df8b20eb0a0c7ab6500299335d7dfdaf4fa254bb31dfce978f6760045d1a363e228ecbc9f56e606974c4f820eb093515e4a75365f000000b002d2dd2302eddd13dec8e7d76a3fe477044e620ed6400686eb000f967d4416b16f94662754cc13c59b93f3f69b68efaf9a86302108309c09234b5ac52cba5eea4898c8c33ab5fb28842e3a1b775ab9dc5c45db32b919cca9f953af71e9340b0b616e272aa6586645137d0358585dadb50e89ff8c0ea94c60d5493734a6fe639b87c08488f55ebf2d192b85276f8c22fd22509a02785f1743f78bae9a3ffe58f3e848fc3df2328f7c330251c844a2d2e400000168000000b025f4c4bbcb68b37a0597aa3b7769f29b60c3fe5189a4c35ad117294640be748d8d1b037512916704d8ed77837a916acd28bcb7bd7681906320c5486ddd74562092261ca6f16efff4cca3b8aae4f37c4c686f7ddc96aae8aa7f2f2879082c313a5610b74dfe4ec469607ff34f68216fc9165934ece363ba2ca369e783b259f62fe39293d07840253e4104c44eac59f71c14ba9f3929c52d375510b51b95bcc5f1ed7cec66b525a0117acd8eee3fa8458b000000b02348bce527275e146128a2d4b53d9b609fba91526fe75e41ba2c662b94c8c14ee3a24b311884be5ea1d6232ab1b1c37b614212288bd492bacc32c6c4594efb0e5859de3c0539d0410e59ab0eba31e570ca0f6c94702bd51b924bce1bc8b938f692dc48c563cbc9635d29b8051d497bc828e7457d3896964087e50be9bc78efc37047f44e873899f64ba988b08cdb4eb8026d37dd407d9186b6809e2ba3f009382c9d0ecc9e2e3d76df5e2f6cc30c6c2900000168000000b01c6cfb5b6a880df7f554fb4a08e2bf6d4902c7b8edfbf9cd2165cb76103af9b0225e0c5199e411b5d5d4054359966059ffc6487c7608852d4d4fe437359d729b44a0243887db5213d1e4ddf1b688852c51b05a775a04ea3b0e916358a587b9e941d7092bc45f74deb420a7e900166e6f108157caba241c732f0993b5ab9a07f08ce6671919fec856c957864193bbeef60ce24b2a427b4fad9ef18515113916252429a7c14cb0a607ce4f2e33ae3ea431000000b019f6b2f5beb736ac7258fa2c1f4b84bb24ef00c8454a3b524ecc83dc0f1ddcfc915bb21ee902dfe10e6bf1e9820e54120ec6d99fb052fb6e9898043506374bf5b6c5e3ef16e1ff75c14d9b5190981bab0c8dbd019866dd4caf90a51c8698183c97b432747f7a29a23b1bbd75f90b7137132d1f8a72edf8dda4261633acc125738c34b5227f272ba13d1995b2de8534a7118fc3257d916617c5714f13153e062538c58d238720328111e127e197ea5d9d00000168000000b001be89d373abcbee7286aaf2ce233de6901a1dd896e186cccc94653a3f3709a35a90d6e3a63eae08eb8f7be15296cfd38b36c15bef0c017f83820e9db16eb0889853edb55ff56eefa16d1419877238340d1c75cdcbeb64e2db48a1ef2a0b80cdde5696c6a42cbe876e80dfa79623cc3e1b2da42f2be111aa5b21bce8dbbc5cfcf7739ddbbf5c2416def0df7762d972261eb7207f7ffb5555b768492eac005babd81120845c533e993f06b05149c3fd00000000b02d86a5d07cb21dd577cd4c8968207d278431fa86f7ecf940b0e59b80086afac8df02f9c49ac46bccf2c7d6211fa2384bf4a5c6cba0db73e449af8a75ea28a34b8fc7a6ee744359f75a8938c26492baca32f34871ce54a7a01c74011de90a7da1e1afe020edaa5aa71c471f90f92d8b27107d0634a44243d60950f60cc50c983d6cb740c41a4d1b9042315ff9b6f2ae2a2e4edd4e8fcfd6e8d0a8649efce0f4605361b6d4f3f6d035b57dcd5d241ee75300000168000000b00a1c1a17a463443d33eb36906ef8567e07644f2fd20dd9a37bd023cc3adfa8e0cb2395b1618ec4b96ed1d170e61bc27c50c078084f1c3d2506c7e0ef6546ee0c63c7896835263c8a8a85abf4023f9d1e79a47b4c623e1c32efe0873e58765a779ccaaba723f843606d0cf3ebbf5d06f9241b4437d69f0861b80f5508ea24f46533e05473eb906c587c2e4ca18e022cee0856fefcd74161817e81a4b7793dceab4dff5e56b3427e8c6e8062d6b2757586000000b023747f71593770bd08e3ed103001fc0e308b26eea05d2babe55a2a3b485a6c76915aeb94c8c43257ffa2b48d427c058b84bcfc05288453f5876ab1aa942f30a3bb3d049998f6774e83d0e40250f305330e267d51eaa1a72803ecd6874752ef6e3ad8ebb63eec7da62bc48f866d3c9ec006fc74a544bd97e2346d8139081a08025ddc2ae4329a8f36c4708c1c12f12fbc2bc3d1e8aa1b0a1db9d55459ca36fa41711ae4c977b90be0356302f0237eff3000000168000000b01d55558b884524ab7e7b2d666236b54c23b281beeca2783f2f9b96c301e9cfb4eb1b56ca1f4bda380f52bbb17add067b62538527a694fb39ebdb92d55e4879bb269e2e03a7ff1e26d647e25e0a5c07f05301947e3de36009facb9ed29d380c93ec0ba98d02674168f646ef1f9042020228139ec36961b2c7e73b275cf75c55aacedf2855f30d9abe4330646585f8cdc51778df2118cf7c59b38ea2fe4e16c1cb04c35a9e69fa93b8df8f3edcec2c9431000000b0083526e4d49653ec0011d56ccbfa097b6b4158cf4623fc48d01403d11499494ac98450db42bd022e96bcad5ced3d8765cf9850f4a4c1b404cb3d8f6d33b6f376cb3b9f01e56bb920868644c657782ca12ca96e7dde4e568c790c18bcf6dd51010d395446e91fe8bce92c19663d3fd0c22db501768f2096d747937bfd971a0e4f339cef53349f8c2d18236b5b374e48eb13cbaccdd4a777d3f2997dce2ff298e97868ffb24093f77c768f5209d0180a3d00000168000000b003cc87d3a82ddbfc436c985f1d3bf84ff98b8a3f93e4a6adeccc23dcaa2180d6a913a433b6d497f8159987f78f9f50b272579757537fe518bfd4a39a9577c4588c1cc7aec4485acca77fd9462215376ea686bea784e4a5f6fda9ce951bd6ebac2cc39df6c26096e69b99d2c1296f0c30305e1ac9c14bd90ae9df43a4a572f57f87edb0cebef2c6aee59af4fb31dd0a811ebc8121fa92eca3ac584a22311fc4c154cb9a8bda12471894734a7c8a54821a000000b01075bef06858e0156fd32093600cc9028f6aa12a2706455fd674f1144e9de3b110db8d7e3e9c59bec215b6d8bb9ac913b837f711b4b0ddec2a704b67133f9fefa3e6563a1bcd639274f0a60be6bdf537659986d53d49fdb34aacd1f65cb1d0f2e3d4a01971ad702ea7cca81238f87d1a297a4de9b92cc0688c1d7bf095c9cfb98207e94fe65624da700850531b123a2209c3fa589fc1924f5099305a02c5c3f41fb6c83a4d6b0e1f131f2da8f91e715f00000168000000b00fecc375cd63b6fcab408b28fa927fec11cc02acb60838c189f6d56d058989fe60951d9df77896b7a671624f6a82a8ae482afd71b3f29f3acb87f86fc212c276a71f010d8467370f75bdb0946749578ecb1c6c7adb6ca7e67f3ed000ca3be85790adbe105f1d43dfb95e5703eb7fb5732dfe8518b10b78cfd99ba50ff88c2550c838c25e22c44098d1f34ad2174ada3a0d8bef6bb4340271d5ee5f7f7a9cfd45544717b01ea8f942e1084e984ecb2597000000b02ca9662cecf693896bf97ddfa259eb26dc1ef6d5a1d6049194e02de3ab29f316e37cba3d1a7ac14980e0732e980355bd700042bf113bc270e097156d122b8319cc8941e15a829bdc2016e1dbefe64716dbff2ec859622862032b09a5d615a6ab05d2f49fd7a7354ec27c299a8f9a868022be65d7f438c6f38dae5a17e90d46d32cfdcdce6212d79201c68c576940af4329e7be9f4e21ddff4785c9357de4e3ed5548077d904b32567bf7c268a1f0445d3800000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000002c100000000000000000000000000000000000000000000000000000000000002c200000000000000000000000000000000000000000000000000000000000002c300000000000000000000000000000000000000000000000000000000000002c400000000000000000000000000000000000000000000000000000000000002c500000000000000000000000000000000000000000000000000000000000002c600000000000000000000000000000000000000000000000000000000000002c700000000000000000000000000000000000000000000000000000000000002c800000000000000000000000000000000000000000000000000000000000002c900000000000000000000000000000000000000000000000000000000000002ca00000000000000000000000000000000000000000000000000000000000002cb00000000000000000000000000000000000000000000000000000000000002cc00000000000000000000000000000000000000000000000000000000000002cd00000000000000000000000000000000000000000000000000000000000002ce00000000000000000000000000000000000000000000000000000000000002cf00000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000002d100000000000000000000000000000000000000000000000000000000000002d200000000000000000000000000000000000000000000000000000000000002d300000000000000000000000000000000000000000000000000000000000002d400000000000000000000000000000000000000000000000000000000000002d500000000000000000000000000000000000000000000000000000000000002d600000000000000000000000000000000000000000000000000000000000002d700000000000000000000000000000000000000000000000000000000000002d800000000000000000000000000000000000000000000000000000000000002d900000000000000000000000000000000000000000000000000000000000002da00000000000000000000000000000000000000000000000000000000000002db00000000000000000000000000000000000000000000000000000000000002dc00000000000000000000000000000000000000000000000000000000000002dd00000000000000000000000000000000000000000000000000000000000002de00000000000000000000000000000000000000000000000000000000000002df00000000000000000000000000000000000000000000000000000000000002e000000000000000000000000000000000000000000000000000000000000002e100000000000000000000000000000000000000000000000000000000000002e200000000000000000000000000000000000000000000000000000000000002e300000000000000000000000000000000000000000000000000000000000002e400000000000000000000000000000000000000000000000000000000000002e500000000000000000000000000000000000000000000000000000000000002e600000000000000000000000000000000000000000000000000000000000002e700000000000000000000000000000000000000000000000000000000000002e800000000000000000000000000000000000000000000000000000000000002e900000000000000000000000000000000000000000000000000000000000002ea00000000000000000000000000000000000000000000000000000000000002eb00000000000000000000000000000000000000000000000000000000000002ec00000000000000000000000000000000000000000000000000000000000002ed00000000000000000000000000000000000000000000000000000000000002ee00000000000000000000000000000000000000000000000000000000000002ef00000000000000000000000000000000000000000000000000000000000002f000000000000000000000000000000000000000000000000000000000000002f100000000000000000000000000000000000000000000000000000000000002f200000000000000000000000000000000000000000000000000000000000002f300000000000000000000000000000000000000000000000000000000000002f400000000000000000000000000000000000000000000000000000000000002f500000000000000000000000000000000000000000000000000000000000002f600000000000000000000000000000000000000000000000000000000000002f73700000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000003c100000000000000000000000000000000000000000000000000000000000003c200000000000000000000000000000000000000000000000000000000000003c300000000000000000000000000000000000000000000000000000000000003c400000000000000000000000000000000000000000000000000000000000003c500000000000000000000000000000000000000000000000000000000000003c600000000000000000000000000000000000000000000000000000000000003c700000000000000000000000000000000000000000000000000000000000003c800000000000000000000000000000000000000000000000000000000000003c900000000000000000000000000000000000000000000000000000000000003ca00000000000000000000000000000000000000000000000000000000000003cb00000000000000000000000000000000000000000000000000000000000003cc00000000000000000000000000000000000000000000000000000000000003cd00000000000000000000000000000000000000000000000000000000000003ce00000000000000000000000000000000000000000000000000000000000003cf00000000000000000000000000000000000000000000000000000000000003d000000000000000000000000000000000000000000000000000000000000003d100000000000000000000000000000000000000000000000000000000000003d200000000000000000000000000000000000000000000000000000000000003d300000000000000000000000000000000000000000000000000000000000003d400000000000000000000000000000000000000000000000000000000000003d500000000000000000000000000000000000000000000000000000000000003d600000000000000000000000000000000000000000000000000000000000003d700000000000000000000000000000000000000000000000000000000000003d800000000000000000000000000000000000000000000000000000000000003d900000000000000000000000000000000000000000000000000000000000003da00000000000000000000000000000000000000000000000000000000000003db00000000000000000000000000000000000000000000000000000000000003dc00000000000000000000000000000000000000000000000000000000000003dd00000000000000000000000000000000000000000000000000000000000003de00000000000000000000000000000000000000000000000000000000000003df00000000000000000000000000000000000000000000000000000000000003e000000000000000000000000000000000000000000000000000000000000003e100000000000000000000000000000000000000000000000000000000000003e200000000000000000000000000000000000000000000000000000000000003e300000000000000000000000000000000000000000000000000000000000003e400000000000000000000000000000000000000000000000000000000000003e500000000000000000000000000000000000000000000000000000000000003e600000000000000000000000000000000000000000000000000000000000003e700000000000000000000000000000000000000000000000000000000000003e800000000000000000000000000000000000000000000000000000000000003e900000000000000000000000000000000000000000000000000000000000003ea00000000000000000000000000000000000000000000000000000000000003eb00000000000000000000000000000000000000000000000000000000000003ec00000000000000000000000000000000000000000000000000000000000003ed00000000000000000000000000000000000000000000000000000000000003ee00000000000000000000000000000000000000000000000000000000000003ef00000000000000000000000000000000000000000000000000000000000003f000000000000000000000000000000000000000000000000000000000000003f100000000000000000000000000000000000000000000000000000000000003f200000000000000000000000000000000000000000000000000000000000003f300000000000000000000000000000000000000000000000000000000000003f400000000000000000000000000000000000000000000000000000000000003f500000000000000000000000000000000000000000000000000000000000003f60200000000000000000000000000000000000000000000000000000000000004c000000000000000000000000000000000000000000000000000000000000004c11000000000000000000000000000000000000000000000000000000000000006c000000000000000000000000000000000000000000000000000000000000006ca00000000000000000000000000000000000000000000000000000000000006c100000000000000000000000000000000000000000000000000000000000006cb00000000000000000000000000000000000000000000000000000000000006c200000000000000000000000000000000000000000000000000000000000006cc00000000000000000000000000000000000000000000000000000000000006c300000000000000000000000000000000000000000000000000000000000006cd00000000000000000000000000000000000000000000000000000000000006c400000000000000000000000000000000000000000000000000000000000006ce00000000000000000000000000000000000000000000000000000000000006c500000000000000000000000000000000000000000000000000000000000006cf00000000000000000000000000000000000000000000000000000000000006c600000000000000000000000000000000000000000000000000000000000006d000000000000000000000000000000000000000000000000000000000000006c700000000000000000000000000000000000000000000000000000000000006d100000000000000000000000000000000000000000000000000000000000006c800000000000000000000000000000000000000000000000000000000000006d200000000000000000000000000000000000000000000000000000000000006c900000000000000000000000000000000000000000000000000000000000006d300000000000000000000000000000000000000000000000000000000000006ca00000000000000000000000000000000000000000000000000000000000006d400000000000000000000000000000000000000000000000000000000000006cb00000000000000000000000000000000000000000000000000000000000006d500000000000000000000000000000000000000000000000000000000000006cc00000000000000000000000000000000000000000000000000000000000006d600000000000000000000000000000000000000000000000000000000000006cd00000000000000000000000000000000000000000000000000000000000006d700000000000000000000000000000000000000000000000000000000000006ce00000000000000000000000000000000000000000000000000000000000006d800000000000000000000000000000000000000000000000000000000000006cf00000000000000000000000000000000000000000000000000000000000006d9000011000000021c000000b00e91e5660f1e83363cdc42f6c64b75d29885b70ea6793ce76a0c309097b88257d9f17f9a493c5c217cb33cf5a210dd95c02de7b06f4bcf66ccc3a80692cc6b9a4e12aae69781e01b4fa9310f70d79af2a431af5d81e0bd5c352b8c01fda4bde8d738822d48ce6148e0af49da61d572140e7917a4b57a1ed652cc8a5ef4e910d5d1355ed76831c8f71dd42b9c061e26460df76f31d0502b792161b2a149f5b36c2ece5d3bea3e4f043febbabdf4d74fc8000000b02d2542f6a5094bc932fe19bdc3417ab9795162872859b74017cc4d85adc22572001f65a46ff7341863e53b64821a69dfe62c8819962751c49d0aadd53980e35b443f152bed55d90c2b7f471af932e8f148ab3f420d9ed63ad05850e054d03b2f634c21a43a000d41e80c1a8554cda6782da1aeff1e6d244a9a287a8f885f372d15e09730cbc176b2083216d8eee2663d1a2f0fdd709fa8dfaa9dad82902fa919d28d5636c7044728dcb1aed916c6a72e000000b0034074f9ac74f35c70cf90028d3671cfbf73ee87192a17c7ed83da4deb3c8adafa081342160722e124d31f4be8ea8740d0084d7117e236a0ba2810fcaf93b7dfd3853320f76b0c6448a8085ed44fb7461ccc24653bc0dd5b9e3c7481d3abfd56d819da15860251f2b523b59b8d50a9dd29d44485d1071f828e00482a115a4314d0b1f4e538f3a47f2d2bc3cdc6e541311c4ee3e776da93f5b8e4eb44ee3257ba513c8b007a452980a15dd383dfdb98580000021c000000b00ba47fdee0ed223a059a604de00aa3c68ee8bfc40ca7f2399027ec9f0374aa75f4324e77920457c38d48784987a0183e09986ff8e8442c5bb5eb261ba71663f45625f159e377f33e537d3d5c030965727a04b47c1fce9c88d3f371ba41940cf1e7bcf0a4f5f294cf2b69eb2eab8d92c31444d60e89429821060f3b11e3d806d5769990460efdb5e9ef7bdcbc61712cf52e6764607ab6866676ccb926b2b90d02dfcb892dd66afc555fcb959e0335a847000000b003279b0ea84d3e719c963baf6d6c035a50c3add4c7a72f90fc0f791edf35f1630cb0b0fb67174bb40b7121d776fa5bac22d7daa7b81bda312d1afec4ea4bec58cfd71df522e807128a9abb76977116c64d40579f785c77ad6cdceb0dd60715cf1c4f96407e239760ffdd0555dbfd2b2f171007e0e65dfda7e1f28fb9b0332247ad6ea20bac00180f75c7a17ada7a1a1818628c000a14e3446cdacb44b5b5c6a344e180305185c7a195358df9d16efc4e000000b00d4deb56dc69d4d629d34d71f3d849080f03b556526c5789f649bae84f076005b81aca5590c60f70ff713063425bef7236de602c3e87abb1dd920a7fea982e361db93916a322e4585f09b9607fc21598347dc28115c6e8982f3e85a61ce8f5dbfdc7ada9f5d4e0c0a0651c0e2e487d27159d76daa98b39b7e8f25ec374818da58d2ddc14c21f0ce9ba99dde413b583a1112d3eb5b153d3214d665965c0230311b25a0e58667c49725d9415f36452ca3d0000021c000000b02f13e4bc1fde6416f7216410dfb9d096f94270c8bc13899ef2bce32017a01a4677fd489a065172226211e56c4cf3ca540d18a1b335605fcf6f357d20eade261b8f92a010bf8d00051d9ced1527b913aaf2dee558d7cdb34a750bcf83d837ef63125ae3ebc6f5463c9d64a64dade3adc60a3cdf63fbcc7a5dca473c39e3e490d82777385374ab4472d80891aa88f05b4f0faffbdf739014df6a14805d435205cab382b8de1c2e5b7eaeb10f22c2cc3182000000b025983674ca296e9a17be9cfc0f273a90b45fc3071ef78b03a137ee4ecd2b894dfebb63b2012d9f62680a6a30e7339ebedaeafe55991130f503e9a40cfb2e837c6d896253ffc8daea5be073b9281866cc1ca09ce8df4a8da61fd11e4d36870ce14260cb5f488ef5a29c54de7fae7f47a60c064028b4bc1d731ce4b11e3f1f62a3e91c3be3b319aba85ab9febbc0caf0bd0da0a6b76510a90de8ae2fc380a88f4664c62778be854e27aa502389f4609c4d000000b00a675282706bf33dccba1d21155e818a20e1f00a8c6a4451a6683e90e39869a88d053cd8614561cf6110f72d36fdf40e6ff18357da417774aa6f7abc91e41dba043bfac52980ffbb12865f3ab7f36e50facdd4b7a3e707f97ec3b38cc08d855a373cb7e92f07e415f5d93b7e326be7ba06c31eb48f8482eaf5dddac5077d6bb18986e377525075baeb3198fce4e2b9642d3e18081b327c5ac4725f221b7b819635ad2e53697b74a8391c6505e2f89b2d0000021c000000b01877efc03cf0fb2a7b4627f3251607542cb2efa139bf24e5a633508705ac0d54f50cef5e83ff321ad9b666301b65f200d92c3ae1396268f00b59af01c0ca1e0bdb81645278039043f25d4c7f1a34ff448b765c6bffe51323c341b2b77b0f8b1c9575d6069c57761740b4ebd93377f0a013c06c0daaa82202ecdf570c15f95f4599be7fb1e2c30b2fd0671be5fb1386cf25404a8fc762eed49fd17dac935ced0372fe0b82de3bd66fc5ea6f3bfb29fd1b000000b02095b02f1863b2b701b1ac3a8e6ca3e8638a3dab08f8ac903601d3980178425ba535650d88259e80a09aaec9060c4a16562d090a0836274c2e2c2fc10723a43fb797a222f378f99778157d8c35bcee96650aee13526d1684bb479e983487a522baa52dd6a90ae6e8d68ab921bc652ce623423fdd91523fc125c580127fef9c75d063bd453c3d5e1a8fb8a2783403a6c2057c560354bf2ed4c026e40cff08576863db4d90f1391f53e50cb10045c690b9000000b02bfbba346a8985f12518f6e86274b5df0ec06d38249eafcd20006e3bee44c3cb097d5fa45650b9c256abc8659220cd206e1fbcd98462b89e4b949e7b53f4c1345fcc547392e9ebcf38c678ce5c2a3c1cf059ccab654ba753a9359ca68cbf0692361474073d8c2f39cd2a37854dc1f13001c99b0683b222313548ffd2f464256d0e9f993efb9a51d57efd14851aad0b6a0639c25f865ad7e8914ad65bff16c5db6148ed6faa17b0e8e0630843ece1010d0000021c000000b007466d97c33277a16c3e44541ac64f032fb4a608e47d8826bba217220cbdf9b79b69285e97e7b49147337c9d5154da8c563440c0a6b27007bd57919ec719a6e9d2ffa7f0f22e3435a95a1e0e340aa3a33560890dc58c053e2e508add5cee11f079518f026a30dca08eb0e56274b3ed541ac8f0bbcba42800209703ed473949460e38ee36d02a2ef79689bcb6b8d746632144525589738f22d766324bd9e1b529d33b59179e99a89c77c2afbf88ff115d000000b014c997c4cbe5150388efb05921216a96f3b21cb434a1949c2e58b506edb35e29644e7ee3e3e275aa670a54112ba0592785fc904ad5185186c4af258e653f12edd886bd245d2c1387eb53810a34f38fd7437f17dfb021f265bdbc36f10d51d6369d051a1c5af56584c8ef0033a9667d79229c889d3beec357018675ebc5c2f4f81c74c3e3e3b14c75f7971f147ee4787704575682a82202f79f0af2f431fe1357059b6aedb951ef094f50218396ce5f07000000b0261f3eeb6f6b8c203dac9e51caba5ad4eed08060d4559d4e9ba66c896a7b87ec01bba35463d767a5534239c049aa7ada6569bd7f9c2c7c0297408362745dcb26df8b2b9bae1c37ced2efde2d6bf825ee790233b1c03d48ed96222fa4308b737da0595a46dc922567db81851ee305283d1f85840a87340076fb59715a808ec2a11207be1cfecd25096b31528ecdb9867b2595549d747b22d07f3bad67a2113661e324c39c3b6b03065dc9bddd0890e9cf0000021c000000b029a92f83f2dfae110f9376e3ac3a360cad24437d6bff64492957945225de37f04a76080f900f4918cad55d8207d23ab5719dbde40211a2f566e218fcf7215aa2ba8b04f68501d3f4b6bf9f8c9ad21543b7019c98341bc4408638ec089b1946c0eeb972f4043b71eb024efca44a326a781c0bd876ab39aa13e53fe60921fd74037aa55917a924b3628849a0fc4e92f5b70e256ceb91224288fec0fc9e2a68a641819870cc0a9e42c6fd3e077d12cbdd3d000000b00983c5e8f3c7ed0bae06285231b4afe725fc69b664c8ba2933480311ba3074526676b7f78f24ba5faf98b3c1bad689230e09ef58e60d097595ba1aa53a117d65f252292d7ff88b1c42592c679230d5cd740889e452b360563b1fb8900106b670e3c46ed84009fb6ae7d6e67c7e8cff7a08aaa583d83dfbef22539e5adb44f28da75635d642152380c06b697a505d9aa8262ed0944d33a0de211416b2826bec479215cccbba4f940e66283ae43da12fd9000000b0094e1d8012b07bad52d9e3851ee6d7c72ec4d878591f3cc700e1ea5af03bcb6b7df5b4a63d4f080881e40302f218d63bac8e21d14a811703ec0a91561efefa49171d360d57f2a99af9d8f000accce2595a982b223f07dc70c5a369fa85616ec9af8d34b6fd43c1437e8e182ff039c43607a7e20af1e4e08873041011959f49ba94a9c32c906ff7f77a2dad0f55d35ea7255bcb9e64803619db2f4ac58505c511a8da7757f587a47db77d000a7f2ff6ae0000021c000000b01eb4bb010faaffe659ed64af195337ddb667d35138d0fb0ac76aedf9f55e26f79405d602115eab2b1edf651e42368e17a16ca009355272bd38d9b7040b5a3c8643c7d7421a61f5979bbda01eea214bd15a1f5663eef1e991bdfb2071f238750a95e89a5928ca6f4e4a9c875655342b931a34a5a2b45fcd7686bacf46a3004cfe57712cbf6bb4ad9f90d1667a24818bfd2ce884a568ccc5f8bef74619529265e604eb963eb6b5fca097e17dc189c7dcb6000000b00034589aa5771c5c13a9f188cf59661089cb438830b7da659daa04df4965f3eb1d1a388e2f1260518dc55bff6ba0bad507fb963706ddf8164e68180c25549b78e3ff7328c442595c88f4092cfce2b578649a090a3d84204aef92434ee080971fd22b6baf5053bfce72fb3b45497bb7ba2c5155e31291d6fef0a30e3f7a56001bea7c6374282955a5a2927d86ea1db353109fceafc125da9330a57cd18c73629b41d0d3edad54cd57e62de2cd1bd57ad3000000b029ef5ea07d26606e71c1d4ccc3379e982c909715b4dbf6ec181070cc72432c17b7f4b45e4d83065c79904a836710d72c34877f00d7c5188e06771be07324e97c44498d336cbba5e8d8bbdc2598c22d511965aba3a1af79f776ae5a8d86b4ecdf43d1472ed3c905a21d8b1e2e829e3b520cd168548c160967f401ab369d0c07eca3ea4cb95ccd6c7aa7b2ffbdacf159531ec19433dc38d057a3f34918e7bd31f344b2f37aa27d7ecaa3461eff83c2cfc20000021c000000b019f00a983882d136916fee5f0064fd407fb023313ae65d4181f2ec9285737bf96ee1f989f0b5fb86a1cc857fa7a965e7c55480faeddf0deb9aee4bd2d6c839ad0935b7a4d0345f2ddb906eb7a597b5abb1988dbcdd99015e99d16955c8d83396cbb03d6e0b599a97acbff9a8e21af8f7241780a9c20befd79400143dee9bfc47efecb4383546de49c093d7230580645d2851627826383b4328f01e37e203738b086080e19d88696b0af7e65eb18221e8000000b007b86c0922887e71946298ce764e204ff0dbf0a4314615e6767ccb48248c3abaf3c7f44ef82844a795a168fb6da64e33d2395b4d7b850a3c14cc327de6fdc7cdd38cf3470b9ff3b9cd1d4df282cb34335b33679f536cc2b2b38fa1c34fc1a4919082dfab221e359d3b065e4a53ea20df0877c1b9fae1801c24b03bfb0014d0bedd34c2827936a912975574dafb0fbcca0be7e5ab68f4856d43e65208673762fe3de05dc255701a92042b96b3d7737030000000b02cc754e4404db839854355b43977c0a4d3f2f04ecea7ac07bce388b5d6bfb54cdbbf39f98a95eee09f03e6b4d660abd36ff76d91b393cb5a641bbe4970cd8cf64ad7e9e6022744b9c1a4afde7ba4683716bb6b968106efba509fd93c6dfd73a2b237173d26bd9090e0b257dd7f159579246e5ed75e51a55a6a154009a728036a963abb446ecf710f4202c036472963f5123495e99741c8a44839efbacd9bc016b287c7caf83a7b518b0d371fca032f7f00000fa400000168000000b018550d6eead26984bee95682340eb94858815784a946515bb33e46d13fa257a712a223d502eae5bbbc18692224da290206ceaca84015a8eee76b2795a5e4a3d18376eda12f489f997ab10993b976f80fe2cceb7e1e37acf028bec433eb265b79f1bf977f2dc70675e17b9260d01fac0c12cf6ce00eff06dcd7e24fe8895aa61461cebc67cde6aa7b9d686a0ecd435b6501c606fec02ea6787a8a9cc94f79caf3c185d20f62f1c8a65b4bad43734d9dc9000000b017f0268a076ef50fb96e8d06d4686d97d835cee9b54c8029da9101b7a674fac298e9ff805f7000802dbabcff9192611fa735c499b4a1ade22c3719afa4cc5a11ce0c493ecee12be6a32cbc0ee3343bc58e239381bafbd0db163205eda4b517989f77d59e6c958c6698b111c80508617f2631aa9e9c5895cf41adb7e4d4c774f4440749555d370688929217e042fd5d9617f5f8657dd1458bbeaeef887260e6230d07dac2e3c350eb8e9ad3352258ace200000168000000b018daef7348cec7ee8a1bb655c7ea4945aa010b24843a47e8cc3d0715103383494646fb2e7b766c64c5891eaa18831e9f6ffba18f304014cd683727a4de98bcd97f501b77a0a5b64329cf74051e855e995bb6390ed665ef1cc327b7dbda117ce37d874cd53597e47e1a726293645ea8a60383ccf4738c28fd20f814365ccf1a670a6d7d6f2e52b176b8798d983a7408c306f4f3b06f19d77ec0679720afd3b78d715d7da983c9b5463c8c4aa61d33ffa9000000b023a4c16370101c4d1d72498a7de6cefa88b6fdfaa49a829ed8d4a7e99212cdf0a1a5d98f5c83c3dc7aed8d0ed86637a2f411370840649717c7b12dbbcd6176179bcb386a00d03f05073239313e093b95ef4f4653c1a1d09ed00751e15f808c9d10d4a6217b40b50fe52cab6f4eed1dba238080fc3bb69cec27ccfb45b9b7951300236b98b1103faf0fa835c4e6e454b50fb42947ced38bb3dae2ec17b2561b7550ef93e4def63f4d1eaf5a6b4a6b00e600000168000000b025c57d2d290181abfafb71143de72d92b22a855fdab73cbed678d5f073a6253ed0becefb28862be21ed2d18bb12f7ec767c68649b0ad1bde168e1a0027afb1a9952543090644727dae23d92b794bc67fda1cc842c9933907724cb05c26eec82f009bc93981a8c9759701494f5782019915825a03969090ebc360c567ad4f1f327959325a50a774158d3f14e31aa6dc0925a4f7e9641efeba107fdf41ad420cac7bf74a2c9dc40baf49a7c8649a964522000000b024c7c77993ee659f5bd0bd87fb2d9486d63ec43bb648b4496979722a781dfabca8f5386e3eae3e1422f878b2f90c75e66f4f418c10fdc0feae6da3a89773f80b9850cd45f75b820d79e050567c0c9a64c3daa145332212e185c12ccea3c2b838f759b7fdb8e35936fe6fcb2ca40efcd618863fafe263838ee423120641a57b09b9d82b3841823c3b8d84b53a5c0926632d4beab1134ca39defee31baeea374e0cfc84ff6b8abd6759d856c52b08d216200000168000000b01f9a2087417d21c5102c497138b225c561b5f68af791beb896f59b51c520abb7916adc345de8eaaba469b274e5acab5436b3625fbe2e32272bc420865a663a3bbdc0d4b719400a2f2a97c4c7ef6be9bc2d8c1987f4e00d0aa11e37c748cb645d1cdf65a4708758bb675150ce826e379f135d92104290749259be022823ddf6f5b6ca7f9110335232b656637b1e8206b404c5dfba55816d18f691bf9c24f37de44ebab7419eb7c001d29a426185240beb000000b019cb9720a0eb64cf1b7adc4de4ee011f9f440528e01010052bc9b09be42e6798ab4b71547112ba616b80989b7765945b0c6e420713dfcb2d87ea1fb9420cc571754399bcb6f2d45ff74788cae2eb1175b712d065284272583664a1be17a4177363a1cbad43ce6571df3bf2c394db94c72bec5e12e2fa12cf603bfa6b3aae72806836e8c997bfdb99fb298f8f5f148d6703cc190698e435e3cde269ae62624082697fb6961a0c13bc075413ca58619ab000000168000000b015674af75ce0aa0a6978f640f9a56cdf1ab4bc0b8aad65faf60215d4ef4c51b76d0f1c1bc4869f0e8f70bc238235292aeda388c3310579b69ffd0de8d770f4262397c35791c70f61e918f4c8ade29c2c987550ce575edab728468f53b823031d73e753d7d557a4bb457c5d60efac0ac705b20f97d42f72db45219b3770a7522ae73244d2327668a4b2947cd9fb20b1052a2f4951cacc80a9cab9f1af497aac0474d51771638a0bcc1402824fad076d55000000b01ab9c5170967fefd897bbab1f5ad150530ec242638a85995e7c7d14d6bbce39757d6f8e25ffc0f464120728b5987539abb546de81c3218ef1d836a96273c45f1de606a0fe605bcdd44bf353696517d2b46d206cd843661e67631f6c899091146d99211730d1bb4a19cb70c37f7acf6381d79feeb40c2cda760c329b3c8472b94c8acb039e9a111197d6cbeb531988f39020d254eb7ecca431d2efe013bc2cb53425cdd24636af081a11cb0544243c9f600000168000000b02259f6d070a2ad1d578908756d5ae0ae72533a28f59ec2b9f3b38cbc0b818f026eb1d753f8eba43542a312c87f946e8b9ef8e55d0534bad29ccc417f27026dada2d69dc11f299162d0e5c3d683f66f74f8bf05a43dac300e6ad49173f08c23d48f42ec670052f01efe2d119631c050c51c09ae73e02d200d2718130099ff1564cb03faed09ae74357bce0f2f113df3881ed6c62770f1ca8d43ed411a8b24e926137faf25ba2b51d01854ab3db3fd6cb4000000b01f4538b53d3d8617a22619b284b15888be61a986eaa19b4a10e12dadd692247f9434112881e7834554a25d6530f2ad50b58784bc5e25ba1ad3ca8a8504d891e05f71d7053bb4a07403c88bcca29f24ac59f30043c4b70ebd70164239eaf127d6f804eb39b847f856d3aa0f79f0d6f8422b1ec410112137add770469321b9124f40eab66e63ef6a9c30522014d3a9bc4425a620722c08dab74df797c6ad3fa1dd8df45dd2817542eeea7d38f158d0bfd900000168000000b026f555571554b5880654d99d0ac75dd4c848bc3e54c20cd3298aa488e0216b33463ad515425a3065435b655419ae42d73263ee7861c3e51db8c0657e8cee980dcbe45b7317d25c00096228394faeae1d52d96a392f4b4cb7dcf4a65df71f2353093ceb630a2986c32b2d45ce25678d0113cd53421825ec6d70470378b05909067029975ccc87fbf849bdb987cf4009d81df355b38a811faad5362c0041dbbcbbae90b765e8add788b3b8defe8e10e0a0000000b026fcbcdb0251762d4f26831b1fa4295ef158f406ed816d7ce22c10325a8425d301efa3bfed6ee5362af4d6943e65e8c730bc4b1f7d064298fea24e627bda89f0ffbd88ad2cdd7b93f197a6cc3426ca215edab1033fabcab0bba8a03ef56c4eeef63bac34981a0ef4eadf38090dafa60e08b3d22ebcf2599e61b8cdb7baf210904d5df6fd240b211f931d8162cfd3c86f28755e94cc54e2979fd864ab96bd4d75e5dad5ae869a105a35c533f4198562d400000168000000b02a825563e4b88303a9490b67eee06f58267c076915a38253a704335dc38bccd4842dc95f0d9c742837ca839eee21c3373f1cd03b985563e51020992b3b666f420f964a6d9a2fcb23745a5fba3f8e4f18524ab037e0ec6109ffa1d1ae30a723767f705bc1917569ad0497751fa31023620e3c9aba65faec2e5962033b45243640cd4bb7fffae37a220960cf9fab57429910955f261dc6a8f84655b819a0d01c5709b8d1e71b92e167c46c805345347a3e000000b016c3d0908f51da34f2d32ed38ea08a4c1833037a5f3f6a09f20ab27e79f697c3eb7d91a8892438c923464c5381689b5681a8443686736bbf37743e23de010dddd0876670586fdc4fc3422846f39dd3e78f4e0a776685b7b9445f79b753d47d74d82771e0add25c1466aaf28746fa42703005b93d193ae3f93cdc068d0f27106b17f21072ccbc66de7e044f07362510af1f3aa38071c5ffc73d6c1d9d565db35ad4f0ab55a1b516a14da52e8430a8171800000168000000b00e3d1e0490a8cdea27d30b1dcb08fcbb295d9d3b6012adb29e6510f9d72fbc61f9d6b9a9d95b87b5af8ba3d1374855e12123692e94c88c12eda2e9787014dc91339c772772826f6173f06d5c8eaed919cb78eeab992bd1e86e49d4d901dca435ffc6e64c46db28d6e0bbaeab8b8b97d414a588fe204f3bb85cf7824f49a131ae7162b32e5342e69a1eec2960db67dee32bf2a62b285087778c2172d7d7a41d74b7a13afa15d0ea4f84167dd1d8220ce6000000b0124948966bfa90628ef99597392741e2ed8cb227be47bcd2cba96d29241b7cf8cde97c590ce4a3147e3ddd9637650bf13c9b3eb2918751a87beb3709b90b00fd259b7785ae3b94e69c25ef0e3b3b7a6d0cb4720be0b333467c7b8119a18f94ad116a81b869e773ec590c5589db381bc01adfd28a80cc12f7ef0b3fa78b312e1e40c5e1c25375c41a76496591c0aa80a81e3c39adbfc4d421f32e9daf92b8f7d1d54e61f2954e63a9a759b6c8e98605c600000168000000b0051b9b68598f8c7da90721c52ac04b934088b3fa7f73b5eb6be14b460f469279fd2160dd1d4910c82a4f63ddcb2e5ef88588d9a5c0661bc44bc863849a7c10020f4f857674741761420d4b6a930f5ef07c176ce0a4f699d9c82621d8e1d614eca705c31e552ad37d0e7f68e5193b42df0f3956047f304960c4ab27e759a8c6c7f712ae1001214e26c00febacbfa4d8192f9f4507385b951f9e8af418a591cc887e91ec667b004a9ca59b79167c3712d3000000b01d9a7693501bdf5573dd7f8df9379a44db0eac42d23892a4a658f9161eec044086ad85559d2f843026e323f55838c1296f34b0fd9199e5fdd713ca6b7bf8b449fa38092bbf96e47f83304986cb1d6b97358d65c1aa89947e807dd57af51393a5193df35a57d463b94cd9c51aeb15c26711ad6188ce1a6567a54375f3a28c633a581356a8696eb13887e5dd9f5be0e41700bd6ed0e18296c32d1f5097efbdc6a260f6ec08ffd32c3f6295dec4e3d5829100000168000000b03006b5f1944203001e0691fa92daba61bbc81e0361e77bd9ff5c6c83a79513f17b4e96a95f86b0ee421a941f1ff83944522ea282545ecbd4181a825005e12abd6fa9715e781ef8709ff43f301ced9705ce601a3ea708ff4b31ab0c5c629ae5440250124cfef228e0af1ed45f55f5a20a2ac8495f893ac2215c6e27edd5704c30d9b266bf0672e3654edc8a3eaa2f4a1b10a00091f75cc9d1d04cc57d61ee4c61f8ed7f51680745dc0c90ef11411cef41000000b01150a750ed714dd6e174e9f23ddc87aa0e781583ba1b8f808520bf88e90ba3001d67deddcc35fe89fcbdee3f2e7e741354527eb44a7af354ae359d37dce64c72a234a850a1b48ac1b5c864ee69b5fa9b606be557468c5e47e710dcbfd618ab2d123b28ff1de181e3b3dabbd1522a20e714b2acc97a88333252c6c3053dcd328efc440c5350b165b45530f03e3cf9dc0e18cc64bc800595d16490950a664f9f8ab4612c1ec51a50abfaa05f19c5e0bb37380000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000030100000000000000000000000000000000000000000000000000000000000003020000000000000000000000000000000000000000000000000000000000000303000000000000000000000000000000000000000000000000000000000000030400000000000000000000000000000000000000000000000000000000000003050000000000000000000000000000000000000000000000000000000000000306000000000000000000000000000000000000000000000000000000000000030700000000000000000000000000000000000000000000000000000000000003080000000000000000000000000000000000000000000000000000000000000309000000000000000000000000000000000000000000000000000000000000030a000000000000000000000000000000000000000000000000000000000000030b000000000000000000000000000000000000000000000000000000000000030c000000000000000000000000000000000000000000000000000000000000030d000000000000000000000000000000000000000000000000000000000000030e000000000000000000000000000000000000000000000000000000000000030f0000000000000000000000000000000000000000000000000000000000000310000000000000000000000000000000000000000000000000000000000000031100000000000000000000000000000000000000000000000000000000000003120000000000000000000000000000000000000000000000000000000000000313000000000000000000000000000000000000000000000000000000000000031400000000000000000000000000000000000000000000000000000000000003150000000000000000000000000000000000000000000000000000000000000316000000000000000000000000000000000000000000000000000000000000031700000000000000000000000000000000000000000000000000000000000003180000000000000000000000000000000000000000000000000000000000000319000000000000000000000000000000000000000000000000000000000000031a000000000000000000000000000000000000000000000000000000000000031b000000000000000000000000000000000000000000000000000000000000031c000000000000000000000000000000000000000000000000000000000000031d000000000000000000000000000000000000000000000000000000000000031e000000000000000000000000000000000000000000000000000000000000031f0000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000032100000000000000000000000000000000000000000000000000000000000003220000000000000000000000000000000000000000000000000000000000000323000000000000000000000000000000000000000000000000000000000000032400000000000000000000000000000000000000000000000000000000000003250000000000000000000000000000000000000000000000000000000000000326000000000000000000000000000000000000000000000000000000000000032700000000000000000000000000000000000000000000000000000000000003280000000000000000000000000000000000000000000000000000000000000329000000000000000000000000000000000000000000000000000000000000032a000000000000000000000000000000000000000000000000000000000000032b000000000000000000000000000000000000000000000000000000000000032c000000000000000000000000000000000000000000000000000000000000032d000000000000000000000000000000000000000000000000000000000000032e000000000000000000000000000000000000000000000000000000000000032f00000000000000000000000000000000000000000000000000000000000003300000000000000000000000000000000000000000000000000000000000000331000000000000000000000000000000000000000000000000000000000000033200000000000000000000000000000000000000000000000000000000000003330000000000000000000000000000000000000000000000000000000000000334000000000000000000000000000000000000000000000000000000000000033500000000000000000000000000000000000000000000000000000000000003360000000000000000000000000000000000000000000000000000000000000337370000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040100000000000000000000000000000000000000000000000000000000000004020000000000000000000000000000000000000000000000000000000000000403000000000000000000000000000000000000000000000000000000000000040400000000000000000000000000000000000000000000000000000000000004050000000000000000000000000000000000000000000000000000000000000406000000000000000000000000000000000000000000000000000000000000040700000000000000000000000000000000000000000000000000000000000004080000000000000000000000000000000000000000000000000000000000000409000000000000000000000000000000000000000000000000000000000000040a000000000000000000000000000000000000000000000000000000000000040b000000000000000000000000000000000000000000000000000000000000040c000000000000000000000000000000000000000000000000000000000000040d000000000000000000000000000000000000000000000000000000000000040e000000000000000000000000000000000000000000000000000000000000040f0000000000000000000000000000000000000000000000000000000000000410000000000000000000000000000000000000000000000000000000000000041100000000000000000000000000000000000000000000000000000000000004120000000000000000000000000000000000000000000000000000000000000413000000000000000000000000000000000000000000000000000000000000041400000000000000000000000000000000000000000000000000000000000004150000000000000000000000000000000000000000000000000000000000000416000000000000000000000000000000000000000000000000000000000000041700000000000000000000000000000000000000000000000000000000000004180000000000000000000000000000000000000000000000000000000000000419000000000000000000000000000000000000000000000000000000000000041a000000000000000000000000000000000000000000000000000000000000041b000000000000000000000000000000000000000000000000000000000000041c000000000000000000000000000000000000000000000000000000000000041d000000000000000000000000000000000000000000000000000000000000041e000000000000000000000000000000000000000000000000000000000000041f0000000000000000000000000000000000000000000000000000000000000420000000000000000000000000000000000000000000000000000000000000042100000000000000000000000000000000000000000000000000000000000004220000000000000000000000000000000000000000000000000000000000000423000000000000000000000000000000000000000000000000000000000000042400000000000000000000000000000000000000000000000000000000000004250000000000000000000000000000000000000000000000000000000000000426000000000000000000000000000000000000000000000000000000000000042700000000000000000000000000000000000000000000000000000000000004280000000000000000000000000000000000000000000000000000000000000429000000000000000000000000000000000000000000000000000000000000042a000000000000000000000000000000000000000000000000000000000000042b000000000000000000000000000000000000000000000000000000000000042c000000000000000000000000000000000000000000000000000000000000042d000000000000000000000000000000000000000000000000000000000000042e000000000000000000000000000000000000000000000000000000000000042f00000000000000000000000000000000000000000000000000000000000004300000000000000000000000000000000000000000000000000000000000000431000000000000000000000000000000000000000000000000000000000000043200000000000000000000000000000000000000000000000000000000000004330000000000000000000000000000000000000000000000000000000000000434000000000000000000000000000000000000000000000000000000000000043500000000000000000000000000000000000000000000000000000000000004360200000000000000000000000000000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000501100000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000070a0000000000000000000000000000000000000000000000000000000000000701000000000000000000000000000000000000000000000000000000000000070b0000000000000000000000000000000000000000000000000000000000000702000000000000000000000000000000000000000000000000000000000000070c0000000000000000000000000000000000000000000000000000000000000703000000000000000000000000000000000000000000000000000000000000070d0000000000000000000000000000000000000000000000000000000000000704000000000000000000000000000000000000000000000000000000000000070e0000000000000000000000000000000000000000000000000000000000000705000000000000000000000000000000000000000000000000000000000000070f00000000000000000000000000000000000000000000000000000000000007060000000000000000000000000000000000000000000000000000000000000710000000000000000000000000000000000000000000000000000000000000070700000000000000000000000000000000000000000000000000000000000007110000000000000000000000000000000000000000000000000000000000000708000000000000000000000000000000000000000000000000000000000000071200000000000000000000000000000000000000000000000000000000000007090000000000000000000000000000000000000000000000000000000000000713000000000000000000000000000000000000000000000000000000000000070a0000000000000000000000000000000000000000000000000000000000000714000000000000000000000000000000000000000000000000000000000000070b0000000000000000000000000000000000000000000000000000000000000715000000000000000000000000000000000000000000000000000000000000070c0000000000000000000000000000000000000000000000000000000000000716000000000000000000000000000000000000000000000000000000000000070d0000000000000000000000000000000000000000000000000000000000000717000000000000000000000000000000000000000000000000000000000000070e0000000000000000000000000000000000000000000000000000000000000718000000000000000000000000000000000000000000000000000000000000070f0000000000000000000000000000000000000000000000000000000000000719000011000000021c000000b01ca95a38ee1f625129ed061558e695cd4b41d7eaf046d0605768391e285be2aee719710cf156df888adba93d8b0590f4f69f819fd9e50f462e7999c40ef929075e95981f455df0a571a076715f574c33b2d3749eef6a9597392ebe177779d9a53099a3354fea81e11a21c157273382cb1209c4f6f6c0d1d646d91733de73e575145ddc51b11a3bc640a244da47f7ae2a1f8537c7a78c88fcbc42d42ddecd7170c99c5ed4f6a93df3e78ba0af1fd5bfdd000000b0161bac8b2c06986bffe90c25127520d8cdb7046e3bff807b4e34df8384118e3ddf25c4fe31e1a84a0f334c93a481a56477e97aeea138a3111c0a7fbf537d0c2d6aaf5b25991919f0d8a58b626664d437ad3117fbdc64b890653cc64659eccd56666871917dc0f0d9ae889f147a42c79d2a83ca309601e00641d706e5eea3ac9e5267cc81a65f3c42d6b9bc620082a42f16d61f2a856d98a0fcf9cdd67049ae2585c72139937d0cd6867e836fff780bdf000000b02aef312509e36917fc08fc8663dc25cd1a4e0298a12d0f3ee98dc464d1ff29ea418020f2aafc171ce676e36fee56c97a0695b48e2284b5a981a7c3c02446824968b0819585f696d51a4a7051ec4e1d548528faaee848c3804bb779d88786e3db686bbf034fbccd356e1ed8ce9be347c5067b7d5b0c201dcdb266eaa2e6df90f61c1a7f75efc27177af12a758bf5977ee13ae6b486335f09cfa0778750e00ad038b8d689de623ae706fea9120fd5664250000021c000000b02d78d6eef8cf736377ebb146438eb5b7459cb15634ef863a023cba0663588770c1e04915c9bb9a2e517e6d23cbbde6e622b9930a7bc66d2702749efb59f70cb1074df22c7bbd6e0d645334eb0784858820732491d4429639c44c1d43409b029daed3bab256f8c219764911e8ecd313a9176033138a5bec74725d92f47c84b90979707b0527de8e6d3f15bf20212418d10c1b4ad31f39155574133f7a0b0f60339eedea731c0b0ba8df633e6c285d9feb000000b0079f6d0541b6c739b3e48771404ca53d6ff881dc9d4da1bac755b51bae863556e710a1fab94a087cc73b7f41d8856811984b3fff1a2a56ea6fe1011440e7d619b08f223da43b54b4eb6e1b8567b11b5c6e73b6515dda447a8b8ac84eb419f81649b88361b81671d6f3810db73d3827401b0e62eea6bdb9ce82097bb7a45f8ea9d48612d75ac2a093ff0249af9ad00ef71e78fefdf0beca8c081714c2f0bb5e72e45eb11dea9cf8cc47b622d355c0582b000000b02d9d285384eae7fba6d404ba3f364e6aff97e06aa759523c2e3d3c7d31be8f102eb7f23794a62e380edd8080cf0aee92f2c13f2f42152397bd51c87d4da3961d414e5d18f19bb80a57de0cf21850510cac170b5b78f56d36297efd783212d6f96b26ffc9fbd922cfca7ad021ffc0c72208a1934f6537dd51bbf1e846f33f2466f7364a0534037bc8abb45c0edb35f83e0a90d8478c1967eaeadd68c8d8b3e07a69f6e0cbce77adb2a9816b00178acc560000021c000000b020195a68f64788a6e37f79994170a37dd8ca22f5ede7f4aea3f7b0406d8157e84c81935dc475cdfa378dd7479c8155cec2dc807deb79e2d291fac35c371ee3941886515fa226625387325865746ba43bb93c10eb10e05de31509d4d44d21ddd4cac3d279cec55cdddd7f5fa0c4a63683272f570af77b8b96f829c9340aaa18083590eff4abc26a2507aa85d9edd578691a76a8fe088875b979e4af0180c7d0f2b135478c0b39f6a2b5683fe5fe0533cf000000b0182b5083c3e411527d5c65aa51912f8e13c716079e8bc3c2a5ccd5a6c1b011580d0e9bd42134d35d0398e1aa986e2b01df8e314a86b22f07e97ebcd6bc002dea631cca0ea7d4d910b2e72512295dd47abaf2312b943118f7ea03d101131ab04af8ca7966dd5477dc395bcc09915748da1000a75b2216346636682d5bd621149c902160548c5282e3d0c98e07c77aa5c202a8d2c3a750f27c0690f5784349ef8f28c1db2f2d84cf7fd20e0de81ff09ae5000000b00074fc3e3b2682a37a7116ec7dea4a282ca644c84049aedc7ca4a7319159e21410a67b9e8c20d25f4efa2fb1190bb05d604f7a07bd8f43d0452e45d3a94462abe43b6cc75041518131115ee027e6279b7b2b87645184a484af2e8436f7374282aff01a3e2cd2c503439b82b5340e2c861bca579009f9a13974de1b6e80e4ae2f5cf85d0116a529eb36cbc97e6fa40cb22908d5974ce5285fb5bfd6876f9c62a0e29f7e760f2bd71d112fb23d65bbcdd50000021c000000b0022f1d2dcc23e91d7694e2f775c3bfc39fd032c604b8811130602e0dbe81fb64b35d6bd29aa09236639dbb4b207c405aafbd21a1fb28ea5d16366ffad297a152112e05bfd807dd8ffbb7f0e2422ef926cb83c5a08f91c620cd15a7ea65ce92b647306cdb2bbd8498f6018fcead3c26ce13d2c54fb87332ea4aa6aac79462a532e63ed4a498a2580404d278151f1ab23305ae1299e15459e625e0f8762097d5389c7d9d387076d112bf4077477e6abfd8000000b00555e0e0e6e901edff2b8de8130b44cf8a2001478e7619e74936efc59d19068af0c087e0c4c22b1a6166dc269eb3aa06aab2d7cd0f4ee3cc5701199aee473af09d18b1cc40306f2653d3c40d8a11a8c976c11f7b55cbb4a9b197c6f4f35adbd4587229c682c9b6fbf294a1d27c4b608222133c4ee8e959e855b55d7d097a854c408a47f7e0d6ceca37ed5bbe94dc8802056c764c92ca99248cd60dfaa762e572dda8789bc417ee5904ec2435d691be51000000b020b32425dbf5af5f8729d567c3d791f4b627d4886e20e26969558a3d024d4ddfeb78121609a26470ec015c392295aa92918e22db0429db21641fb9672e95ff7681db7b27a9bbf825a0bf1a1bf8cc6c27d2c687b58476abc19f61f8e56e3ec64c8653c175275ce9aaf8303e6f35fc41360d0068794df68cae9757e31daa0602af1681756cce1caca3e243a364d1b25fc32dbe40564022593e87b604b89b39f6ea16b063f0dec9a02a43b2342e244883540000021c000000b003d86614f74410d1a9df9b6e0272c9f55fa06df978eabbc0b3a196fc3001840658ce6048d5f701defe21570c30e4b197b0a81c2ab1780907c6171b31cef860ebb441eb53008815ccfdb761a2e54222b92e11ae483e189533f71f8da2705e421a5ed0cdf1be8fafb44b243977ed2131ec023d9e4e246fe94ddef56096b142a8964610e1ae3c35e16888d3bddd9461a5e92a9dd1e3d6c8a48a22e5195e9504def180b984c5d2e3a599c19a0b97d8eb4546000000b02c3e9a1d5253c27825a9d2586057d1c7444cee3501a3c6b708641da787c0248daba71884df3a6da55e7c291fd57598977564594312f994cee71f256c8760e19302b56f78ba196dcb606210d6072416cb0b02f726adeec94652b01d72ac29c5f35af053bf9efa2e4b94f476395e597d1901ba4981831938d925c5fc34fa8c448f53831fc4c0da969fc5dba252fe2c364301ca6b500e2c6cb280087018f87064280b6085edb402531f2b78386fe97cb193000000b00dbdc2bdd4221f423c44d0c82e99fec2d08a31902670fda1633a900bfe2c93bb81009c4f4c8ad40acde7eb8dfacc29f9808a86aa99071005ae7d4151cebf8c57d3ab6271ad243bcace21396cf857386addd4f3a548dadcf58b7b421b371dfab2aeb8e1380a7d5e317154441a46ea4da90686a2b4a8ddaa3c11f449ebfde0b2dc4f57a3ff225e31043c324fb1bd7c5b802249897985b79ea7cfcffb297411375b98f0b13d325ac2fef07466b2132bc4c00000021c000000b0011476cecaefb5d1a9ef3f10cd80ed4f11aee9585e0dfe0828cce93232f4b0d9c175605e771a2ecee50712d5b2f38a833444b3923ff6269a297e4a361b9ed31bd020c92c500ce2f91b56c6423dbb7a7c77320f5e1d96088c92f0f6165e83885dd6b63513b36cd6badf680279c4a63cca23f2322e59cb2554943fd983bd8b18b5eeaa3b8ae449c686d3858ff3b24e351112f0da78135f3c0cfd8334df623843e00ba669bc4b634c7f7d29476478c222dd000000b00b36301206a05674a37fa56fcde573448a238dd0310d476a9032fbb38d11025aa46cc5ebe9229fa4a0a5c3ed3f50881edd6b9b859448f437cf1f4dd0cb08e5e6bd7c75461754eb102b237845205366a1162839a0ea0e6fb1b712b0c4e0a575264eabb9273007ddd7540d7a5b222723ed05f2853af628c87f1653cd22bd2a0c5ffe0e69ba81a385c3f7564b35ee6a95f422118fca396e06f91b1f5b3a438055c6e4360a77ac042d51636186f0a4730213000000b02fd8d55e2a5e235e1ae9af58a96134de6268c80c45debded6287598a942113391536cd5df421055c9239b35ed6598a327601ade7123a0c8872a94e7a57bb13eb25b8ea189d8c9df99501be413460a91b48428c82293714c58b8c6649a9b89be696fff91e2fc5a344d816ebe0497e4d7a03806abfeea7f533ae2610bc76eb98bb79423dc9a320003a1efcc901fd1d5a04293e366b0c090a3ba449f6bd169c9d13455875aaf1448c89fc103dccd7d72eb00000021c000000b00d0f46a2cf5cb3d3eb427dceb4200606b38c3e817c35459f88ed1b4e93e7799242e22616b89744025b8027253bb129cf7ff3409e83265502179fab782ffef2392f6ad3751efa13ff99f74a4ac5e85b7dce29aaf90c56f192ac4ba8d71fd9b422928ae18c0028e4a3ef1fc82d56f69a5a247783590be214dea06b39d8cc4fb3264bf73822903b660dbd72900676fba08e2a089119453aa6938431b9f6cb16f70968309563e264c505d994cd5da5010d1e000000b01542987ea6022c7a6e39f22ab19f55cfdea9e820c57199289b79d2b8fb374dba732b3cfee5d9fc664783874c90b87388799e18d11cea2388a609addfe485e28b0fd9971a0079aaeba9557865327789bd329a59e4b28ea08de8b682f50fbf11a475b9466f16d45aa9dd7a00f0e1b2533a2b349ad3e746e48d3bc9ec2135acc5b2cbe5dedf892670a433bc509190d87b152ba025240e0668c5d19d184d91610f26a35d2f6e5e93e7336d7705137351439d000000b019e09e0a94720220e1dde564ca0dcc71b24019f378c7ff5741b7e6864ab0ce4d8c32936b2ee9713907440843f85ac713ec442c9d1d7c566faf7443ffa8d7a538cc8decb4ff178b35fad4730890520c851993fa702064160c616b95b9ce3e2dc06bc6d641774e6b072a4e0fa722978b3e250219c28cc04868eab433c07ce324b1c5a655862700d885ba1b393f5d63a933285eb14a108f1f767f02699c3dd5ddc9eccb133e21a8b00067ba371c23e9be1a0000021c000000b017516321cd1684598fe8175553478f9d79023763f7467df43e3b513884fd8ecdc9f43220e2c84954b1a488b7bcc2c0a90056b1940eec7883889bc95f4f7deb5d27fde5554663c8d20b4e1d4ca770e6245ad03fdb84e3020f043e9c6e00ef97d95e723224320a0ba4e11b6e1b3cabf43f0b11a31e35f0b53d111b2882789a3cc0714d9a4c24576752431d986b9efd99210e2a568d16037e19a31a128047b82ce87714706452326461d2d1d4ddc4a1efcb000000b0272f1bcfeda0d3ff5f2e9ccbaff1d301879e70109d0f3a4e788a4895fc6ee2eb6bac66d562b357cc46b83f71f78e14b15270aca9bb35f4b7d56c3c7f3760b544640865c9c42c8f9a35e995b76a613365318e5d0f1ec6f8a6b4512817f282033312bb1cdc8aeab3d89eee4fd4de68521c0f2b9326026bb90c3364d7a1be46a5630d84c224755e5d86c887eba9e8f2c34c14f3d825eb6d30ec610e7650cab51fa114d5a734e03746231bc6bf09595f28a1000000b01252618e0ced5456fcfb9783af5b459b540e44ba8fac142d6a0411936a96252484d9bc12d95e4c3437f5f2bdb6d361b1f322033c54b1868fc2b092a7e1309cbafe96350dfcfcfd839a37edbc05c36ee31b78f2085d163b201d9e14469f0bc3e0a006b1ae93f081db662fe60a997202f2070eb422fbff7401157c30abf1f3254947adf2357f818e8b23c411c9b65c36f41cc7eeada33c364f5f577f490f7b61981b20d536cab771eda71692ae71e40de500000fa400000168000000b01aabea8444110fd2521125e870c323bab7b67ca0b33925df06b5adcd20716505214cab90fb71f0ff6467b2ea2237e0a9a60fda9c517a3f956c4612d65b9b70f110b0755d399f5b08b3365a588fd8c5a1bd491142f0453f70ef7c8483ad7e518067477ecd2ad49d5ac5d85590642390000aad10671bace8256cc5df3d1a4c0e252eb6367b1989ef8b738369e8535d73ab0c6a5d0caf3c868edfdf8edc08c674ac9f031f6436444a2d5ecb133fb6a1d0da000000b0142af2e21236c8fa33eca343ccd06f89d6239ecca8c30326e7ae712243e67f5bbce19ef32ed2eb42f21a9a16b7c55379f0d88b99c9d79b076cf400e1f7da99075f50acc3e8ceb095d7c48eb3f244b68bfe2189530ba81d1d0ce61861f420ae13d69408ff59f888df052e21d986c6ffef250612869b76f00a9a7f47cbe734da30ea7034620ec4c131e3e5e08a482f65570f93c39830be86ba524834445c9ae73bc57d0e1989b6294320791c94de336b2400000168000000b005801010d388403443ffb94fcfdcd53ff4c6556af2e6a6af93f745228447b1d75cf287b1932853b0e87328296db21fc2a509684296a06e5c14cad5c98fcff9c700a69a4b191e76bd4e046632ff4483115441507877ef902261c608c00f4956668eadeff6f98655f53804c7073af89a6f08742ccf39b6f5df0e0a69b9c3e2e0c3d949afa97aeda2a4656d9540705425d8218b5b59b00d4d3c12193f4da8af141370c1ab428be0a64b51e792d9ab9662e2000000b02376d97a96663ef4db5907c539400b2c546e2f992ba3e7f91a34dd8c3d50e106283aed41fec55988b71e9bb7499d5be2902287b5ec2fc131729737e4c00a2f11ea93e133a890101e6507114926bf58ae9d539a8598b7e0414929ba517cf5da85f036b18eed826c36a7c1a827ea042a46295e7713134707568a39258f29fc09619f07b93bdab66721026a0e013268191a06f287f711195409702278ba74a46e9d0edc05079dbfd7bf17bbd027cb1e173b00000168000000b019160db80a19c8b9cab1fa7a906c095c43892862c4336a08279996f7906d5302977bdd8dfebe256c22d3268141e557fea2833a51ccb6f1e8ff89437655ebc6843aa4f58cf958374b30131efa824f70985738d0ce9cbfef8316eb0ce20ec9c667cc24600a46fb50a17867cb773f66b72d06c72d35b3ac267fe6c1f1487719a8a8199ae156cbcf45ca920a2c449947fc5b105c743a64d9cd67c936139afa452617628ac1710b1944f2be37846c0bc74cd3000000b00fcddd75a85a0410045d15b3ae95ae7091cf4950699307fc5d74e27c43c5417ae115cd1e9bdec80fe3696c4093cb27ad0e270f5069aecbc274479fcf6d22a527652d89152a451303a95a8af8ff85ad49753cfc5d1bb7cf0d1a6c64dad8661ca120cc87e5b245399d5d14590f6d95609c1f4f0c1d7e18ded0e84c15adbd430f202ab676e1c5fadf0cdbe3a8491941086e0dafd02050d45c4eeeee9fff911f9c2a02e9be660edca42493902891559b100200000168000000b01402ec40a2cab35f51de2c07f95ac799b6e364a8c295fcffae1171b6718f22df630b270eb101df0d51b0566d45e34b08fcc01b5af9dc1de33cbaf21235913e02e6d03faea4635b6ee502ea9a41272731fcf22d7afd3dde20febbf7a847b856fff7d9ebc8ef35830d387b59ca4c2d68ae28c2137bf20812afc0d21ca795a653514f013d77eecbeddd78794f4874d078b312540cec5690bfb612758d485dc0d1d2077168c4991e17adde777dcf87960518000000b01728363bae09c7c58a1c8e7da47852da7fda639ae583a6e5e8dfae0caec68c6ea608844c646106dca5112c70613d2d1ee6cc6caf6d06f66c9900679a7f9baa15a41e645a5ef74ce8ede9299c5905b679fd3edc642af9b4f5003d677ded06def3cf660db411788fe79904c9aead2c5312109fe1a897863be88ca321d3eb876d662b3f681da3cbb292d9d7fe2ae529854d14fff43b678d0d5fc25754542287b29b9e3c7f44a5ac952f390522fd0fdf4c1c00000168000000b01f549eee4a32a28c9b2bb37a3606f08533f625efd12423f9c9fa5f29b2da938b8fe57a3414136b4712e24ff04d1c30114dac904507a656b4b1bdb660eb56e514657310b2ae780a65b336b3ee48879b4c8ae8e3b2b212d01d6ec87736a172ffae53b1791a72368f60e585e539175f3cac2eacd236b7780801e5fa41b5ad9f0d3c5c06d05c25eb5a55626d76e90f7bb02d113d089c96b79a68cd60dec8e8d47357a320965e49fb1d47dc0d0c8c783c02ac000000b0030e88a546b545bbc1c24ab72f4b01e5868b303682f78768dc1fa3c95c07b5d293f96710e25bf3ca9ae89c896cfbf5904fd93630e7dfdcb79f6f5f5b5c0fb4f36637f0c6e3dc8f4a7216dfcb465c7ebb3cbc57c088fe69233bd69fe3dd75a7f1859e4eaf44bb3c5e70ef8239e3bca8422cc01c4b11a2d1844d9fa569aa964fbf03a9db26f6fda73348e23cafe715c66e1cf99149206b507c3ca7de2e7468496eee3978cc32306c4a2d959d0500aa4d7300000168000000b0003f85dddf77ef920f6456daea356ef7504c09dad7b52654c14ec13436c93fe210d4e88c40d9ed7c298d97b735407a1c92d307e5c45827dc09c7e8288d8b6ac463c06f05e29617f02265d6fcaaa46db39d0a29252c363a817a592be3294a365d913bfbfa3ff0f3c521fe36dd06cbb8e10e2ce8c11b1314b679236de533dd532782cbed680bf7ea05330cc9108dbe7eff231f1e9fc34c519b395c6671c556a382681f24d6133d11ae0710b2f9915555b7000000b0256a415d7e18d916e7a037034e665f4fbbf0d3e44da30de17e61ccd0289c39b9abe577d52a444c7acda034103e59613ccfd13070ffdf034404d132f3f2788b8206e2f6178f4bc581099dccfd7c472797303619c9fbfd6f785a797b847e2bd5d3a9933524c88fe95db986dacbadb9606f205b0691a545318143db89cf970b124304a13fefe696ca415988aeaa961f9eee2e978cf7ed017770e8b4c402a79a23aedf4d90cdfdf0c14fb42621470ac0fecb00000168000000b000b0251a8c8b697e63254b6e5d90dfeba98f2e270aa5cdaa8da09654be25b22d7c5ac3b2b32ced096a2247bcf6e22bd089a8ff68bb408394d0f082db4c819f1f68f805e3b77783e7f58a87b19d317a27aa5a785ecf31b5610379e707d9b035dca9be3b3ad252e74d69e12cd422c5191a046dcf6b0a9091f90b71ddf7de1fa1b9aa2db03025fcd9d1d57da2fa21fecbff16d701e48a3ab9fa67f27e630c9ff6c35447b8c2a929bc9b41856bcb3ca7ec6c000000b004ffa1bc1d6d5d031bd09fe755fe127fe14e92e5dc54e0875420fb308d1051ef16338b5dfb1a8bf282d6eed46b9ebceb2bd49df96fd8be0e82665111ef7a195331c33eccff09ac2842f30648298cdd67d5b6035fd24bff8d994d307f66678153928cc9828f0a53c4d55c5a545eb4b2182732a399013a28a1531355e118e2db0f3f26cb369ad10026d95056906c36910523db6209424fe9d93364c5b733b7af9a531de34fb4bb9e8051ac083a6abfa4f700000168000000b02405a96f61f6ef17a02003575a93c878325b287271b7faabae157688ccfada728db465f5d52ad87ac5e3a3dcb7366c0393eaefd537c59872fe37de43b20c5e107e316c0f954cf3eaec16a7de2a00b587770caab251796a9db9242caa129be64c2c9b634d36e002864bb39aeede1035002c0238ea14c586e2d28263066f76073432e9b9959df798f7447f2d98c2e4ec290944813e456182a83af14616b794dcac9a7f132de33dc9dd5e06b2000d5b7d8a000000b00ab3b93771986ea698e440ec3871c28ded7e0611832e0e03231bda06f03488910f5e8f9ce61d5882804ea19e681138d454b4035527cf0085035cbf5cca44b5b76597fdd0950582660d0e48e0e5599fff64c8ac62aa5a9d8481b9014688e56d82d6ae2641c438d456e46d3e2c46ccc20e28970cadce6b8eb509ddb0daca6ae2b96a175d3c4ffc2c7533a784dd435caab805a109472f9663b480defeeb0f8251c068db62e4e8d8bd295669c565a177609b00000168000000b01fe15c9b0ac687152364aa6a592e7ad6ba2164986c490feba56386f72b878ea0cefe33a105c7916a56369b03372a73d74f20bd1a2b73e4bb4837db1d62ca8d938c5c2959f014280708b7f9a57cfaa2142ce864e671ca470b7572b3c7118d6cf4f7d1612a8ab79a4287e76e819e8b3a6a21f22e8fc5a446259a7c4e8157a78391ac58e513fd848d27c5c2be6e05ea1e4927f75b55697b73097a77a351bb45531dd6826db6c204fb8ac93780d6ae41ef95000000b0205c2faf1c063c87c3105e9edb3b62f8a5f69299c55982e3c72363b75583e1fa0a1c94613b1243cf6b222c2e59d56d86eab043092e8f1bf5f4ed6bc5c8d6a199e56b356daaaa01539be90b4bd8999eedc3f9633c5ccc6e9a758368bde3fbd126ae923ad54ecc0466fd29c07e392d4e021bbd3aff6dc886ad59af0a2970f3a2975b11441578477a1b41055c137ffd099c2af3e69fdbc176b2b286bb6b667e694ec4ad96435aea93fdf0d487945f3a00e300000168000000b0137ba05eab7fbaf836b206b29d27ba39164abf627a8fb9067eba299fcfa6c162f909f6271a82392ff84a5fa4997e028a1fd0ad43f39ec30ace1592796f80eb3d714382ada1084adc94ef2eb1d6190e0c7d5c74e6d043ff3ce7544488a2148a13d9c8b1108892f3f47d18ab85a124870a1440aeaff103d7594a0f2161a4b19ef06ef76f5997500ed60f6c18b1aaca535718dbec7a60c1b7e8a59b699814de64d8c998a074402eb43ca857e3d938b0a154000000b02f29eae1fbbfcf45bfa87be2d3c950ff524e7c4bcc0543fca977fcdfac6a25d20e6d02b1f70e6fcdefe35969bd9892e28a50acc30e1529cdfc977d0768a0c97651ee012ad45b9820072d315fcd5cd4fea47456d00bd7890e705f99c99ec5ea42d3e31559cc87a84fc701d71db0931d3f2459fb17c6a46d9b0e7a533507ad0e6ff2c11abf8202311d37d3db4c95a6f618020fd85dbec80ff7b16bf5c2d69093f7f0967430d16fd435465a1ba3105e36ce00000168000000b03007edb592d74abfe475aaa44fae51d0b54b2e679576cf0be0c24296ee14c9175cce60fa5d7e14b67e11bee1ed2130de0fd24c1d6bb2ee518d25dd6f35db87f1a91e83b1c90921af6eade9ccf7fdf8f53cb682faaa8bafd42751932223715c4e778ed35d788dc7f557b7880f0ccd11d503fb3535bfb10f64195e5d73afdb9cb5e30cb93679d42c2609630c08f4869da822e78a9fcc0562f31eba8a2b3af47867ea2b619c8377825108a7fcaff617849c000000b02316545590a39dbb9957ddcb5e5b161f9e57ccbd5c60a5b87b7eb449a96d1a1c50a7a1a3f735cfa37746634f9c684f6d0d8708271c8493fe7fc787e5849f6bfdb2cd9d1f0026532cf27034701af258853023faf11fb29f602067549caf686733b416370885c462146ddcbc61596b3a312e8d87cc61c5a2613f6f181e8cc3d8423162d03fff13c55d0c1e0101dfded8451092a351ab5df1baa16358ff931f86ce617e919e013de7b7624e246c8176ebf3", - "txsEffectsHash": "0x43b8bd02d2c6ca958303c71be5c272b917a436b3f9d779ffc3ffd66ba41de258", + "archive": "0x15e0aec496ca08dc0f0f9f4ce1aac253632930835487ddbbb18c8bec39c616ab", + "body": "0x0000001012e5643e26da426570dd999e0e044e5f83d60f3cd813c55059bc0ea0f4a7c9d413b2d2cea949fa0876265cd8eee3a4dce1e243783562ea07e2de537f469f7bf627abb3d4560e786bafd52f77ac52dea36c50419f32386567bd969b0c38e1bd7405d339cecb99fa74bfd631917f965357f0341d8c4dfe6a8f4b621d8df54c82941d560ac24523012499eeca2594f20ce238b7d21b98ad5c638767d70ee05532c2183e6d64e69b005709dfc4771c7ca5981adc54f3e8bd1b00222461ae90e44eda2f1d4572fe0b0b23100a7ea6d4780b25e826e41ca9e71897e010bcb218887b3d036d44eb30a430b5cfc6660270eb5fb7f274689ac73dfa53ba9d0739fe38637f01f7130af8c5888d4c65ea68109a1d58fe8d7d1ae62098857b0a3a3dcd393ef80ed8bcba6eb5e3b4887a32c51c5853b97a5eb59c87c520f36423c6d7be06071821ca1719330de5e3c51a521778b49cbbc1d53f8ed42e0562bf21ed72e8cb9a410b0e82ef5f7276df41353faef675fb408aeb246b6e2f704cab99bf28d1427e7b0fec7b9929c6effdcd045d3fdcec1d1b73faed495444699fab936630d69b519f0bf4f1453db36439419dbfba703b849d1aa5774fe9a5325e5bf3e7cdda9d1f7f2a9c2a035c72fd4a3e383306aff03448f9accc08a2c665837560cec8675fe2512bfaef35a8fb7df08a81001a7fd4903849c0371dedd87f31295f46269c5205dd00000004380000000000000000000000000000000000000000000000000000000000000240000000000000000000000000000000000000000000000000000000000000024100000000000000000000000000000000000000000000000000000000000002420000000000000000000000000000000000000000000000000000000000000243000000000000000000000000000000000000000000000000000000000000024400000000000000000000000000000000000000000000000000000000000002450000000000000000000000000000000000000000000000000000000000000246000000000000000000000000000000000000000000000000000000000000024700000000000000000000000000000000000000000000000000000000000002480000000000000000000000000000000000000000000000000000000000000249000000000000000000000000000000000000000000000000000000000000024a000000000000000000000000000000000000000000000000000000000000024b000000000000000000000000000000000000000000000000000000000000024c000000000000000000000000000000000000000000000000000000000000024d000000000000000000000000000000000000000000000000000000000000024e000000000000000000000000000000000000000000000000000000000000024f0000000000000000000000000000000000000000000000000000000000000250000000000000000000000000000000000000000000000000000000000000025100000000000000000000000000000000000000000000000000000000000002520000000000000000000000000000000000000000000000000000000000000253000000000000000000000000000000000000000000000000000000000000025400000000000000000000000000000000000000000000000000000000000002550000000000000000000000000000000000000000000000000000000000000256000000000000000000000000000000000000000000000000000000000000025700000000000000000000000000000000000000000000000000000000000002580000000000000000000000000000000000000000000000000000000000000259000000000000000000000000000000000000000000000000000000000000025a000000000000000000000000000000000000000000000000000000000000025b000000000000000000000000000000000000000000000000000000000000025c000000000000000000000000000000000000000000000000000000000000025d000000000000000000000000000000000000000000000000000000000000025e000000000000000000000000000000000000000000000000000000000000025f0000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000026100000000000000000000000000000000000000000000000000000000000002620000000000000000000000000000000000000000000000000000000000000263000000000000000000000000000000000000000000000000000000000000026400000000000000000000000000000000000000000000000000000000000002650000000000000000000000000000000000000000000000000000000000000266000000000000000000000000000000000000000000000000000000000000026700000000000000000000000000000000000000000000000000000000000002680000000000000000000000000000000000000000000000000000000000000269000000000000000000000000000000000000000000000000000000000000026a000000000000000000000000000000000000000000000000000000000000026b000000000000000000000000000000000000000000000000000000000000026c000000000000000000000000000000000000000000000000000000000000026d000000000000000000000000000000000000000000000000000000000000026e000000000000000000000000000000000000000000000000000000000000026f00000000000000000000000000000000000000000000000000000000000002700000000000000000000000000000000000000000000000000000000000000271000000000000000000000000000000000000000000000000000000000000027200000000000000000000000000000000000000000000000000000000000002730000000000000000000000000000000000000000000000000000000000000274000000000000000000000000000000000000000000000000000000000000027500000000000000000000000000000000000000000000000000000000000002760000000000000000000000000000000000000000000000000000000000000277370000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000034100000000000000000000000000000000000000000000000000000000000003420000000000000000000000000000000000000000000000000000000000000343000000000000000000000000000000000000000000000000000000000000034400000000000000000000000000000000000000000000000000000000000003450000000000000000000000000000000000000000000000000000000000000346000000000000000000000000000000000000000000000000000000000000034700000000000000000000000000000000000000000000000000000000000003480000000000000000000000000000000000000000000000000000000000000349000000000000000000000000000000000000000000000000000000000000034a000000000000000000000000000000000000000000000000000000000000034b000000000000000000000000000000000000000000000000000000000000034c000000000000000000000000000000000000000000000000000000000000034d000000000000000000000000000000000000000000000000000000000000034e000000000000000000000000000000000000000000000000000000000000034f0000000000000000000000000000000000000000000000000000000000000350000000000000000000000000000000000000000000000000000000000000035100000000000000000000000000000000000000000000000000000000000003520000000000000000000000000000000000000000000000000000000000000353000000000000000000000000000000000000000000000000000000000000035400000000000000000000000000000000000000000000000000000000000003550000000000000000000000000000000000000000000000000000000000000356000000000000000000000000000000000000000000000000000000000000035700000000000000000000000000000000000000000000000000000000000003580000000000000000000000000000000000000000000000000000000000000359000000000000000000000000000000000000000000000000000000000000035a000000000000000000000000000000000000000000000000000000000000035b000000000000000000000000000000000000000000000000000000000000035c000000000000000000000000000000000000000000000000000000000000035d000000000000000000000000000000000000000000000000000000000000035e000000000000000000000000000000000000000000000000000000000000035f0000000000000000000000000000000000000000000000000000000000000360000000000000000000000000000000000000000000000000000000000000036100000000000000000000000000000000000000000000000000000000000003620000000000000000000000000000000000000000000000000000000000000363000000000000000000000000000000000000000000000000000000000000036400000000000000000000000000000000000000000000000000000000000003650000000000000000000000000000000000000000000000000000000000000366000000000000000000000000000000000000000000000000000000000000036700000000000000000000000000000000000000000000000000000000000003680000000000000000000000000000000000000000000000000000000000000369000000000000000000000000000000000000000000000000000000000000036a000000000000000000000000000000000000000000000000000000000000036b000000000000000000000000000000000000000000000000000000000000036c000000000000000000000000000000000000000000000000000000000000036d000000000000000000000000000000000000000000000000000000000000036e000000000000000000000000000000000000000000000000000000000000036f00000000000000000000000000000000000000000000000000000000000003700000000000000000000000000000000000000000000000000000000000000371000000000000000000000000000000000000000000000000000000000000037200000000000000000000000000000000000000000000000000000000000003730000000000000000000000000000000000000000000000000000000000000374000000000000000000000000000000000000000000000000000000000000037500000000000000000000000000000000000000000000000000000000000003760200000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000000000000000000441100000000000000000000000000000000000000000000000000000000000000640000000000000000000000000000000000000000000000000000000000000064a0000000000000000000000000000000000000000000000000000000000000641000000000000000000000000000000000000000000000000000000000000064b0000000000000000000000000000000000000000000000000000000000000642000000000000000000000000000000000000000000000000000000000000064c0000000000000000000000000000000000000000000000000000000000000643000000000000000000000000000000000000000000000000000000000000064d0000000000000000000000000000000000000000000000000000000000000644000000000000000000000000000000000000000000000000000000000000064e0000000000000000000000000000000000000000000000000000000000000645000000000000000000000000000000000000000000000000000000000000064f00000000000000000000000000000000000000000000000000000000000006460000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000064700000000000000000000000000000000000000000000000000000000000006510000000000000000000000000000000000000000000000000000000000000648000000000000000000000000000000000000000000000000000000000000065200000000000000000000000000000000000000000000000000000000000006490000000000000000000000000000000000000000000000000000000000000653000000000000000000000000000000000000000000000000000000000000064a0000000000000000000000000000000000000000000000000000000000000654000000000000000000000000000000000000000000000000000000000000064b0000000000000000000000000000000000000000000000000000000000000655000000000000000000000000000000000000000000000000000000000000064c0000000000000000000000000000000000000000000000000000000000000656000000000000000000000000000000000000000000000000000000000000064d0000000000000000000000000000000000000000000000000000000000000657000000000000000000000000000000000000000000000000000000000000064e0000000000000000000000000000000000000000000000000000000000000658000000000000000000000000000000000000000000000000000000000000064f0000000000000000000000000000000000000000000000000000000000000659000011000000021c000000b0077b5c368ffa09fdd51759d71d7c0270712abf2ee3977a6d1da827e6616f539f88410eb688410eb688410eb688410eb688410eb688410eb688410eb688410eb688410eb688410eb688410eb688410eb688410eb688410eb688410eb688410eb688410eb688410eb688410eb688410eb626155cf87c85cc8a53760a832bd25bb0d58573c5c83bb11a4e6d7f70716b1ec32c0376de2367c11411713c315236060fc1788500f9ed6f10ff770973bc173062000000b01f33c3cd2b81dc24cd04208fb70aabec20f7041baa5e7247e1ce4ff38c1f9a1b8c410eb68c410eb68c410eb68c410eb68c410eb68c410eb68c410eb68c410eb68c410eb68c410eb68c410eb68c410eb68c410eb68c410eb68c410eb68c410eb68c410eb68c410eb68c410eb68c410eb60d69761c36dbfe8793128b8543dfaccf5d1dd06a15493863ceb1b1e9ac1b653e13579001ddbdf311510dbd336a43572e4910e1a546faf65a7fbb3becf6c776dd000000b00687dcf0e5d80e220ca0a191cf17fd0aa88f60bff76bf9916212826cc6cfe09690410eb690410eb690410eb690410eb690410eb690410eb690410eb690410eb690410eb690410eb690410eb690410eb690410eb690410eb690410eb690410eb690410eb690410eb690410eb690410eb62521ddb2d263d0ae8aff523ddd6e564b0cea1556dc10303e92d7d9f6d6cbabba2b0ff7987945c53848fa83ec03d200a9f8dd26920dc1ee3543e163fa2177bd590000021c000000b01e404487815fe049048d684a68a6a686585ba5acbe32f16c2638aa79f180271294410eb694410eb694410eb694410eb694410eb694410eb694410eb694410eb694410eb694410eb694410eb694410eb694410eb694410eb694410eb694410eb694410eb694410eb694410eb694410eb60c75f6d68cba02abca9bd33ff57ba769948271fb291db788131c0c70117bf235126410bc339bf735889704ee1bdf51c8807583365acf757ec42596735c2803d4000000b005945dab3bb612464429e94c80b3f7a4dff402510b4078b5a67cdcf32c306d8d98410eb698410eb698410eb698410eb698410eb698410eb698410eb698410eb698410eb698410eb698410eb698410eb698410eb698410eb698410eb698410eb698410eb698410eb698410eb698410eb6242e5e6d2841d4d2c28899f88f0a50e5444eb6e7efe4af62d742347d3c2c38b12a1c7852cf23c95c8083cba6b56dfb443041c82321966d59884bbe8086d84a50000000b01d4cc541d73de46d3c16b0051a42a1208fc0473dd20770906aa3050056e0b4099c410eb69c410eb69c410eb69c410eb69c410eb69c410eb69c410eb69c410eb69c410eb69c410eb69c410eb69c410eb69c410eb69c410eb69c410eb69c410eb69c410eb69c410eb69c410eb69c410eb60b827790e29806d002251afaa717a203cbe7138c3cf236ac578666f676dc7f2c117091768979fb59c0204ca8cd7b4c62b7da24c76ea3f4a3088ff0f9c18890cb0000021c000000b004a0de659194166a7bb33107324ff23f1758a3e21f14f7d9eae737799190fa84a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6a0410eb6233adf277e1fd8f6fa11e1b340a64b7f7bb3587903b92e871bac8f03a18cc5a82928f90d2501cd80b80d13616709f5de67a669b4356aec7dccb61906ec38d747000000b01c5945fc2d1be891739ff7bfcbde9bbac724e8cee5dbefb4af0d5f86bc414100a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb6a4410eb60a8ef84b38760af439ae62b558b39c9e034bb51d50c6b5d09bf0c17cdc3d0c23107d1230df57ff7df7a994637f1746fcef3ec658827873c74cfa4b8026e91dc2000000b003ad5f1fe7721a8eb33c78c1e3ebecd94ebd457332e976fe2f5191fff6f1877ba8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb6a8410eb622475fe1d3fddd1b319b296df2424619b317fa0a178dadab6016e98a06ed529f283579c77adfd1a4ef965b1c18a5f0789f0b0b45493f6ba21120738d5199643e0000021c000000b01b65c6b682f9ecb5ab293f7a7d7a9654fe898a5ff9b06ed8f377ba0d21a1cdf7ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6ac410eb6099b79058e540f187137aa700a4f97383ab056ae649b34f4e05b1c03419d991a0f8992eb353603a22f32dc1e30b3419726a367e9964cf2eb9164a6068c49aab9000000b002b9dfda3d501eb2eac5c07c9587e7738621e70446bdf62273bbec865c521472b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb6b0410eb62153e09c29dbe13f69247128a3de40b3ea7c9b9b2b622ccfa48144106c4ddf962741fa81d0bdd5c9271fa2d6ca41eb12d66facd65d13eac6558ace13b6f9f135000000b01a724770d8d7f0d9e2b287352f1690ef35ee2bf10d84edfd37e2149387025aeeb4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb6b4410eb608a7f9bfe432133ca8c0f22abbeb91d27214f83f786fb41924c57689a6fe26110e9613a58b1407c666bc23d8e24f3c315e08097aaa21720fd5cf008cf1aa37b00000021c000000b001c66094932e22d7224f08374723e20dbd8688955a927546b826470cc1b2a169b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6b8410eb6206061567fb9e563a0adb8e3557a3b4e21e13d2c3f36abf3e8eb9e96d1ae6c8d264e7b3c269bd9ed5ea8ea917bdde5ad0dd44e6770e869ea99f5289a1c5a7e2c000000b0197ec82b2eb5f4fe1a3bceefe0b28b896d52cd8221596d217c4c6f19ec62e7e5bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb6bc410eb607b47a7a3a101760e04a39e56d878c6ca97999d08c44333d692fd1100c5eb3080da2945fe0f20bea9e456b9393eb36cb956cab0bbdf5f1341a395b13570ac4a7000000b000d2e14ee90c26fb59d84ff1f8bfdca7f4eb2a266e66f46afc90a19327132e60c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb6c0410eb61f6ce210d597e987d837009e071635e85945debd530b2b182d55f91d370ef984255afbf67c79de119632324c2d79e0474538eff884bce90ede5f832081bb0b230000021c000000b0188b48e58493f92251c516aa924e8623a4b76f13352dec45c0b6c9a051c374dcc4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb6c4410eb606c0fb348fee1b8517d381a01f238706e0de3b61a018b261ad9a2b9671bf3fff0caf151a36d0100ed5ceb34e45873165ccd14c9cd1ca70585ea3b599bc6b519e000000b03043b07c201bcb4949b1dd632bdd2f9f5483b3fffbf4e42084dcf1ad7c73bb58c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb6c8410eb61e7962cb2b75edac0fc04858b8b2308290aa804e66dfaa3c71c053a39c6f867b24677cb0d257e235cdbb7a06df15dae17c9d91899891683322c9dda6e71b981a000000b01797c99fda71fd46894e5e6543ea80bddc1c10a449026b6a05212426b72401d3cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb6cc410eb605cd7beee5cc1fa94f5cc95ad0bf81a11842dcf2b3ed3185f204861cd71fccf60bbb95d48cae14330d57fb08f7232c000435ee2de59eef7ca30e102021cbde950000021c000000b02f50313675f9cf6d813b251ddd792a398be855910fc96344c9474c33e1d4484fd0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb6d0410eb61d85e3858153f1d0474990136a4e2b1cc80f21df7ab42960b62aae2a01d013722373fd6b2835e65a0544c1c190b1d57bb402331aac65e7576734382d4c7c2511000000b016a44a5a3050016ac0d7a61ff5867b581380b2355cd6ea8e498b7ead1c848ecad4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb6d4410eb604d9fca93baa23cd86e61115825b7c3b4fa77e83c7c1b0aa366ee0a33c8059ed0ac8168ee28c185744e142c3a8bf269a3b9a8fbef9736ea0e7786aa6872c6b8c000000b02e5cb1f0cbd7d391b8c46cd88f1524d3c34cf722239de2690db1a6ba4734d546d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb6d8410eb61c92643fd731f5f47ed2d7ce1bea25b6ff73c3708e88a884fa9508b06730a06922807e257e13ea7e3cce097c424dd015eb66d4abc03a667bab9e92b3b1dcb2080000021c000000b015b0cb14862e058ef860eddaa72275f24ae553c670ab69b28df5d93381e51bc1dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb6dc410eb603e67d63918827f1be6f58d033f776d5870c2014db962fce7ad93b29a1e0e6e409d49749386a1c7b7c6a8a7e5a5b213472ff31500d47edc52be2c52cec8cf883000000b02d6932ab21b5d7b5f04db49340b11f6dfab198b33772618d521c0140ac95623de0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb6e0410eb61b9ee4fa2d0ffa18b65c1f88cd86205136d86501a25d27a93eff6336cc912d60218cfedfd3f1eea274575136f3e9cab022cb763cd40ee59ff008ed3a173d3eff000000b014bd4bcedc0c09b32fea359558be708c8249f557847fe8d6d26033b9e745a8b8e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb6e4410eb602f2fe1de7662c15f5f8a08ae593716fbe70c1a5ef6aaef2bf4395b0074173db08e118038e48209fb3f3d2390bf71bceaa63d2e1211c6ce9704d1fb351ed857a00000fa400000168000000b02c75b3657793dbda27d6fc4df24d1a0832163a444b46e0b196865bc711f5ef34e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb6e8410eb61aab65b482edfe3cede567437f221aeb6e3d0692b631a6cd8369bdbd31f1ba5720997f9a29cff2c6abe098f1a585c54a5a3017cde7e364c4347347c07c9dcbf6000000b013c9cc8931ea0dd767737d500a5a6b26b9ae96e8985467fb16ca8e404ca635afec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb6ec410eb601ff7ed83d44303a2d81e845972f6c09f5d56337033f2e1703adf0366ca200d207ed98bde42624c3eb7d19f3bd931668e1c8747234f0ec0db4b77a39b74e127100000168000000b02b82341fcd71dffe5f604408a3e914a2697adbd55f1b5fd5daf0b64d77567c2bf0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb6f0410eb619b7e66ed8cc0261256eaefe30be1585a5a1a823ca0625f1c7d418439752474e1fa600547fadf6eae369e0ac5721bfe49194b95efbb7e3e878dda246e1fe58ed000000b012d64d4387c811fb9efcc50abbf665c0f1133879ac28e71f5b34e8c6b206c2a6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6f4410eb6010bff929322345e650b300048cb66a42d3a04c81713ad3b48184abcd2028dc906fa19783a0428e8230661ae6f2f1103192d160348c56b31f921d4c01cae9f6800000168000000b02a8eb4da234fe42296e98bc355850f3ca0df7d6672efdefa1f5b10d3dcb70922f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb6f8410eb618c467292eaa06855cf7f6b8e25a101fdd0649b4dddaa5160c3e72c9fcb2d4451eb2810ed58bfb0f1af3286708bdba7ec8f95af00f8c630cbd47fccd475ee5e4000000b011e2cdfddda6161fd6860cc56d92605b2877da0abffd66439f9f434d17674f9dfc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb6fc410eb60018804ce90038829c9477bafa67613e649ea6592ae82c5f8c82a54337631ac006069a328fe22d0c5a8fa96920cb0b9d5091b7945c99ea563d8c2f46820f2c5f00000168000000b02a02bfaa4936733a7d8dfc0d2758c4586ea3a2a143cbfe699401cc90b740a34a00420eb600420eb600420eb600420eb600420eb600420eb600420eb600420eb600420eb600420eb600420eb600420eb600420eb600420eb600420eb600420eb600420eb600420eb600420eb600420eb617d0e7e384880aa994813e7393f60aba146aeb45f1af243a50a8cd506213613c1dbf01c92b69ff33527c7021ba59b519005dfc812360e23101b25753acbf72db000000b01156d8ce038ca537bd2a7d0f3f661576f63bff4590d985b31445ff09f1f0e9c504420eb604420eb604420eb604420eb604420eb604420eb604420eb604420eb604420eb604420eb604420eb604420eb604420eb604420eb604420eb604420eb604420eb604420eb604420eb604420eb62ff0d98ff01867c43b892dbb4dbc6eb75a96b3dc757dbc60450b569401ecb4e9057aa502b5c8bc24413419b2f29ec0b91e55dccf2d7609c5b232eb035c98c68700000168000000b0290f40649f14775eb51743c7d8f4bef2a608443257a07d8dd86c27171ca1304108420eb608420eb608420eb608420eb608420eb608420eb608420eb608420eb608420eb608420eb608420eb608420eb608420eb608420eb608420eb608420eb608420eb608420eb608420eb608420eb61744f2b3aa6e99c17b25aebd65c9bfd5e22f1080c28b43a9c54f890d3c9cfb641d330c9951508e4b3920e06b8c2d6a34ce2221bbf43d01a07659131087490d03000000b010635988596aa95bf4b3c4c9f10210112da0a0d6a4ae04d758b05990575176bc0c420eb60c420eb60c420eb60c420eb60c420eb60c420eb60c420eb60c420eb60c420eb60c420eb60c420eb60c420eb60c420eb60c420eb60c420eb60c420eb60c420eb60c420eb60c420eb60c420eb62efd5a4a45f66be873127575ff58695191fb556d89523b848975b11a674d41e0048725bd0ba6c04878bd616da43abb5355ba7e60414a88e9f69d4589c1f9537e00000168000000b0281bc11ef4f27b82eca08b828a90b98cdd6ce5c36b74fcb21cd6819d8201bd3810420eb610420eb610420eb610420eb610420eb610420eb610420eb610420eb610420eb610420eb610420eb610420eb610420eb610420eb610420eb610420eb610420eb610420eb610420eb610420eb61651736e004c9de5b2aef6781765ba701993b211d65fc2ce09b9e393a1fd885b1c3f8d53a72e926f70aa28263dc964cf0586c34d081180c4bac36d96eca999fa000000b00f6fda42af48ad802c3d0c84a29e0aab65054267b88283fb9d1ab416bcb203b314420eb614420eb614420eb614420eb614420eb614420eb614420eb614420eb614420eb614420eb614420eb614420eb614420eb614420eb614420eb614420eb614420eb614420eb614420eb614420eb62e09db049bd4700caa9bbd30b0f463ebc95ff6fe9d26baa8cde00ba0ccadced70393a6776184c46cb046a92855d6b5ed8d1f1ff1551f080e3b07a0102759e07500000168000000b0272841d94ad07fa72429d33d3c2cb42714d187547f497bd66140dc23e7624a2f18420eb618420eb618420eb618420eb618420eb618420eb618420eb618420eb618420eb618420eb618420eb618420eb618420eb618420eb618420eb618420eb618420eb618420eb618420eb618420eb6155df428562aa209ea383e32c901b50a50f853a2ea3441f24e243e1a075e15521b4c0e0dfd0c9693a8336fe0ef655f693ceb64de1be5ffe8ff2dc81d520a26f1000000b00e7c5afd0526b1a463c6543f543a05459c69e3f8cc57031fe1850e9d221290aa1c420eb61c420eb61c420eb61c420eb61c420eb61c420eb61c420eb61c420eb61c420eb61c420eb61c420eb61c420eb61c420eb61c420eb61c420eb61c420eb61c420eb61c420eb61c420eb61c420eb62d165bbef1b27430e22504eb62905e8600c4988fb0fb39cd124a6627320e5bce02a02731b762c890e7cff0e30772b087c483c18268f387327f71fa968cba6d6c00000168000000b02634c293a0ae83cb5bb31af7edc8aec14c3628e5931dfafaa5ab36aa4cc2d72620420eb620420eb620420eb620420eb620420eb620420eb620420eb620420eb620420eb620420eb620420eb620420eb620420eb620420eb620420eb620420eb620420eb620420eb620420eb620420eb6146a74e2ac08a62e21c185ed7a9dafa4885cf533fe08c116928e98a06cbea2491a588ec852ea9ab7dfbcb79ba1015a037450066f2fba7f0d439822a3b76ab3e8000000b00d88dbb75b04b5c89b4f9bfa05d5ffdfd3ce8589e02b824425ef692387731da124420eb624420eb624420eb624420eb624420eb624420eb624420eb624420eb624420eb624420eb624420eb624420eb624420eb624420eb624420eb624420eb624420eb624420eb624420eb624420eb62c22dc794790785519ae4ca6142c592038293a20c4cfb8f156b4c0ad976ee8c501aca7ec0d40ccb51f59389db90eab21fbe863137cc80656c3dc551cf21afa6300000168000000b02541434df68c87ef933c62b29f64a95b839aca76a6f27a1eea159130b223641d28420eb628420eb628420eb628420eb628420eb628420eb628420eb628420eb628420eb628420eb628420eb628420eb628420eb628420eb628420eb628420eb628420eb628420eb628420eb628420eb61376f59d01e6aa52594acda82c39aa3ebfc196c511dd403ad6f8f326d21f2f4019650f82a8c89edc1745ff56529d549dabb4a800438efe3188027d2a1ccb40df000000b00c955c71b0e2b9ecd2d8e3b4b771fa7a0b33271af40001686a59c3a9ecd3aa982c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62c420eb62b2f5d339d6e7c7951379460c5c853ba6f8ddbb1d8a438159b1f1b33fccf75bc00b928a6631ed0d956e280586aaaa5bc334d04a4909c857b0846afa3577b875a00000168000000b0244dc4084c6a8c13cac5aa6d5100a3f5baff6c07bac6f9432e7febb71783f11430420eb630420eb630420eb630420eb630420eb630420eb630420eb630420eb630420eb630420eb630420eb630420eb630420eb630420eb630420eb630420eb630420eb630420eb630420eb630420eb61283765757c4ae7690d41562ddd5a4d8f726385625b1bf5f1b634dad377fbc371871903cfea6a3004ecf471104394f37e319499157637d55cc6cd7b0822bcdd6000000b00ba1dd2c06c0be110a622b6f690df5144297c8ac07d4808caec41e305234378f34420eb634420eb634420eb634420eb634420eb634420eb634420eb634420eb634420eb634420eb634420eb634420eb634420eb634420eb634420eb634420eb634420eb634420eb634420eb634420eb62a3bddedf34c809d88c0dc1b77644e54a6f27d42ec78b739df8975ba623002b33029f7d39a2e752746bc0dc99dc7f8b392e58e7e1e2a75309092ffbdacdc145200000168000000b0235a44c2a2489038024ef228029c9e8ff2640d98ce9b786772ea463d7ce47e0b38420eb638420eb638420eb638420eb638420eb638420eb638420eb638420eb638420eb638420eb638420eb638420eb638420eb638420eb638420eb638420eb638420eb638420eb638420eb638420eb6118ff711ada2b29ac85d5d1d8f719f732e8ad9e739863e835fcda8339ce0492e177e10f75484a72486588ecbb5d549d21a7deb226b37fc7a10d73236e78c5acd000000b00aae5de65c9ec23541eb732a1aa9efae79fc6a3d1ba8ffb0f32e78b6b794c4863c420eb63c420eb63c420eb63c420eb63c420eb63c420eb63c420eb63c420eb63c420eb63c420eb63c420eb63c420eb63c420eb63c420eb63c420eb63c420eb63c420eb63c420eb63c420eb63c420eb629485ea8492a84c1c04a23d6290048eede571ed4004d365e23f3d040c7908faa2f36788df00c794b7e4555844f63f34dca4a300f31fef454d4fd5a44123ca149380000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000028100000000000000000000000000000000000000000000000000000000000002820000000000000000000000000000000000000000000000000000000000000283000000000000000000000000000000000000000000000000000000000000028400000000000000000000000000000000000000000000000000000000000002850000000000000000000000000000000000000000000000000000000000000286000000000000000000000000000000000000000000000000000000000000028700000000000000000000000000000000000000000000000000000000000002880000000000000000000000000000000000000000000000000000000000000289000000000000000000000000000000000000000000000000000000000000028a000000000000000000000000000000000000000000000000000000000000028b000000000000000000000000000000000000000000000000000000000000028c000000000000000000000000000000000000000000000000000000000000028d000000000000000000000000000000000000000000000000000000000000028e000000000000000000000000000000000000000000000000000000000000028f0000000000000000000000000000000000000000000000000000000000000290000000000000000000000000000000000000000000000000000000000000029100000000000000000000000000000000000000000000000000000000000002920000000000000000000000000000000000000000000000000000000000000293000000000000000000000000000000000000000000000000000000000000029400000000000000000000000000000000000000000000000000000000000002950000000000000000000000000000000000000000000000000000000000000296000000000000000000000000000000000000000000000000000000000000029700000000000000000000000000000000000000000000000000000000000002980000000000000000000000000000000000000000000000000000000000000299000000000000000000000000000000000000000000000000000000000000029a000000000000000000000000000000000000000000000000000000000000029b000000000000000000000000000000000000000000000000000000000000029c000000000000000000000000000000000000000000000000000000000000029d000000000000000000000000000000000000000000000000000000000000029e000000000000000000000000000000000000000000000000000000000000029f00000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000002a100000000000000000000000000000000000000000000000000000000000002a200000000000000000000000000000000000000000000000000000000000002a300000000000000000000000000000000000000000000000000000000000002a400000000000000000000000000000000000000000000000000000000000002a500000000000000000000000000000000000000000000000000000000000002a600000000000000000000000000000000000000000000000000000000000002a700000000000000000000000000000000000000000000000000000000000002a800000000000000000000000000000000000000000000000000000000000002a900000000000000000000000000000000000000000000000000000000000002aa00000000000000000000000000000000000000000000000000000000000002ab00000000000000000000000000000000000000000000000000000000000002ac00000000000000000000000000000000000000000000000000000000000002ad00000000000000000000000000000000000000000000000000000000000002ae00000000000000000000000000000000000000000000000000000000000002af00000000000000000000000000000000000000000000000000000000000002b000000000000000000000000000000000000000000000000000000000000002b100000000000000000000000000000000000000000000000000000000000002b200000000000000000000000000000000000000000000000000000000000002b300000000000000000000000000000000000000000000000000000000000002b400000000000000000000000000000000000000000000000000000000000002b500000000000000000000000000000000000000000000000000000000000002b600000000000000000000000000000000000000000000000000000000000002b7370000000000000000000000000000000000000000000000000000000000000380000000000000000000000000000000000000000000000000000000000000038100000000000000000000000000000000000000000000000000000000000003820000000000000000000000000000000000000000000000000000000000000383000000000000000000000000000000000000000000000000000000000000038400000000000000000000000000000000000000000000000000000000000003850000000000000000000000000000000000000000000000000000000000000386000000000000000000000000000000000000000000000000000000000000038700000000000000000000000000000000000000000000000000000000000003880000000000000000000000000000000000000000000000000000000000000389000000000000000000000000000000000000000000000000000000000000038a000000000000000000000000000000000000000000000000000000000000038b000000000000000000000000000000000000000000000000000000000000038c000000000000000000000000000000000000000000000000000000000000038d000000000000000000000000000000000000000000000000000000000000038e000000000000000000000000000000000000000000000000000000000000038f0000000000000000000000000000000000000000000000000000000000000390000000000000000000000000000000000000000000000000000000000000039100000000000000000000000000000000000000000000000000000000000003920000000000000000000000000000000000000000000000000000000000000393000000000000000000000000000000000000000000000000000000000000039400000000000000000000000000000000000000000000000000000000000003950000000000000000000000000000000000000000000000000000000000000396000000000000000000000000000000000000000000000000000000000000039700000000000000000000000000000000000000000000000000000000000003980000000000000000000000000000000000000000000000000000000000000399000000000000000000000000000000000000000000000000000000000000039a000000000000000000000000000000000000000000000000000000000000039b000000000000000000000000000000000000000000000000000000000000039c000000000000000000000000000000000000000000000000000000000000039d000000000000000000000000000000000000000000000000000000000000039e000000000000000000000000000000000000000000000000000000000000039f00000000000000000000000000000000000000000000000000000000000003a000000000000000000000000000000000000000000000000000000000000003a100000000000000000000000000000000000000000000000000000000000003a200000000000000000000000000000000000000000000000000000000000003a300000000000000000000000000000000000000000000000000000000000003a400000000000000000000000000000000000000000000000000000000000003a500000000000000000000000000000000000000000000000000000000000003a600000000000000000000000000000000000000000000000000000000000003a700000000000000000000000000000000000000000000000000000000000003a800000000000000000000000000000000000000000000000000000000000003a900000000000000000000000000000000000000000000000000000000000003aa00000000000000000000000000000000000000000000000000000000000003ab00000000000000000000000000000000000000000000000000000000000003ac00000000000000000000000000000000000000000000000000000000000003ad00000000000000000000000000000000000000000000000000000000000003ae00000000000000000000000000000000000000000000000000000000000003af00000000000000000000000000000000000000000000000000000000000003b000000000000000000000000000000000000000000000000000000000000003b100000000000000000000000000000000000000000000000000000000000003b200000000000000000000000000000000000000000000000000000000000003b300000000000000000000000000000000000000000000000000000000000003b400000000000000000000000000000000000000000000000000000000000003b500000000000000000000000000000000000000000000000000000000000003b60200000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000481100000000000000000000000000000000000000000000000000000000000000680000000000000000000000000000000000000000000000000000000000000068a0000000000000000000000000000000000000000000000000000000000000681000000000000000000000000000000000000000000000000000000000000068b0000000000000000000000000000000000000000000000000000000000000682000000000000000000000000000000000000000000000000000000000000068c0000000000000000000000000000000000000000000000000000000000000683000000000000000000000000000000000000000000000000000000000000068d0000000000000000000000000000000000000000000000000000000000000684000000000000000000000000000000000000000000000000000000000000068e0000000000000000000000000000000000000000000000000000000000000685000000000000000000000000000000000000000000000000000000000000068f00000000000000000000000000000000000000000000000000000000000006860000000000000000000000000000000000000000000000000000000000000690000000000000000000000000000000000000000000000000000000000000068700000000000000000000000000000000000000000000000000000000000006910000000000000000000000000000000000000000000000000000000000000688000000000000000000000000000000000000000000000000000000000000069200000000000000000000000000000000000000000000000000000000000006890000000000000000000000000000000000000000000000000000000000000693000000000000000000000000000000000000000000000000000000000000068a0000000000000000000000000000000000000000000000000000000000000694000000000000000000000000000000000000000000000000000000000000068b0000000000000000000000000000000000000000000000000000000000000695000000000000000000000000000000000000000000000000000000000000068c0000000000000000000000000000000000000000000000000000000000000696000000000000000000000000000000000000000000000000000000000000068d0000000000000000000000000000000000000000000000000000000000000697000000000000000000000000000000000000000000000000000000000000068e0000000000000000000000000000000000000000000000000000000000000698000000000000000000000000000000000000000000000000000000000000068f0000000000000000000000000000000000000000000000000000000000000699000011000000021c000000b02266c57cf826945c39d839e2b438992a29c8af29e26ff78bb754a0c3e2450b0240420eb640420eb640420eb640420eb640420eb640420eb640420eb640420eb640420eb640420eb640420eb640420eb640420eb640420eb640420eb640420eb640420eb640420eb640420eb640420eb6109c77cc0380b6beffe6a4d8410d9a0d65ef7b784d5abda7a43802ba0240d625168a91b1aa62ab48bde1d6866771446c51e28cb37f0c7b9e55418cbd4cece7c4000000b009badea0b27cc6597974bae4cc45ea48b1610bce2f7d7ed53798d33d1cf5517d44420eb644420eb644420eb644420eb644420eb644420eb644420eb644420eb644420eb644420eb644420eb644420eb644420eb644420eb644420eb644420eb644420eb644420eb644420eb644420eb62854df629f0888e5f7d36b90da9c438915bbc0651421b582685e2ac72cf11ca12e42f94845ea7d6fb5ce9d3f00ffede801aed1a045d373791967b4ca779d2e40000000b0217346374e0498807161819d65d493c4612d50baf64476affbbefb4a47a597f948420eb648420eb648420eb648420eb648420eb648420eb648420eb648420eb648420eb648420eb648420eb648420eb648420eb648420eb648420eb648420eb648420eb648420eb648420eb648420eb60fa8f886595ebae3376fec92f2a994a79d541d09612f3ccbe8a25d4067a1631c1597126c0040af6cf56b1e41190d3f0689472e4492e0fac299abe743b24d74bb0000021c000000b008c75f5b085aca7db0fe029f7de1e4e2e8c5ad5f4351fdf97c032dc38255de744c420eb64c420eb64c420eb64c420eb64c420eb64c420eb64c420eb64c420eb64c420eb64c420eb64c420eb64c420eb64c420eb64c420eb64c420eb64c420eb64c420eb64c420eb64c420eb64c420eb62761601cf4e68d0a2f5cb34b8c383e234d2061f627f634a6acc8854d9251a9982d4f7a029bc88193ed57e4f9b29be8823913733159a7f29d5dd20f50dcfdbb37000000b0207fc6f1a3e29ca4a8eac95817708e5e9891f24c0a18f5d4402955d0ad0624f050420eb650420eb650420eb650420eb650420eb650420eb650420eb650420eb650420eb650420eb650420eb650420eb650420eb650420eb650420eb650420eb650420eb650420eb650420eb650420eb60eb57940af3cbf076ef9344da4458f41d4b8be9a7503bbf02d0cb7c6cd01f01314a39326561eb3912cf465fbcaa939a0c0abcfd5a6b579e6de1641ca17ae01b2000000b007d3e0155e38cea1e8874a5a2f7ddf7d202a4ef057267d1dc06d8849e7b66b6b54420eb654420eb654420eb654420eb654420eb654420eb654420eb654420eb654420eb654420eb654420eb654420eb654420eb654420eb654420eb654420eb654420eb654420eb654420eb654420eb6266de0d74ac4912e66e5fb063dd438bd848503873bcab3caf132dfd3f7b2368f2c5bfabcf1a685b824e12cb46437e31c707814c26d7c71c1a23c69d7425e482e0000021c000000b01f8c47abf9c0a0c8e0741112c90c88f8cff693dd1ded74f88493b0571266b1e758420eb658420eb658420eb658420eb658420eb658420eb658420eb658420eb658420eb658420eb658420eb658420eb658420eb658420eb658420eb658420eb658420eb658420eb658420eb658420eb60dc1f9fb051ac32ba6827c0855e189dc0c1d602b88d83b147177124d32627d0a13b013e0abfcb7b5647dadb67c45343af8107166ba89f90b22809c507d0e8ea9000000b006e060cfb416d2c620109214e119da17578ef0816afafc4204d7e2d04d16f8625c420eb65c420eb65c420eb65c420eb65c420eb65c420eb65c420eb65c420eb65c420eb65c420eb65c420eb65c420eb65c420eb65c420eb65c420eb65c420eb65c420eb65c420eb65c420eb65c420eb6257a6191a0a295529e6f42c0ef703357bbe9a5184f9f32ef359d3a5a5d12c3862b687b77478489dc5c6a746f15d3ddb6a7dcb6538150f0e5e6a6c45da7bed525000000b01e98c8664f9ea4ed17fd58cd7aa88393075b356e31c1f41cc8fe0add77c73ede60420eb660420eb660420eb660420eb660420eb660420eb660420eb660420eb660420eb660420eb660420eb660420eb660420eb660420eb660420eb660420eb660420eb660420eb660420eb660420eb60cce7ab55af8c74fde0bc3c3077d8476438201bc9cacba38b5e16cd397c30a0112bc949b01dabbd99c06f5712de12ed52f7512f7ce5e782f66eaf6d6e26f1ba00000021c000000b005ece18a09f4d6ea5799d9cf92b5d4b18ef392127ecf7b6649423d56b277855964420eb664420eb664420eb664420eb664420eb664420eb664420eb664420eb664420eb664420eb664420eb664420eb664420eb664420eb664420eb664420eb664420eb664420eb664420eb664420eb62486e24bf6809976d5f88a7ba10c2df1f34e46a96373b2137a0794e0c273507d2a74fc319d628e0093f3bc29c76fd850df4157e49525700a2b111ee40d1f621c000000b01da54920a57ca9114f86a0882c447e2d3ebfd6ff459673410d686563dd27cbd568420eb668420eb668420eb668420eb668420eb668420eb668420eb668420eb668420eb668420eb668420eb668420eb668420eb668420eb668420eb668420eb668420eb668420eb668420eb668420eb60bdafb6fb0d6cb7415950b7db9197f107ae6a34db081395cfa4bc759fd2396f811c9155557b8bffdd3903d2bdf7d296f66d9b488e232f753ab55515d47cfa897000000b004f962445fd2db0e8f23218a4451cf4bc65833a392a3fa8a8dac97dd17d812506c420eb66c420eb66c420eb66c420eb66c420eb66c420eb66c420eb66c420eb66c420eb66c420eb66c420eb66c420eb66c420eb66c420eb66c420eb66c420eb66c420eb66c420eb66c420eb66c420eb6239363064c5e9d9b0d81d23652a8288c2ab2e83a77483137be71ef6727d3dd7429817cebf3409224cb7d03e4790bd2eb16a5f975a8f9ef2e6f7b796a727fef130000021c000000b01cb1c9dafb5aad35870fe842dde078c776247890596af26551d2bfea428858cc70420eb670420eb670420eb670420eb670420eb670420eb670420eb670420eb670420eb670420eb670420eb670420eb670420eb670420eb670420eb670420eb670420eb670420eb670420eb670420eb60ae77c2a06b4cf984d1e53386ab579aab24b44dec455b8813eb621e0628423ef10d5960fad96c4220b1984e6911924099e3e5619f6077677efbfabe3ad30358e000000b00405e2feb5b0df32c6ac6944f5edc9e5fdbcd534a67879aed216f2637d389f4774420eb674420eb674420eb674420eb674420eb674420eb674420eb674420eb674420eb674420eb674420eb674420eb674420eb674420eb674420eb674420eb674420eb674420eb674420eb674420eb6229fe3c0a23ca1bf450b19f104442326621789cb8b1cb05c02dc49ed8d346a6b288dfda6491e964903064b9f2aa7cd854e0a9b06bcce6e52b3e5d3f0d7e07c0a000000b01bbe4a955138b159be992ffd8f7c7361ad891a216d3f7189963d1a70a7e8e5c378420eb678420eb678420eb678420eb678420eb678420eb678420eb678420eb678420eb678420eb678420eb678420eb678420eb678420eb678420eb678420eb678420eb678420eb678420eb678420eb609f3fce45c92d3bc84a79af31c517444e9afe66fd82a37a583207c66c7e4b0e60fe216ca0374c84642a2cca142b51ea3d5a2f7ab09dbf59c342a066a1290c2850000021c000000b0031263b90b8ee356fe35b0ffa789c480352176c5ba4cf8d316814ce9e2992c3e7c420eb67c420eb67c420eb67c420eb67c420eb67c420eb67c420eb67c420eb67c420eb67c420eb67c420eb67c420eb67c420eb67c420eb67c420eb67c420eb67c420eb67c420eb67c420eb67c420eb621ac647af81aa5e37c9461abb5e01dc0997c2b5c9ef12f804746a473f294f762279a7e609efc9a6d3a8f9359dc43c81f856f3c97d0a2ed76f8502e773d410901000000b01acacb4fa716b57df62277b841186dfbe4edbbb28113f0addaa774f70d4972ba80420eb680420eb680420eb680420eb680420eb680420eb680420eb680420eb680420eb680420eb680420eb680420eb680420eb680420eb680420eb680420eb680420eb680420eb680420eb680420eb609007d9eb270d7e0bc30e2adcded6edf21148800ebfeb6c9c78ad6ed2d453ddd0eee97845952cc6a7a2c145bf451193e0d07993c1db074c0789460f077f14f7c000000b0021ee473616ce77b35bef8ba5925bf1a6c861856ce2177f75aeba77047f9b93584420eb684420eb684420eb684420eb684420eb684420eb684420eb684420eb684420eb684420eb684420eb684420eb684420eb684420eb684420eb684420eb684420eb684420eb684420eb684420eb620b8e5354df8aa07b41da966677c185ad0e0ccedb2c5aea48bb0fefa57f5845926a6ff1af4da9e917218db148ddfc2b9bcd3de28e4776c9b3cba88fda2a195f80000021c000000b019d74c09fcf4b9a22dabbf72f2b468961c525d4394e86fd21f11cf7d72a9ffb188420eb688420eb688420eb688420eb688420eb688420eb688420eb688420eb688420eb688420eb688420eb688420eb688420eb688420eb688420eb688420eb688420eb688420eb688420eb688420eb6080cfe59084edc04f3ba2a687f89697958792991ffd335ee0bf5317392a5cad40dfb183eaf30d08eb1b55c16a5ed13d8446c3acd3184f3e4bcfebb76dd51dc73000000b0012b652db74aeb9f6d4840750ac1b9b4a3eab9e7e1f5f71b9f5601f6ad5a462c8c420eb68c420eb68c420eb68c420eb68c420eb68c420eb68c420eb68c420eb68c420eb68c420eb68c420eb68c420eb68c420eb68c420eb68c420eb68c420eb68c420eb68c420eb68c420eb68c420eb61fc565efa3d6ae2beba6f121191812f508456e7ec69a2dc8d01b5980bd56115025b37fd54ab8a2b5a9a222cf3f7bbd53f4387fb9f84bebbf8124e384080222ef000000b018e3ccc452d2bdc66535072da450633053b6fed4a8bceef6637c2a03d80a8ca890420eb690420eb690420eb690420eb690420eb690420eb690420eb690420eb690420eb690420eb690420eb690420eb690420eb690420eb690420eb690420eb690420eb690420eb690420eb690420eb607197f135e2ce0292b437223312564138fddcb2313a7b512505f8bf9f80657cb0d0798f9050ed4b2e93ea3d157890e727bd0dc5e45597309016915fd42b2696a0000021c000000b00037e5e80d28efc3a4d1882fbc5db44edb4f5b78f5ca763fe3c05c7d12bad32394420eb694420eb694420eb694420eb694420eb694420eb694420eb694420eb694420eb694420eb694420eb694420eb694420eb694420eb694420eb694420eb694420eb694420eb694420eb694420eb61ed1e6a9f9b4b250233038dbcab40d8f3faa100fda6eaced1485b40722b69e4724c0008fa096a6d9e12b6a89f117b7ee2b9d214b0c206ae3c58f3e0a6d62afe6000000b017f04d7ea8b0c1ea9cbe4ee855ec5dca8b1ba065bc916e1aa7e6848a3d6b199f98420eb698420eb698420eb698420eb698420eb698420eb698420eb698420eb698420eb698420eb698420eb698420eb698420eb698420eb698420eb698420eb698420eb698420eb698420eb698420eb60625ffcdb40ae44d62ccb9dde2c15eadc7426cb4277c343694c9e6805d66e4c20c1419b35aecd8d720c7eb8c0925090cb3357def592df22d45d37083a812f661000000b02fa8b5154438941194ab15a0ef7b07463ae7e552835865f56c0cac97681b601b9c420eb69c420eb69c420eb69c420eb69c420eb69c420eb69c420eb69c420eb69c420eb69c420eb69c420eb69c420eb69c420eb69c420eb69c420eb69c420eb69c420eb69c420eb69c420eb69c420eb61dde67644f92b6745ab980967c500829770eb1a0ee432c1158f00e8d88172b3e23cc8149f674aafe18b4b244a2b3b2886301c2dc1ff4ea0809f99890d2c33cdd00000fa400000168000000b016fcce38fe8ec60ed44796a307885864c28041f6d065ed3eec50df10a2cba696a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb6a0420eb60532808809e8e8719a560198945d5947fea70e453b50b35ad9344106c2c771b90b209a6db0cadcfb58513346bac103a6ea9a1f806d0271518a3dcb0a0d738358000000b02eb535cf9a169835cc345d5ba11701e0724c86e3972ce519b077071dcd7bed12a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb6a4420eb61ceae81ea570ba989242c8512dec02c3ae7353320217ab359d5a6913ed77b83522d902044c52af22503df9ff544fad229a66646d33c9692c4e63f3173823c9d400000168000000b016094ef3546cca330bd0de5db92452fef9e4e387e43a6c6330bb3997082c338da8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6a8420eb6043f01425fc6ec95d1df495345f953e2360bafd64f25327f1d9e9b8d2827feb00a2d1b2806a8e11f8fda7b016c5cfe4121fec11180d6f075cea8259072d4104f000000b02dc1b689eff49c5a03bda51652b2fc7aa9b12874ab01643df4e161a432dc7a09ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb6ac420eb61bf768d8fb4ebebcc9cc100bdf87fd5de5d7f4c315ec2a59e1c4c39a52d8452c21e582bea230b34687c741ba05eba7bcd1cb05fe479de85092ce4d9d9d8456cb00000168000000b01515cfadaa4ace57435a26186ac04d9931498518f80eeb877525941d6d8cc084b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6b0420eb6034b81fcb5a4f0ba0968910df7954e7c6d70516762f9b1a36208f6138d888ba709399be25c86e543c763c2bc1df8f8db596362a294ab6f9a13128016d8349d46000000b02cce374445d2a07e3b46ecd1044ef714e115ca05bed5e362394bbc2a983d0700b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb6b4420eb61b03e993512cc2e1015557c69123f7f81d3c965429c0a97e262f1e20b838d22320f20378f80eb76abf508974b787a257092fa78f5b726774d738a82402e4e3c200000168000000b0142250680028d27b7ae36dd31c5c483368ae26aa0be36aabb98feea3d2ed4d7bb8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6b8420eb6025802b70b82f4de40f1d8c8a9314916a4d4f2f876ce30c7a6735099f2e9189e08461c9cb264e967feed0a76cf94f37590c80433a87feebe577cda9d3d952a3d000000b02bdab7fe9bb0a4a272d0348bb5eaf1af187a6b96d2aa62867db616b0fd9d93f7bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb6bc420eb61a106a4da70ac70538de9f8142bff29254a137e53d9528a26a9978a71d995f1a1ffe84334decbb8ef6d9d12f69239cf1409449206f46e6991ba302aa684570b900000168000000b0132ed1225606d69fb26cb58dcdf842cda012c83b1fb7e9cffdfa492a384dda72c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6c0420eb6016483716160f902787b20835acd43b0dc3994898aa2afebeaddab205849a59507529d570842ed8c367652318130ee0fc82ca5c4bc546de29be73523a2f5b734000000b02ae738b8f18ea8c6aa597c466786ec494fdf0d27e67ee1aac220713762fe20eec4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6c4420eb6191ceb07fce8cb297067e73bf45bed2c8c05d9765169a7c6af03d32d82f9ec111f0b04eda3cabfb32e6318ea1abf978b77f8eab1831b65bd600d5d30cda5fdb000000168000000b0123b51dcabe4dac3e9f5fd487f943d67d77769cc338c68f44264a3b09dae6769c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb6c8420eb60071042bb73efd26b004683e0c693e4b139e361a9e772f102f4805a6bdaa328c065f1e115e20f1b06dff99ec32cce8a9ff914755d028ed06e0518faa0856442b000000b029f3b973476caceae1e2c4011922e6e38743aeb8fa5360cf068acbbdc85eade5cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb6cc420eb618296bc252c6cf4da7f12ef6a5f7e7c6c36a7b07653e26eaf36e2db3e85a79081e1785a7f9a8c3d765ec60a4cc5b9225af5d8c4296efe4e1a477b7b733068aa700000168000000b01147d29701c2dee8217f4503313038020edc0b5d4760e81886cefe37030ef460d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb6d0420eb62fe1d358ee4ea1749fddf5af3f8691427336bff42c051ec5b79455c1130abf84056b9ecbb3fef5d4a588e1a6e468e34436f5e8e6e3fd6c2b24bbea306db6d122000000b029003a2d9d4ab10f196c0bbbcabee17dbea8504a0e27dff34af526442dbf3adcd4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb6d4420eb61735ec7ca8a4d371df7a76b15793e260facf1c987912a60f37d8883a4dbb05ff1d2406624f86c7fb9d75a85f7df78cbfe6c22dd3aac46405e8e2123d9867179e00000168000000b01054535157a0e30c59088cbde2cc329c4640acee5b35673ccb3958bd686f8157d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb6d8420eb62eee5413442ca598d7673d69f1228bdcaa9b61853fd99de9fbfeb047786b4c7b04781f8609dcf9f8dd1229619604ddde6e5a8a77f7d1eb4f692644b6d3175e19000000b0280cbae7f328b53350f553767c5adc17f60cf1db21fc5f178f5f80ca931fc7d3dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb6dc420eb616426d36fe82d7961703be6c092fdcfb3233be298ce725337c42e2c0b31b92f61c30871ca564cc1fd4fef01a2f93875a1e26cf64be98e32a2d4c6cc3fdc7a49500000168000000b00f60d40bad7ee7309091d47894682d367da54e7f6f09e6610fa3b343cdd00e4ee0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb6e0420eb62dfad4cd9a0aa9bd0ef08524a2be8676e200031653ae1d0e40690acdddcbd9720384a0405fbafe1d149b711c47a0d878a5bf2c090ba66a73ad909f3d3877eb10000000b027193ba24906b957887e9b312df6d6b22d71936c35d0de3bd3c9db50f88054cae4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6e4420eb6154eedf15460dbba4e8d0626bacbd79569985fbaa0bba457c0ad3d47187c1fed1b3d07d6fb42d0440c8837d4e12f81f4558b70f5d26d624e71b6c74a6328318c00000168000000b00e6d54c6035ceb54c81b1c33460427d0b509f01082de6585540e0dca33309b45e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb6e8420eb62d075587efe8ade14679ccdf545a81111964a4a767829c3284d36554432c6669029120fab59902414c24b8d6f93cd312dd23cd9a1f7ae997f1faf9c39dd87807000000b02625bc5c9ee4bd7bc007e2ebdf92d14c64d634fd49a55d60183435d75de0e1c1ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6ec420eb6145b6eabaa3edfde86164de16c67d22fa0fd014bb490237c051797cd7ddcace41a4988915120d46844117f8f92cb7c8e8cf01286e641e172b62121d0c888be8300000168000000b00d79d580593aef78ffa463edf7a0226aec6e91a196b2e4a9987868509891283cf0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb6f0420eb62c13d64245c6b2057e03149a05f67bab50c946387b571b56c93dbfdaa88cf360019da1b50b77066583ae0091aad8cdad14886f2b334f68bc3665544a033904fe000000b025323d16f4c2c19ff7912aa6912ecbe69c3ad68e5d79dc845c9e905dc3416eb8f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb6f4420eb61367ef66001ce402bd9f959c1e03ccc9d861a2dcc864a2a04981f253e33d39db1956094ba6fed88c7b9ac74a44677728c454b417fa166096fa8b7c572de94b7a3800000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000002c100000000000000000000000000000000000000000000000000000000000002c200000000000000000000000000000000000000000000000000000000000002c300000000000000000000000000000000000000000000000000000000000002c400000000000000000000000000000000000000000000000000000000000002c500000000000000000000000000000000000000000000000000000000000002c600000000000000000000000000000000000000000000000000000000000002c700000000000000000000000000000000000000000000000000000000000002c800000000000000000000000000000000000000000000000000000000000002c900000000000000000000000000000000000000000000000000000000000002ca00000000000000000000000000000000000000000000000000000000000002cb00000000000000000000000000000000000000000000000000000000000002cc00000000000000000000000000000000000000000000000000000000000002cd00000000000000000000000000000000000000000000000000000000000002ce00000000000000000000000000000000000000000000000000000000000002cf00000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000002d100000000000000000000000000000000000000000000000000000000000002d200000000000000000000000000000000000000000000000000000000000002d300000000000000000000000000000000000000000000000000000000000002d400000000000000000000000000000000000000000000000000000000000002d500000000000000000000000000000000000000000000000000000000000002d600000000000000000000000000000000000000000000000000000000000002d700000000000000000000000000000000000000000000000000000000000002d800000000000000000000000000000000000000000000000000000000000002d900000000000000000000000000000000000000000000000000000000000002da00000000000000000000000000000000000000000000000000000000000002db00000000000000000000000000000000000000000000000000000000000002dc00000000000000000000000000000000000000000000000000000000000002dd00000000000000000000000000000000000000000000000000000000000002de00000000000000000000000000000000000000000000000000000000000002df00000000000000000000000000000000000000000000000000000000000002e000000000000000000000000000000000000000000000000000000000000002e100000000000000000000000000000000000000000000000000000000000002e200000000000000000000000000000000000000000000000000000000000002e300000000000000000000000000000000000000000000000000000000000002e400000000000000000000000000000000000000000000000000000000000002e500000000000000000000000000000000000000000000000000000000000002e600000000000000000000000000000000000000000000000000000000000002e700000000000000000000000000000000000000000000000000000000000002e800000000000000000000000000000000000000000000000000000000000002e900000000000000000000000000000000000000000000000000000000000002ea00000000000000000000000000000000000000000000000000000000000002eb00000000000000000000000000000000000000000000000000000000000002ec00000000000000000000000000000000000000000000000000000000000002ed00000000000000000000000000000000000000000000000000000000000002ee00000000000000000000000000000000000000000000000000000000000002ef00000000000000000000000000000000000000000000000000000000000002f000000000000000000000000000000000000000000000000000000000000002f100000000000000000000000000000000000000000000000000000000000002f200000000000000000000000000000000000000000000000000000000000002f300000000000000000000000000000000000000000000000000000000000002f400000000000000000000000000000000000000000000000000000000000002f500000000000000000000000000000000000000000000000000000000000002f600000000000000000000000000000000000000000000000000000000000002f73700000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000003c100000000000000000000000000000000000000000000000000000000000003c200000000000000000000000000000000000000000000000000000000000003c300000000000000000000000000000000000000000000000000000000000003c400000000000000000000000000000000000000000000000000000000000003c500000000000000000000000000000000000000000000000000000000000003c600000000000000000000000000000000000000000000000000000000000003c700000000000000000000000000000000000000000000000000000000000003c800000000000000000000000000000000000000000000000000000000000003c900000000000000000000000000000000000000000000000000000000000003ca00000000000000000000000000000000000000000000000000000000000003cb00000000000000000000000000000000000000000000000000000000000003cc00000000000000000000000000000000000000000000000000000000000003cd00000000000000000000000000000000000000000000000000000000000003ce00000000000000000000000000000000000000000000000000000000000003cf00000000000000000000000000000000000000000000000000000000000003d000000000000000000000000000000000000000000000000000000000000003d100000000000000000000000000000000000000000000000000000000000003d200000000000000000000000000000000000000000000000000000000000003d300000000000000000000000000000000000000000000000000000000000003d400000000000000000000000000000000000000000000000000000000000003d500000000000000000000000000000000000000000000000000000000000003d600000000000000000000000000000000000000000000000000000000000003d700000000000000000000000000000000000000000000000000000000000003d800000000000000000000000000000000000000000000000000000000000003d900000000000000000000000000000000000000000000000000000000000003da00000000000000000000000000000000000000000000000000000000000003db00000000000000000000000000000000000000000000000000000000000003dc00000000000000000000000000000000000000000000000000000000000003dd00000000000000000000000000000000000000000000000000000000000003de00000000000000000000000000000000000000000000000000000000000003df00000000000000000000000000000000000000000000000000000000000003e000000000000000000000000000000000000000000000000000000000000003e100000000000000000000000000000000000000000000000000000000000003e200000000000000000000000000000000000000000000000000000000000003e300000000000000000000000000000000000000000000000000000000000003e400000000000000000000000000000000000000000000000000000000000003e500000000000000000000000000000000000000000000000000000000000003e600000000000000000000000000000000000000000000000000000000000003e700000000000000000000000000000000000000000000000000000000000003e800000000000000000000000000000000000000000000000000000000000003e900000000000000000000000000000000000000000000000000000000000003ea00000000000000000000000000000000000000000000000000000000000003eb00000000000000000000000000000000000000000000000000000000000003ec00000000000000000000000000000000000000000000000000000000000003ed00000000000000000000000000000000000000000000000000000000000003ee00000000000000000000000000000000000000000000000000000000000003ef00000000000000000000000000000000000000000000000000000000000003f000000000000000000000000000000000000000000000000000000000000003f100000000000000000000000000000000000000000000000000000000000003f200000000000000000000000000000000000000000000000000000000000003f300000000000000000000000000000000000000000000000000000000000003f400000000000000000000000000000000000000000000000000000000000003f500000000000000000000000000000000000000000000000000000000000003f60200000000000000000000000000000000000000000000000000000000000004c000000000000000000000000000000000000000000000000000000000000004c11000000000000000000000000000000000000000000000000000000000000006c000000000000000000000000000000000000000000000000000000000000006ca00000000000000000000000000000000000000000000000000000000000006c100000000000000000000000000000000000000000000000000000000000006cb00000000000000000000000000000000000000000000000000000000000006c200000000000000000000000000000000000000000000000000000000000006cc00000000000000000000000000000000000000000000000000000000000006c300000000000000000000000000000000000000000000000000000000000006cd00000000000000000000000000000000000000000000000000000000000006c400000000000000000000000000000000000000000000000000000000000006ce00000000000000000000000000000000000000000000000000000000000006c500000000000000000000000000000000000000000000000000000000000006cf00000000000000000000000000000000000000000000000000000000000006c600000000000000000000000000000000000000000000000000000000000006d000000000000000000000000000000000000000000000000000000000000006c700000000000000000000000000000000000000000000000000000000000006d100000000000000000000000000000000000000000000000000000000000006c800000000000000000000000000000000000000000000000000000000000006d200000000000000000000000000000000000000000000000000000000000006c900000000000000000000000000000000000000000000000000000000000006d300000000000000000000000000000000000000000000000000000000000006ca00000000000000000000000000000000000000000000000000000000000006d400000000000000000000000000000000000000000000000000000000000006cb00000000000000000000000000000000000000000000000000000000000006d500000000000000000000000000000000000000000000000000000000000006cc00000000000000000000000000000000000000000000000000000000000006d600000000000000000000000000000000000000000000000000000000000006cd00000000000000000000000000000000000000000000000000000000000006d700000000000000000000000000000000000000000000000000000000000006ce00000000000000000000000000000000000000000000000000000000000006d800000000000000000000000000000000000000000000000000000000000006cf00000000000000000000000000000000000000000000000000000000000006d9000011000000021c000000b00c86563aaf18f39d372daba8a93c1d0523d33332aa8763cddce2c2d6fdf1b533f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb6f8420eb62b2056fc9ba4b629b58c5c54b7927645882de7c98f2b9a7b0da81a610ded805700aa226f61550a89bb37484c5c74c8474bed10bc4723e7e07acfaed0689991f5000000b0243ebdd14aa0c5c42f1a726142cac680d39f781f714e5ba8a108eae428a1fbaffc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb6fc420eb61274702055fae826f528dd56cf9fc7640fc6446ddc3921c48dec4cda489dc6d218628a05fcdcdcb0b3240f04f60371c2fbb955a90deadfbb3ef5d6dd9349d871000000b00bfa610ad4ff82b51dd21bf27b0fd220f197586d7b63833d51897e93d87b4f5b00430eb600430eb600430eb600430eb600430eb600430eb600430eb600430eb600430eb600430eb600430eb600430eb600430eb600430eb600430eb600430eb600430eb600430eb600430eb600430eb62a2cd7b6f182ba4ded15a40f692e70dfbf92895aa300199f521274e7734e0d4e301af19c9864aed7ab10d5bd8f921b3eab859a95d4b1d796031bfeeabdfa1eed0000021c000000b023b2c8a1708754dc15bee2ab149e7b9ca1639d5a422a7b1815afa6a1032b95d704430eb604430eb604430eb604430eb604430eb604430eb604430eb604430eb604430eb604430eb604430eb604430eb604430eb604430eb604430eb604430eb604430eb604430eb604430eb604430eb611e87af07be1773edbcd4da0a1737c7fdd8a69a8ad15413402930897232760fa17d694d622c36bc899c87f4ec7d726dec97d7ae3dec6ff2ab39c929a6dd37299000000b00b06e1c52add86d9555b63ad2cabccbb28fbf9fe8f38026195f3d91a3ddbdc5208430eb608430eb608430eb608430eb608430eb608430eb608430eb608430eb608430eb608430eb608430eb608430eb608430eb608430eb608430eb608430eb608430eb608430eb608430eb608430eb629a0e28717694965d3ba14593b0225fb8d56ae9573dc390ec6b930a44dd7a7762f8efc6cbe4b3def91b546076165d05a7949bfd0a58df70577c2baa79883b915000000b022bf495bc66559004d482a65c63a7636d8c83eeb55fefa3c5a1a0127688c22ce0c430eb60c430eb60c430eb60c430eb60c430eb60c430eb60c430eb60c430eb60c430eb60c430eb60c430eb60c430eb60c430eb60c430eb60c430eb60c430eb60c430eb60c430eb60c430eb60c430eb610f4fbaad1bf7b631356955b530f771a14ef0b39c0e9c05846fd631d8887edf116e3159078a16fecd151c7097973217900e21c74f29b7e4ef806ed20d333ff900000021c000000b00a13627f80bb8afd8ce4ab67de47c75560609b8fa30c8185da5e33a0a33c694910430eb610430eb610430eb610430eb610430eb610430eb610430eb610430eb610430eb610430eb610430eb610430eb610430eb610430eb610430eb610430eb610430eb610430eb610430eb610430eb628ad63416d474d8a0b435c13ec9e2095c4bb502687b0b8330b238b2ab338346d2e9b7d2714294213c93e8dc21301caf4b0ae6161b9627629bc2d152dfde4460c000000b021cbca161c435d2484d1722077d670d1102ce07c69d379609e845badcdecafc514430eb614430eb614430eb614430eb614430eb614430eb614430eb614430eb614430eb614430eb614430eb614430eb614430eb614430eb614430eb614430eb614430eb614430eb614430eb614430eb610017c65279d7f874adfdd1604ab71b44c53accad4be3f7c8b67bda3ede87ae815ef964ace7f741108db0ec42b0f1c133846be06066ffd733c7147a738948c87000000b0091fe339d6998f21c46df3228fe3c1ef97c53d20b6e100aa1ec88e27089cf64018430eb618430eb618430eb618430eb618430eb618430eb618430eb618430eb618430eb618430eb618430eb618430eb618430eb618430eb618430eb618430eb618430eb618430eb618430eb618430eb627b9e3fbc32551ae42cca3ce9e3a1b2ffc1ff1b79b8537574f8de5b11898c1642da7fde16a07463800c7d57cc49dc58ee81302f2cd36f54e00976fb46344d3030000021c000000b020d84ad072216148bc5ab9db29726b6b4791820d7da7f884e2eeb634334d3cbc1c430eb61c430eb61c430eb61c430eb61c430eb61c430eb61c430eb61c430eb61c430eb61c430eb61c430eb61c430eb61c430eb61c430eb61c430eb61c430eb61c430eb61c430eb61c430eb61c430eb60f0dfd1f7d7b83ab826924d0b6476c4e83b84e5be892bea0cfd2182a534907df14fc1705245d78354064567edcab16ad6fab5f971a447c9780dba22d9df5197e000000b0082c63f42c779345fbf73add417fbc89cf29deb1cab57fce6332e8ad6dfd833720430eb620430eb620430eb620430eb620430eb620430eb620430eb620430eb620430eb620430eb620430eb620430eb620430eb620430eb620430eb620430eb620430eb620430eb620430eb620430eb626c664b6190355d27a55eb894fd615ca33849348af59b67b93f840377df94e5b2cb47e9bbfe54a5c38511d377639c0291f77a483e10b74724501ca3ac8a55ffa000000b01fe4cb8ac7ff656cf3e40195db0e66057ef6239e917c77a9275910ba98adc9b324430eb624430eb624430eb624430eb624430eb624430eb624430eb624430eb624430eb624430eb624430eb624430eb624430eb624430eb624430eb624430eb624430eb624430eb624430eb624430eb60e1a7dd9d35987cfb9f26c8b67e366e8bb1cefecfc673dc5143c72b0b8a994d6140897bf7a3b7c5977ed9e398e471147a71001282e18fbbbc545fcb40355a6750000021c000000b00738e4ae8255976a33808297f31bb724068e8042de89fef2a79d4333d35e102e28430eb628430eb628430eb628430eb628430eb628430eb628430eb628430eb628430eb628430eb628430eb628430eb628430eb628430eb628430eb628430eb628430eb628430eb628430eb628430eb625d2e5706ee159f6b1df3344017210646ae934d9c32e359fd8629abde359db522bc0ff5615c34e806fda64f227d5bac356dc4614f4dff396896c24c12e05ecf1000000b01ef14c451ddd69912b6d49508caa609fb65ac52fa550f6cd6bc36b40fe0e56aa2c430eb62c430eb62c430eb62c430eb62c430eb62c430eb62c430eb62c430eb62c430eb62c430eb62c430eb62c430eb62c430eb62c430eb62c430eb62c430eb62c430eb62c430eb62c430eb62c430eb60d26fe9429378bf3f17bb446197f6182f281917e103bbce958a6cd371e0a21cd13151879d019807daf76e5f43fe30be1de74a2b941ed7ae009b0573a68b6336c000000b006456568d8339b8e6b09ca52a4b7b1be3df321d3f25e7e16ec079dba38be9d2530430eb630430eb630430eb630430eb630430eb630430eb630430eb630430eb630430eb630430eb630430eb630430eb630430eb630430eb630430eb630430eb630430eb630430eb630430eb630430eb624df662ac4bf5e1ae9687afeb30e0afea24dd66ad702b4c41cccf54448ba68492acd80106ba152a4a763acacd971b55d8e40e7a608b472bacdd67f47936679e80000021c000000b01dfdccff73bb6db562f6910b3e465b39edbf66c0b92575f1b02dc5c7636ee3a134430eb634430eb634430eb634430eb634430eb634430eb634430eb634430eb634430eb634430eb634430eb634430eb634430eb634430eb634430eb634430eb634430eb634430eb634430eb634430eb60c337f4e7f1590182904fc00cb1b5c1d29e6330f24103c0d9d1127bd836aaec41221993425f784a1e7002daef17f067c15d9444a55c1fa044e1ab1c0ce16c063000000b00551e6232e119fb2a293120d5653ac587557c3650632fd3b3071f8409e1f2a1c38430eb638430eb638430eb638430eb638430eb638430eb638430eb638430eb638430eb638430eb638430eb638430eb638430eb638430eb638430eb638430eb638430eb638430eb638430eb638430eb623ebe6e51a9d623f20f1c2b964aa0598d9b277fbead733e861374fcaae1af54029da00cac17f56c8deecf4678b0daff7c5a589371c88f1df1240d9cdf8c706df000000b01d0a4db9c99971d99a7fd8c5efe255d425240851ccf9f515f498204dc8cf70983c430eb63c430eb63c430eb63c430eb63c430eb63c430eb63c430eb63c430eb63c430eb63c430eb63c430eb63c430eb63c430eb63c430eb63c430eb63c430eb63c430eb63c430eb63c430eb63c430eb60b400008d4f3943c608e43bb7cb756b7614ad4a037e4bb31e17b8243e8cb3bbb112e19ee7bd588c61e897569a31b01164d3de5db6996792892850c4733774d5a0000021c000000b0045e66dd83efa3d6da1c59c807efa6f2acbc64f61a077c5f74dc52c7037fb71340430eb640430eb640430eb640430eb640430eb640430eb640430eb640430eb640430eb640430eb640430eb640430eb640430eb640430eb640430eb640430eb640430eb640430eb640430eb640430eb622f8679f707b6663587b0a74164600331117198cfeabb30ca5a1aa51137b823728e68185175d5aed16763c223ca9aa91fd0a2ac8305d710356ab34545e2793d6000000b01c16ce741f7775fdd2092080a17e506e5c88a9e2e0ce743a39027ad42e2ffd8f44430eb644430eb644430eb644430eb644430eb644430eb644430eb644430eb644430eb644430eb644430eb644430eb644430eb644430eb644430eb644430eb644430eb644430eb644430eb644430eb60a4c80c32ad1986098178b762e53515198af76314bb93a5625e5dcca4e2bc8b2103a9aa8d1b38cea5612bd2454b6fbb084a2876c7d6af84cd6ef66cd98d7da51000000b0036ae797d9cda7fb11a5a182b98ba18ce42106872ddbfb83b946ad4d68e0440a48430eb648430eb648430eb648430eb648430eb648430eb648430eb648430eb648430eb648430eb648430eb648430eb648430eb648430eb648430eb648430eb648430eb648430eb648430eb648430eb62204e859c6596a879004522ec7e1facd487bbb1e12803230ea0c04d778dc0f2e27f3023f6d3b5f114dff83dcee45a52c346ecc594431f0279b158edac38820cd0000021c000000b01b234f2e75557a220992683b531a4b0893ed4b73f4a2f35e7d6cd55a93908a864c430eb64c430eb64c430eb64c430eb64c430eb64c430eb64c430eb64c430eb64c430eb64c430eb64c430eb64c430eb64c430eb64c430eb64c430eb64c430eb64c430eb64c430eb64c430eb64c430eb60959017d80af9c84cfa0d330dfef4bebd01417c25f8db97a6a503750b38c55a90f471b632791910e8d9c04df0652f64abc0728fd913f77711b59c153fe386748000000b0027768522fabac1f492ee93d6b279c271b85a81841b07aa7fdb107d3ce40d10150430eb650430eb650430eb650430eb650430eb650430eb650430eb650430eb650430eb650430eb650430eb650430eb650430eb650430eb650430eb650430eb650430eb650430eb650430eb650430eb6211169141c376eabc78d99e9797df5677fe05caf2654b1552e765f5dde3c9c2526ff82f9c31963358588cb979fe19fc66bd36dea58066f4bdf7fe96128e8adc4000000b01a2fcfe8cb337e46411baff604b645a2cb51ed0508777282c1d72fe0f8f1177d54430eb654430eb654430eb654430eb654430eb654430eb654430eb654430eb654430eb654430eb654430eb654430eb654430eb654430eb654430eb654430eb654430eb654430eb654430eb654430eb608658237d68da0a9072a1aeb918b46860778b9537362389eaeba91d718ece2a00e539c1d7d6f9532c5254c99b7eef0e4f36bca8ea513f6955fc41bda6398f43f00000fa400000168000000b00183e90c8589b04380b830f81cc396c152ea49a95584f9cc421b625a33a15df858430eb658430eb658430eb658430eb658430eb658430eb658430eb658430eb658430eb658430eb658430eb658430eb658430eb658430eb658430eb658430eb658430eb658430eb658430eb658430eb6201de9ce721572cfff16e1a42b19f001b744fe403a29307972e0b9e4439d291c260c03b418f76759bd121352517d9a60a3380f7b6bdaee7023ea43e78e493abb000000b0193c50a32111826a78a4f7b0b652403d02b68e961c4bf1a706418a675e51a4745c430eb65c430eb65c430eb65c430eb65c430eb65c430eb65c430eb65c430eb65c430eb65c430eb65c430eb65c430eb65c430eb65c430eb65c430eb65c430eb65c430eb65c430eb65c430eb65c430eb6077202f22c6ba4cd3eb362a6432741203edd5ae48736b7c2f324ec5d7e4d6f970d601cd7d34d9956fcae9454698aeb7f2ad06c1fb8e875b9a42e7660c8f9813600000168000000b0009069c6db67b467b84178b2ce5f915b8a4eeb3a695978f08685bce09901eaef60430eb660430eb660430eb660430eb660430eb660430eb660430eb660430eb660430eb660430eb660430eb660430eb660430eb660430eb660430eb660430eb660430eb660430eb660430eb660430eb61f2a6a88c7f376f436a0295edcb5ea9beea99fd14dfdaf9db74b146aa8fdb6132518846e6ed56b7df49b5b0d031994fada9cb10c7faf6d9468549e6df3a9c7b2000000b01848d15d76ef868eb02e3f6b67ee3ad73a1b3027302070cb4aabe4edc3b2316b64430eb664430eb664430eb664430eb664430eb664430eb664430eb664430eb664430eb664430eb664430eb664430eb664430eb664430eb664430eb664430eb664430eb664430eb664430eb664430eb6067e83ac8249a8f1763caa60f4c33bba7641fc759b0b36e7378f46e3e3adfc8e0c6c9d92292b9d7b3437dc0f1b26e61962350db0ccbcf4dde898d0e72e5a0e2d00000168000000b0300138f4127758b5a81b0624017ce452e9e77513f6e768a60ed20cfaee6277e768430eb668430eb668430eb668430eb668430eb668430eb668430eb668430eb668430eb668430eb668430eb668430eb668430eb668430eb668430eb668430eb668430eb668430eb668430eb668430eb61e36eb431dd17b186e2971198e51e536260e416261d22ec1fbb56ef10e5e430a24250528c4b36fa22c24a2c7b4b58f951201529d9383ecb8acbef8f4590a54a9000000b017555217cccd8ab2e7b78726198a3571717fd1b843f4efef8f163f742912be626c430eb66c430eb66c430eb66c430eb66c430eb66c430eb66c430eb66c430eb66c430eb66c430eb66c430eb66c430eb66c430eb66c430eb66c430eb66c430eb66c430eb66c430eb66c430eb66c430eb6058b0466d827ad15adc5f21ba65f3654ada69e06aedfb60b7bf9a16a490e89850b791e4c7f09a19f6bc123c9ccc2e0b39999af41e09174022d032b6d93ba9b2400000168000000b02f0db9ae68555cd9dfa44ddeb318deed214c16a50abbe7ca533c678153c304de70430eb670430eb670430eb670430eb670430eb670430eb670430eb670430eb670430eb670430eb670430eb670430eb670430eb670430eb670430eb670430eb670430eb670430eb670430eb670430eb61d436bfd73af7f3ca5b2b8d43feddfd05d72e2f375a6ade6401fc97773bed001233185e31a9173c663adea8266518a2f4965f42ea7586bdcf129537abe6ae1a0000000b01661d2d222ab8ed71f40cee0cb26300ba8e4734957c96f13d38099fa8e734b5974430eb674430eb674430eb674430eb674430eb674430eb674430eb674430eb674430eb674430eb674430eb674430eb674430eb674430eb674430eb674430eb674430eb674430eb674430eb674430eb6049785212e05b139e54f39d657fb30eee50b3f97c2b4352fc063fbf0ae6f167c0a859f06d4e7a5c3a34a6b847e5edb4dd0fe50d2f465f326716d85f3f91b281b00000168000000b02e1a3a68be3360fe172d959964b4d98758b0b8361e9066ee97a6c207b92391d578430eb678430eb678430eb678430eb678430eb678430eb678430eb678430eb678430eb678430eb678430eb678430eb678430eb678430eb678430eb678430eb678430eb678430eb678430eb678430eb61c4fecb7c98d8360dd3c008ef189da6a94d78484897b2d0a848a23fdd91f5cf8223e069d706f77ea9b37323d17ed84c980ca95bfbb2ceb013593ae0123cb6e97000000b0156e538c788992fb56ca169b7cc22aa5e04914da6b9dee3817eaf480f3d3d8507c430eb67c430eb67c430eb67c430eb67c430eb67c430eb67c430eb67c430eb67c430eb67c430eb67c430eb67c430eb67c430eb67c430eb67c430eb67c430eb67c430eb67c430eb67c430eb67c430eb603a405db83e3b55e1cd8819109972b891c6fe128d688b45404ce567713cfa37309921fc12ac5a9e7dad3b33f2ffad5e80862f264083a724ab5d7e07a5e7bb51200000168000000b02d26bb23141165224eb6dd541650d421901559c73264e612dc111c8e1e841ecc80430eb680430eb680430eb680430eb680430eb680430eb680430eb680430eb680430eb680430eb680430eb680430eb680430eb680430eb680430eb680430eb680430eb680430eb680430eb680430eb61b5c6d721f6b878514c54849a325d504cc3c26159d4fac2ec8f47e843e7fe9ef214a8757c64d7c0ed2c079f7c9897f63b82f3750cf016a2579fe0887892bfb8e000000b0147ad446ce67971f8e535e562e5e254017adb66b7f726d5c5c554f075934654784430eb684430eb684430eb684430eb684430eb684430eb684430eb684430eb684430eb684430eb684430eb684430eb684430eb684430eb684430eb684430eb684430eb684430eb684430eb684430eb602b08695d9c1b9825461c94bbb33262353d482b9ea5d33784938b0fd7930306a089ea07b80a3ae0c125cfaf9e196d0823fc793f51c0ef16efa423b00c3dc420900000168000000b02c333bdd69ef69468640250ec7eccebbc779fb5846396537207b771483e4abc388430eb688430eb688430eb688430eb688430eb688430eb688430eb688430eb688430eb688430eb688430eb688430eb688430eb688430eb688430eb688430eb688430eb688430eb688430eb688430eb61a68ee2c75498ba94c4e900454c1cf9f03a0c7a6b1242b530d5ed90aa3e076e6205708121c2b80330a49c1b27b2579fdef93d8e1e2d5e949be68630dee8c8885000000b01387550124459b43c5dca610dffa1fda4f1257fc9346ec80a0bfa98dbe94f23e8c430eb68c430eb68c430eb68c430eb68c430eb68c430eb68c430eb68c430eb68c430eb68c430eb68c430eb68c430eb68c430eb68c430eb68c430eb68c430eb68c430eb68c430eb68c430eb68c430eb601bd07502f9fbda68beb11066ccf20bd8b39244afe31b29c8da30b83de90bd6107ab2135d681b23049e642b49332cb1c772c35862fe370933eac9587293ccf0000000168000000b02b3fbc97bfcd6d6abdc96cc97988c955fede9ce95a0de45b64e5d19ae94538ba90430eb690430eb690430eb690430eb690430eb690430eb690430eb690430eb690430eb690430eb690430eb690430eb690430eb690430eb690430eb690430eb690430eb690430eb690430eb690430eb619756ee6cb278fcd83d7d7bf065dca393b056937c4f8aa7751c93391094103dd1f6388cc7209845741d3096d2cc1749826f87a72f6aa686e02d2bd9453ed157c000000b01293d5bb7a239f67fd65edcb91961a748676f98da71b6ba4e52a041423f57f3594430eb694430eb694430eb694430eb694430eb694430eb694430eb694430eb694430eb694430eb694430eb694430eb694430eb694430eb694430eb694430eb694430eb694430eb694430eb694430eb600c9880a857dc1cac37458c11e6b1b57c29dc5dc120631c0d20d660a43f14a5806b7a1f02c5fb654816f8a6f44cec5b6ae90d71743b7efb78316f00d8e9d5bf700000168000000b02a4c3d5215ab718ef552b4842b24c3f036433e7a6de2637fa9502c214ea5c5b198430eb698430eb698430eb698430eb698430eb698430eb698430eb698430eb698430eb698430eb698430eb698430eb698430eb698430eb698430eb698430eb698430eb698430eb698430eb698430eb61881efa1210593f1bb611f79b7f9c4d3726a0ac8d8cd299b96338e176ea190d41e700986c7e7887b795c5127de5d6f325e5d1c040a7ee792473d181ab94da273000000b011a05675d001a38c34ef35864332150ebddb9b1ebaefeac929945e9a89560c2c9c430eb69c430eb69c430eb69c430eb69c430eb69c430eb69c430eb69c430eb69c430eb69c430eb69c430eb69c430eb69c430eb69c430eb69c430eb69c430eb69c430eb69c430eb69c430eb69c430eb6303a5737bc8d6618b34de63251886e4f22364fb59f9421765a59b6249951d75005c422aa823dba78b8f8d229f66ac050e5f578a8578c6edbc7814a93f3fde8ee00000168000000b02958be0c6b8975b32cdbfc3edcc0be8a6da7e00b81b6e2a3edba86a7b40652a8a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6a0430eb6178e705b76e39815f2ea67346995bf6da9ceac59eca1a8bfda9de89dd4021dcb1d7c8a411dc58c9fb0e598e28ff969cc95c1bd951e5366b68ba772a11eae2f6a000000b010acd73025dfa7b06c787d40f4ce0fa8f5403cafcec469ed6dfeb920eeb69923a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb6a4430eb62f46d7f2126b6a3cead72ded032468e9599af146b368a09a9ec410aafeb2644704d0a364d81bbe9cf08219e4a806baeb1d5a1a396b60ee000beba51a595e75e500000168000000b028653ec6c16779d7646543f98e5cb924a50c819c958b61c83224e12e1966df9fa8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6a8430eb6169af115ccc19c3a2a73aeef1b31ba07e1334deb007627e41f0843243962aac21c890afb73a390c3e86ee09d41956466cd265f263227e5dad011cd27840ebc61000000b00fb957ea7bbdabd4a401c4fba66a0a432ca4de40e298e911b26913a75417261aac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb6ac430eb62e5358ac68496e61226075a7b4c0638390ff92d7c73d1fbee32e6b316412f13e03dd241f2df9c2c1280b619f59a2b58554bebbca7f356d245055ffa0bebf02dc380000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000030100000000000000000000000000000000000000000000000000000000000003020000000000000000000000000000000000000000000000000000000000000303000000000000000000000000000000000000000000000000000000000000030400000000000000000000000000000000000000000000000000000000000003050000000000000000000000000000000000000000000000000000000000000306000000000000000000000000000000000000000000000000000000000000030700000000000000000000000000000000000000000000000000000000000003080000000000000000000000000000000000000000000000000000000000000309000000000000000000000000000000000000000000000000000000000000030a000000000000000000000000000000000000000000000000000000000000030b000000000000000000000000000000000000000000000000000000000000030c000000000000000000000000000000000000000000000000000000000000030d000000000000000000000000000000000000000000000000000000000000030e000000000000000000000000000000000000000000000000000000000000030f0000000000000000000000000000000000000000000000000000000000000310000000000000000000000000000000000000000000000000000000000000031100000000000000000000000000000000000000000000000000000000000003120000000000000000000000000000000000000000000000000000000000000313000000000000000000000000000000000000000000000000000000000000031400000000000000000000000000000000000000000000000000000000000003150000000000000000000000000000000000000000000000000000000000000316000000000000000000000000000000000000000000000000000000000000031700000000000000000000000000000000000000000000000000000000000003180000000000000000000000000000000000000000000000000000000000000319000000000000000000000000000000000000000000000000000000000000031a000000000000000000000000000000000000000000000000000000000000031b000000000000000000000000000000000000000000000000000000000000031c000000000000000000000000000000000000000000000000000000000000031d000000000000000000000000000000000000000000000000000000000000031e000000000000000000000000000000000000000000000000000000000000031f0000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000032100000000000000000000000000000000000000000000000000000000000003220000000000000000000000000000000000000000000000000000000000000323000000000000000000000000000000000000000000000000000000000000032400000000000000000000000000000000000000000000000000000000000003250000000000000000000000000000000000000000000000000000000000000326000000000000000000000000000000000000000000000000000000000000032700000000000000000000000000000000000000000000000000000000000003280000000000000000000000000000000000000000000000000000000000000329000000000000000000000000000000000000000000000000000000000000032a000000000000000000000000000000000000000000000000000000000000032b000000000000000000000000000000000000000000000000000000000000032c000000000000000000000000000000000000000000000000000000000000032d000000000000000000000000000000000000000000000000000000000000032e000000000000000000000000000000000000000000000000000000000000032f00000000000000000000000000000000000000000000000000000000000003300000000000000000000000000000000000000000000000000000000000000331000000000000000000000000000000000000000000000000000000000000033200000000000000000000000000000000000000000000000000000000000003330000000000000000000000000000000000000000000000000000000000000334000000000000000000000000000000000000000000000000000000000000033500000000000000000000000000000000000000000000000000000000000003360000000000000000000000000000000000000000000000000000000000000337370000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040100000000000000000000000000000000000000000000000000000000000004020000000000000000000000000000000000000000000000000000000000000403000000000000000000000000000000000000000000000000000000000000040400000000000000000000000000000000000000000000000000000000000004050000000000000000000000000000000000000000000000000000000000000406000000000000000000000000000000000000000000000000000000000000040700000000000000000000000000000000000000000000000000000000000004080000000000000000000000000000000000000000000000000000000000000409000000000000000000000000000000000000000000000000000000000000040a000000000000000000000000000000000000000000000000000000000000040b000000000000000000000000000000000000000000000000000000000000040c000000000000000000000000000000000000000000000000000000000000040d000000000000000000000000000000000000000000000000000000000000040e000000000000000000000000000000000000000000000000000000000000040f0000000000000000000000000000000000000000000000000000000000000410000000000000000000000000000000000000000000000000000000000000041100000000000000000000000000000000000000000000000000000000000004120000000000000000000000000000000000000000000000000000000000000413000000000000000000000000000000000000000000000000000000000000041400000000000000000000000000000000000000000000000000000000000004150000000000000000000000000000000000000000000000000000000000000416000000000000000000000000000000000000000000000000000000000000041700000000000000000000000000000000000000000000000000000000000004180000000000000000000000000000000000000000000000000000000000000419000000000000000000000000000000000000000000000000000000000000041a000000000000000000000000000000000000000000000000000000000000041b000000000000000000000000000000000000000000000000000000000000041c000000000000000000000000000000000000000000000000000000000000041d000000000000000000000000000000000000000000000000000000000000041e000000000000000000000000000000000000000000000000000000000000041f0000000000000000000000000000000000000000000000000000000000000420000000000000000000000000000000000000000000000000000000000000042100000000000000000000000000000000000000000000000000000000000004220000000000000000000000000000000000000000000000000000000000000423000000000000000000000000000000000000000000000000000000000000042400000000000000000000000000000000000000000000000000000000000004250000000000000000000000000000000000000000000000000000000000000426000000000000000000000000000000000000000000000000000000000000042700000000000000000000000000000000000000000000000000000000000004280000000000000000000000000000000000000000000000000000000000000429000000000000000000000000000000000000000000000000000000000000042a000000000000000000000000000000000000000000000000000000000000042b000000000000000000000000000000000000000000000000000000000000042c000000000000000000000000000000000000000000000000000000000000042d000000000000000000000000000000000000000000000000000000000000042e000000000000000000000000000000000000000000000000000000000000042f00000000000000000000000000000000000000000000000000000000000004300000000000000000000000000000000000000000000000000000000000000431000000000000000000000000000000000000000000000000000000000000043200000000000000000000000000000000000000000000000000000000000004330000000000000000000000000000000000000000000000000000000000000434000000000000000000000000000000000000000000000000000000000000043500000000000000000000000000000000000000000000000000000000000004360200000000000000000000000000000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000501100000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000070a0000000000000000000000000000000000000000000000000000000000000701000000000000000000000000000000000000000000000000000000000000070b0000000000000000000000000000000000000000000000000000000000000702000000000000000000000000000000000000000000000000000000000000070c0000000000000000000000000000000000000000000000000000000000000703000000000000000000000000000000000000000000000000000000000000070d0000000000000000000000000000000000000000000000000000000000000704000000000000000000000000000000000000000000000000000000000000070e0000000000000000000000000000000000000000000000000000000000000705000000000000000000000000000000000000000000000000000000000000070f00000000000000000000000000000000000000000000000000000000000007060000000000000000000000000000000000000000000000000000000000000710000000000000000000000000000000000000000000000000000000000000070700000000000000000000000000000000000000000000000000000000000007110000000000000000000000000000000000000000000000000000000000000708000000000000000000000000000000000000000000000000000000000000071200000000000000000000000000000000000000000000000000000000000007090000000000000000000000000000000000000000000000000000000000000713000000000000000000000000000000000000000000000000000000000000070a0000000000000000000000000000000000000000000000000000000000000714000000000000000000000000000000000000000000000000000000000000070b0000000000000000000000000000000000000000000000000000000000000715000000000000000000000000000000000000000000000000000000000000070c0000000000000000000000000000000000000000000000000000000000000716000000000000000000000000000000000000000000000000000000000000070d0000000000000000000000000000000000000000000000000000000000000717000000000000000000000000000000000000000000000000000000000000070e0000000000000000000000000000000000000000000000000000000000000718000000000000000000000000000000000000000000000000000000000000070f0000000000000000000000000000000000000000000000000000000000000719000011000000021c000000b02771bf8117457dfb9bee8bb43ff8b3bedc71232da95fe0ec768f3bb47ec76c96b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb6b0430eb615a771d0229fa05e61fcf6a9cccdb4a21897ef7c144aa70863729daa9ec337b91b958bb5c98194e81ff82857f3315f01048b00b745fc64ff147c27ade96f4958000000b00ec5d8a4d19baff8db8b0cb6580604dd64097fd1f66d6835f6d36e2db977b311b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb6b4430eb62d5fd966be27728559e9bd62665c5e1dc8643468db119ee32798c5b7c9737e3502e9a4d983d7c6e55f94a95a0b3eb01f8c235d5b9309ec4894c05a27241f8fd3000000b0267e403b6d23821fd377d36ef194ae5913d5c4bebd346010baf9963ae427f98db8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb6b8430eb614b3f28a787da48299863e647e69af3c4ffc910d281f262ca7dcf8310423c4b01aa20c701f5f990c57817012a4cd599b3befa24859d0e42358e682344ecfd64f0000021c000000b00dd2595f2779b41d1314547109a1ff779b6e21630a41e75a3b3dc8b41ed84008bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb6bc430eb62c6c5a21140576a99173051d17f858b7ffc8d5f9eee61e076c03203e2ed40b2c01f62593d9b5cb09971df114bcdaaab9c387feeca6de6b6cd92ab4ad89801cca000000b0258ac0f5c30186440b011b29a330a8f34b3a664fd108df34ff63f0c149888684c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb6c0430eb613c07344ce5ba8a6d10f861f3005a9d68761329e3bf3a550ec4752b7698451a719ae8d2a753d9d308f0ab7cd56695435735443d96da563479d50dcbab4306346000000b00cdeda197d57b8414a9d9c2bbb3dfa11d2d2c2f41e16667e7fa8233a8438ccffc4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb6c4430eb62b78dadb69e37acdc8fc4cd7c9945352372d778b02ba9d2bb06d7ac4943498230102a64e2f93cf2dcea738cf6e76a553faeca07dbab2ea911d950f33eee0a9c10000021c000000b0249741b018df8a68428a62e454cca38d829f07e0e4dd5e5943ce4b47aee9137bc8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb6c8430eb612ccf3ff2439accb0898cdd9e1a1a470bec5d42f4fc8247530b1ad3dcee4de9e18bb0de4cb1ba154c693ff8808054ecfaab8e56a8179e26be1bb37411990f03d000000b00beb5ad3d335bc658226e3e66cd9f4ac0a37648531eae5a2c4127dc0e99959f6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb6cc430eb62a855b95bfc17ef2008594927b304dec6e92191c168f1c4ff4d7d54af995251a000f27088571d3520630808a20129fee3251420ece8769b561ff69ba544136b8000000b023a3c26a6ebd8e8c7a13aa9f06689e27ba03a971f8b1dd7d8838a5ce1449a072d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb6d0430eb611d974b97a17b0ef40221594933d9f0af62a75c0639ca399751c07c434456b9517c78e9f20f9a578fe1d4742b9a14969e21d86fb954e6190262591c77ef17d340000021c000000b00af7db8e2913c089b9b02ba11e75ef46419c061645bf64c7087cd8474ef9e6edd4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb6d4430eb62991dc50159f8316380edc4d2ccc4886a5f6baad2a639b7439422fd15ef5b2112f7ff635bc81779ff60a0dfb532ff2e591e9cbe85c15596aea4bb9d4a9a1c3b0000000b022b04324c49b92b0b19cf259b80498c1f1684b030c865ca1cca3005479aa2d69d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb6d8430eb610e5f573cff5b51377ab5d4f44d999a52d8f1751777122bdb986624a99a5f88c16d40f5976d7a99d35a68efd6b3d44041982288ca922e0b46a8fec4de4520a2b000000b00a045c487ef1c4adf139735bd011e9e07900a7a75993e3eb4ce732cdb45a73e4dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6dc430eb6289e5d0a6b7d873a6f982407de684320dd5b5c3e3e381a987dac8a57c4563f082e8c76f0125f7bc42d9355b604cbed7fc94e6d796fe9d88f2eb6145b0f0250a70000021c000000b021bcc3df1a7996d4e9263a1469a0935c28ccec94205adbc6110d5adadf0aba60e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb6e0430eb60ff2762e25d3b937af34a509f675943f64f3b8e28b45a1e1fdf0bcd0ff06858315e09013ccb5adc16d2fd6b81cd93e9e50e6ca1dbcf75fd8aefa46d449b29722000000b00910dd02d4cfc8d228c2bb1681ade47ab06549386d68630f91518d5419bb00dbe4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb6e4430eb627aaddc4c15b8b5ea7216bc290043dbb14bffdcf520c99bcc216e4de29b6cbff2d98f7aa683d7fe8651c9d70b667e81a00b30f0a83be57b373206ee17462dd9e000000b020c9449970579af920af81cf1b3c8df660318e25342f5aea5577b561446b4757e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb6e8430eb60efef6e87bb1bd5be6bdecc4a8118ed99c585a739f1a2106425b17576467127a14ed10ce2293b1e5a4b91e72ce753938884b6baed0cbdefcf364a15aaf1324190000021c000000b0081d5dbd2aadccf6604c02d13349df14e7c9eac9813ce233d5bbe7da7f1b8dd2ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb6ec430eb626b75e7f17398f82deaab37d41a038554c249f6065e118e106813f648f1758f62ca57864be1b840c9ca5e52b6803e2b43817b09b9792d6d7b78ac967d9c36a95000000b01fd5c553c6359f1d5838c989ccd8889097962fb64803da0e99e20fe7a9cbd44ef0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb6f0430eb60e0b77a2d18fc1801e47347f59ad8973d3bcfc04b2eea02a86c571ddc9c79f7113f991887871b609dc42662d801133d2bfb00d3fe4a05e2137cefbe11473b110000000b00729de77808bd11a97d54a8be4e5d9af1f2e8c5a951161581a264260e47c1ac9f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb6f4430eb625c3df396d1793a71633fb37f33c32ef838940f179b598054aeb99eaf477e5ed2bb1f91f13f98830d42f2ce6199fdd4e6f7c522cab6755fbfbf523ee3f23f78c0000021c000000b01ee2460e1c13a3418fc211447e74832acefad1475bd85932de4c6a6e0f2c6145f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb6f8430eb60d17f85d276dc5a455d07c3a0b49840e0b219d95c6c31f4ecb2fcc642f282c6813061242ce4fba2e13cbade831ad2e6cf714aed0f874dd457c39566779d43e07000000b006365f31d669d53ecf5e92469681d44956932deba8e5e07c5e909ce749dca7c0fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb6fc430eb624d05ff3c2f597cb4dbd42f2a4d82d89baede2828d8a17298f55f47159d872e42abe79d969d78c550bb874a0cb3bd7e8a6e0f3bdbf3bd520405f7e74a4848483000000b01e5650de41fa32597666818e504838469cbef6822cb478a252f3262ae9b5fb6d00440eb600440eb600440eb600440eb600440eb600440eb600440eb600440eb600440eb600440eb600440eb600440eb600440eb600440eb600440eb600440eb600440eb600440eb600440eb600440eb60c2479177d4bc9c88d59c3f4bce57ea842863f26da979e730f9a26ea9488b95f121292fd242dbe524b54f5a2e34929072e7950620c495c69c0a3b0eddf34cafe0000021c000000b005aa6a01fc506456b6030290685589652457532679c1ffebd33758a4246641e804440eb604440eb604440eb604440eb604440eb604440eb604440eb604440eb604440eb604440eb604440eb604440eb604440eb604440eb604440eb604440eb604440eb604440eb604440eb604440eb624446ac3e8dc26e33461b33c76abe2a588b207bd5e66369903fcb02e34620d0c2a3284a98fbe1b6cf25ce4ea9d0f8d0474a518f89017f48fb5063a317f0e1eab000000b01d62d19897d8367dadefc94901e432e0d42398134088f7c6975d80b14f16886408440eb608440eb608440eb608440eb608440eb608440eb608440eb608440eb608440eb608440eb608440eb608440eb608440eb608440eb608440eb608440eb608440eb608440eb608440eb608440eb60b9883e7a33258e073fe343e8eb933c4104a6461ab73bde28440e2a76f12538711869dcd4a144d6a31f965ecb51cde22fc3d759cdd257bd9354a6caab9be6526000000b004b6eabc522e687aed8c4a4b19f183ff5bbbf4b78d967f1017a1b32a89c6cedf0c440eb60c440eb60c440eb60c440eb60c440eb60c440eb60c440eb60c440eb60c440eb60c440eb60c440eb60c440eb60c440eb60c440eb60c440eb60c440eb60c440eb60c440eb60c440eb60c440eb62350eb7e3eba2b076beafaf72847dd3fc016a94e723ab5bd48670ab499c29a03293f0563e59c1f9129e62ca54eab879eac09ba89a3ec73b3f97094b7e46eaba200000fa400000168000000b01c6f5252edb63aa1e5791103b3802d7b0b8839a4545d76eadbc7db37b477155b10440eb610440eb610440eb610440eb610440eb610440eb610440eb610440eb610440eb610440eb610440eb610440eb610440eb610440eb610440eb610440eb610440eb610440eb610440eb610440eb60aa504a1f9105d04ab877bf940552e5e47af05f2bf483d06c8ab3d2dd472e07e10931e879ff2518e6982ada766b8d8bd33a2172df0f9fafd79b4c7311f1ef21d000000b003c36b76a80c6c9f25159205cb8d7e9993209648a16afe345c0c0db0ef275bd614440eb614440eb614440eb614440eb614440eb614440eb614440eb614440eb614440eb614440eb614440eb614440eb614440eb614440eb614440eb614440eb614440eb614440eb614440eb614440eb6225d6c3894982f2ba37442b1d9e3d7d9f77b4adf860f34e18cd1653aff2326fa284b861e3b7a23b5616f746000478238e36e5c1ab7c0f2d83ddaef3e49cf389900000168000000b01b7bd30d43943ec61d0258be651c281542ecdb356831f60f203235be19d7a25218440eb618440eb618440eb618440eb618440eb618440eb618440eb618440eb618440eb618440eb618440eb618440eb618440eb618440eb618440eb618440eb618440eb618440eb618440eb618440eb609b1855c4eee6128e310c3b3f1f128f87f13a783d31cbc2b0d1597b439d36d750f9f9f41f5d055b2a10bf5621854d3576b06b8bf04ce7a21be1f21b7847f7f14000000b002cfec30fdea70c35c9ed9c07d297933ca8537d9b53f7d58a07668375487e8cd1c440eb61c440eb61c440eb61c440eb61c440eb61c440eb61c440eb61c440eb61c440eb61c440eb61c440eb61c440eb61c440eb61c440eb61c440eb61c440eb61c440eb61c440eb61c440eb61c440eb62169ecf2ea76334fdafd8a6c8b7fd2742edfec7099e3b405d13bbfc16483b3f1275806d8915827d998f8bc1ab1e37cd31ad2fdabcb9571fc824549c4af2fc59000000168000000b01a8853c7997242ea548ba07916b822af7a517cc67c067533649c90447f382f4920440eb620440eb620440eb620440eb620440eb620440eb620440eb620440eb620440eb620440eb620440eb620440eb620440eb620440eb620440eb620440eb620440eb620440eb620440eb620440eb608be0616a4cc654d1a9a0b6ea38d2392b6784914e6f13b4f517ff23a9f33fa6c0eac1ffc4bae59d6d8953d1cc9f0cdf1a26b5a5018a2f94602897c3de9e00c0b000000b001dc6ceb53c874e79428217b2ec573ce01e9d96ac913fc7ce4e0c2bdb9e875c424440eb624440eb624440eb624440eb624440eb624440eb624440eb624440eb624440eb624440eb624440eb624440eb624440eb624440eb624440eb624440eb624440eb624440eb624440eb624440eb620766dad405437741286d2273d1bcd0e66448e01adb8332a15a61a47c9e440e826648792e7362bfdd08203d5637f776d52379f3cdf69f120c6afa44b1490528700000168000000b01994d481ef50470e8c14e833c8541d49b1b61e578fdaf457a906eacae498bc4028440eb628440eb628440eb628440eb628440eb628440eb628440eb628440eb628440eb628440eb628440eb628440eb628440eb628440eb628440eb628440eb628440eb628440eb628440eb628440eb607ca86d0faaa69715223532955291e2ceddceaa5fac5ba7395ea4cc1049487630db8a0b6a18c5dfb101e84d77b8cc88bd9cffbe12c77786a46f3d6c44f409902000000b000e8eda5a9a6790bcbb16935e0616e68394e7afbdce87ba1294b1d441f4902bb2c440eb62c440eb62c440eb62c440eb62c440eb62c440eb62c440eb62c440eb62c440eb62c440eb62c440eb62c440eb62c440eb62c440eb62c440eb62c440eb62c440eb62c440eb62c440eb62c440eb61f82ee6796323b984a1019e1eeb7c7a89da92f92c18cb24e5a1074ce2f44cddf2571084d3d143022080b4b90151b7207899c40cdf33e70450b19fed179f0df7e00000168000000b018a1553c452e4b32c39e2fee79f017e3e91abfe8a3af737bed71455149f9493730440eb630440eb630440eb630440eb630440eb630440eb630440eb630440eb630440eb630440eb630440eb630440eb630440eb630440eb630440eb630440eb630440eb630440eb630440eb630440eb606d7078b50886d9589ac9ae406c518c725418c370e9a3997da54a74769f5145a0cc52170f76a621f47a7cc922d28c32611349d72404bf78e8b5e314ab4a125f9000000b03059bcd2e0b61d59bb8af6a7137ec15f98e704d56a766b56b1976d5e74a98fb334440eb634440eb634440eb634440eb634440eb634440eb634440eb634440eb634440eb634440eb634440eb634440eb634440eb634440eb634440eb634440eb634440eb634440eb634440eb634440eb61e8f6f21ec103fbc8199619ca053c242d50dd123d56131729e7acf5494a55ad6247d890792f234463f94934ac6b76ca1c100e25f0712ef694f845957df516c7500000168000000b017add5f69b0c4f56fb2777a92b8c127e207f6179b783f2a031db9fd7af59d62e38440eb638440eb638440eb638440eb638440eb638440eb638440eb638440eb638440eb638440eb638440eb638440eb638440eb638440eb638440eb638440eb638440eb638440eb638440eb638440eb605e38845a66671b9c135e29eb86113615ca62dc8226eb8bc1ebf01cdcf55a1510bd1a22b4d4866437f31144cdec4bdc048993f03542076b2cfc88bd11a01b2f0000000b02f663d8d3694217df3143e61c51abbf9d04ba6667e4aea7af601c7e4da0a1caa3c440eb63c440eb63c440eb63c440eb63c440eb63c440eb63c440eb63c440eb63c440eb63c440eb63c440eb63c440eb63c440eb63c440eb63c440eb63c440eb63c440eb63c440eb63c440eb63c440eb61d9befdc41ee43e0b922a95751efbcdd0c7272b4e935b096e2e529dafa05e7cd238a09c1e8d0386a771ddb057853673bf86583f01ae76e8d93eeb3de44b1f96c00000168000000b016ba56b0f0ea537b32b0bf63dd280d1857e4030acb5871c47645fa5e14ba632540440eb640440eb640440eb640440eb640440eb640440eb640440eb640440eb640440eb640440eb640440eb640440eb640440eb640440eb640440eb640440eb640440eb640440eb640440eb640440eb604f008fffc4475ddf8bf2a5969fd0dfb940acf59364337e063295c5434b62e480ade22e5a3266a67b6ba5c079060b85a7ffde09467f4f5d71432e6577f623fe7000000b02e72be478c7225a22a9d861c76b6b69407b047f7921f699f3a6c226b3f6aa9a144440eb644440eb644440eb644440eb644440eb644440eb644440eb644440eb644440eb644440eb644440eb644440eb644440eb644440eb644440eb644440eb644440eb644440eb644440eb644440eb61ca8709697cc4804f0abf112038bb77743d71445fd0a2fbb274f84615f6674c422968a7c3eae3c8eaea722c029ef61d62fca25812ebbedb1d8590e64aa12866300000168000000b015c6d76b46c8579f6a3a071e8ec407b28f48a49bdf2cf0e8bab054e47a1af01c48440eb648440eb648440eb648440eb648440eb648440eb648440eb648440eb648440eb648440eb648440eb648440eb648440eb648440eb648440eb648440eb648440eb648440eb648440eb648440eb603fc89ba52227a02304872141b990895cb6f70ea4a17b704a793b6da9a16bb3f09eaa39ff9046e8bee43a3c241fcb2f4b76282257bc974fb589d40dde4c2ccde000000b02d7f3f01e25029c66226cdd72852b12e3f14e988a5f3e8c37ed67cf1a4cb36984c440eb64c440eb64c440eb64c440eb64c440eb64c440eb64c440eb64c440eb64c440eb64c440eb64c440eb64c440eb64c440eb64c440eb64c440eb64c440eb64c440eb64c440eb64c440eb64c440eb61bb4f150edaa4c29283538ccb527b2117b3bb5d710deaedf6bb9dee7c4c701bb21a30b36948c40b2e6306a7adb8b5c70672ec71242906cd61cc368eb0f73135a00000168000000b014d358259ca65bc3a1c34ed94060024cc6ad462cf301700cff1aaf6adf7b7d1350440eb650440eb650440eb650440eb650440eb650440eb650440eb650440eb650440eb650440eb650440eb650440eb650440eb650440eb650440eb650440eb650440eb650440eb650440eb650440eb603090a74a8007e2667d1b9cecd35033002d4127b5dec3628ebfe1160ff77483608f7245a4ee272b025cceb7cf398ad8eeec723b68f9df41f9d079b644a2359d5000000b02c8bbfbc382e2dea99b01591d9eeabc876798b19b9c867e7c340d7780a2bc38f54440eb654440eb654440eb654440eb654440eb654440eb654440eb654440eb654440eb654440eb654440eb654440eb654440eb654440eb654440eb654440eb654440eb654440eb654440eb654440eb61ac1720b4388504d5fbe808766c3acabb2a0576824b32e03b024396e2a278eb220af8bf0ea6a44d71db9b2358d27570a9e9368a35664ebfa612dc37174d3a05100000168000000b013dfd8dff2845fe7d94c9693f1fbfce6fe11e7be06d5ef31438509f144dc0a0a58440eb658440eb658440eb658440eb658440eb658440eb658440eb658440eb658440eb658440eb658440eb658440eb658440eb658440eb658440eb658440eb658440eb658440eb658440eb658440eb602158b2efdde824a9f5b01897ed0fdca3a38b40c71c0b54d30686be764d7d52d0803a514a4c076d45d563337a534a829262bc547a3727343e171f5eaaf83e6cc000000b02b9840768e0c320ed1395d4c8b8aa662adde2caacd9ce70c07ab31fe6f8c50865c440eb65c440eb65c440eb65c440eb65c440eb65c440eb65c440eb65c440eb65c440eb65c440eb65c440eb65c440eb65c440eb65c440eb65c440eb65c440eb65c440eb65c440eb65c440eb65c440eb619cdf2c5996654719747c842185fa745ea04f8f93887ad27f48e93f48f881ba91fbc0cab404848fb5542f9f03ec351a4d5f80a346a396b1ea5981df7da342d4800000168000000b012ec599a4862640c10d5de4ea397f7813576894f1aaa6e5587ef6477aa3c970160440eb660440eb660440eb660440eb660440eb660440eb660440eb660440eb660440eb660440eb660440eb660440eb660440eb660440eb660440eb660440eb660440eb660440eb660440eb660440eb601220be953bc866ed6e44944306cf864719d559d8595347174d2c66dca386224071025cefa9e7af894df7af256d0a2c35d9066d8b746f26825dc507114e473c3000000b02aa4c130e3ea363308c2a5073d26a0fce542ce3be17166304c158c84d4ecdd7d64440eb664440eb664440eb664440eb664440eb664440eb664440eb664440eb664440eb664440eb664440eb664440eb664440eb664440eb664440eb664440eb664440eb664440eb664440eb664440eb618da737fef445895ced10ffcc9fba1e021699a8a4c5c2c4c38f8ee7af4e8a8a01ec88d6596264d1f8ccc41aaf05f4c3f0d5cabc57e0dea42ea02787e3f94ba3f", + "txsEffectsHash": "0x80dc9d246537063813894f7edb41c694fbd803946807e6e3e875a6bbd91b531b", "decodedHeader": { "contentCommitment": { "inHash": "0x0000000000000000000000000000000000000000000000000000000000000000", "outHash": "0x3c00faec8dc481e71433eb21f1dd016134bf403950c146783ba1928cddcb315d", "txTreeHeight": 2, - "txsEffectsHash": "0x43b8bd02d2c6ca958303c71be5c272b917a436b3f9d779ffc3ffd66ba41de258" + "txsEffectsHash": "0x80dc9d246537063813894f7edb41c694fbd803946807e6e3e875a6bbd91b531b" }, "globalVariables": { "blockNumber": 2, "chainId": 31337, - "timestamp": 1709939074, + "timestamp": 1710254426, "version": 1, - "coinbase": "0x3763c27097c7679fde3c516b87d7a57fbff2b401", - "feeRecipient": "0x12f0936cd74975821fef2537b6501306af902a7084887216691bce9ac330b88c" + "coinbase": "0xa43e0eb6a43e0eb6a43e0eb6a43e0eb6a43e0eb6", + "feeRecipient": "0x15a9c4f4c75d79ce22330ca2cdb6c1a6ede1f6d94ba28016eeb25e5578913ccb" }, "lastArchive": { "nextAvailableLeafIndex": 2, - "root": "0x00f4e742fc0ed23e57b5bdbabad8806c1fc9f51695dadc9fe2dda7a6dd16e830" + "root": "0x1ba503ae8f13b59815a58d204ca967063570ef165cb4d87b7609bce726f51410" }, "stateReference": { "l1ToL2MessageTree": { @@ -95,8 +95,8 @@ } } }, - "header": "0x00f4e742fc0ed23e57b5bdbabad8806c1fc9f51695dadc9fe2dda7a6dd16e83000000002000000000000000000000000000000000000000000000000000000000000000243b8bd02d2c6ca958303c71be5c272b917a436b3f9d779ffc3ffd66ba41de25800000000000000000000000000000000000000000000000000000000000000003c00faec8dc481e71433eb21f1dd016134bf403950c146783ba1928cddcb315d06c76caee115a61eeb6788977c68a3bea359061b678a1a4f5ffde13e0451717b00000020023ef973dbaa366409f7a01a4ced696227685ce75e57b510d0e7015ebfa72c5000000200231b77b7e0311a71fae5cec0f0281816950f94a24bfc2e67c5ae8619c6ed4c88000002802ae3a1bf2752c8c8bd6741bb3fd0d9e3811dbf7681454436125ccb7afeca31c9000001400000000000000000000000000000000000000000000000000000000000007a69000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000065eb99823763c27097c7679fde3c516b87d7a57fbff2b40112f0936cd74975821fef2537b6501306af902a7084887216691bce9ac330b88c", + "header": "0x1ba503ae8f13b59815a58d204ca967063570ef165cb4d87b7609bce726f5141000000002000000000000000000000000000000000000000000000000000000000000000280dc9d246537063813894f7edb41c694fbd803946807e6e3e875a6bbd91b531b00000000000000000000000000000000000000000000000000000000000000003c00faec8dc481e71433eb21f1dd016134bf403950c146783ba1928cddcb315d06c76caee115a61eeb6788977c68a3bea359061b678a1a4f5ffde13e0451717b00000020023ef973dbaa366409f7a01a4ced696227685ce75e57b510d0e7015ebfa72c5000000200231b77b7e0311a71fae5cec0f0281816950f94a24bfc2e67c5ae8619c6ed4c88000002802ae3a1bf2752c8c8bd6741bb3fd0d9e3811dbf7681454436125ccb7afeca31c9000001400000000000000000000000000000000000000000000000000000000000007a69000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000065f0695aa43e0eb6a43e0eb6a43e0eb6a43e0eb6a43e0eb615a9c4f4c75d79ce22330ca2cdb6c1a6ede1f6d94ba28016eeb25e5578913ccb", "l1ToL2MessagesHash": "0xa10cc8559615be5a44cfb608374b1f84fd11cdb5844ebffafd92a77c068350f1", - "publicInputsHash": "0x2af486d91d741bafe33b4e5fad0cbde6b32bace6e82fff0677dd1c58cafdafad" + "publicInputsHash": "0x2fc68717ed22432d1f847c66d73d0bad1bff27fac3e2007a5848fecf97001c99" } } \ No newline at end of file diff --git a/yarn-project/archiver/src/archiver/archiver_store_test_suite.ts b/yarn-project/archiver/src/archiver/archiver_store_test_suite.ts index 52a94986982..94649a9009f 100644 --- a/yarn-project/archiver/src/archiver/archiver_store_test_suite.ts +++ b/yarn-project/archiver/src/archiver/archiver_store_test_suite.ts @@ -11,7 +11,7 @@ import { import '@aztec/circuit-types/jest'; import { AztecAddress, Fr, INITIAL_L2_BLOCK_NUM, L1_TO_L2_MSG_SUBTREE_HEIGHT } from '@aztec/circuits.js'; import { makeContractClassPublic } from '@aztec/circuits.js/testing'; -import { randomBytes } from '@aztec/foundation/crypto'; +import { randomBytes, randomInt } from '@aztec/foundation/crypto'; import { ContractClassPublic, ContractInstanceWithAddress, SerializableContractInstance } from '@aztec/types/contracts'; import { ArchiverDataStore } from './archiver_store.js'; @@ -232,7 +232,7 @@ export function describeArchiverDataStore(testName: string, getStore: () => Arch it('returns messages in correct order', async () => { const msgs = generateBlockMessages(l2BlockNumber, l1ToL2MessageSubtreeSize); - const shuffledMessages = msgs.slice().sort(() => Math.random() - 0.5); + const shuffledMessages = msgs.slice().sort(() => randomInt(1) - 0.5); await store.addNewL1ToL2Messages(shuffledMessages, 100n); const retrievedMessages = await store.getNewL1ToL2Messages(l2BlockNumber); @@ -440,8 +440,8 @@ export function describeArchiverDataStore(testName: string, getStore: () => Arch it('"txHash" filter param is respected', async () => { // get random tx - const targetBlockIndex = Math.floor(Math.random() * numBlocks); - const targetTxIndex = Math.floor(Math.random() * txsPerBlock); + const targetBlockIndex = randomInt(numBlocks); + const targetTxIndex = randomInt(txsPerBlock); const targetTxHash = new L2BlockContext(blocks[targetBlockIndex]).getTxHash(targetTxIndex); const response = await store.getUnencryptedLogs({ txHash: targetTxHash }); @@ -481,10 +481,10 @@ export function describeArchiverDataStore(testName: string, getStore: () => Arch it('"contractAddress" filter param is respected', async () => { // Get a random contract address from the logs - const targetBlockIndex = Math.floor(Math.random() * numBlocks); - const targetTxIndex = Math.floor(Math.random() * txsPerBlock); - const targetFunctionLogIndex = Math.floor(Math.random() * numPublicFunctionCalls); - const targetLogIndex = Math.floor(Math.random() * numUnencryptedLogs); + const targetBlockIndex = randomInt(numBlocks); + const targetTxIndex = randomInt(txsPerBlock); + const targetFunctionLogIndex = randomInt(numPublicFunctionCalls); + const targetLogIndex = randomInt(numUnencryptedLogs); const targetContractAddress = UnencryptedL2Log.fromBuffer( blocks[targetBlockIndex].body.txEffects[targetTxIndex].unencryptedLogs.functionLogs[targetFunctionLogIndex] .logs[targetLogIndex], @@ -501,10 +501,10 @@ export function describeArchiverDataStore(testName: string, getStore: () => Arch it('"selector" filter param is respected', async () => { // Get a random selector from the logs - const targetBlockIndex = Math.floor(Math.random() * numBlocks); - const targetTxIndex = Math.floor(Math.random() * txsPerBlock); - const targetFunctionLogIndex = Math.floor(Math.random() * numPublicFunctionCalls); - const targetLogIndex = Math.floor(Math.random() * numUnencryptedLogs); + const targetBlockIndex = randomInt(numBlocks); + const targetTxIndex = randomInt(txsPerBlock); + const targetFunctionLogIndex = randomInt(numPublicFunctionCalls); + const targetLogIndex = randomInt(numUnencryptedLogs); const targetSelector = UnencryptedL2Log.fromBuffer( blocks[targetBlockIndex].body.txEffects[targetTxIndex].unencryptedLogs.functionLogs[targetFunctionLogIndex] .logs[targetLogIndex], @@ -521,9 +521,9 @@ export function describeArchiverDataStore(testName: string, getStore: () => Arch it('"afterLog" filter param is respected', async () => { // Get a random log as reference - const targetBlockIndex = Math.floor(Math.random() * numBlocks); - const targetTxIndex = Math.floor(Math.random() * txsPerBlock); - const targetLogIndex = Math.floor(Math.random() * numUnencryptedLogs); + const targetBlockIndex = randomInt(numBlocks); + const targetTxIndex = randomInt(txsPerBlock); + const targetLogIndex = randomInt(numUnencryptedLogs); const afterLog = new LogId(targetBlockIndex + INITIAL_L2_BLOCK_NUM, targetTxIndex, targetLogIndex); @@ -588,9 +588,9 @@ export function describeArchiverDataStore(testName: string, getStore: () => Arch it('"txIndex" and "logIndex" are respected when "afterLog.blockNumber" is equal to "fromBlock"', async () => { // Get a random log as reference - const targetBlockIndex = Math.floor(Math.random() * numBlocks); - const targetTxIndex = Math.floor(Math.random() * txsPerBlock); - const targetLogIndex = Math.floor(Math.random() * numUnencryptedLogs); + const targetBlockIndex = randomInt(numBlocks); + const targetTxIndex = randomInt(txsPerBlock); + const targetLogIndex = randomInt(numUnencryptedLogs); const afterLog = new LogId(targetBlockIndex + INITIAL_L2_BLOCK_NUM, targetTxIndex, targetLogIndex); diff --git a/yarn-project/circuit-types/src/l1_to_l2_message.test.ts b/yarn-project/circuit-types/src/l1_to_l2_message.test.ts index 35dc7e83e05..1eb0f6f948a 100644 --- a/yarn-project/circuit-types/src/l1_to_l2_message.test.ts +++ b/yarn-project/circuit-types/src/l1_to_l2_message.test.ts @@ -1,3 +1,5 @@ +import { randomInt } from '@aztec/foundation/crypto'; + import { L1ToL2Message, L1ToL2MessageAndIndex } from './l1_to_l2_message.js'; describe('L1 to L2 message', () => { @@ -9,7 +11,7 @@ describe('L1 to L2 message', () => { }); it('can encode an L1ToL2MessageAndIndex to buffer and back', () => { - const index = BigInt(Math.floor(Math.random() * 1000)); // Generate a random BigInt + const index = BigInt(randomInt(1000)); // Generate a random BigInt const msg = L1ToL2Message.random(); const l1ToL2MsgAndIndex = new L1ToL2MessageAndIndex(index, msg); @@ -20,7 +22,7 @@ describe('L1 to L2 message', () => { }); it('can encode an L1ToL2MessageAndIndex to string and back', () => { - const index = BigInt(Math.floor(Math.random() * 1000)); // Generate a random BigInt + const index = BigInt(randomInt(1000)); // Generate a random BigInt const msg = L1ToL2Message.random(); const l1ToL2MsgAndIndex = new L1ToL2MessageAndIndex(index, msg); diff --git a/yarn-project/circuit-types/src/l1_to_l2_message.ts b/yarn-project/circuit-types/src/l1_to_l2_message.ts index 5830b23cb7c..035d1ed5808 100644 --- a/yarn-project/circuit-types/src/l1_to_l2_message.ts +++ b/yarn-project/circuit-types/src/l1_to_l2_message.ts @@ -1,6 +1,6 @@ import { AztecAddress } from '@aztec/foundation/aztec-address'; import { toBigIntBE, toBufferBE } from '@aztec/foundation/bigint-buffer'; -import { sha256 } from '@aztec/foundation/crypto'; +import { randomInt, sha256 } from '@aztec/foundation/crypto'; import { EthAddress } from '@aztec/foundation/eth-address'; import { Fr } from '@aztec/foundation/fields'; import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize'; @@ -180,8 +180,8 @@ export class L1ToL2Message { L2Actor.random(), Fr.random(), Fr.random(), - Math.floor(Math.random() * 1000), - Math.floor(Math.random() * 1000), + randomInt(1000), + randomInt(1000), entryKey, ); } @@ -223,7 +223,7 @@ export class L1Actor { } static random(): L1Actor { - return new L1Actor(EthAddress.random(), Math.floor(Math.random() * 1000)); + return new L1Actor(EthAddress.random(), randomInt(1000)); } } @@ -263,6 +263,6 @@ export class L2Actor { } static random(): L2Actor { - return new L2Actor(AztecAddress.random(), Math.floor(Math.random() * 1000)); + return new L2Actor(AztecAddress.random(), randomInt(1000)); } } diff --git a/yarn-project/circuit-types/src/logs/function_l2_logs.ts b/yarn-project/circuit-types/src/logs/function_l2_logs.ts index fd8f5399828..bb03a91d2dd 100644 --- a/yarn-project/circuit-types/src/logs/function_l2_logs.ts +++ b/yarn-project/circuit-types/src/logs/function_l2_logs.ts @@ -1,9 +1,7 @@ -import { sha256 } from '@aztec/foundation/crypto'; +import { randomBytes, sha256 } from '@aztec/foundation/crypto'; import { Fr, Point } from '@aztec/foundation/fields'; import { BufferReader, prefixBufferWithLength } from '@aztec/foundation/serialize'; -import { randomBytes } from 'crypto'; - import { LogType } from './log_type.js'; import { UnencryptedL2Log } from './unencrypted_l2_log.js'; diff --git a/yarn-project/circuit-types/src/logs/l1_note_payload/note.ts b/yarn-project/circuit-types/src/logs/l1_note_payload/note.ts index 6fdda129ec8..9a56b904778 100644 --- a/yarn-project/circuit-types/src/logs/l1_note_payload/note.ts +++ b/yarn-project/circuit-types/src/logs/l1_note_payload/note.ts @@ -1,4 +1,5 @@ import { Vector } from '@aztec/circuits.js'; +import { randomInt } from '@aztec/foundation/crypto'; import { Fr } from '@aztec/foundation/fields'; import { BufferReader } from '@aztec/foundation/serialize'; @@ -29,7 +30,7 @@ export class Note extends Vector { * @returns A randomly generated Note instance. */ static random() { - const numItems = Math.floor(Math.random() * 10) + 1; + const numItems = randomInt(10) + 1; const items = Array.from({ length: numItems }, () => Fr.random()); return new Note(items); } diff --git a/yarn-project/circuit-types/src/logs/log_id.test.ts b/yarn-project/circuit-types/src/logs/log_id.test.ts index dd01771262c..ffe6299e4f9 100644 --- a/yarn-project/circuit-types/src/logs/log_id.test.ts +++ b/yarn-project/circuit-types/src/logs/log_id.test.ts @@ -1,11 +1,13 @@ +import { randomInt } from '@aztec/foundation/crypto'; + import { LogId } from './log_id.js'; describe('LogId', () => { let logId: LogId; beforeEach(() => { - const blockNumber = Math.floor(Math.random() * 1000); - const txIndex = Math.floor(Math.random() * 1000); - const logIndex = Math.floor(Math.random() * 1000); + const blockNumber = randomInt(1000); + const txIndex = randomInt(1000); + const logIndex = randomInt(1000); logId = new LogId(blockNumber, txIndex, logIndex); }); diff --git a/yarn-project/circuit-types/src/logs/unencrypted_l2_log.ts b/yarn-project/circuit-types/src/logs/unencrypted_l2_log.ts index beac122c639..d63553a60c8 100644 --- a/yarn-project/circuit-types/src/logs/unencrypted_l2_log.ts +++ b/yarn-project/circuit-types/src/logs/unencrypted_l2_log.ts @@ -1,9 +1,8 @@ import { AztecAddress } from '@aztec/circuits.js'; import { EventSelector } from '@aztec/foundation/abi'; +import { randomBytes } from '@aztec/foundation/crypto'; import { BufferReader, prefixBufferWithLength } from '@aztec/foundation/serialize'; -import { randomBytes } from 'crypto'; - /** * Represents an individual unencrypted log entry. */ @@ -71,8 +70,8 @@ export class UnencryptedL2Log { */ public static random(): UnencryptedL2Log { const contractAddress = AztecAddress.random(); - const selector = new EventSelector(Math.floor(Math.random() * (2 ** (EventSelector.SIZE * 8) - 1))); - const dataLength = EventSelector.SIZE + Math.floor(Math.random() * 200); + const selector = EventSelector.random(); + const dataLength = EventSelector.SIZE + randomBytes(1)[0]; const data = randomBytes(dataLength); return new UnencryptedL2Log(contractAddress, selector, data); } diff --git a/yarn-project/circuits.js/src/barretenberg/crypto/ecdsa/signature.ts b/yarn-project/circuits.js/src/barretenberg/crypto/ecdsa/signature.ts index cea06e33b1e..255f2292acb 100644 --- a/yarn-project/circuits.js/src/barretenberg/crypto/ecdsa/signature.ts +++ b/yarn-project/circuits.js/src/barretenberg/crypto/ecdsa/signature.ts @@ -1,9 +1,8 @@ import { toBufferBE } from '@aztec/foundation/bigint-buffer'; +import { randomBytes } from '@aztec/foundation/crypto'; import { Fr } from '@aztec/foundation/fields'; import { mapTuple } from '@aztec/foundation/serialize'; -import { randomBytes } from 'crypto'; - import { Signature } from '../signature/index.js'; /** diff --git a/yarn-project/circuits.js/src/structs/call_context.test.ts b/yarn-project/circuits.js/src/structs/call_context.test.ts index 0cc83f9aaa4..5dc6af77e5c 100644 --- a/yarn-project/circuits.js/src/structs/call_context.test.ts +++ b/yarn-project/circuits.js/src/structs/call_context.test.ts @@ -1,3 +1,5 @@ +import { randomInt } from '@aztec/foundation/crypto'; + import { CALL_CONTEXT_LENGTH } from '../constants.gen.js'; import { makeCallContext } from '../tests/factories.js'; import { CallContext } from './call_context.js'; @@ -6,8 +8,7 @@ describe('CallContext', () => { let callContext: CallContext; beforeAll(() => { - const randomInt = Math.floor(Math.random() * 1000); - callContext = makeCallContext(randomInt); + callContext = makeCallContext(randomInt(1000)); }); it(`serializes to buffer and deserializes it back`, () => { diff --git a/yarn-project/circuits.js/src/structs/content_commitment.test.ts b/yarn-project/circuits.js/src/structs/content_commitment.test.ts index 1c8d103fc63..64dfa9e79ab 100644 --- a/yarn-project/circuits.js/src/structs/content_commitment.test.ts +++ b/yarn-project/circuits.js/src/structs/content_commitment.test.ts @@ -1,3 +1,5 @@ +import { randomInt } from '@aztec/foundation/crypto'; + import { CONTENT_COMMITMENT_LENGTH } from '../constants.gen.js'; import { makeContentCommitment } from '../tests/factories.js'; import { ContentCommitment } from './content_commitment.js'; @@ -6,8 +8,7 @@ describe('Content Commitment', () => { let contentCommitment: ContentCommitment; beforeAll(() => { - const randomInt = Math.floor(Math.random() * 1000); - contentCommitment = makeContentCommitment(randomInt); + contentCommitment = makeContentCommitment(randomInt(1000)); }); it('serializes to buffer and deserializes it back', () => { diff --git a/yarn-project/circuits.js/src/structs/contract_storage_read.test.ts b/yarn-project/circuits.js/src/structs/contract_storage_read.test.ts index 9bedecfd3e9..e4d243fcdd7 100644 --- a/yarn-project/circuits.js/src/structs/contract_storage_read.test.ts +++ b/yarn-project/circuits.js/src/structs/contract_storage_read.test.ts @@ -1,3 +1,5 @@ +import { randomInt } from '@aztec/foundation/crypto'; + import { CONTRACT_STORAGE_READ_LENGTH } from '../constants.gen.js'; import { makeContractStorageRead } from '../tests/factories.js'; import { ContractStorageRead } from './contract_storage_read.js'; @@ -6,8 +8,7 @@ describe('ContractStorageRead', () => { let read: ContractStorageRead; beforeAll(() => { - const randomInt = Math.floor(Math.random() * 1000); - read = makeContractStorageRead(randomInt); + read = makeContractStorageRead(randomInt(1000)); }); it('serializes to buffer and deserializes it back', () => { diff --git a/yarn-project/circuits.js/src/structs/contract_storage_update_request.test.ts b/yarn-project/circuits.js/src/structs/contract_storage_update_request.test.ts index 6e3ca79cad1..f162130558a 100644 --- a/yarn-project/circuits.js/src/structs/contract_storage_update_request.test.ts +++ b/yarn-project/circuits.js/src/structs/contract_storage_update_request.test.ts @@ -1,3 +1,5 @@ +import { randomInt } from '@aztec/foundation/crypto'; + import { CONTRACT_STORAGE_UPDATE_REQUEST_LENGTH } from '../constants.gen.js'; import { makeContractStorageUpdateRequest } from '../tests/factories.js'; import { ContractStorageUpdateRequest } from './contract_storage_update_request.js'; @@ -6,8 +8,7 @@ describe('ContractStorageUpdateRequest', () => { let request: ContractStorageUpdateRequest; beforeAll(() => { - const randomInt = Math.floor(Math.random() * 1000); - request = makeContractStorageUpdateRequest(randomInt); + request = makeContractStorageUpdateRequest(randomInt(1000)); }); it('serializes to buffer and deserializes it back', () => { diff --git a/yarn-project/circuits.js/src/structs/global_variables.test.ts b/yarn-project/circuits.js/src/structs/global_variables.test.ts index 8b9388e7957..82665ceea7e 100644 --- a/yarn-project/circuits.js/src/structs/global_variables.test.ts +++ b/yarn-project/circuits.js/src/structs/global_variables.test.ts @@ -1,3 +1,5 @@ +import { randomInt } from '@aztec/foundation/crypto'; + import { GLOBAL_VARIABLES_LENGTH } from '../constants.gen.js'; import { makeGlobalVariables } from '../tests/factories.js'; import { GlobalVariables } from './global_variables.js'; @@ -6,8 +8,7 @@ describe('GlobalVariables', () => { let state: GlobalVariables; beforeAll(() => { - const randomInt = Math.floor(Math.random() * 1000); - state = makeGlobalVariables(randomInt); + state = makeGlobalVariables(randomInt(1000)); }); it('serializes to buffer and deserializes it back', () => { diff --git a/yarn-project/circuits.js/src/structs/header.test.ts b/yarn-project/circuits.js/src/structs/header.test.ts index e087ba2cbe1..352acf4c681 100644 --- a/yarn-project/circuits.js/src/structs/header.test.ts +++ b/yarn-project/circuits.js/src/structs/header.test.ts @@ -1,3 +1,4 @@ +import { randomInt } from '@aztec/foundation/crypto'; import { setupCustomSnapshotSerializers, updateInlineTestData } from '@aztec/foundation/testing'; import { HEADER_LENGTH } from '../constants.gen.js'; @@ -9,8 +10,7 @@ describe('Header', () => { beforeAll(() => { setupCustomSnapshotSerializers(expect); - const randomInt = Math.floor(Math.random() * 1000); - header = makeHeader(randomInt, undefined); + header = makeHeader(randomInt(1000), undefined); }); it('serializes to buffer and deserializes it back', () => { diff --git a/yarn-project/circuits.js/src/structs/l2_to_l1_message.test.ts b/yarn-project/circuits.js/src/structs/l2_to_l1_message.test.ts index 9c02142d0d0..0bf8b4c576e 100644 --- a/yarn-project/circuits.js/src/structs/l2_to_l1_message.test.ts +++ b/yarn-project/circuits.js/src/structs/l2_to_l1_message.test.ts @@ -1,3 +1,5 @@ +import { randomInt } from '@aztec/foundation/crypto'; + import { L2_TO_L1_MESSAGE_LENGTH } from '../constants.gen.js'; import { makeL2ToL1Message } from '../tests/factories.js'; import { L2ToL1Message } from './l2_to_l1_message.js'; @@ -6,8 +8,7 @@ describe('L2ToL1Message', () => { let message: L2ToL1Message; beforeAll(() => { - const randomInt = Math.floor(Math.random() * 1000); - message = makeL2ToL1Message(randomInt); + message = makeL2ToL1Message(randomInt(1000)); }); it('serializes to buffer and deserializes it back', () => { diff --git a/yarn-project/circuits.js/src/structs/partial_state_reference.test.ts b/yarn-project/circuits.js/src/structs/partial_state_reference.test.ts index 387ef55ce02..0ee79d0431a 100644 --- a/yarn-project/circuits.js/src/structs/partial_state_reference.test.ts +++ b/yarn-project/circuits.js/src/structs/partial_state_reference.test.ts @@ -1,3 +1,5 @@ +import { randomInt } from '@aztec/foundation/crypto'; + import { PARTIAL_STATE_REFERENCE_LENGTH } from '../constants.gen.js'; import { makePartialStateReference } from '../tests/factories.js'; import { PartialStateReference } from './partial_state_reference.js'; @@ -6,8 +8,7 @@ describe('PartialStateReference', () => { let partial: PartialStateReference; beforeAll(() => { - const randomInt = Math.floor(Math.random() * 1000); - partial = makePartialStateReference(randomInt); + partial = makePartialStateReference(randomInt(1000)); }); it('serializes to buffer and deserializes it back', () => { diff --git a/yarn-project/circuits.js/src/structs/private_call_stack_item.test.ts b/yarn-project/circuits.js/src/structs/private_call_stack_item.test.ts index 4fb5783c6dc..39d2b062661 100644 --- a/yarn-project/circuits.js/src/structs/private_call_stack_item.test.ts +++ b/yarn-project/circuits.js/src/structs/private_call_stack_item.test.ts @@ -1,3 +1,4 @@ +import { randomInt } from '@aztec/foundation/crypto'; import { setupCustomSnapshotSerializers, updateInlineTestData } from '@aztec/foundation/testing'; import { PRIVATE_CALL_STACK_ITEM_LENGTH } from '../constants.gen.js'; @@ -9,8 +10,7 @@ describe('PrivateCallStackItem', () => { beforeAll(() => { setupCustomSnapshotSerializers(expect); - const randomInt = Math.floor(Math.random() * 1000); - item = makePrivateCallStackItem(randomInt); + item = makePrivateCallStackItem(randomInt(1000)); }); it('serializes to buffer and deserializes it back', () => { diff --git a/yarn-project/circuits.js/src/structs/private_circuit_public_inputs.test.ts b/yarn-project/circuits.js/src/structs/private_circuit_public_inputs.test.ts index 2e6eb6f4bf5..223daf96762 100644 --- a/yarn-project/circuits.js/src/structs/private_circuit_public_inputs.test.ts +++ b/yarn-project/circuits.js/src/structs/private_circuit_public_inputs.test.ts @@ -1,3 +1,4 @@ +import { randomInt } from '@aztec/foundation/crypto'; import { setupCustomSnapshotSerializers, updateInlineTestData } from '@aztec/foundation/testing'; import { PRIVATE_CIRCUIT_PUBLIC_INPUTS_LENGTH } from '../constants.gen.js'; @@ -9,8 +10,7 @@ describe('PrivateCircuitPublicInputs', () => { beforeAll(() => { setupCustomSnapshotSerializers(expect); - const randomInt = Math.floor(Math.random() * 1000); - inputs = makePrivateCircuitPublicInputs(randomInt); + inputs = makePrivateCircuitPublicInputs(randomInt(1000)); }); it('serializes to buffer and back', () => { diff --git a/yarn-project/circuits.js/src/structs/public_call_stack_item.test.ts b/yarn-project/circuits.js/src/structs/public_call_stack_item.test.ts index 247e5a75fba..aecba07a7d5 100644 --- a/yarn-project/circuits.js/src/structs/public_call_stack_item.test.ts +++ b/yarn-project/circuits.js/src/structs/public_call_stack_item.test.ts @@ -1,3 +1,4 @@ +import { randomInt } from '@aztec/foundation/crypto'; import { setupCustomSnapshotSerializers, updateInlineTestData } from '@aztec/foundation/testing'; import { makePublicCallStackItem } from '../tests/factories.js'; @@ -7,8 +8,7 @@ import { PublicCallStackItem } from './public_call_stack_item.js'; describe('PublicCallStackItem', () => { setupCustomSnapshotSerializers(expect); it('serializes to buffer and deserializes it back', () => { - const randomInt = Math.floor(Math.random() * 1000); - const expected = makePublicCallStackItem(randomInt); + const expected = makePublicCallStackItem(randomInt(1000)); const buffer = expected.toBuffer(); const res = PublicCallStackItem.fromBuffer(buffer); expect(res).toEqual(expected); diff --git a/yarn-project/circuits.js/src/structs/public_circuit_public_inputs.test.ts b/yarn-project/circuits.js/src/structs/public_circuit_public_inputs.test.ts index 59a49edea89..71fbc0fc141 100644 --- a/yarn-project/circuits.js/src/structs/public_circuit_public_inputs.test.ts +++ b/yarn-project/circuits.js/src/structs/public_circuit_public_inputs.test.ts @@ -1,3 +1,4 @@ +import { randomInt } from '@aztec/foundation/crypto'; import { setupCustomSnapshotSerializers, updateInlineTestData } from '@aztec/foundation/testing'; import { PUBLIC_CIRCUIT_PUBLIC_INPUTS_LENGTH } from '../constants.gen.js'; @@ -7,8 +8,7 @@ import { PublicCircuitPublicInputs } from './public_circuit_public_inputs.js'; describe('PublicCircuitPublicInputs', () => { setupCustomSnapshotSerializers(expect); it('serializes to field array and deserializes it back', () => { - const randomInt = Math.floor(Math.random() * 1000); - const expected = makePublicCircuitPublicInputs(randomInt, undefined); + const expected = makePublicCircuitPublicInputs(randomInt(1000), undefined); const fieldArray = expected.toFields(); const res = PublicCircuitPublicInputs.fromFields(fieldArray); diff --git a/yarn-project/circuits.js/src/structs/state_reference.test.ts b/yarn-project/circuits.js/src/structs/state_reference.test.ts index 2782295ce1b..12528abd0fc 100644 --- a/yarn-project/circuits.js/src/structs/state_reference.test.ts +++ b/yarn-project/circuits.js/src/structs/state_reference.test.ts @@ -1,3 +1,5 @@ +import { randomInt } from '@aztec/foundation/crypto'; + import { STATE_REFERENCE_LENGTH } from '../constants.gen.js'; import { makeStateReference } from '../tests/factories.js'; import { StateReference } from './state_reference.js'; @@ -6,8 +8,7 @@ describe('StateReference', () => { let state: StateReference; beforeAll(() => { - const randomInt = Math.floor(Math.random() * 1000); - state = makeStateReference(randomInt); + state = makeStateReference(randomInt(1000)); }); it('serializes to buffer and deserializes it back', () => { diff --git a/yarn-project/circuits.js/src/structs/tx_context.test.ts b/yarn-project/circuits.js/src/structs/tx_context.test.ts index 71e3a580c28..940770dac82 100644 --- a/yarn-project/circuits.js/src/structs/tx_context.test.ts +++ b/yarn-project/circuits.js/src/structs/tx_context.test.ts @@ -1,3 +1,4 @@ +import { randomInt } from '@aztec/foundation/crypto'; import { setupCustomSnapshotSerializers, updateInlineTestData } from '@aztec/foundation/testing'; import { TX_CONTEXT_DATA_LENGTH } from '../constants.gen.js'; @@ -9,8 +10,7 @@ describe('TxContext', () => { beforeAll(() => { setupCustomSnapshotSerializers(expect); - const randomInt = Math.floor(Math.random() * 1000); - context = makeTxContext(randomInt); + context = makeTxContext(randomInt(1000)); }); it(`serializes to buffer and deserializes it back`, () => { diff --git a/yarn-project/circuits.js/src/structs/tx_request.test.ts b/yarn-project/circuits.js/src/structs/tx_request.test.ts index cae72c92474..cbd4073737f 100644 --- a/yarn-project/circuits.js/src/structs/tx_request.test.ts +++ b/yarn-project/circuits.js/src/structs/tx_request.test.ts @@ -1,5 +1,6 @@ import { FunctionSelector } from '@aztec/foundation/abi'; import { AztecAddress } from '@aztec/foundation/aztec-address'; +import { randomInt } from '@aztec/foundation/crypto'; import { Fr } from '@aztec/foundation/fields'; import { setupCustomSnapshotSerializers, updateInlineTestData } from '@aztec/foundation/testing'; @@ -14,8 +15,7 @@ describe('TxRequest', () => { beforeAll(() => { setupCustomSnapshotSerializers(expect); - const randomInt = Math.floor(Math.random() * 1000); - request = makeTxRequest(randomInt); + request = makeTxRequest(randomInt(1000)); }); it(`serializes to buffer and deserializes it back`, () => { diff --git a/yarn-project/end-to-end/src/benchmarks/utils.ts b/yarn-project/end-to-end/src/benchmarks/utils.ts index 8ae3d6a0eb8..6d567e12b36 100644 --- a/yarn-project/end-to-end/src/benchmarks/utils.ts +++ b/yarn-project/end-to-end/src/benchmarks/utils.ts @@ -11,6 +11,7 @@ import { sleep, } from '@aztec/aztec.js'; import { times } from '@aztec/foundation/collection'; +import { randomInt } from '@aztec/foundation/crypto'; import { BenchmarkingContract } from '@aztec/noir-contracts.js/Benchmarking'; import { PXEService, createPXEService } from '@aztec/pxe'; @@ -37,9 +38,8 @@ export async function benchmarkSetup(opts: Partial) { * @returns A path to a created dir. */ export function makeDataDirectory(index: number) { - const random = Math.random().toString().slice(2); const testName = expect.getState().currentTestName!.split(' ')[0].replaceAll('/', '_'); - const db = join('data', testName, index.toString(), random); + const db = join('data', testName, index.toString(), `${randomInt(99)}`); mkdirpSync(db); return db; } diff --git a/yarn-project/end-to-end/src/e2e_account_contracts.test.ts b/yarn-project/end-to-end/src/e2e_account_contracts.test.ts index c9cb4dfb6ae..4cd7d629f2f 100644 --- a/yarn-project/end-to-end/src/e2e_account_contracts.test.ts +++ b/yarn-project/end-to-end/src/e2e_account_contracts.test.ts @@ -12,10 +12,9 @@ import { PXE, Wallet, } from '@aztec/aztec.js'; +import { randomBytes } from '@aztec/foundation/crypto'; import { ChildContract } from '@aztec/noir-contracts.js/Child'; -import { randomBytes } from 'crypto'; - import { setup } from './fixtures/utils.js'; function itShouldBehaveLikeAnAccountContract( diff --git a/yarn-project/end-to-end/src/e2e_inclusion_proofs_contract.test.ts b/yarn-project/end-to-end/src/e2e_inclusion_proofs_contract.test.ts index 2e247bcdf47..17361bdce81 100644 --- a/yarn-project/end-to-end/src/e2e_inclusion_proofs_contract.test.ts +++ b/yarn-project/end-to-end/src/e2e_inclusion_proofs_contract.test.ts @@ -8,6 +8,7 @@ import { getContractInstanceFromDeployParams, } from '@aztec/aztec.js'; import { deployInstance, registerContractClass } from '@aztec/aztec.js/deployment'; +import { randomInt } from '@aztec/foundation/crypto'; import { StatefulTestContract, StatefulTestContractArtifact } from '@aztec/noir-contracts.js'; import { InclusionProofsContract } from '@aztec/noir-contracts.js/InclusionProofs'; @@ -290,10 +291,10 @@ describe('e2e_inclusion_proofs_contract', () => { }); const getRandomBlockNumberSinceDeployment = async () => { - return deploymentBlockNumber + Math.floor(Math.random() * ((await pxe.getBlockNumber()) - deploymentBlockNumber)); + return deploymentBlockNumber + randomInt((await pxe.getBlockNumber()) - deploymentBlockNumber); }; const getRandomBlockNumber = async () => { - return deploymentBlockNumber + Math.floor(Math.random() * ((await pxe.getBlockNumber()) - INITIAL_L2_BLOCK_NUM)); + return deploymentBlockNumber + randomInt((await pxe.getBlockNumber()) - INITIAL_L2_BLOCK_NUM); }; }); diff --git a/yarn-project/foundation/src/abi/event_selector.ts b/yarn-project/foundation/src/abi/event_selector.ts index 2f4c6a8b2d3..48779aabad6 100644 --- a/yarn-project/foundation/src/abi/event_selector.ts +++ b/yarn-project/foundation/src/abi/event_selector.ts @@ -1,5 +1,5 @@ import { fromHex, toBigIntBE } from '../bigint-buffer/index.js'; -import { keccak } from '../crypto/index.js'; +import { keccak, randomBytes } from '../crypto/index.js'; import { Fr } from '../fields/fields.js'; import { BufferReader } from '../serialize/buffer_reader.js'; import { Selector } from './selector.js'; @@ -70,4 +70,12 @@ export class EventSelector extends Selector { static empty() { return new EventSelector(0); } + + /** + * Creates a random selector. + * @returns A random selector. + */ + static random() { + return EventSelector.fromBuffer(randomBytes(Selector.SIZE)); + } } diff --git a/yarn-project/foundation/src/crypto/random/index.ts b/yarn-project/foundation/src/crypto/random/index.ts index acea92f4839..a64dc4f4a95 100644 --- a/yarn-project/foundation/src/crypto/random/index.ts +++ b/yarn-project/foundation/src/crypto/random/index.ts @@ -1,6 +1,8 @@ import nodeCrypto from 'crypto'; import isNode from 'detect-node'; +import { RandomnessSingleton } from './randomness_singleton.js'; + // limit of Crypto.getRandomValues() // https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues const MAX_BYTES = 65536; @@ -16,6 +18,12 @@ const getWebCrypto = () => { }; export const randomBytes = (len: number) => { + const singleton = RandomnessSingleton.getInstance(); + + if (singleton.isDeterministic()) { + return singleton.getBytes(len); + } + if (isNode) { return nodeCrypto.randomBytes(len) as Buffer; } @@ -40,3 +48,29 @@ export const randomBytes = (len: number) => { return buf; }; + +/** + * Generate a random integer less than max. + * @param max - The maximum value. + * @returns A random integer. + * + * TODO(#3949): This is insecure as it's modulo biased. Nuke or safeguard before mainnet. + */ +export const randomInt = (max: number) => { + const randomBuffer = randomBytes(6); // Generate a buffer of 6 random bytes. + const randomInt = parseInt(randomBuffer.toString('hex'), 16); // Convert buffer to a large integer. + return randomInt % max; // Use modulo to ensure the result is less than max. +}; + +/** + * Generate a random bigint less than max. + * @param max - The maximum value. + * @returns A random bigint. + * + * TODO(#3949): This is insecure as it's modulo biased. Nuke or safeguard before mainnet. + */ +export const randomBigInt = (max: bigint) => { + const randomBuffer = randomBytes(8); // Generate a buffer of 8 random bytes. + const randomBigInt = BigInt(`0x${randomBuffer.toString('hex')}`); // Convert buffer to a large integer. + return randomBigInt % max; // Use modulo to ensure the result is less than max. +}; diff --git a/yarn-project/foundation/src/crypto/random/randomness_singleton.ts b/yarn-project/foundation/src/crypto/random/randomness_singleton.ts new file mode 100644 index 00000000000..fcdba51772d --- /dev/null +++ b/yarn-project/foundation/src/crypto/random/randomness_singleton.ts @@ -0,0 +1,62 @@ +import { createDebugLogger } from '../../log/logger.js'; + +/** + * A number generator which is used as a source of randomness in the system. If the SEED env variable is set, the + * generator will be deterministic and will always produce the same sequence of numbers. Otherwise a true randomness + * sourced by crypto library will be used. + * @remarks This class was implemented so that tests can be run deterministically. + * + * TODO(#3949): This is not safe enough for production and should be made safer or removed before mainnet. + */ +export class RandomnessSingleton { + private static instance: RandomnessSingleton; + + private counter = 0; + + private constructor( + private readonly seed?: number, + private readonly log = createDebugLogger('aztec:randomness_singleton'), + ) { + if (seed !== undefined) { + this.log(`Using pseudo-randomness with seed: ${seed}`); + this.counter = seed; + } else { + this.log('Using true randomness'); + } + } + + public static getInstance(): RandomnessSingleton { + if (!RandomnessSingleton.instance) { + const seed = process.env.SEED ? Number(process.env.SEED) : undefined; + RandomnessSingleton.instance = new RandomnessSingleton(seed); + } + + return RandomnessSingleton.instance; + } + + /** + * Indicates whether the generator is deterministic (was seeded) or not. + * @returns Whether the generator is deterministic. + */ + public isDeterministic(): boolean { + return this.seed !== undefined; + } + + public getBytes(length: number): Buffer { + if (this.seed === undefined) { + // Note: It would be more natural to just have the contents of randomBytes(...) function from + // yarn-project/foundation/src/crypto/random/index.ts here but that would result in a larger + // refactor so I think prohibiting use of this func when the seed is undefined is and handling + // the singleton within randomBytes func is fine. + throw new Error('RandomnessSingleton is not implemented for non-deterministic mode'); + } + const result = Buffer.alloc(length); + for (let i = 0; i < length; i++) { + // Each byte of the buffer is set to a 1 byte of this.counter's value. 0xff is 255 in decimal and it's used as + // a mask to get the last 8 bits of the shifted counter. + result[i] = (this.counter >> (i * 8)) & 0xff; + } + this.counter++; + return result; + } +} diff --git a/yarn-project/kv-store/src/lmdb/counter.test.ts b/yarn-project/kv-store/src/lmdb/counter.test.ts index fdd1204b15c..df490811a4e 100644 --- a/yarn-project/kv-store/src/lmdb/counter.test.ts +++ b/yarn-project/kv-store/src/lmdb/counter.test.ts @@ -1,4 +1,5 @@ -import { randomBytes } from 'crypto'; +import { randomBytes } from '@aztec/foundation/crypto'; + import { Database, open } from 'lmdb'; import { LmdbAztecCounter } from './counter.js'; diff --git a/yarn-project/merkle-tree/src/snapshots/append_only_snapshot.test.ts b/yarn-project/merkle-tree/src/snapshots/append_only_snapshot.test.ts index f1b2d458b72..b6b6dd3e46d 100644 --- a/yarn-project/merkle-tree/src/snapshots/append_only_snapshot.test.ts +++ b/yarn-project/merkle-tree/src/snapshots/append_only_snapshot.test.ts @@ -1,3 +1,4 @@ +import { randomBytes } from '@aztec/foundation/crypto'; import { AztecKVStore } from '@aztec/kv-store'; import { openTmpStore } from '@aztec/kv-store/utils'; @@ -21,7 +22,7 @@ describe('AppendOnlySnapshot', () => { () => tree, () => snapshotBuilder, async tree => { - const newLeaves = Array.from({ length: 2 }).map(() => Buffer.from(Math.random().toString())); + const newLeaves = Array.from({ length: 2 }).map(() => randomBytes(32)); await tree.appendLeaves(newLeaves); }, ); diff --git a/yarn-project/merkle-tree/src/snapshots/full_snapshot.test.ts b/yarn-project/merkle-tree/src/snapshots/full_snapshot.test.ts index 6e57e113f93..2c0ea129f8a 100644 --- a/yarn-project/merkle-tree/src/snapshots/full_snapshot.test.ts +++ b/yarn-project/merkle-tree/src/snapshots/full_snapshot.test.ts @@ -1,3 +1,4 @@ +import { randomBytes } from '@aztec/foundation/crypto'; import { AztecKVStore } from '@aztec/kv-store'; import { openTmpStore } from '@aztec/kv-store/utils'; @@ -20,7 +21,7 @@ describe('FullSnapshotBuilder', () => { () => tree, () => snapshotBuilder, async () => { - const newLeaves = Array.from({ length: 2 }).map(() => Buffer.from(Math.random().toString())); + const newLeaves = Array.from({ length: 2 }).map(() => randomBytes(32)); await tree.appendLeaves(newLeaves); }, ); diff --git a/yarn-project/merkle-tree/src/snapshots/snapshot_builder_test_suite.ts b/yarn-project/merkle-tree/src/snapshots/snapshot_builder_test_suite.ts index 85aa63f7b66..a10842121b9 100644 --- a/yarn-project/merkle-tree/src/snapshots/snapshot_builder_test_suite.ts +++ b/yarn-project/merkle-tree/src/snapshots/snapshot_builder_test_suite.ts @@ -1,3 +1,5 @@ +import { randomBigInt } from '@aztec/foundation/crypto'; + import { TreeBase } from '../tree_base.js'; import { TreeSnapshotBuilder } from './snapshot_builder.js'; @@ -16,7 +18,7 @@ export function describeSnapshotBuilderTestSuite BigInt(Math.floor(Math.random() * 2 ** tree.getDepth()))); + leaves = Array.from({ length: 4 }).map(() => randomBigInt(BigInt(2 ** tree.getDepth()))); }); describe('snapshot', () => { diff --git a/yarn-project/merkle-tree/src/sparse_tree/sparse_tree.test.ts b/yarn-project/merkle-tree/src/sparse_tree/sparse_tree.test.ts index 05b869932e6..69ad6c2f3cb 100644 --- a/yarn-project/merkle-tree/src/sparse_tree/sparse_tree.test.ts +++ b/yarn-project/merkle-tree/src/sparse_tree/sparse_tree.test.ts @@ -1,11 +1,10 @@ import { SiblingPath } from '@aztec/circuit-types'; +import { randomBigInt, randomBytes } from '@aztec/foundation/crypto'; import { createDebugLogger } from '@aztec/foundation/log'; import { AztecKVStore } from '@aztec/kv-store'; import { openTmpStore } from '@aztec/kv-store/utils'; import { Hasher } from '@aztec/types/interfaces'; -import { randomBytes } from 'crypto'; - import { INITIAL_LEAF, newTree } from '../index.js'; import { UpdateOnlyTree } from '../interfaces/update_only_tree.js'; import { loadTree } from '../load_tree.js'; @@ -52,7 +51,7 @@ describe('SparseTreeSpecific', () => { const db = openTmpStore(); const tree = await createDb(db, pedersen, 'test', depth); - const randomIndex = BigInt(Math.floor(Math.random() * maxIndex)); + const randomIndex = randomBigInt(BigInt(maxIndex)); expect(tree.getNumLeaves(false)).toEqual(0n); // Insert a leaf @@ -71,7 +70,7 @@ describe('SparseTreeSpecific', () => { const db = openTmpStore(); const tree = await createDb(db, pedersen, 'test', depth); - const randomIndex = BigInt(Math.floor(Math.random() * maxIndex)); + const randomIndex = randomBigInt(BigInt(maxIndex)); expect(tree.getNumLeaves(false)).toEqual(0n); // Insert a leaf @@ -161,7 +160,7 @@ describe('SparseTreeSpecific', () => { const tree = await createDb(db, pedersen, 'test', depth); const leaves = Array.from({ length: 1000 }).map(() => randomBytes(32)); - const indices = Array.from({ length: 1000 }).map(() => BigInt(Math.floor(Math.random() * maxIndex))); + const indices = Array.from({ length: 1000 }).map(() => randomBigInt(BigInt(maxIndex))); const start = Date.now(); await Promise.all(leaves.map((leaf, i) => tree.updateLeaf(leaf, indices[i]))); diff --git a/yarn-project/merkle-tree/src/test/standard_based_test_suite.ts b/yarn-project/merkle-tree/src/test/standard_based_test_suite.ts index 9931e074131..b544b661c5e 100644 --- a/yarn-project/merkle-tree/src/test/standard_based_test_suite.ts +++ b/yarn-project/merkle-tree/src/test/standard_based_test_suite.ts @@ -1,10 +1,9 @@ import { SiblingPath } from '@aztec/circuit-types'; +import { randomBytes } from '@aztec/foundation/crypto'; import { AztecKVStore } from '@aztec/kv-store'; import { openTmpStore } from '@aztec/kv-store/utils'; import { Hasher } from '@aztec/types/interfaces'; -import { randomBytes } from 'crypto'; - import { INITIAL_LEAF, Pedersen } from '../index.js'; import { AppendOnlyTree } from '../interfaces/append_only_tree.js'; import { UpdateOnlyTree } from '../interfaces/update_only_tree.js'; diff --git a/yarn-project/pxe/src/database/deferred_note_dao.test.ts b/yarn-project/pxe/src/database/deferred_note_dao.test.ts index 757aad9100d..d3c1e5d520b 100644 --- a/yarn-project/pxe/src/database/deferred_note_dao.test.ts +++ b/yarn-project/pxe/src/database/deferred_note_dao.test.ts @@ -1,5 +1,6 @@ import { Note, randomTxHash } from '@aztec/circuit-types'; import { AztecAddress, Fr, Point } from '@aztec/circuits.js'; +import { randomInt } from '@aztec/foundation/crypto'; import { DeferredNoteDao } from './deferred_note_dao.js'; @@ -11,7 +12,7 @@ export const randomDeferredNoteDao = ({ storageSlot = Fr.random(), noteTypeId = Fr.random(), newNoteHashes = [Fr.random(), Fr.random()], - dataStartIndexForTx = Math.floor(Math.random() * 100), + dataStartIndexForTx = randomInt(100), }: Partial = {}) => { return new DeferredNoteDao( publicKey, diff --git a/yarn-project/pxe/src/database/pxe_database_test_suite.ts b/yarn-project/pxe/src/database/pxe_database_test_suite.ts index 5ff7e6ce711..7ee0a403ebe 100644 --- a/yarn-project/pxe/src/database/pxe_database_test_suite.ts +++ b/yarn-project/pxe/src/database/pxe_database_test_suite.ts @@ -1,6 +1,7 @@ import { NoteFilter, NoteStatus, randomTxHash } from '@aztec/circuit-types'; import { AztecAddress, CompleteAddress, INITIAL_L2_BLOCK_NUM } from '@aztec/circuits.js'; import { makeHeader } from '@aztec/circuits.js/testing'; +import { randomInt } from '@aztec/foundation/crypto'; import { Fr, Point } from '@aztec/foundation/fields'; import { BenchmarkingContractArtifact } from '@aztec/noir-contracts.js/Benchmarking'; import { SerializableContractInstance } from '@aztec/types/contracts'; @@ -188,7 +189,7 @@ export function describePxeDatabase(getDatabase: () => PxeDatabase) { describe('block header', () => { it('stores and retrieves the block header', async () => { - const header = makeHeader(Math.floor(Math.random() * 1000), INITIAL_L2_BLOCK_NUM); + const header = makeHeader(randomInt(1000), INITIAL_L2_BLOCK_NUM); await database.setHeader(header); expect(database.getHeader()).toEqual(header); diff --git a/yarn-project/pxe/src/pxe_service/create_pxe_service.ts b/yarn-project/pxe/src/pxe_service/create_pxe_service.ts index 92f9fbbc179..a8c92374ead 100644 --- a/yarn-project/pxe/src/pxe_service/create_pxe_service.ts +++ b/yarn-project/pxe/src/pxe_service/create_pxe_service.ts @@ -1,5 +1,6 @@ import { AztecNode } from '@aztec/circuit-types'; import { Grumpkin } from '@aztec/circuits.js/barretenberg'; +import { randomBytes } from '@aztec/foundation/crypto'; import { TestKeyStore } from '@aztec/key-store'; import { AztecLmdbStore } from '@aztec/kv-store/lmdb'; import { initStoreForRollup } from '@aztec/kv-store/utils'; @@ -29,11 +30,7 @@ export async function createPXEService( useLogSuffix: string | boolean | undefined = undefined, ) { const logSuffix = - typeof useLogSuffix === 'boolean' - ? useLogSuffix - ? Math.random().toString(16).slice(2, 8) - : undefined - : useLogSuffix; + typeof useLogSuffix === 'boolean' ? (useLogSuffix ? randomBytes(3).toString('hex') : undefined) : useLogSuffix; const pxeDbPath = config.dataDirectory ? join(config.dataDirectory, 'pxe_data') : undefined; const keyStorePath = config.dataDirectory ? join(config.dataDirectory, 'pxe_key_store') : undefined; diff --git a/yarn-project/pxe/src/synchronizer/synchronizer.test.ts b/yarn-project/pxe/src/synchronizer/synchronizer.test.ts index 9287c308700..5de7f55dfb8 100644 --- a/yarn-project/pxe/src/synchronizer/synchronizer.test.ts +++ b/yarn-project/pxe/src/synchronizer/synchronizer.test.ts @@ -2,6 +2,7 @@ import { AztecNode, L2Block } from '@aztec/circuit-types'; import { CompleteAddress, Fr, GrumpkinScalar, Header, INITIAL_L2_BLOCK_NUM } from '@aztec/circuits.js'; import { Grumpkin } from '@aztec/circuits.js/barretenberg'; import { makeHeader } from '@aztec/circuits.js/testing'; +import { randomInt } from '@aztec/foundation/crypto'; import { SerialQueue } from '@aztec/foundation/fifo'; import { TestKeyStore } from '@aztec/key-store'; import { openTmpStore } from '@aztec/kv-store/utils'; @@ -21,7 +22,7 @@ describe('Synchronizer', () => { let headerBlock3: Header; beforeEach(() => { - headerBlock3 = makeHeader(Math.floor(Math.random() * 1000), initialSyncBlockNumber); + headerBlock3 = makeHeader(randomInt(1000), initialSyncBlockNumber); aztecNode = mock(); database = new KVPxeDatabase(openTmpStore()); diff --git a/yarn-project/simulator/src/client/private_execution.test.ts b/yarn-project/simulator/src/client/private_execution.test.ts index 7eab890fad0..736d147b66f 100644 --- a/yarn-project/simulator/src/client/private_execution.test.ts +++ b/yarn-project/simulator/src/client/private_execution.test.ts @@ -30,7 +30,7 @@ import { import { asyncMap } from '@aztec/foundation/async-map'; import { AztecAddress } from '@aztec/foundation/aztec-address'; import { times } from '@aztec/foundation/collection'; -import { pedersenHash } from '@aztec/foundation/crypto'; +import { pedersenHash, randomInt } from '@aztec/foundation/crypto'; import { EthAddress } from '@aztec/foundation/eth-address'; import { Fr, GrumpkinScalar } from '@aztec/foundation/fields'; import { DebugLogger, createDebugLogger } from '@aztec/foundation/log'; @@ -259,7 +259,7 @@ describe('Private Execution test suite', () => { // noteHashes. A TX's real first nullifier (generated by the initial kernel) and a noteHash's // array index at the output of the final kernel/ordering circuit are used to derive nonce via: // `hash(firstNullifier, noteHashIndex)` - const noteHashIndex = Math.floor(Math.random()); // mock index in TX's final newNoteHashes array + const noteHashIndex = randomInt(1); // mock index in TX's final newNoteHashes array const nonce = computeCommitmentNonce(mockFirstNullifier, noteHashIndex); const note = new Note([new Fr(amount), owner.toField(), Fr.random()]); const innerNoteHash = hashFields(note.items); diff --git a/yarn-project/simulator/src/public/avm_executor.test.ts b/yarn-project/simulator/src/public/avm_executor.test.ts index 5de5e968c7c..9ddac70ee47 100644 --- a/yarn-project/simulator/src/public/avm_executor.test.ts +++ b/yarn-project/simulator/src/public/avm_executor.test.ts @@ -1,5 +1,6 @@ import { AztecAddress, CallContext, EthAddress, FunctionData, FunctionSelector, Header } from '@aztec/circuits.js'; import { makeHeader } from '@aztec/circuits.js/testing'; +import { randomInt } from '@aztec/foundation/crypto'; import { Fr } from '@aztec/foundation/fields'; import { AvmTestContractArtifact } from '@aztec/noir-contracts.js'; @@ -31,8 +32,7 @@ describe('AVM WitGen and Proof Generation', () => { publicContracts = mock(); commitmentsDb = mock(); - const randomInt = Math.floor(Math.random() * 1000000); - header = makeHeader(randomInt); + header = makeHeader(randomInt(1000000)); }, 10000); it('Should prove valid execution of bytecode that performs addition', async () => { diff --git a/yarn-project/simulator/src/public/index.test.ts b/yarn-project/simulator/src/public/index.test.ts index a4212f61a07..29576204abd 100644 --- a/yarn-project/simulator/src/public/index.test.ts +++ b/yarn-project/simulator/src/public/index.test.ts @@ -15,7 +15,7 @@ import { siloNullifier } from '@aztec/circuits.js/hash'; import { makeHeader } from '@aztec/circuits.js/testing'; import { FunctionArtifact, FunctionSelector, encodeArguments } from '@aztec/foundation/abi'; import { AztecAddress } from '@aztec/foundation/aztec-address'; -import { pedersenHash } from '@aztec/foundation/crypto'; +import { pedersenHash, randomInt } from '@aztec/foundation/crypto'; import { EthAddress } from '@aztec/foundation/eth-address'; import { Fr } from '@aztec/foundation/fields'; import { openTmpStore } from '@aztec/kv-store/utils'; @@ -50,8 +50,7 @@ describe('ACIR public execution simulator', () => { publicContracts = mock(); commitmentsDb = mock(); - const randomInt = Math.floor(Math.random() * 1000000); - header = makeHeader(randomInt); + header = makeHeader(randomInt(1000000)); executor = new PublicExecutor(publicState, publicContracts, commitmentsDb, header); }, 10000);