diff --git a/README.md b/README.md index 16ba6b9..92e26c8 100644 --- a/README.md +++ b/README.md @@ -358,7 +358,7 @@ In the [example](https://github.com/mrtnetwork/bitcoin_base/tree/main/example/li const String memo = "https://github.com/mrtnetwork"; /// SUM OF OUTOUT AMOUNTS - final sumOfOutputs = outPuts.fold( + final sumOfOutputs = outputs.fold( BigInt.zero, (previousValue, element) => previousValue + element.value); /// Estimate transaction size diff --git a/lib/src/bitcoin/script/transaction.dart b/lib/src/bitcoin/script/transaction.dart index 4e53e71..750020b 100644 --- a/lib/src/bitcoin/script/transaction.dart +++ b/lib/src/bitcoin/script/transaction.dart @@ -78,7 +78,25 @@ class BtcTransaction { } /// Instantiates a Transaction from serialized raw hexadacimal data (classmethod) + /// + /// Throws a [BitcoinBasePluginException] (rather than a bare, uninformative + /// [RangeError]/[FormatException]) when [raw] is malformed or truncated - + /// e.g. a raw tx hex cut short by an upstream network/transport bug before + /// every field could be read. static BtcTransaction fromRaw(String raw) { + try { + return _fromRawUnchecked(raw); + } on BitcoinBasePluginException { + rethrow; + } catch (e) { + throw BitcoinBasePluginException( + 'Malformed or truncated raw transaction hex: $e', + details: {'hexLength': raw.length}, + ); + } + } + + static BtcTransaction _fromRawUnchecked(String raw) { final rawtx = BytesUtils.fromHexString(raw); final List version = rawtx.sublist(0, 4); int cursor = 4; @@ -124,8 +142,21 @@ class BtcTransaction { List witnesses = []; if (hasSegwit) { for (int n = 0; n < inputs.length; n++) { - final input = inputs[n]; - if (input.scriptSig.script.isNotEmpty) continue; + // Per BIP144, every input gets exactly one witness field when the + // segwit flag is set - including legacy inputs (an empty stack, + // serialized as a single 0x00 byte) and P2SH-wrapped segwit inputs + // (non-empty scriptSig *and* non-empty witness). Skipping the read + // here for any input with a non-empty scriptSig desyncs the cursor + // for every witness read after it. + // + // The writer side (toBytes()'s `if (segwit)` below, reached via + // toHex()/serialize()/getSize() passing `segwit: hasSegwit`) already + // writes one witness entry per input unconditionally, so this loop + // must mirror that to round-trip correctly. + // + // final input = inputs[n]; + // if (input.scriptSig.script.isNotEmpty) continue; + // /\ keep this removed final wVi = IntUtils.decodeVarint(rawtx.sublist(cursor, cursor + 9)); cursor += wVi.item2; @@ -146,6 +177,14 @@ class BtcTransaction { List? mwebBytes; if (hasMweb) { mwebBytes = rawtx.sublist(cursor, rawtx.length - 4); + } else if (cursor != rawtx.length - 4) { + // `cursor` should land exactly 4 bytes before the end once inputs, + // outputs, and any witnesses are consumed. + throw BitcoinBasePluginException( + 'Malformed or truncated raw transaction hex: expected locktime at ' + 'offset ${rawtx.length - 4}, but parsing ended at offset $cursor', + details: {'hexLength': raw.length}, + ); } cursor = rawtx.length - 4; List lock = rawtx.sublist(cursor, cursor + 4); diff --git a/test/fixtures/large_tx_260in_340out.hex b/test/fixtures/large_tx_260in_340out.hex new file mode 100644 index 0000000..b0e7eec --- /dev/null +++ b/test/fixtures/large_tx_260in_340out.hex @@ -0,0 +1 @@ +010000000001fd04013eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd50100000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd50300000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd50400000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff20200000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff20300000000ffffffff18d5034848db7c17cdee4188b95007183ef8235258949e7b836f0deaa5b86c6d0200000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd50600000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd50700000000ffffffff5d167ed02a9edc6ff61145e5fabd8371a17cbb82e35b955dce56ed962060fdd20700000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f0400000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd50b00000000ffffffff49158507c0c36a6152ab34f997da4bfcfa9c65f37e33a7f8264a2c42f2db44660d00000000ffffffff5d167ed02a9edc6ff61145e5fabd8371a17cbb82e35b955dce56ed962060fdd20b00000000ffffffff10910b02089291cc926f84bc5d83a121c969652873e54654a64d359c55dd99601400000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5930a00000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5930b00000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd51b00000000ffffffffbff031e4203e8efc9e0aabe6f0a093430f63842cd71527b67bb7935b6ebe920a0300000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f1000000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733871d00000000ffffffffed7ba4ad0b9554f2e22c9121964518c425e6ed9bd0312116d199766a85f1d2ff0d00000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe41e00000000ffffffff10fd55661a3548e8a9cd06ff6d49c5b75f550129e4fe55a6bb8780d48855b0e51300000000ffffffff3d5e4c78bdb60814275d8405dd01f3bc59633e3c03607c6d140056f5295405790e00000000ffffffff5d167ed02a9edc6ff61145e5fabd8371a17cbb82e35b955dce56ed962060fdd21900000000ffffffff5d167ed02a9edc6ff61145e5fabd8371a17cbb82e35b955dce56ed962060fdd21c00000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d186381200000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5931900000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5932100000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5932400000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd52100000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd52600000000ffffffffbe8b48bf5359a781c7a241a9c08f3d70567eecbf48141bf5e6cc1a2936f2b5e21600000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f1e00000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f2100000000fffffffff721036376e190fc8134aae1b2fe131763e3c4af40f2552e8d972d61587fd09d1a00000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe42900000000ffffffff484fe2f3bac8c587040bb1a5568ddbefdee20eff3813299862fc6589e7fa42673400000000ffffffffa2eb7f0553f0fffa8f3c3d6a9ba8bb346d628f941b5546a733354569abcca0d62500000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f3b00000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733874000000000ffffffff875da59e96df3e061c8e5de03949ed0a930ad3929e01461b678ec11561fc8e730000000000ffffffff1d2495f182ed7797fd1ec8332e74223fe457f7dcf874dfac39c2e9b850c8ae592f00000000ffffffff31e68c23380349814cdb573ac96929929d066ceeefbb7b326c68fa143d914c3a0f00000000ffffffffc55c807e36e789c7d99a68bd609c07988b31c5a5b8018b932370239a4f0120f12900000000ffffffffaf7e7b2867ce055e062fc9b792f09390cf560f80f1623e67858a9a83ebd9e52e0000000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe43b00000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5933b00000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd54400000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd54b00000000ffffffff5d167ed02a9edc6ff61145e5fabd8371a17cbb82e35b955dce56ed962060fdd24e00000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff52500000000ffffffffa7b276078068fd9ecb2eb3aa509aa54e0d0f0f5c3384f1ff8e16d59c044a05612e00000000ffffffffb184dc55797eae1204b143580251e97471c63d496d80ff1b16f5dd6c5fc919063300000000ffffffffcbc845d478686fddf2b2f62387a5dca6e9268248f720478e62143c98b43943ae2100000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f4e00000000ffffffff18d5034848db7c17cdee4188b95007183ef8235258949e7b836f0deaa5b86c6d2b00000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c823d00000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5934200000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5934a00000000ffffffff3a0506fd8904f5652f817b5dde9b2a78e7190a2e48863ed202534faf700e6a023d00000000ffffffff3cfd990a9ac2ae70ea45eb4f3eddf47c43a5b32bdd6272bea91d8031a3325e833700000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd55400000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd55500000000ffffffff676e0b5455c2827e9a911bc08a0b553e1b6a4bf1030b911dc354608d0d7e1f565100000000ffffffff8119b30cbf5dc108410f5f83bf8e539196a9adf8c2b12cb69eabad6dd8b0fb703000000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab4d00000000ffffffffca9f80d72a8a7717953bda409305d7a84caae706f78d25ce77b9cabc4450d4d61600000000ffffffffca9f80d72a8a7717953bda409305d7a84caae706f78d25ce77b9cabc4450d4d61a00000000ffffffffd3eb78e1cbd9d72f0c02875d6eceaba5aab27ad42e47ebf2da76df7b8bf8487f2500000000ffffffffee9147049cb19dfa9f2c3d3f11f1b73ef56454e9e7471d4e73729e09fc1052ce2c00000000ffffffffceeee47525745fa02f43a5e835673831f18257dc0ff6c2f85e8383f68f1bfd6a4700000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe45a00000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe45b00000000ffffffff1e38f8447568ac1904a7eb718c00cc9815727d471340eb3bd82784a9cca75d4d4900000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5935900000000ffffffffa6e9265b6fafbe19d8221ab473f92197eaa02e2536d2928d8ce759d987f27f9a2200000000ffffffffa96ad9a7c04aff66e7894edb687119ff1d14cc57d24a2b4804ed3fac9e6357443f00000000ffffffffa9b0de6c63037e7e0482b6e2eba8c9935696a07484f7756213b1c1c329a83de05700000000ffffffffb99d4f2783e31268f550f809bb452a23fbb0c87703189ac60e727d0b95e6e5a84800000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f6a00000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bb5300000000fffffffffe51384fc608fe548a79eaf3c3833e87b79efcf6ad786d29695cca5ad6ca60595400000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd57600000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd57900000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f7000000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe46d00000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe46f00000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5936600000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd58600000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd58b00000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd58c00000000ffffffff5d167ed02a9edc6ff61145e5fabd8371a17cbb82e35b955dce56ed962060fdd28a00000000ffffffff719fce5a8041ae77a85373cbfe0d4e5db527d8445d6dd21e0586cf5e867ca4e74000000000ffffffff7bb9db477b4e629707bc0b128cf01161fe59e4da48333c301e52ac26ad1708454d00000000ffffffff8ae5e668b326c979e42e3ee928d1e811f4a79d870aa124be3d2c6a5c2a2b93a05d00000000ffffffffa7d770be9b750dc9af8baa2ec762b30e35ab385a196a6cb61a4daf06f0685e854600000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f8000000000ffffffffeada8c2aa0b0c884a2438fbcd30d762cb5c97f2e759e32d605728a2c8374e97e6100000000ffffffffebc7a21b598cd5c33811b6f649b9ebc7ee4b735e666c5bd3df78ca629b8397ba4b00000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe48000000000ffffffff0a2370d63a9dfebd75219226c4915d2e39885ba2676c94305bd24510cf1246207600000000ffffffff287c21f60b059c19327084e0d03e78ae2d9dcf99ca783e555dcba3475cbc38cf7200000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5936f00000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5937000000000ffffffff397ab6d0bcf0a508c999ca71e3960c4891c53ff43bd85cd79fe9eef4b1af351e5900000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff29200000000ffffffff5d167ed02a9edc6ff61145e5fabd8371a17cbb82e35b955dce56ed962060fdd29500000000ffffffff5d167ed02a9edc6ff61145e5fabd8371a17cbb82e35b955dce56ed962060fdd2a100000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733878200000000ffffffff16aa435ebde4d6bd1a1d7838eadb06b9dffa51a0aa57efc50579902ca80588425700000000ffffffff3a0506fd8904f5652f817b5dde9b2a78e7190a2e48863ed202534faf700e6a027e00000000ffffffffbf4d502f3f2d1c8ef4f0ab866d9b92bd39f314f330e8563bb021c5ecda95d1645600000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe48c00000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe48d00000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe49500000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5937600000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5937800000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5937c00000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff2a500000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd5ab00000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff55d00000000ffffffff63dee80992565420c62127f05c3120829097677edf3e9bc609b5269030745bea8d00000000ffffffff9fa4207026aacedb862dae09db103ebd00591fbb8775a26da3d2c0b9e98588fc7200000000ffffffffa96ad9a7c04aff66e7894edb687119ff1d14cc57d24a2b4804ed3fac9e6357447300000000ffffffffe0cc8b5a36ea5d5c37feea8399431a3842f2617f73683d4e61da4ef3354e67648b00000000ffffffffeb663bf73ee63015244f72a17f0b1827cc7dd8ffec226012f2a03887b5c151158200000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe49700000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe49c00000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe49d00000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe4a200000000ffffffff16ee61528087570dfa1b0093bd6634c4e4382272bdfc1b507936933f25064b718f00000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c829600000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5938600000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff2b300000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff2b800000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff2b900000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff2c600000000ffffffff5d167ed02a9edc6ff61145e5fabd8371a17cbb82e35b955dce56ed962060fdd2c000000000ffffffff5d167ed02a9edc6ff61145e5fabd8371a17cbb82e35b955dce56ed962060fdd2d100000000ffffffff75f19556475dc48b6f42572d93dd8a01fb396b382def66b44426ea874dcf9fafab00000000ffffffffa7d770be9b750dc9af8baa2ec762b30e35ab385a196a6cb61a4daf06f0685e857b00000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273fbd00000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bb9800000000ffffffffe92f25fb4acddb3beebe71313dccb5da1b61d4dad03e0e2d4a1e625cee1b5b9fa100000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd5d900000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe4b300000000ffffffff495f837c435562b85d2166c5dc48738167820e3029ce2afe40cd356afca74bff7900000000ffffffff4a4b7f908d71612bea503dc5790a1aa1897a351236241427e80661d56376f7249800000000ffffffff5d167ed02a9edc6ff61145e5fabd8371a17cbb82e35b955dce56ed962060fdd2da00000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273fcc00000000ffffffffe157267e01e56ada7fe2dc25cd3a3864cc996675cb1acc6d1ff21850f122d7d29000000000ffffffff3a82258df2afde9111a45d8b63be0dd57cdfbe85c3ee53cc3b5cff752fcfe1567e00000000ffffffffbb58af9dfff88def4aed03e9aedccb29fc54c7b31b1a55f92d5c0fb42f43af74bc00000000ffffffffc71060d9120606666d101a94355f5e5562f7589d858d0afb8e29e8f1d56095638000000000ffffffff18d5034848db7c17cdee4188b95007183ef8235258949e7b836f0deaa5b86c6d5d00000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd50201000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd5fe00000000ffffffff474d3c33e67e286c9a946f200b423a34974f8742340aae2f8ed5cfce98e016489900000000ffffffff48ee5dac8a8c368d96f3405dccf28261b1c5fc30bb6454e75d7760cd86631d335f00000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe4bc00000000ffffffff18d5034848db7c17cdee4188b95007183ef8235258949e7b836f0deaa5b86c6d6f00000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d593a500000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d593a700000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d593a900000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff20101000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff20301000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd50c01000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d18638b100000000ffffffffa5158d88a683b161c608925539b6485b98bb254a89c7749d3d0d09c14a0de5d38800000000ffffffffafe806308b9a149b37e51ef51ed827e1947b8d5378fa8709ac3b66e247dc92908700000000ffffffffcfbe23902ef00cd017312b488a9399332c09afea70288bb3bbdcd60736abf698b200000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273fef00000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273ff000000000ffffffffef69cf726b4545b00fc5977f07670ef05b49bbea2253cbc0a4eaf8edb4691375cb00000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe4ce00000000ffffffff18d5034848db7c17cdee4188b95007183ef8235258949e7b836f0deaa5b86c6d8000000000ffffffff3a82258df2afde9111a45d8b63be0dd57cdfbe85c3ee53cc3b5cff752fcfe1569400000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff20601000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff20801000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff20901000000ffffffff52a5d2210a9e60240189625454cc6cadb533e13398e00f5350a476abeb0d18305000000000ffffffff859de7f98832f580c55e6dc73a500f331ba1da91416b3f7fde8a63e5addc0c478900000000ffffffffafe806308b9a149b37e51ef51ed827e1947b8d5378fa8709ac3b66e247dc92909a00000000ffffffffc36ff56b1fca28e486075409f6af559e743542e10b084af0c6935d7578c1d339f700000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273ffc00000000ffffffffe157267e01e56ada7fe2dc25cd3a3864cc996675cb1acc6d1ff21850f122d7d2b600000000ffffffffe479e9b6f151bca7b70acacdb203ff3265a6d40d1871da9fd3a26ad6f0e257a4c500000000fffffffffaadbc0767cae1ac62171b79ea9a41509c270a3ce6b852ce0b887bfe6674c8b3dd00000000ffffffff23345ba8686a2607a214cbe09c23a2506e371434d19c3ed99729467c8feec81f9000000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd54501000000ffffffff5d167ed02a9edc6ff61145e5fabd8371a17cbb82e35b955dce56ed962060fdd23101000000ffffffffca9f80d72a8a7717953bda409305d7a84caae706f78d25ce77b9cabc4450d4d65500000000fffffffff7b69c664d03c3cee264d577a117cdd32f4cfd1459d383d7d864a077d91188241501000000ffffffff0ca41c0cf8b47738eb1097aacd4f6baad198115b568faf4a0c5ff2a6f3ee4f750100000000ffffffff18d5034848db7c17cdee4188b95007183ef8235258949e7b836f0deaa5b86c6d8900000000ffffffff23345ba8686a2607a214cbe09c23a2506e371434d19c3ed99729467c8feec81f9400000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b543276d700000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff21301000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd55d01000000ffffffff52a9e25645e115a1a0cc50f7cd1c19c601d1de444dd657732576323c21b9af600c01000000ffffffff539e7cd447633c0bb22ad8ff13ab42d78f28ff1c11197019ada3a9f49e2bf90fcc00000000ffffffff609a8c10249f101a7b7a2af8c2fe3aaec71c419d13bbd7352728fbf4d2485cffa900000000ffffffff6a9e0bca63d7b8e8ef784c71be5bda25009653bcc146fe7abb64d896ad86903cc400000000ffffffff77a61b3cc8a11f619b6742d623580cb66a229f9eccec2b50c28a568fcb138476f900000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd73387dd00000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c82f600000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd57301000000ffffffff5d167ed02a9edc6ff61145e5fabd8371a17cbb82e35b955dce56ed962060fdd26401000000ffffffff8aaad72e0e21a17882a1d77b966e3b8005d5650e87a93129cc6abb76f48dc136c400000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab1c01000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f3c01000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bbfe00000000fffffffffd0b83fc6b300e2d4d9c5bf170877e6773973481e815fa9962bb4ef6c060d6b9b300000000ffffffff03ab23ff801c8b9cbdb6cabb0c25d1d58e416d53bf31c6a5480a4fa9f15b169f4d01000000ffffffff0a2370d63a9dfebd75219226c4915d2e39885ba2676c94305bd24510cf1246201801000000ffffffff0ab5e930670c2d9049876438feb32b3a0838486b996010b3f0adcbb0b7185f19d800000000ffffffff10fd55661a3548e8a9cd06ff6d49c5b75f550129e4fe55a6bb8780d48855b0e5d200000000ffffffff18d5034848db7c17cdee4188b95007183ef8235258949e7b836f0deaa5b86c6da500000000ffffffff18d5034848db7c17cdee4188b95007183ef8235258949e7b836f0deaa5b86c6dab00000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c820801000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff5e600000000ffffffff63dee80992565420c62127f05c3120829097677edf3e9bc609b5269030745bea2001000000ffffffff8785fe792f53f4e922fbad62ba0223a79d63a28da5175ab3f4e25fc0b889ed590401000000ffffffffa9d6096b560ca0676eb23ddf8a1c833b04d7e040cd4801c5a6581eca45633b58ed00000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab4001000000ffffffffafe806308b9a149b37e51ef51ed827e1947b8d5378fa8709ac3b66e247dc9290cf00000000ffffffffca9f80d72a8a7717953bda409305d7a84caae706f78d25ce77b9cabc4450d4d66a00000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f4601000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f4d01000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c821801000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d593ea00000000ffffffff3eb26340eef0d50e58a84f33d6d677d4d3eccf71e3446c908d45c9b16e828cd5a201000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a17543f300000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab4801000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab4a01000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f5301000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f5c01000000ffffffff24b4a25eee1dd8a953b4817c7db74655768a69ecdcf169500bfcb5c7dc48b5aa1d01000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff26101000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff26b01000000ffffffff3bc0ae6458d514e2b1976ed33c954ef79d6fd7ff3b2ccf7fc1387eeb802eeff26d01000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d186380301000000ffffffff861b9738bdb2bafa8feee4d8441f19f24b2af41e3fad92e3036c73390c4f303e0901000000ffffffffa2387ae4f0357b617981deb0d804c661bb8a99d841f9c167e1f77c3ef409fccd0a01000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f6d01000000ffffffff247b96f937c6e5c400a9a99c49418f255ca3818ce0808e032895f845fc648c480000000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe41c01000000ffffffff09392c634bd91aa6fd985844743469256bc0b78b81b99737d99f8a749452ffe41d01000000ffffffff18d5034848db7c17cdee4188b95007183ef8235258949e7b836f0deaa5b86c6dc600000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432761b01000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5930301000000ffffffff32b942d1a7c5287fb9bd2807bc184ef469c10f1deb0008bd8805dca71766d5930c01000000ffffffff32c86792ad2948ecae45d9b4ee5e8fe202df6d91271c3ad49291ab1b9eb6b7474501000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f7101000000ffffffffdd96e9c26c497f9f5dbc75dc0bfe4c503381dc0c3034e8ee58442030d8ff273f8b01000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733872601000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733872f01000000ffffffffeada8c2aa0b0c884a2438fbcd30d762cb5c97f2e759e32d605728a2c8374e97e7601000000fffffffff5c1597dd1aaadbc548d68040d3d8274c4dbad4d33cd5bef436e4c0238a1083dfc00000000fffffffffd540100e1f5050000000016001402a6c9167b016dbdf1ab540d755042997de8f47300e1f5050000000016001404c4f3bed1555443a5063418bb95b65cc9ef9bd000e1f505000000001600142f60eb1d8b48d1261f7b68604fe12317e810566800e1f505000000001600142ff1f292fbd1e46f7d4efead3fb84826b1a6d61600e1f50500000000160014ef2f9747fa9962363505c4172584238a28f18a9700e1f50500000000225120aa1549fb58cd2bb736e24fd55ec6dbf721ccb4c1b53baf289e4e8147b4d798070000000400000000160014194b7d089410f7ffa063fab424411fe2a272c55d000000040000000016001460e61ae2120932cda2cd24e01204e9bf047ea2a400000004000000001600148ee0d2e06b9ca06220f9c3883100295ef4c1c7680000000400000000225120401f71dcaf0148fd043a0b9e9f60aec71a80d7b0163c16ababf1d17e7b9010200000000400000000225120bdc52e8de7f45ee340fc988e379e635e5f504a80c5732b6981387888a66ef040d6e4b501000000001600141171c80208469c96aa4d10072d950fb4b419fbd0d6e4b5010000000016001473466e30e1840f0912d28f65311f3fe71d140532d6e4b50100000000160014b87376036dabf8b8d3b897db5f4e6ed4b9da7aa9d6e4b50100000000160014d6a7ab0b6ea7e2544623042e15cb07e2387493c7d6e4b501000000002251202d02a17aad00a956b5c9c03ee648339b401f77915b18114b9321590a12e3e3ddd6e4b5010000000022512031db62a72121b5b54def20a1a97863e26192677c6bc7c6c944e343e2037537f1d6e4b5010000000022512031f28cf96162b65f18412e575d782a4674d653a711e12bc66e3a9ddfae22ed5cd6e4b501000000002251203eb94e933b73aabea9a79f33ddee88a350ec62825c3a1ab4ea7f60f88c9e3309d6e4b501000000002251203ebbb9d6488ceb89bf3f572dcd82bfbace5d50d23ab2ea82ab711e8ec66140cfd6e4b50100000000225120804bb241d2f7b18101270412563fc01fcecef6d563531fa898d01cfd437fd506d6e4b501000000002251208245cd27ee40af13e96669c7709b97cdad23d3b1ccf7d3a848ff2c4c341edb10d6e4b50100000000225120968ba9e9fe444d2d75fec38d1a018ab4f032ef83d8767bedd17af2862a3aedb9d6e4b50100000000225120b878b473fbc85e77f7600a48635a4029485a596355ff6589b7c0452e20f6f466d6e4b50100000000225120cb3598e4df607f80d68c91b2a6c3f1b533541556aeb51650a872301248395d77000000010000000022512008c211c9796cab61160a9c3a2e3ba60d913895b2bea005262dc39a05741039f700000001000000002251201b850379fbd8c3f4aa3b5287d04f9fadc65e742346d8a00dd9bcc9aad84db833000000010000000022512025bf60238b0bfca7921a38f46e10eb3b779efc5e85f121f67716b5faed7be1c300000001000000002251204fbe2614c0e3a794a4d22e4413b54c0b363975f1eea7389a39be6f45708d2fb9000000010000000022512054d5967311944a0895e7c3652af2b193e3cf530ea3c99a90f6af7a8b9f808b8700000001000000002251207b33f3aa954de2fcabfbc3cf54a0aa21d9b3f1e4d133970cbf6458d9c87d87e0000000010000000022512087762619916c63314733b8e5fdfd2384e67282be026c7f5438e753153f2eb73a00000001000000002251208fbbe4021e1513ea54cf26e62b3eee76a76eccea83ca2e6e4ff92e18f5593046000000010000000022512093701bd2d66b6f506ba95a704b1d585727f621caf63b30ae2fc954c380fa05570000000100000000225120bc647b5e768c2fc3b83a4314ec4467789afaf399de5e1d13c18937ada48e1e5c0000000100000000225120cc8d606df810ea77570cbc3d74b0bccf9729aa21775d2684d5c420aecc8d00b20000000100000000225120d164a417c98d6fa294342adde2460c76343512412ccd5bece5d3d0caa0baba1f0000000100000000225120f7110328a468ea26d453645dcd45fca5d67010d63a210aa965f36957ec1ef20b8096980000000000225120d4b64349134d771aeca47e7354cf809e0e0739eb4d2e2e1f92d7eb003328e6eff2f69100000000001600144fdca0344bb4b12a4f551bf54960b40c1041bd9cf2f6910000000000160014965b6550e1463cd857e44055f5e0986d637aff80f2f6910000000000160014cafc84e076737e84b0490e7a3de6d92c3db3f5d0f2f6910000000000160014e2b6aaa92ccfe09f623ff2d657d65cf5ef145c2ff2f6910000000000160014f608be333f54019540d0501e1bd9af31ee130b51f2f6910000000000160014fb8f87956a576081bb022e4f304368576e37be0cf2f69100000000002251202371524ed5da8631d6738138d6751990a21417f7dc3d88325d98557b1cbe6727f2f6910000000000225120403795a42ebd5634aded648b5e15467e3d806aef0cf03d6c230aeb3e70a81136f2f69100000000002251205a25b4ec98478449cb97a98ead32f1d587858a4622ea63c78f88892f747032f6f2f6910000000000225120993cacf16e945b05e68272d67c47ff82f8d181c2d169a03af586a0077b999ef8f2f6910000000000225120dacb11a281f72654ec6ee9634fe3846fe867937a07d482c6f71fb1f12b9b4efcf2f6910000000000225120eaf30c923e37bc7b24b98f3c3ce1ffc1e12cddb706d50218ae5636b43e14e0d0404b4c0000000000225120185a9763568c39887d88dd4cb5e94dbdd4f109b25d08ee297c1114783b5f7a67404b4c0000000000225120256c06d74fc1275a1fe3a88bea2bf25feee7599ac4c3b1eac4b032386a2f1b36404b4c000000000022512028265263e0f0d85b2c7143d3f9683385609a12952b30d8d5f8aae36eb069187b404b4c00000000002251203ffceaf6556ebd07ed106155f185c6c8fcfb40c7c32a0ada305a4cefdac4faa8404b4c0000000000225120443ee0448e0b5e51326f7ba85771e1134452c0caac1930f571435764ad62e1db404b4c0000000000225120658b5e87f06887586caaad90182f1a1415efbbbbc3d2d9036ad1f5fa5e966e20404b4c000000000022512068fe49a558e6a2ad30a341012bb32a1b32df731adaa2690f52ba4c8d49a277ac404b4c00000000002251209bb7df9bd3443bb78fa1e0e94b0438aea9bd65b7044e34c440043f93a34ad5af404b4c0000000000225120a7d908be0c6af638918698de93fa3d4f997c6092e2774f3c1adeacbba118c7da404b4c0000000000225120ace64e6ffdf9895e9e3a9a04af36f30bb7f407484015070cd05b43c6d63f6337404b4c0000000000225120b0a375a7311dbbb652b78e06301006cdb6f461b3847378ce69ec9b69f6e443cd404b4c0000000000225120da5e180a64c1bf3fdc03e8d3c61a4360a4e9c4bf01e95a7fa38185d56132838e404b4c0000000000225120e14ab901af1f01a53bef1ca6402046fa631ea04a4e446d0f0e5041318dcf67e9404b4c0000000000225120ef3db6553c9f2363fad637aafc49dd85c5853fee481a1f4e2a0cb79094d57642404b4c0000000000225120fdc4e49bedf4e488e20df060d49b3745c2b4873928c9688429660ee20695956fa6a730000000000016001449d9e359ffd689a8ec39ea32fc4f7f9c8d6ec0cfa6a7300000000000160014cb94da23b9b96614d1adfdc9d1657b6e75fb838ba6a7300000000000225120544cc8a75aeb836a7fc664a8113f43b4bb3ffa6179b3e78cc12e348a7f97df35a6a730000000000022512061579b0d918c8728be3d079c2aa53797c75336174e32c27edb58b91347423222a6a73000000000002251207c5a13773fcf954d0802c2d145e92c7fd0b6c70340f98e78547885c3ed3700bba6a7300000000000225120ac136b8580e662340c18a7bf56655801e3953bc09aa7c3f61bb69b2c28ce30b9a6a7300000000000225120b794e8d0a5dcddf030c6355516dcc9ed9be86fdcb1d4908719eb7180cf950d8ea6a7300000000000225120bef1f7b09d89a9e4e8da9631eec752dfe2e6849005550f126cbf713749691b2aa6a7300000000000225120c22f7ef82d516aa27e2fdf81ff12fd15cdadbd918ce0e30cdda7d398031769aea6a7300000000000225120c596c7882dcc76925841544012daa9be66b43a19b11ef49f4e153de059a74567a6a7300000000000225120ce8635083c0202047d83c75c5adf35edc5c80ecfc4acbe4ba4331958b50f1c84a6a7300000000000225120d91bd8b21fca3e00be44db741df796b28c26064db7954bc671d7a041dcfb7902a6a7300000000000225120da74bbfaf21b313e6003baee1293a5fafa61c43071ee61cf17576ccc3a894661a6a7300000000000225120e6e5d3b1eec9679a84ed373cfa38ff6d2597718d07203a3e2ebcd1e1927a6040a6a7300000000000225120ee149a1e84b59b65db14eda77350402adb53a3017c61008643374c96e6ed9894a6a7300000000000225120f9d43786e9b816617ab1a289ed76080177a04e07efb6dbea3e71ac6f503db2350000200000000000160014e86a1b20c1599079990e9cec72456f822f7f3af400002000000000002251200977fbb00c132aa1b800ce839b87e8a1437d2748d7369e99b386533b9ddd1704000020000000000022512015cbe226de8742a57ff16b91572babab8bf69d328e70475e63d908737a55d68b00002000000000002251203cb0ca96baf62715cb0733338e35dcb89d8fcd33ee10a4fe0b14e267b7457c8f00002000000000002251203f0e7c23473fc15b14951aac4f41a0c207bdf342d53b026dc54f217a81b93799000020000000000022512040ded73ff5c0e9ad5462b4c454b7b522cfd85f4961429aaf5fbd6e768a12928f0000200000000000225120476bcf1e63a14251da869cae4ec8dc0c72281f595be7736d07703886406b390c0000200000000000225120491b4f077a8a1d2a318b9ae7cc3293b616ae18cda409dc99b748b2a31a7f52f4000020000000000022512056c14ee58495d3cea5f86c46108675716d1e96d2c09bcd5f7c3affe2e88bb63f00002000000000002251205bf70793e2b2c274f3bdb80bf705e2a5c9879c9058d22e3becbf1d961b2d60e800002000000000002251206bc307ed8c560fdae6979c1d07a197c65a9996dcc9a94fc919df8fb10cf7246800002000000000002251208b0803375a4fe88dfb96c9bc558caeea6f220bf2f22b32b2e3500d9181abfb860000200000000000225120ab7d5c9e55cbe31460b13facc8d1d31f80ef8e9aced0a41ded1d1510eaa4270f0000200000000000225120c4a35189599edb3c2616f9ccaa0e18712d1493697ec5c6d318e0a0db1e88d2060000200000000000225120cdb34d16c51121d8f206710108775bee2ba4f955acf6fdfcce3ba53e767f0bea0000200000000000225120ee2238b49172b1e52f6ec380fb9b2fe111c9b07ec1b9191133544ee2844522c80000200000000000225120f12256316f4878f0cd77495f6a13055f3a203fbf8382ffbb593e24729e4942ece2371000000000002251200d757d5fae9ea17588e8e0760a5e28dfd179b0a7695c20f0e218a29b8e136033e2371000000000002251201e36ae14d80907ebbba50994b7757377cef9452c20bf15d995f0b185624c6df2e2371000000000002251202c75c307b4de2a18e9444aa78153eeb4ad99ce4b02ad67d78fa130fa4793d707e237100000000000225120333ff9e628a7bd019052e285b228dcc625cb64f70a54089c48f0cae90d7a897fe23710000000000022512039cca899ee7ed98a59f78accc3d2dce2205633c0fa059cf7da39d7a61198d87ee2371000000000002251204324febb3bd2c51a9d6d9d7291fa952354818dfad86806f83de16536ea64ead6e2371000000000002251204cd7c5dd8be07669dae0853af8a01fe60e6e86de3e8d0c1d5ef6c681edc25ca0e237100000000000225120733ec5f3efb82ea945a8c0bc1e0ebad2ee423b6527b8a0f05151c6fdef9bf375e2371000000000002251207384bd8033c0c1add9cb16141d42c10bf658394fc02576759685e9b8bf3c09e8e2371000000000002251207b8fd42a15189c26545c13df066cfb3a15ea7b6210ce8aac6809058f1012d638e23710000000000022512087c22bac990cdcfa1790b7fc9157fb3de69026dcaafa706a31412e4f22c72852e23710000000000022512087dcef9026b494902f6cd4a31a71f33701a234c6838d3528488e5023bda09cece23710000000000022512096863994d886dd51206bd14e5dcd02d0b5c6d3590538aeeefa773041aaa892b0e237100000000000225120b9107508e73128522c02cf1669534886e59fb6bd12ef3e5fc2e42f0b3e79648fe237100000000000225120d779b40970b5b1bccafd15df6fea99c3b8884d6b5bcc78c53ec8f7e321ddd362e237100000000000225120d8baad7f9a880a2fc3ef3666855765f50d09c1b78857e415dfded029795ead3ce237100000000000225120eab26dc24ed1572036a54e913f8c7840c6c90eaa24dc2e496c50d24d3791bc4ff11b0800000000001600141320fdf12fba1f439eb2d77009a254b636767f38f11b0800000000001600147459ab2f8ad82693aaf960ac130b82890034b912f11b08000000000016001474a9ec68af5b9a1c4a05a759d6c50fc57151426ff11b0800000000001600149d8fe6cd5dea9a50d5d34a69b6c4edb103c25062f11b080000000000160014acfeb115133c68fc8e6d6150a2c9bdbb4f88b65cf11b080000000000160014ce237f8f33dbe03acac29dbbc2209fbfebad82a7f11b080000000000225120519d08d511987645b265745e25b04855e0abcb7b1bcd1b6eb00aa845fe3deebef11b0800000000002251205f590b70a0ee6285dce92284fffabeacc5cb75f6eaf4c791602ed32174075cc3f11b08000000000022512077e5b194bcc20da326c50a4a9f4cd29312775f0879c354838924e1b5ea2d5a01f11b080000000000225120bef290d0347129014cc3bb250b54b06a892e52141e8dd0811c4da8029fe0c76ef11b080000000000225120ffd9aed894b39a7bd24d80f6c2790ccaa73e85b380b4582d7f1e1a1bea919f6cf667050000000000225120006448a632ff74d5a34bec6959277d933e059b1e984df4b95c9238eeea738ddff6670500000000002251200db7ae9d49b3d1682446ec10d42ca9b6c2945aaefbf190335597b160155a8573f6670500000000002251200e6cab70c7e5482afb481a749d6f60ff2522fbc23d75c1ccc978cb7bbd303bfef66705000000000022512013e79467bfc661694d828c120a6a994b6dd19d7f94fef2caa8e10e846ebabbf5f667050000000000225120168774cc09f9e2f8753a431bd40c6dbb6a4fa50e781f6f55d224fdf37ad090e6f66705000000000022512019207f09c58b300d7e4315590d220b796a19fd55e6da21cf90461e51a6714237f667050000000000225120273d7dfc24f7483afe048e312a54277d581a6fa6fced44f8b764cdf31c00a4eaf6670500000000002251202b7654c3830ee10c758f61dc098b0931ecca48363311269cdcaa078ef67dec6ff66705000000000022512030d92d7b7c71ab096a6c13e569ba3f3767e6958b81de523e6d7e38fb81fc9fd6f667050000000000225120401b2780995b1029e9314b252e3e2ddad4e6d58fcfcd934df0e288fc8a8ca37df667050000000000225120464a7a227bf5ca6f6f208b17772a8bb80796627e58f0188eecc01bfd34346de2f66705000000000022512078313f6fa968bf8315594ef0d22ae6d6861a2e3bc899409ec3ce544d8155d1cef667050000000000225120866625af6dfee9d0c84f0357caefc47cefe96114910ba75027e9371cec77ddbff667050000000000225120974616cd479f568881958cc4012742d5428014b1b5d0f5976f25a2d3b5f0f32af6670500000000002251209a070e6712520eba92c5a5428b6c0f7c3a5e5d232288f6e8e0cde0baa8c1eef1f667050000000000225120a5936f8eb163c5c18853948e9a3081c5548fc7365ba207cfcec29320ee1ea2e4f667050000000000225120acbac33f14c2610dde54e0285d52e03d4f941b133e4bb989361ded2afa53ecc4f667050000000000225120bf7176892080a393f4df5b9688b44c3eb8dffda529ed911bd629fcdd792d795bf667050000000000225120c0517c5f561953b8d4afad5c0a158cf64c7bea88c51a1abadbb456126e284b2bf667050000000000225120c277f79c26987ff7e4d16569033eb959c30971b5c918024950bde6d855823043f667050000000000225120cde08a1054a3bbbda2271f56072426049f55b805c4447c628d6b6b6d6df206eaf667050000000000225120ea04751543828f9aa0be1017b6ba304047d34f97b5ab027914ff0bb46c556a55f667050000000000225120fb9e9a302572c36e482fc2001b8b1b4b07c08e457d212537cad3ade4509f9f350000040000000000225120074b16d4b7374c41eb2265ff48beb17516367fd686495dab4d5cbcfaadb3894800000400000000002251200b91376c6b1c708de35787ef7410d9287682efc8bd01c09a0dae517e67025c3d00000400000000002251201e60deb7266a7929425c36bb0d2bc5b5a6e136d66304a9c8d2b9772aed121e2800000400000000002251203bf3713972498e04ba6a198931f9b7f2dd41567f283cbb31430a37dab769db51000004000000000022512053b9e5956a12124f9711173ec134730d3d368df6301fbab6e18ff08a70223de40000040000000000225120645066394ab0461c18a2c9581626de1d92ae67e542213d8d8754cbd32cb06e4b000004000000000022512065c6a73fd31e534f148329df944be40aa1a6cf366bcdce9620feeed2c65ef6d5000004000000000022512070a5c522d3c987fb45197ae07383c418154c0db679567c6d190cc338812d7a5300000400000000002251207cc91e9b12cd11d559d507c1131ab2221c6b4c62d5357f1d9d73fdbdc9ebb0fb00000400000000002251208507b11df73e1153bcef63559188cb2213d88860ff45cca7d61fa92f35ffecf900000400000000002251208b19a54aca8a3fba4606bb3b50939778109562e6cc8a43343099c110cc5f6c7100000400000000002251208dab1d6a3889057b3e859ae94f451d95213a5934bb5af60455d733d33ddf2436000004000000000022512090a29c0e8b67029dc8f8cef3306c3017dda53997750262fff2dba67472d8cc1000000400000000002251209a031763696a41f8a58398f4eb7c57c399d630a3b84690d556222bc0427772980000040000000000225120a54057393da5995b2cd00708a1a2dd7417ac20b1d1c276ae69bae09a299296d30000040000000000225120acd3a44eccab08c97e4fd19731538af9f468153dbb582264dcd15ed7cd4840f80000040000000000225120d38963ffc00261ed67d38eec6452e79c4aa8f28af880d1f4e487d9ac99f7cb730000040000000000225120dad2115af91bb4436eb1e1a77605b470cdc26bfbe294de8272263dc141a7442b0000040000000000225120e2e74651b478804df7c927841fef9d306bcb492f83c3809ae61a78fe0db9ec360000040000000000225120e5c951a7c8f2efc26e99ad6a0488652f5b318f1e506374ab71ffb3f3596fe39d0000040000000000225120ebfd4fc0847f16d62639cd6c01c7e37b4f86a4ffdf8a6396a6815292189b864e0000040000000000225120f69fb5969b313075634d77f2154a21bfc1b50369ac5feea7e4878c3c3544a6d00000040000000000225120fdc4c587ec2156875dec15677e3bc7f4fe9919f657fc56adf040b570cde1d2e3400d0300000000002251202020704ef98f7d040cd2e4489b761f63f545efa878ca6858ee24a8dda138e378400d030000000000225120236c82926d8ffe4a3c1267ee610e07d3bf035214584250848de3b1e23fe2f29f400d03000000000022512027588076348868b02d306319fc275bebbe416f153a52dfecbd00e0098e8c2b54400d030000000000225120317fde2811e3a84b606708f27c73dfbeb4444ac38dcf6bc52542aa04c32494e6400d0300000000002251205a9321ad3db0fb85a351eb34c37e28c2e5ca7cb7871b2d28d761aacd15f62096400d0300000000002251206041ee9e4f37fd952b7b95766709c8ec1aa0c0e9fc122516d45c0dc28992c7b1400d0300000000002251206fe7223ef74724f6cec729e122e01f841d4d7ff64ecc0ea80b4079180e02abd6400d0300000000002251207dc77c892e8d5f9693195fbd493e9b053a3820b99b2a6fcd1b98fdaa1a1e9297400d0300000000002251207e1ea715d02ecf9103928649dad73aff1be18c96ac766510042d456495c36b5e400d0300000000002251208cfbc135b574255822002a31d1983abf271502313c097831ed6371431d2392ee400d030000000000225120915e7f6ca943a14bf72ad4053aedb2ab34b06861ded15ed728e43d634e4db725400d0300000000002251209417dc19cfcb828554b282bfe4560037720233513ff4d4a32313733b11eeb376400d0300000000002251209ba0857b17d945e14b20620a0136f83693329f5eda3dc826f63daf41933b6b74400d030000000000225120a62de0a1b552760a5e276461bdefbb00c5cf7c84bb85b38ceffb9828cac5a6c3400d030000000000225120bfd1de3c17fc1506d151949e182a80066ebaf3093d9d290ce5335f381e0af06e400d030000000000225120c0858735fe1a1cd6ccaa0b64f5a64c806f1402686492e8cb6933baee39c0a456400d030000000000225120dfc459cfca6c4eb8538d1d3a630554ff7b89c8db5591d7334ef8c8f5ce8de3f3400d030000000000225120e583e190700542bd1d32a1cf0d962b267f615f3c3147ae88c8a6a4ce5bbcd94f400d030000000000225120f41e4fc22cfb0bba134e8436194347e465cfe229e94893df316888843eca7f43400d030000000000225120fa5aef8fc437498697abdd339c29683c97dca9c1c083ca2fba76583a415821cb086302000000000016001463f69205f598406bbd1679337913b0390051eb7a52cd01000000000022512044b5f9d36cdd67dda758af922a0aff19919c341a3fd099f5d07cccbace5a9aa852cd01000000000022512069124314ed1878ae341e85a39e513bca80606139b2be9a362486c12241c510c352cd010000000000225120a108177931e7c7dace3d310eeba6725f01bcd03404c85b8b040ec2ec21bea65c52cd010000000000225120a2856effecb4cc26ec7857bdad0178f0310b26f4c0678590b6337b25580adf8b52cd010000000000225120cabaf94308a184a78192d795c1043bf01173564f9f79adaa9ee13d17acf9b3f852cd010000000000225120dfd75ce6d335d348c8341c0e851b452ec094e377c09af652a5e72fe3cbf8203a52cd010000000000225120e0f2857dc894aa52177d7f6f179cb348f7125068be792afa6c022d2d681d2ff252cd010000000000225120f3eb4c3e8b0ed06c8006971e32d1fe0c122133c881c1fb2f764246972ce8a2f5a086010000000000160014763fd174430f8074888a90e5f5903bd5c2edc26aa0860100000000002251200cb32c01631ee89c9a04def55d71cff01309c2393e38ad47097cc86fd767ae71a0860100000000002251201ceedbd0089ab702fdb4380050249ba60a7c1b5ff930d29c8988ffad24fbf1d2a0860100000000002251201ee1d1fc3823291b09b2e87d650c584d5de5c75e7bc200a573278f059d57b070a0860100000000002251202b6d19e8793da2630759822d57e51625a17fbb687f48d023dcc8bec72dab5e37a086010000000000225120382e0cd1b3fe37bfa6bee49584da6d63e8c9e776297884732b2bc37686c8eac4a0860100000000002251204486e6ae99d0441f3577b1d91b9cde2937d4010e3e8a5a9cb2f276e44523eea1a08601000000000022512070505175aff34b446c27c88d993968847ced66e2962f873cc5a47c5c3fd182b7a08601000000000022512076a057e65e5b5ba97dc9797f96c0cc8c902d61157f6b6b3b39ba614cac70a601a0860100000000002251207d915bdc926e719e9fede058e1a1d64021b5f399396287777d93aacc08c99340a0860100000000002251207e4b5b86b0866b2560477fdc413f6ce8c22e69b911c5d717b273f0feb769dd22a0860100000000002251208a14a8f21f0ac674a2d12722550f886e73ab35c6a0620dd07754dd17218e1b35a0860100000000002251208f4e9bc1f3d6553e8b8788c72e2ec161d6dd1f7b46cda99df82f0b9a952776c9a08601000000000022512094c99833c8fd79a62129f1d305778881a0f78f9d656becbba68e63344dd46183a086010000000000225120a39eee18a96ec6a722382edaf906dacdc698f8167b54ea07d7c1a2fa18f81203a086010000000000225120d2ada1774763125421147e018b7dd413dbc0fe5e4ee0b8ebca2579073556195fa086010000000000225120f47c81b98d2add060a3ad61fd184fb7c9388420b55523aeb64a5e847e1aa06c2a086010000000000225120f5f93aefe46d9737dfa67017dbb1c97264d1c4b99413d59606191a427aea42a8a086010000000000225120fa8c8388d7fedc69c7ada2107c72deb0f94d71a1abd85979f73d6c3b8a85289e0000010000000000225120148b39e7a30213f719c3eebb473e2fcc1d6405c7d9ba5ca6768eaf995e295b510000010000000000225120189bdfa6d2f957e3c9015f0caee73bd416c4a707b60d50cd2bde7b1039dc7098000001000000000022512021197e81be34fe11e1bc78fbfaaa205b9d7caa11f9b1b7224c60a6b7aa48238900000100000000002251202fad8641fbc614b26812454880b58325ebaca02064a71288bde9df282ce1d38f00000100000000002251203f2b07f514f5ce08ca31b59426ac7a0ffdd1006806fd8f67eecaf6314bcda75e000001000000000022512041cff6d6312a8f8fdaeef2bef06108799a5072bae0f4e1744621960d16e0f6f1000001000000000022512047bfa5d33ccb4408cbcba822600fff2f3833c17c087c56b3ddcd7d60379ea99600000100000000002251205e9aabe14dadf6b1d4fd3a60007f7232ae3fccc631fda4182eee3acc941b59d0000001000000000022512076d34e8e890f574b3d1ccb3781224edd09058df2cb57df40b8d751a61937ce6d000001000000000022512079f191cae586493ca36572ab527f8c8b509e886b89cd3fac423d009dbe60e5710000010000000000225120aabe06b41ff0a3e3f2d858c9db855809a996a4a1614a886919ad8cfa99e309730000010000000000225120b20b9ecfe4c872e8321613b0021a58cc49b03af5467bb0760e97db12e26676700000010000000000225120c83a30bf3257135edc5907b9d9d0f132097f3438b409ab9daf709d489cfab2260000010000000000225120d36fa5bf88659e8fdefc6d9505e7f49d5038c7bc6cf549254439cc70ffec23f20000010000000000225120df2bd63ffe1c0234bc3153e51c099c2d99048d0ae97b70da3c3a14662715375c0000010000000000225120e1186e2d39d941296edb82ef40d7e937db625bd062eda16b3f9784e9c4c9ca3a0000010000000000225120ef9e3295b09e6e2fed9aa396a8ab543af1227d80de28a3250dcb3a721a104c23c6990000000000002251200690d09071cee5cdd0aadb441d1b09af99021aeed684def2de980e7138ba14d0c6990000000000002251202058cd37c5a91e229b9f36b3e48d8068a00b01a261b6865557ecec01d7df5a86c69900000000000022512026577006195f52aaa94676e1ea8da119cae341d3f894a58a9aa7d32fcc8ff03dc6990000000000002251202c9b5e68ba541102bd137f4a4a9e160d105382a7fabbd6a0447a17f8676f3291c6990000000000002251202f717090f4495356f3c4c23e2fa640ba640c5b73ce34f406c37166e89b41dc43c6990000000000002251203a42913fd061dd3f12baeb82bad78042db43a0178b23c064b66eb46b88448728c6990000000000002251203fb91c7ad3fa924f63f107742681bdfa93fa8aff80837ef7350067c00c9d6b4ec699000000000000225120412caf9ee24c051adc58388a56096b3843ba8072192c1684f38dabefc7fe94c2c6990000000000002251205f7dadeb3922b6710251d99493fcf79c0272e0dfdde269efe095d30954333df0c699000000000000225120645e5a0c0df739d969269aed9d85a90f5f7e6f957b8b2ed4d59e494c3fc12b83c6990000000000002251207546f7a53127aefbd34c42c19694098e026bf8a44a9353e487bd24a93b787191c69900000000000022512076b0b3c2474047004ed900e4ef784e153719ebd812bccf51f498da35190cf70dc699000000000000225120b12babca066e1ec622bb248901115cf3e8e25af7fa9979358863b77826c6abefc699000000000000225120dc71e39dd5e49668fdc92fb386c03ba1fa76eb354ea491fd575cf9007902ff75c699000000000000225120e40b804bf05e35b2980f16992b936854f03d9f9ec7c146f98214a959a6b67183c699000000000000225120e5ea64a028148bcabd607905679d49ec30352ecedb6d5ef57b05430d38474fc40080000000000000225120119ef0efbb7ec7cf6bc12bc823ca9fedb61718bba95f63c79159c4203255855b00800000000000002251202e6cd09c7610af8423277382a19f06c6575102d809ab6d0716cbfd3e78ef41a2008000000000000022512031f549f6d14ef3d450155b22599285edc24412fb206e2addcbf4f86aeadf139d008000000000000022512051a673d7cfd4416535ca938f91695d452ed0bafdb48c9369e8e4d7e0edd79daa00800000000000002251205486f36b43da830990d1ab360e718fc2a8ecc0395398fbb7cdbc829b925ceb2d008000000000000022512071873dd995dd589b922f74a9b5c49f4443d462f72a720f34fe53e86ef75499c300800000000000002251207284e49ff517b0d4149f23959828436e63dcf2ca19a0a249b1e8661506ccd514008000000000000022512073ebee75fb8163ad552d9d877daf9697729fea4e7872629f4310b1c71d08168a0080000000000000225120771f8a6c025172cfb6309a5cca8f39aaa7474d20f976ae8e8c204b10e0ab9ef10080000000000000225120cf18f9d1a30c55336728edb2ce2cafd4d63ed82cc1af46c18fde314a54e5d7900080000000000000225120e0ede923591c74be1b4140ce4eec8cef98fd4895332a203175b1f6a41d12eceb0080000000000000225120e1855bac4940785968e6997f4fb8f4dd57f65f6df22f7cee8895be44f5ebfb58204e000000000000225120000d0d346615d54250179e49c4a73675c0144a621c6de8369823d9c2c3ea76de204e000000000000225120054ba46301c67bc3c52ff101258d56e68f4301414d922ea1be924ed050ba59d3204e0000000000002251200954d31ec0d2999db636debcfd699728205393ab4c0f09f6af80d1394946aca9204e00000000000022512013913fe1c39043ee2785cb730d47705ede0c13bb9bbd9d1657d26b752c06d69f204e00000000000022512020eb609f2db572160c30dc6b8a29befbd70491a563e625f78e33cb6880bf0412204e00000000000022512026a6d0091dc7d0688b37bfed4d0c873ca74db0b35ffece5a5426cc5742340ae3204e00000000000022512031f8f6d5c16492e864ef5c69d98a987a57f0fb0c8594b53368649aed4010d623204e0000000000002251203871cdd9705197abe1581babf3092d9f3c920986f2f7a4abc8f73fefb1a39447204e0000000000002251203958f53283468080f2ab7d901598638621630c1cb7cdc4aed6afb4f1972148c6204e000000000000225120400fc6764e8ff250d7698b42495af3ab620835afe858e5b24abfc76ef6b6f5e8204e0000000000002251204624d4fa628e2bcb320a0182af5a0ed759f8019b2822cf4faafd3543f87b95b2204e00000000000022512056bab61331fb3711c690c8389010275e7b0230aa44e91b905565958a44a2326c204e0000000000002251206ade94e85cb41982af1ed9c4191194eff531ab47d8bd32ea51bb16bbc28b7613204e00000000000022512075055b959ff1706bb0e68d61fb86c1355673ebe0ceda179479817121e854a3b6204e000000000000225120802e12179518fba50966bb1c34e1a3f54041b266bd86de0139373b6e26e4e8de204e00000000000022512083ea825d4152d7a9e55d4f97b53a6f706e370b164533e814cde79d5bafb20ea6204e000000000000225120897d5134ea6d5992506aa484fb79682c59beb3be1d9777bc093ddfcf1eecaf64204e0000000000002251208fd06d7618f65854fd1b5a674912418cb80eaf5712f0166de37a29efd9354fcb204e00000000000022512096e3d7f28777c0b0d36882d37a4c0abf74a9f38235567d6c660bf85b0e5673c6204e0000000000002251209e4f84c0db4e940d683687eff008e083eaa1ba083e4e68498ea545e44fb0565e204e000000000000225120ac057795fdedef6fac446d5dff98e450175b3a4a38920451488d9f663753569d204e000000000000225120baca66ad726a46715fb1f9c6811795cc1cbb27346b1d225454ece2ea8eeeff58204e000000000000225120bce069b6d333ca737300268f850ff2de7704ddabd3852f84839d7fdbd1148376204e000000000000225120c37ef6353b6f90c76f3d527fb1c5a4e79d2b29b06da6419b3650dc47ce4a1b8b204e000000000000225120cdcec366c1f3b8d6ee263676f436bb941b3941acfc6d44ecd7aeda9170290388204e000000000000225120d7c1cd9f40e3bef8b2743810a2d3d723156a1ffc95986cf0e72b4dd377d2167f204e000000000000225120e07a09938bece7b7542aefe3de586672918c5721b4513788a3b47b1360f19e78204e000000000000225120e47835178806ff302709a64b26a4f7da091cfb714c9d1685904f6f8b36b9df22204e000000000000225120eb1dea9a09bbdb5b3022c4642f8db5d6e2ea929c51cd3344ba66096c833d892f204e000000000000225120ec816708f5beecf1cb0314f74ae0f1fb255bc05fd48bfe50377dc848f1d3af4400400000000000002251201ab6aee149605b5a71d62b66d3f2b754d6064cad872a7b6f71c91d551a761a1f00400000000000002251205139e1d690ca4e33f1c5a0f9009199e0b00cbc6fefc713733833b93bcff396da00400000000000002251205ca34f2ce394aab70f73c69269bff3a7a1017533b988d7cdbe02f8755e56fec9004000000000000022512071a2571b9f753ce26c12d67739a2a9ac38d46a4706a75132a9419b1a841ff81600400000000000002251207d3c669141a49f0aad02dc5b29b717ede345ca7c496d97912103ac5386ea701c004000000000000022512087ff04d0fb04540b2d2ccb1112d2caa772cf8c2cf139ca084ec55f91a42e1bc90040000000000000225120a7e2a1e927c69aa1347ef48cf06c87ac11fef7206bceb07e087b191f2b1d18100040000000000000225120bf8f00a2d33613b8aac5aff6d4a94a33a55538ebf7d93758bc29347f0ed258b40040000000000000225120d6483422bd04ec1f7b833dde02354e44ba6e5c4badd43eaced196e1c3795eb080040000000000000225120d6a602b7382686bd7a33f086b2383b3dd9c4ba81915fa9981c0d99480e67db320040000000000000225120edfd2523b896226cc6b7562d8a589b9c30fa1ae30e101e8126c3a19085d5ba7d0040000000000000225120f67afda4369fad96df84422789b389e52a50f3396363e7c22712298130c9b72c0040000000000000225120fc56788fefeec77cfa17cf756a1fe519f79b3530959a314bcd0c3a0075ee355242330000000000002251201243756887e74bfa0160f26735b0b556ca0a2900a7c8a76de610ef7e93503f5a4233000000000000225120217acef45172510154483b54f18c7e44d345d44c4bc68b9d32def5fa6b01b514423300000000000022512026b24d46df4b0ae7db8b79c090dd8df332c29021392960a7e59e9a388db6e719423300000000000022512027630a4d8d8c42acc5c245373dad00494d6d99b67cec2f2df861c5a643718bc842330000000000002251206d10968a54a88a048c9b485e0d3a0c84fe84d72e9584d62053b373cb7415e8f9423300000000000022512074030288880cbb1a5202868fd0711bebb9cb7a1c774016e1ebf4f40cfaaf672042330000000000002251209402d47cf97e0e20598f6d7a311b6029c3648ed4458e88424a634c807c6718194233000000000000225120941255232f221165725aa8602fe87bd6cb990bcb831162c12a80b90fd7534e214233000000000000225120ad8821d068ba1e7dd7b3d707da6489fc854a9d318bf8a4621594f4d10c3240234233000000000000225120b17a572fed3698979ea76893ce9ff42eb18fdf6e4e8fdeeb1b00862ed9f8cd814233000000000000225120b2562977375043c0c3d96eb0a35058a32e4d35d60a5c1ae82884b19aee70eb764233000000000000225120b802bea4176adc9858de9eb24d23ab4aad69ba5361bea7a262ddd4c3c419b0ea6e32000000000000160014bc1706d33cbd22a73a3ca6851ee8710633636f9510270000000000002251200c335c5561d7ba2d735525cdeeed3a2afc7c9a334018a930ff8290d06136ea5710270000000000002251201ee4638218d232b5074adcaa8199de601171b3e60360e419e92be879976a0d031027000000000000225120286563d6ee7713f64d034c6aefa7bc631ec9ffc8ade77ed841837c39b681f66f1027000000000000225120512e41417c167b8cfa3e5f9e2ba12573838768153f5e746c4576c0bed71791381027000000000000225120535292c095b97549f92e7f735c45ccd96ed1e4536f5d153c8a356ff92edacbe71027000000000000225120539d517e378ec23ddce320dba16f3bdff7e2aade82c0c4fe9c2929574e20efef10270000000000002251207a0f8903de4982e913028368f0506abfca1bf955feeb56938ebaaf33f79d45441027000000000000225120878ada330a38c785ea2159e8cbfe3f45137f9e3dbfbb42a03e828a13d089c7f810270000000000002251209092f1609bcb52a5693040bcebb5e210fa368f08b02b7147e41f3b430a4313771027000000000000225120b0237920ae3a3fd546e901810f3513190a6225bae5397237349bc8317757524f1027000000000000225120ba4a989b35cb92591e7fddfd2d7de2cdc68f284a2144e28951084b97ae5610ef1027000000000000225120d4d538906f55d0d836b50442169d86328aadbe0982326995491d7b19aca512e11027000000000000225120db5e85ebff2ee8e83daaed3b052851c3db19a3b99423d4ce2888b1d11ba166f01027000000000000225120e9d4a1f19023a1c914b6472d78205023d3ba62c5d065ae4938db8244ff3411791027000000000000225120f4f70a73c539684f0a776013ecab31ff34f5d938624a206bf9517b8a8f51e3b61027000000000000225120fc6b27c6be7927fb32b9668d904a8a9685d20542ddff6d15761effad8f08faa31027000000000000225120fcaa1d8cc68dc3aa60e4deb1ba64280d8950fda225530a8376f1c01fc9f35dcb1027000000000000225120fe32e381bc72c625aaa8bbb54cec5702634c4fe63d6d4dc458d9dd08536859a50247304402200b4ebacf0c44639b997a2557e5b020352685fcff3160802e575f48068ab09a9d022033b71b5ae02a0c751fee0850aee1805f1fd89f781b5addf0f5b676e3de10a0d2012102739a5c1686473123f8b3528394e481d30cfdda97ee70d05899fd1c839804baf60141bc2b686c6921258e31ea7a8a98c9db8ff84bc67ea80e856e34e64b505dfeeb3cf3171b40f4a0b386a92d1ff79869baaee72978e7a7c05c020e45b273b9676c97010141efcd9bd3d0872e83687f3b65069f7ecbe5857a1e05726f2a2c6564005c6386447aa8834e8c099e8f33aec9af360d54adf38fa886996127b559880e24b0c633cc010247304402202220bc5ac9d60b5bd0e5b6f7cac3027977f27c29c0f3c06e3c9c7fa35b15ca3e02201fb8bf127a9e6262e5ecc6a7389bed87405f6544685a6edcdd9eb70c3ecb296a012103c448752db532013c5bc6eb8a12f36326fc43e4f99976db04d755f7054aef1d230247304402201573987063a23d5db6c7ece6d37c700d8763b08b73e4cf36444559a3d7f55f82022054173ae73bd95349f0cb222843fb3a749fd9e9fa62a5b775d084b0ec907158060121033b8e3c2ff4f37c4d3b4f7ace50250584734510bf4c799e915be3a6ecfa91e0eb02473044022017683a47147cf0d542b3525746d157ca3c8897f58ec74404c61a7d0ffc87d07502203a0d9e92a5c6d14a93c2f42a490a3c1a6900e6b4a7dd5403a92965ee0f44ba9d012103d21629a387c49ec295b4332492cafe7d62c6181e4757f765e69ec86da211c99f014100549c2bdc14b6a36da8f368c28cbbfe4003e68da2bcdb5fac4d593831550c29495ec8c479b4df19b933d74a27fa85f91e7a1bac88ffe6aefa24772270df4257010141eb42cb8c56736a10fad8b913fd2aedd36224ba41db96b0fb7fef1e35f65f8cf584a15d1b1580b5519bcb213560d1c98b13b48450d5b9c3f02de0eee2bb00ae1a01014194ad540b5a5ed92108deea6ede342c4cf0229c2ef23583d06fd3a8a88ab20e37efa57724f68bd790830031c2b5365e9d8d2c96bbe47a38705bd8c0705204df2701024730440220132a0164e2281800ca73f5f1134ae9a5ca8a2d99972697985c1597c22d6cb87a022015c6674afea69527f21daab0df175e1045e39bf1ddad05d40681e87e2f16802d0121023c06263f7796bc0448f3382c3288e5fbff0d6dcd14a3747612916e21beea17b702473044022058fceab2019646f55fa104fcb80bb622f38d8cc8f4998a22b7161c3d483714a7022037ed62dea60660fdca878beb6f1eaf6faf12d2970adeed7fa989f6ecf934276a0121027b61e963ad4162b0efca936ddb1d9fcf7e5bc5e591f5f79af13197ed310efe5e0247304402202b87f5f86993be06bb07a9801f64c67bfa9339ea62026676b866e54280d6b98202204de941aabed034bb44733cbdbd361e2ed28419dd50d561e29af72128f46a81930121028802c20eb363807105e2a7fb0d3e09076a0a6e693abca1a5f7d061689e7889e302473044022013913fa5ba55c3d151845048197e96caa3e4719c3bd48bd302e0c130ae1cda5202202e6c7f06666a148182f7e05d1191d6b386fa058137d63475a7d2c80087911db70121028bcaf65dddcc6ede5485a68892a67613d0a6b8ae3747e0dd54644c34120690d40141736daad057e5e8bb7d73ed8bf62d8475e2704bdc926f969afc4955104a9997cc494c658e034b75d1581e3ce9e2b685ca3b01c607386ad081ca114cce8a51f542010247304402202c197bdae25d6acbc2e295e2260ddc488e5dafb5e6dd233227f262f84a64de8802205cacc9eab04acbb0879dd52f4e02c62c528a25ebd3c1f46bf13c66dce72f0168012103bd1c51bd53c1e4559ac7087116a7d5dad59dffa620d915f419acd17ff0950d3d0247304402205f50a20b2d12dd70b077aa4b1dedfd322e74956692793703bc267d47f502239302205458f567bf03ee109c67f7716a9f0cc04a0cd42d56c80f1db4f152b5de9638e8012103e09c14eef0f0dac01c6d8475ba21fb560f76629a12f0fbc554d9413b4df226a201413d0f3b332871dcf19a923bdaf2211ef93cd4a113a8d225efd5abc8567d0efbf787e9fc8700a4f218a68d9d8394830ae67bf21629214f8a6362510b48485a1fb4010247304402201f910738082066034eed6406a3994f3e54fa21b94e341acf525f32a00cce9f9c022011bf9b794ff937f0a6f2acb8f0594d8f8f28349b7099f92d37e98fd452eacf62012102bd2cb84f69782a0c8da79cbb6e03f109e1b91f4ab59b8d90762fd09eb42da2e3014176a53d76b7c7a669131af8d061f047b0281cd21c5e3fc5853ee7e591128e1de4474cbf4f8460d9f7e8886b80677a6ed82d59806b7f207e417184f35e0020b8b9010247304402204a91513b466edbc125796e2beeedc0f0e1ee2e28023b836eb36080124c496fec02201f4a7e0b0870e5ff59f9b81f2f4db865194719cc08cb8ced62b51f47eabb73bb012103a25f2fc6d36deb031c92781092d5942634e9ceac4e02f6c169c4891f6789d5410141cd3beea4688a011eada9eaffbd97c9e1e6278ada4c9e19bcf9306d1754366bc86db1199eda7ff3a985efdeabba70759ea232970da23a83660badd7168efd22a3010141b0e66b9154a5175e94bfea02d58f4b69067742d517c8f441839647c52af977a9d40f78ca1c891759526b191f3c63a044f3a914130170fd8b83c9c58febca3237010141a4da7f75c42a846c8d68fdd79b71e87242fd34daa7b11ca4df23dbdc09de6a2546a95078ce2ac5622fe4383a2244b5111ddab65702d56f9d52486545e7884eb70102473044022034d4c44246ed44e94415b364594584e5b2dfa1b96083d5d047411a595d3ec6f0022004ac45a9fcd05a55717d7fec0a9008cc6582d4d74f408ff714d7d985125b019c01210354591092571ec40a8aafb540d4c51b871a1f78509071470f5f9fc93607812d730247304402202617b2ab6ba50ebb9106aaeb46913f25fddfc3698e0bd03b9797be62085181b80220472e9395d99e4e2bd123e0a60d8626ce23e2b3262e5a9f9432a85ad0fe0de38e012103306b351abb91ae91a40b1034c75a50a4681e372f5464e6956d62740cf734f31c01415e73146f17fe45684b3405c73f2d3deefa16f9f65bb805601d155095c8072c5908dc1c7aad0f3e7896bf7449bd829d3da4a35d7630cddb99eb4280f954f52a59010141aa0322435a141f28d8f3bcbb2726c0c4ec3255ccd7a5baff0592cf99fada672afefef335784f6085f69f723e57e32aa698886d193abccbad9f34257f7bcfe9f001014134a0d8ef0cf106eee428ec4efbdaacf8d638569bd52dd4108bcf4098b81700da7fff63a5f4098e61f4163fc279c3eb89a88b0b63eaef091e008d1f03667e40f701014195d7a64ea71d4896ad6e788cbed1df238ddc71708fa89a32d1882ff312ad459103af164cbb3c50c5e54e8ed5b900129c1c0fd3c0678a666ad5157300f55e80ab010141f8f97986c3c5777163c355cf5ef2ea33431205e004da6a88cb8d892f8d189d6bbbeedf49505317797388e577f7ed152cd3665a109245969549292276f099e0f2010141cc2c87a48fc9733552c310179a722473430ceb01e12034d31f65f8320e639853fc24b52e6545e5a8979ea45a35327aed071c3aa13b4523634e48413dd32d2cfb010141f3f564793b91214fb8ae93bef4634b92bc0ad4f1cc901ea8dbd3b5304c2a4935d745c3a368e6b685fab92fbe1db8cd3fe8adfa53d0d53a69c24b91ebdba112e401014138c68ac905072138c0c824aa08416a215d9ed10344d6bcc0cd3b2f842046459df79f3d381d89985bd803a57ffa71f07ca8b59566f3b7a856518c6f1d7b34212601014119f3416884020ae49ab1463f029938e0cee95456071af6740c786578583fe30fa7d07f653c69537f3de66c9c789aebfc3e78243140324e823beb1d6afd055247010141cdffa366dad5a374373d8e626e494e828f0de3b5df8148810331689856502327931f06579980db9dca44f09a9e229f888084ee9c5e7cd1c246407c48a3a03f0801014102225b79e67b80f95dafbbc096b14efbba918b9ecfdb9b747369ae9556c66863e601077c56816dd00a3dcb20bd0fd6206894bea2b738be0bacbf13c66aaa6389010247304402204888b540ca6fbcccb5eecc8a483ed2e00f3813df2f70bc3eea88c6c67dd0efcc022027e9f99842c213b2dcea475bef20656d378ee211e707478daf14f88f59084c1f01210286258fe778c0ccaee1203450678d77a74db6fb9ce1e159f66ec784a096fb3a0f0141baa736dd3ade761a3ebbf898a484d3218c8dfd553be7d44da1fce86a415d294dd041396f7fb788da8cd390bcd0d60b03a1fc3d2b3147656c8b46f1f9079ad94c010141cb3ff49f5554880c47b6993cc5cbd732eb3b17683351a2d5cbe79e48c1ba05d73bdfd6e91a7f353bef6398db1b0053882762aa2cc2cea8a26248ee82bb36b9d80101413df284f7cac0d48a399063d53387b4753ac46a530650f8fddbc591617ee931eacbde126a6ddb5e2a6b1ca4720d46a45821eb26200677d63fde402ddc2b8d9b240101417ee90a271abb4d27f79b3c97640e23b8e4ece2efdf0b80030efe4d0cca936a98eedddf7870642e6c4848f7a5849cc2d123691f049e25ae8cef01dcea1324e446010247304402203a725c5651fc7f09867f1e07f97a375e3c5b2d274ad5fbf514baa7cecf9f490f02206a670fdf5cb3dac1b54022fefdd1f39a9dfad82590a1232afd0dc87776e68736012102c91ee51772209d00e958988e0eaad332b987dcb383e85a6fd2f8e889384e9307014154e7d561473e0adfab4f5ce2a9816efa931a592d8820c328e0746ecc9132c62113b04ef0e81748fc135ed81fefebfd187607ada49cc05e48974ef64807107c59010247304402204a6496000f8219fe8ce7b08f0f9c03268ee1617f003acc6cf0bb3ffac9dbb643022018a6c5d966afdc2a664395b80988f3ed707d8f1d186dd251b90fbfea5ff479f2012103d0c8b858c1fecc3fdb30c90472c6494b2377afb3f49b5844732fa336b1b412a30141595bf617ee058405f1b54a931ae9401ea0854f7c610cc3934bd6c8c80b7239fa1e0040d66bfe96945bd392158e08635e4d8f05f613f0cabb37551a0c4ef11f96010247304402207b0bf65a6cd831b1c39ff8f9d49383c70a75e0de20e8cba857062e50f3fb1d55022003f688902676da545f80b20ad923624fa72103bd24a497319a95ae38b7ddc2d10121029e6a29aa0411b1210b7b27568d158552e871e86e5ff27e4dc27d617c26c2419a0247304402203dde11d15f1755cea306e3dfcfeb46a6a16bb9f55c1fb39279cbaeea7caab5c002200314bc59f9ddc13557d10b12b0262c3411ff53ab9a3339d72b0ee8528775132d01210285eb22fa742cbeb6cae1bfb29a7987069d2b2fac30fb38afb5a4c22b37a3fc9801413061175b64139b226e9143ec2e8d5274b07a4942eb2bd1c8660afd7c4897e7b36bc12b5539bee08db3f6177956d247de09914b8bbb37f9ecd84a14085204d3590101411807a3278bcfab6eeed186808b847c03a65b66dc325c8228b0c132267a18ef9149be9fbb942eb15cdca1196d65287afe8d7f0ee1e2e0f66232a663d0f1fd70ce01014141190d98e3b8a5135ea5412846e3e1716aaf15fad40b2798d615094901adecf9306151c82ec6e828e255451ad602595e46470f0e08911a894f951838308eb713010141570ce086ee6f9ea62c1b61ca8a6df22679a31c49d91c125001c760ac5df652409f4e7e7e5e7fcfd7a13d46190156fa1d761f85faaa43393e475267eef6580be6010141be83fda18d7dc73b06da515c399dd7861d11ab2f09fadbad69b620d30a7ff9c23512df806aa4f031420987599910e189bd28bf050c1b02f1c5b3d172c2f933eb010247304402207c80aaf5488ac757e815286dbb8f8ca78984bfbabf75d0eeca3497dddf569d5102201c802a92428f2e2f36fd644eb9c15adb9fdbbed0d1da73145e7aab29ac448421012102a618605274c831d43f6be70f99ef83055878a6d795a0d555e1f5143bd555d69c0141b7a9dea55d26646258b6136317ea6af440146aa753af814628b1af8b421f4220474b3b0d7c873ace2895e2e4f5a9daa0b28a13c616a1eaf8f6586573404407a8010247304402201f1355b1c5c63ce992df560f3fa30de7e70d55885d6e85ce5479b3c9f97d164602200567abb05f7c4e98d3d551366cdbbc13722aba4c4c2b8e951e526b33c5e2a187012103ae79bcdc829584fb613165b9dec468f5d273271e5cfb6ade10b4c3ce508bc444014137ddc90a52e2dc0670c720f94ebbd9ccaf38c98bdb321f43d81c909d0ef354f4bb70a1c69dc0b9f4a531eb56c5b1411d85756a35838a498ed04509755b6ac02001014105ad7c967a0278f2a7885c4ab7b11389daf201e060bb85ebfff8e9a70b609dcf8a1785c21041ade5420c954c938e2a1f76b62123bd4479ebeda1d79c5973dbed010141fbf631f1de88ba45f00d0ec9cf2d21f33095cdd2e667f9dac05f4a55cfc633834d48a15b664435243d6d98ff637f71990f3f25dd877dc197c79f66c7797a69480101416552e453a992fcae5414aca8890409faa95dc2fb0754dbcd390337dcb4676934e8ba5c5358ed910640de3d1caa82958e8767810000a02f6e4bdf7097f8262a9d0101418b850ce2809f72c1e4a872e471044ce19f239e82fed9695c18c99a7ad632fd65a47cdf55f365f2dfd22b070aa610a02c487475fe3648f8a21e6f576b86305e760101414afa2607a12c1066ba77a0b19a4a615351f0bc02f90841d7732fa87694bae99f5325f53802fa0d8257f531a2d31f7e2c9c80fda1dd77e5900560b7f98cdd9c1801014104aef5e0254e4fbad5f5eae3fd1ce63328a41fda0f9754143cd2cd4caece48503a02ccae95d65b5784df615cab91298d119f9eeaceb41d5eb01c51c5efea0c090101414ef746f899a090bc5eae6f56e58f90ee65c8a368d0047535560461402f40741ef618e22bf6364e6463df078432634aed60ec813516296a3b8c554d4445f96b7401014160eec134cfda01cca573208f383708749a5d8cabe30f69bce998ccb4235612babe37a31c1280a1de806ff551bd340d3bd3043983948d017554cb74d082f69b57010141a9714c8271d4320523ac44ab349a8a0606bf1dc1035323cb13bb2cc909f198d18501b8f6bd00f725db8789c0fb36bc989e3fa91ff41ce601551dacc16eb586af0101411c550bd4d27fa9b7b28637ce33efd9604cda4fb794657bdff6f011707848d66ffae10295f77ab95b65cff8d371aa8df97d7742852e901031cc8061ec1cc67079010141ee6ecddedf199e8dc2f86752433c910b8f371512cec7e4d7df28c6570d903f723bd0861380418c7349447c5d86cc75ab5e6032a7be60a5279f9c3b3adefbc6df0102473044022062ca3309167f995ff2eb4c68ce7cef2fe99604f002cef847b4750dcccce5a925022015eef3941b442f340552d5dde6874fbcfbb58c7a8fe199187c9de6288ac246a60121032ff2ae8d918d5c7821e97a2c1f6d428959cf31fa28b6feec497994b2903d3c940141c65d42cb093e6788a044a1d401a06cda741c86be270e6b9acbe62cd9a3058ce6566fcc10c26d95118cb289d83ae80f48f92df5e0bb9a95d214c365215a5f8cd0010141960e904a66f0637de5ac12c808d1b3374e6a1771979a878e4335b57adb31eeee37ddeccfda3a224f946ced00689be38010029a013ee5e7689ffea049b2a199cb010141fcfe609891a18fcc16c4e9a34e61af1d827288eeca0c3f20eec44b6b4ef58a3024515d957cf6724da4e1c41f3d9a3d028f299450ed16f0d19672057ae358202f0101415407c766fd4f6d199441975105d6f68aeb737c7b838d7634a23da7dcdb36f8d8d5cf022a4775dae281f316c9fc1e7879ee48c7063a608e08320bfd99f6e6d8f20101412870224facf3b449d52c3e66a36c7e83ba3b9448e660108a526a904d9b020012ec96016757689010a06e9f3b0e4ec3edd8074b7098750b2fa8f03ba27b0406ab01014160924c06e5c780764002c37d83caf62f859d7c4063eb4137381939d7f544ce11bc1bc6256ae35bca9d2e2b776d1f406608bea10eb45871e9f4430dfe43994ffa010141b1fd5cf8c9eb41baa0d2ab4fb1c7faeef367af738fe13621895ec5e595f332497dd76fd1b6174678ad35a35928082ffab8de883660f7d9d78a41096c1c7b368301014100df186de88137dff21eafb33fe50533fdde5767bca1f540485e4f0f29ae37efec0d8c9f7e88475ef511302baa285c9db727f0ebc933b9e81d7991017c51741f0101412b2fb3e958f7cdc67045c52a26486e9447ceb097291c6026702428cde8a18c6e44555b9b16942fad5d6f9018da65e73171171084b15670a5402aca638d6984cc01014108eeb3811311b99fe7688c781232719b1cf928a319daae26f5b33b6d779664d0a40dc08568a68da40a8fc680c9659f6abd52c2fa76c78880e32f7f592e42424d01014173d52c41c6a641e4393e02469ca3a2716366f6ff027929837376e4fbc7b241a7f563b7c153b5eb7396e4980ee8c91442118d2fed7ca817fdbbc06551a181b4360101412a0c4e0a6466463e82f277ba4f92a8d785916089564977536ee86c456d369556f97654f9c3b174cd7b84ebb79f0a65a802d3e94d16b649244c90103e4cc2e93f010141dd61525c42621926ef49febcd0e3c24eaf7a51d6212b4b4e9bc908b71d9617732c998dc966b9a655fa270c93a0207768ff693f7e59d35192a3ae5885c9b8152c01014199030665d4b78695448b4536e6b38782af5a364c37cc9ea33e111282801fe21e49a9602c9f88e1d04a11a090f1be74371b58041d458e5500805933984b54c59c010141c58f97d8ddcc4c42752e68e36b43f07e5a904b0b8403872aa29e85dde49726f47a8fd8188251b993c9e4ac8c3f29289fd43ff2a2922a3e5e47ccf3aae2625ebf010141d0be3ed8ef46e44e3f3fcae93fb777c5365cfeb4906781408e8936aebb3ec3e966e5e8f5fe0a8f8e4eeb590abf3124e7517030583e5d9b5af2fd7dd74eed2c75010141e15fe18fe1124d559bae0773c506562f5c0407e8aa0a67564e5006925c853d2e0b80eaf7cd421d65317cfe9ee71b2e72eee80e0b2299d67ab8f8e4abb5d138e1010247304402205e35300723c7295f741687c8e6925999fc45597128f4c9d422c5bc5882f8717f022008a4e367d6e21290ca4d909c95a35bb5d30848332ab33faf1a8e0f037f91d5f001210339b24b858dc7aa7e5740440ba8c2459721f95f56a12d2c1d6f2cd6b84725db980141124700dc6df26779878f8835e9d3df3c68a7abb8aae35c93d4ae41516aa901af4432c0007628633777c206e49bd384d7eed734cc9f923f530e0a949afe0918c70101412c42b25073630131178b4013f497aca0a81e3e2786d8efb21f6592c710fff3d4a8a4d7a2715a488c6f013208e87414bdf8e7f269231afea57b291e55ca3e5cd60101414491da75a86a2112a52aa0d5f7decee4535caa64981eb219b4db0639265aa425c23dc719e45d00de4c69bdd46383db90c783ab75abaf5911334faff0ec6dde76010141139294e1b2679120a5019a7b63a8fde48ae0f31097546199acbe9ac93eef93e229ef8fc4a57b73fa57a73df57c005bbf99f9b1a75400e75bf6f8f3f1ad169cc601014191449bb2dee0380c97797c39cd61d1324902c6e1a036f4fa6d8a1341c515ec8735837eb6fc27b68f81a30bb2b20a7777b337f8cb8f52ab06be77801c77000771010141efeb2cb1f7267a7ed71a9c6bd8cb635bd3bb2a8c9c6d3792e76896a2f18f99a52b597c63489e5077b5e00f7670271779439bb165b79ac7d5cdf4753aa81bba41010141cc38914ae9131aae4601121b0e65b5503ecf3dcf30e81d0790c966a3ac5ddadcdccc536105041d3dabf43264f1f0e581d425242900bbd209ad83319741b6817d010141058357f5d0a2f9744de0a549cf0f01471356122f3806614462c5d5fd517450cfffb820b0a01d0fd2c429a89aeb6513ab20749e90f54ce70f8898270fa6958b26010141e87f5082f679cf29ff8455506340eac97187a4974e9a998f9e190c1da0d4030a7a2bd199515db596d957da7c92bf79289bb9fa458acb28db1ba0bb53278db6ef01014147f08c128554adc3ade090b50aafef6b519252fd79b4f5614d354a174748705cf7d69f6b280140e61be7b63b144483b350797600ffd12e5e373db0ea12b7c93501014134e96e2320b0c3a779957ec8102f1b748fb2e19136a47c389b4c488234bdd372a2cdcf11915fea00904cb1ff78a724c22bea30774e1397c5f1e44819bb9354390101413b4e55ccb0bd03905e51dabfbda219dc314cae1a5248453907a0ebb4dc0c9819c279bffc9169edf5b8fc9e67d27dcb65a929a3a623f9598ba9317debaff6d0e5010141bc17c876cba508bb680fac53ed803cab91a40d0e8f59a4d0776598743532cbca475d3b63cbb28df474890b178fdea4df284da1b576f1ad752fc79e384969a39b010141d3bab9ce16ab29c488e9dd3233d6110c4bf814f3c7ffe88d0d71fd1c2287e868e03c860457a89f04ec43cd24a85da493113a75675bb6139fbd4d6dae4bd07fce010141b22158da539b7b57dfea7326c58f5114b90e2070df8e898e17fd10cc9c397e55175b0734d677c05efe3a7fd3987c302218f6751454693bddb6989d5f55c3571b01014129b10b87c008ec4753f7bfdd54c54a6bc312422d64e793b29abf9c2ddb2c6816bc4a9250374d69615d2bde328f3a9c94be932139e725daa169941c121f6d02ef010141ed564b5050652d903d7022d19aefdbb7759169a5350e65ac317280a12c1c4f9269088ee8048b820b3bd45daa7e0e96b642272358800d3d69f9d7b0af4c77804001014168349433d67b18af4842f979da8a4a6c0aa439b8a66e01a9e55cb2954c9134f0201d3e6cb242cefe230b787494dd67179361e48693d87b15df38dcb302f0802f01014113377a7deab89ffcb219e047097be00b96de17a53234e42c60337ff3c39d8961265ab79d84bc45589996ed17f572ae9f9156b0155fd5bd47d0ab83daa9286bf70101417cc588c2cda502eea0aa745829be62f85e1ee0cc341fd807b55612312a411ef1c149d7cb5ad1f3f43bce7d4100f085b2ed4989c92aa6818ebf0b85eb9b951f57010141b7a9733f61ac568b4015e2ad033a1acfcedea14681a1903aedd751731bdd7405dea19bdbaed4a470615f3451b4b179a909fcd094267f1091d04003afc5db9a1c01014101210e91c563439561d36e6e671db01f4c9dde59d696589e327474f66ee7359917907256e84000e90d8a802b882fa3a198b637005d23bf5ff06c5a6cfe0d1043010141accf3ee50d3e6ecbe0d37e0d443e0a46e4c6c8a7a909b46bf0453a76ff6e20548b2fbeb83f5007b23da13a113ecb8e10bca79a2f9f8fb27c9158044102b188b40101415b8fd6f491bafac4bd9e95f53e2516222947ad5a8d9a818a117f6e7ea8cd486a62f919a54056aab63690a883bd8f3f15af7257e545b20a8d9bd9890f145808a40101419b93eb79dcca080d294f444650dcc2de106f420cbf0d4ba10f5f2fd5f7e2aa9c76b96b1d8beb54cb19cb1e6e2a428e2f2265a5d7687701e1f59846062a75008a0101416b69a57e8d77f96949453aa885aa0cdf8342fa978a36da019aa3458e35cb0afb7d8d0035e2b500306a17133d9ca92a67363f43adccbc19afab2e36727e88a20a0101417bebfa2e453e54b7074d8f5616ecddde986e8599617cc8d8fad2a4d4e4edee4acfa2b27064594af16697547a3a82c79b2e419d487a58e3080784166d9e5cbad90101419121071603056535682dde68947df3c41d4af979799e5d8e5016db27f11ed9d1ff59f07a56a78b7c4d336f5af6d1eb2bbf767017f45500e8ef481ebc577d4c0b0101415501e34806d644abe8f0884df50e3b802999dc550c70de3a056cd770d2170723e6ea8144b55e611da33600cc5ca1cac55c132721c7b63e992252540eae78689101014180685681ab980977b103358954de488a3b9cd46d3c9ff3d106c74bef9f084c2f110d9f7c64be1b83a07121312f94f4e60eb865ba16f68a856a4d5046806f272901014113bcb237aca0bf21aba3bbea921d71080d9d0d5337757c52be703292c569cdc858867b925eea90a1c28af300e5ebf5dfb85b20b99e9473196ae963ed847a01d00101418dc4cb4254dc486c651939803bd3ae904bedc97e0b7b1131e729326f9a51b72b4ea441faeb29c798e81a941518f99c81717538d266f1e31996fa540df249bac6010141ecd300924bbcb977064a08ecdadc297fc70b6478bf9ab0c8a84c78e81189d8b8905d6b5867b5eec1619d8be7c7627b2e79a74fbe2d36c51f8b95d0e39d32b3e3010141a7fee49918e77ec3e86131c7dbdbd4301ccdac073acb3b8508ef02a62a420f6dc87f5b4fb9bf05e4fa349ba7af6b7e5c734d33839bd345eab70db1d624fcf2db010141df5c5b84cf21e07bca3565c8e9efcc34a6e2cc2bf5d8013cb24521d6515df27a4c3d97136e5af8f0d5929cdc14d1c1b72acb699b67b34747ea4d38176f69d53d01014153a2412ade9f90a2429ee26119bbde23921d44ee85c6c38ca85e64cbac4f661a9273af7ca63969886c1fa02e098c291ef2418a387f365f2b5945a7405b491cb1010141b701d74909e81ffffeee690ec1af0fca3b03be13cd8f67976d76a07be915c5b9335599f7c1eced27cbc266243932c8960330af95af11734a76498314ed52578b0101413b16cee095f1429d7dc3eb32cfeac003f2e3f2e4c409576a3659cfb60edf1d44389ec7060ff7894ad20642ce79c57b0f3dbad87afdcd53eb704191c9c66f374d0101416a7d5ced22fca48d77a0bbeac537d63bed858c3a426810ee597765a49c97a484d22aa2e380486220e767e58b96b50e037238f52a818a25add61712bbdbea42c5010141dcf2b451aebf868b440b2107d64c4d9463d11cb53f849b13d044e8402ddbc8915e19d4a7c1960f5b95a802535facf5f1d7a43d522963081178c8100abcbbc48e0101413e3d3a886d7e381046f413c40df53f9b0b8bbc3fb98db441f833a6c610c93cee838463ca2e7824981bcb0ef10cba24e07ce09b8092ba2dbdbe2a84c1c56e25e0010141d2ba3d4554b80fe43ea6d85da1b91aec58f45eaf0196f94ad9ed7882f02f7dbbbce4d9d4e6bb80b5bd708f490e2886725e8c3d019a4202480c5cc28f258a7a1c0101411d6b935032a6bee3fff3c09e4ceb55edb9bd648e27c21088d2e0f9fec97d2c2215c51552822f819922f3f8a01feee141996616b9e26e1173e9ced83c17cfba8d010141f10c98c8b180e93501efa834dd1ccf29f7353877e4981d0c3b312a4fa517f4c6facbeb2b713c1d157eac9fa8dea50705dfd470f73da0d129863a842043e987190101418a55cb543c5769fa11d2b3a68492a052b64e8fb52ec603f2132302e7e040c8abd1fe696581c199238d5b4aa77edd428b76a07c0dadeb9fafae696fb7774dbad2010141764eb7decf010138f8055e26f80c4e8fe52c386603ee16822a90bc29bc65760ce01f6bfeb037bb9a2bbf3791862ac498df1c06adc56239a12ca771edb3141557010141ffbbc0ba8dcf16e299ba94721d1aa48dad682176752d166bf761c3a3dd7db8f64e923bc3543d252a2635d92b401aeb036f85db903215d565d0fd1033d617df8101014115d9ad913dc747a3b2d4cda47d109a7224ab3ad07b4d5813d79d14fb9e50a6439aa3e5c4a3b71eb2670cc22e11f1e064af57b7c2f1b108cd325d1315fc4ac1c6010141af010a02dbe5ec6164bc0cbd987b8a22841ff4165918b31065509de1f41c522b5f81977c86ea4159c26af7642a0211ae88e343734f8299f63e991cdddc3d00ee010141522c0b2db138717527b8612f3ee066a6dcdc49924463175c2441337fb5f006f687bad016c900c06d2bce1fd2d5e8e9c4c2053533209e670ea67b6fb88fd7ea96010141bfd1f4239c40783841fcd2bc120846b8d330ce8780d68d594b51dfe7f34fb20161cab87d30432976ddd50e50e30ced08a62896e102632d267c0c5a9efbea8e48010141e3fc4bc03c38eaa1c0e36d89b61f26f78eede48cce061328e751fd76436f6111a7453b102ea694ae4ceb771599e23fd596b73d4aac1bbde5ab35f7ed5332d0d201014194635a1d19be83d95fcbf0387f37ffb2d9e95732e160880972fa9626f8c73fc25f6f271c702b85252d17ea065538e9405f1c0d7df6d47294e078580663fde6b20101413129fa6da3fb777eda67f877f92f2926a257cd08d0fbe38a7af17bef985296e2da22b0bf4640d49739200cf3da624d48f3fdadb7535ab8c4caec370bed2702230101414832d401423a81fc2d798420cab9dd7f9252360a9ab4bdc0be928e93133eb3352847327129c87582957640456412df2b966006f9ed6395e4f8609aca5fde678e010141a5c6ebf7a45572061bb5a610302174d2c21840b6f3d251191f7a13545ae38f2613b5762b841f5d9c8c7e7000c5da54dc6f63bf787a5c446e4914d071a0f9939801014177776c9cee36919d32ddceea254846236b81a303b328ee990eb6f5c427d4517fd52294e68de7a863d9500fa93531ca12ed859a130f6d7ba51040ee2fa3a03cc9010141ea599f16dbd6e62815c3655963ee64332209a8b971d00aab7837b24c9366921127d01270b6abb52215e27e48884ed37fc25d28641a6002d540b447e6329784da010141fcacb5b2f3bdda79b9e7ff2d576a7910f7befd550604d5fadef442b91673c9ce94974a4c0daa820e816d876142055bc448a929424dfc2c2e9b607e5d0e8a2ab2010247304402205eae2aa85736dc8d4159684451a296ca4907082fe2713f5d9203b417cb49c10602207341c6c937061ce32c1cc91d83d8764295cbd782a1717967728e913e45195fb50121035380b963b1da0b332eb337716fba05961a4597865eb2e7caccde21d5998c785d01417d3f0b3fb05fa0d38eaf8683e748555cf32777abd2e05b3be929ec0ac7e02d45775b2a8923b05741e42660ee0229a5d8eeedd8d9ddc7fbc638793907a685a8310101411b45954ef14af802b81c51f4563e422cac7c5119dbecdd7a7d1d7ddff80bdeaeb46923da20845005b205b152a0f8fb6c84f3f5a78ec6b874b2db5a8c9504e8820101414f98faee63a00d068098d42cd84ad004c527bd2f170749c93293a4c39bb77c747a8ff00fe367a108ed13e85dffb7807f136e885e8976914e45c46c725620d105010141f9e4bc7d85dfe42137044343ebe1d575c793f9a8bb2bd4685f0ca45b972268db0db4d057a5ea3ca7a52812b95da3bb5d7febccb4ddb9d4f8d38070a0604b61eb010141504e089b17692e4ca753bb0f71f99bcbb09e24bd1adff10449179d76ca61145abef8cb0e8971f8135fc4a57b02972711442daa59387e09bb8f24e46958cb4bd70101411295879017c3600f995251e8479989113ce98bed1e05e1d157c036123b2d13ca71e3209666eaf5c6ecca9909b0147e40b89b242c82fd623065dd1c29db21d1450101412867dc0bc7a67582d8900656297569bdc7f6a5a423844d46a26a3ebf4287218a16f5e058d52d207d9a93a7c590ac352b20d403a540c5d1287d60cd69e60bc325010141f748488f76b2822f0cee0f7648e1cfd2472e4afd07f919d275c756aac2117f91d28acd40ab7d1e666e7d8de3dbee92881785a22d974810210e6ff311f8f259ff010247304402206c3794051fb47ff92ad563d3f03c3f9be401d344a94a077cf13cce5902a81d13022045ba5ee86ecc073ba2bf3f2876043f5b1a76f1c875e40da97151bfb5491575fc0121027716f8fc47beb9772d986db6edec124e840059ba2254a970b2660bbe5c7142fe0247304402206bcc130fe212744ed8b381232426ad2b569fd8c4c1a589a83a8d42b55248b693022042892a45294dfb9c15c304eb85951f4b9b637af163e3d3831ace332861374b4e012103f60e7f00368b702647ddeb7a5816cca2b5c1eff03be557a7037ced2c8d62304c01413b5a0762c37eed85413e675a7d1baa853331ff4ddcac453167890e028be49a88e7890860e5bae6d1127ed2adf741aa2fa73e5387b804977989bf9defc19a56b6010141a7ac96a1a86d7a68a076ba964cebc786aa049309a2a6a1229ddb6f0eaad0f2f6117587eccb9699cef1c36ec6dc0f7678be564a7dafbb459a170e5fd571e77e1e010247304402206509b931f99f1403dfdc5347a7259e1f8ed93c859619074569e60ffb5bdc9fc7022036de3fdadf1561cb806010fd5186b4d4848c3086661924609d586a7e2c62a36901210361040f2cc486359c06e44b04e7b60607c5db30c9538ca132a6af743f7033f6af01417530c0978d4f631d20ed82ee860298b01a33358d674339cf4f857d1aec2ddb13148bfa0be33381ad8151f77cf0efd0213494af87ad94af6c00bc5b68c5cd87b801014139ac1dba02b62b4a8b2818b610ff9b676eeb9aaf11ea9f367f4cac7279d59b89c2dddfdb8b9f6fcad28c653942a09cb266d1d5596a00d78f0d16766134c8ad4e010247304402203fb69dc8c1f6c889584e4d3bc04ee872da1b495e479c609735b28dcf92e5260b02202897fa6b07b4bfff4d652e22d9bffbf6ab7527906f1fc1b670b54d75d987ad5e0121023bc9e4b3dfd6cc399cd80306f5065be690b6a5e9868e2172af97a790e1ea41450141bcda9d8ea22b64b45ecd2656a6c325cfd34526e8416f2f9407d660e4ba7bbc986145ef6593b5a5503f82dd8220b5a6e52c98fda050d1386d8ced893ab27a0e81010141e3b02ebbfc34ce67cbee92ebc036f144e98943fe2c638ac24c61a934d9ac567f0f5309ffedbf77bceb11872c2af03bdc35a82f215ca9d8daed4f2abf6b78627001014116f63d2be0ccbded33fe98c9cf97ccbbf86cb7e8a9895b6bc3cc4c3b617adcd9c6c6575f1c93a66fd9fadb3bca3a0dde51699e8d95e29ad29378b592398082b9010141f9191e73c317c299d9379b7a870cc0d2ad31fedc13f4d3fc713046e8e0a57bc86072d2f485ee5eaf70d82e7a02777cd362a08a3789fc0f9a0db90aa76d5b4adc010141a7179fa581fffd283d94e1cd1f803f01b36c34c2bbf63aa0aabe28d3b1350c30b5cf4f3a6007a3fc6030b9663c34bf97e6dca07d85068ae0433979adb179844f010141e06a0908fdd7fc0532a55cfa7d43a9e0ca54d885de4fa1bcb653548626b8807b393758c5c33c9cb0ac80e763fd2943f54c97196af2ea58b89fa76c2a623d8e83010141d5edae596abf290b6cddae92928f5a1dc7476ccabc907a4f429bc779bf5db701631ed12e90fbb6fee814463d05c063ce9ef7e3b4b75daee47fddcc35c9c3b1cf0101413e3c1d674f60713796c6091924140302f312c2ccd05f4f781b0c4cab40c4bd38d9588f0ce6fbfb20048387bbe39bfd730f56a619266be0b0bfd59fe16fb36d5a0102483045022100b07172e287c53d04fecf929333a55c384921be06ada396d69edaceff482508a702202539b161fe50ae6e9da114c43a85bf4fd96d56c4fba3608394bec1240af6cc04012102fcbccf9bf0f06025a048b5825ed30085465dae42aae1a5035f6652eba80ffe4502473044022074543b69ff1cfddcf4a78974e7d87e50cd6f15f6f50b3fbe7a94995532ee7574022069fa9e99384a2194c1c6aee948f63d319c8a44b16aa46911af188180b9ffa1c5012102d49264ba85e524876f31982c323b6385f1fa2b8a55265ab0e59e4727c40d5dbb0141357dcc066867b9359d5432acec291a8e31ca2a5452ca18585b46fa5adf4badd0a1ee256a1c0f84982fbba883548df17f478e80a1cf0b6754d8df6e5324ce51e10101414b95e433981e2d6fe6f54e4132b2a5caf9dd4f2e0bbc9623cb9fdb418933ce3ed52c140fa169d8becedcccb8781dc189c0395f72784b0857118b238752e56e9f01014194d7ff303f4cea655481c9520129ea81913ebd878bed5ed37e9e697217e1164646fd09dc4d03acbed4822908d2b13c152f7f89dd9f75a0aa096ee2349b14a85e010141d77338471323eaa1cb0285123efaaed6ab5220869e0da1263c34e5859b6c7bcb239621ae4b3e97d1d9306e35bb4caa99963f834727c16c7e8b3a9af61783dc55010141d3e58a638ce4a450ffdba42e9a8d4968bf99d47661836041a4d3932115cedf796d5a7509191e1c3bcf930142802bdbf8842d424042665052ed18da6bc7147efc0101417d651a1a6201625870e9236ac97371a62765b35bf37c78659c6f98a27d1d76fe398a913af5e46b771fff88c9fad40acc73aed82606723db0c418a6afc71088f201014186531ccf63730ae326f8d756ed7e3886ca04ab13b6b9d53f2e2983e8a59b75f79e438f5832a5a44579d3268fff2bc85f601ed240b43b3de4c50a46c07af8b33b010141478e463679b3daba89458ee4fe4901af7b5a062f7d25464dbd099ae46b53b4898ad1c6f0cb6ca843952cc36d325ff80ae8d788e0e7cb2245b953f601ec8605b601014152862e4eb5f2a844320a1d5bffd69628b7173d5393033532779b9668aa8698ec74d28930cc7b803b6b9efb3d352d577162dd6cced8590dd4f872203d550740c7010141f4fa8d2fa9639cad7bfb9ae940ff29401de5c18ee8995896f84b268652310f22359a9c1c8f32968790f3621f7964844734465663caaf7695fd08cf66eff64315010141c0cd63313e13a3790eea9647f2b110e3b34d557c9bf28a3448930f03ae6a3fdf0ac83a6f0fb00de247fc3d07ba79e4f7ab379a75e25ee7f06059159d6a29201101014128ee39c3404ce32b5f9c63b8a924452bcc97d84024fb5e53c179609d5ca454f0bde288690d68fe4e1676c929180394743d0060d8b2eda1b87b991212c563e769010141bdc42ffc7c2006f6d61a754d9a9a2e1db7e3e8b1fbbbfcd6fd68ed6347dbbca54a7fdecf2ad70382fa873de0aa954cb4f51b349c8cec4b8bbcbed37f6ccc4575010141cfabaaa4cc2a34712edf3f892db2d0ecc595c42005e95ded3b74e20b7ec474a882aff0ee079f98fcf164f85123f9caf2e3de7f1718c33b1548b68084623d05df01014133157870d807463d6d5455441ba812dfb290401096d558f91e984271c85a741d650eabb93c070dd0b2098ff7e0e970d4277240ea98f513671f8c3bf1cd2df10b010141cc01e33e291bb3709b3f6f068dffd9959beaaa9a8a73068e19c4e3e60cca5a8129fe522b7b3e4fe15b4a47ca35388f75cf44a0d2c61055cc6b5fa2c2cacd75630101414448d9376132b05ccf14b08794614367b2b9642a7354b5a894714a6d7ad48ffbcecb5eeebffb27081b77919983ecf11674104139aa00863f97af7f679da99254010141c4c124de26e2ab19bcfd16b0c90b6aceae3adb75cf8c68314f758e4b6c00385e15b709e38f6c5b9b89866c9b636dbe3f032ed96aff600de041a153176f3a22ad0101416ccfa49400aeaaa9cb2e370f2d27c5408678ff36acdfcc794b66b7d171620323b3e0c254104ebba2a2bc75384cb7825a487327ac343f2087b6345235a1d62a9b010247304402206586b29b46b43ec8d079d4970d4b1646d0e86ede8f8e5c90fb294d0c4fb3d1470220354accd0578785a8e9d489fb91ada5eca9ba0f870aa9ddbb30aa080db181ff57012103094727eadd438f52190067751d8588951229c1d7d2f0f4633e2506560e0d075c01415acec8bb2e3314527aff07e36aebe544e912cad08ec1f419bc1f2d59e215cb73fecd2bf4ea333d21af1e93fb71d177df4cd8e6eee4c18fb440ea0447996fe4b30101411491fee614ab7d20a71c35f9a0b1da8984afca6310887a8d87606515c4f1921a167aaef8447ae0fbab55dc8f7e20fc257a431a7284fb0ac89697ae1f6ec3c9cd010247304402204b4d48bfe314755815b99bd3b4ea48f08c4c4d6db138a26f843a1f02180e114b02206401bed93ecb6be5b9f94f27b909b0cfefcf78cbcc0370c89217b5b96acdbd6c01210275046cd863afaf72b41b89847012f4e878b61a9828baa693384a3770d3c7d16f0141e435fc806532676302e61f6b7b0fa9a8cb7f58b211c5e426d3eff305f22ff9b7e039536eb56ed23bdff95fbd990092b3af726664581549160f431f42c0ba93430101415e3c683411c1e01fe0ee84b78a00804cbd842f763b79e16b3d4ceba29e4c20469894b595a7d9fc63df14f593e6a368a27f3afe04e7dafa3aeba8cad153986688010141e37d2c0be2b7fabee39853e2bf1c14ddfafe1959b004601d5949187cbe3ad5f0b5eb084d0e782d35ac95801fb830b0fb936050a8a829c53fe92ba43bb491d874010141dc4711f840b7b8d518fd294746b84b311ea0260fd464229ec8e9ec23ba57fa045fd2edbb0c1557c6f8655bdf6af05c05aff798379d61ad24b6a4b823630ae0c101014149fdeb83e718448ffb5b80ffd9693466b66d13b08b010e90bc55f0031ab5d695b2bd9d139c9a446b3871fa87b54bf0f9c3e62848096653edcd6ce4a25768e95f010141661b9d1a781091c103c28c29ee0482a4996b651f821b93c019c2e1b0e87faeef72c4a9a0d10887d9a6b2ec986c08618b377fc1e31a092545b010c8b815febcc10101417dc06012c29db18122ebeec90de5006491f6254bf936d06c92826eec3859c13e029b421fdd935a1cda46055528c6db240557a896910b6dd7bd119bdbf705a6660101410458577ce4e0ae1a655a9a1c8f9ff25bba50bd1d5257a43fbd681885632763d7740374884664e7c5d9f9d995b8f13a4f1d06ea0e6da62d15688891bc7d257773010141de48bcbca5ba5dbfbc43c1cd939ddcc86e82aaa348482e2a35b1e7e0ab015ec14893fe60e9fc92fa9ff2a0321931c92b823deec47236eb461a6e4821d7587742010141567c2c3c2514269353f50cca4fbd816c1c2ea8265f93483884369478d5316af42f0c36d3c53b79d9be6a5cfce53437f142988d2614bc9d05fc9471e1ced228130101413d2e1a1d3c340c06b29065c95fd3335d9a77ba1ee66e54bd4d01e3fb1530a09910f9e7fdab216784f01b65e0d79cfc6bc0e91b0fd45b33734d0dfca91b8f09810101415e22ed44fdf034349d93ca6013cf22830d8e67db09eba94295d0b17cca46cc329cbda5112d36e1b6146c9887314793fa8e0581b733389b28464fad5295c5d1150101416bd123c7ef472a2846797310419babaae7c58969204f26ed8c7c917a8666254ece0869b9ecfb413d18c67ff17d9ae94d9457773222072709a0e8fc86ab07f8520101414c7e2785f9f3de20f3b9b499fd54dfc5d97dbc0cb5922ac100316ed49ae2db2dd91b7399b70e9a52ed1ad478591a7b1795700e6df34d500fb3c27222209dc7d201014170703f8bee6dc8f24d34c6f7090cb701c5584ecba7f873f52e205d1911761ddff7761281468e27ffdcb09eb7f053662958137c569293a741c841b0620fb3b68a01014106dc60c3e5aee2d142b1bda03a76daf8f545ac7d261ddcdd2a7e642ac9b157399348a22043f52aabccd5a3ac1c52f5ccf55f160fed45de50bff264727809b415010141ba76aab0cbf3d69b0e332790ef3ea354750dcceab425855924b94ce04c2a0d521cc466aaaf01a8b19dc5dbc08f2e91bd7e9754674deb25a1b796fdd3915555190101416c84f70f4d622bdf1fd3333ef9845645ceac565ee53b7d5b0d1c8b0385d2fc794c83cdfb26f54628fa4eadda81da6626831b1179f028ed7a4873647f509aadbb0101410742bfc4a4540d58442b06d3645c73e91fcdbd86d6905b48cc7df00e5a97533876491de6834a405cd52c29b8c4eb0241a181e719193677620d026534fb39b966010141f65a1ade7074712b7b9aedfcd1872be0ffc4bdb17e2729a0e441075a1e89bb7a47680d6c5727babcee5311484e29eaf839f6ea6605e1483b9e9afd78e38801c401014142bfd5739b73180eb1b8c4db5119b8eb2a773d93ff757dcb5d56c414980427a634cc69173a24d418ff42c372a2739ec2766400c701da72173ea52923a3051cd9010141d7baaf026717d737160e4eab2ffb45f42f3621b0401a28bf9fdb9ef8d1ffbf28064df6984a7eb0a1f10e96ee7aa621d9a1791eaa23f9612a1ef3e438e6b6f43e010141674ab32ce819f1ab7506618ff7817b153b221b2a3997645afa123b5358ee8a6a68583081ec42479e7aa99d6011c478b9e711140e790b368feb6b07c9fe17c9b0010141f426e2e1860f7707fd1ebefc6bba2a413b8214c5ec34516566457a87834ebcecc2bde4741951b7b46e481e453a5abae334a1cb06385ebf91a71a59a140add0550101416d5f02cafc6df1aba6d2ce31d03777de83f6d9825bd4a5080d25bbe9b638f916d3ea40a6cbf52700b8f92ddd8b456b2e571b031bd0d6d75a52a365b290a51a60010141f90d93a1c6fdc459bfa91a32693f3420576942de507d22a4d708d5fa200102b05dea4ab7c637934db3163335211367edb8e4cd80b68e1e6f09a33d520de2b291010141abf962e6325fd8c86cc76a6a810de648d4adab5067ef5f794a6b7fc50ce12559606a5aa7be7386d08647f76cc56791b30689d5617cbdb0bb241e770d84f92f1c010141483f246c1c7b49a7d0ee444461cdcb1d3bfb2797815ccc5af11f9aa2aaddd6db3a64be1683a08bbbc8d105f9783eda811fa34b5e7d8e54e768984b9b0ce91d0a010141cfe3cafa1d0328468521b5c3d380a20d91cdd0831a82fd61bfba1ec057fbf64df3e3e0f0886ae830f920bd56db8e2ae1194b623a7bdf7f1bba4eec3cd55d07240101410a08486bee3e20589536451645f62e9991e823564902b6d5d676b8c23cceccdc5a901d97ea0043698baa0c07390ad8a76cb66236db6be92fb5c1a07df95fbab6010141196f0d324f786cd29abd2fa0496d35f161af10c9eb94ec9f09c6919b6e9f97882bcf05aab8532b2f13ecdfb8a620421bf0e2448ab5597ce966a432cb982fb5e8010141afa234bc5426c87b952718f14eb3f2e6d4bb2a2bae43d58e86a88bd44d638556b9d8b1768f07cfc9302997816a0a383cc522f87f836d9a01905212ad6d07e745010141527da26b46c6c6535985af701e1bf51f5f95eaa3c4bf7003cc3aa89a31a169ed890f47a3f870ac99f512b4fea8391c03f010f6d13915a492e142b95282e1138d0101418c9d19684331e710ca39e846a68d4dad9ba41b43abca5888f672b6181cb9b3682dfbc3b6af7afb68ac1a58327c197f6fdc60b2bd40451bf38fe214d8f6b7226301014158475f9f921992e6656b2b51d99f89e474e656881092b170ca3960512c525d17ecd5d18ef4231d6e003819a6bdf82a651b29d1c85fbd4f02c60adbe903d7d0000101410bee08d7c53522d8c54b0f8e470052a0de2438640902bce0de906f1e6a8c549050beaacd761d70691b5e2f75ad19eced26ba53d0298667681b054a8f6c0ac9cc0101416faaafd53d28a923caae99276cc0497565c4ec7bc7dc64a1504d1ee3a8a967990b3ab5379a1c78f2b6967ae527e3b06744e4d983060dfc1771c23bd0eba0a66c0101410e2cb9262fc935dbf6f1becf82b9387e47dceea773507fc70a29206451800c88f643ce4c30c3bb048e7377ce52fbf5744e25ad2685049bfa6556fdd15c82e7520101416ba08f323f82286654d726410974cb530375640985b514b910f9a5b0132d04ccae74de8757edea7fca0f346f35fa86ad307cecfeee8dedc81a47aebdeee3bf22010141891339139eb80eaf586d1caebd4e286213d1567f752f413dd0ddfa4f7bbf99c1e932812230a63fd4ab536116f17ab3b622983f7490e705aeec9ca0f727dabfb3010141c2735eb0612f9fe9e974cd629c91e39e218684a29b2a41a917f9da696ca4c00823bd7865ab6f941a95465318c920634a293996ccc6da66c0a7763b624eaa11ed010141c3223c81f54ac158511814ad7c7c6c9108f3805fa60e80288a7480fb93d4beebde9517cc8bdf90b7d186c4c1aa89d3a19565689f5f24f5bdb9f35a7dd1859e7b010141d349e3304d5b578302331d4f3d015e4f76a1b6360ebc7a00e71ab99caf858cc618bb9bb9996292e382c084249a908774be331e7dc6be00b4de51a576ca82eaeb010141ed257d312e3fe14e180402e4b36b004fc3a8b28d9eacdedc355a9479317252886ed7190b2ced13a48d765882c8fcf706ae71e1936542affe922ec766e4c035520101410e8a8b81d3da87bc7823a1e608bcd2338fa2dffc0fdd49d8f627cdd29b57e9daa930e891d3095906181ddf26bb3aa7bc8bdf1f4cadbe8520f2ff7c0502ffd67301014138de71eeee2dacf76e0c4ceddae10885c58a1fc570e50b5a255bbab031de705fd2f6a93a6b726c331ea028cb86600efd27ec19dce91a0189e0ff8e7ed86c9abb010141babd3c8fd79c772a9768edbbf254419d2d96dc5d2bcf7b27b90d20490a7e724b2d126b4d81743c84d0eb52cb513dd7f99e13523cf1ae2c47130ca329ce633b8d010141ddb8b7e0bc920edf2037c4c1577db25f69bbc5cd9391dd6de15873bd5c500be3b15225865e5efab3ae8187b0c79ca11f8fead87ab0c13e65f06cbbd14b440d0901014103060f883cd5b41f283a7c1ba3e31eb46ecef579a6a0dedf6b5ee7e61b02a38bd5dd0196d0baaa29afc343d10e516dece7404dc3af64687736d90c01722a440a01014155d2c0acd5421f9c51d91fa2fab27570d700361b77651389b6f80eabf7481db078f4a20f014ee8ea48194dd95df0efab40fc22ca19d8d2ccacdfa03c769dc731010141b943dcd20c7a82b1e44580382eb7aaf861c4187fb69e7b2bbe78382a93c92212952625940539cc037d1ff03f1f3e5e801fe452dffbaf1154c02b40158753bca8010247304402200ede0e38130f654ffd53b147678ee4b2a2a8c4799f41a3dcb5ee9da5fc6b158a02206a7479e1a78f5c6b1ca2ffd77017e35ceb5615aec234231860a5a0a9ae6d044d012103ff64fc44b27c977e915d7885d3bbb54e14275336c61edd116a7403554f83c50f014159d267291397ca25887639d7fb008237028da622dec41d9ad29bee2c8fc7a150afee34849116df6cd79b76a78e2da0e86c4f6638cc8f6f103dc2c33aecc6d4c6010141c511dc4f2410832ae8122d4bee7e9bf61888279a1a2d61e8e2d9181197144f83eaa7dbe718682327473ad3d6d827be4f150e716ac8cef5cba35ebad9aeeb6005010141812301755c551fdd8a15a0e89b888f4366f7c663b8de69b4b1662559143abfd8234b00735c80bd62a94563616b09cc81d57ac297ef0f516079834bb296e04ac1010141e571a73ee9874bbf5eb4d5c6c39623e4528ed2377721482e29693f1e501a8fcd3a5d61819af748089fd4b46a5859ef7e39ea536bb6d9461c80d9af7957e730210101411679ebaad219931019e2d7b817684e465a29e4d498b2db94aeb7e8ff7b107a020cc0cce99cd25d41f860150140c93558a21718eb54906eaa284903124feaa9280101414628e1c30337c69c53c373ed75c265c723eebbcccce6a67267cef506c10835e43cd20e6e666569d240fdd736cfe3bd3ecbcfca0588527a3dcadf7b50be92034001014120fe7cbef314445a02b47863b109c94d631d8f4170af9709028744523b20814b2455b072b6dc3ba992c2bff73c7987515ea982881254e5e466f757bd2f892565010141db3b7370398bcebd8ce9c9a02b37b759129768284c7508067617a8f9e69f72059808d09444f17fed6bbbf7d2e51ae1bfcaaf3c6c9e72eca7e72d5801c71d9d4a0101415e94cfa62367892b45e9421f120d13a2d849b55a1aa73583989426a1885dc2965fae37c06298cb957c0e3f2a47c2d6f0c4e92909fe7684413e9615028acc373e0101417b54a6d3bb810432dffa46f1ef4de2fb181604ee8d699030f7515b57b1ab1cf598e74fd2353296de9ad51057c25b2728db97def1fa18c2cbcde875f43560a60401014199bef81548ae97f00b1c7e3e7fb37cf4d5644e7237f8bef7177d51c7b73c94e667b877cae4164ba936bbf963d603f72a33e01edd7fa703813b7b51477eb34528010141c016f7996e2732688dd52eb766f5c9cf857e436282df9f6edc78eec9d735e188e024930e697b677041a3d135425e1d8b1273c1495b33b690eea268e9eb944a3b010141b7430a349df305f3ef376493befc9a0357ba2c811eeaec5f9be572eae27a985b244e976ce0317aa98cc8c16ad992c8524ce5cc2efae6582214813193a5272ca30100000000 \ No newline at end of file diff --git a/test/fixtures/large_tx_365in_454out.hex b/test/fixtures/large_tx_365in_454out.hex new file mode 100644 index 0000000..6c966aa --- /dev/null +++ b/test/fixtures/large_tx_365in_454out.hex @@ -0,0 +1 @@ +010000000001fd6d01802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d186380500000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c820600000000ffffffffa6e9265b6fafbe19d8221ab473f92197eaa02e2536d2928d8ce759d987f27f9a0300000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab0300000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab0400000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab0600000000ffffffffce1d1b22f09ab4268c702f81f9d3c01e54303cee12db5c022881177a15af3d250000000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733870100000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733870600000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733870a00000000ffffffff5f5defb1532b34dbedd99d22960865f5e9bee2d1c0c7cdffe2ff9b4607f062380000000000ffffffff96cfc1394313c34f7cf43c6f6dbd7516143dff3914c6394fe099c2e8983edae90200000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c820b00000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432760b00000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175430a00000000ffffffff85be3632386239d95f5caf0484331935872b55bc378cb190401db7e7abf7ea4b0400000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab0a00000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab0c00000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab0e00000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bb0e00000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733871100000000ffffffff0dd1ffda332b57a398015cac9277da4f02cd0082ea36a46135c1de3a448979f50b00000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c820d00000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c821400000000ffffffff8562e87e584146385aaee9a50aa90a128969f5f974dc064b8154f7d40a0875970d00000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab1600000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab1700000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab1a00000000ffffffffdea78cb722fbb9fec1a2f2d1bc749d34cef9b5bddda27b3b25937a47cf70241d0d00000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733871700000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d186380d00000000ffffffffa96ad9a7c04aff66e7894edb687119ff1d14cc57d24a2b4804ed3fac9e6357440c00000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bb2400000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c821d00000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432762600000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab2400000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab2700000000fffffffffe94a0e5dfc0ed48a527b1dad7645028dcd46f453baead645bdec919a38c17a52600000000ffffffff068d392ca5b562216ff1423dad0226504778e014ba671d837da9adc857c7051c0500000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432762f00000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432763500000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175431100000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab2c00000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab2e00000000fffffffffe51384fc608fe548a79eaf3c3833e87b79efcf6ad786d29695cca5ad6ca60592f00000000ffffffff0845b22fe699c53f9488fe4a2f7cb984f92c177e78db23be570301840d612da22600000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff51e00000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175431900000000ffffffffaa89c114124379268d54aeaac4c7d2c7e819255edea0616ef4090435fff1285a0000000000ffffffffa5158d88a683b161c608925539b6485b98bb254a89c7749d3d0d09c14a0de5d32500000000ffffffffa6e9265b6fafbe19d8221ab473f92197eaa02e2536d2928d8ce759d987f27f9a1500000000ffffffff182c5bab1d7b2edad0cfe2a3c08980ffdf3f537bd82080ce69d08fb54fba3e632a00000000ffffffff23345ba8686a2607a214cbe09c23a2506e371434d19c3ed99729467c8feec81f2100000000ffffffff24427d8e47ccfe8e0c4699121ee4464c6c2dbfe210e4c5faf4a01b406b214d032500000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c822c00000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432763c00000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432763e00000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432764000000000ffffffff37b3ce4eb2daefced4682b78ba961cebfd9380d4f4c58c73e3f8d0de217861972f00000000ffffffff5e6df640613963cf359689221be7e37a6ea31ba4a7560e408e187a8fcfc8003f3100000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab4100000000ffffffffc2729643bb7e970c8a998037299deaed6f1da52b8a9cc5ea26bd5e7f8aac50d42200000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bb3400000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bb3900000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733874c00000000fffffffffe51384fc608fe548a79eaf3c3833e87b79efcf6ad786d29695cca5ad6ca60593c00000000ffffffffa6e9265b6fafbe19d8221ab473f92197eaa02e2536d2928d8ce759d987f27f9a1800000000ffffffffec98b8031e70702f4266c57714382cc29c73dd8c7fb3e805c60bfb9189a17bd10100000000ffffffff5e6df640613963cf359689221be7e37a6ea31ba4a7560e408e187a8fcfc8003f3700000000ffffffff1e9375bdda340dc2b50988cc737a59c39855bc462d4f6b5a8f2c81c95881e1d40100000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733874d00000000ffffffffe37c4c71ef5d0d509b2ad061d878078107cbdd6384d7496233676c11c89b1b500000000000ffffffff0a2370d63a9dfebd75219226c4915d2e39885ba2676c94305bd24510cf1246203d00000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c823100000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c823b00000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff52f00000000ffffffff6a9e0bca63d7b8e8ef784c71be5bda25009653bcc146fe7abb64d896ad86903c2b00000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175432600000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175432f00000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175433400000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d186383700000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d186384100000000ffffffffa5158d88a683b161c608925539b6485b98bb254a89c7749d3d0d09c14a0de5d33800000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab4600000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab4800000000ffffffffe75b173226d08d7cee74c38851a075ee103ef814034627eb9d417b11af6234f45500000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733875200000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733875300000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733875800000000fffffffffe51384fc608fe548a79eaf3c3833e87b79efcf6ad786d29695cca5ad6ca60594a00000000ffffffff6fd9e80f49b36e69feaa36cf30933772064f34e5991cb2dc5489f5c7956cbbe10100000000ffffffff1e9375bdda340dc2b50988cc737a59c39855bc462d4f6b5a8f2c81c95881e1d40000000000ffffffff75323ce59c3184ea24f08ee4d1df11e9bf7cd7a37c481fd9419f8741f3c1140a0000000000ffffffff8074917035cea4e7eff2345f33d849eb1bdfd53a50cc39e5d16b0832f37d3b750000000000ffffffff496e6abba23234f7cde9297232f1577b5ad85d3d8891285d29852ff185e621310000000000ffffffff2505d13d38886b68558cac6a12a87fbb1d9ce4f812a1c02dbecfea8140f667082d00000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c824100000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c825000000000ffffffff30421a944caf6fb5336fac7b41fa987888c2d93d76d4e34156889b8314a8de574300000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432765600000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432765800000000ffffffff5e6df640613963cf359689221be7e37a6ea31ba4a7560e408e187a8fcfc8003f4900000000ffffffff6e59443b1c79287fa92799038f677ba875194a80da11b51e9b392a7057a00ce05400000000ffffffffa1e78fffaa734ca9b1743df1ab3f9961f65c9d3a944f12b01f52caa14b7d4cc34800000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab5900000000ffffffffb184dc55797eae1204b143580251e97471c63d496d80ff1b16f5dd6c5fc919064900000000ffffffffb618e9603c842a2d78a43e99e00f7e24675551391e27f97979deafbe1c9d5b974200000000ffffffffc058695b356bd0b8df786f4191accb978e33bcce9712dd83d9e184fa0c9639c54a00000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bb4700000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bb4a00000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733875f00000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733876300000000fffffffffe51384fc608fe548a79eaf3c3833e87b79efcf6ad786d29695cca5ad6ca60595600000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab6000000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733876900000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733876d00000000ffffffff80bf104d2f589ac0c24ff52300c5d62839cb78144e58f05b48333c1a38bf47c80000000000ffffffff4be1c861aad56d657fd5e2ff1a8f2c0618b8de5b2a5a2d310412b22e25315ac75100000000ffffffff66101a8f91304a788ed1a0c82d49d3e8c78867f7dbdacdf71253239a6c309a488300000000ffffffff687a2cddc55e9e6e3b860da69d93d406a24c81c2ffbe2799c4d35c10aa03b9ba6500000000ffffffff6a9e0bca63d7b8e8ef784c71be5bda25009653bcc146fe7abb64d896ad86903c3f00000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175434700000000ffffffff9c8d919c299612db444b73155c5bb83574e7b8928bfaf28216f4746ecb75c68f4800000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab7100000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab7400000000ffffffffafe806308b9a149b37e51ef51ed827e1947b8d5378fa8709ac3b66e247dc92903f00000000ffffffffb46787c26d32e47cd51273342678f2e7c4d309191364690753484a48ed1e1bd04b00000000ffffffffd1462895309f7f810657f6db34fdc8952078bee7f0845f9d3c1e41c9d20133de5600000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bb7100000000ffffffffe92f25fb4acddb3beebe71313dccb5da1b61d4dad03e0e2d4a1e625cee1b5b9f6400000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733877500000000ffffffffa347008aafbf2ddfc06ac57368c21eb8420400d6766ca4d2f052ceadaf3638fa0100000000ffffffff29790955ea4ddc13157c111278ccdf2a5ef49141bb5261b5d2b968fc3411c4e30100000000ffffffff481c8665ea46b962bbd7ba0515e4ca55873fe1c64ad15f2c7438c8b457cbb9190000000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432766c00000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff54e00000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff54f00000000ffffffff6a9e0bca63d7b8e8ef784c71be5bda25009653bcc146fe7abb64d896ad86903c4c00000000ffffffff7ac5eec780780b7c13948c93dac9d6e4dfcf6033e9b0d18852fcd886a44ac25f5400000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d186387000000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d186387100000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab7e00000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab8000000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bb7600000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733877f00000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733878000000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733878400000000ffffffff0a2370d63a9dfebd75219226c4915d2e39885ba2676c94305bd24510cf1246208000000000ffffffff28dbe54fb382606d909019e781010051c52d055998cbb90701061d983b30c6e87b00000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c827f00000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432768100000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432768800000000ffffffff496df456204aa2957fa57eff5f6ca3133e10d83b7f5f416c5933689dcc7bfccb9b00000000ffffffff6a9e0bca63d7b8e8ef784c71be5bda25009653bcc146fe7abb64d896ad86903c6100000000ffffffff6a9e0bca63d7b8e8ef784c71be5bda25009653bcc146fe7abb64d896ad86903c6700000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175435d00000000ffffffffaabf1bb4c0f74acb7434a9a5bb8591ba920a2c9c25d9f9b5b8099ecd90c6dd396400000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab8a00000000ffffffffd315815f4ec2841d01b419b2064a187aecab9777bdc3a9bb432304ed6c97409b7300000000ffffffffdebefa445534a3575c8c6095cbc365655022a195600146bd110479e43ae0b38d7a00000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bb8600000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bb9000000000fffffffffccc245d09805a5a6e8b20c0a1bea539d51c5b244e05c147049b8b847823536c8600000000ffffffffb56caafffbd801acf5a0a1143e00024012a0a9e81a292caab35486950c8d53d00100000000ffffffff0a2370d63a9dfebd75219226c4915d2e39885ba2676c94305bd24510cf1246209800000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432769400000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432769500000000ffffffff62fb851b2e2b9e9927e088a59b9d0fbda8d66fb508a6d65f6d5845057574d8f59200000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff56a00000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff56b00000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff57200000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff57600000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175436f00000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175437800000000ffffffff7754f014a8285352c178023a32209f6d298292090957428ff32a8e3997fea4327f00000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d186388c00000000ffffffff861b9738bdb2bafa8feee4d8441f19f24b2af41e3fad92e3036c73390c4f303e7d00000000ffffffff8dc90f390a5a0812d80252ceb3e3dd1d985fef76630f6fceeffc94f481dac5499d00000000ffffffff9d58986abb1fcb47c517d16d1f3cae09038022a8d64a51d5f5ea717273a8dbce7800000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab9700000000ffffffffca6b3eeb8176d0211f43eeacc3cdf94854746a6fe3dc82ca085fc06bb89153ed8600000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733878f00000000fffffffffe51384fc608fe548a79eaf3c3833e87b79efcf6ad786d29695cca5ad6ca6059a800000000fffffffff9f8cf59c2d1e23828ce0512a111998dd8e797621b8174ee0849276da5d96e350000000000ffffffff0a2370d63a9dfebd75219226c4915d2e39885ba2676c94305bd24510cf124620a500000000ffffffff16ee61528087570dfa1b0093bd6634c4e4382272bdfc1b507936933f25064b71a600000000ffffffff1d868c6057ac1327d88addd875d5965f7737f5b861ac8c65485fbb83a901393b7e00000000ffffffff7bf8cc5a0828cee0ddbf12c1d2c299cc291d76e007bd8a2bff318c3ec7d6fe5f8200000000ffffffff7f1a0e74d676549703f714127264ce3696fc92254cf8b83f375924e31a3631947700000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d18638a200000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d18638a800000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d18638ae00000000ffffffff88c0e7855804e57727b87c74b21c1ef8f6356d70aaf38d2ede8510ef3211c78f8000000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441aba400000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441abac00000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441abae00000000ffffffffceeee47525745fa02f43a5e835673831f18257dc0ff6c2f85e8383f68f1bfd6a8a00000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bba300000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bba700000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd73387a400000000ffffffffeada8c2aa0b0c884a2438fbcd30d762cb5c97f2e759e32d605728a2c8374e97ebc00000000ffffffffac6f0ec7534cab7f6d9b140dfef42bab38e3129520af1fe5cfb0833153ae7c280100000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175439000000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441abb400000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441abb600000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441abb700000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441abbb00000000ffffffffc3f7170a95a7b7b190a90bcdde3d1c9ab42b0f5b4f3c4d859fad7f6d4344cb2a9500000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bbac00000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bbad00000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175439100000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175439700000000ffffffffcc7a987e3c4837238c80fc3069de47072118234897f52ea31efae51b75121124e500000000fffffffff871a1c87a6203ee73984b061eaf43f46632fcda82ab8d8f17df83c3513222d2ae00000000ffffffff079eff874e133b9d62e8a88556a60839eac0abc0943650d47c67868966bb681cbb00000000ffffffff0a2370d63a9dfebd75219226c4915d2e39885ba2676c94305bd24510cf124620d400000000ffffffff0a2370d63a9dfebd75219226c4915d2e39885ba2676c94305bd24510cf124620d600000000ffffffff26400c1a31fee1ca0095aa4fba848d90c0b719b384a67b4147d88ea84f8322537c00000000ffffffff287c21f60b059c19327084e0d03e78ae2d9dcf99ca783e555dcba3475cbc38cfc500000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b543276a300000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b543276a600000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a17543aa00000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441abd200000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441abd600000000ffffffffb99d4f2783e31268f550f809bb452a23fbb0c87703189ac60e727d0b95e6e5a8a100000000ffffffffbe5ef99df3ced5b02bf66d5ce5c651d7d8f6839a3db35ad1071b8c461c8be2d99600000000ffffffffbe5ef99df3ced5b02bf66d5ce5c651d7d8f6839a3db35ad1071b8c461c8be2d99900000000ffffffffbf02fc1d58709323fece5d57edf7cb5138be789e2dc23d04c275f22fd6ea14dae800000000ffffffffd1462895309f7f810657f6db34fdc8952078bee7f0845f9d3c1e41c9d20133deb500000000ffffffffd1462895309f7f810657f6db34fdc8952078bee7f0845f9d3c1e41c9d20133debd00000000ffffffffd8eaf501711868a6d3e25b74211a1213acc5bff7493c9f59bf95968d541848c4d000000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bbc100000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd73387c700000000ffffffffee9147049cb19dfa9f2c3d3f11f1b73ef56454e9e7471d4e73729e09fc1052ceb300000000ffffffff0576149364c1b70a3d056cfbf53321257bc495f526461db049f88d1052c25e6a6b00000000ffffffff23b525948035321e867156caf68ebae97127bd27efdc7c04f99af8c2ea7497549700000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c82cb00000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b543276c200000000ffffffff6a9e0bca63d7b8e8ef784c71be5bda25009653bcc146fe7abb64d896ad86903cbe00000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d18638bf00000000ffffffff9b5eedf5dd055543bd2a4f3c12aef0d2f010aa1b565f915366f4d65b850eb7d6c600000000ffffffffa6e9265b6fafbe19d8221ab473f92197eaa02e2536d2928d8ce759d987f27f9a5400000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441abe500000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd73387d100000000fffffffffc4fea2b6616181513fb9999df57003b748a12f268d44f7bb9f1b8547cfa9212fd00000000ffffffff844ec5fa25217ce956f427efbb47be31212fa88bef4776a29b6af3d1039032e70000000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b543276c800000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b543276ca00000000ffffffff66101a8f91304a788ed1a0c82d49d3e8c78867f7dbdacdf71253239a6c309a48fa00000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a17543c200000000ffffffff7af25fa4915d215b791fffff3eec98fad8d7dbc06a7ecf19493217672da0bbe8a000000000fffffffffccc245d09805a5a6e8b20c0a1bea539d51c5b244e05c147049b8b847823536cdd00000000fffffffffe51384fc608fe548a79eaf3c3833e87b79efcf6ad786d29695cca5ad6ca6059f800000000ffffffffa445cea1446261739f266a44c66c9d733c24d3f0d9d1376da63b8e3c25c511f90000000000ffffffff23c7f5d9a8012e6d94a0d66b76fafb42f2ed9e79af160783f46514f9ac782f170100000000ffffffff29ff3977bc4685fc424feb241dd531e2d87cd0df901327ce66fb7104244814559900000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c82ea00000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c82ec00000000ffffffff3399e043b9bf6206098a4a9e8769b7c6d50bb6e1d113f4f91b1e80fab5304a0ed900000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a17543d500000000ffffffff8192d6a7cc2fec0e03751a795df14552e45ffa6f2dbdd64627b745100fc506500d01000000ffffffff8fd0234ad6ac810a0e4839043ea8ff8507bee5285b5cc97eeb1495dc5661652b0001000000ffffffffa992402a849fa44f36f9778e4d14e0fe24d504b0d9e83ad0509f63ff8cf121b00601000000ffffffffa992402a849fa44f36f9778e4d14e0fe24d504b0d9e83ad0509f63ff8cf121b01001000000ffffffffb184dc55797eae1204b143580251e97471c63d496d80ff1b16f5dd6c5fc91906b400000000ffffffffb5ae7d05bd4992d81c1fe0144a926ac1f491e05c77de959c1d256587cd3325527600000000ffffffffe3667c258e88fa65e93d0951f2a3a8c613605f2cbc668cb5e47e3c0a46524f67b200000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bbe500000000ffffffff16ee61528087570dfa1b0093bd6634c4e4382272bdfc1b507936933f25064b710101000000ffffffff4052c23e52568319ac8bc69d5fad171341bc837792584fa7b904ecb3726bb374b900000000ffffffff4f6b493d22193dc9e884edebb4215a97659707159befd038dc8293082dcb86a71201000000ffffffff6de960b1819bfb75bd09b986b2b474947df7d2af6f80003fae4e2e90ec26aca67800000000ffffffff7bb9db477b4e629707bc0b128cf01161fe59e4da48333c301e52ac26ad170845c700000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d18638de00000000ffffffff826f32724a10ff3295c73f417521c08abe0e2a277b01a3a0cd4b6f565a353c8e8800000000ffffffff84e5543c435fee845b4a91442bfa605e40cb862899aea774b6944c58b0c55402aa00000000ffffffff8dc90f390a5a0812d80252ceb3e3dd1d985fef76630f6fceeffc94f481dac5492101000000ffffffffa32b7005cddf600ea9ed4d525fd3ff4a4f0b9c44235d53f9d941337214f957881001000000ffffffffa6e9265b6fafbe19d8221ab473f92197eaa02e2536d2928d8ce759d987f27f9a6d00000000ffffffffa6e9265b6fafbe19d8221ab473f92197eaa02e2536d2928d8ce759d987f27f9a7300000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab1501000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab1a01000000ffffffffc7bf92f9673202ae8ed772c78b3f380f1c154e392fcb38e61cdaddcbb7407d498900000000ffffffffcc854b85756faa561087c588805be5b6c5f19e2d739b40b632c105d18bb279e2f300000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bb0001000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bbfd00000000ffffffffeada8c2aa0b0c884a2438fbcd30d762cb5c97f2e759e32d605728a2c8374e97e2201000000ffffffff079eff874e133b9d62e8a88556a60839eac0abc0943650d47c67868966bb681cfd00000000ffffffff0845b22fe699c53f9488fe4a2f7cb984f92c177e78db23be570301840d612da23701000000ffffffff0c61136f5f532b466e2952d69079775c531f3fc3213d7d23bed79e0e2a365a0ed500000000ffffffff0dd1ffda332b57a398015cac9277da4f02cd0082ea36a46135c1de3a448979f5e800000000ffffffff16ee61528087570dfa1b0093bd6634c4e4382272bdfc1b507936933f25064b711201000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b543276eb00000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b543276f500000000ffffffff484fe2f3bac8c587040bb1a5568ddbefdee20eff3813299862fc6589e7fa42674101000000ffffffff6236bd6cd2a92c0b41af6316fe35904be853082122ce54f64c332472f52af482e000000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff5db00000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff5e200000000ffffffff6a9e0bca63d7b8e8ef784c71be5bda25009653bcc146fe7abb64d896ad86903cd000000000ffffffff6eb21f0e7884235eb743491d8e058a93b41807c5dc939524fbc57d20976c3706f500000000ffffffff7bb9db477b4e629707bc0b128cf01161fe59e4da48333c301e52ac26ad170845d000000000ffffffff8543c06cd1deec322611f7fd34b0376ab5c1a5519191e813e068e15dc3f455981a01000000ffffffff998f5f5df121fde51907fec2218c7a96885386dd59fa24772ba8397336f3e77b3c01000000ffffffffa6e9265b6fafbe19d8221ab473f92197eaa02e2536d2928d8ce759d987f27f9a7d00000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab2d01000000ffffffffb184dc55797eae1204b143580251e97471c63d496d80ff1b16f5dd6c5fc91906cb00000000ffffffffb22d7cd778745ed01cb0df05ad57b9378f2cdf851e9ff187e2052f777ee1f3c10401000000ffffffffb96800c26daf6d71e54953288eddb6ef8655da5a3da85169adcf147610a78dfab600000000ffffffffc71060d9120606666d101a94355f5e5562f7589d858d0afb8e29e8f1d5609563cf00000000ffffffffd315815f4ec2841d01b419b2064a187aecab9777bdc3a9bb432304ed6c97409bf700000000ffffffffd474373dd644dad63e725fa4c4fdbdbac440b78bacfb8219c04a910d01bd750d2601000000ffffffffd478b1635e06a14006cd4b29a7e0c4dded995f794c545e828b9f0bdc17ac1c9da400000000ffffffffe8c4f38f5bebb2bad4ac972656d9a1b8e5e5d95c212c3812e30929b3f76491bb1701000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd73387ff00000000fffffffffe51384fc608fe548a79eaf3c3833e87b79efcf6ad786d29695cca5ad6ca60592f01000000ffffffff81427c490f37872fee3c75e40a24ea636e48df84b0248fa0978f47dbfbd599990100000000ffffffff16ee61528087570dfa1b0093bd6634c4e4382272bdfc1b507936933f25064b712c01000000ffffffff2353311c1633a38dc74142220a4dd12278369eb89c357a48462165c9198779d0d300000000ffffffff3d2c13d56ba27b393b3d25250865c8044efd2e00ceae045295a523b12d6c84ade400000000ffffffff5b5c7fb3d05d11f64dc4abab3ee2a8ec1213b3d2849dfe58a497592320d914e32801000000ffffffff5b5c7fb3d05d11f64dc4abab3ee2a8ec1213b3d2849dfe58a497592320d914e32e01000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff5f600000000ffffffff6a9e0bca63d7b8e8ef784c71be5bda25009653bcc146fe7abb64d896ad86903cec00000000ffffffff6a9e0bca63d7b8e8ef784c71be5bda25009653bcc146fe7abb64d896ad86903cef00000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175430201000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d18638f000000000ffffffff8635b67e8ae02ab3941c834d56153ff38210024ad59a50e6dd3083ac8360d6bb7701000000ffffffff9c66950178c5f2e0a06ace88fea3f2cf7153a60b827839ce4e04970e8e0357c62001000000ffffffffa9b0de6c63037e7e0482b6e2eba8c9935696a07484f7756213b1c1c329a83de01501000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab4201000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab5201000000ffffffffafe806308b9a149b37e51ef51ed827e1947b8d5378fa8709ac3b66e247dc9290e200000000ffffffffb46787c26d32e47cd51273342678f2e7c4d309191364690753484a48ed1e1bd04a01000000ffffffffbe5ef99df3ced5b02bf66d5ce5c651d7d8f6839a3db35ad1071b8c461c8be2d9e000000000ffffffffd434d9eb02d595915dc4bec2c8c1f32a81ace2a136d239b7ac4e0c0f96904bfa2901000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733871001000000ffffffffeada8c2aa0b0c884a2438fbcd30d762cb5c97f2e759e32d605728a2c8374e97e4901000000fffffffffaadbc0767cae1ac62171b79ea9a41509c270a3ce6b852ce0b887bfe6674c8b32f01000000ffffffff0a2370d63a9dfebd75219226c4915d2e39885ba2676c94305bd24510cf1246204f01000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c822b01000000ffffffff304672b629a938b3a6a51bcbc007d03cb4dc9ca3bbea51dca80388d32b5432760b01000000ffffffff5e6df640613963cf359689221be7e37a6ea31ba4a7560e408e187a8fcfc8003f1501000000ffffffff63878cda29502674e1739f59367fa60700ac26bc462b67568470c92605ec9ff50201000000ffffffff6a9e0bca63d7b8e8ef784c71be5bda25009653bcc146fe7abb64d896ad86903cfa00000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175431001000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d186380201000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d18638fd00000000ffffffff9d58986abb1fcb47c517d16d1f3cae09038022a8d64a51d5f5ea717273a8dbcef400000000ffffffffba686abd9d769f0fa973a39f6bd7090d50c07062ef434662b2417d713191e26fd100000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733871e01000000ffffffffea39ac4bedf770a52c4d2144cd955f12e070615a6c10a293f008b0065cd733872001000000ffffffffee567a2d0ce171051d833e47a51f68b62a9bd574d2126afaa3dee59caa43da4b0901000000fffffffff3131ad9ba316569df8441b2a08172c370739239d11b24db48a3765d00afaa37be00000000ffffffff16ee61528087570dfa1b0093bd6634c4e4382272bdfc1b507936933f25064b715201000000ffffffff2bace5e26f2cae193bb173f7c054fd3eaab689738180bcca149ec5107c580c823401000000ffffffff3a0506fd8904f5652f817b5dde9b2a78e7190a2e48863ed202534faf700e6a025401000000ffffffff51e4a8576f77a20ca36056aa374864ec42f33193dcd7bff5beee2c880c616a8bd400000000ffffffff5e6df640613963cf359689221be7e37a6ea31ba4a7560e408e187a8fcfc8003f2501000000ffffffff755762023b86b1329405dfd64b25350884f4a294dc4e93447dbbaec279a175432001000000ffffffff802597c9f9c8a83a9c6a01cf98c15ea16c8f444d4b454427c7afc97dd0d186381601000000ffffffffadd8332b93c8e0a5afd281b97fb60ebf8d3681e9e1634dbff64b2ab94ec441ab8001000000ffffffffafe806308b9a149b37e51ef51ed827e1947b8d5378fa8709ac3b66e247dc9290f600000000ffffffffcc064931710ced9218d98d62c95ed4268771992e7e5176664c1ad2b9d9fb04670801000000ffffffffd09b16063ad04ead1b9da53f7ee2dd149391e93a146594f1e47e3b5afefefad7f200000000ffffffffd9d18a935c9dca608a4e08da62659f34af8725b0120334aa19035432a29f81563701000000fffffffffdc60182ae210500000000160014297bd1aa851f016c81989c61e9f0374abe2927da82ae21050000000016001449d6bfef1f7ac109bc55ddce7ff04eb2ed6f5a3082ae2105000000002251202209c023a4152f78958a656d9e46555d7efc11a552b316f9f01bdcb334d9dea082ae210500000000225120325950c2d29c2af97c9e2a7b6d6b2d385e122a63d1e45661237890dc1d814c1182ae2105000000002251205a284248f0b9493c89eddd7d0aac1527fe386682a1a7bece9e48279cc83dbf6482ae21050000000022512085b0691ec2a133d2191072e6a881152154c2a44b121743b3a90de0831604636882ae210500000000225120a13985732bddb043009790b526e0bc18c96337d627a577e8ab19203b40d4083782ae210500000000225120a71bad95044a4d7769fc84b5472061a8b431f79b0944f59a5308863527d3272b82ae210500000000225120c26d0b89ee7d30042ed0fe1d3b31498f35fef296ed5861966bef771a15f5628d82ae210500000000225120c5fcd3d46fca293f9a047ac924b7e155f03fba62518288e4f78a33622ecb227f82ae210500000000225120d6a90733b211805929ed38fca3a5144bf47943a2a1fee7b1607298bea4432223000000020000000016001412682b75d812d141ebb9eb136d9f4af677511ac50000000200000000225120292cd3f6226744235c97a970c14ddf05b8c98674c71d4506d488e604c107ad1c00000002000000002251203f120ab81bfafcecbe26d15fab0d627e4168251ba3fc5bc694f3cb974dbd638a000000020000000022512055f409343f8fa522c8b2722d8d4e452548ef99bbcf145d11b5c73357796fe9ea00000002000000002251205e3448b3ce55832f44a8a47a95f79fc0b7b3b4d95feeecf1ee8846bf94caf3d600000002000000002251206175e319f1d4f67ef7426e4da32828b9a174f499d14b439b80b655837775bd590000000200000000225120696b74150f53c8ec6a64e3c22aa99e523cfe1f4cee8e509c561cc217d5354c10000000020000000022512077cbc076f8034a9c7e69d02e32ecbef996a6dc013df9854fccf07b2f13a417e60000000200000000225120821df744318dd9d1ebb2b69dc15f72e19dd3c1a7ef839b11d55a56a97795282200000002000000002251209857ec439e18885bbf24450ee1839b157a412f35335e85b5ce491aec0475030200000002000000002251209d10f6afede234e2f0a91267a64c0e468941adf55e1a084a14e34c5a5048e23e00000002000000002251209dcf85e6aebcbd8f3e36e0c284c8bacc168c3af3b9b516853fe581e5890157e80000000200000000225120ae1831a7f652f98bb1b801ae0059d3ab4f3b1196d45b244b22f81c0766a3b2570000000200000000225120db70121fd10edef6950bd05927d5a11293172cdac12dbf0c1484c54fdd351363002d3101000000001600140ac48293aa9f7b7350cb0dd8988b30705dc56d2d002d310100000000160014c29b648da13a94e1c4ef4b85e45a6b0f51b44648002d3101000000002251200b692bfe0cb0c6fa6218f14db72fdcaecbabd60adc39ccf640390636bce7245b002d3101000000002251200f9c446228240b2edd4b5011c4ed5b9b6c126a0e0af25dbdf5f2a7f2694eeab5002d31010000000022512019f04c12643daf5d3597b3908a630e5a9e04baf0a3f47db3e0f8dc5860458284002d3101000000002251204615e795d7fb27fb46471d8faa2257e22098fd5fb88739fead098c676dbf0e38002d31010000000022512058e5ad60a7c012b56293f4f2e3e84e37f06eb24740a433c378fd7e1868da2ab1002d3101000000002251207bc04b70391b8d75f017a1c8ac9eb57073bebf755bff3ce030f0eb6d8ac9f297002d31010000000022512081431787df471e9b80f6212612c9ff010f0d32dcc0dc1aec2371e6152a264d92002d3101000000002251208f87f07200b3f06fb1b62a7654e8d0fa0b394126f6dfe4cb65e37cf4e5fc5cad002d3101000000002251209cb3e13f8d82f54051c71197725dda6bd7e67f59afd6b36fb0a89467a893b8cf002d310100000000225120a2376b13d15c0172eb6d3b1f6e13cede8d21a37b5ba9238fb98a08c7510cb9c8002d310100000000225120a52d47333d3c21ce9b8b504ede27f28a1c8a365f524a36941b5fbf3a576d826c002d310100000000225120c637d81c3f66c9fa2880ca8dcac44e19ec4a44d33556342e45090759e17ed68e002d310100000000225120cd2ff0e1116c480e195598527179c1b1410b2c98827a81deca91d9686d2be7f3002d310100000000225120cec38e35ad6057533073aaea840600518c87af5c0188da1af8076f19d19c381c002d310100000000225120dae39ebc03cc57ce617090372488dc843102f1868f57e7e98d0dfa985ebfc5ab002d310100000000225120edec6227ec5cfbae92c799b11a2203e6e7dd4d161d0f7b0fcb6f40547c05a8dc8096980000000000160014010701a73ba8d173e0f13312c385f0d660ac589a809698000000000016001433d43318cecdf381ddd6058822361ba38d80f2b2809698000000000016001448163f6434bc1b2289f57574ca7c2df7de25efaa8096980000000000160014598a7d526824d3c9336d96ba9a72cf9752478f428096980000000000160014e1e4cc124fe59842425119ab0ec92448a1b422518096980000000000160014fbd9ed61c3d379a01d6b0ec4d9417ff7dfea841680969800000000002251200cefe2c885b9e735935d3e15a118ab1e9c14db00da1de94337c36e7b55454d9c80969800000000002251202e4763b809ca74269a6816774dbe3a699d9d9718a1ab5cd35c7dc4dafab8570380969800000000002251204c4b030774ac2ef7aaf37723ffc7e2b440c098b9d4dcf459dd2898b3a0b80f6a80969800000000002251204fd308d8344dcbe27b6cc49c508b03c7d1d580adbea6db0adfdc30ccae605e47809698000000000022512053086b69b31e19ec60f64c6ff5f98aaf1d754842c61aae6021e2f9ba0dd926d78096980000000000225120655279dd0bee41dc3b2c05bb81d8b48c3538a60d52d45f76c6a8871012f883ee809698000000000022512067ca21a5779f1fa0eee9a621b91c36e7ad6ec0085da8372bd80cc24bd5e986fc809698000000000022512067f33ba3798f34f03c0c5f80e36ac33e430d403b6536546675e637d70be7a93f80969800000000002251207f6a25e9ceaf96c00609fda173e3816809c1cb3cc515fb9ece3f612c262d8ca5809698000000000022512087aba1f428ac6056f2a7b7f9ecdee8029c04fbbd6d8ba24f4180c090dc814a128096980000000000225120987c44b66c52ae3e6f9e114236fa6e3df3f060c4dabc5f35dc25da739f385c9680969800000000002251209d558fb6bfc06cf107a8d5bf9b78fab39eea66a86a12334269ed5d822ee0acac80969800000000002251209f6a47db3540d1091f485cffa4c25bef80c4634faa68697855f300c2d1ab00188096980000000000225120a4691e567a7c4447944f24e088733b86337c835ec29bfc82d15498150738c5c68096980000000000225120d0943493338a992a9dfbcd9f9e565bbde2987296a7ed834910a2bb55efdcb6088096980000000000225120e7cb277868369975ad1e323fc5b97110353a0282d7d9e3f698513aec9a9b57afc8e58700000000002251206d96289cfdc795d64a21b382ab3d75ab8414b1601b90fc9bc0052aa480f0172c404b4c000000000016001407da84c92d14156adc3063d9deaf1be751f6698d404b4c000000000016001464404ecd0798aa740f7db88b64791fedd4471aa6404b4c00000000001600146cc3d87c23e2e0db1bc833d6efd7e0050108686b404b4c00000000001600146f08551ca5ec7c77fb6d782ed8a21ce8fe822d3a404b4c0000000000160014772fd8089b699b82dbe216df1f6bc5bea7df7f88404b4c0000000000160014b91b0e501e2b7d72b33a015bfff1139f7903affd404b4c0000000000160014eb27f795e1e4d5898aec1113375ace7a168c4ed3404b4c000000000022512034278bf6aec85389983cefb6b0a402632fded88097f8823abfce2d074244ea52404b4c00000000002251203a688bea6649009a7c889712c877ca3c7ccdb4760c342ff14fbe3d5867480a9e404b4c00000000002251207eb51ecdeafc7465cbf812040d962216bd91b0ae5f3027e6d12695743fd56931404b4c00000000002251208a375d85ad231335a1685ca906c1359d6f28cf640d9071a77e417419f2b47d65404b4c00000000002251209691246791a4a0137023e261c050ab5773473f1331b677ac3f8e83d480eb24f6404b4c0000000000225120b1ca882e765cae1aeafb9db2dece2170392c64ae9ed9b541c85ecfb5475603b0404b4c0000000000225120d59d106af2db1cc6a608adc2f9970a84e9bee13a2d22d3816e7bf9ca3510eddf404b4c0000000000225120fa2d2770ea4644514c2e4e82982d23d5e7240639a59eb928397ccb8c36fa66da404b4c0000000000225120fccfb35f371b73cd778749a02beefab9a267da4882375c3b6a380d718da15cfd430b32000000000016001448eb467d2864493b12e6cd2c72e3551fdcb16de8a6a7300000000000160014ae5a5e1a4c89f92b8537f3920b6f168b949a4d0da6a73000000000002251200037bdb8d1225e415a684f932a48df25c1dd6c0c7f17ec3bad8163d6351c3426a6a7300000000000225120009e2ba646e4c060a1de3c3529c6699c337c9115e826a7597698fee5b9dfcff2a6a7300000000000225120210bb7d0ea7c5f145007096cbe6af28269fe64bba9d890889e3d394d19f35654a6a730000000000022512040db5bf14d53963f857fceda378760c5cfb83c14303886920661304a538d92b2a6a730000000000022512052d53a38d4c88881a4030d918c51ae7ddeda53cd2f34dafe756d997d11efe71fa6a73000000000002251205bb58c33c6f37dd22eae2889c02a5fbfad80c9e637764ca783c1375829974488a6a730000000000022512060743e5d7f031705e097e932185576ded3ed77a0f19480ccebedd96731fc4d09a6a730000000000022512069fccb730a9f4c2050872577dda8f46d309bd06eaf4ebc84c640158e74587148a6a73000000000002251207a50588f62e3ba5df44137ecb75fc95e7c0235122aa4e6e35ba985609272ccdaa6a73000000000002251207f54d954ff4e0cfa700610145f7a7f1f06e27013e91bebd991f31dfb10b81037a6a7300000000000225120964e57ee789565141e75a87410b0ec082ef3335b20a8df3825cfac14f978d90ca6a7300000000000225120b4bf0cd5467139e0781879cc8c294323e4564fc3cb3f80e4c884cc04d0fa24c8a6a7300000000000225120c1f7d7ce545c7a6a193975342a2a131076356d2b7529ce68183dcfc5aa0bc133a6a7300000000000225120c3c0b78401e32cfbc3fbe9ed5a5d07025b8b62722db3d58818898e2427940b10a6a7300000000000225120c82a86f81cf8978d05e419c50e8d6d27d46f3d1ad2240551373848e162bfce57a6a7300000000000225120c86abb234a9ae10d8b107cb6ca3cc418843a1b765662c7b088eb0d440996a6aca6a7300000000000225120d0eca187ee6e2a4083bcfa609dd72cbea8c60a5d239f7ad071223b6d5e713036a6a7300000000000225120d1b0fcc0357a791c5d9a1591de8930bf5cbae09bdf855c442a56ef054da18510a6a7300000000000225120d4b3df6e60c83c1c1b09e70e1a668ddf86a46894e581c22f7628f585b210757fa6a7300000000000225120e670160cfc440ab1254300f14e4b3a0ac3eff2a0fbfa224693275c6c217e53b4a6a7300000000000225120ea02c28484ad230fca7cdb838a844701c288cc378b4dff3024c0940ba026002da6a7300000000000225120ecc5b3638c382f36a981851c003cd2652a47a54e6629f9e992bed4e1681043c5a6a7300000000000225120f15fcc032fe2864b80b5ccad1e36139f7df7a1f317f8b2e72c7bd770ad806aeda6a7300000000000225120f55a28bf01ae86b007b4a51fdd1ce97d8bde3d6c716b30a8fbbc49d23a7fe6e40000200000000000160014b7d05c6f7143fdccc9635189c18678c208b4fff5000020000000000022512009e3e8429c7230033d0e71cc27f643c4e98d794a6e92b760a0bf1aa27fc1a58f0000200000000000225120177e09943257724dcbaab3132c1d8a52841ce752c24f50c19d9a253455bf1e05000020000000000022512022f911fcb5b9e7e92f1b5bdf671502c254ffec7b513887359a0c4f990c7b1e6d00002000000000002251203936acffc93b844d79f656ce85115319db6f180351ca691fc4807453e0e8040f0000200000000000225120659d4e4b5f2ed329df73501d3aff388f84459c2d15011e885f88718890d28c7900002000000000002251206af16108807ae1d634f4883524744a8cc675533b8038175382a4a1cb70721fa700002000000000002251207aea0dc2c45c06e837413f18e84317a5e0735ba654dc6943df3901635d093e6000002000000000002251207c45ef2224e84974e98bd04151eabc5dfd8f999ad75cae98149a32c3a26f3742000020000000000022512082c5d346149d5e099c9ad51a386d08b41b96e74ee67e1f1d52f05d6e822cec7a00002000000000002251209624f0bf1dee2063860085fe9885f37cec5cfbae1aadcfafbdd4d1085bf417bc00002000000000002251209a6a53f6f3ec23e97b79762dfd0f8464f0ae26d58f4f16cdc24cd0091f5fc68500002000000000002251209a8c00668a8387fa31a75925442755f855e19c4a2d08c55415e65008125abc9400002000000000002251209c12a38dc1f6d7c8d2a7357d6a727def7a475cbfbdf1060bc54f8ae8531a578800002000000000002251209c84eb22aff9c72edba504ad2f36cf9e0af9d9e22d5e23e6618446a56fb30e4c00002000000000002251209d786efd7b17bbcd3dcea635bf8c783c9b9ac734ec05ae045dc408a2337577500000200000000000225120cbe7fdad1d07f5e23b2dbf5ecabb44d2979b6e015133aa1e975b7b0713ae98db0000200000000000225120d0f63a848e17fa35d240f27c60f9e24f062aa6a535d703d7df3d27a3810be6ac0000200000000000225120ed7d81ea6f97c79fc5ef1c4027834173fe1a8c0d025df2340f1a8ab0eec6cd6a0000200000000000225120fa0908b50fb7eb6ca8d6d6da78af7df3f92f278fc81ff17ff83c592f0352cf19e237100000000000160014d519c70966dc51f9c6c47c5b4cd6b420d137f9f2e237100000000000160014df3db550356784564b45df932ddb91398693ce9be2371000000000002251200099d896145cec8369ed693ec1bb5e7bb474e1d7d012bc5a8ad668b9f84bfe82e2371000000000002251200acba018f776a6968a161dd70b3c637794cf81eeea55b69d70e1764aeaa3dd70e237100000000000225120163739fa0d71d9f60aa7f157e7a8482dc00a36cb2e0ee576c81f41c8c6572844e2371000000000002251202f0b8ebe8788cb847e4ec5420961d6b72f793e50a5c7e3a7f40ee941978915bee23710000000000022512031c9d3d72c085df21b7538fa60080467ea36dcd13d59406dc455d9843f390f84e237100000000000225120339690d6a5e0f2c351a672da199fb7670e05c6f2a3c417b6b0a3afeca9f7bd1fe237100000000000225120497d235a011e8470f083b8feaa83bbc649f87da1fdf8a4d9da298d0e8114cfe2e2371000000000002251204e1730c10903e7bb55c96da4a84d08c829fb09ed828b71fa5617130e03342f37e23710000000000022512068016c2405c24ef61cc3e58c8b854ea64d370828ea1655ec6e25a0dd5490c141e237100000000000225120836fdb587fef59f16df9970f05b67a79492d9c2e4a3fdce5b813a51f69878f18e2371000000000002251208f18076863098deb0e19fb503737aa805fa5851d2fa5ffc24163a1c020fb28d2e2371000000000002251209d45b79b86da3eeee5e3a793c23d0ab62898d734a2dd1d4fc3705a0752dfa387e2371000000000002251209db6f408627e73730460c4aef4384d2ea726749964739625d6f579622a9471d9e237100000000000225120c4aacd8bc09553b190ec5df0ae0b9c8adf03572c3b1ecd28b1ad8a328dc31556e237100000000000225120c78fa6da432655267177ea021c709bc702c7d56cf6a673d09af5fd4fe7d94099e237100000000000225120d6648b489b5a173d1b181fbfe65b2ed4789073962b6154ae46af305ecd05297ce237100000000000225120e2e40dd6c0e6aa2eccf62b66deeaa6e177e248c4df4c54c3a48b1e6b052efc2a74a40a00000000001600147d6a87870be4b65de3c26237cc513370e7f7c9a8f11b080000000000160014fadfc1236e786d65cee88a7250a1f83a9b551354f11b0800000000002251200f95ae8387640bbc2ca0829350fae8b3c0610686dd24cf43a14b68f63606557ff11b080000000000225120274fd5bc1e8ec6b88c9ac6f7193d1dcf268b67e7c995bedce76f10cbfb3a4eedf11b08000000000022512038558e56da8d216aaee78558b9f1f780ca80974afe982fcbe9d6a3c8e8c493e6f11b08000000000022512044767e014f6357c6f626f5bae672c9a9c209cb644271aa076792d0bf6fbda622f11b080000000000225120650f25e68a19ce7cdcf63a35be9f03d07179f41ea3c80eadea0e066d38aa83e3f11b08000000000022512086be1499622f60e9086f8a7be83efad84bbe95a58059c4dfa8a3ba2e4a96e9d6f11b080000000000225120a42ba7402871eb996217acf1c9a3ec631d6b79b04156a85dd3560c863d64f758f11b080000000000225120a91011e52c3ca217266f5399d48a73f4461aac6e6a6b975da24599de75e951d4f11b080000000000225120ae63cb8ef85adeac2596f195914bd5f3cd2aa461f69c348ed6cc8f6e95a94df7f11b080000000000225120b8f2a50d8b5513a250b902920f9efe998ca32f97c17d60eae99760427738e7ecf11b080000000000225120c261b24e292701332a9f19421f1b8bf0ace502d3a452e1f9efa90b0225c92a09f11b080000000000225120c58320aa659e718324afd22bccb0a43456cda02bdb7438005bf6641e4affd01bf11b080000000000225120cabf80f33ba3215dc688c7a4de30533b53b8445229c5f11215b9449827752620f11b080000000000225120d25da43294416af3c61c188d1710e8865e0b67292a94287fb1bf772e7b345b47f11b080000000000225120f00e80decf5d3fa78074d9ad1d2cb0b517d620e9a8da4b6713c6f9e149e760acf11b080000000000225120f5ac566c6eb4e0d78b8a18f55c8a4c9294f862bd442d5dd300784a5ad876f6e41913080000000000225120e0916eea69f760fff2833d8315bfae60ebbf4f059f6112217590fe547835253e9afa070000000000160014c8d71785ecde6a7a520848870d1887cbd729cf81b0f607000000000022512089aa2afbbaaac7a8001a8de605c60fd4571185f44302394ec5bd684a5fab4f275ef4070000000000225120d52ad2dc97582f82f5d58fba3db826b294d9f91aaacf03a8ffecfa3033a3d800f667050000000000225120053e00e209f566d2a3a17ee00489398e8a2acf3e1a28d1fa68366c02b1e38d9df667050000000000225120278f9031b554d3577ca186cf1f9ae074a6f435b4e52e2415e01270c0c44e388df667050000000000225120324c9b8ad28d97089b4625dd509295833daaaf67cbad25769e71164312a0cae4f667050000000000225120824514b85eb9fe424d606654d40a5c9af24fd8d5956d45d9d6026c3d871eed45f6670500000000002251208f90a433ee52bfb10948a9577eaef779c6aedb0d6e0937da3f6891b7a58aa568f667050000000000225120978c0240de9016ed4f5af2d489e04e1fa956ba250a903f2e353ecd2dd5e4ecd7f66705000000000022512098dbce1008f678318da16b2d9358b49e727d72a860060a33808d5af5918c5d00f6670500000000002251209f1ac034af9b2b73c2222394651598dd57840d0661f9c832489c4cb1f6df662af667050000000000225120b407a93da91f0b125a4a6853fb895b79ee0e90af08bfae259631c6a2d64951bbf667050000000000225120b9d836150c9505396c0d84642f654c5cb0f36fcba2790f57a82079feeac57079f667050000000000225120be84b9f34d1dc2a2b70223fbd33367e014a1b30d30a5f88a468cba8ab4289dbcf667050000000000225120de8a77a61dcee8b53167e3f6779e209eb6f0c46b4f7698f948b1e8e8c313279ef667050000000000225120f7a6c6d3a7750bb5eb96fc209c95f1780527cfd2a9a714eed34e927c2d1981e1f667050000000000225120fa211d887286e8701d42289fab7ff09880b9f16264a9dbac9de13bcd39d5776700000400000000001600143deacb0d2400694dabf565857d281553a2653014000004000000000022512000e4486891f877f616fef112bb41da9dc6da03ecb84e5e283e2055c7e1d8daff00000400000000002251201452f4378326b12bf41875d788965af924b6b111e31a09e85d051ad1941a88f900000400000000002251201ae7bfcacf3f35bcae2fac114c6c39317093f8a79f9e19f7324bedac09da11080000040000000000225120317fc9befdbd74c44cadf04f88cbd741a70f4a5935602db9b6335941bc668ffc00000400000000002251203ab22642611a282db45153cf69426eced528a1847b0dc0edf75a6db93f583828000004000000000022512055deea6d9e6a32f833a073919a53c0be109fc5b1f64267d801836e9c09ec6fbd000004000000000022512057bde39805df4cfa9845316a066c2ce7f3c55c537078ff8bc392debb7d04ddc500000400000000002251206b81e7d1b498b328ed99113e3798f20e9f220416f8975bfb9ba78ffb9d34250000000400000000002251207a5c899feff9ddd63e09ef9bc072ef2add629175d140859eda1e38e765c76f1000000400000000002251207c75e401a1c597cbf82160c5297c0daf5913b0aaa63d9ed3621c55fb132cfc3900000400000000002251207ee24df81637403f0f043af36bbc5d9bc484fccd94a1dbbdac1a680a1329f4fc000004000000000022512082797548fa23e4cecc434a43f382275657ff5cb22ee4841349653c65d5c44b8200000400000000002251208a7c875fb5f9e7f568a99081cdca5e979ce8823d38494b8135c92b97783d1f34000004000000000022512090cb926cbcde5d97f16956dbd3eccb1966984f79338ca31fbe61b1bfcefaa47500000400000000002251209ea934b337d19e46a7dd688451e65e70f7b516073e928bdd029f057526f365f20000040000000000225120a0ce3765dc88a73de1cd906df13f104972e27c7f1c5475d40063bf7d2f0482670000040000000000225120b00a2662c36a45ca80db69072fdc51541fea0abbe999d42b06fff1f87ea34c070000040000000000225120b18c294e6d2f8f6cbe2c36e3754ab8efd8a6710a4f80806f371687e58ad234c70000040000000000225120baa52176a641be3d610704011fd68f2daff0feb4bfc73384ef6a932a6dccd42e0000040000000000225120c081d1696b8233f2d1dc0cf4529573b6cb35943e578512aab215b756e070741c0000040000000000225120c3171f73f6144ed154651c7d3d400e127bb79cbbaa59b30c4f55c9611386aee60000040000000000225120c36401865b37b7be5947751ec4534a6fb13a77bf6d65b1ca4afc7e86776a027e0000040000000000225120cffba9212cf90311b4e95290cb9b893c74dfd98f7a95fc16fce054e2d83becda0000040000000000225120d3cf2fe178c455d6d1b1656079a805695a8f956af873eb458d24d19dc421a4740000040000000000225120db2d86ad19360fb751d78228bd835307a6d49abf669d71d00ab031371a0673690000040000000000225120df3e3b672b715cfd8f656780481596d79c90a1c32fa4c7629bae582e1f64aaa00000040000000000225120dff75fdd25645e565157279ac9bb2484fa51106a2fb825835d6929328d3091550000040000000000225120f39ec0a2305d50b6fb3707c219c0b95df060b52ced411c926d8c57702a74c7320000040000000000225120f51c217b947db8f1018ab5d857ea58ac505203eb824681beaa6a80a3e20fa0330000040000000000225120f5250be5bbc3320bb6e1f2c1e236c55f9b37fef63b97c7b5bc37cdfd4a12964b2d8403000000000016001484ff1248d18e277a6156e319095815af6a282dda400d030000000000160014b616eab265b20e80c56723532aadb0069100d096400d03000000000022512024b66289ac0d3f3c60e4938cd548d1ff4a152369b1164f197606016b6c3567c2400d03000000000022512029076e87cd1f16b0e070b13f054b4951d63783bd2061b4ff39f56eb924d91f1d400d0300000000002251202c63ed00389c3b27efb5cdaf51b38bf0c3428f3670a77a7d57283891ef406ca5400d03000000000022512037bfc412d478cfcc7e3164f813fc765d3b47db98a96ac370608d5d8e8efd87bd400d030000000000225120439e1210b71119231e1c4b8963e9fc3e16e332f0a8f26f3b8abb55ba49b79506400d0300000000002251204aafcca75395378bb14d0ec683af0d9a7ec6de36c4560e1cda7d78366f40e84e400d03000000000022512052fd703e7125d0c9cc49ae506ca942e9c0f60eae6880fd5ca3cf14f2955790e8400d030000000000225120535f94133910d8d56121db18e5aa7736f7e5a5614a4efac9425c058c1a087e77400d0300000000002251205ecda3ab149df55b789edde069a4273921ad349d8d79a9717c936f4054b0d839400d030000000000225120602862cb97899132fb3e8c4658f13af617376122e01fd208937d5f1e96c52b86400d030000000000225120645bbdda993518b8e58b83e55ab964769deee88c53c4cb7096b451b6f46eae5b400d030000000000225120717fc3673ceec1cb36d2a54dbbbd772d974e3fd536b19ef75b8cdc59055e11cb400d030000000000225120a7f60ec8aff54e315c6b6520e6458c590b9e74a01ea9321a454087c316f38ba2400d030000000000225120aceb95469174cadd80cafdbb0f23bbe9fffd626af9ad9a626d733c3ccf9bdb49400d030000000000225120d41430bad9ca640d3d103ae4bcad515e0b269fab559b2cccb02042605a458e73400d030000000000225120d84deacbe9f278714b8a5ced599607a3810bc94a901f99d40c6fbf9d75fb20dd400d030000000000225120eb863c7c4023bb458e3cad2611cdc3d5241c8092eae12ce3ec6e6e35343e1d0f400d030000000000225120f58d406d7a0b95abd007417071ccaa0e5a4cbdeabe9a815a97565484997e584152cd0100000000001600146d0e53049d236cacf228c9de441a8e2f27d3acdc52cd0100000000002251200db40610540031c98338c1219d3189a79896fe9d5875938534253d2d5718ae1b52cd01000000000022512013e41a5aa4012a12b4533c3b61208af29d65f1f68ecf5c84c62dc15cdaa125c752cd010000000000225120273fe4ab3833958a7a9c62179f47c50106e87291e1389fdffc960fbe10e1c30952cd0100000000002251202acf256bb6c7da3f0db35ac7ee540899750eb13f7ba52da68f38f635518e788752cd0100000000002251203d73b62e9cea1fd6d4d235e3d567d6d95336ae4e4c329b320de0a390e0c6969652cd010000000000225120625f9f1a481f3494e8bf77c8a19022047c419b3417cdc31be15d67516f441a8c52cd0100000000002251206b3d34a702ab955843e92ec11c4a4c2fce49127bed2fd2e8eddcf106ecf368b452cd010000000000225120afa988c7bba1670d3bdcb1c16be25a2f2e7c37b4a7152f3706cdc601114e6e8152cd010000000000225120c2419be7fb6945c7a900265d9727a4b5732516dc8f033b470ba3a7085e59227052cd010000000000225120c6e015061611773bf362556b23416c2a7acab2dfaea04e6c17f3da5d6a90e42052cd010000000000225120e5b5c8f70843fec661db9ed1542d323edc941f40807c27419fa6339255a1486052cd010000000000225120e902178b46c6de909699f506151fa25652180e71defb311da02cd7cb626ea7a052cd010000000000225120e9451acb1e099893dfde62f1652ea35a116d67e42280fca8ba028bf47b61ace052cd010000000000225120ef6afbcda6feea3ef7bd382140e0c2395efc598bb222a664af4f2c8ee90aba2ea0860100000000001600140f48130e3fe0f5fda883f2146db9fd5407cca8f6a086010000000000160014170bdb0716af0044cd89b7eb1d117aaa2d80ea06a086010000000000160014480886a6d2f27a9aba90fc444e0c942796f198d3a086010000000000160014e53ff8e58a49cb733c7dc6b91d8e9988674bab95a086010000000000225120007ce04cb29d05a87b4d09739d758e1cddbcab40a872d064b47d461b89d6dedea0860100000000002251200a310d8c2a96ca208370c912984a4f2950746511081cc91f1977bde2cf2d57b3a0860100000000002251200b0a2ac5072ffd8fd8104981641c733f4b0b935ec40ea392f4c86beee720a92fa0860100000000002251201f744760517b3bff4b44d89f18274a87233b6660f624dbaa14220fb395bb0bbca0860100000000002251201fad6798b526f772ba5fdc0b5f1a97998baddb7c5d1614ab729d3166e49b2c6da086010000000000225120220bb43263a0f18f47930bb758d05e99e12e77947e21aaa9b5fb821d480be5c0a0860100000000002251202e16ffd8de84c462de0f41ac891296eb2659dc0f5f5c09c88f3c82e9d01fc11da086010000000000225120402ea0f909a9a89a374419f8022cce0731576be7fd94dbd63b7246ffbcdb3596a0860100000000002251204113f6e860ad3468e19dcfc51ad51d86ac0c47276cf162d61e4eca602147a122a08601000000000022512044f4dcc8c258f10ffe277bf3f4adb9d64da43c41de414e9a2ea1e838f9f11566a0860100000000002251204b40df33c5deee5ee6fdd8f832d91f5339032ad1dc5f78e085fbb20fcb5792c3a086010000000000225120577011b01e97d62e3a8451bd009f8e3b7ced73aa2c1d621e8a7411357ff1de0ea0860100000000002251205f06990e8745f0c5889be3095143c0bdc5e165649785b51c258c7c024f63eefea08601000000000022512063a14f0103cbc9117940d2cc3c8d2cbf8884f182fd9b00a08e0c8bce93d8ab6da08601000000000022512069ed113b4d5c7993b5e666dd09230b78725c424613df7252581d2be4daaff573a086010000000000225120724bbd4418082adca7f98f1b1aacf9538bf6049dd37e12ca785254bc8185a086a0860100000000002251208644f54efaebf1940de66b50a1d4a6c12e8fca1ff41ed63b7353e7f8c4abac3ba086010000000000225120898c9082fbbe692a72860642ceda6eba70d2605c07a01f873e49f3b458c614f5a0860100000000002251209578562194a2f20c7e71fd0317a0226023a4d138eeffe6ce2cbf61c7d89e5b58a0860100000000002251209a479a357fcd70ed67cfc3eb11b928f12a61320beb8521541729672a80e756dba0860100000000002251209fc6b65fc644a827ea0001cd44a4b6d24945ebc28bd0c6efbe62fcf7af5ac938a086010000000000225120afc503791e963a3838126b88a1144bee97b9683aec1f93a67319f868f6bc81f5a086010000000000225120bca16d3e18cc997fdf06640bb5fbef64fd7cb3d44d1af6bdcb6d52ea88031db6a086010000000000225120c30883195e4fae525fb9839ed669e588aa5189ac818d8580c07f476069678ba2a086010000000000225120dbd5cea9826a8aad075ea5712cbc41681eef411d49be00118190fc793c0c9ae0a086010000000000225120e37c6da1fa3fb354c629a82700b46c8f99d78b76f5b7065eec2a34928b865650a086010000000000225120eec6d9a4881ea3c31356fc2321cf218fec96c9e14615af9c6997bc0055c37c5a00000100000000001600140ed41a961f16917b147698c9e7ae842a08dd3a22000001000000000022512002dfba6c86c519253e46485e17646a37901ce4582972adab7a09c14a8b92257e00000100000000002251200eb07ec8eed8696d6314966a4ff08e4dd6766d8b9ccd8808ec09951d5fc559c000000100000000002251202ffd34f45de91e9492365eab07be73785650ae32318bc1c8bb06338943ac6127000001000000000022512041d578bdb19d3e93187b816fc5b98b0cc42f2a425110ca8d607013bc9ead430100000100000000002251206154ca76e0d48e0b84411da2057b0434dc058b449a1682dadb7df0bc23112bb1000001000000000022512076b8557d2865a5bcef15e73fd8b144976d8ec86a96b998996d78714b937f87db000001000000000022512083bc5db487419624996033079b2380f224369ee6e2d54c76a3270affd668dc15000001000000000022512088ea94a5a4a939487a5d2bfa34a6bcb193286c484fd398d8f74ccd1273188e050000010000000000225120899b16bc07932f9783ae064620ac0d854894e1f93fcfcda9064db3db0bae0e3800000100000000002251208f8688eeda4a4664752e17079ef0322a3c190a4131a475d64ca718d1fdefc2cb0000010000000000225120bee888138a8424e49d5d4315726ffb7b5d40ddeac25cada973dbd0d766e96f150000010000000000225120c1d9d7a81f1699898ca87f70380cffb913892ff85bb4742ae6d18a6dc8c11a2a0000010000000000225120e2d3574a43a8115979a71546094ebee4f28624858ba25998ab58eabc1b75860e0000010000000000225120e61f527ee0d06101280cd1c6bd0d2ce4e091b039702f3d6d4fd7e61392d5bc3b0000010000000000225120e938117f47762d2fbef36f2f44065ae2201f1c8224389f19347dc79e0ec20e5950c300000000000016001401934c087285b6095f6db1a9f45bddd2f8755db650c30000000000001600142d700c2342287657bf256f357f5b64e1760b412550c3000000000000160014322992ae3682d32a2136b55906d47c02f6449a2750c300000000000016001437a3e7e5f7a9bababd13b8ddb3ca48ffc9af101f50c30000000000001600143bea3a06e1d2cf3d517db59f050ba913c7acef9950c30000000000001600143fc1ba7694937a41ac83a5d96e6e4935628687f950c300000000000016001451dbaf80939b592f0ff763ae335aea5fc175101850c3000000000000160014537817640955387affd60c01c6609d229d74b57c50c3000000000000160014825da55029f6497ef5a0c4705bb4bca4d58f290b50c3000000000000160014877f6ba2d5e8137522928664bce7f3a050a04ff250c30000000000001600148890b9f7a15ca6186f918016ffe806ee00ee9b7a50c3000000000000160014bc55279a24ce4a6c9b99d4fedea4f681ad7b959950c3000000000000160014d340471f40310ba2e5b5b4f1d2db59056864884e50c3000000000000160014f54017fe5f7fc9efe2c11bfc4fc42ed793ae785050c3000000000000160014f57a955900bcd383a65b000606809a79f1def5fc50c300000000000022512017f0368fe5439356efdddc8c5053f870bfe3b4d29fe274b9ceeb90847bccb4c850c30000000000002251201ba79a1f037c50191fc86287a4782f1fd1ced2dd23b0445cfc21cadb95c0a5cc50c30000000000002251203820ef17fed47ad0026726756dbd8b61a829682ebd6339acc3fde5572bbce3dc50c30000000000002251203af82b8afcc34ad1030a8d6f1115670133a8ba181c74b74ddd1d25b4989054eb50c300000000000022512048ccec1d667a61e62c4caac69d61eae61c52bb0ab66ed345daa4db6fa69525a450c3000000000000225120759c467144bef2171bcad5716e5eb91e48b95b4e0f40ae4e0bd9eb62ad46bda350c3000000000000225120956727311cdb887269011fd5a36a2d23fd9eec6c9ca77008d0c383cf022fe78350c30000000000002251209e786271f5ca15e17b8ed454d6714acd83cfe0e876e65c7241dfeca71c2088f550c3000000000000225120a4a18e363db8a0841f9dd27f0d832f27f3acd57fe60a7e8f62fb8cb03e81e643c6990000000000002251200717e2ec568ed3c60f1b2aa7786f62bd0a79311d274b0fb35677c79f526dc897c6990000000000002251201ad7757b51b2b31c3b79a58fbf042252ded5dedf4637d7f64359a36fdaba2683c69900000000000022512040182a05f064257ae0959e9e368dba6e6ff8096c2d7e459ea090ad4f9ffb9945c6990000000000002251204dc8c9888f95b0dbf1102ac7d56ecf3e12173aac6e80c0b495499f53d85a04cfc6990000000000002251205c2899c9d8c4f6751cbca10d4fb9df953de5811dbbd8323f6a342065652fe3a2c6990000000000002251205cf06ca273b130efe7750dfc330b150af06ee95954208d304422fc884b8b81a0c699000000000000225120736d63443f41abf45dda16ba8b3532e81b260dff320ba37873ba63e7a104b41cc699000000000000225120766278f1011270528fffbb2a5a86526425d964cacd36dc9cd6eb1cd2b361a891c6990000000000002251209bd8f66f6500cea77646b884c46003ef6a436f6823a9e0d0bc5d8ccbc21b8d92c6990000000000002251209daf76dd1f885c094d7fe178f465b47cdf0fc6e7de1b85ead1466570485e63d6c699000000000000225120a69da77c695669bb677f1a3d64540eab51ded47d55897f642b0ac7e2b8c5f018c699000000000000225120b7e7501a9a01bd042d2071f2f2e0bbe2ccad8c0bffb441f1bdcda6af93577fbdc699000000000000225120c95a6748eee00165397c56a85c70552d5ecf6ba136a32d8519f82287fa323acec699000000000000225120ca24c486322a911d435cec790bba1986dbfc8b6143df06fb832546a2d5ccbb2dc699000000000000225120ca317bc9a905e075d1038c7e5739f104ce0ef500e7ae354e3bd86c7cf9e83c86c699000000000000225120dd9403adb0a656de550543ec4d22d366fab444e32586b9e1839ed3c853adf3f3c699000000000000225120e7bcdde326f7fa8a010ec12ec0c1b93d2f6ddf48a245c0ddb1373d79db2331cbc699000000000000225120ea69679d0a739897c54e12c040e0ba702b0aa76852272c53ea9f5da45407de11c699000000000000225120efcfcaf43f5737a6df36dcd030f64d9952aaf5bd113618bcf407ec9c871de6a8008000000000000016001442fe0eecaf264f9e5081b1eb0f449437ca845b6b008000000000000022512002aa7a80fd161d219619fe77e70fc39940dc54a66bfe1377b3b05ad5829a6b3a00800000000000002251200938bea4dac44b0c61dfb43f8fb3a2dbb5c2db282d2897f7d897f2457e9e905c00800000000000002251200effa17b0708084aafeeef144245a118d8cc6f3a67117e23e83cf09770d9113000800000000000002251201cf678097fde7d83d00a52939c892e485c1f6f11ad722cc97e302cfea6bb7caa008000000000000022512041cfab967c05f7790412502b932b1a7886a72ba31c37d47a71b5ab90ca9a26f0008000000000000022512042f20a92cf2942c9dd7a0cfa46fae349afb628fc5f0dcca174eaa238e9c19057008000000000000022512049fcd00a61db226a828fb08fb712d073e12f3e7df5ef6676c23d0ee1731cb96c0080000000000000225120605ed862b2f7a19f03856b79ece815295ca079e0179513a596b45ccfdf06bac0008000000000000022512077327c95266dd785456939833e3da55baf28ee705d7264af2f33b0954054c38100800000000000002251207bfdb05db48a139311b4d7fc7dd3139d5b917d777503180a499f13779e74ca9800800000000000002251207d6f78156b1b19a00115ac4256d466af0d59b84f1bf8ab3df9aed42c48678f3600800000000000002251208b30aa4fedf196c47a2c52589c49d7b43808616b97e1a41ac2c73fbf8661f39700800000000000002251209c5852afb4b64e0ab4bd4eeb0a32b73112b5fcb0995e9e215a6fdbb5b7385ac400800000000000002251209f4766ee5660207267f7f379814ce1861f67a9dca71eb7da608ecab72f787f640080000000000000225120b617cb537fb710dcf9dc98c64cf174911c0b1c5ef6db99c3e62cceb94b1091c80080000000000000225120ba3e2d992f501c307ee87ec4fd917467c855ed3350419617143e9febbcbb651a0080000000000000225120d529576a73c39b30b558b90ab2d8de522f18ff399aea15b1d681d0bda6bc39d60080000000000000225120dece262b019a24032c1a03a581dad4be03fb3815423e145a657ff0fee21222ce0080000000000000225120e5be1e287dd03e175bab87fd2f2bff8a088a22836c7842f2cb1cb442027549a60080000000000000225120edb7bee6cd72770f29cac227565c2a686fa727e4c659f935c922da98a839db860080000000000000225120f7b6f60d83e96451685318340e07f7892a7497f2a2dc9f83b68bbce92e41bc340080000000000000225120f87c006a2745e17d41600fbd76531b61304d5cd9641c6510ff33567b9d83cf7d0080000000000000225120f92b0da7a5237bb35fb859a18895ce761fc14e3b9dd5afa3dcd394a582f9fcee246f000000000000160014d7d9f9e1d7f72cfe906147ca6f37855b1a0b8bc1204e00000000000022512000b6292cf1844cd24bce961d8f7a7d4d0260801a98ace9c87364f29dacaa8aa8204e0000000000002251201730fe9535217c677816456286a95e869a03c52c93530f33b7bd0118ea749461204e0000000000002251201c0707788d7f8caf57025f71a54fc50bf7d45ded4bee02a1aa68a65f40e36389204e00000000000022512031c2de2198caa7c4a58926857d667436fd3fd487e5d1e40fc2fd0dc66c917ec4204e00000000000022512035eebcf1563d6d55a4ce80ac560b4f949ed14f3fc5158f0281206de89cdc4b87204e0000000000002251203c48c767da72d62a308ea90ba8d18f175a288f6c932fba4c23f28072e768ed95204e0000000000002251203edd9e99efa1b1e35b85bfe248c987601439b4fff83d168246576d27edd51223204e00000000000022512040509bd91716032f425c8cc58228ddf36dbb68c3b30f9ee49cd9802b7d367f15204e000000000000225120477b2cd14065544187c6eb55b7777c907701ed3757838ed8059f4ab456bd38f1204e0000000000002251206d1166652205c2c02d982a247e6ad12881760799353a09495ae69d2cd6cb1404204e0000000000002251207a292d53dd7ca51a75d38b8759617baa1c7c20a2c4ae815a7e39ceacc3e7c939204e0000000000002251207aa1ff17cbc8cc2bcadfabfeb16333760ce0150953dae23d63d5b7f28a6381ed204e000000000000225120958424a061c33bedeb73b29d63850fd9318cffea75ee773a6fa3d59c63749631204e0000000000002251209d32e9a7021213046f13bd9fc42b8c4492fece5c3e694418a376dbf8f3b30363204e000000000000225120b25b898c1efd6060a9f532e82f8035c6a8f917fbee9df58c3379a95762d53eaa204e000000000000225120b7f96735f8a42e356567c07a535b4d22eecf76e89cebad269fbc71505d615b37204e000000000000225120bf8478c0ba40abdc71384c1bc043bec58a49050b75c7a6b304990b290437de73204e000000000000225120c23e2cb70264dd3947725f1083afcc00af2edc03cf332677c7ac8535ee1bd2aa204e000000000000225120cecb1a346451696350faac2dd1fbe17a39252b35ab590cd6dfeacf87445dab02204e000000000000225120d1c90de57cbca170abd59e87f24afd7ce2ab0975213c16017c990a17fcdd6f33204e000000000000225120d9502d88d2353a189284fe3d00da6563d469e67862fcb114429a08fadb7efbe9204e000000000000225120e71fd09e008808fb491724ee6614979a660350ea3fba0246a4d9a81f948519c2204e000000000000225120f24b923354f24b0a6127ba802c261edc3719a9b4100774bfc3ed203b1609af7b0040000000000000160014000b5006dfd0001b3174d39da756e902a1eb7f480040000000000000225120113fdd826b3885fd0a5c2bf4622b32b456b8dc0f6ed4503da07c9b25899fcc7e004000000000000022512013e73548ccbe7e89d6e0e9f47e19c3bcc9e66b0cac3e208deb8a7103c197a50a0040000000000000225120174ea28a69f9da342f76a10feb0d3fcd8a52476676b30b47f10ac6b38ec2c1c20040000000000000225120188c46e64cf5dfee65adf49acc84543421dfc8e203fefb210bf31a369bd2f6690040000000000000225120200f29ab5c1b20bf03e52c35e9afa36a9eadfbe5f518143397585890e890d80c004000000000000022512026f31fc298ff4d5e17e5f2701930357824a8853334b8fa228506c0be2c625cc900400000000000002251202e8e01e7e959941d93c62e93e21beff206c5274a366a4062315a096a9a7c87750040000000000000225120382026f123a51666a782346456ea0ce70cd17078dc4027a1104cec90654f176000400000000000002251203aedb150780b68ffb3ddcf32e9668aae9790c3a0493a7ea861b3ebc8ea662608004000000000000022512041fc81799d123546c9188ec3ee761e068a500a6d3798808feda357fff0db307b004000000000000022512045f372181a746f28b64b435108b98d337ff6401ff61e47039ebffde232da432200400000000000002251205c7d11d3f4ceaa7e196db092d88b978c7cd37b30f6c082c90e285fd60e6134500040000000000000225120bf25a069c3224b2787d319ce264013127e9797098fa1028700cf110a174f17770040000000000000225120c2282d5e63b021e9f78b4b41ea0c5ca3f25a2702f66729c63d66eba78c87292e0040000000000000225120c7c692fb80568d03493271c83e8e309df7f2664350fde1adb807201a3d890c670040000000000000225120c95571b075fe2e48c6f8f80848b6c1795db3d6c5b504cef845d3ead3eaa9db5a0040000000000000225120db9fddc1f27a738c45a42aad2f1c9b4d2445b167c9ab2a3e04ba61621f6256a00040000000000000225120f52d1b178a11ecadf8bae31a60b80d22efe2e945cf31a844598c40738df4d85e42330000000000002251200f29939930f42d58a8f340aa85c5da340395d356ebb890cdf00e2576169c9bac4233000000000000225120212aa91d270541eef1845fd5e8238ccdedee7e8212b246599343ed322bfadd79423300000000000022512027d3a29db3f591a3460343e934ad893e544da6dd6fd2cdc8d1cd4cf3d4d9ae9442330000000000002251204aa8b7d4452f1b62bd2ecacf7714efe314b097e5ad8280e41d9a57f46f073ed642330000000000002251205e208e01f7b3a9d979f44a43f57349cb1bc1224a7e8de3a9ef87d7fcebc3deae423300000000000022512062e473ab7548a1a7b619546556e67ecd63e75594622704156936e5ecde0d776542330000000000002251207024ce87f30fac73226f75c881297079a1dd136aa8c2df580555ece24d0f1ac0423300000000000022512078a0507ac2f4484aee75a07a5a2e492e01c04511930a16dae2126bbd00967b664233000000000000225120828585eee127991b9799dcbcd61e5c63991e2e32713a360e136f59f939fc904042330000000000002251209273bff1482671cc4256d1c84372b4ff8af73dc6b62afd3edddc2edef9a38f6442330000000000002251209597fb308c29004b28410bf2cb259a20c63e1322203b6f593f0e3e6226f19e684233000000000000225120adc149cfd19dededed3bab4236c5d6b690273feb31da98489279d1601e9c6de74233000000000000225120c3809d22c01d96279e46b29829e3a4c605213ba6e06859ba243543254055cfc64233000000000000225120ca290fcf40107b45eb9cef83b80c45a36a87fb415a1151caced55c3233e2c0964233000000000000225120cccf67c48be65a55763e96d9700df1e3ff866a36b258c983eeec3a493ed6dc5c4233000000000000225120cd8d392e822fae93e524700927bf86c300bf69a166d469e6e419b8652322feaa4233000000000000225120d9880845529a0c96136242e120cdc81f29def049390f60406c55d625198b498f4233000000000000225120e6f51e7131caf38ad2f5bc121298e8619cd95a715a669454b5bc5989ea77fc094233000000000000225120fe97904a148c8db1e98d8ea5fa2d47146f1accc316ddf3f633fdceea78ed1b52102700000000000016001436bbe3a57f7d2e59c1b3454c447d6d6804f6790210270000000000001600146d00db0d21459dd67a419515ba33d02fe0cb5ba3102700000000000022512007e1ea57253c108955b36e39a8115d0cb0d4341104af6f305bee30b34ceba885102700000000000022512015bc7815b325c6ac97156ea18ada751da6e0efacf982e90910a0fbbb4116c5ac10270000000000002251201dad2a87ec845f45f25fe3d8bf9bfdbbc40d0651e65c8d6ab156265698874a9f10270000000000002251201f907bb2c0ef12c28dead85d0664c72b42c5b4c22b246ce32ae21a8bcc51645210270000000000002251202572b8870613764a9640726f1370d8129115c37b5f328b0587ea1f599e564bcf10270000000000002251202a7a38a326c1b8bc00625395cafb922e8fda5527311f0d411a6d7069999b83b51027000000000000225120435f043cde6edc5793fc4d9732e325137da1c1752becdef2fdbcf966daac8c11102700000000000022512055e8b4ebadb1a68d36ca9c6ecb53079cba74492541af04d36b1abc8859cbcf6c10270000000000002251206a887674cc91b4ad0c10ebb127b332b532c73c75a7c817d0b2c2c0b76efab2f9102700000000000022512079687c6d96d390573ff82cf99fdadb817e075d23b6df8b521fef5a76f717e6cb10270000000000002251207cbb5ba33521861fcaae0af5c230cf5f355a0a94e0a4057e9004554e3e21908c102700000000000022512089d57e61abf35c072cb2cb57ad5ac17a2a52a7ba9397bdc5669622f05eb80b18102700000000000022512096062be6c0746192e18af3897f0e04fcf2b0d0543b30fe05aaadb8398522875d10270000000000002251209fde97c2c1b77355fdec76a5d4e8e7a46a89f8421cbdcf31ab9c6eb044a0eccc1027000000000000225120b7202882d009363444980f37743c4a78787424c381283b41c38014012dce4e951027000000000000225120bc2bfed445e7cc4deafce72f02585149085629bedaff2c0c084fca9bfdce62ab1027000000000000225120c6a63617ddfbf677344fc935aa8033c76421d978d58383e9fd54fb61dda8c34c1027000000000000225120cdba64dccd25ff2267bbed10e0a0be9fab4e89c06bc5db90a49eec9a5fc461701027000000000000225120cdc89238fb19c2547adc319e2bf685673f1c4b200e88e055effe8c5f568ea3a21027000000000000225120d30dc369ae7e3f46b3bf41c605e8f35d5b99bcb9c399ff9d79f6493c85f172e71027000000000000225120dbc6109d5556553c2bdb6a4b8be82da2f523f0cdbddcb0031ec80926dd6f0bca1027000000000000225120dca624e574831dc24289f93225e9cdebcebf5c6b1cc568058ec8202bbdfa04691027000000000000225120e1a68fcf8844dd8db0ea6aedd3fbbe0c61dbcced88903e39642e9aeae98021281027000000000000225120e88dc61fd9f421be0ca831bd5e6681ff1f456a4b03f4d2766f39775921dec8111027000000000000225120f3627279e598d3d9c224ddd782a7eaaab179143aa3da96fe990f3a9ea20cbcb01027000000000000225120f50e6a7b0ba7043efc3ca143015ad518ea172ec3320669f3544a4c5797b27d7c1027000000000000225120f8ccc9cc78bdc3cf1612f43f7e6605021906ed400d6b62d54b8d878ba70ef897014111daa1cae7388d9d71d0bbd915f6cc8010becde6efa950473377004326c1a7205f52cfc456242f2b7e59ce74be09cdde5ebbea31bc4b14beff6850ef8b279eda0101412fd545d64cbf81b1f7208e7247e5de3567e560d76f37e2be3a71f2b4bfb97cfe967d7b6f7673171b1cc1b92a5ca99d46a53db9607b7a4e10263342c5db0b1cf40101411c941d3943078c9b7af4e80613cf3a12bd96bf7eabeedaa953999a633c4994564691ab394fbe5dce6039c67606673a4e66fb8dfb848e580fb1d2d2d54d6b5930010247304402204ab459f0b296c69c4f16da38a3d27674a2a741959fbe4e8bbbe40c29998bf3fe022031ffb14477eddc37eb773901f020645997e19af949cf5ec2d607ec51e5b51d7f012102da324c6876696c8d50e6568cdc41add6b9a02c5cff1f21571781e5a5a5109d530141c6b5eb992908151bba022c6c63b74b98d2752329a46dfe82658fb343c9aa1ccabe4c5c65f29c88c7a9a86deb0ffc55afdac5964f0ac22811a97e3a3d1c0177620101411640eb3cbf757b43cdb65250f53986a85ae75cf4cd061ba172711b1ff65f0e2b38c7aa6d6ef1e86b4e7a64e7e1506c71e7b6dffe2aacd3c7d2daae4c2ba1e1250101418b1e7d32e50643244dcdc79adc76a7907d76b8d2a16bdcf9960f492eb957ef9e8fdeda3129b83d1b76cbadbbcbaa0848d61b632c75c7b52b477f737f74a039510102473044022027271e9da5a7578c219c4c53db0e3fe9fc546f9b3f4c57a28f8ba15c2ca0307b02205c17602e026cbafe850dfffe59d663ed4e34aa126d7df94a230cd6962c3566fd01210260dd9f286e5f24ea3672af766f7006e01dc987a53f5c43f16c02b3ae5c14e05d014192680fd583dbe8b80c84c428faa452d6bafb3123ae405c833fb63ff55d58e369c121b459e9438bdd4b18690f37f72f1d9140e0364fa41444aa6407a3b04eeedc010141fd469e603ed5d8892e987c3ac58a089a60d00f503cc50d20c1c4eaa64bb1c92640cb01323571c5b6f82a6b27819c9fc2827d3d90f7cb1edc0dddd8904a4b4e00010141209d3411b20c81341b1a28c225aad7c09386abd68b56046efcfcafcaf72b8db324e1d0aaf25c4910becde5b7d2f79b8f4ecfa2428edd944279f44ea91a5203d601014198154befe66819bc9333d800ddf5a85e30c2ea082f9d55d1773d9d19aa7462b336b4d573299542e3620a3afc597ac7288f7883c0d8848fc599ae9f81dd62249d0101418149430f173b5552f361dfb1f932398cfe9f4955164df7020a3db214e801ec76fbf61c4610e42e6a85f860fbf99a332c563a55d5b558c9b6049aded5e92b5a45010247304402205efb00d9bf56050bdbfb643e65810d2d66fd59fb3673b53e95d1886db938db6d022073ea3a54386ffad32bcd471a8d2dd677c4b631f1ce5d9a295cda23962dde15fa0121026d1d174dff47ef255e794f1fcf4ba8f4fdbe754298ebb82d85ff81199ed407120141b1719bb38d35eaddecbc44146503097510ed6b53b76609b255efe4d8b111120d95929fb6e1a4524b418fd34ae9e9b2ef0b11bc3ae758fda2b4e36fe4275772540102473044022047f910aa4ae9058770da62ae22a77e0b8bd02a2f637ea1afc521ffbbbba42567022074d0d249885cf2ba01c859b26e8c3266045ef3de21dd298e56852384728cc151012103fcd804b07bbff4a67aa778aec89c8ec269070e3f65479b40a505b1f89ac50a5a02473044022039b44c07c50a90c84dfc454c3ec71b3f98ab0a0e2d8a0b61bdd5107b02cd9a2e0220011adfd3e619dbbdfb88fbbaf5791efae05ba09b3bd9b599518b6d3d754ce18d012103b77b364416ceb16e2a2b6f9641e2791683e5aa107a1e1e425391c43abc20f78d024730440220186bf12bb5803f9d9c94a398a0c4bac022773b5c80f7138f965413b8848d9a570220698f538d251803a94bfa5aa5781f3bf451947c71a00e4d57945ea90daf11614101210324e3df1da4ae5b55593e414ab9b966b9319bc1699c351d89621226c66aca146201411313c1bb0e038918242487a10927429990b014897214355ffa9f3876a5bf9e544ba63eb12d379f52aca416eb88ab41726e651b0087911dc27d941a7e04df83d9010141f5209a0371059ee0f87cf65786ca4fe51d0a1ae7de15825d45e80b93eb11700a8b88ab002638961a928a676d6e2e2745a8a8ac165e11c2eec71d8f827465b05001014163dcbdc4896eef9ffa39f253c80999e3278a10cfc3d0ecc1858bf8c859edb2622a7f521a37e54e6605758c0d164274e1b32e79f7e9eea5642f2219c53cde30cd0102473044022003ca5a1602a06566b4b83add9c9854c92d6bc147f48c8491229b90ee3a9c0fa702206bf55b8040f9b703699e19e8a7ad9586af283bb2975ca85fb6cb043b24cd93b10121025fd1dd374979c277293205dd29c0df9d459d8e1f5d482a2b8fd3101128bc4bac0247304402202b7bb7b43e31fba4d321c1e560b31295af2dca276b1e20e6f49db2bd30497bfe0220014c3b57a20e978e910c0ae20931fdb460e7566118fefb4435ebd4d05cacac5d012103a948364a2d8b5c4870e47b9576e10b51cd480a4d2060279210f88be676d0677001416c2c3477849d1b04cc1a722143e4baead0daf333f906dd81f5ad0128c9df10d9e8d521fa86a8ee6ba3aedd382b4f2ec57c15bbc9931cc10e77cd6cd277372f88010141dd3210cbdc9d5ac1578762870aeb83927224e22027ee2885c2135f8d36588bc475505c65295429d84d7c8aeea7d4575ab5ba71c4bfd664af4073e4e50027d2d201014136df04f05a64bf6c6229fd25005f6203aecbbba815b7609d9a63f9a36cbd60437a3f6af229cd4f36de2e3333021f93f79aa1f718ca96338ee5e013229c5cfdbd010141f06a35665b4423b5f44e383d552ce73e0a466a2d32c687f3cc26156c9b5b63c678e94830c5c0fbca90012834c0e09a54fd5632dfcb09ad0fa9a4528e7da0d46c0101416726b36271ba96c7bd7089d3800901d7929a81d29ad554c4ccf7bf78999b460e0e7a665eb6bcd4b7bd9db1a722be6764cf6945f3fc4f706008d6ee07da6ca8bf0101415ed1bbdad9578006a292c725be370e83268719d14dc155bead30f5a6582cb724c480615ced24ce8ea7c8ea0b615c3f7a1980c892db73c98818e358fb7273818e01024730440220124231a36eb31aaad84f2a6f13fd0a65e7d651d483e62ab3aceb2c44224eaa5c02200377d1c48601a2110de81281c11e66d9de414bf4e202129b01868c399af6e104012103e7f562f408487227629dd83cc7318408b622384fe283136d57b118c384e2c4ba02473044022052807b5fc7169ecea18b3e6e9cf6b02e900abece5ac1d9b6e0398bab6d23a85802202fd37a3861fdc0322d8af9d5ef3d834601c9f9cdaa0272cad67e520b9beb8c1601210365cea845261717dcece68847d0e33be6d5000d44df437825750e84e750991f2602473044022030f4bbf2f9959016ba6de00c8f50bcab6c464d7335a2392e808201c029a88883022063bb1d03be2922713962623c94b8abf025eeaaa1bbd9ef8c57e84144e788135e012103968f6ceb7c253e2bef780d0b38550fafc4c44064ab3e82a17d5c0139271ffb0b01410ae1187759a92d6dd7d7572bcd417712bfac54895442322e9ba1de2da2cc93b36ea8d43a4eacd118fb1fec9b2381363dd10918f8137093b68690f31b4f17e6d40101416dc55cf3a283b567dad7d8bf16e93a38e23a8d7e53a83fcf2cd0ac0dca472a2043abb8e68ad6b05b355776fb98722b2e99d700ee75c16f48af33307797f06a6801014128bcf985a217dd03999bbc1be3a3b8e07d49c1138da3698c34cb975d469268a4d0e53bfd7ad732c2e8f9db3de64f5def5af20eeb53444de577972ce4e35afb47010247304402201e24b5102ace91e57f6eae7cfb3b5929a167473a02c1e0b645b3303722c0237802203dc58bb14a50add954bfea65b51207d6bffcd0afd0c02c597f0068a291833cee012102eb05c2f9ab3ef2c9d494ce098262f9a00fe80d322e95c4c89c5030ec32330587024730440220691a59f099c7545eb52d19488cdb1670880d60bdf7478642ecf3480027a545e602202d2c047407c0ca4494e34073fdc415dfd0a60aaab0942a7d1edd81fe20b2e1a4012103546db4f9944f72c6387fca04bef1c63d370be34975efc6c9aa641d290340eb77014140d1d7c60883d4e372c5d83ecb9d955933c256dd2d5c8d138db161cdb146685be6586d298fb6a97a73b392cf9e5c33e694729db6c17a714c702c97d6938da3420101413228fb034edbfc5c311b20e69f8670cb205e762a15bb15994aedde204e8ca6bcb533d5830298c761bc243e45a63ce17f3c2205e9839eaa2a54b13e8e0db0f32001014115ccf2c0819b6a4854c1a7f4966b0807e2954e641753c3b4efe78b7b74efcab1ccef8e339b44036a282186d11d0dbf42a7b9c4b7a13ec21080c987d7309cfac50101417fe08d75b7aa38aa1499c75a5e819b9205e1625484c5fa1c0744b78f6a827f0f87d35304640796ac71cb3ebdb4b663c668958b325545054f0802d17e8e34f244010247304402205575db90a14fa215e0c9ec65e2cba8321e2d59cb87a81a77d5433c3f2b02f0dc022049f0da670b7120dcdaab1d3e987b7a4e720bd77c1b250178db37556a23199cad01210262763aafde4dbdc445644b510eb48789f1af66581c0c71cb28b41bced367814f0141eb2006583f532593f3503fa5e66d3ed47330394400c5b6c86712a576272b163cd4e61e23b2cc0eeb4989c36a97e05e21e9fc7dc4bfba0dc7f0287f87d1bd2d94010141b0d79da41be1f966a8993c52f160bc53900dccc790c8677bcf47cd297376a6545ff20507b2150076aff52a7927c8266dce58f60e7bf780d90278639658a0c964010141e719c2426347074fa67e142ff1febb2978a7bfcaee536c6727f766988d6ef053b22ddb9c81d30d9c0300f9a7c8c5e408bb5f817c597fd59322dbb2488f34fb46010141d6eacb3fe9205a303b22e67129c78d016786d3cdc914c7f26d56054c2e482201ebfe00997d49d28287e17f1ad0e5ab4168c1293449cde0f9d020b558e07df68901014116a51cbcb496ccd0a0f85088316030ea3e729abda8ec444add0779c1ddec4dddbac495968768bf76fa72e3d8abd5b4869621b1541c1e7e0cb6b8781676f28b0301014133654cff914bb2bed839451b527da34a9aa6950bb90cbc625d90bbd575bb0cf8bd9244b82c2fee423abd004b8a7d510ac9ec937cb4e446e99b952325c7b84f400101415ef3941d570fd78d2e4e705c7e7937c7c91eb7237e4844cbef0fb70f5c101a87b1136302fcb2412d0b270fb1db930e8585cec0a5bc851bfb4d66bd2a29a0cba701014117a3b349b5c249b7ef15ebdf6518fbd7365de88bfe11548fb80fe09942970ba5a4d89d43a3eecd22eb1f630c90eea33ddd88e8957f4b04089f9c68d6454ad4da010141f3def40f86318fb76156710ff5a4cff4e8975770226942305a8a0d96c1cdf7b72eca31e37d613f2f9643c0983d0a51f115e70ce4e1be250102e2a67254dd37370101417f50c27bdbfec260b351ca0d67559c9ca84459be09ffd771c11b50dcce046facd7ab0d00ec5151379e2ddd1654a08c321aadbfca9101bbc08407a57a404bfc1b010247304402205392af3c0e16ca2cd27b154a5e931f2c4cf5f2e250ce663cd9d0ed345056233c022023e5520fd5f37b517ba3cb5509c3cdc2b00b5d3069c25d196b073219adb04f6c012102c5f324feb52864278ec0b4e07cd208483c64727ec78b7ed176e7958b0efbad4c02473044022019da6ac92db42fc2d8398c3884a5656cc019c4f833485244408873f28a15391402200d6fc2cee19cf11d875ed9af7ad8c19c651a0e92c4a1ee509983de9e28394983012103af950b245d90aae4b284ca029ac362116c7644dd79abe90d74858ea9094725da014133855a787a3bc0f4c64327e131a1e9fd0168a340797c0a18ec934e15450fd1fc284d950dfb76be48b0ae94e6b969bd151bc740b2d5df00631ba53a269897839f010247304402205044ccd0f85d7d0b2fc832cd9f43971c7c5801546f87a94a2a658306d923127902202660efbeb6f9ab375f120467b0f2df284a7954d03c41920fd29a6df559218fd701210392a8dcc7174bc7d017917ed29545ced96007fd0f3100b5488f3ab01a6b0f84490141d042ba63c1f21a553ac8459acf3ec02ac19894918aedccf3473e441935dbf9260d27f61042c28d0a74877184af6598a12b7e788ea27d8214333e3945e7aa0572010141754ef9ffc1351bd2658400e4a87cabef18325ad165c7869cad9eb2a59b7bb74d9615363eba50ed654f0c30317d9389775a19ecfc26870f4fcf77c130465796ed0101413a9eb1951f22035150a71110eb54d7f238f546306cd9007a5f04828ed41ac88c1fd10c6f7814f845ada3138455c3282d94c410cd0246cce036b44da73eab69ed01014196fd2b6070548d1387086d560a248c3f545889828d9940a6f9c8608394c3167d0ab41cd88797e11b6face639ca1e91aa77c26c72332c45c423ac887d0302e7ca010141070ea958b9e09ba8e245e74e9981cee599980c7e9b3c585b65199aee623c9c9d660e27fdf8283fa43809f16089e29dc23ccc3823a8cd00ef62b5425099a8349c01024730440220195ca2952dab3e49696d0b0c5d7c07e8f2bda29828dee8ae308bb7df8d2c387e0220577c34004e2512820fefcb427960498475cb36d787440982055d367a688c62d1012103d05d05068f7275e210afd87e3b56a4ec9a1882228e4be72c0b5226c588887fe801414e569719ffc56992afd61db1e0bc549930c307a73fae315a18a25a485d2a89bdf8cb41520ea2bdfee4acf1e5babc6e7094bd01a5b89c5c44f8519db96d6b4766010141e024a8da2e2ab609c7755f6c22e46d48ef49f39bdd19735e7e2093561ec66a22a469680a0e8c3aa875f3faa7e27c10bc045ad5de75deff150d00e35ccca2780c010141e4954433a7be27b8d856f6c405be16b7581a9d25c340afd212fd90f0702c4c66bfef8fdffaa29b20074dbd6cd53326feebd8eb939df8d2eb86addf7811ee11c901014163afd1e480ff1330295dc2161718ac7f4fbf79ecbc1ae1b4fab1dec3d2e537670c8b99566b54d4e31bdd7b436a2cfd166c9ad3cbf4f658d65d8865e13bbdfbbe010141f07c47acaf74839dd9760059cc5e7230e5c88058ff4ca438e6ecdae065c82d311b8bfa6b4827557d37daa7a6a8ac400715e2b7c6288de2101d57c66d1b76bba80102473044022053ca00969f648e2e41b5542817344c81025ddfc2048e94eb840156b0db3bea72022063beaee55a4d777194bdac203d371b70313353b49452e5e92605e71d08f84cc7012103d15a2901c6989107c67940fd51af68f0348236f10d66ec24472a7ddd8a2c82ca0141cf99a9f486e7f47bea962e24529ad673612642c9f2e38754d66bfd4e19ddbc57b8c2db58c7e338f67ef22ca6791c02c3903f3ce6dacf1ed81ad813cab8e31d11010247304402203cfc8cabdc4bc6f8109a10fda7a7a9d4fe5c8288e287072ec41aca1ceabe10de02200e2acd2bcb39e0206bb5b85e41bb61b9685dc4b256449f91127899f2c44d64320121025e75dff558f92ef3b8dd707263bf6f9e715f9499cefe8d0bfef16d9f88f585fc0247304402206b20b16cd1758b170f9a29ad59a977f8eb47f313447bb0767756d4e4889e330102202f23376173b9effc22fe47a633ba0042e341bd9e229ba9a0f243fe61718df3f90121022028b2185274ec168899da9be2aa4e93606d6304cd4c2a567df1b415005ea1df0247304402200116a9231e456873ebe0ab8a97ce05ef2c40b5c42e0eccf94c8c7c827709c03702206ed0a7bd13e1736168e4d7476a7ccac9a4d8d44829392d98e1ead79c72935b83012103bd742b2d3d13325ea191b43ac37c76561a0115fbf1b9c9d37349b67fc49d0b63014125ec2cfee9841ab6dbd871fdce078f357beac26901deefd667a260149eaf4ac901fb587f63446f2e78217ff5fa86a0ab15472903c4c37a0eb61a58256dd6f5de0101416af43cbba3a743fb1953868f4455c73d93dac4ec7ae90370cd34f17366f059ef2abcedccfbc9170429b23575753408367592c0ee022b66dd3c45e8c73d1a9523010141fb1560c6a9eae6323f079db2744e7d1be9a330ec3b4f938840fa6fe85f3bd948daab78d134a3269de1505423bb1f1a708ac064fc7ee470f86d7d2ec0258ddead010141d5f105ce89b54bf59dbf3013fe4dff32f764eacd99c88fa04d06ade4e296943f9abed25924c837cc12611894c44f4805b859bfe2dccc38cfc1ab0593f89c2569010141175c31fdd1f5badf2434083497d6deb85e4b2e3f3b3ff1c25609694f36004b40743792bf1b4932e082fa0011ff24beb033a43fbd265674f6c61c509afff84cdc0102473044022056dbaf61eadcf49e22464a41de4873bfcc8764b006f8001c57d2a84084f6b14302201c58107de69482cc59c3c29c3a876db4f43f462a872b27f2359d2c7752e9884a01210372211888a814cda7eba5b3b3810b2abe6b6215b1e8167f08ccc303a5cda75b2d0141793643f612f190000a4061330ea465547d4e383edaab05b37cf4023f0dd3d593126f3a3c0cead4092cc6144a0b0b5b864183fdecd65414d1e15bfa20dd09f9000101418d1d66f1f3990ebd4680cab08d431c85c2aaf734595df4d8f312043ed9d1dafe9df7d2a3ebe46982ae3eb832b7da571f56484b5ab4df92088e4bae383e2bc0b4010141728e43a6ae9f445363fcb361a9039224d629d91589831dbb0d2e59222c5d6a71bc9c78127796c106f3d833dd1230b5ca4c7ecaee203498b7995fe8e72dc03d9e0101410e245f7c4def281c00e027cd4846b894a6ce25882e056e31e0e850cd7ffa9590cea93af1d8ebf0e0175fc36da0cf7b5bd677d7b4f3e1b0d691c50d6d1dbcb410010141adcebc0f0828d68bdf524953a1bfbd5639dae2727d612cfb93d622f4097d65e063a2f5bf4bee50e887ce64711881a9bb7f17cdb37d37fb2d63a5555fdceda922010141c87f172b3d51c56829d8f6a8ce3a7a6243cf43e540265a19854c093a66ca53345094c0a13a2d6af75081f4e70b95a9532851c5160dbbefa8ee5a18103c572cb70101418e8471d1ed9987113103cbe0a21a6507941603bb0717aceae7fbfbb300f26f92a683eb54f8e118508ec0fdd59dd5e94e533ed7243d6fc6a6ed05f9437a6399b50101413f37b0632513fce4a59a2bc843d001c103c9ffc8c36f98dcf0b171c492a232deae42a78500e76835477f24f2492324e21a9e5605931388806f3e1da8b161eaec0101414c961c51b3c10d7e43d251f2b5304b30bd744d7d19e1dfd1bf3c77153255fb8e5f12fae358e7a576580681e832d12ba1c9d9f775f0883bdd82449737f16f0e2401014173d2f7eb4c43cb05265f17063402b8371054d738a569c46b4b283b0b763a7185acb738d8cae8fea837dbd3d0c634c427ea24adecf88cecb088b4dd3dff5b72ce0101418fab264eba6c52000aef50e660446b39dc0de920303cffab556af97e0c283dfdf66290abbfe985658c3f3a6498cf25268eb77caf5d8c3731782e2eb34764701a010141a3722706ffb310fc1058ce5ec101baaca00c29251c551d8d02479c27bfe9a2bd2187be362b8eab7515ff294ebc3ebda051057f5ba91e33ad64652d71e41f5d92010247304402206df16606ca5338fb4ce79102d62f58499032879c55700ec07e217de53e43dadb02205414e8cf952ffae019e6f3d09c22c60aa33473d39879d5e55aa18ded8f4b4eed0121023c75b80b6d485f215420132259323ac76455c1669bb01bf340bc42157376f4c5024730440220747abf7db93339d1f251b3d9516c182ef53fca59d573b5c6a94e8a42c4cc4573022060562b2f300c8c032c0fd652d152105578219e7864055a4d875f6dd610f95a1a012103bd8cc8633762d273e513c187cefc94969e0aec0c3c6c363232a0b3301fc545bd0247304402201399e3196948eed40a41d7a6a6b05c6dd185ac75da760391d0241047e4195c140220686ec6f23531d504b90d70305e512e477b6902d390aec6393190f766e954108f0121021184533301802e85594a287879ad25f2bd37b713e5c84438b4b701c4bac6f18b0247304402206ba56736fad96b7928558216d804fa2870125c57362bd4b98e45b1aba1b809f6022001db2162902249f3e4799df3a113ec59e3c50fd2b21bc04bdcbd245b195438070121026b87362c350da3fb1cf88f38d6aaa9a012a8cce8cdd340a32c6f605743a023c902473044022008f24b6e3b36acfee939b15704046bd783e00f901e27119acc9a6dd96ec8db14022027d63281996f0ace5a3a2231b9afb085659fdb2b97fd2d9586ebf823b1f9eae501210348a269ae38474a22b3ce6c58996e08c97c661c7bd591c5ea540b138ec33d31f20141f3fdf0fa3f300d51a06e638569241ff6ff3e45190ac3fc101f33a4859c9a6c94c2876a140b4b738b0b5abbd2abe39816729e1ae9174783a2efc991e74117d254010141b63d577b68317dde5d4da60de9b5077cd22b61c0f1216d611d01c2c0f7f03f55117f07d9b410fca22fbbaf06f3fed5d32c0e5939596172c8dc28f63e77a1483d010141dc5aa1dc8f09a98969ea1bf37eb09d1e1863ea83d62294a8a5cec58d8b441a4768b9a7a2cb43e93ac86a25acce451eaf8082867d4d64d6c8b1c30761e1bdfb800101412ddfb7a3f6f5cef5dcbd80718c3a8c061e1c4bdc0ca187d40c6d576cdf6073aca4ee1590a2c39c37c1f5eff0df8dda9137b37162aaccf006ab19413886f9872e0101416ff175c912ba276988a61dab68852ed65a8048cd44219a8cb470fe1709686f2b1aa51af94b6aa42caf56e1e853c1ab5a5a93f72130c26e4e22abd44910331f880101417f9d2bd9e678393e5a5440f097b720dcd03e49502a41005a19a5b9d100a95bc85d2b8aa9414ddfde8628e6c98a688e738e2c7bf6a00ad99c5320a3f9aa97fc96010141711fe0fa93f4a3841dd1779d75839f36e15887c07a451f354c0bd2c804c2d1c4a51bb10702fbf3b61f9ae56c9ba7546b6fdf3bc450998bb37f46272885ce6d3c0101411c6a6c0d41de408b062dfa11c3d9a8c0d9f047a4bb5c06c5666862d6bcba214449652586d7f1514eb6eb779fd112891198e4f638500bdb7cea806f7059f7599a01014112532b45ea1a434a55d8e734a5dfcaab7fe9269dcedfffd9c2407ba512dbacc45ba34c42bf3509e8a00a36249e84f645c7807bdc1d7bb3de3ca4a8f06dc075530101415e98f21b45064b1ce5ca1e44dd674ed1adaec104b42605b900c331f456b468e68461bfd9ca152b07fe8d17e641c11191535398ef088f54479e76e0a85c26cd0001014165426b8da40c170d6b3ea12aa8677994e19e1310e68ce245fd75abf7a822c17106fb62f9eec0176055174d97e28b6f83c28dd2689c8e33f15862afb1aea7cfa8010141431cb397eb8e7d4a0573681ba84f12f204a5eb669e53bbb10166a02d335ebb61174deaa0c33d868058bc0c37d63200f44f95449ae35ccba17c6163b9049c430a010141ee6dd22040d58eebde90d607e177a5d8021111c41731e1c47835cf65acfd905893e3a470f168ba81980e366f8ebfde2095077c7bf5525888836769fe89a0a22b0101411af544bf82beddcfd29233b85ba53a7b15053db5f6e46f716634705e5cdf20dced86c526621a93d3d0c89e07b6c08825e9d00c2e6aaf1b4a9ba06fba96f33d2c0101419bd0b6833d24cbc54cbf44fee91f8176f2b1002d282bd6b7b56c1ec27562f3dd8a4eeaf8d21492df3e9546430412f17aa9c2a8b1e383154964accb6c1ed5d34401014132cb89a5befd1eb133d0d194cdc9471c86e512dd94d93c8538e1f59ad07309442c6f40a5d16b0d74e38ea002dcf37d060ccea107206f0a393c02072765cdc50f010141902b00267e4a349b1dcb0125fb6b6069b361456e4838e6d338334ffedb9a6929983769e27c7cf27a7395801dba20b8f5b39cbfa530133561b8ac39f2840ee0cf010141fe4cf63d211c50c8902b3257ea384c3ff6e68706dbd40a5dc8083d824d676ba5730477edd359dcbcb01b3c3c917738a4a4945bc5e38feb3aaf09f1e18df37ff1010247304402207196b6e3f9fe0520e3902ab4004a7029009a4b90102812547ec60ed472a9a8180220013dee309218e55fe5d1e358f033b11714aaa1b51cebf4212694f3c4d2686e6f012102285f860206c96a976abb4bc78e61dc9dfaf4a4d3a2a8552f2352fd8485ee8eb90141526481c8228f72ba7913275e8113f65703a982e691c62172e89f55434d36954cbd8d2cd05d691b67814c6ffc810cec52d6ca5c8bdd1ae79f206efa0fe9753f6e0101413b2c54473f12a67a0445b82b9501e4d983d29f3a2f15f475a7a590033b75a2e83929f246dd45fc401d78fa7b53f7467c0a2dcbc9d4205bc746c5bf3507c33e1201024730440220085e6e18973fee1b319d7c515ad0d4daf5a1145e57205446fa66d116552effb6022065f1e8c7ead38b698039e3eaab6b5cae2241c137f31bd61bb3baa69769bf43c4012102c1d6ab44dbde6ac3984987e5c8fdb3d198bc5de342d1471b2b2d105b99b6375601418b24f70d1a6c894167e7a760e0c1b9a16c38cca40e3f484f4bbbdb0ca75cbea4129b363b7309cfeb5a20131b28ca259dad20d678d4220f87c569e9b4063d364b01014189d73f48f1e0280ad01342d1edaff09288f5316bc0bf1f0632d2a91f6a3ab26fef4e5870fda68180999815649533e98b78c8fdbf862ba25c8fa3441a677945340101414d3a32c1c282d5553fb7e5bf1ad4567e71cf0b6a176b3452a412d7c56fe74916533a2de1af7a35e591f256e946ac7ceb2671a770914ff886c8218b8fe830d43d0101410689c6055a84a95af2f14122ba1a881bdf1af4694868a2300f7893c5bee5c96863242644fdc148797a7a73b470170b07771a72b50df58e00193fdaf8f121f55b010141ed7d405087946be8bc827496337006c06cf2079741a3bbaad4c4232c702aeed5da8a8090d8c7ea8a0604fdd5f645752e3ab5394e05223018e6acbede285fefb5010141ece9552fdfc3b16255b2a958947a0b2b5bbe045362a861131582f5385b73dac195bc5f734b569d8fc27b694e4f8976dccb7d9fab7e316e174e0737fd61a609c50101416acc62ed6a8400a7b33b2c3bbc2fc4142115b13239f6013851a8a805ff5adfe375aa536ce3d970d1719c28fa0a7a298ede51d67fbedf73ee5eacf120e188693b0101419511dab526eb9efd561850437182bfad7c94c6dd2588c5d0784d238e65d3d1f9501bbc3fc9a8d011a04f1d30e006ea81335ff69f50c2df8255a3171eb536cfc9010141cbddeb496c23ab6ac4b50b3abe5bd3a842e6dce49e729be50fe0a3b76aa0510f32da61157fb1d6faac547773843e1f9f2eff2b5bc6f673f64e8f452018583af501014140ba7e9fe3da236fa26d85dfeea2f51183a9e098ceea624ae8c8dd70c0e580234818e3dbdbafec647056f477cb1dbb06e1a4f4a8dc351ba1d5d67f436c33a4380101416d4636356dff687754530c1a1f6a62b109b75e986b7c20f42ec3b1fa0127d0c4c442f4646fdb05cbebca78fe9448e3c3ca9cc6c193582d6b4a5281bd4942b19101014168181cb049f2a3eba5d09e24ce80b9b4ff529758a75cdef311db86da5bab2de57d4deea1657fff3afa42b36e1563edc194debfe9b3c55398930669027df29aa30101411377d417f47a2717ef61f68fca9838a8c2d2c7a94dc9888f8a987cfd23b75b35b5959d9e9a5eac54e8a6f10666a7b2ef7b64fbd737a8ec69d36b99e7e8769ba5010141b0c67b0a7ef096ce65e48cdeaf3122b724d352ea16037817eefc1a69863382c64cd0c79f96a37daf037566e22f6cae8b86862c511057fe849614fe5be36dfb8e0102473044022001ef721f238e766550697e4aa3fa0841eec83f86d1e6ec97a8f4690094dbd2860220370e080d44457ed515949ac31880a8f5c89926904dd09060df43aa3fd1eca647012102506620e9d112b2d783a1e1d86c78e77d62448befaca0d11eacb5e07c3da42022024730440220120a8037e5b3c4124d6e06e6a53647c9dc751950624a0a376b59fdac939776ba02203b6c524be4f084ff9893efde42577b493ef1a66fd7e8fb972905f4ac8f6c3fae0121020d1541ab09582958625ec78b16180fdc7599eefc1c1ddfe0ff1e049f9d3860ae024730440220287268e49703db4d1f7d420a864a8906f69a9845c3388609d940e1cbc013439402201f37aa7f610c1828dda579ca8b00206c5c389026806065c22fe099e58aec8daf01210360c086118c4cbc3618a23b25923914de2d57f1069a51c1e2eaa1754d75d9819101419ae72d99ed7410236c3dbf584ab315c8873227fb41cbbff7f0faa40222c0783cb055ae90c2e85fdcb31a85e0be96829e6418e3c66c27ce3cab4ebd277e331e5b010247304402205d6a6535b54f7902bb4da84d9b8bbf9e51edc4ec2b1f90cb2d2c4fec8f6645fb02201f0a2232ec831fa6c7657e5646cf04fdcad6a58c1e2a59897091b562b2bf83a90121023f2157880a42211c288c05090022acde0deabd87ace03babb55029ff55805ef60247304402205e1436c398d234acd84cb32ffda6c8adc8fead778e3ea38f0bc992325e0652c60220197e5ec67e37cde72b24f52744d7bbc68cdf27cfcbd7892eec841ea0feac99bb012103fc4957f28c91d502f31f32dca047a33c517e1082c3664200611fd27a55d4394201418945625234aba01f2bbfa7d2d02ba8071035bbe1dfb63dfd1f5a073a8a8c670710e76fab6ecbef2faf743c3890d957d83e8806a8f8c64dc5e7ca422ffd44bfef0101410b501c586c983c4628cadcd19174b0875fc1425a43f1aa2626cf51b5889464234c4ab3b76db6c5b528ee914cb98536a195cc848d0f1dd4b36e06a5ec0c08db2f010141f896dbc25c5bb841bed03e093972c576b21b12ee5f4166f7b34931b6f41bc19d450d19166b3742fc5d6f89141e9254c6495321884c4a102fe7823a54777f7fb5010141555c22553f94a8d0b2fad402b8cf825ae0a9faad25308dce1b6aa28a9cb12c514c946beffaca3bce56dba838d19c51447477a1b90c0894c837e201d83e7f96e0010141e69c3fcae6373409e8e19064de5e92edf8377704a5dd84ca19dc10121041146d5427f7572b5062ca57190b4f187cf9551981643533f257b86c7c1c812700c94d010141a23125a2116273bf184346061aa354b02224c615ee6fda566e513e3e0cc0a48272d0b81caeb4e5ea44642261b2aca58cabcb3cbe169aaf044d45ccfd067edd8e01014172e5b64ef3de92e92565ec63e30d939d6e37a1da66d9f7f70a1585711e85f253eb011e1aaddcc6ac55a369633468bed3b717219a4dbebb2b4d0ebece54e093060101416d3273fbbcbf3a6f44c4baaceb49c48b7a11b0c85834d61e9dd9005f293b17751430670a348673ac144aae22c6a2dbed6c5cbfc513eaa68714739ced1252fe6d0101414cc47d17d4879fa1f570f69026a02a20f022314f29696dc8cb3db6b357ab6244d4d0385ec22a9fa3d65d82ead1215d54562051093e2074a7dd53a0cb38dd931001014111bba72bedc6788ae4433f1327912200450c85050fd1e5e56f273bfe526a0a30eb2283f56e786f630aa11c675345f0278970f71294d980d329f416ce3f66affb010141eb5508aff0cf145305902c91f46dd8de7e37df26f16a924e486acadfb18b7f398493469be134ddc9b6a2e23955b3aeff97f2e937dcdac3e4d650c47257a125e501014107d489a10509fc50dbd0dccb9ec23faaac0d5c73bd04136bde9ceacf6803ebee04e83bcff75ea450618b24593870e11ed1ea9eed1e6b79fc244a3de2b77c84fd01014126f31fb93d8453eec50f1eeeef0d08a5ad18a0853e0dabae5a7469f09dafa319fdf215921dafd964dda40669efcee206defaee7168cfc11fb925c82dabdf5a9c0101419436909b9687c9007869dd1c6ea13431c8e1dbaca33cd83bbf42f6ead4580be7e8992e1c0858d68e19310e682356109591670c5aaef91cab9c03f83d772686460101411cebc065e5c62c7423238dc1a79546cc1273c7eb4f5793cd78319e6f4dba5ebf3c1354c86787ba0648ad8846ff313f5ee51efe80e0f8eb83a507a1bbb71984b80101412f2d48062d39ca00e9bc45394a594765f6eeccbc1447fa23b660cc8c134f9a820026700345ff8f80e591f4ac15a1563da283188fad636d65234cf62163afef48010141159cbc4bb2d766fa8657265e557d9c5296af692db6a390e75a8efb710814afa36848fba915df655eed0dde49586b55e84bb6ee7317910ba811bd54b114747b6d010141575c9a826ef0773e11ab96d4af9bbb5b5a80255043944eb170cb4775f3d3f704333d9fc74399220aefd4082ad508a4e98dbf74b7e745352ebd32fbc94bbfb0d70101416671c6f40bf0bbb0449165d036e68591216a8a6a406d0827586f1383d7e81c90178822fc346a257e3446a9ee4e23eaadea27e32b3c216a535619969fd066a7ab01014117de16319f9fe0ad81abacb444252a0421204b7fa533cbd6ddd6fe708d4f9b560ca009f522c1966ee795b5409533d168031e37aaf0134c43ef19899c31452e6b010141d60914f783ceecbdc85d6ccea839ab30f94ddc81a1de373332ac9ddff343867710059abe9fc20c8a8a4308dead0aff2f120d1bec2d4ff131df8d3b0ab86e20640102473044022049f1566a99bcf5a9a69b96053f71aa5b6803f97e2d1fd91bb9db725657c0b74f02201f5940726e6eecbcfa27ebadf887fadb79f3cc6d0295f8a8ca4c3ec2ccf47420012102620902678db787e0bda1f6a569aefd0d40667fe1e7ccc2c666723a67d8fa04fc0141fb230a028f5e32a16a749c5412f0ac66a472f4eabbe712bdaf61c8bbe6583f0ca3fedccc94423b28e32d4bfe3d763f4077e81402f8458c13832bd9c42376d77d010141dc0baf20b0e5536d7d75285b78d5e3364df30e08820259a3c8acad0bbfc793b61131c416e1ff6948883a561a114218cfba3446e21edb8ae50e8df524a4988c7a010141209e748d9159c240d9011befbce050544fb3d037bd11640b707f8a2fc540ffd97e3dc987f01b0196c8d1962b0f29171bf6b15b0c066c5c871be7e829d92d19d60101418a8b201f07428929c5bc755859b6131ea689e8a4b0bebd7c6aaaccfc4ca53ee1347118ba6c7d9d9f8a0e1b67dc8f11de413a5bc83f28cea1fe4e203a8e6ccdbe010247304402203be0724db36a91e19ef6f9af17c0507c840684fdc4650004f90da9bd1ddb29a402203995722e28b84af35eab2c7f4c4368c3046904ba6b4094c573aa5766205a12f00121022e8129fc459852c4fcceb9c1f51af1bd2d2b365e331dd280d7414cb399c76b530141003190df8aedf09abfd1bcc2e3d3ddc392ce6726c38cff41ff8522f9cc262e057dd689a5a763dfec13f131c4d9f42e7f99e463918f605b209f1bc0f480974591010141f7c40d385e28c9a4650d1ab1673745a319ca087c388e1dc31bb4149259e5f186df70cf6a6e6ae67395e7aa78cb434949f05ee8c092834242a3b6c06e04d404e0010141410d5d46a851b9ac9df6624f431a5038b1b43e2df4c1600de5b45a2105d9c8ce066b7e8f86da55bf96106a86473743707556bc7fdfb642bd022332cf1ac4fbb4010141ca8dd7796d1466138317c71dec697151b3d9a1c21385763e2d37653fb6af6562fbace118105be9929fffd0b9429f9c6ab792adfd63ad8a3ecf8b7dc1503517a50101415ddd1a6b43a5c3f2fe7af9659658216dae03e631bb844f4c510bb8e6b218ae3436ee11e5b81125ce5112bb1dba524badc46970b33ae93b7975de391a7e6e72a7010141648816b8de02f72d7cb5adcd53bd2d763d9bd434d2d8fd4dcb2356c4b9d9f5dbdf05a9274febc8c0511f3963439fa131838000251b0f62f7c37bf864e85539f20101412c740a4377e8d75cbee31b4a7c6a398d8f895290a67cf2c7c881140c503a813d49d32e8e08a805ed3cb7150193c91b5badc096f1e9cdd52070f5d4d7d3b12a0c0101412422b1903cbb2bb98d0a47ed05e906254df5672227d08e3959d43224cbdf1634aa8c6c3210749bddf6d8b2a53eff5509d39858ae88f333b6d46a480d286acad5010141f5241148c80b68def81c39127867e9640391e05305f67c0b0ba695fa393bd47910f759751ff71168318e552c45ae8add2d63708393ea1bef2c9d1494aec5aa0001014148325aae4f2dadca6a109458ba3e97fb67e9e28a91abcbe2ba889a6830de8c213a1f85a8f5cef725f0efaba8c1004d6bbfca8a054e6e83968ca4eabacf9228ee010141a0a17518b8ee6275377223855faada1789ef27f9b8e3ba83df5488a7933f5c4923fa8cda4fc2eea74550350b1e927aa0ebb9fe5557568a7db9c3e00aac9f16a40101418f1a38d40baafa5db770b7b1c221a50a586e1fe81e7d0eef026b194e57b7d501640508de8a34470be4a6321bb080d3f1c7cc4db6e28bb0b6255ca5aacf8be9c9010141ec6402760b72f5043939031972f937da6b4112dd18eb9f9c517d60b1cad332f8431ab0657ed6aaa37f8133bd9d553aa8a27036aee54b99fb732a395040b38b16010141131327c8eebbfbb734d8978afaa18a21cbd227e657de8123479e57b1b3057ece7f4791aff71446dcd5fbf2c18f7097b71a56f61ca8f92aa24dd4fa4540e21b020101418b68b83ff5612c15814d43f8f41722c679998700abffc1e460d6bfd10fd7a7db92dedac52d9bf7ca7eadc8bf08c440d4b840bba720b143bca99cfe8f90b5ee550101418ce1c0a41fb3c7083c2d6a477706b742bfaf7f27d21bd5ef65a6732e62ef1882d62f41f752cd81a9a30dcc7062616753d016f372b7d759f4f16bd6da0e681fa30101415bc0a68cefba7736dbdb93886416f63ed2a5b80baf78a801fdfb23c5da3db009c2d7e5c4d9eb34648d32e20d7852b7de4a46f4b3fff079d4cbe7d9d36a75d18501014100432de2e9e66cfc34af84d2fbd6f83e37a3bc1b32b40ec996bacac70a56450331a13b9bf72673205fbc67f9f8379e1f4e7c9026396f2cb397dfe14adb3dd5ff010141794abd8ac0b7f62d067e03c8ed1299a090b62e932dce253d3fbcb37607baa37983a1dd8f322223a70c26f2d06d31ce60a0b0d8d7596c852c10f1f81b2c47d1a3010141510ff9a535bc9bcffbbc4c7dd7e4973aed59dfde08df2f22da47d84e24791f3c2e2c9acf46d81fbc741ce0f083c80a9a4f6e2796cc2d25f830ff8983545588d3010141006b7e4cfa08f86a371d406cb7053016eecfae3c5c4a4466420d66b6f08bdc4d00fa9665bf4359ab597895579df143a89172605d32064a53d145beef508ecde2010141b515ccd56811b0acc26c4a2af1519c788b0387f1929b81d29c3944fe4f31d534a4703fe74eb4db2ba1dea2b83356bffb278b6761d66b8d858fc1515606b424e60101410ea73f6af8b7a69128f281aac619f75f4ac3ba2105f0134b2db97d060e3e2bc6201da5ab2d1519adefa524559eb0ca65b7d924c63e326037b093a10fda3810db0101418ce5958310d8cedc5eb190d0b4df26706fb4abad52cd61ae9150e728844aa1057ff180f2ddb3917143e92c960de152976429c94a3288051db4f809ca50b19b980101412a953255d17fb0750d98734b8b8ce0b6601d191ca4514484e7c73bbe20d1cda9a4f00e1759910c8686ca38e2cf2574ab2f83807596cdfe7e31b757e5c122201801014146749e71caa01d468462171372713da5d5a558f6be8df4dd41c942cd443a972c38029210fec82dead2f05c04d022d8a70ee54873ab69a92484d6b9ad99e9df610101416456dbf956ee7df6ec46d8b6b6bebb8b301fabcb2d220ba33418cdd9ad6d4816e4a922d33c3adda265b165f5092d9b5e8745a21d9aa2c5d23d14b925aa9c31cc010141bfa371daeda83a280f1ea79cb157a7e33aa19b0f8f516715e91228f4fdfad53ecaaaebd8526d7a154fd87ed5ce464ea63de8674b4b53392ddf01b730ee14d1fc0101412997f8a6c1f5baf43787ece5e607867d8a2e1cac0c1dc3242564e03d580b93ed12d6eb30d36575467238bba33e5f06716c6158e6e328d57e9bbf9d4a59580e300101418d0d137a647edc812e438e7191641c7e5e0a8bf6062ca4fed10e22d862c414fa35dfa3376191062e8debfe716fa3d41d8c09e1877d85958f8bc5e9b3e4e06ac8010141c72d6bb744ea646c46abd7ecc2e915d58d75bdfcdff96ce4b44326f49155f941b67aae57b58f3b3ae1c6107dc350dbefa8248fcd682012b62975c1d3d5e47e96010141f283429bd7f57b36c6cf337753e03508c8f53fa85f5dacaa6fae562ceed809043de93786db3f9399bd72ab719dc6f4236b0da56cd8a5a64dc4bbc4cf3b426595010141af892ad3d5a9f8ca5cad184231f454702b25468ae07d88bc0da20af0166c75dc9c620cab24602c3c3c7e78c05df4b25299a32de9dd6ec883c224131c2f5a3c52010141f3f98a175fc817b3ef5e32cdbfff4fb0ca8289c9a17987fded9b49ed671228e174e027f4f732511c825163fa59c2dc945baf5f557f61802940c66a545814bb6301014163f7ebaea7b09ad1e3a863ae8000c326828ba4948fd421c841b028100539ddc3ce204e6061dc4472931734f908e17fae338875cfaefc84003f6f5fc537cc2a7b01014128a72f04cc4c0e69ce9a7d4aaad23bd0039e9f857ea37dfabe1b0d8b3c5b496ba2168927cda3a5096554f6b593acb19a3c7f1d860b1a00ebfaa454501bf2637b010141569b08e3e7d7051e2cee9dc7c742cc68f9a0e7e165b3b80154f3b75342491f787f6dd97abed60d1aa0d2dc34ed7cfe41a1dfeed098b6e5cc617121064442a380010247304402205f4847ff761292ab05be1a34d41bd701cbac52161918163b09e3865f74853cc5022061b13b2196f1f650269f0d799556232d187c4786d8ce7487b766306a7074fed501210237486e3170387494605f6e571121f805c182efdf0a08046dee13731a02ab29040141f20b5f4b66852656cea18161802bbbe8dc5a3b7ea4654797fffa274c94aa2dff11061edaee87de436189baf2323ebf4d13c7b3066678a4812d3fca32b71d6d18010247304402207f60261ea078adafdeb7d5b7798abdc28e6a7fafc6f1ccc793185a9bc305b31002203fa17d2ecd43c1db030dcce44e9220d0873d624e3a0b6515ce56d6619c0ffcb5012102e41f19aa13e043f3fba99af414505bd2715d1aab13e65691c874ce0cea1b4da40247304402203d9611b6d6ef8fe0ed7bf6bdd3376d338c682985b7d402f51d4c2bd7623851870220105eec903998d0a1f2fa827f9ea3bb9a3d56e302ad578aeaf279b1d01b44726b012103bc07b3500a329853da5a7d6b3dcdf815839ce728013df91a97c72dd747a895a401416f4660730d6951644d22a9647fb927ab27803144463bc43670452bba91c1aab47936cd2e47c7c09eb2ba901815b1b86fc642f53508c28bf3db7048248da8b078010141003390a69c436edc71ae55ae58c2eecf3d691fb2e4aa4a728ce4008c206e4a046ed29d7f77f43c32c01e267db6d356edaa47d31efb93a610a8440e448ae047da010247304402201418a919b8b5312aba8e7281d3ed9eb5231ed398ef89f4996761c8206de5f45702203443211af7ef79d5681e4600245e3f5c78a67dc83f81432e51da72f2dde70f8701210356ac916108ddd09a5108ed159e8b8ad0b3844c6f0a78d84dcd43f1003ae3b17602473044022003d94504cd9471c98d3f5beb6bb3f83e27976f9d5bdf7aa2e3509110c5e3bcd2022002f6daed26a5907dd5dd1bfcb9b81564fb76d629e442077b536b045e233f5c2e01210257f735a1f59d97a09db7d20beefb9e28b979e301691a942ecb9a6feded32e7dd02473044022019be6018e5d6c02bd4d64375589293d859c4af222abb7cf22f0a967ae03e101602200a430ffebb8e993efdf73fb50d78108c57ffceaa3e204470abaad3565ce061a001210326dec2183e600f5f0ba1320ee4e7070375cd546097ab22b600bc1b9f3082e5920247304402207ca6e5825c7f5459376ac9cf2a3619ae586138aedbb3624c84ecffde595ea4ec02203e59b77b4212c311e83b1ab245b57d149f75016ea1c0eb3ea2bbdf7086fa6b7c01210227f6ede0f6c3159e42d83c54588316c4589d6c1903f0e1835dec0d1bb9c12eb70141ceaa700d60fec6817e2d58dcbbc68796a86cd52f1e6326de0a0ed11d9cf6a0302f1fe60f46ade7c141058beff5518afbb4d7e18ffe0effbf1426dfc68c2c276c010141d9331b379dad9e8d677a5e38bf977fabae9636327ca0b83da6664d3483e718a45c4c51089dbbcfe9b7281a7100a15521cdd513ad8e06d5dcbacda3da08765747010141f68567fb7a7ec90395d745de417dee8ae391a3ee068ad7ca0751c3be6b604179ea42439bfcffd504e5bd0e72d2dd5a515d7447ca044a0ec4bd59715885be59570101410bb5244f540d66f1057f860c646bd4ff48f25fbe71623efe748d9a710cc9ebb08eb46c5043fc8e4a4c34cf8a3700ed5623b4f9715706d190944a354d74c402bb010141a04756e86f41f8acc017227eb1d3995bba43c6913c9d722dc79efb98111692b615c8f6c7211edd459777a4d4891e0d9ed558fb4ba88d5b547a1c8530280c50b7010141f5a838c4c2d5b8fd63cebc5c9c38628fc615b2f394ae0d498258ffd173635a46a4776b02db9e062d328f93f1efef16ad21e2c9bc33de381f64cf9575cc5d637501014185752417bf6f5dea9ba2467543eff8933e3fb6a83f6ad79f5273c3d31b37920aaa0d7e69bc0c3a3b4eddb1b56feb32f473e8c494c918a1735a3a61119d44af67010141fe4c6f1bbad8a8f9e626c3a5e9c10eca3870e2d8dcb7ac40ebbc4f95d7efb1f674409d378337b04b14770d341b4ba10afc3cc23e6b44f006b621bbc1c7aaa94d0101415e7b3015a3ad40873e235a5708efc046fd3f147f095d3df7071913c3d5d1b662683e217b3e391c4a986abc714a0e82e467a0bc3e5075dea87e51b0ea47a33d3f010141cfe7551677684761d8ebecb1f2ec804863239db589e4743c5e3e1399a82f81d61384922d0c37fa09e1361e449d4e7e441548cd27f1645749b15fcb29b72443c8010141edc5cabb8aa7534409dad9082dba666d31b9bd98ad999e53c01bf0d6ed10779a01b7028f6f642fbe1c038a30206f3b1fdaf25b99d10f3eaf76a9065f142c41e50101410729fab3e2acac5c588e11ba07f7e1d04c701db02d81685ed9dc00bc1803ca92a0bec68ed12e898ce0ebc0ef32396dac8d70d3361c4b25e4682e91b6ed0b543f0101416442fc6cfd89d65de58c428b808d427773fedf0b0be40e40fd65621c5e84c892e8b9212b820ec38bdd0e6fb7c92ed90b120f313a4166ed85c35769be6007280001014127c463ef0197f4b1232ed85162207cc2161cc9601cd104d229ec20e4cb741b47e7a1d2df0e9fa922675cb55719c2eb749bcc7ce97fc6f575cd44ec04dcc77de30101416cdaedb5d1aee55e25dd70c6eba6f0c9c2b4c3215bc9b1cfc368a3ee34d30cd051ac3426ec214443634aa87e4759ec0f28b25225a7b78a0d7bff8361109f23cb0101419e3cc1d51c3ceb9da531b6856cd398a7af5ba0e6ce0227e0152ca8942e227152083780e6d3bf04345e87131e4a8f13cf94c62b4ce612313b4eac1028e08dee81010141f3bfa80aeb1857e539ee6ddfa3b63a000ec8cfa25d1fd5416d72ec6e24bea47bbf734c60da2c476f32bcfbfdf2696a5dc694d357f2a4dfeb09fc29969a4102440101411f5387a834c047d792f62ddbebdd701ed476168fd312fab602cb2b2ea8b04bdb0c440724f332d4764c3f8b6d0d5d91860414820bc040c07940447f0b3452598601014122e8672d4749e8f39572a0bb0c7c66019e051f3f3178cb0af400e883b89be2a063a9ef48f8acd51b8618012e9ed3f96d074f985b56db2570bc718318c8631b020101418ba5170f512081dacb7f37ca44903fde433080bb6713d40a95e1ad8dd36f241e98a2983de0902a262124ac1a8a30f7ec090802da73e127831b427599c9f97166010141eb0ae47f26891d14bbad28462a5c7171fbd0102ddf8d007c071de57695f1daf41dd4e15ad132d8ba7953bd587803e90e87cd1612d2743858b46c65d1763548ee010141846046476c35475f8082ec2ee234c20e8ddd362d5abdc8493eb9160a7f43e45860649238d8984ffffb763c1411b3b2a2a71bcd038c7c361612fcd83ab854a1a70101414c4cac03a4c0de900daf9d2b4b0ce82c8212d4695971211d18110617c025af94435b55730dce26d1b3836d1b37ace89f0f7a694e526d1c1f3c5a3b4d023944500101417b6b7e84615512cd9a9b7ac07749674990cf539052b83e2c101a5fc96ba2bf99b1fdc6b04bcc3ab2fbeca2d6102092c468680398886143d1857b16bed4f87fa7010141087d690071318d20f02381b03fa8b71eaf3fe2648c882bf2ecbb9255e02b29f80c3fb0c4caead38607a4cf6d3ac08615cc5796d41487407ef8d79f91eec14074010141ec20790fb78c457f92d6f1737bafd55072474c0c90d8dbc24241e1e639c7a66c5ca11bbc87332ca330c8d32367c7e912d4e651c5eccb2c76251f1612fb37ec94010141f9b434a46035e021c6e7bdcf7ff5e37e8bb94eec6c2432725664c234ea9b6f5dc667b0589e717ad04c7b7cb7f7500befce27ea97657255526e1da3e9fe47ddde010141a33bc59131677c90ce0227668285979353677e2c098213af8994f5e0ffaff20a6c007007c5469894672642b2f7bcf6e4bb144aa2451bd95bcd72eb52184a6885010141499e543604078ac7bbc78e54e561cdfdf28cb65751f46d3dfa164406d5afa366a4a96c6b87bc57c2e5dea6b8cb3a473f087ce78ecbe56b5cd62e677f7ed8a1cb010141470b9242af8d19ccf430e812dc2310ca0cc409b2c695c977f8eb38efdc377e34507167c51e30bcfb451d7ce560091f2c4df8d94682784b8f08b67445d7dc57aa010141381806cde2e061dfbff4b22903c030787a25279e7102f809156b6ec3022d80bcba9c1e5e03c53830aa1b8555eb22b9a6889664782d5ca5f3bdac943d6ad1833f010141ec8de1e397095136614d401b1dcc3166ce69216dc236a4da13462d89dfbaa032d6c78ab7bf9aa7550fd9428c8d6b042def647ada1541490650d3cc653e996a380101412c7c7ae71c2b8228ba33b9da75bfc1590122e5ed72f4b6575a3ff747f2c0fc03b51857d85e8ee44d4b513c8bfb5de862e644ee5c61a65b9b8bcd6e1a1aee6df1010141494c3b7ea8f5684440dd83da6b92626828d210327f57d438974986a3ec3316b49246209b0bace78fbd61da7612c9ea73eae7082a0ee03d8f2f1287baacc5755901014141df5f6455d000326d2cc2912bc2e165258bacc78ea03750f9bb38216468f4946e6e9f277fca85c7ea9086454bf9517965dfe914290d09a71ef485b9cc2abb3a010141c9f91b65188a33e56b8b3d20e232c62d5b90ce96671ce6ab57286e9b949f095d806ae96174edf43cf4b2f7346455482614c1c38f20186b54fa285e1190d07ff501014142795603ef91e9cdc5cf28415890205f7688d071f93b479b3592f9b766637fd1ff7fc6f78bac7656a034438f7f7d6d09e91b6b081388b2a57d8be0b6b77d3a9c010247304402207dad39d003f1c322ef781f3e4a56ea926387983c532e3374c5bb3a652f3171d6022035b0d2e8d22176491ff8727f2ac1501fa696e5339667f56dd18405f6e650d5aa012102600522f1bf1f582d7dfef8a87f36db7117b0c33b4cf840d297f36506cadd2d9a02473044022037a5e1b059f681bf13ac9eb254a5db40e5e3ee9c3a2e3d8313270b40f138e4ac022034223b74fa2c2edc5dc1fd8d32fb6aa9ff2c088bbb9d485f47951789d7721e36012102f230b7e0a7bd4012ae397669fc0933c3b9d53c94ceb383c7dcd907063e8cd3d901411cb593a9680cebdae8f4d27ba46efe001ec84aadffe651b736c99b8325252a7b280634872284a102895f60469656f889495204ed8f8db6be156c361ca0834865010247304402201c42f839ac79a3e8501d01ae79ba3f2f29fb66d9294374558ee767e7e529e37902205f815908201ea4eb64447a6ab9f7251a4341a4668afd31f2cd6baa9b3932364701210240dc0ec836155eb3eea71969edea5c65516783d0b6dfb1a4a3d836e8cd0efa1901415a7a8adf7d138bc7b3cf4791aff5d579e8b515184091387bbe778175da4097b93499180717c362083c51dbc3acc9cb5fe20d1c1c019a922e3308fd043b3f4ae3010247304402203ddb8571fdc8d485336123b1fb90dd00f57a1bbb70fb160f1b95ee818c8139b502207354e80745c92e923c5dd126c2e02d4e88da4011d71a8fb8991d221e39c792c50121039d35bc0bed26226dcf8c946b4901537fe134deae05c133c3e3c74e4c2b7ecd5a0247304402207b19c3422c679c3b67114c6ffac3342ef892a8c4d151df9eac35b5a4607bfc5b022017cb6dda6559042b025c5e1ae7cc3c026afd9ac8dc35aa1487f25d6ae370f96c0121026d72ea0aafd7294bf04413bebe559cf23b9b684bfc24c00707e2abf4f66244590141a5cc44d28cf0bc6403d2c3259444d07f80bcaf15b6459127f42a0c1fd484826ca0251d2f6d09cd092a9c9afc63326b9e0e697a886def70fd6207c7518bfd42cd0101418a6d3bba77b1d06d455ce2f332cad173d32a9c493c2f4d73ca858ace1026d4c0badc88af30f3896575266a90e13d606be61887d35f582004511688e1e73e8c170101419f5f2e49f5e5b3f1fabab19cb678eceed830d858eba092b33f98bf88a3864ebc4e405eb3f72bcabf82370da79eae5153842e0f9c9366560e1af8d9c5e5e7bd050101412641f0a73be0a5dc915af2e2356304293d579a9f102e78ad0a692cce984dba441d4a6fc4342746799aab9d579c274d9c70b4b0d7db52c5dc59d1b92cde460ec3010141ac61382fa9a90e0dda9a633ef1e0d05df4da137ad494434527c9098c9b5db3bf619564d2af5606e2f0fd3277c959431a57f27b1e4c4fdf618eb0249793a6c98c010141ef7f9a84944462597a948a70ca47cd75d146b8de1861a19a6e494491bd8259144843748af547fffce2e3747d0ab60e8dd7ebdf8d84d4f7bdd17616fb4bd7f99301014152a8cbff8012fc898852253a151b3b595ba098059884e39c3946fec63ed8cdae3de899d04140f10dda163a00ab043a77f417a9c53a1e6ef53e2ba159641b8a3b010141979a8e3f2b2bad74eaa3be6c504648f14dabfe4ed413dbac1a0064f000ad32e8d1c3f342f8e3af467834a8b621a27d8c38b80e14cd3929a439143e80554391cf0101412977f5b9e83c2f6a25fdab2977a92e4a3bafd745d2131b971d909c87ce47a1c1240a7ed8279ea438f6f4257b9a086ae456d939eb335f1b508ad7c44415c6bb8801014115a21af47f8f45c8288caea59cd4b28e5efe53090b1b868337be64f9fa62663fea69db98d72b45d62521dbefb18759a81a87ae0b36bf34bb49afa3597b45482201014128ca784cf8f58b9e5a662aeaad433b3ff6ec632f12e208c1718652b9723836ca9f65487299fcf7bc8f1a0363cd866715dda78f9432a88954abe6e975803c86f101014148d3cbda73495f9c5d3a6d523e5664160ed523e1e2c08d770554084ee7c71b95ef6215d4deb79a917bc361bf000e65db742cf46dd8b8539e1bf58f5dd032f45a010141eac19d3297baf0717c9594b5e6d41f31d77b9d3048d1f09717344a07b8264cb9ceb868624facbcc22e964c6f2dc548ee5143c9d03e32fa11f00a696d9c0efb590101411ba4e5337999e9a067c8d39929e347e40bbbd7cb292a7ff5b675bbbcd9146421e85a4c8248193c2c41107c29b048a90ef4a5dad80e5addc04e9415792aa005f30101410c9cb5b7ed055bcfccec9b1453425e7f99b959a8de99068cddbf24fa6636a3228826b10982b95fb04a0003295c594b8b64fd12c83a8955deb70fb8c12206e8e6010141b9cbc36e0bba1a54c1a0d53e1e1e16ff980af820c17f4e2b056f9e2de839616977296905b0858abe8e24ae7ec578ff1e15cef80f96a3b883dd5da2c55149b31a01014130f5bb4a6908e1d9c25410f2db987bb8b2c78b7c0b67f64d67f76be96d734d58330b43a45deb788ab43f76419987b0444557489140b179b0fbcc57bf5a7af4fb0101418a152cb009a50d7067af47f77e222615a4feecf2201fc95dd6c4658672f27d870aa15ed09a06ec99e6cd63c4fec00d72c1b0765a401f9546d29040be91cb21d3010141751c575316e409686bd8fb430dd9981028166dbba45c46cc1fa10f551cae7fa161ff9e9340008494ec828e45be926db9dbaeb69f00361e99b61ada98b4df0702010141e1d869004fa820a608fa1dfb5a90fc42fd598af19b520f1c4bb127fc047be4044907e34b3191d711ade9e8b8914958d66523927f43aacab184b3ebec660cfeab0101415f474af038f1f1a2197bdd25746c7f44606f3ef3cde5e9cf34c234532502ea0f380759502ea8fafe6d7bb3f0dd856ead08d07f8495413b11bd1ce3248b334d630101412e7b9fc45fdd7d35443fc1f3ca65ef1fde4a302fde6ceff694449af2ba0f5eaf6b16b80c87d0c0f48507b81af1b2a303d355f2f99a019ff73a56acf1988fbd570101416d5f11b93b7e9c8f9673523fc4935782d10f3529fe92892292efaa48d540f2b1f96f667938200bbf748580932a9ecf02f4a30961c5715de8f5edcc3c4d03f800010141887baddc34472b01312642a3b90ab41fcad7eff9a28cb88eed55b126b7577c58a7a02c130278a481cc9bb641ce8d3de105b6679764557b1f6c4639fec74c55b0010141e6d7d8448dfe580c132be679d341ef9e7c9bc01213b3da1ca0580c03e333a373317f9d1917b61951845b85b5ab1ca68da8c1ab014f4159c4ecb3b7a7fbe25eb70101415e7849a3d8000df53ac6bb6c56187bc5e6f647ae9d003ca772221481ce0efdd993bbd7367a10313547e35e34ccc724ec6ea3e9adb8be84fd4ac4a4432f9f9080010141b7246ce6b779886155b1bfc226499ff4e037b5e2f1e3e708f7b176eb52394150768ad9de163986c2b19393140ce0bde75ba398787b54bcd3d22cf5bd5720b2b701014154e981d7af0327925563ed6a836e745d14a73ca858aada14251a950e078727a562df03788b1f2c89ccb22a2b242c355b6e76151ecb841fcb29cca78a8613605b0101418ffd867f5a6eadb5f95e9a5bdae1f00a0ae75f332dc62ff3dcc8e0b28c32fd581e2fc35500faf14c4075f906f6b9dfa1e16a9d9e295d8437321355f9e5c73bff0101412560f85cf3f9126f0ae6bc030f9ce02a57c27b7324211d26ba7ec259cd3bd13acbc596dbfe4ad3266c9237d4ba1720a33c9b49ab0368285d9fa2f81306685a50010141030088782f91f7c17728e3245f7b8ac88753e0a24750284503a5c7a5706ca00788dfa98d7caa2c8cae9543078ed2e4860b55b4da576f6d917e2009af98ad9f31010141cc2b9784d5c29a083abaae4e2d728601018e7c5fa6de2cc7b0ab28c5af9ae0abedaf03d4871a6ae4a43a92c6c1eabd08de0eb90a3135cbe7dcbb5f6a5a8b8ae501014162c2f7bf5916b6f95fd758ce54012080475326cb3f16968f04cdad52fa139e9ed3a7e840e74355650d269b617ece6cc06fe562ad10b24df26cfb002fa73b2af7010141f3bced633bd720aaac5e2ad4afbdc22b1b61327e0ffeece2d229cd4309eecb38f6666a4aefa8afcdacd2485e9bb3ea3abb124d31402a58550dcf25011fa9d861010141873610d103f0dd193bec97803f67afcb291ccb641615c62d38dc778b4692148ea159375aa9946aaadb9975df0e4f71930efc01e4779e2271f4c22c4f938d6d4a01014130b4d6b1f97f12c0fd2a641708e94a931886c37b90356d9d5b2dc6cbb39bb90dc116fd506b2fbc90bfca1bcda496a0532d48f09726d9a75f96fe10daa4828b19010141418e6aad3459858f86d4cd6fda09bf9110db085dcbc3de21fcc1194a1e08b2186516bd61095f0d0bb4bbb1521c8ced18cea17e92e0cdbb711dcd328209bd6eef0101413a20643d55d4885db2f7d4c2d301e1727322b2956a3bde957348c5a62cd4de82bcbcc009ce49ccedbecbe7615817f8849129656a08b2914be30307926b5e84e3010141315ff3565f98aa3842f914130b77bb1f2df9e117a4e3b15e66ec0fe5afaa4e19c8529a8638ada2eedfe10061f62e7ec5c721f3787f80aad700dd678cb35ea1170101414af41c49e58f7c32dbf621fcdac994012c1ab98a29c81e2d5bdd4fac989fa87b7b20679887e6653346430468f18f0811ed788ccdd1f4f5cd1bda78ae2f662f25010141c28f77073cb9381f91ea479352b5fe1ff11d7e6f5aeba4e7dae5e060bc22149a23e9183038e6fceb33cb2effb9008a753caff5eff668a79b37824c29762a6755010141a07ac7153a543686219eb0bc1fdf1e7ab1d1e6ea629ea8eae9bccf42365b11de2fd43607372d2c14279a1a438d393d4cb6d99af1df73906bc1ca0bbcc0e8cfb601014194086751ae0dea0595086795fe5b17ead32652bee2b48d9c0ce9849664d44a2653c77527baae5c1d8961891e8b91cd52e9b913ce296aca73ad72fc88c1e85ca1010141cf075e684f5ae2a270ce1111bce058e3887c8f540bb87a85317580c66c47e8e513e425474dae4b5d764df3fb8f5fcfff0862e65efa18772ab774cb58dec83f7c01014133cb64912945e9469c5b0360e69e12f10a0bdf5eacf98ffd04389dad024818e68ba798e127f8d3cfe406c38f1de393097b54bfe5e95f0f40dd850c2f1ea52fe1010141886d3fc10305e57520a1539eb930b790154fd25d87308341330a7c95f861a5c914976eae0b673d4e489ddb25c76431ac870aa9c0473163365eb457c6a75bfb350101412b987841e4fd5c9a94b57bc012a3acda71e5de2dfec24e03af5bd8456f6308dd41d019abf155ab70b3678243949985eeecbcf1ff4aef0ee3868a4fdeeec93ac9010141ce98a20f84e94b946eef8990be7a9616ca5ab3733c262b6d0946a0c27cec82374c7c8ff524d1d27fd4ee1cf4d6dd7b1bd54475ce9e96dd2747258e5f5dc88fa901014121ab5dd035f30c0a7d1666dc44d4e00793da6948ac4d2ff45d53be8784ad04612c4dd1fc25fcf339690cd122f4dcf7eeedef9ea10c836c9f769cc77d7ad5143601014126fdb0c99953891101bb0196d598e2ce1787c945f59a4ee9ebdce5633ae1efbcf2482ac467109d78f8dab00433c63d3f0b1476ff80ad28e81451d41c6136271d010141855dd0681f9c8fd28bc8f1de9480007efca237e04bdb45a2e2fac7f72b02c5afa30773093abbdaedcb7ddd3c5c9447a41f80a218a4905ca03da5467f40608d77010141fc735856d82998e3889f12f2dc01175ee60465ebca6a96692423318f4c15aa2d45787315058e0d2eb12904342dc9cd51fbcb2a8c5f084ad130f3bf869a9185b401014167830d64c6509352fa20673c1c5d9c4d50678a7a01df360b0784a46a6aa6f4d3dde7d5d1a39a99b4a0606cd70e9046542f9119758a8b381edc4dbb7136d1c373010141c9335be32f072c19c1d94cd88144b5984727edfc59b3ecc5fd1f5ae346f2d50912ad986e276c44409143bd2e76841df4ea73a5bf7ec9445ab1df9c0314244721010141f9638a442077c2bbb3180ffbd7eb2b6029cde9c5e8d651a6aa4c2aa85c3a4c046476cdd6204bad5c60170a06f47baa47928d02cc4c6e08b6c5a6a600926cc4830101410fa8b3b7b2f7692ce32cba3048ddbe40bcad22c2889f59e01feb27812c45ef3af8dc8584817e1501a1ea9d21c65daa8b1ec3e252e5290198eabd62389ad1a1a5010141e3d6c8cec53f460ba3ac0138c72820d618ea0ca963bdc98f1e8aa97f6352e748ddf84f81c49d670d340746e16ca5233981c6eb993d832402402699579163d407010141a4ddc0709383525b18e5445108bec19a354b2d918d31ba936e92d7e87ce6c8539612e05308063691ca17fa44bd039ce1d7bf6a1cd1bbdc504d933d1aef246ea0010141d5ef4c2c7df036b758e1b0507cd10fb73cb74d4e3d43091a7c914147bcb247a4dd59aa3106a3f28a16988fd98c5ae1143c8a3caf185e1fa094fefb7c3d033094010141f1c5a10d8fbe38cf70d70ad27f0a0b725254dfba4a7fee69b860e18b6031c9f8ab72fef461dbec26d4b438002369902c9144a188ffa79b8e2336635a425e9d4d010247304402204b486a2fa192d4e1f01fc801d22e632cf6445da70c9e2e57f7963e244239253402206cdc2db3191109bb73e7e6d1677df4c9bbe18069f9af771abc1841cc4af224e10121031fb8ed12b11f71cdb8735b42f212c8b81a245b84970d172019593e9b3113e75d0141953b8dbdb7b066688ff215bb83177a2a3eb97e3259dc80f7a647f7c77f0b9243449d159925c01b990d32bef7fbc1357a5240fb05ccb53406c022c8f4543294f9010141dc0311c47d08ab5c6c5c56ee2f0a979ef563ed2fbee9df7bfd5c3b7f3ab354141e42ceedad098039aaf82b2932bb6b685b40237ebad97f22585894c9a71ac4c00101411b0b444445da40c09bc80e2a5d4445e0b09ea1f14857ffd35402e9a86b268f8e4cf0fe22650b9160ef5f765ca2dbc871c87f1fadee287d234a466391a995cc350101415be8b1370d9e04e8ab75be7bc75b278672fbe98260070b85991e18c0fc43ec56d4c20d536c96edde809389ccd704e53fe02e8c1ab775f10a0e53f9c86782573b010141ff0b0148b5074ede495ed9c25c5297b86f07c9d3bc945a0bfe8fda80fd85f2d07dd3e214e64fcc216282185b1564308476dc59a9f1df0f42fbdaf812b0770f0b010141ddb1816fa294a44620be989019a83603a8a82e143a36c0b307bb8fbdf1895f1dcc888407f11c09965db0a8fe3cd99bb5cfdba5422e69cba5324d2adc020ae73e010141b186bbbd3c7531135fc724aaf1e3455aea5c1a6b1f59752ea2c1bd281288575121569de17da1bb20849188d01d2e47cf89fe5a2975a0ae052f7e872fb142378b01014125f497c0a221a2811d737721e7971896c3081dce0b9bf5d4168a584609051d804060d36b9ce4d74d05ca467a827d16d38f449a6b5f3536a42811af7dfa3103320101418bc41fc0571f95221e0ede72918ff2bc018b27669e9d877dd6139c6c24241411049bb68a12d207a409cfe9279aadd62340e106ddb6bbd01bd29dd27f420d9cec010141cc1cb6962411c5b0c393270aaa2113a119cd68c62c536cdf17722a8bb829ad024d42f41f229d6160eb1c2438c16b8348d6dbba203f507ab6c607fd690b880d3a0101417a4c3c766ad7e3ca70aa67978cad2f589bcc1e7425ca927f1eb6f3c71d70ccc9eb28a0bdc9dfd5bc7679ac29ca2a2a9bed80858be960913c8d7d5332c85bbf490101415bef5fd33bae000ae4b5043e9688742524945911b4724fc14006c5b8d39dfab9ed5e127b87d3d0768f1f1dcd1d1a60284a5842fdb40a7a0f1edd593120cc557101014198ddb18c72d514817c51dfefb9cb20bb6db6ca0270ac947072d9e1d9a21b32bb4128a8fe9fe92b78199991fb464f7141730fc7a660bb6ca67c8441dd06ed962a0101412fdc133962b7cb73e43ab4cb083a7da52b79c394c7c9757921b5d40a18bdb884f1940f5d0c89e0527e4f686373c923960326459a12cab5b1ed93133e74f836930101418a90bc43e6074aa7d1bf686e88b6b373a93a923270f504809270bd07ec1d48632894a1af8ddbe736c00f8b6c18373eb191a85dc4a9837dae01509d1f757b665b01014139d1b9b27e2442702c42abc2801859b504c2172a91ee16c94b53c7d132475a29f2325d13ea7b40693a05bf8853bbd8ec61e8417bab69ff1d164cf494ebd4929e01014177b588dedca151705c294892c2246fc842979a22d725c7b7a940995fa43255126810fd57b5ddb56b4637292ee1e9b42df704c8ff3f5720c573e18d8defee56f9010141d3a358fad1a56eb295f23b83ed4e64ed05e7ec93d6d0df002d2b13ea0849ff2c20784cc6e3712cbc2e6faabb6750e7157c931f5678ec71f83c3e6b5748fb7c58010141d79c09ae4cf67679227392e8267dff1d0a8ffc0164e072d3215c2dc2f2be0f263398784ee437183759b727307b5e2d39ec880331d95e8e6d7ff4894ee70ad23301014141ddd30cb601a40db6893a828229555fa61b096049c5fafe4f1924f448c64c9f7459fd4715d8104a97ce9ac25799a46e3216dd75dd35a0717e9bb5035a183be5010141bfcbce70c08e9da41ae80b5bc43fea7107737dac5e19481904fd620ffa311bd6beffcbfafe87e1bb2b5ecf7a0e27b49d4842f3be2991af530484a7abc72b821f01014157dcef61ebe80751cd4cb28cdcc6d4e5f4a90b9fdbcee65d66f26574405adca12c31a0485ef4b7c6ee55d60f51ccfac58214a50b103ed53af616f8c419b14c71010141322901ef1bb78bf433972d2f7cd85b4cf9ae16ed44f69f5a97c2521f60f2137a0c430904a1b98fc64c798c8837e108ba1555836e1486b321a76e3e55fe8bad7a01014139a8df6956d553cdb7bd650a0583322045b55f6df37568c1d358252adbdf7e3787b398185a4bc10f9e1c488efa152ac277922530a5a78b327071db3b0092e72701014129108a4e85f21cb753eb2d5a95cd9078a12560215d14f12b446b8c7ccecd78302ab6d65dd5ee09dd01b65c1fc66640d81b4fdea06102392b88518496f291adaf010141f0a0f513e8be1043545248edd347fa8aec264b253ada155f291f502292becd64b2af7cfadfed7e20131a3cc6a4f22e5749b0f8feb53a9ddd81e2aa49fccaa74b01014141b454064c3da9df8100bd6a18b477b7fa3e61ce4c0c4871cf743ae2990e906f4d2d0b365c971fb53f88ade99f7ad7f284db12e7310602e844b652d7f790792c010141421dccc86a38dc9e2a2057499d248dd99cdd15c99c73af244d27e2206ab34a6625fd7ceccfbdabfad74d21abf322414a9915285a5346f42eefbd56cb0dd40a1c010141457b05a51b3ba08a1ecd55a12b63526866004425df28aea9201ec5402e930a7fd93fa8d437a99cd34436bce5110838ca9559177a41f2889e0988ce335739da3e0101410186491c63bdd19cc066f7c28d3fbe5d5d53d0bb127e5a1e401f9b9b7727e9f2d44f0413d53ee0b3f6e738968dc0acf202e9be1ea80605e2090775a1618514bf010141c3ce01761da8f06b664801e50180f01b0276db45cfb12795f8f8c2d911142c728d42914b8d2cf00b8461b586a8587d3c4c84cfbedd32c7323ec9ad8bef8811d7010141aeecfe2364f35d2ebf031917d2635b15736af25de3dc355c6173815fa508365bcc611c8f68feedf483895bc7d9682c767d337079b85cdcc513e623f2a15db0f7010141b0f30eff2ab87a609b60da733dc373290e5c0676def81f8e40dc39eac629db775f908437173974f583077eda01535ed1553ac45ec854479e30fb3db8a8f2133a0101415d0d894d0a47b4597dfcf0d958b54153af4c85e4af96b784cf325ad13f0116b5591908f2f6a7f723fc03faa0a4865fd74db1f7dac3f12d5cb305f7f69c9b9e1e010141039679683fa7ca9e8138b89f69e7d84050a997021443d5ff4ce313524478967964c2dd9fa98ca6f13d0badae8ddba44101413d0f55194493c82191742055a236010141697f86313ddb3375fa3628300eaad11fc27b863f6e56dd0d109e7830f400c2deb6368743a7383e4d4ea4a82a9e9eb8e7e50d64702cbccef08a6c02dbf7cfa0b80101412937767a74e1fa38e475c4255dcdc9dccf10e3763ed1c672e1435dc11a0580536dd819b222caaf7a4dc7ea4364d5263bb77a3c7d42674a649312fdf1a4dafaa7010141b89fb4cf00aa0dbe926be087c6f599d05cb24e69ca2600f2fb8458a199a8190674494db7d5760ad03b6c95da901a3095f8520c67254c717ef0a1ac9677c53973010141fc432de3724c5926570d71bac5f8358b8200e9ae371dfea231b92f4092c338b44cf1fa164b7f31f2218725a547920c68e43cdf2e8f8cb46329cf91f1153b455f010141f6d5013616ece1197e981ecec7717e1bb5dbf829127c7ded5e78806effeae6bbfce3a21a874595066f7edd19981fdfa415eaff46f1e857393b5a2e1ecd4a8e1e0101417da4e73e9a93233102dfe83addff7f4495c68ab92a3a6fa0b5ff8cd12a8fc3c7e1860db76313fb06f1ebc92ca8d70f7d826451bb6774098ba212aeb6cbeefb7c0101414a8452327ae05ab796d0073945d19ea0232ee90d8fd945e219e0c7c7d542ba3c11f3c67d897531826d859d5ece1d92dd445b75b1dc8273c810c4948079d2be1c010141677586647918c95db303e63b50eaae96f771dda7132d69be24c8acff30fd458ab05c5ec2c071cc762677f68496bcc31f56f93228e17acd4728ba46705ad5656b0101414b251c26a4b88139cb750ed1f954a888a12df179c699443c5e599ff517c3a0913beb577649d98e093c07d044879d28893814adc9a1d1a5fbd9730faed442acf8010141ce76685d9789136b1ac52554d3bf681fc9822000946d73b705d02b3ad8795d6e0edb43382c628dea122a0e1a0bc9156e25afe78f4283e74c30f25d0ee76d77fe0101416947a15ed2aa6f23e3ed95c3fead6d1765212a149c077b3aa83f1b93b459411665cb5a1530e110703c67c70891388d97cadab87a8de32e0be6254b77bf1357ed010141acadb765ca7bd6e9b316ca00abfd5f20e62bc72728cb3209e8e14c7812ed2a0381998fb490eb11ad57e7d2adf2693e94cbdbad957d9a092cf46d13596ec44261010141782bddf5c1a93a9d461846838f095f37b23ee60e868218b7c701a7316465f3eed921527bf2e44ccb2c79d7ec54eec617e439a8fe2ea7f3141ce08bc07f54c81c01014182b33895b5fdcacaebaff467e189ac5676899a7e7793859c16235be6b508046fb68626e79e0413b6ee1b68538d1ffbac9eafbfea20123d0ad57d62cf49f3d5d60100000000 \ No newline at end of file diff --git a/test/large_transaction_parsing_test.dart b/test/large_transaction_parsing_test.dart new file mode 100644 index 0000000..6c2aab4 --- /dev/null +++ b/test/large_transaction_parsing_test.dart @@ -0,0 +1,98 @@ +import 'dart:io'; + +import 'package:bitcoin_base/bitcoin_base.dart'; +import 'package:test/test.dart'; + +String _readFixtureHex(String name) => + File('test/fixtures/$name').readAsStringSync().trim(); + +String _toHex(List bytes) => + bytes.map((b) => b.toRadixString(16).padLeft(2, '0')).join(); + +void main() { + group('BtcTransaction.fromRaw - large transactions', () { + // These are two real, on-chain consolidation-style transactions with + // well over 252 inputs/outputs each - the threshold at which Bitcoin's + // CompactSize varint encoding switches from a 1-byte count to a 3-byte + // (0xfd + 2 bytes LE) prefix. A wallet fetching either of these must be + // able to parse them like any other transaction. + test('parses a real transaction with 260 inputs / 340 outputs', () { + final hex = _readFixtureHex('large_tx_260in_340out.hex'); + final tx = BtcTransaction.fromRaw(hex); + + expect(tx.inputs.length, 260); + expect(tx.outputs.length, 340); + expect(tx.hasSegwit, isTrue); + }); + + test('parses a real transaction with 365 inputs / 454 outputs', () { + final hex = _readFixtureHex('large_tx_365in_454out.hex'); + final tx = BtcTransaction.fromRaw(hex); + + expect(tx.inputs.length, 365); + expect(tx.outputs.length, 454); + expect(tx.hasSegwit, isTrue); + }); + + test('a re-serialized large transaction round-trips to the same txid', () { + final hex = _readFixtureHex('large_tx_260in_340out.hex'); + final tx = BtcTransaction.fromRaw(hex); + final reencoded = + BtcTransaction.fromRaw(_toHex(tx.toBytes(segwit: true))); + + expect(reencoded.inputs.length, tx.inputs.length); + expect(reencoded.outputs.length, tx.outputs.length); + expect(reencoded.hasSegwit, tx.hasSegwit); + + expect(reencoded.txId(), tx.txId()); + }); + + group('truncated/malformed input', () { + test( + 'the exception message identifies it as a parsing failure and ' + 'carries the input length for diagnostics', () { + final truncatedHex = + _readFixtureHex('large_tx_260in_340out.hex').substring(0, 100); + + try { + BtcTransaction.fromRaw(truncatedHex); + fail('expected BtcTransaction.fromRaw to throw'); + } on BitcoinBasePluginException catch (e) { + expect(e.message.toLowerCase(), contains('malformed')); + expect(e.details?['hexLength'], truncatedHex.length); + } + }); + + test( + 'truncating only the trailing locktime bytes now throws instead ' + 'of silently absorbing a wrong locktime', () { + // For non-mweb transactions, `cursor` after inputs/outputs/witnesses + // is validated against the expected `rawtx.length - 4` locktime + // offset, so cutting off the last 4 bytes (or any amount) is caught + // here instead of being silently reinterpreted as a different, + // wrong-but-still-4-byte locktime. + final fullHex = _readFixtureHex('large_tx_365in_454out.hex'); + final truncatedHex = fullHex.substring(0, fullHex.length - 4); + + expect( + () => BtcTransaction.fromRaw(truncatedHex), + throwsA(isA()), + ); + }); + + test('throws a typed exception for a hex only a few bytes long', () { + expect( + () => BtcTransaction.fromRaw('01000000'), + throwsA(isA()), + ); + }); + + test('throws a typed exception for an empty string', () { + expect( + () => BtcTransaction.fromRaw(''), + throwsA(isA()), + ); + }); + }); + }); +} diff --git a/test/segwit_witness_desync_test.dart b/test/segwit_witness_desync_test.dart new file mode 100644 index 0000000..78d1cf9 --- /dev/null +++ b/test/segwit_witness_desync_test.dart @@ -0,0 +1,114 @@ +import 'package:bitcoin_base/bitcoin_base.dart'; +import 'package:test/test.dart'; + +String _toHex(List bytes) => + bytes.map((b) => b.toRadixString(16).padLeft(2, '0')).join(); + +/// A hex string of exactly [byteLength] bytes, built from [nibble] - avoids +/// hand-typed repeated-character literals silently being the wrong length. +String _hexOf(int byteLength, String nibble) => nibble * (byteLength * 2); + +void main() { + group('BtcTransaction.fromRaw - witness/scriptSig desync regression', () { + // Per BIP144, once the segwit marker+flag is set, EVERY input gets + // exactly one witness field - including a legacy/P2SH-wrapped input + // whose actual unlock data lives in a non-empty scriptSig rather than + // (only) in the witness. `fromRaw` used to `continue` (skip reading a + // witness entry entirely) for any input with a non-empty scriptSig, + // which desyncs the cursor for every witness read after it - dropping + // or corrupting the witness data of every subsequent input. + test( + 'reads a P2SH-wrapped-segwit input\'s witness and does not ' + 'desync a later plain-segwit input\'s witness', () { + // Input 0: P2SH-wrapped segwit style - non-empty scriptSig (the + // "redeem script push") *and* a real witness stack (sig + pubkey). + final wrappedInput = TxInput( + txId: _hexOf(32, 'a'), + txIndex: 0, + scriptSig: Script(script: [_hexOf(20, 'e')]), + ); + final wrappedWitness = TxWitnessInput(stack: [ + _hexOf(71, '1'), + _hexOf(33, '2'), + ]); + + // Input 1: plain segwit - empty scriptSig, its own distinct witness. + // If input 0's witness were skipped, this witness would be read at + // the wrong cursor position (reading input 0's actual witness bytes + // instead, or running past the buffer). + final plainInput = TxInput(txId: _hexOf(32, 'b'), txIndex: 1); + final plainWitness = TxWitnessInput(stack: [ + _hexOf(72, '3'), + _hexOf(33, '4'), + ]); + + final output = TxOutput( + amount: BigInt.from(50000), + scriptPubKey: Script(script: [ + 'OP_DUP', + 'OP_HASH160', + _hexOf(20, 'f'), + 'OP_EQUALVERIFY', + 'OP_CHECKSIG', + ]), + ); + + final original = BtcTransaction( + inputs: [wrappedInput, plainInput], + outputs: [output], + witnesses: [wrappedWitness, plainWitness], + hasSegwit: true, + ); + + final hex = _toHex(original.toBytes(segwit: true)); + final parsed = BtcTransaction.fromRaw(hex); + + expect(parsed.inputs.length, 2); + expect(parsed.witnesses.length, 2, + reason: 'every input must get its own witness entry, including ' + 'the one with a non-empty scriptSig'); + + expect(parsed.inputs[0].scriptSig.script, wrappedInput.scriptSig.script); + expect(parsed.witnesses[0].stack, wrappedWitness.stack); + + expect(parsed.inputs[1].scriptSig.script, isEmpty); + expect(parsed.witnesses[1].stack, plainWitness.stack); + }); + + test( + 'reads an empty witness stack for a legacy input mixed into a ' + 'segwit transaction (the 0x00 "no witness items" placeholder)', () { + final legacyInput = TxInput( + txId: _hexOf(32, 'c'), + txIndex: 0, + scriptSig: Script(script: [_hexOf(71, '5'), _hexOf(33, '6')]), + ); + + final segwitInput = TxInput(txId: _hexOf(32, 'd'), txIndex: 0); + final segwitWitness = TxWitnessInput(stack: [ + _hexOf(71, '7'), + _hexOf(33, '8'), + ]); + + final output = TxOutput( + amount: BigInt.from(1000), + scriptPubKey: Script(script: ['OP_TRUE']), + ); + + final original = BtcTransaction( + inputs: [legacyInput, segwitInput], + outputs: [output], + // The legacy input still gets an entry - an empty stack. + witnesses: [TxWitnessInput(stack: const []), segwitWitness], + hasSegwit: true, + ); + + final hex = _toHex(original.toBytes(segwit: true)); + final parsed = BtcTransaction.fromRaw(hex); + + expect(parsed.witnesses.length, 2); + expect(parsed.witnesses[0].stack, isEmpty); + expect(parsed.witnesses[1].stack, segwitWitness.stack); + }); + }); +} diff --git a/test/transaction_builder_locktime_test.dart b/test/transaction_builder_locktime_test.dart index e8fcfaa..2beb12a 100644 --- a/test/transaction_builder_locktime_test.dart +++ b/test/transaction_builder_locktime_test.dart @@ -5,18 +5,18 @@ void main() { group('BitcoinTransactionBuilder locktime', () { test('defaults to defaultTxLocktime', () { final b = BitcoinTransactionBuilder( - outPuts: const [], + outputs: const [], fee: BigInt.zero, network: BitcoinNetwork.mainnet, utxos: const [], ); - expect(b.locktime, BitcoinOpCodeConst.defaultTxLocktime); + expect(b.locktime, BitcoinOpCodeConst.DEFAULT_TX_LOCKTIME); }); test('stores the provided locktime', () { final lt = [0x50, 0x01, 0xcf, 0x00]; final b = BitcoinTransactionBuilder( - outPuts: const [], + outputs: const [], fee: BigInt.zero, network: BitcoinNetwork.mainnet, utxos: const [],