From 0914a2d35edd92616051ead62822fca423eedeec Mon Sep 17 00:00:00 2001 From: Trevor Porter Date: Fri, 1 Nov 2024 11:03:23 +0000 Subject: [PATCH] wip, going pretty well --- .../infra/scripts/safes/example-data.json | 1 + .../infra/scripts/safes/parse-multicall.ts | 16 +- typescript/infra/src/tx/transaction-reader.ts | 205 ++++++++++++++++-- 3 files changed, 194 insertions(+), 28 deletions(-) diff --git a/typescript/infra/scripts/safes/example-data.json b/typescript/infra/scripts/safes/example-data.json index fab21d7fe..53e5ff362 100644 --- a/typescript/infra/scripts/safes/example-data.json +++ b/typescript/infra/scripts/safes/example-data.json @@ -1,3 +1,4 @@ { + "to": "0x40A2aCCbd92BCA938b02010E17A5b8929b49130D", "data": "0x8d80ff0a000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000132c6005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a9702320000000000000000000000000000000000000000000000000000000000000aa4eab4eaa400000000000000000000000000000000000000000000000000000000000009dd000000000000000000000000fb8cea1c7f45608da30655b50bbf355d123a4358000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000a8000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000fb8cea1c7f45608da30655b50bbf355d123a4358000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000904e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000004a00000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000201900000000000000000000000000000000000000000000000000000000000310c500000000000000000000000000000000000000000000000000000000000a1337000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000a4ba00000000000000000000000000000000000000000000000000000000000007cc000000000000000000000000000000000000000000000000000000000000025000000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000000b9000000000000000000000000000000000000000000000000000000000000bf04000000000000000000000000000000000000000000000000000000000000046f000000000000000000000000000000000000000000000000000000000000016800000000000000000000000000000000000000000000000000000000000003ca0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000001142c0000000000000000000000000000000000000000000000000000000027bc86aa00000000000000000000000000000000000000000000000000000000000062ef000000000000000000000000000000000000000000000000000000000000006d000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000044000000000000000000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000016d500000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000045c0000000000000000000000000000000000000000000000000000000000000123000000000000000000000000000000000000000000000000000000000001b25400000000000000000000000000000000000000000000000000000000000010680000000000000000000000000000000000000000000000000000000000000ec00000000000000000000000000000000000000000000000000000000000001d880000000000000000000000000000000000000000000000000000000063564c400000000000000000000000000000000000000000000000000000000000000b020000000000000000000000000000000000000000000000000000000000000022000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000a0a44cb8bc0f7ede788b0cd29524a5b14fed7b450000000000000000000000003881c3e945cbb89ae67c43e82f570badf1c6ea94000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000007a4d31a686a36285d68e14edd53631417eb196030000000000000000000000005090df2fbda7127c7ada41f60b79f5c55d380dd8000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000d01a3e167d59ff98c983e83baa5da0c3e0ade726000000000000000000000000b2674e213019972f937ccfc5e23bf963d915809e00000000000000000000000051545389e04c2ac07d98a40b85d29b480a2af6ce0000000000000000000000003881c3e945cbb89ae67c43e82f570badf1c6ea94000000000000000000000000d01a3e167d59ff98c983e83baa5da0c3e0ade7260000000000000000000000007c58cadcc2b60acf794ee1843488d6f5703f76be0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000b2674e213019972f937ccfc5e23bf963d915809e0000000000000000000000003881c3e945cbb89ae67c43e82f570badf1c6ea9400000000000000000000000092cdbf0ccdf8e93467fa858fb986fa650a02f2a8000000000000000000000000f3dff6747e7fc74b431c943961054b7bf6309d8a00000000000000000000000087bdfabbcc36d8b1aeda871cd54b2e86c7a4d597000000000000000000000000b2674e213019972f937ccfc5e23bf963d915809e0000000000000000000000001a4f09a615aa4a35e5a146dc2fa19975bebf21a500000000000000000000000067f36550b73b731e5b2fc44e4f8f250d89c87bd6000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000001a4f09a615aa4a35e5a146dc2fa19975bebf21a5000000000000000000000000d01a3e167d59ff98c983e83baa5da0c3e0ade726000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c0c2db448fc2c84213394fcb93a3c467e50eca9e0000000000000000000000009e8b689e83d929cb8c2d9166e55319a4e6aa83b70000000000000000000000007621e04860f0bde63311db9d5d8b589ad3458a1f0000000000000000000000007b032cbb00ad7438e802a66d8b64761a06e5df22000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97023200000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000009dd000000000000000000000000fb8cea1c7f45608da30655b50bbf355d123a4358000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a0000000000000000000000005f39c3f0d9c74a667c177795b769cc22ae0a200d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000001142c000000000000000000000000b2674e213019972f937ccfc5e23bf963d915809e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000b2674e213019972f937ccfc5e23bf963d915809e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000a4ba00000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000b02000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000081730000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000201900000000000000000000000000000000000000000000000000000000000008900000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000001142c000000000000000000000000b2674e213019972f937ccfc5e23bf963d915809e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a00000000000000000000000037282b7505da332fc57fab1623c73a4aedb49165000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097f00000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000087bdfabbcc36d8b1aeda871cd54b2e86c7a4d597000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000087bdfabbcc36d8b1aeda871cd54b2e86c7a4d597000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000063564c4000000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097f00000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000087bdfabbcc36d8b1aeda871cd54b2e86c7a4d597000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000003a464f746d23ab22155710f44db16dca53e0775e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a0000000000000000000000007954da9003180d64b9eb7de5e23fc83fd7673047000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000000b9000000000000000000000000b2674e213019972f937ccfc5e23bf963d915809e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000b2674e213019972f937ccfc5e23bf963d915809e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000a4ba00000000000000000000000000000000000000000000000000000000000081730000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000123000000000000000000000000000000000000000000000000000000000000089000000000000000000000000000000000000000000000000000000000000000fa0000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000000b9000000000000000000000000b2674e213019972f937ccfc5e23bf963d915809e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000120bbfe296f11dd653cd6ac4f93106d9e6ade5bc000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000062ef00000000000000000000000092cdbf0ccdf8e93467fa858fb986fa650a02f2a8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000092cdbf0ccdf8e93467fa858fb986fa650a02f2a8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000063564c4000000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000a4ba0000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000012300000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000000000b020000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000208d0000000000000000000000000000000000000000000000000000000000002019000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000062ef00000000000000000000000092cdbf0ccdf8e93467fa858fb986fa650a02f2a8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000007f50c5776722630a0024fae05fde8b47571d7b39000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a0000000000000000000000006b38f93e9145bf8b09b127e20f0275e92e29e4f5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097e00000000000000000000000000000000000000000000000000000000000004a4eab4eaa40000000000000000000000000000000000000000000000000000000000000168000000000000000000000000d01a3e167d59ff98c983e83baa5da0c3e0ade726000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000d01a3e167d59ff98c983e83baa5da0c3e0ade726000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000081730000000000000000000000000000000000000000000000000000000000000b02000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000008900000000000000000000000000000000000000000000000000000000063564c400000000000000000000000000000000000000000000000000000000000000123000000000000000000000000000000000000000000000000000000000000201900000000000000000000000000000000000000000000000000000000000000fa0000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097e00000000000000000000000000000000000000000000000000000000000001c4eab4eaa40000000000000000000000000000000000000000000000000000000000000168000000000000000000000000d01a3e167d59ff98c983e83baa5da0c3e0ade726000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000003a464f746d23ab22155710f44db16dca53e0775e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000e96e34b0e66a5fae90be8f5fe41b6adb86d84a8b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000473884010f0c1742da8ad01e7e295624b931076b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000473884010f0c1742da8ad01e7e295624b931076b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000a4ba00000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000089000000000000000000000000000000000000000000000000000000000000000fa0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000473884010f0c1742da8ad01e7e295624b931076b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000b936b97837c4158dea65cbabccc55bae24134108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97095500000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000001b254000000000000000000000000c0c2db448fc2c84213394fcb93a3c467e50eca9e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000c0c2db448fc2c84213394fcb93a3c467e50eca9e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000063564c400000000000000000000000000000000000000000000000000000000000000b02000000000000000000000000000000000000000000000000000000000000208d0000000000000000000000000000000000000000000000000000000000002019000000000000000000000000000000000000000000000000000000000000012300000000000000000000000000000000000000000000000000000000000008900000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97095500000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000001b254000000000000000000000000c0c2db448fc2c84213394fcb93a3c467e50eca9e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000ea87ae93fa0019a82a727bfd3ebd1cfca8f64f1d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a00000000000000000000000014551efdb6c29c8fc61d469627255e5f2c8bf981000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a96f53400000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000007cc0000000000000000000000007a4d31a686a36285d68e14edd53631417eb19603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000007a4d31a686a36285d68e14edd53631417eb19603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000089000000000000000000000000000000000000000000000000000000000000081730000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000a4ba00000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a96f53400000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000007cc0000000000000000000000007a4d31a686a36285d68e14edd53631417eb19603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000cc5534c4665d9bd93b377f56ec4c09fdee87ad30000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000000046f0000000000000000000000003881c3e945cbb89ae67c43e82f570badf1c6ea94000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000003881c3e945cbb89ae67c43e82f570badf1c6ea94000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000063564c4000000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000000046f0000000000000000000000003881c3e945cbb89ae67c43e82f570badf1c6ea94000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000cee06f87ac789615b0bf989b54fb36de334af5bc000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097f00000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000005d979000000000000000000000000ef9a332ec1fd233bf9344a58be56ff9e104b4f60000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000ef9a332ec1fd233bf9344a58be56ff9e104b4f60000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000b020000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000208d0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000201900000000000000000000000000000000000000000000000000000000000008900000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000012300000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097f00000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000005d979000000000000000000000000ef9a332ec1fd233bf9344a58be56ff9e104b4f60000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a00000000000000000000000077e9f81405dbc1ebeda93f23ab4a339452d2ad9d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97095500000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000016d500000000000000000000000067f36550b73b731e5b2fc44e4f8f250d89c87bd6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000067f36550b73b731e5b2fc44e4f8f250d89c87bd6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000b02000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000065900000000000000000000000000000000000000000000000000000000000000fa0000000000000000000000000000000000000000000000000000000000002019000000000000000000000000000000000000000000000000000000000000a4ba0000000000000000000000000000000000000000000000000000000000000123000000000000000000000000000000000000000000000000000000000000817300000000000000000000000000000000000000000000000000000000000008900000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97095500000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000016d500000000000000000000000067f36550b73b731e5b2fc44e4f8f250d89c87bd6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000cc5534c4665d9bd93b377f56ec4c09fdee87ad30000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097d00000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000002500000000000000000000000005090df2fbda7127c7ada41f60b79f5c55d380dd8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000005090df2fbda7127c7ada41f60b79f5c55d380dd8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000065900000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b02000000000000000000000000000000000000000000000000000000000000012300000000000000000000000000000000000000000000000000000000000008900000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097d00000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000002500000000000000000000000005090df2fbda7127c7ada41f60b79f5c55d380dd8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000003a464f746d23ab22155710f44db16dca53e0775e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000ed2b47397954e0a56ca7c2a862dba4027da0f595000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097f00000000000000000000000000000000000000000000000000000000000004a4eab4eaa40000000000000000000000000000000000000000000000000000000027bc86aa0000000000000000000000003881c3e945cbb89ae67c43e82f570badf1c6ea94000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000003881c3e945cbb89ae67c43e82f570badf1c6ea94000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000089000000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000a4ba0000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000817300000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097f00000000000000000000000000000000000000000000000000000000000001c4eab4eaa40000000000000000000000000000000000000000000000000000000027bc86aa0000000000000000000000003881c3e945cbb89ae67c43e82f570badf1c6ea94000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000f6c78ddeeb0ef1682bc020787eca835c5f353701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97095800000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000000006d000000000000000000000000f3dff6747e7fc74b431c943961054b7bf6309d8a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000f3dff6747e7fc74b431c943961054b7bf6309d8a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000081730000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000208d0000000000000000000000000000000000000000000000000000000063564c400000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000201900000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000000000123000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97095800000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000000006d000000000000000000000000f3dff6747e7fc74b431c943961054b7bf6309d8a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000003a464f746d23ab22155710f44db16dca53e0775e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a0000000000000000000000006ceca24ebc20183b17fba17f2856d5b3f97659db000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a96fdff00000000000000000000000000000000000000000000000000000000000004a4eab4eaa40000000000000000000000000000000000000000000000000000000000000440000000000000000000000000b2674e213019972f937ccfc5e23bf963d915809e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000b2674e213019972f937ccfc5e23bf963d915809e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000081730000000000000000000000000000000000000000000000000000000063564c4000000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000065900000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b02000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a96fdff00000000000000000000000000000000000000000000000000000000000001c4eab4eaa40000000000000000000000000000000000000000000000000000000000000440000000000000000000000000b2674e213019972f937ccfc5e23bf963d915809e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000a04202e77957f7451c0a2f2ca9ef54ffc334bcf3000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a6267a100000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000310c5000000000000000000000000a0a44cb8bc0f7ede788b0cd29524a5b14fed7b45000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000a0a44cb8bc0f7ede788b0cd29524a5b14fed7b45000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba0000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000065900000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b02000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000008900000000000000000000000000000000000000000000000000000000000000123000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a6267a100000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000310c5000000000000000000000000a0a44cb8bc0f7ede788b0cd29524a5b14fed7b45000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000003a464f746d23ab22155710f44db16dca53e0775e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a0000000000000000000000000ffd49c8ae6f5ddc20124b92c4b4048ebef71830000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097400000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000003ca0000000000000000000000007c58cadcc2b60acf794ee1843488d6f5703f76be000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000007c58cadcc2b60acf794ee1843488d6f5703f76be000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000065900000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000b02000000000000000000000000000000000000000000000000000000000000201900000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000089000000000000000000000000000000000000000000000000000000000000081730000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097400000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000003ca0000000000000000000000007c58cadcc2b60acf794ee1843488d6f5703f76be000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000b129828b9eda48192d0b2db35d0e40dcf51b3594000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a0000000000000000000000000d242364057129d99fca35ba8ed2d9ae90956f63000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000004a4eab4eaa40000000000000000000000000000000000000000000000000000000000001d880000000000000000000000007b032cbb00ad7438e802a66d8b64761a06e5df22000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000007b032cbb00ad7438e802a66d8b64761a06e5df22000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000063564c4000000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000001c4eab4eaa40000000000000000000000000000000000000000000000000000000000001d880000000000000000000000007b032cbb00ad7438e802a66d8b64761a06e5df22000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000cc5534c4665d9bd93b377f56ec4c09fdee87ad30000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097d00000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000a13370000000000000000000000003881c3e945cbb89ae67c43e82f570badf1c6ea94000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000003881c3e945cbb89ae67c43e82f570badf1c6ea94000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000a4ba0000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000065900000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000817300000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b02000000000000000000000000000000000000000000000000000000000000208d0000000000000000000000000000000000000000000000000000000000000123000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097d00000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000a13370000000000000000000000003881c3e945cbb89ae67c43e82f570badf1c6ea94000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000f61ee4520b7b316a34cdb31f4b95d8ad1808f919000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000063564c4000000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a4445100c005dc82818d67af737725bd4bf75435d065d23900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000c7b5ba9ecedcfd7d250cf7df19558d7dd0d06ecc005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97096800000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000000002a0000000000000000000000001a4f09a615aa4a35e5a146dc2fa19975bebf21a5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000001a4f09a615aa4a35e5a146dc2fa19975bebf21a5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000063564c4000000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97096800000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000000002a0000000000000000000000001a4f09a615aa4a35e5a146dc2fa19975bebf21a5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000351621b2fbfe92193304a8e4dd97e04108883ac8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097500000000000000000000000000000000000000000000000000000000000004a4eab4eaa40000000000000000000000000000000000000000000000000000000000000058000000000000000000000000c11f8cf2343d3788405582f65b8af6a4f7a6ffc8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000c11f8cf2343d3788405582f65b8af6a4f7a6ffc8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000081730000000000000000000000000000000000000000000000000000000000000123000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000a4ba0000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000065900000000000000000000000000000000000000000000000000000000000008900000000000000000000000000000000000000000000000000000000063564c400000000000000000000000000000000000000000000000000000000000002019000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097500000000000000000000000000000000000000000000000000000000000001c4eab4eaa40000000000000000000000000000000000000000000000000000000000000058000000000000000000000000c11f8cf2343d3788405582f65b8af6a4f7a6ffc8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a00000000000000000000000087fb0665d25ac674d4d1494a13ca60e378f7536f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000000ff0000000000000000000000001a4f09a615aa4a35e5a146dc2fa19975bebf21a5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000001a4f09a615aa4a35e5a146dc2fa19975bebf21a5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000a4ba0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000012300000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000008900000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000065900000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000000ff0000000000000000000000001a4f09a615aa4a35e5a146dc2fa19975bebf21a5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000a078a84fcb5d53bce9529dcf96635794951116ba000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce00000000000000000000000000000000000000000000000000030d84fcec49ce00000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000010680000000000000000000000009e8b689e83d929cb8c2d9166e55319a4e6aa83b7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000009e8b689e83d929cb8c2d9166e55319a4e6aa83b7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba00000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000012300000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000000002019000000000000000000000000000000000000000000000000000000000000208d0000000000000000000000000000000000000000000000000000000063564c400000000000000000000000000000000000000000000000000000000000000b020000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce00000000000000000000000000000000000000000000000000030d84fcec49ce00000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000010680000000000000000000000009e8b689e83d929cb8c2d9166e55319a4e6aa83b7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000c0dc69896334ed2f3af2666d5eef70e062a4636e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a96fdce00000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000000c400000000000000000000000003cf708e42c89623bd83b281a56935cb562b9258000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000003cf708e42c89623bd83b281a56935cb562b9258000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000081730000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000208d0000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000000fa0000000000000000000000000000000000000000000000000000000000000123000000000000000000000000000000000000000000000000000000000000201900000000000000000000000000000000000000000000000000000000000008900000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a96fdce00000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000000c400000000000000000000000003cf708e42c89623bd83b281a56935cb562b9258000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a00000000000000000000000059dcbb486f91561acc3500cdc378104aae27e94a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000002b20000000000000000000000007a4d31a686a36285d68e14edd53631417eb19603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000007a4d31a686a36285d68e14edd53631417eb19603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000208d0000000000000000000000000000000000000000000000000000000000000b020000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000817300000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000065900000000000000000000000000000000000000000000000000000000000000fa0000000000000000000000000000000000000000000000000000000000002019000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000002b20000000000000000000000007a4d31a686a36285d68e14edd53631417eb19603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000ea87ae93fa0019a82a727bfd3ebd1cfca8f64f1d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a0000000000000000000000005fe5b8f20437336a74fa53e553472f6ff048e73a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000004a4eab4eaa40000000000000000000000000000000000000000000000000000000000000ec00000000000000000000000007621e04860f0bde63311db9d5d8b589ad3458a1f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000007621e04860f0bde63311db9d5d8b589ad3458a1f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000817300000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000b020000000000000000000000000000000000000000000000000000000063564c4000000000000000000000000000000000000000000000000000000000000008900000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000201900000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000001c4eab4eaa40000000000000000000000000000000000000000000000000000000000000ec00000000000000000000000007621e04860f0bde63311db9d5d8b589ad3458a1f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000003a464f746d23ab22155710f44db16dca53e0775e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a00000000000000000000000073b3a13ea8084c9bead07ed867cee1e8f5ccef9e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97095a00000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000000138800000000000000000000000045285463352c53a481e882cd5e2af2e25bbdad0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000045285463352c53a481e882cd5e2af2e25bbdad0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000065900000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000123000000000000000000000000000000000000000000000000000000000000817300000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000a4ba0000000000000000000000000000000000000000000000000000000000000b020000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000208d0000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97095a00000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000000138800000000000000000000000045285463352c53a481e882cd5e2af2e25bbdad0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000398633d19f4371e1db5a8efe90468eb70b1176aa000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000ab7dde83cf33e0b305624462a6b9d7d06a32a699000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097100000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000007d0000000000000000000000000d01a3e167d59ff98c983e83baa5da0c3e0ade726000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000d01a3e167d59ff98c983e83baa5da0c3e0ade726000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000063564c4000000000000000000000000000000000000000000000000000000000000000fa0000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000a4ba00000000000000000000000000000000000000000000000000000000000081730000000000000000000000000000000000000000000000000000000000000123000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097100000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000007d0000000000000000000000000d01a3e167d59ff98c983e83baa5da0c3e0ade726000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000003a464f746d23ab22155710f44db16dca53e0775e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000119b3dfbef304b07bbcb08d5182459f35808bff2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097100000000000000000000000000000000000000000000000000000000000004a4eab4eaa40000000000000000000000000000000000000000000000000000000000000504000000000000000000000000c4482f66191754a8629d35289043c4eb0285f10e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000c4482f66191754a8629d35289043c4eb0285f10e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000a4ba00000000000000000000000000000000000000000000000000000000000081730000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000012300000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000000002019000000000000000000000000000000000000000000000000000000000000089000000000000000000000000000000000000000000000000000000000000000fa0000000000000000000000000000000000000000000000000000000000000b02000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097100000000000000000000000000000000000000000000000000000000000001c4eab4eaa40000000000000000000000000000000000000000000000000000000000000504000000000000000000000000c4482f66191754a8629d35289043c4eb0285f10e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000094d03e751f49908080eff000dd6fd177fd44cc3000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a00000000000000000000000011cc5ac8f65e337db6e95a542e87af630cd0b1cd000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000000ed880000000000000000000000005c02157068a52cecfc98edb6115de6134ecb4764000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000005c02157068a52cecfc98edb6115de6134ecb4764000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000817300000000000000000000000000000000000000000000000000000000000000fa0000000000000000000000000000000000000000000000000000000063564c400000000000000000000000000000000000000000000000000000000000002019000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000208d0000000000000000000000000000000000000000000000000000000000000b02000000000000000000000000000000000000000000000000000000000000065900000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000000ed880000000000000000000000005c02157068a52cecfc98edb6115de6134ecb4764000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000008358d8291e3bedb04804975eea0fe9fe0fafb147000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a00000000000000000000000028df661e61e2f4e7a35f3a554094191e64cd6e5a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000004a4eab4eaa40000000000000000000000000000000000000000000000000000000034fb5e3800000000000000000000000025c87e735021f72d8728438c2130b02e3141f2cb000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000025c87e735021f72d8728438c2130b02e3141f2cb000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000063564c4000000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000001c4eab4eaa40000000000000000000000000000000000000000000000000000000034fb5e3800000000000000000000000025c87e735021f72d8728438c2130b02e3141f2cb000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000259da872714f84b74b4473fab45e9839f3453a40000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000076adf100000000000000000000000011b76d93a9d39eb51f54ebf5566308640cde882b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000011b76d93a9d39eb51f54ebf5566308640cde882b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000089000000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000b020000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000201900000000000000000000000000000000000000000000000000000000000000fa0000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000076adf100000000000000000000000011b76d93a9d39eb51f54ebf5566308640cde882b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000f5da68b2577ef5c0a0d98aa2a58483a68c2f232a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a00000000000000000000000010455742e8d25b3fc2b19d41a006e91594d05cd5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000000044d00000000000000000000000020a0a32a110362920597f72974e1e0d7e25ca20a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000020a0a32a110362920597f72974e1e0d7e25ca20a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000a4ba00000000000000000000000000000000000000000000000000000000000081730000000000000000000000000000000000000000000000000000000063564c400000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000000002019000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000012300000000000000000000000000000000000000000000000000000000000000fa0000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000000044d00000000000000000000000020a0a32a110362920597f72974e1e0d7e25ca20a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000003a464f746d23ab22155710f44db16dca53e0775e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a0000000000000000000000003351fc009ccb309c367787ff9f3040fdee0dcf66000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097900000000000000000000000000000000000000000000000000000000000004a4eab4eaa40000000000000000000000000000000000000000000000000000000000000064000000000000000000000000be70ab882d1f7e37e04a70cdd9ec23b37a234064000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000be70ab882d1f7e37e04a70cdd9ec23b37a234064000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000063564c4000000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097900000000000000000000000000000000000000000000000000000000000001c4eab4eaa40000000000000000000000000000000000000000000000000000000000000064000000000000000000000000be70ab882d1f7e37e04a70cdd9ec23b37a234064000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000ad09d78f4c6b9da2ae82b1d34107802d380bb74f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000cfa4d90a43aab0de6a07c33a0614606b5fbf71ec000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97095a00000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000000a4ec00000000000000000000000027a6cae33378bb6a6663b382070427a01fc9cb37000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000027a6cae33378bb6a6663b382070427a01fc9cb37000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000008900000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000817300000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b020000000000000000000000000000000000000000000000000000000000000123000000000000000000000000000000000000000000000000000000000000208d0000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97095a00000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000000a4ec00000000000000000000000027a6cae33378bb6a6663b382070427a01fc9cb37000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000050da3b3907a08a24fe4999f4dcf337e8dc7954bb000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000b9ad1cce862444b5c3bad009ef500ad3680940da000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97096e00000000000000000000000000000000000000000000000000000000000004a4eab4eaa40000000000000000000000000000000000000000000000000000000000000089000000000000000000000000f163949ad9f88977ebf649d0461398ca752e64b9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000f163949ad9f88977ebf649d0461398ca752e64b9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000208d0000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000201900000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000a4ba00000000000000000000000000000000000000000000000000000000000008900000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000012300000000000000000000000000000000000000000000000000000000000081730000000000000000000000000000000000000000000000000000000000000b02000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97096e00000000000000000000000000000000000000000000000000000000000001c4eab4eaa40000000000000000000000000000000000000000000000000000000000000089000000000000000000000000f163949ad9f88977ebf649d0461398ca752e64b9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000005d934f4e2f797775e53561bb72aca21ba36b96bb000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a0000000000000000000000000c3fe398595235a3163b39e5c6443aa1f7e145c4000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a9703b500000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000000a86a000000000000000000000000a82a0227e6d6db53af4b264a852bff91c6504a51000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000a82a0227e6d6db53af4b264a852bff91c6504a51000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000063564c4000000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a9703b500000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000000a86a000000000000000000000000a82a0227e6d6db53af4b264a852bff91c6504a51000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000ff06afcaabaddd1fb08371f9cca15d73d51febd6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a0000000000000000000000008ea008e1e39d9770312b9b516d1f0c41dd3fecb3000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000004a4eab4eaa400000000000000000000000000000000000000000000000000000000000827500000000000000000000000000b48a744698ba8dfa514742dfeb6728f52fd66f7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000b48a744698ba8dfa514742dfeb6728f52fd66f7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000012300000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000208d0000000000000000000000000000000000000000000000000000000000000b020000000000000000000000000000000000000000000000000000000063564c400000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a95e43800000000000000000000000000000000000000000000000000000000000001c4eab4eaa400000000000000000000000000000000000000000000000000000000000827500000000000000000000000000b48a744698ba8dfa514742dfeb6728f52fd66f7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a00000000000000000000000041d5dbbe3a6b5d3937f03e82c23d1edf9d4d0b6c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097e00000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000000007a0000000000000000000000002351fbe24c1212f253b7a300ff0cbcfd97952a19000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002351fbe24c1212f253b7a300ff0cbcfd97952a19000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000208d00000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000063564c4000000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97097e00000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000000007a0000000000000000000000002351fbe24c1212f253b7a300ff0cbcfd97952a19000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000003071d4da6020c956fe15bfd0a9ca8d4574f16696000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a000000000000000000000000f0b1ec4228c0f26b7225851f940c625e4be12226000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97096d00000000000000000000000000000000000000000000000000000000000004a4eab4eaa40000000000000000000000000000000000000000000000000000000000001b580000000000000000000000003adcbc94ab8c48ec52d06dc65bb787fd1981e3d5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000003adcbc94ab8c48ec52d06dc65bb787fd1981e3d5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000008173000000000000000000000000000000000000000000000000000000000000a4ba00000000000000000000000000000000000000000000000000000000000006590000000000000000000000000000000000000000000000000000000063564c400000000000000000000000000000000000000000000000000000000000000b0200000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000201900000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97096d00000000000000000000000000000000000000000000000000000000000001c4eab4eaa40000000000000000000000000000000000000000000000000000000000001b580000000000000000000000003adcbc94ab8c48ec52d06dc65bb787fd1981e3d5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a0000000000000000000000003dfd05cc42f1b5370e688520e65c8fb909418471000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97092e00000000000000000000000000000000000000000000000000000000000004a4eab4eaa4000000000000000000000000000000000000000000000000000000000000045c000000000000000000000000d01a3e167d59ff98c983e83baa5da0c3e0ade726000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000d01a3e167d59ff98c983e83baa5da0c3e0ade726000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000304e9198bf9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000002019000000000000000000000000000000000000000000000000000000000000208d000000000000000000000000000000000000000000000000000000000000817300000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000b020000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000089000000000000000000000000000000000000000000000000000000000000000fa0000000000000000000000000000000000000000000000000000000063564c40000000000000000000000000000000000000000000000000000000000000a4ba000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a444510000000000000000000000009eaac366bfd70430cfee6e70265fefff1cfc9e47000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000ee8c0e1eebffcc451a013336386ea53e42a44451000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005e532f7b610618ee73c2b462978e94cb1f7995ce0000000000000000000000000000000000000000000000000001fd8e1a97092e00000000000000000000000000000000000000000000000000000000000001c4eab4eaa4000000000000000000000000000000000000000000000000000000000000045c000000000000000000000000d01a3e167d59ff98c983e83baa5da0c3e0ade726000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000003a464f746d23ab22155710f44db16dca53e0775e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024f794687a0000000000000000000000006dcfeb77d5801dcc76c0edd1f44e32d6decad2a20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" } diff --git a/typescript/infra/scripts/safes/parse-multicall.ts b/typescript/infra/scripts/safes/parse-multicall.ts index 0fa39ae99..aaa671ee8 100644 --- a/typescript/infra/scripts/safes/parse-multicall.ts +++ b/typescript/infra/scripts/safes/parse-multicall.ts @@ -1,8 +1,8 @@ import { stringifyObject, strip0x } from '@hyperlane-xyz/utils'; -import { GnosisMultisendReader } from '../../src/tx/transaction-reader.js'; +import { TransactionReader } from '../../src/tx/transaction-reader.js'; import { getArgs } from '../agent-utils.js'; -import { getEnvironmentConfig } from '../core-utils.js'; +import { getEnvironmentConfig, getHyperlaneCore } from '../core-utils.js'; import tx from './example-data.json'; @@ -10,9 +10,17 @@ async function main() { const { environment } = await getArgs().argv; const config = getEnvironmentConfig(environment); const multiProvider = await config.getMultiProvider(); + const { chainAddresses } = await getHyperlaneCore(environment, multiProvider); - const multisendReader = new GnosisMultisendReader(multiProvider); - // const results = await multisendReader.read(tx); + const reader = new TransactionReader( + environment, + multiProvider, + 'ethereum', + chainAddresses, + ); + const results = await reader.read('ethereum', tx); + + console.log('results', results); console.log(stringifyObject(results, 'yaml', 2)); } diff --git a/typescript/infra/src/tx/transaction-reader.ts b/typescript/infra/src/tx/transaction-reader.ts index f792427a6..ee575614a 100644 --- a/typescript/infra/src/tx/transaction-reader.ts +++ b/typescript/infra/src/tx/transaction-reader.ts @@ -1,4 +1,10 @@ +import { Result } from '@ethersproject/abi'; import { decodeMultiSendData } from '@safe-global/protocol-kit/dist/src/utils/index.js'; +import { + MetaTransactionData, + OperationType, +} from '@safe-global/safe-core-sdk-types'; +import { BigNumber, ethers } from 'ethers'; import { AnnotatedEV5Transaction, @@ -6,63 +12,214 @@ import { ChainName, HyperlaneReader, MultiProvider, + interchainAccountFactories, } from '@hyperlane-xyz/sdk'; -import { eqAddress } from '@hyperlane-xyz/utils'; +import { + addressToBytes32, + bytes32ToAddress, + eqAddress, +} from '@hyperlane-xyz/utils'; -import { getHyperlaneCore } from '../../scripts/core-utils.js'; import { DeployEnvironment } from '../config/environment.js'; +import { getSafeAndService } from '../utils/safe.js'; -export abstract class TransactionReader { - async read(chain: ChainName, tx: any): Promise { - throw new Error('Not implemented'); - } -} +// export abstract class TransactionReader { +// async read(chain: ChainName, tx: any): Promise { +// throw new Error('Not implemented'); +// } +// } -export class GnosisMultisendReader extends TransactionReader { - constructor(multiProvider: MultiProvider) { - super(); - } +// export class GnosisMultisendReader extends TransactionReader { +// constructor(multiProvider: MultiProvider) { +// super(); +// } - async read(chain: ChainName, tx: AnnotatedEV5Transaction): Promise { - if (!tx.data) { - return undefined; - } - const multisends = decodeMultiSendData(tx.data); +// async read(chain: ChainName, tx: AnnotatedEV5Transaction): Promise { +// if (!tx.data) { +// return undefined; +// } +// const multisends = decodeMultiSendData(tx.data); - return multisends; - } -} +// return multisends; +// } +// } -export class GenericTransactionReader extends HyperlaneReader { +export class TransactionReader extends HyperlaneReader { constructor( readonly environment: DeployEnvironment, readonly multiProvider: MultiProvider, + readonly chain: ChainName, readonly chainAddresses: ChainMap>, ) { - super(); + super(multiProvider, chain); } async read(chain: ChainName, tx: AnnotatedEV5Transaction): Promise { + try { + return await this.doRead(chain, tx); + } catch (e) { + console.error('Error reading transaction', e, chain, tx); + throw e; + } + } + + async doRead(chain: ChainName, tx: AnnotatedEV5Transaction): Promise { // If it's an ICA if (this.isIcaTransaction(chain, tx)) { return this.readIcaTransaction(chain, tx); } + + if (await this.isMultisendTransaction(chain, tx)) { + return this.readMultisendTransaction(chain, tx); + } + + return {}; } private async readIcaTransaction( chain: ChainName, tx: AnnotatedEV5Transaction, ): Promise { - // TODO + if (!tx.data) { + console.log('No data in ICA transaction'); + return undefined; + } + const { symbol } = await this.multiProvider.getNativeToken(chain); + const decoded = + interchainAccountFactories.interchainAccountRouter.interface.parseTransaction( + { + data: tx.data, + value: tx.value, + }, + ); + + const args = formatFunctionFragmentArgs( + decoded.args, + decoded.functionFragment, + ); + let prettyArgs = args; + if (decoded.functionFragment.name === 'enrollRemoteRouters') { + prettyArgs = await this.formatRouterEnrollments( + chain, + 'interchainAccountRouter', + args, + ); + } + + return { + value: `${ethers.utils.formatEther(decoded.value)} ${symbol}`, + signature: decoded.signature, + args: prettyArgs, + }; } - private isIcaTransaction( + private async formatRouterEnrollments( + chain: ChainName, + routerName: string, + args: Record, + ): Promise { + const { _domains: domains, _addresses: addresses } = args; + return domains.map((domain: number, index: number) => { + const remoteChainName = this.multiProvider.getChainName(domain); + const expectedRouter = this.chainAddresses[remoteChainName][routerName]; + const routerToBeEnrolled = addresses[index]; + const matchesExpectedRouter = + eqAddress(expectedRouter, bytes32ToAddress(routerToBeEnrolled)) && + // Poor man's check that the 12 byte padding is all zeroes + addressToBytes32(bytes32ToAddress(routerToBeEnrolled)) === + routerToBeEnrolled; + return { + domain: domain, + chainName: remoteChainName, + router: routerToBeEnrolled, + 'good?': matchesExpectedRouter + ? '✅ matches expected router from artifacts' + : `❌ fatal mismatch, expected ${expectedRouter}`, + }; + }); + } + + private async readMultisendTransaction( chain: ChainName, tx: AnnotatedEV5Transaction, - ): boolean { + ): Promise { + if (!tx.data) { + console.log('No data in multisend transaction'); + return undefined; + } + const multisends = decodeMultiSendData(tx.data); + + const { symbol } = await this.multiProvider.getNativeToken(chain); + + return Promise.all( + multisends.map(async (multisend, index) => { + const decoded = await this.read( + chain, + metaTransactionDataToEV5Transaction(multisend), + ); + return { + index, + value: `${ethers.utils.formatEther(multisend.value)} ${symbol}`, + operation: formatOperationType(multisend.operation), + decoded, + }; + }), + ); + } + + isIcaTransaction(chain: ChainName, tx: AnnotatedEV5Transaction): boolean { return ( tx.to !== undefined && eqAddress(tx.to, this.chainAddresses[chain].interchainAccountRouter) ); } + + async isMultisendTransaction( + chain: ChainName, + tx: AnnotatedEV5Transaction, + ): Promise { + if (tx.to === undefined) { + return false; + } + const { safeSdk } = await getSafeAndService( + this.chain, + this.multiProvider, + '0x3965AC3D295641E452E0ea896a086A9cD7C6C5b6', + ); + + // why call only? if we do delegatecall + return eqAddress(safeSdk.getMultiSendCallOnlyAddress(), tx.to); + } +} + +function metaTransactionDataToEV5Transaction( + metaTransactionData: MetaTransactionData, +): AnnotatedEV5Transaction { + return { + to: metaTransactionData.to, + value: BigNumber.from(metaTransactionData.value), + data: metaTransactionData.data, + }; +} + +function formatFunctionFragmentArgs( + args: Result, + fragment: ethers.utils.FunctionFragment, +): Record { + const accumulator: Record = {}; + return fragment.inputs.reduce((acc, input, index) => { + acc[input.name] = args[index]; + return acc; + }, accumulator); +} + +function formatOperationType(operation: OperationType | undefined): string { + switch (operation) { + case OperationType.Call: + return 'Call'; + case OperationType.DelegateCall: + return 'Delegate Call'; + default: + return '⚠️ Unknown ⚠️'; + } }